...
1 This is a new field that will be added as a schema extension for the person authority. Since there is no current sub-module for our custom schema the first step is to add an person sub-module nuxeo-platform-cs-person-mmi
that defines the custom mmi schema. The following steps have been adapted from Rick's helpful How to add an extension schema page.
Wiki Markup |
---|
{composition-setup}{composition-setup} |
- a. add a custom person schema file
persons_mmi.xsd
with new field name nameType
Wiki Markup |
---|
{toggle-cloak:id=p11a} |
Wiki Markup |
---|
{cloak:id=p11a} |
Note new field on line 23. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
MMI Person schema (XSD)
Entity : Person
Part : local - Museum of the Moving Image (MMI)
Used for: Nuxeo EP core document type
$LastChangedRevision: 860 $
$LastChangedDate: 2009-10-14 14:48:05 -0700 (Wed, 14 Oct 2009) $
-->
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ns="http://collectionspace.org/services/person/local/mmi"
xmlns="http://collectionspace.org/services/person/local/mmi"
targetNamespace="http://collectionspace.org/services/person/local/mmi"
version="0.1"
>
<!-- See http://wiki.collectionspace.org/display/collectionspace/Person+Service+Home -->
<xs:element name="nameTypes">
<xs:complexType>
<xs:sequence>
<xs:element name="nameType" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
|
- b. edit
MANIFEST.MF
to reference new mmi
module Wiki Markup |
---|
{toggle-cloak:id=p11b} |
Wiki Markup |
{cloak:id=p11b}
Note references to lowercase mmi
tenant string name on lines 3, 4, and 18.
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
Manifest-Version: 1.0
Bundle-ManifestVersion: 1
Bundle-Name: org.collectionspspace.personTenant42
Bundle-SymbolicName: org.collectionspace.personTenant42;singleton:=true
Bundle-Version: 1.0.0
Bundle-Localization: plugin
Bundle-Vendor: Nuxeo
Require-Bundle: org.nuxeo.runtime,
org.nuxeo.ecm.core.api,
org.nuxeo.ecm.core,
org.nuxeo.ecm.core.api,
org.nuxeo.ecm.platform.types.api,
org.nuxeo.ecm.platform.versioning.api,
org.nuxeo.ecm.platform.ui,
org.nuxeo.ecm.platform.forms.layout.client,
org.nuxeo.ecm.platform.ws,
org.collectionspace.collectionspace_core
Provide-Package: org.collectionspace.personTenant42
Nuxeo-Component: OSGI-INF/core-types-contrib.xml,
OSGI-INF/life-cycle-contrib.xml,
OSGI-INF/ecm-types-contrib.xml,
OSGI-INF/layouts-contrib.xml
|
- c. add c. add a custom schema to parent document type
core-types-contrib.xml
and reference new person authority schema Wiki Markup |
---|
{toggle-cloak:id=p11c} |
Wiki Markup |
---|
{cloak:id=p11c} |
Note reference to mmi
schema names and tenant string names on lines 2, 8, 21 and 26. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0"?>
<component name="org.collectionspace.personTenant42.coreTypes">
<!--<extension target="org.nuxeo.ecm.core.schema.TypeService" point="schema">
<schema name="personauthorities_common" prefix="personauthorities_common" src="schemas/personauthorities_common.xsd"/>
</extension>-->
<extension target="org.nuxeo.ecm.core.schema.TypeService" point="schema">
<schema name="persons_mmi" prefix="persons_mmi" src="schemas/persons_mmi.xsd"/>
</extension>
<!--<extension target="org.nuxeo.ecm.core.schema.TypeService" point="doctype">
<doctype name="Personauthority" extends="Document">
<schema name="common"/>
<schema name="dublincore"/>
<schema name="collectionspace_core"/>
<schema name="personauthorities_common"/>
</doctype>
</extension>-->
<extension target="org.nuxeo.ecm.core.schema.TypeService" point="doctype">
<doctype name="PersonTenant42" extends="Document">
<schema name="common"/>
<schema name="dublincore"/>
<schema name="collectionspace_core"/>
<schema name="persons_common"/>
<schema name="persons_mmi"/>
<!--<prefetch>persons_common:displayName persons_common:refName persons_common:shortIdentifier</prefetch>-->
</doctype>
</extension>
</component>
|
- d. edit
ecm-types-contrib.xml
to reference new mmi
component Wiki Markup |
---|
{toggle-cloak:id=p11d} |
Wiki Markup |
{cloak:id=p11d}
Note reference to mmi
tenant string name on lines 2, 31, 39, 45 and 51.
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0"?>
<component name="org.collectionspace.personTenant42.ecm.types">
<!--<extension target="org.nuxeo.ecm.platform.types.TypeService" point="types">
<type id="Personauthority" coretype="Personauthority">
<label>org.collectionspace.personauthority</label>
<default-view>view_documents</default-view>
<layouts mode="any">
<layout>heading</layout>
<layout>collectionspace_core</layout>
<layout>cspersonauthority</layout>
</layouts>
</type>
<type id="Folder" coretype="Folder">
<subtypes>
<type>Personauthority</type>
</subtypes>
</type>
<type id="Workspace" coretype="Workspace">
<subtypes>
<type>Personauthority</type>
</subtypes>
</type>
</extension>-->
<extension target="org.nuxeo.ecm.platform.types.TypeService" point="types">
<type id="PersonTenant42" coretype="PersonTenant42">
<label>org.collectionspace.person</label>
<!--icon>/icons/file.gif</icon-->
<default-view>view_documents</default-view>
<layouts mode="any">
<layout>heading</layout>
<layout>collectionspace_core</layout>
<layout>personTenant42</layout>
</layouts>
</type>
<type id="Folder" coretype="Folder">
<subtypes>
<type>PersonTenant42</type>
</subtypes>
</type>
<type id="Workspace" coretype="Workspace">
<subtypes>
<type>PersonTenant42</type>
</subtypes>
</type>
</extension>
</component>
|
- e. edit
layouts-contrib.xml
to reference new mmi
component Wiki Markup |
---|
{toggle-cloak:id=p11e1} |
Wiki Markup |
---|
{cloak:id=p11e1} |
Wiki Markup |
{align:mode|class=myclass}
Note reference to {{mmi}} tenant string name on line 3
{newcode:language=xml|linenumbers=true|controls=true} Align |
---|
|
Note reference to mmi tenant string name on line 3 Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0"?>
<component name="org.collectionspace.personTenant42.layouts.webapp">
...
| {newcode}
and on line 76.
{newcode:language=xml|linenumbers=true|controls=true|firstline=73} Code Block |
---|
controls | true |
---|
language | xml |
---|
firstline | 73 |
---|
linenumbers | true |
---|
|
<extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
point="layouts">
<layout name="personTenant42">
<templates>
<template mode="any">/layouts/layout_default_template.xhtml</template>
</templates>
...
| {newcode}
{align} |
- f. edit
life-cycle-contrib.xml
to reference new mmi
component unmigrated-inline-wiki-markup
{toggle-cloak:id=p11f} |
Wiki Markup |
---|
{cloak:id=p11f} |
Note reference to mmi
tenant string name on lines 2 and 7. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0"?>
<component name="org.collectionspace.ecm.platform.personTenant42.LifeCycleManagerExtensions">
<extension target="org.nuxeo.ecm.core.lifecycle.LifeCycleService" point="types">
<types>
<!--<type name="Personauthority">default</type>-->
<type name="PersonTenant42">default</type>
</types>
</extension>
</component>
|
Wiki Markup |
---|
{cloak} |
- g. edit
3rdparty/nuxeo-platform-cs-person-mmi/build.xml
so to build the custom sub-module Wiki Markup |
---|
{toggle-cloak:id=p11g} |
Wiki Markup |
---|
{cloak:id=p11g} |
to build the custom sub-module Note reference to mmi
project name on line 1, and tenant string name on lines 13 and 15.
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<project name="nuxeo-platform-cs-personTenant42" default="package" basedir=".">
<description>
person nuxeo document type
</description>
<!-- set global properties for this build -->
<property name="services.trunk" value="../../../.."/>
<!-- environment should be declared before reading build.properties -->
<property environment="env" />
<property file="${services.trunk}/build.properties" />
<property name="mvn.opts" value="" />
<property name="src" location="src"/>
<property name="nuxeo.person.jar"
value="org.collectionspace.services.personTenant42.3rdparty.nuxeo-${cspace.release}.jar"/>
<property name="nuxeo.person.jars.all"
value="org.collectionspace.services.personTenant42.3rdparty.nuxeo-*.jar"/>
...
|
- h. edit
3rdparty/nuxeo-platform-cs-person-mmi/pom.xml
to reference new mmi
component unmigrated-inline-wiki-markup
{toggle-cloak:id=p11h} |
Wiki Markup |
---|
{cloak:id=p11h} |
Note reference to mmi
tenant string name on lines 12, 13, and description on line 15. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.collectionspace.services</groupId>
<artifactId>org.collectionspace.services.person.3rdparty</artifactId>
<version>1.11-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.collectionspace.services</groupId>
<artifactId>org.collectionspace.services.personTenant42.3rdparty.nuxeo</artifactId>
<name>services.personTenant42.3rdparty.nuxeo</name>
<packaging>jar</packaging>
<description>
MMI Person Nuxeo Document Type
</description>
...
|
Wiki Markup |
---|
{cloak} |
- i. edit
3rdparty/build.xml
so to build the custom sub-module Wiki Markup |
---|
{toggle-cloak:id=p11i} |
Wiki Markup |
---|
{cloak:id=p11i} |
Wiki Markup |
{align:mode|class=myclass}
Note reference to {{mmi}} custom module on lines 11, 116, 122, 128 and 134.
{newcode:language=xml|linenumbers=true|controls=true}-module Align |
---|
|
Note reference to mmi custom module on lines 11, 116, 122, 128 and 134. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<project name="person.3rdparty" default="package" basedir=".">
<description>
person service 3rdparty
</description>
<!-- set global properties for this build -->
<property name="services.trunk" value="../../.."/>
<!-- enviornment should be declared before reading build.properties -->
<property environment="env" />
<property file="${services.trunk}/build.properties" />
<property name="mvn.opts" value="" />
<property name="src" location="src"/>
<property name="nuxeo-platform-person" value="nuxeo-platform-person"/>
<property name="nuxeo-platform-person-mmi" value="nuxeo-platform-person-mmi"/>
...
| {newcode}
and further down the file
{newcode:language=xml|linenumbers=true|controls=true|firstline=113}file Code Block |
---|
controls | true |
---|
language | xml |
---|
firstline | 113 |
---|
linenumbers | true |
---|
|
<target name="deploy" depends="install"
description="deploy person in ${jboss.server.nuxeo}">
<ant antfile="nuxeo-platform-cs-person/build.xml" target="deploy" inheritall="false"/>
<ant antfile="nuxeo-platform-cs-person-mmi/build.xml" target="deploy" inheritall="false"/>
</target>
<target name="undeploy"
description="undeploy person from ${jboss.server.nuxeo}">
<ant antfile="nuxeo-platform-cs-person/build.xml" target="undeploy" inheritall="false"/>
<ant antfile="nuxeo-platform-cs-person-mmi/build.xml" target="undeploy" inheritall="false"/>
</target>
<target name="dist"
description="generate distribution for person" depends="package">
<ant antfile="nuxeo-platform-cs-person/build.xml" target="dist" inheritall="false"/>
<ant antfile="nuxeo-platform-cs-person-mmi/build.xml" target="dist" inheritall="false"/>
</target>
<target name="dist_installer"
description="generate distribution for collectionobject" depends="package">
<ant antfile="nuxeo-platform-cs-person/build.xml" target="dist_installer" inheritall="false"/>
<ant antfile="nuxeo-platform-cs-person-mmi/build.xml" target="dist_installer" inheritall="false"/>
</target>
</project> |
{newcode}{align} |
- j. edit
3rdparty/pom.xml
to reference new mmi
component Wiki Markup |
---|
{toggle-cloak:id=p11j} |
Wiki Markup |
---|
{cloak:id=p11j} |
Note reference to mmi
custom module on line 21. Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.collectionspace.services</groupId>
<artifactId>org.collectionspace.services.person</artifactId>
<version>1.9-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.collectionspace.services</groupId>
<artifactId>org.collectionspace.services.person.3rdparty</artifactId>
<name>services.person.3rdparty</name>
<packaging>pom</packaging>
<description>
3rd party build for person service
</description>
<modules>
<module>nuxeo-platform-cs-person</module>
<module>nuxeo-platform-cs-person-mmi</module>
</modules>
</project>
|
unmigrated-inline-wiki-markup |
{cloak} |
- k. add this code chunk to tenant binding
tenant-bindings-delta.xml
ABOVE the tenant binding chunk for Acquisitions Wiki Markup |
---|
{toggle-cloak:id=a21k} |
Wiki Markup |
{cloak:id=a21k} ABOVE the tenant binding chunk for Acquisitions This needs to be placed before Acquisitions because of the layout of the tenant-bindings.proto.xml file and because of how XMLMerge parses the -delta file.
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<tenant:TenantBindingConfig
xmlns:merge='http://xmlmerge.el4j.elca.ch'
xmlns:tenant='http://collectionspace.org/services/common/tenant'>
<tenant:tenantBinding id="42" name="movingimage.us" displayName="Museum of the Moving Image Tenant" version="0.1">
<tenant:repositoryDomain name="default-domain" storageName="mmi-domain" repositoryClient="nuxeo-java" />
<tenant:serviceBindings merge:matcher="id" id="Persons">
<service:object xmlns:service="http://collectionspace.org/services/common/service" >
<service:part id="42" merge:matcher="skip" merge:action="insert" control_group="Managed" versionable="true" auditable="false" label="persons_mmi" updated="" order="3">
<service:content contentType="application/xml">
<service:xmlContent namespaceURI="http://collectionspace.org/services/person/local/mmi" schemaLocation="http://collectionspace.org/services/person/local/mmi http://collectionspace.org/services/person/local/persons_mmi.xsd" />
</service:content>
</service:part>
</service:object>
</tenant:serviceBindings>
<tenant:serviceBindings merge:matcher="id" id="Acquisitions">
<service:object xmlns:service="http://collectionspace.org/services/common/service" >
<service:part id="42" merge:matcher="skip" merge:action="insert" control_group="Managed" versionable="true" auditable="false" label="acquisitions_mmi" updated="" order="3">
<service:content contentType="application/xml">
<service:xmlContent namespaceURI="http://collectionspace.org/services/acquisition/local/mmi" schemaLocation="http://collectionspace.org/services/acquisition/local/mmi http://collectionspace.org/services/acquisition/local/acquisitions_mmi.xsd" />
</service:content>
</service:part>
</service:object>
</tenant:serviceBindings>
</tenant:tenantBinding>
</tenant:TenantBindingConfig>
|
2. add field id and selector to domain-authority-person.xml
Wiki Markup |
---|
{toggle-cloak:id=p12} |
Wiki Markup |
---|
{cloak:id=p12} |
Note the section
attribute for the new field. Every new field will have this identifying attribute.
Code Block |
---|
<repeat id="nameTypes" section="mmi">
<field id="nameType" section="mmi">
<selector>personAuthority-nameType</selector>
<options>
<option id="display" default="yes">Display</option>
<option id="index">Index</option>
<option id="maiden">Maiden</option>
<option id="pseudonym">Pseudonym</option>
</options>
</field>
</repeat>
|
unmigrated-inline-wiki-markup |
{cloak} |
3. edit base-authority-person.xml
to point to new schema
Wiki Markup |
---|
{toggle-cloak:id=p13} |
Wiki Markup |
{cloak:id=p13}xml
to point to new schema
Note the id
attribute on line 11. This connects with the section
attribute from the domain-authority-person.xml
file.
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
<record id="person" type="authority,compute-displayname">
<terms-used>false</terms-used>
<!-- XXX servcie layer doesn't currently support person terms but it does on organisations - go figure -->
<web-url>person</web-url>
<services-tenant-auth-singular>Personauthority</services-tenant-auth-singular>
<services-tenant-auth-plural>Personauthorities</services-tenant-auth-plural>
<services-tenant-singular>Person</services-tenant-singular>
<services-instances-path>personauthorities_common:http://collectionspace.org/services/person,abstract-common-list/list-item</services-instances-path>
<services-single-instance-path>personauthorities_common:http://collectionspace.org/services/person,personauthorities_common</services-single-instance-path>
<services-list-path>http://collectionspace.org/services/person,abstract-common-list/list-item</services-list-path>
<services-record-path id="mmi">persons_mmi:http://collectionspace.org/services/person/local/mmi,persons_mmi</services-record-path>
<services-record-path>persons_common:http://collectionspace.org/services/person,persons_common</services-record-path>
...
|
4. add field label to core-messages.properties
Wiki Markup |
---|
{toggle-cloak:id=p14} |
Wiki Markup |
---|
{cloak:id=p14} |
Code Block |
---|
person-nameTypesLabel: Name type
|
unmigrated-inline-wiki-markup |
{cloak} |
5. added to PersonTemplate.html
Wiki Markup |
---|
{toggle-cloak:id=p15} |
Wiki Markup |
{cloak:id=p15}5. added to PersonTemplate.html
Code Block |
---|
<div class="info-pair">
<div class="header">
<div class="csc-person-nameTypes-label label"></div>
</div>
<div class="content">
<select type="text" class="csc-personAuthority-nameType input-select" >
<option value="">Options not loaded</option>
</select>
</div>
</div>
|
6. run mini-build scripts to deploy changes across all layers and then build & deploy updated services module from source
Wiki Markup |
---|
{toggle-cloak:id=p16} |
Wiki Markup |
---|
{cloak:id=p16} |
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | true |
---|
|
cd /tmp/tenant-customizations-v1.9/application
ant deploy
cd /tmp/tenant-customizations-v1.9/ui
ant deploy
cd /tmp/v1.9/services/person
mvn clean install -DskipTests
cd /tmp/v1.9/services/person
ant undeploy deploy
|
Wiki Markup |
---|
{cloak} |
Added two fields which are a repeating group with a name authority field and a controlled list:
Affiliated organization and Affiliated organization type.
...
.
...
Wiki Markup |
---|
{toggle-cloak:id=p21} |
...
1. added to persons_mmi.xsd
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | false |
---|
|
<xs:element name="affiliatedPersonOrgGroupList" type="affiliatedPersonOrgGroupList"/>
<xs:complexType name="affiliatedPersonOrgGroupList">
<xs:sequence>
<xs:element name="affiliatedPersonOrgGroup" type="affiliatedPersonOrgGroup" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="affiliatedPersonOrgGroup">
<xs:sequence>
<xs:element name="affiliatedPersonOrg" type="xs:string"/>
<xs:element name="affiliatedPersonOrgType" type="xs:string"/>
</xs:sequence>
</xs:complexType>
|
2. added to domain-authority-person.xml
Wiki Markup |
{toggle-cloak:id=p22}
Wiki Markup |
---|
{cloak:id=p22} |
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | false |
---|
|
<repeat id="affiliatedPersonOrgGroupList/affiliatedPersonOrgGroup" section="mmi">
<field id="affiliatedPersonOrg" autocomplete="person-person" section="mmi">
<selector>personAuthority-affiliatedPersonOrg</selector>
</field>
<field id="affiliatedPersonOrgType" section="mmi">
<selector>personAuthority-affiliatedPersonOrgType</selector>
<options>
<option id="">Please select a value</option>
<option id="employee">Employee</option>
<option id="founder">Founder</option>
<option id="member">Member</option>
<option id="partner">Partner</option>
</options>
</field>
</repeat>
|
3. added to core-messages.properties
Wiki Markup |
---|
{toggle-cloak:id=p23} |
Wiki Markup |
---|
{cloak:id=p23} |
3. added to core-messages.properties
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | false |
---|
|
person-affiliatedPersonOrgGroupLabel: Affiliated person/organization
person-affiliatedPersonOrgLabel: Affiliated person/organization
person-affiliatedPersonOrgTypeLabel: Affiliated person/organization type
|
4. added to PersonTemplate.html
unmigrated-inline-wiki-markup
{toggle-cloak:id=p24} |
Wiki Markup |
---|
{cloak:id=p24} |
Code Block |
---|
controls | true |
---|
language | xml |
---|
linenumbers | false |
---|
|
<div class="info-pair">
<div class="header">
<div class="label csc-person-affiliatedPersonOrgGroup-label label"></div>
</div>
<div class="content">
<table>
<thead>
<tr>
<td class="csc-person-affiliatedPersonOrg-label label"></td>
<td class="csc-person-affiliatedPersonOrgType-label label"></td>
</tr>
</thead>
<tbody>
<tr class="csc-person-affiliatedPersonOrgGroup">
<td>
<input type="text" class="input-alpha-table csc-personAuthority-affiliatedPersonOrg" />
</td>
<td><select class="input-select csc-personAuthority-affiliatedPersonOrgType">
<option value="">Options not loaded</option>
</select>
</td>
</tr>
</tbody>
</table>
</div>
</div>
|
Next, changed Person's Salutation and Person's Title from a controlled list to a normal text field.
1. commented out the <options> ... </options>
portion from both fields in base-authority-person.xml
Wiki Markup |
---|
{toggle-cloak:id=p31} |
Wiki Markup |
---|
{cloak:id=p31} |
in base-authority-person.xml
Code Block |
---|
controls | true |
---|
language | xml |
---|
firstline | 80 |
---|
linenumbers | true |
---|
|
<field id="salutation">
<selector>personAuthority-salutation</selector>
<!--<options>
<option id="dear" default="yes">Dear</option>
<option id="hello">Hello</option>
<option id="to">To</option>
</options>-->
</field>
<field id="title">
<selector>personAuthority-title</selector>
<!--<options>
<option id="" default="yes">Please select a value</option>
<option id="Mr">Mr</option>
<option id="Mrs">Mrs</option>
<option id="Ms">Ms</option>
<option id="Miss">Miss</option>
<option id="Dr">Dr</option>
<option id="Professor">Professor</option>
<option id="Sir">Sir</option>
<option id="Dame">Dame</option>
<option id="Baron">Baron</option>
<option id="Baroness">Baroness</option>
<option id="Lord">Lord</option>
<option id="Lady">Lady</option>
</options>-->
</field>
|
2. Changed input type for the two fields in PersonTemplate.html
from <select
to <input
Wiki Markup |
{toggle-cloak:id=p32}
Wiki Markup |
---|
{cloak:id=p32} |
Code Block |
---|
controls | true |
---|
language | html |
---|
linenumbers | false |
---|
|
<tr class="csc-personAuthority-name">
<td><input type="text" class="csc-personAuthority-salutation"/></td>
<td><input type="text" class="csc-personAuthority-title"/></td>
...
|
unmigrated-inline-wiki-markup |
{cloak} |
Changed Term Status from normal text field into a controlled list field
1. added an <options> ... </options>
section to the termStatus section in base-authority-person.xml
Wiki Markup |
---|
{toggle-cloak:id=p41} |
Wiki Markup |
{cloak:id=p41}-authority-person.xml
Code Block |
---|
controls | true |
---|
language | xml |
---|
firstline | 71 |
---|
linenumbers | true |
---|
|
<field id="termStatus" seperate_ui_container="true">
<selector>personAuthority-status</selector>
<options>
<option id="quickaddedneedsattention" default="yes">Quick added, needs attention</option>
<option id="inprogress">In progress</option>
<option id="complete">Complete</option>
</options>
</field>
|
Added seven new fields:
Source; Entity type; Life span; Scope notes; Source notes; Organization's contact name; and Function
1. added to persons_mmi.xsd
Wiki Markup |
---|
{toggle-cloak:id=p51} |
Wiki Markup |
---|
{cloak:id=p51} |
Code Block |
---|
<xs:element name="nameSource" type="xs:string"/>
<xs:element name="entityType" type="xs:string"/>
<xs:element name="lifeSpan" type="xs:string"/>
<xs:element name="scopeNote" type="xs:string"/>
<xs:element name="sourceNote" type="xs:string"/>
<xs:element name="orgContactNames">
<xs:complexType>
<xs:sequence>
<xs:element name="orgContactName" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="nameFunctions">
<xs:complexType>
<xs:sequence>
<xs:element name="nameFunction" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
|
unmigrated-inline-wiki-markup |
{cloak} |
2. added to domain-authority-person.xml
Wiki Markup |
---|
{toggle-cloak:id=p52} |
Wiki Markup |
{cloak:id=p52}
Code Block |
---|
<field id="nameSource" seperate_ui_container="true" section="mmi">
<selector>personAuthority-nameSource</selector>
<options>
<option id="" default="yes">Please select a value</option>
<option id="aficatalog">AFI Catalog</option>
<option id="encyclopediaofearlycinema">Encyclopedia of Early Cinema</option>
<option id="halliwellswhoswhointhemovies">Halliwell's Who's Who in the Cinema</option>
<option id="libraryofcongressnameauthority">Library of Congress Name Authority</option>
<option id="other">Other</option>
<option id="root">Root</option>
<option id="silentfilmnecrology2ndedition">Silent Film Necrology, 2nd Edition</option>
<option id="thefilmencyclopedia4thedition">The Film Encyclopedia, 4th Edition</option>
</options>
</field>
<field id="entityType" seperate_ui_container="true" section="mmi">
<selector>personAuthority-entityType</selector>
<options>
<option id="" default="yes">Please select a value</option>
<option id="corporation">Corporation</option>
<option id="group">Group</option>
<option id="individual">Individual</option>
</options>
</field>
<field id="lifeSpan" section="mmi">
<selector>personAuthority-lifeSpan</selector>
</field>
<field id="scopeNote" section="mmi">
<selector>personAuthority-scopeNote</selector>
</field>
<field id="sourceNote" section="mmi">
<selector>personAuthority-sourceNote</selector>
</field>
<!-- new MMI repeatable field -->
<repeat id="orgContactNames" section="mmi">
<!--<selector>personAuthority-orgContactName</selector>-->
<field id="orgContactName" autocomplete="person-person section="mmi">
<selector>personAuthority-orgContactName</selector>
</field>
</repeat>
<repeat id="nameFunctions section="mmi"">
<!--<selector>personAuthority-nameFunction</selector>-->
<field id="nameFunction" section="mmi">
<selector>personAuthority-nameFunction</selector>
</field>
</repeat>
|
unmigrated-inline-wiki-markup |
{cloak} |
3. added to core-messages.properties
Wiki Markup |
---|
{toggle-cloak:id=p53} |
Wiki Markup |
---|
{cloak:id=p53} |
Code Block |
---|
person-nameSourceLabel: Source
person-entityTypeLabel: Entity type
person-lifeSpanLabel: Life span
person-scopeNoteLabel: Scope note
person-sourceNoteLabel: Source note
person-orgContactNamesLabel: Organization's contact name
person-nameFunctionsLabel: Function
|
4. added to PersonTemplate.html
Wiki Markup |
---|
{toggle-cloak:id=p54} |
Wiki Markup |
{cloak:id=p54}
Code Block |
---|
<div class="info-pair">
<div class="header">
<div class="csc-person-nameSource-label label"></div>
</div>
<div class="content">
<select class="csc-personAuthority-nameSource input-select" ><option value="">Options not loaded</option></select>
</div>
</div>
<div class="info-pair-select">
<div class="header">
<div class="csc-person-entityType-label label"></div>
</div>
<div class="content">
<select class="csc-personAuthority-entityType input-select" ><option value="">Options not loaded</option></select>
</div>
</div>
<div class="info-pair-select">
<div class="header">
<div class="csc-person-lifeSpan-label label"></div>
</div>
<div class="content">
<input type="text" class="csc-personAuthority-lifeSpan" disabled="disbaled" />
</div>
</div>
<div class="info-pair">
<div class="header">
<div class="csc-person-scopeNote-label label"></div>
</div>
<div class="content">
<textarea rows="4" cols="30" class="csc-personAuthority-scopeNote" />
</div>
</div>
<div class="info-pair">
<div class="header">
<div class="csc-person-sourceNote-label label"></div>
</div>
<div class="content">
<textarea rows="4" cols="30" class="csc-personAuthority-sourceNote" />
</div>
</div>
<div class="info-pair">
<div class="header">
<div class="csc-person-orgContactNames-label label"></div>
</div>
<div class="content">
<input type="text" class="csc-personAuthority-orgContactName" />
</div>
</div>
<div class="info-pair">
<div class="header">
<div class="csc-person-nameFunctions-label label"></div>
</div>
<div class="content">
<input type="text" class="csc-personAuthority-nameFunction" />
</div>
</div>
|
Wiki Markup |
---|
{cloak} |