ICT:FinalConfig - ORGANISATION: Difference between revisions
Created page with "= Final Configuration for the Organisation Entity = Document revision: {{#time:Y-m-d|{{REVISIONTIMESTAMP}}}} by {{REVISIONUSER}} 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 <pre> <..." |
No edit summary |
||
| Line 18: | Line 18: | ||
|description=Text | |description=Text | ||
|place_id=Page | |place_id=Page | ||
|contact_information=Text | |contact_information=Text | ||
|notes=Text | |notes=Text | ||
| Line 31: | Line 30: | ||
|description={{{description|}}} | |description={{{description|}}} | ||
|place_id={{{place_id|}}} | |place_id={{{place_id|}}} | ||
|contact_information={{{contact_information|}}} | |contact_information={{{contact_information|}}} | ||
|notes={{{notes|}}} | |notes={{{notes|}}} | ||
| Line 85: | Line 83: | ||
|placeholder=Select a place | |placeholder=Select a place | ||
}}} | }}} | ||
|- | |- | ||
| Line 125: | Line 119: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
! Code !! Name !! Place | ! Code !! Name !! Place | ||
{{#cargo_query: | {{#cargo_query: | ||
tables=Organisations | tables=Organisations | ||
|fields=_pageName,code,name,place_id | |fields=_pageName,code,name,place_id | ||
|where=_pageNamespace=3008 | |where=_pageNamespace=3008 | ||
|order by=code | |order by=code | ||
| Line 175: | Line 169: | ||
| {{{name}}} | | {{{name}}} | ||
| {{{place_id}}} | | {{{place_id}}} | ||
</includeonly> | </includeonly> | ||
| Line 186: | Line 179: | ||
|description=Regional archive authority for the Pas-de-Calais department. | |description=Regional archive authority for the Pas-de-Calais department. | ||
|place_id=Place:ARRAS | |place_id=Place:ARRAS | ||
|contact_information=Rue Ferdinand Buisson, 62000 Arras | |contact_information=Rue Ferdinand Buisson, 62000 Arras | ||
|notes=Primary source repository for Costa Sano research. | |notes=Primary source repository for Costa Sano research. | ||
Revision as of 21:24, 13 February 2026
Final Configuration for the Organisation Entity
Document revision: 2026-02-13 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.