Jump to content

ICT:FinalConfig - ORGANISATION

From Costa Sano MediaWiki
Revision as of 09:19, 14 February 2026 by Mngr (talk | contribs) (Mngr moved page ICT:FinalConfig - ORGANIZATION to ICT:FinalConfig - ORGANISATION without leaving a redirect)

Final Configuration for the Organisation Entity

Document revision: 2026-02-14 by Mngr

The aim is to create an interface without MediaWiki clutter and well protected to avoid confusing users with unnecessary elements on the page. The Cargo template follows what has been decided in the DBML. It is the third implementation of an entity in order to finetune a final dashboard layout.

Cargo Table:

Template:Organisation

<noinclude>
Organisation data template

{{#cargo_declare:
 _table=Organisations
 |name=String
 |code=String
 |description=Text
 |place_id=Page
 |contact_information=Text
 |notes=Text
}}

{{#forminput:form=Organisation}}
</noinclude>

{{#cargo_store:
 name={{{name|}}}
 |code={{PAGENAME}}
 |description={{{description|}}}
 |place_id={{{place_id|}}}
 |contact_information={{{contact_information|}}}
 |notes={{{notes|}}}
}}

== {{{name|}}} ==

Once the template is created don't forget to manually force the creation of the Cargo table. If modifications are done to the table, one needs to manually update the table and then go to the Cargo interface to swap the temporary table to become the official one. Take care what is inside and outside

<noinclude>

Page Form:

Form:Organisation

<noinclude>
Form for creating and editing Organisation pages.
</noinclude>

{{{info
|no summary
|no preview
|no minor edit
|no watch
|no footer
}}}

{{{for template|Organisation}}}

{| class="formtable"

! Name
| {{{field|name|mandatory}}}
|-

! Code
| {{PAGENAME}}
|-

! Description
| {{{field|description|input type=textarea}}}
|-

! Place
| {{{field|place_id
   |label=Located in
   |input type=combobox
   |values from namespace=Place
   |existing values only
   |placeholder=Select a place
}}}
|-

! Contact information
| {{{field|contact_information|input type=textarea}}}
|-

! Notes
| {{{field|notes|input type=textarea}}}

|}

{{{standard input|save}}}

{{{end template}}}

The first section is important to avoid clutter.

{{{info
|no summary
|no preview
|no minor edit
|no watch
|no footer
}}}

Dashboard page

Dashboard:Organisation

= 🏛️ Costa Sano Research ORGANISATION Dashboard =

📖 [[Dashboard:Organisation/Help|Need Help?]]

{| class="wikitable sortable"
! Code !! Name !! Place
{{#cargo_query:
 tables=Organisations
 |fields=_pageName,code,name,place_id
 |where=_pageNamespace=3008
 |order by=code
 |format=template
 |template=OrganisationRow
 |named args=yes
 |cache=no
}}
|}

Choose your organisation code corresponding to above table and respecting the naming conventions.

{{#forminput:
 form=Organisation
 |namespace=Organisation
 |button text=➕ New organisation
 |returnto=Dashboard:Organisation
}}

<div style="text-align:right; font-size:90%;">
Last updated: {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} – {{CURRENTTIME}} UTC
</div>

Different measures are taken to deal with caching data in MediaWiki, Cargo and what happens in a browser.

 |cache=no

This is needed on the Cargo side to avoid caching and the following puts a new datetime on the page making it different from the previous version with the result that the page is renewed and the cached version is dropped.

<div style="text-align:right; font-size:90%;">
Last updated: {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} – {{CURRENTTIME}} UTC
</div>

The layout of the dashboard makes use of a Template:OrganisationRow as described below. It makes the first column of the table clickable to go back to the Form and edit the record.

Row transclusion Template

Template:OrganisationRow

<includeonly>
|-
| {{#formlink:form=Organisation|target={{{_pageName}}}|link text={{{code}}}|returnto=Dashboard:Organisation}}
| {{{name}}}
| {{{place_id}}}
</includeonly>

All this creates pages in the namespace Organisation with the name being the code. The page is a configuration to serve in Page Forms extension. Below is an example of such a page.

{{Organisation
|name=Archives Départementales du Pas-de-Calais
|description=Regional archive authority for the Pas-de-Calais department.
|place_id=Place:ARRAS
|contact_information=Rue Ferdinand Buisson, 62000 Arras
|notes=Primary source repository for Costa Sano research.
}}

As you can see the page as is cannot be used as such and should be read via the dashboard page.

References: