Plugin odf-sync

Version: Not specified

Features detail

odf-sync/configuration.apogee

Use shared configuration parameters:
odf.apogee.jdbc.datasource, odf.apogee.administrative.year

odf-sync/configuration.cdmfr.remote

Use shared configuration parameters:
org.ametys.plugins.odfsync.ip, org.ametys.plugins.odfsync.cdmfr.remote.catalog, org.ametys.plugins.odfsync.cdmfr.remote.validation

odf-sync/apogee.dao.default

Depends on:
odf-sync/configuration.apogee

Components:

org.ametys.plugins.odfsync.apogee.ApogeeDAO
mappers can be overriden by placing files in '/WEB-INF/param/odf' :

Associated java class:
org.ametys.plugins.odfsync.apogee.ApogeeDAO

Configuration:

<component role="org.ametys.plugins.odfsync.apogee.ApogeeDAO" id="org.ametys.plugins.odfsync.apogee.ApogeeDAO" class="org.ametys.plugins.odfsync.apogee.ApogeeDAO">
<datasource type="config">odf.apogee.jdbc.datasource</datasource>
<sqlMap resource="/org/ametys/plugins/odfsync/apogee/functions.xml"/>
<sqlMap config="/WEB-INF/param/odf/apogee-requests.xml" resource="/org/ametys/plugins/odfsync/apogee/apogee-requests.xml"/>
</component>

odf-sync/odfsync.apogee.ribbon.imports

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.odfsync.apogee.ribbon.Imports

Associated java class:
org.ametys.core.ui.StaticRibbonImportManager

Extension point extended:
org.ametys.core.ui.RibbonImportManager

Configuration:

<extension id="org.ametys.odfsync.apogee.ribbon.Imports" point="org.ametys.core.ui.RibbonImportManager" class="org.ametys.core.ui.StaticRibbonImportManager">
<workspace match="cms|web">
<file>ribbon/apogee/cms-ribbon-odf.xml</file>
<file>ribbon/apogee/cms-ribbon-content.xml</file>
</workspace>
</extension>

odf-sync/odfsync.cdmfr.ribbon.imports

Extensions:

org.ametys.odfsync.cdmfr.ribbon.Imports

Associated java class:
org.ametys.core.ui.StaticRibbonImportManager

Extension point extended:
org.ametys.core.ui.RibbonImportManager

Configuration:

<extension id="org.ametys.odfsync.cdmfr.ribbon.Imports" point="org.ametys.core.ui.RibbonImportManager" class="org.ametys.core.ui.StaticRibbonImportManager">
<workspace match="cms|web">
<file>ribbon/cdmfr/cms-ribbon-odf.xml</file>
</workspace>
</extension>

odf-sync/odf.rights.sync.others

Extensions:

odf.rights.import.program

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.program">
<right id="ODF_Rights_Program_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_PROGRAM</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_PROGRAM_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.subprogram

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.subprogram">
<right id="ODF_Rights_SubProgram_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_SUBPROGRAM</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_SUBPROGRAM_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.container

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.container">
<right id="ODF_Rights_Container_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_CONTAINER</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_CONTAINER_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.courselist

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.courselist">
<right id="ODF_Rights_CourseList_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_COURSELIST</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_COURSELIST_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.course

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.course">
<right id="ODF_Rights_Course_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_COURSE</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_COURSE_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.orgunit

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.orgunit">
<right id="ODF_Rights_OrgUnit_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_ORGUNIT</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_ORGUNIT_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.import.person

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.import.person">
<right id="ODF_Rights_Person_Import">
<label>PLUGINS_ODF_RIGHTS_ODF_IMPORT_PERSON</label>
<description>PLUGINS_ODF_RIGHTS_ODF_IMPORT_PERSON_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.program

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.program">
<right id="ODF_Rights_Program_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_PROGRAM</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_PROGRAM_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.subprogram

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.subprogram">
<right id="ODF_Rights_SubProgram_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_SUBPROGRAM</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_SUBPROGRAM_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.container

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.container">
<right id="ODF_Rights_Container_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_CONTAINER</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_CONTAINER_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.courselist

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.courselist">
<right id="ODF_Rights_CourseList_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_COURSELIST</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_COURSELIST_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.course

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.course">
<right id="ODF_Rights_Course_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_COURSE</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_COURSE_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.orgunit

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.orgunit">
<right id="ODF_Rights_OrgUnit_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_ORGUNIT</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_ORGUNIT_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf.rights.synchro.person

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.synchro.person">
<right id="ODF_Rights_Person_Synchro">
<label>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_PERSON</label>
<description>PLUGINS_ODF_RIGHTS_ODF_SYNCHRO_PERSON_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.program

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.program

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.ProgramSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.program" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.ProgramSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_PROGRAM_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_PROGRAM_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.subprogram

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.subprogram

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.SubProgramSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.subprogram" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.SubProgramSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_SUBPROGRAM_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_SUBPROGRAM_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.container

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.container

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.ContainerSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.container" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.ContainerSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_CONTAINER_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_CONTAINER_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.courselist

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.courselist

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.CourseListSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.courselist" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.CourseListSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_COURSELIST_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_COURSELIST_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.course

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.course

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.CourseSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.course" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.CourseSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_COURSE_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_COURSE_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.scc.orgunit

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.orgunit

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.apogee.scc.impl.OrgUnitSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.orgunit" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.apogee.scc.impl.OrgUnitSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_ORGUNIT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_APOGEE_ORGUNIT_DESCRIPTION</description>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.program

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportProgram

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportProgram" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-scc-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.program</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_PROGRAM_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_PROGRAM_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-blackboard</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-scc-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Program_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeProgram

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeProgram" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.program</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_PROGRAM_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_PROGRAM_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_PROGRAM</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.program$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Program_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.subprogram

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportSubProgram

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportSubProgram" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-apogee-subprogram-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.subprogram</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-round</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-apogee-subprogram-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_SubProgram_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeSubProgram

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeSubProgram" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.subprogram</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_SUBPROGRAM</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.subProgram$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_SubProgram_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.container

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportContainer

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportContainer" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-apogee-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.container</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_CONTAINER_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_CONTAINER_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-circle</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-apogee-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Container_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeContainer

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeContainer" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.container</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_CONTAINER_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_CONTAINER_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_CONTAINER</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.container$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Container_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.courselist

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportCourseList

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportCourseList" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-apogee-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.courselist</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_COURSELIST_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_COURSELIST_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-courselist</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-apogee-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_CourseList_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeCourseList

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeCourseList" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.courselist</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_COURSELIST_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_COURSELIST_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_COURSELIST</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.courseList$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_CourseList_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.course

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportCourse

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportCourse" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-apogee-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.course</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_COURSE_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_COURSE_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-course</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-apogee-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Course_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeCourse

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeCourse" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.course</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_COURSE_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_COURSE_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_COURSE</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.course$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Course_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.orgunit

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.ImportOrgUnit

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportOrgUnit" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-scc-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.orgunit</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_ORGUNIT_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_ORGUNIT_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-orgunit</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-scc-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_OrgUnit_Import</right>
</extension>

org.ametys.plugins.odfsync.apogee.SynchronizeOrgUnit

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.SynchronizeOrgUnit" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.apogee.scc.orgunit</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_ORGUNIT_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_ORGUNIT_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_ORGUNIT</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.orgunit$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_OrgUnit_Synchro</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool.subprogram.or.container

Depends on:
odf-sync/org.ametys.plugins.odfsync.apogee.tool.container,org.ametys.plugins.odfsync.apogee.tool.subprogram

Extensions:

org.ametys.plugins.odfsync.apogee.ImportSubProgramOrContainer

Associated java class:
org.ametys.core.ui.SimpleMenu

Associated javascript class:
Ametys.ribbon.element.ui.ButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ImportSubProgramOrContainer" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.core.ui.SimpleMenu">
<class name="Ametys.ribbon.element.ui.ButtonController">
<label type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_CONTAINER_IMPORT_MENU_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_SUBPROGRAM_CONTAINER_IMPORT_MENU_DESCRIPTION</description>
<icon-glyph>ametysicon-upload119</icon-glyph>
</class>
<menu-items>
<item ref="org.ametys.plugins.odfsync.apogee.ImportSubProgram"/>
<item ref="org.ametys.plugins.odfsync.apogee.ImportContainer"/>
</menu-items>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Container_Import|ODF_Rights_SubProgram_Import</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.operator.helper

Depends on:
odf-sync/configuration.apogee

Components:

org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperatorHelper

Associated java class:
org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperatorHelper

Configuration:

<component role="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperatorHelper" id="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperatorHelper" class="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperatorHelper">
<conversions>
<conversion metadata="degree" contentType="odf-enumeration.Degree" location="context://WEB-INF/param/odf/apogee/code/degrees_conversion.xml"/>
<conversion metadata="domain" contentType="odf-enumeration.Domain"/>
<conversion metadata="siseCode" contentType="odf-enumeration.CodeSise" location="context://WEB-INF/param/odf/apogee/code/disciplines_conversion.xml"/>
<conversion metadata="educationKind" contentType="odf-enumeration.ProgramType" location="context://WEB-INF/param/odf/apogee/code/educationTypes_conversion.xml"/>
<conversion metadata="educationLevel" contentType="odf-enumeration.Level"/>
<conversion metadata="teachingLocation" contentType="odf-enumeration.Place" location="context://WEB-INF/param/odf/apogee/code/places_conversion.xml"/>
<conversion metadata="teachingTerm" contentType="odf-enumeration.TeachingTerm" location="context://WEB-INF/param/odf/apogee/code/teachingTerms_conversion.xml"/>
<conversion metadata="formofteachingOrg" contentType="odf-enumeration.FormofteachingOrg" location="context://WEB-INF/param/odf/apogee/code/formofteachingOrg_conversion.xml"/>
<conversion metadata="jointOrgUnit" contentType="odf-enumeration.JoinOrgUnit"/>
<conversion metadata="ects" contentType="odf-enumeration.Ects"/>
<conversion metadata="duration" contentType="odf-enumeration.Duration"/>
<conversion metadata="courseType" contentType="odf-enumeration.CourseNature"/>
</conversions>
</component>

odf-sync/org.ametys.plugins.odfsync.apogee.operator

Depends on:
odf-sync/configuration.apogee

Extensions:

org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperator

Associated java class:
org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperator

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperator" class="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContentOperator" point="org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint">
<label type="i18n">PLUGINS_ODF_SYNC_APOGEE_SYNCHRO_OPERATOR</label>
</extension>

org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseListOperator

Associated java class:
org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseListOperator

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseListOperator" class="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseListOperator" point="org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint">
<label type="i18n">PLUGINS_ODF_SYNC_APOGEE_COURSELIST_SYNCHRO_OPERATOR</label>
</extension>

org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseOperator

Associated java class:
org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseOperator

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseOperator" class="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingCourseOperator" point="org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint">
<label type="i18n">PLUGINS_ODF_SYNC_APOGEE_COURSE_SYNCHRO_OPERATOR</label>
</extension>

org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContainerOperator

Associated java class:
org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContainerOperator

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContainerOperator" class="org.ametys.plugins.odfsync.apogee.scc.operator.ApogeeSynchronizingContainerOperator" point="org.ametys.plugins.contentio.synchronize.SynchronizingContentOperatorExtensionPoint">
<label type="i18n">PLUGINS_ODF_SYNC_APOGEE_CONTAINER_SYNCHRO_OPERATOR</label>
</extension>

odf-sync/org.ametys.plugins.odfsync.apogee.tool

Depends on:
odf-sync/configuration.apogee

Extensions:

uitool-apogee-import

Associated java class:
org.ametys.cms.clientsideelement.SimpleSearchClientSideElement

Associated javascript class:
Ametys.tool.factory.BasicToolFactory

Extension point extended:
org.ametys.core.ui.UIToolsFactoriesManager

Configuration:

<extension id="uitool-apogee-import" point="org.ametys.core.ui.UIToolsFactoriesManager" class="org.ametys.cms.clientsideelement.SimpleSearchClientSideElement">
<class name="Ametys.tool.factory.BasicToolFactory">
<toolClass>Ametys.plugins.odfsync.apogee.ApogeeSCCSearchTool</toolClass>
<autoRefresh>false</autoRefresh>
<description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_UITOOL_SEARCH_TITLE_DESCRIPTION</description>
<icon-glyph>ametysicon-upload119</icon-glyph>
<default-location>cl</default-location>
</class>
<scripts>
<file>js/Ametys/plugins/odfsync/apogee/ApogeeSCCSearchTool.js</file>
<file>js/Ametys/plugins/odfsync/apogee/ApogeeOpenToolButtonController.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-scc-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
</extension>

uitool-apogee-subprogram-import

Associated java class:
org.ametys.cms.clientsideelement.SimpleSearchClientSideElement

Associated javascript class:
Ametys.tool.factory.BasicToolFactory

Extension point extended:
org.ametys.core.ui.UIToolsFactoriesManager

Configuration:

<extension id="uitool-apogee-subprogram-import" point="org.ametys.core.ui.UIToolsFactoriesManager" class="org.ametys.cms.clientsideelement.SimpleSearchClientSideElement">
<class name="Ametys.tool.factory.BasicToolFactory">
<toolClass>Ametys.plugins.odfsync.apogee.SubProgramSearchTool</toolClass>
<autoRefresh>false</autoRefresh>
<description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_UITOOL_SEARCH_TITLE_DESCRIPTION</description>
<icon-glyph>ametysicon-upload119</icon-glyph>
<default-location>cl</default-location>
</class>
<scripts>
<file>js/Ametys/plugins/odfsync/apogee/ApogeeFilledSearchTool.js</file>
<file>js/Ametys/plugins/odfsync/apogee/SubProgramSearchTool.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-apogee-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
</extension>

odf-sync/org.ametys.plugins.odfsync.scc.person

Extensions:

org.ametys.plugins.odfsync.scc.person

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.scc.PersonSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.scc.person" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.scc.PersonSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_PERSON_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_PERSON_DESCRIPTION</description>
<parameters>
<param id="datasourceId" type="datasource">
<label i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_DATASOURCE_LABEL</label>
<description i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_DATASOURCE_DESCRIPTION</description>
<widget>edition.datasource-ldap</widget>
<widget-params>
<param name="allowCreation">true</param>
</widget-params>
<validation>
<mandatory/>
</validation>
</param>
<param id="peopleDN" type="string">
<label i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_PEOPLEDN_LABEL</label>
<description i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_PEOPLEDN_DESCRIPTION</description>
<default-value>ou=people</default-value>
</param>
<param id="baseFilter" type="string">
<label i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_BASEFILTER_LABEL</label>
<description i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_BASEFILTER_DESCRIPTION</description>
<validation>
<mandatory/>
<regexp>\s*\(.*\)\s*</regexp>
</validation>
<default-value>(objectclass=*)</default-value>
</param>
<param id="scope" type="string">
<label i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_SEARCH_SCOPE_LABEL</label>
<description i18n="true">plugin.core-impl:PLUGINS_CORE_USERS_LDAPUSER_CONFIG_SEARCH_SCOPE_DESCRIPTION</description>
<enumeration>
<custom-enumerator class="org.ametys.core.util.ldap.ScopeEnumerator"/>
</enumeration>
<validation>
<mandatory/>
</validation>
<default-value>one</default-value>
</param>
<param id="idField" type="string">
<label i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SYNCHRONIZE_DATASOURCE_PARAM_ID_FIELD_LABEL</label>
<description i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SYNCHRONIZE_DATASOURCE_PARAM_ID_FIELD_DESCRIPTION</description>
<widget>edition.select-metadata</widget>
<widget-params>
<param name="contentTypesField">contentType</param>
<param name="multiple">false</param>
<param name="includeSubRepeaters">false</param>
<param name="stacked">true</param>
<param name="acceptedTypes">STRING</param>
</widget-params>
<validation>
<mandatory/>
</validation>
</param>
<param id="mapping" type="string">
<label i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SYNCHRONIZE_LDAP_PARAM_MAPPING_LABEL</label>
<description i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SYNCHRONIZE_LDAP_PARAM_MAPPING_DESCRIPTION</description>
<widget>edition.datasourceMapping</widget>
<widget-params>
<param name="contentTypesField">contentType</param>
<param name="mappingColumnText" i18n="true">plugin.contentio:PLUGINS_CONTENTIO_WIDGET_MAPPING_LDAP_ATTRIBUTE</param>
<param name="mappingColumnTooltip" i18n="true">plugin.contentio:PLUGINS_CONTENTIO_WIDGET_MAPPING_LDAP_ATTRIBUTE_DESC</param>
</widget-params>
</param>
</parameters>
</extension>

org.ametys.plugins.odfsync.ImportPerson

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.ImportPerson" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.plugins.odfsync.apogee.ApogeeOpenToolButtonController">
<opentool-id>uitool-scc-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.scc.person</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_PERSON_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_PERSON_IMPORT_DESCRIPTION</description>
<icon-glyph>odficon-people-1</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-scc-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Person_Import</right>
</extension>

org.ametys.plugins.odfsync.SynchronizePerson

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement

Associated javascript class:
Ametys.plugins.cms.content.controller.SmartContentController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.SynchronizePerson" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCSmartContentClientSideElement">
<class name="Ametys.plugins.cms.content.controller.SmartContentController">
<action>Ametys.plugins.contentio.search.SynchronizeContentAction.act</action>
<sccModelId>org.ametys.plugins.odfsync.scc.person</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_PERSON_SYNCHRO_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_PERSON_SYNCHRO_DESCRIPTION</description>
<field-label type="i18n">PLUGINS_ODF_SYNC_FIELD_LABEL_PERSON</field-label>
<selection-target-id>^content$</selection-target-id>
<selection-target-parameter>
<name>^types$</name>
<value>^org.ametys.plugins.odf.Content.orgunit$</value>
</selection-target-parameter>
<selection-enable-multiselection>false</selection-enable-multiselection>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<selection-description-empty type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-empty>
<selection-description-nomatch type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_NOCONTENT</selection-description-nomatch>
<selection-description-multiselectionforbidden type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_MANYCONTENT</selection-description-multiselectionforbidden>
<allright-start-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_START</allright-start-description>
<allright-end-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_END</allright-end-description>
<allright-content-description type="i18n">plugin.contentio:PLUGINS_CONTENTIO_BUTTON_SYNCHRONIZE_CONTENT</allright-content-description>
<error-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_ERROR</error-description>
<enabled-on-unlock-only>true</enabled-on-unlock-only>
<locked-start-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_START</locked-start-description>
<locked-end-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_END</locked-end-description>
<locked-content-description type="i18n">plugin.cms:CONTENT_EDIT_DESCRIPTION_LOCKED_CONTENT</locked-content-description>
</class>
<scripts>
<file plugin="cms">js/Ametys/plugins/cms/content/controller/SmartContentController.js</file>
<file plugin="contentio">js/Ametys/plugins/contentio/search/SynchronizeContentAction.js</file>
</scripts>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-server-logs</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Person_Synchro</right>
</extension>

odf-sync/odfsync.ribbon.imports

Extensions:

org.ametys.odfsync.ribbon.Imports

Associated java class:
org.ametys.core.ui.StaticRibbonImportManager

Extension point extended:
org.ametys.core.ui.RibbonImportManager

Configuration:

<extension id="org.ametys.odfsync.ribbon.Imports" point="org.ametys.core.ui.RibbonImportManager" class="org.ametys.core.ui.StaticRibbonImportManager">
<workspace match="cms|web">
<file>ribbon/cms-ribbon-odf.xml</file>
<file>ribbon/cms-ribbon-content.xml</file>
</workspace>
</extension>

odf-sync/org.ametys.plugins.odfsync.scc.global.apogee

Depends on:
odf-sync/configuration.apogee

Extensions:

odf.rights.global.synchro.apogee

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.global.synchro.apogee">
<right id="ODF_Rights_Global_Synchro_Apogee">
<label>PLUGINS_ODF_RIGHTS_GLOBAL_SYNCHRONIZATION_APOGEE</label>
<description>PLUGINS_ODF_RIGHTS_GLOBAL_SYNCHRONIZATION_APOGEE_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

org.ametys.plugins.odfsync.apogee.ApogeeSchedulable
true

Associated java class:
org.ametys.plugins.odfsync.apogee.ApogeeSchedulable

Extension point extended:
org.ametys.core.schedule.SchedulableExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.apogee.ApogeeSchedulable" class="org.ametys.plugins.odfsync.apogee.ApogeeSchedulable" point="org.ametys.core.schedule.SchedulableExtensionPoint" logger="org.ametys.plugins.odfsync.GlobalSynchronization">
<label i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_SCHEDULER_LABEL</label>
<description i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_SCHEDULER_DESCRIPTION</description>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<acceptConcurrentExecution>false</acceptConcurrentExecution>
<parameters>
<param id="collectionIds" type="string">
<label i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SCHEDULER_SYNCHRONIZE_COLLECTION_PARAM_SITE_LABEL</label>
<description i18n="true">plugin.contentio:PLUGINS_CONTENTIO_SCHEDULER_SYNCHRONIZE_COLLECTION_PARAM_SITE_DESCRIPTION</description>
<validation>
<mandatory/>
</validation>
</param>
</parameters>
</extension>

org.ametys.plugins.odfsync.button.ApogeeGlobalSynchronization

Associated java class:
org.ametys.plugins.odfsync.apogee.ApogeeGlobalSynchronizationClientSideElement

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.button.ApogeeGlobalSynchronization" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.odfsync.apogee.ApogeeGlobalSynchronizationClientSideElement">
<class>
<label i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_APOGEE_LABEL</label>
<description i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_APOGEE_DESC</description>
<modelsToSync>org.ametys.plugins.odfsync.apogee.scc.program,org.ametys.plugins.odfsync.apogee.scc.subprogram,org.ametys.plugins.odfsync.apogee.scc.container,org.ametys.plugins.odfsync.apogee.scc.courselist,org.ametys.plugins.odfsync.apogee.scc.course,org.ametys.plugins.odfsync.apogee.scc.orgunit</modelsToSync>
<schedulable>org.ametys.plugins.odfsync.apogee.ApogeeSchedulable</schedulable>
<fireProcess>NOW</fireProcess>
<log-category>org.ametys.plugins.odfsync.GlobalSynchronization</log-category>
<log-title i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_LOGS</log-title>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<confirm-title i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_TITLE</confirm-title>
<confirm-msg i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_CONFIRM_TEXT</confirm-msg>
</class>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Global_Synchro_Apogee</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.scc.global.cdmfr

Extensions:

odf.rights.global.synchro.cdmfr

Extension point extended:
org.ametys.core.right.RightsExtensionPoint

Configuration:

<extension point="org.ametys.core.right.RightsExtensionPoint" id="odf.rights.global.synchro.cdmfr">
<right id="ODF_Rights_Global_Synchro_CDMFr">
<label>PLUGINS_ODF_RIGHTS_GLOBAL_SYNCHRONIZATION_CDMFR</label>
<description>PLUGINS_ODF_RIGHTS_GLOBAL_SYNCHRONIZATION_CDMFR_DESC</description>
<category>plugin.odf:PLUGINS_ODF_RIGHTS_ODF_CATEGORY</category>
</right>
</extension>

org.ametys.plugins.odfsync.button.CDMFrGlobalSynchronization

Associated java class:
org.ametys.plugins.odfsync.GlobalSynchronizationClientSideElement

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.button.CDMFrGlobalSynchronization" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.odfsync.GlobalSynchronizationClientSideElement">
<class>
<label i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_CDMFR_LABEL</label>
<description i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_CDMFR_DESC</description>
<modelsToSync>org.ametys.plugins.odfsync.cdmfr.scc</modelsToSync>
<schedulable>org.ametys.plugins.contentio.synchronize.SynchronizeCollectionSchedulable</schedulable>
<fireProcess>NOW</fireProcess>
<log-category>org.ametys.plugins.odfsync.GlobalSynchronization</log-category>
<log-title i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_LOGS</log-title>
<icon-glyph>ametysicon-arrow123</icon-glyph>
<confirm-title i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_TITLE</confirm-title>
<confirm-msg i18n="true">PLUGINS_ODF_SYNC_GLOBAL_SYNCHRONIZATION_CONFIRM_TEXT</confirm-msg>
</class>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Global_Synchro_CDMFr</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.scc

Extensions:

org.ametys.plugins.odfsync.cdmfr.scc

Associated java class:
org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel

Associated javascript class:
org.ametys.plugins.odfsync.cdmfr.CDMFrSynchronizableContentsCollection

Extension point extended:
org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint

Configuration:

<extension id="org.ametys.plugins.odfsync.cdmfr.scc" class="org.ametys.plugins.contentio.synchronize.impl.DefaultSynchronizableContentsCollectionModel" point="org.ametys.plugins.contentio.synchronize.SynchronizeContentsCollectionModelExtensionPoint">
<class name="org.ametys.plugins.odfsync.cdmfr.CDMFrSynchronizableContentsCollection"/>
<label type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_CDMFR_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_DATASOURCE_CDMFR_DESCRIPTION</description>
<parameters>
<param id="folder" type="string">
<label i18n="true">PLUGINS_ODF_SYNC_DATASOURCE_CDMFR_FOLDER</label>
<description i18n="true">PLUGINS_ODF_SYNC_DATASOURCE_CDMFR_FOLDER_DESC</description>
<validation>
<mandatory/>
</validation>
</param>
</parameters>
</extension>

org.ametys.plugins.odfsync.cdmfr.ImportCDMFrFile

Associated java class:
org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement

Associated javascript class:
Ametys.ribbon.element.ui.button.OpenToolButtonController

Extension point extended:
org.ametys.core.ui.RibbonControlsManager

Configuration:

<extension id="org.ametys.plugins.odfsync.cdmfr.ImportCDMFrFile" point="org.ametys.core.ui.RibbonControlsManager" class="org.ametys.plugins.contentio.synchronize.clientsideelement.SCCClientSideElement">
<class name="Ametys.ribbon.element.ui.button.OpenToolButtonController">
<opentool-id>uitool-scc-import</opentool-id>
<sccModelId>org.ametys.plugins.odfsync.cdmfr.scc</sccModelId>
<label type="i18n">PLUGINS_ODF_SYNC_CDMFR_IMPORT_LABEL</label>
<description type="i18n">PLUGINS_ODF_SYNC_CDMFR_IMPORT_DESCRIPTION</description>
<icon-glyph>ametysicon-document28</icon-glyph>
<icon-decorator>decorator-ametysicon-upload119</icon-decorator>
<icon-decorator-type>action-create</icon-decorator-type>
</class>
<depends>
<org.ametys.core.ui.UIToolsFactoriesManager>uitool-scc-import</org.ametys.core.ui.UIToolsFactoriesManager>
</depends>
<right context-prefix="/${WorkspaceName}">ODF_Rights_Program_Import</right>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.ametys.v41

Extensions:

org.ametys.plugins.odfsync.cdmfr.Ametys41ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.Ametys41ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>^Ametys v4\.1$</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/ametys41/cdmfr2content.xsl</xsl-transform>
</configuration>
<namespaces>
<namespace prefix="cdm" value="http://cdm-fr.fr/2013/CDM"/>
<namespace prefix="cdmfr" value="http://cdm-fr.fr/2013/CDM-frSchema"/>
</namespaces>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.ametys

Extensions:

org.ametys.plugins.odfsync.cdmfr.Ametys3ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.Ametys3ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>Ametys v3</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/cdmfr2content.xsl</xsl-transform>
</configuration>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.ametys.cdm11

Extensions:

org.ametys.plugins.odfsync.cdmfr.Ametys3CDM11ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.Ametys3CDM11ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>Ametys v3</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/cdm11/cdmfr2content.xsl</xsl-transform>
</configuration>
<namespaces>
<namespace prefix="cdm" value="http://cdm-fr.fr/2012/CDM"/>
<namespace prefix="cdmfr" value="http://cdm-fr.fr/2012/CDM-frSchema"/>
</namespaces>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.ametys.cdm112

Extensions:

org.ametys.plugins.odfsync.cdmfr.Ametys3CDM112ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.Ametys3CDM112ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>Ametys v3</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/cdm112/cdmfr2content.xsl</xsl-transform>
</configuration>
<namespaces>
<namespace prefix="cdm" value="http://cdm-fr.fr/2013/CDM"/>
<namespace prefix="cdmfr" value="http://cdm-fr.fr/2013/CDM-frSchema"/>
</namespaces>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.rof

Extensions:

org.ametys.plugins.odfsync.cdmfr.ROF13ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.ROF13ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>^ROF.*$</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/rof/rof2content.xsl</xsl-transform>
</configuration>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.rof4

Extensions:

org.ametys.plugins.odfsync.cdmfr.ROF4ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.ROF4ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>^ROF 4.*$</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/rof4/rof2content.xsl</xsl-transform>
</configuration>
<namespaces>
<namespace prefix="cdm" value="http://cdm-fr.fr/2012/CDM"/>
<namespace prefix="cdmfr" value="http://cdm-fr.fr/2012/CDM-frSchema"/>
</namespaces>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.extension.point.rof23

Extensions:

org.ametys.plugins.odfsync.cdmfr.ROF23ODFSyncManager

Associated java class:
org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer

Extension point extended:
org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint

Configuration:

<extension point="org.ametys.plugins.odfsync.cdmfr.CDMFrSyncExtensionPoint" id="org.ametys.plugins.odfsync.cdmfr.ROF23ODFSyncManager" class="org.ametys.plugins.odfsync.cdmfr.transformers.DefaultCDMFrSyncTransformer">
<app>^ROF [^4].*$</app>
<configuration>
<xsl-transform>plugin:odf-sync://stylesheets/rof23/rof2content.xsl</xsl-transform>
</configuration>
<namespaces>
<namespace prefix="cdm" value="http://cdm-fr.fr/2012/CDM"/>
<namespace prefix="cdmfr" value="http://cdm-fr.fr/2012/CDM-frSchema"/>
</namespaces>
</extension>

odf-sync/org.ametys.plugins.odfsync.cdmfr.scc.components

Components:

org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent

Associated java class:
org.ametys.plugins.odfsync.cdmfr.components.impl.SCCImportCDMFrComponent

Configuration:

<component role="org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent" id="org.ametys.plugins.odfsync.cdmfr.components.impl.SCCImportCDMFrComponent" class="org.ametys.plugins.odfsync.cdmfr.components.impl.SCCImportCDMFrComponent"/>

odf-sync/org.ametys.plugins.odfsync.cdmfr.scc.remote.components

Depends on:
odf-sync/configuration.cdmfr.remote

Components:

org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent

Associated java class:
org.ametys.plugins.odfsync.cdmfr.components.impl.RemoteImportCDMFrComponent

Configuration:

<component role="org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent" id="org.ametys.plugins.odfsync.cdmfr.components.impl.RemoteImportCDMFrComponent" class="org.ametys.plugins.odfsync.cdmfr.components.impl.RemoteImportCDMFrComponent"/>

odf-sync/org.ametys.plugins.odfsync.cdmfr.scc.coaccredited.remote.components

Depends on:
odf-sync/configuration.cdmfr.remote

Components:

org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent

Associated java class:
org.ametys.plugins.odfsync.cdmfr.components.impl.CoAccreditedRemoteImportCDMFrComponent

Configuration:

<component role="org.ametys.plugins.odfsync.cdmfr.components.ImportCDMFrComponent" id="org.ametys.plugins.odfsync.cdmfr.components.impl.CoAccreditedRemoteImportCDMFrComponent" class="org.ametys.plugins.odfsync.cdmfr.components.impl.CoAccreditedRemoteImportCDMFrComponent"/>