<?xml version="1.0" encoding="utf-8"?>
<creole>
    <files>
        <file filelist='dispatcher' name='/etc/eole/eole-db.d/dispatcher-db.yml' rm='True' mkdir='True'/>
    </files>

    <containers>
        <container name="web">
            <package>dispatcher-apps</package>
            <!--Fichiers de configuration de eole-dispatcher -->
            <file filelist='dispatcher' name='/var/www/html/edispatcher/include/dispatcher.config.php' source='dispatcher-config.php' mkdir='True'/>
            <file filelist='dispatcher' name='/var/www/html/edispatcher/include/db.config.php' source='dispatcher-db.config.php' mkdir='True'/>
            <file filelist='dispatcher' name='/etc/apache2/sites-enabled/dispatcher.conf' source='dispatcher-apache.conf' rm='True'/>
        </container>
    </containers>

    <variables>
        <family name='eDispatcher' icon="external-link">
            <variable name='dispatcher' type='oui/non' description="Activer eDispatcher">
                <value>non</value>
            </variable>

            <variable name='dispatcher_redirige_one' type='oui/non' description="Rediriger automatiquement si un seul ENT">
                <value>oui</value>
            </variable>
            <variable name='dispatcher_redirige_one_delay' type='string' description="Délai d'attente avant redirection automatique (en secondes)">
                <value>10</value>
            </variable>


            <variable name='dispatcher_portail_defaut' type='string' description="URL du portail par défaut, si aucun ENT trouvé" />

            <variable name='dispatcher_pia' type='oui/non' description="Activer la gestion d'un Portail Intranet Agents (PIA)">
                <value>non</value>
            </variable>
            <variable name='dispatcher_rne_portail_aca' type='string' description="Code RNE PIA" />
            <variable name='dispatcher_portail_aca' type='string' description="Nom de domaine du PIA" />
            <variable name='dispatcher_libelle_portail_aca' type='string' description="Libellé du PIA" />
            <variable name='dispatcher_forcepia' type='oui/non' description="Toujours proposer le PIA aux professeurs">
                <value>non</value>
            </variable>
            <variable name='dispatcher_forcepia_si_noetab' type='oui/non' description="Proposer le PIA aux professeurs si aucun établissement ENT">
                <value>non</value>
            </variable>



            <variable name='dispatcher_arena_webservice' type='string' description="Url du WebService Arena" />
            <variable name='dispatcher_arena_zone_defaut' type='string' description="Zone Arena par défaut" />
            <variable name='dispatcher_arena_cache' type='oui/non' description="Activer le cache Arena" />
            <variable name='dispatcher_arena_cache_duree' type='number' description="Durée du cache Arena (heures)">
              <value>24</value>
            </variable>
            <variable name='dispatcher_arena_alim_appmanager_auto' type='oui/non' description="Alimentation Arena automatique du App Manager">
                <value>non</value>
            </variable>
            <variable name='edispatcher_arena_zones' type='string' description="Zone Arena" multi='True' />
            <variable name='edispatcher_arena_zones_priorite' type='number' description="Priorité de la zone" />
            <variable name='edispatcher_arena_zones_portail' type='string' description="URL du portail de la zone avec http[s]://" />
            <variable name='edispatcher_arena_zones_libelle' type='string' description="Libéllé humain de la zone" />
            <variable name='edispatcher_arena_zones_couleur' type='string' description="Couleur de la zone" />

            <variable name='edispatcher_xdesktop'  type='oui/non' description="Proposer les ressources de xdesktop" >
              <value>non</value>
            </variable>

            <variable name='edispatcher_xdesktop_libelle' type='string' description="Libellé des ressources">
              <value>Res. xdesktop/edispatcher</value>
            </variable>


            <variable name='edispatcher_elements_cors' type='string' description="Domaine autorisé à utiliser les webcomponents"  multi='True'>
              <value>ac-academie.fr</value>
            </variable>

            <variable name='edispatcher_ng'  type='oui/non' description="Utiliser le hub de redirection ng" >
              <value>oui</value>
            </variable>

            <variable name='edispatcher_ng_template' type='string' description="Template a utiliser pour la redirection">
              <value>default</value>
            </variable>

            <variable name='edispatcher_federation'            type='string'   description="Service provider (Nom de l'entité sur votre serveur SSO)" multi='True' />
            <variable name='edispatcher_federation_service'    type='string'   description="Url du service" />

            <variable name='edispatcher_logout'                type='string'   description="URL de logout a appeler en arrière plan" multi='True' />
        </family>

        <family name='EoleDB' icon='database' mode='expert'>
            <variable type='string' name='dispatcher_db_mode' description='Serveur de bases de données à utiliser' mode='expert'/>
            <variable type='string' name='dispatcher_dbserver' description='Adresse du serveur de base de données' mode='expert'/>
            <variable type='number' name='dispatcher_dbport' description="Port d'écoute du serveur de base de données" mode='expert'/>
            <variable type='string' name='dispatcher_allow_hosts' description="Hôtes autorisés à utiliser la base de données" multi='True' mode='expert'/>
            <variable type='string' name='dispatcher_dbuser' description='Utilisateur du serveur de base de données' mode='expert'/>
            <variable type='string' name='dispatcher_dbpass' description='Fichier de mot de passe du serveur' mode='expert'/>
        </family>

        <separators>
            <separator name='edispatcher_xdesktop' never_hidden='True'>Ressources provenant de xdesktop</separator>
            <separator name='dispatcher_pia' never_hidden='True'>Portail Intranet Agents (PIA)</separator>
            <separator name='edispatcher_federation' never_hidden='True'>Liste des fédérations en arrière plan</separator>
            <separator name='dispatcher_arena_webservice' never_hidden='True'>Arena</separator>
            <separator name='edispatcher_elements_cors' never_hidden='True'>Ng / Composants Web</separator>
            <separator name="dispatcher_db_mode">Paramètres EoleDB associés à eDispatcher</separator>
        </separators>
    </variables>

    <constraints>
        <condition name='hidden_if_in' source='dispatcher'>
            <param>non</param>
            <target type='filelist'>dispatcher</target>
            <target type='variable'>dispatcher_redirige_one</target>
            <target type='variable'>dispatcher_pia</target>
            <target type='variable'>dispatcher_forcepia</target>
            <target type='variable'>dispatcher_rne_portail_aca</target>
            <target type='variable'>dispatcher_portail_aca</target>
            <target type='variable'>dispatcher_portail_defaut</target>
            <target type='variable'>dispatcher_arena_webservice</target>
            <target type='variable'>dispatcher_arena_zone_defaut</target>
            <target type='variable'>edispatcher_arena_zones</target>
            <target type='variable'>dispatcher_arena_alim_appmanager_auto</target>
        </condition>

        <condition name='hidden_if_in' source='dispatcher_pia'>
            <param>non</param>
            <target type='variable'>dispatcher_rne_portail_aca</target>
            <target type='variable'>dispatcher_portail_aca</target>
            <target type='variable'>dispatcher_forcepia</target>
        </condition>

        <condition name='hidden_if_in' source='dispatcher_redirige_one'>
            <param>non</param>
            <target type='variable'>dispatcher_redirige_one_delay</target>
        </condition>

        <condition name='disabled_if_in' source='activer_xdesktop'  fallback='True'>
            <param>non</param>
            <target type='variable'>edispatcher_xdesktop</target>
        </condition>

        <condition name='hidden_if_in' source='edispatcher_xdesktop'>
            <param>non</param>
            <target type='variable'>edispatcher_xdesktop_libelle</target>
        </condition>

        <condition name='hidden_if_in' source='edispatcher_ng'>
            <param>non</param>
            <target type='variable'>edispatcher_ng_template</target>
        </condition>

        <group master='edispatcher_arena_zones'>
            <slave>edispatcher_arena_zones_portail</slave>
            <slave>edispatcher_arena_zones_priorite</slave>
            <slave>edispatcher_arena_zones_libelle</slave>
            <slave>edispatcher_arena_zones_couleur</slave>
        </group>

        <group master='edispatcher_federation'>
            <slave>edispatcher_federation_service</slave>
        </group>

        <check name='valid_enum' target='dispatcher_db_mode'>
            <param>['default', 'externe', 'local']</param>
        </check>
        <condition name='disabled_if_in' source='dispatcher_db_mode'>
            <param>local</param>
            <target type='variable'>dispatcher_dbserver</target>
            <target type='variable'>dispatcher_dbuser</target>
            <target type='variable'>dispatcher_dbport</target>
            <target type='variable'>dispatcher_dbpass</target>
        </condition>
        <condition name='disabled_if_in' source='dispatcher_db_mode'>
            <param>default</param>
            <target type='variable'>dispatcher_dbserver</target>
            <target type='variable'>dispatcher_dbuser</target>
            <target type='variable'>dispatcher_dbport</target>
            <target type='variable'>dispatcher_dbpass</target>
            <target type='variable'>dispatcher_allow_hosts</target>
        </condition>
    </constraints>

    <help>
        <variable name='dispatcher'>Mettre à oui pour activer l'application edispatcher</variable>
        <variable name='dispatcher_redirige_one'>Si l'utilisateur ne dispose que d'un seul ENT/PIA le rediriger automatiquement vers son ENT/PIA</variable>
        <variable name='dispatcher_pia'>Mettre cette variable à oui si vous disposez d'un PIA</variable>
        <variable name='dispatcher_rne_portail_aca'>Code RNE de l'établissement ayant le PIA (généralement le code RNE est celui du Rectorat)</variable>
        <variable name='dispatcher_forcepia'>Mettre à oui cette variable si vous souhaitez proposer le PIA pour les enseignants</variable>
        <variable name='dispatcher_portail_aca'>Renseigner ici l'ul du portail académique</variable>
        <variable name='dispatcher_portail_defaut'>Adresse du site internet dédié à l'ENT si le ou les portails établissement sont indisponibles</variable>
        <variable name='dispatcher_arena_cache'>Permet d'activer le cache des ressources Arena</variable>
	    <variable name='dispatcher_arena_webservice'>Url complete du webService Arena pour la récupération des ressources (Ex: http://auth_manager:auth_port/WSIdentite/WSIdentiteService?WSDL)</variable>
	    <variable name='dispatcher_arena_zone_defaut'>Zone par défaut du portail arena (Ex: rev-proxy-id)</variable>
        <variable name='dispatcher_arena_cache_duree'>Permet de définir la durée du cache Arena en heures,
          une tâche planifiée vérifie régulièrement les caches pour les actualiser.
          Dans le cas ou l'utilisateur demande les ressources Arena et qu'elles sont obsolètes, edispatcher va demander au WebService Arena l'actualisation des ressources.
        </variable>

        <variable name='edispatcher_arena_zones_priorite'>Veuillez renseigner la priorité de cette zone.
          Les ressources d'une zone prioritaire seront présentées avant celles d'une zone moins prioritaire.
          Plus la valeur tend vers zéro, plus la zone est prioritaire.
        </variable>

        <variable name='edispatcher_arena_zones_libelle'>Indiquez ici le libellé qui sera afficher sur l'interface web.
        </variable>

        <variable name='edispatcher_arena_zones_couleur'>Indiquez ici la couleur qui représentera la zone sur l'interface web.
        </variable>

        <variable name="edispatcher_federation">Liste des fédérations a lancer en arrière plan</variable>

        <variable name='dispatcher_arena_alim_appmanager_auto'>Si passé à Oui, à chaque connexion d'utilisateur, la base des applications du App Manager sera alimentée par les ressources de l'utilisateur, y compris les ressources Arena. Si laissé à non, l'alimentation Arena du App Manager se fera par la synchro ARENA du App Manager. Si vous utilisez déjà le App Manager et que vous avez de nombreuses applis Arena dedans, passer à Oui. Si vous n'utilisez pas encore le App Manager, laisser à non</variable>

    </help>
</creole>
