diff --git a/modules/mod_ginger_banner/mod_ginger_banner.erl b/modules/mod_ginger_banner/mod_ginger_banner.erl index 2b209c637..f1a912b0d 100644 --- a/modules/mod_ginger_banner/mod_ginger_banner.erl +++ b/modules/mod_ginger_banner/mod_ginger_banner.erl @@ -13,13 +13,12 @@ manage_schema/2 ]). -manage_schema(_Version, Context) -> - Datamodel = #datamodel{ +manage_schema(_Version, _Context) -> + #datamodel{ resources = [ {message_banner, text, [ {title, "Banner"}, {is_published, false} ]} ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context). + }. diff --git a/modules/mod_ginger_base/mod_ginger_base.erl b/modules/mod_ginger_base/mod_ginger_base.erl index afef5f453..e64e00f42 100644 --- a/modules/mod_ginger_base/mod_ginger_base.erl +++ b/modules/mod_ginger_base/mod_ginger_base.erl @@ -33,8 +33,8 @@ init(Context) -> z_pivot_rsc:define_custom_pivot(ginger_search, [{is_unfindable, "boolean not null default false"}], Context). %% @doc When ACL is enabled, create a default user in the editors group -manage_schema(_Version, Context) -> - Datamodel = #datamodel{ +manage_schema(_Version, _Context) -> + #datamodel{ categories=[ {agenda, query, [ {title, {trans, [ @@ -168,9 +168,7 @@ manage_schema(_Version, Context) -> ]} ]} ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context), - schema:create_identity_if_not_exists(editor_dev, "redacteur", "redacteur", Context). + }. %% @doc Users without access to the admin should not be able to view unpublished %% resources diff --git a/modules/mod_ginger_embed/mod_ginger_embed.erl b/modules/mod_ginger_embed/mod_ginger_embed.erl index 490dd76c7..c686e7f91 100644 --- a/modules/mod_ginger_embed/mod_ginger_embed.erl +++ b/modules/mod_ginger_embed/mod_ginger_embed.erl @@ -20,8 +20,8 @@ -include("zotonic.hrl"). -manage_schema(_Version, Context) -> - Datamodel = #datamodel{ +manage_schema(_Version, _Context) -> + #datamodel{ categories=[ {ginger_embed, media, [ {title, {trans, [ @@ -30,8 +30,7 @@ manage_schema(_Version, Context) -> {language, [en, nl]} ]} ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context). + }. %% @doc Render embed template in case of element -spec observe_media_viewer(#media_viewer{}, #context{}) -> {ok, binary()} | undefined. diff --git a/modules/mod_ginger_message/mod_ginger_message.erl b/modules/mod_ginger_message/mod_ginger_message.erl index cc69182af..a89f3a085 100644 --- a/modules/mod_ginger_message/mod_ginger_message.erl +++ b/modules/mod_ginger_message/mod_ginger_message.erl @@ -15,8 +15,8 @@ manage_schema/2 ]). -manage_schema(install, Context) -> - Datamodel = #datamodel{ +manage_schema(install, _Context) -> + #datamodel{ categories=[ {message, undefined, [ {is_unfindable, 1}, @@ -52,6 +52,4 @@ manage_schema(install, Context) -> {message, category} ]} ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context), - ok. \ No newline at end of file + }. diff --git a/modules/mod_ginger_rdf/mod_ginger_rdf.erl b/modules/mod_ginger_rdf/mod_ginger_rdf.erl index 6e160bd7b..e7ee3e685 100644 --- a/modules/mod_ginger_rdf/mod_ginger_rdf.erl +++ b/modules/mod_ginger_rdf/mod_ginger_rdf.erl @@ -34,18 +34,8 @@ -record(state, {context}). manage_schema(_, Context) -> - Datamodel = #datamodel{ - categories=[ - {rdf, meta, [{title, <<"RDF resource">>}]} - ], - resources=[ - {rdf_content_group, content_group, [ - {title, <<"RDF resources">>} - ]} - ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context), - + %% TODO: Legacy code ahead! This function must not have side effects; + %% it should only return the data model. %% Update some predicates so they can refer to category RDF, too case m_rsc:uri_lookup("http://xmlns.com/foaf/0.1/depiction", Context) of undefined -> noop; @@ -58,7 +48,17 @@ manage_schema(_, Context) -> Context ) end, - ok. + #datamodel{ + categories=[ + {rdf, meta, [ + {title, <<"RDF resource">>} + ]} + ], + resources=[ + {rdf_content_group, content_group, [ + {title, <<"RDF resources">>} + ]} + ]}. %% @doc Ask observers to provide subject links from the resource and object %% links to the resource diff --git a/modules/mod_ginger_remark/mod_ginger_remark.erl b/modules/mod_ginger_remark/mod_ginger_remark.erl index 85ee046b0..5b003a400 100644 --- a/modules/mod_ginger_remark/mod_ginger_remark.erl +++ b/modules/mod_ginger_remark/mod_ginger_remark.erl @@ -23,7 +23,7 @@ ]). manage_schema(_Version, Context) -> - Datamodel = #datamodel{ + #datamodel{ categories=[ {remark, text, [ {title, {trans, [{nl, <<"Reactie">>}, @@ -54,8 +54,7 @@ manage_schema(_Version, Context) -> {is_owner, true} ]} ]} - ]}, - z_datamodel:manage(?MODULE, Datamodel, Context). + ]}. is_owner(Id, #context{user_id=undefined, session_id=SessionId} = Context) -> case m_rsc:p_no_acl(Id, session_owner, Context) of diff --git a/modules/mod_ginger_tagger/mod_ginger_tagger.erl b/modules/mod_ginger_tagger/mod_ginger_tagger.erl index 3bb4938a1..ecd5f29a1 100644 --- a/modules/mod_ginger_tagger/mod_ginger_tagger.erl +++ b/modules/mod_ginger_tagger/mod_ginger_tagger.erl @@ -18,19 +18,21 @@ event/2 ]). -manage_schema(install, Context) -> - Datamodel = #datamodel{ +manage_schema(install, _Context) -> + #datamodel{ categories = [ - {rfid_device, undefined, [{title, <<"RFID-scanner">>}]} + {rfid_device, undefined, [ + {title, <<"RFID-scanner">>} + ]} ], predicates = [ - {located_at, [{title, <<"Location">>}], [ + {located_at, [ + {title, <<"Location">>} + ], [ {rfid_device, location} ]} ] - }, - z_datamodel:manage(?MODULE, Datamodel, Context), - ok. + }. %% @doc Link users to media in which they are depicted. -spec observe_tagger_action(#tagger_action{}, #context{}) -> ok.