Loading CHANGELOG.md +15 −0 Original line number Diff line number Diff line Journal des modifications ========================= 1.4.6 (29/05/2020) ------------------ - Ajout du drapeau "établissement d'inscription" et ajout des visualisations et interfaces pour gérer ce nouveau drapeau. - Restriction du filtre des établissements sur la partie annuaire aux établissements d'inscription. - Ajout dans structures des champs adresse, tel, fax, site web, email qui sont utilisables pour l'édition de document. - Utilisation des nouveaux champs dans la génération de la convention de MEL (requiert unicaen/app v1.3.19). - Amélioration de la recherche textuelle de thèses : ajout d'une liste déroulante permettant de sélectionner précisément sur quels critères porte la recherche : "Titre de la thèse", "Numéro étudiant de l'auteur", "Nom de l'auteur", "Prénom de l'auteur", "Nom du directeur ou co-directeur de thèse", "Code national de l'école doctorale concernée (ex: 181)", "Unité de recherche concernée (ex: umr6211)". - Correction d'un dysfonctionnement de la recherche textuelle sur les critères "numéro étudiant", "unité de recherche" et "école doctorale". 1.4.5 (08/04/2020) ------------------ Loading composer.lock +8 −4 Original line number Diff line number Diff line Loading @@ -1963,11 +1963,11 @@ }, { "name": "unicaen/app", "version": "1.3.28", "version": "1.3.30", "source": { "type": "git", "url": "https://git.unicaen.fr/lib/unicaen/app.git", "reference": "a1ed951e53569b6234ea88650b40e6093cf75841" "reference": "e07afd32d48a1050d8fa162250b5d1062aa4a866" }, "require": { "doctrine/doctrine-orm-module": ">=0.7", Loading Loading @@ -2010,7 +2010,7 @@ ] }, "description": "Module de base des applications unicaen", "time": "2019-07-10T13:15:50+00:00" "time": "2020-05-28T12:20:49+00:00" }, { "name": "unicaen/auth", Loading Loading @@ -2338,6 +2338,7 @@ "module", "zf2" ], "abandoned": "laminas/laminas-developer-tools", "time": "2015-11-24T11:08:25+00:00" }, { Loading Loading @@ -2455,6 +2456,7 @@ "framework", "zf2" ], "abandoned": "laminas/laminas-mvc-skeleton", "time": "2017-07-13T17:23:56+00:00" }, { Loading Loading @@ -2501,6 +2503,7 @@ "xml", "zf" ], "abandoned": "laminas/laminas-xml", "time": "2019-01-22T19:42:14+00:00" }, { Loading Loading @@ -3951,5 +3954,6 @@ "ext-readline": "*", "ext-gettext": "*" }, "platform-dev": [] "platform-dev": [], "plugin-api-version": "1.1.0" } config/autoload/version.global.php +3 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,9 @@ return [ 'unicaen-app' => [ 'app_infos' => [ 'version' => '1.4.5', 'date' => '08/04/2020', 'version' => '1.4.6', 'date' => '28/05/2020', ], ], 'comment' => 'Fichier généré le 08/04/2020 à 15:56:49 avec /app/bump-version', 'comment' => 'Fichier généré le 28/05/2020 à 11:48:35 avec /app/bump-version', ]; doc/release-notes/v1.4.6.md 0 → 100644 +65 −0 Original line number Diff line number Diff line # Version 1.4.6 ## 1. Sur le serveur d'application - Placez-vous dans le répertoire de l'application puis lancez la commande suivante pour installer la nouvelle version : ```bash git fetch --tags && git checkout --force 1.4.6 && \ bash ./install.sh ``` - Selon le moteur PHP que vous avez installé, rechargez le service, exemple : - php7.0-fpm : `service php7.0-fpm reload` - apache2-mod-php7.0 : `service apache2 reload` ## 2. Dans la base de données - Exécutez les instructions SQL suivantes : ```sql alter table STRUCTURE add ADRESSE varchar2(1024); alter table STRUCTURE add TELEPHONE varchar2(64); alter table STRUCTURE add FAX varchar2(64); alter table STRUCTURE add EMAIL varchar2(64); alter table STRUCTURE add SITE_WEB varchar2(512); alter table ETABLISSEMENT add EST_ETAB_INSCRIPTION NUMBER default 0 not null; drop materialized view MV_RECHERCHE_THESE; CREATE MATERIALIZED VIEW "MV_RECHERCHE_THESE" ("CODE_THESE", "CODE_DOCTORANT", "CODE_ECOLE_DOCT", "HAYSTACK") BUILD IMMEDIATE USING INDEX REFRESH FORCE ON DEMAND AS with acteurs as ( select a.these_id, i.nom_usuel, INDIVIDU_ID from individu i join acteur a on i.id = a.individu_id join these t on t.id = a.these_id join role r on a.role_id = r.id and r.CODE in ('D', 'K') -- (co)directeur de thèse ) select t.source_code code_these, d.source_code code_doctorant, ed.source_code code_ecole_doct, trim(UNICAEN_ORACLE.str_reduce( 'code-ed{' || eds.code || '} ' || 'code-ur{' || urs.code || '} ' || 'titre{' || t.TITRE || '} ' || 'numero-doctorant{' || substr(d.SOURCE_CODE, instr(d.SOURCE_CODE, '::')+2) || '} ' || 'nom-doctorant{' || id.NOM_PATRONYMIQUE || ' ' || id.NOM_USUEL || '} ' || 'prenom-doctorant{' || id.PRENOM1 || '} ' || 'nom-directeur{' || a.nom_usuel || '} ' )) as haystack from these t join doctorant d on d.id = t.doctorant_id join individu id on id.id = d.INDIVIDU_ID join these th on th.source_code = t.source_code left join ecole_doct ed on t.ecole_doct_id = ed.id left join structure eds on ed.STRUCTURE_ID = eds.id left join UNITE_RECH ur on t.UNITE_RECH_ID = ur.id left join structure urs on ur.STRUCTURE_ID = urs.id left join acteurs a on a.these_id = t.id left join individu ia on ia.id = a.INDIVIDU_ID; ``` module/Application/src/Application/Controller/Factory/TheseControllerFactory.php +4 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ namespace Application\Controller\Factory; use Application\Controller\TheseController; use Application\Service\Etablissement\EtablissementService; use Application\Service\FichierThese\FichierTheseService; use Application\Service\File\FileService; use Application\Service\MailConfirmationService; use Application\Service\Notification\NotifierService; use Application\Service\Role\RoleService; Loading Loading @@ -44,6 +45,7 @@ class TheseControllerFactory * @var TheseRechercheService $theseRechercheService * @var RoleService $roleService * @var FichierTheseService $fichierTheseService * @var FileService $fileService * @var WorkflowService $workflowService * @var NotifierService $notifierService * @var EtablissementService $etablissementService Loading @@ -61,6 +63,7 @@ class TheseControllerFactory $roleService = $sl->get('RoleService'); $uniteService = $sl->get('UniteRechercheService'); $fichierTheseService = $sl->get('FichierTheseService'); $fileService = $sl->get(FileService::class); $workflowService = $sl->get('WorkflowService'); $etablissementService = $sl->get('EtablissementService'); $mailConfirmationService = $sl->get('MailConfirmationService'); Loading @@ -78,6 +81,7 @@ class TheseControllerFactory $controller->setTheseRechercheService($theseRechercheService); $controller->setRoleService($roleService); $controller->setFichierTheseService($fichierTheseService); $controller->setFileService($fileService); $controller->setWorkflowService($workflowService); $controller->setEtablissementService($etablissementService); $controller->setUniteRechercheService($uniteService); Loading Loading
CHANGELOG.md +15 −0 Original line number Diff line number Diff line Journal des modifications ========================= 1.4.6 (29/05/2020) ------------------ - Ajout du drapeau "établissement d'inscription" et ajout des visualisations et interfaces pour gérer ce nouveau drapeau. - Restriction du filtre des établissements sur la partie annuaire aux établissements d'inscription. - Ajout dans structures des champs adresse, tel, fax, site web, email qui sont utilisables pour l'édition de document. - Utilisation des nouveaux champs dans la génération de la convention de MEL (requiert unicaen/app v1.3.19). - Amélioration de la recherche textuelle de thèses : ajout d'une liste déroulante permettant de sélectionner précisément sur quels critères porte la recherche : "Titre de la thèse", "Numéro étudiant de l'auteur", "Nom de l'auteur", "Prénom de l'auteur", "Nom du directeur ou co-directeur de thèse", "Code national de l'école doctorale concernée (ex: 181)", "Unité de recherche concernée (ex: umr6211)". - Correction d'un dysfonctionnement de la recherche textuelle sur les critères "numéro étudiant", "unité de recherche" et "école doctorale". 1.4.5 (08/04/2020) ------------------ Loading
composer.lock +8 −4 Original line number Diff line number Diff line Loading @@ -1963,11 +1963,11 @@ }, { "name": "unicaen/app", "version": "1.3.28", "version": "1.3.30", "source": { "type": "git", "url": "https://git.unicaen.fr/lib/unicaen/app.git", "reference": "a1ed951e53569b6234ea88650b40e6093cf75841" "reference": "e07afd32d48a1050d8fa162250b5d1062aa4a866" }, "require": { "doctrine/doctrine-orm-module": ">=0.7", Loading Loading @@ -2010,7 +2010,7 @@ ] }, "description": "Module de base des applications unicaen", "time": "2019-07-10T13:15:50+00:00" "time": "2020-05-28T12:20:49+00:00" }, { "name": "unicaen/auth", Loading Loading @@ -2338,6 +2338,7 @@ "module", "zf2" ], "abandoned": "laminas/laminas-developer-tools", "time": "2015-11-24T11:08:25+00:00" }, { Loading Loading @@ -2455,6 +2456,7 @@ "framework", "zf2" ], "abandoned": "laminas/laminas-mvc-skeleton", "time": "2017-07-13T17:23:56+00:00" }, { Loading Loading @@ -2501,6 +2503,7 @@ "xml", "zf" ], "abandoned": "laminas/laminas-xml", "time": "2019-01-22T19:42:14+00:00" }, { Loading Loading @@ -3951,5 +3954,6 @@ "ext-readline": "*", "ext-gettext": "*" }, "platform-dev": [] "platform-dev": [], "plugin-api-version": "1.1.0" }
config/autoload/version.global.php +3 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,9 @@ return [ 'unicaen-app' => [ 'app_infos' => [ 'version' => '1.4.5', 'date' => '08/04/2020', 'version' => '1.4.6', 'date' => '28/05/2020', ], ], 'comment' => 'Fichier généré le 08/04/2020 à 15:56:49 avec /app/bump-version', 'comment' => 'Fichier généré le 28/05/2020 à 11:48:35 avec /app/bump-version', ];
doc/release-notes/v1.4.6.md 0 → 100644 +65 −0 Original line number Diff line number Diff line # Version 1.4.6 ## 1. Sur le serveur d'application - Placez-vous dans le répertoire de l'application puis lancez la commande suivante pour installer la nouvelle version : ```bash git fetch --tags && git checkout --force 1.4.6 && \ bash ./install.sh ``` - Selon le moteur PHP que vous avez installé, rechargez le service, exemple : - php7.0-fpm : `service php7.0-fpm reload` - apache2-mod-php7.0 : `service apache2 reload` ## 2. Dans la base de données - Exécutez les instructions SQL suivantes : ```sql alter table STRUCTURE add ADRESSE varchar2(1024); alter table STRUCTURE add TELEPHONE varchar2(64); alter table STRUCTURE add FAX varchar2(64); alter table STRUCTURE add EMAIL varchar2(64); alter table STRUCTURE add SITE_WEB varchar2(512); alter table ETABLISSEMENT add EST_ETAB_INSCRIPTION NUMBER default 0 not null; drop materialized view MV_RECHERCHE_THESE; CREATE MATERIALIZED VIEW "MV_RECHERCHE_THESE" ("CODE_THESE", "CODE_DOCTORANT", "CODE_ECOLE_DOCT", "HAYSTACK") BUILD IMMEDIATE USING INDEX REFRESH FORCE ON DEMAND AS with acteurs as ( select a.these_id, i.nom_usuel, INDIVIDU_ID from individu i join acteur a on i.id = a.individu_id join these t on t.id = a.these_id join role r on a.role_id = r.id and r.CODE in ('D', 'K') -- (co)directeur de thèse ) select t.source_code code_these, d.source_code code_doctorant, ed.source_code code_ecole_doct, trim(UNICAEN_ORACLE.str_reduce( 'code-ed{' || eds.code || '} ' || 'code-ur{' || urs.code || '} ' || 'titre{' || t.TITRE || '} ' || 'numero-doctorant{' || substr(d.SOURCE_CODE, instr(d.SOURCE_CODE, '::')+2) || '} ' || 'nom-doctorant{' || id.NOM_PATRONYMIQUE || ' ' || id.NOM_USUEL || '} ' || 'prenom-doctorant{' || id.PRENOM1 || '} ' || 'nom-directeur{' || a.nom_usuel || '} ' )) as haystack from these t join doctorant d on d.id = t.doctorant_id join individu id on id.id = d.INDIVIDU_ID join these th on th.source_code = t.source_code left join ecole_doct ed on t.ecole_doct_id = ed.id left join structure eds on ed.STRUCTURE_ID = eds.id left join UNITE_RECH ur on t.UNITE_RECH_ID = ur.id left join structure urs on ur.STRUCTURE_ID = urs.id left join acteurs a on a.these_id = t.id left join individu ia on ia.id = a.INDIVIDU_ID; ```
module/Application/src/Application/Controller/Factory/TheseControllerFactory.php +4 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ namespace Application\Controller\Factory; use Application\Controller\TheseController; use Application\Service\Etablissement\EtablissementService; use Application\Service\FichierThese\FichierTheseService; use Application\Service\File\FileService; use Application\Service\MailConfirmationService; use Application\Service\Notification\NotifierService; use Application\Service\Role\RoleService; Loading Loading @@ -44,6 +45,7 @@ class TheseControllerFactory * @var TheseRechercheService $theseRechercheService * @var RoleService $roleService * @var FichierTheseService $fichierTheseService * @var FileService $fileService * @var WorkflowService $workflowService * @var NotifierService $notifierService * @var EtablissementService $etablissementService Loading @@ -61,6 +63,7 @@ class TheseControllerFactory $roleService = $sl->get('RoleService'); $uniteService = $sl->get('UniteRechercheService'); $fichierTheseService = $sl->get('FichierTheseService'); $fileService = $sl->get(FileService::class); $workflowService = $sl->get('WorkflowService'); $etablissementService = $sl->get('EtablissementService'); $mailConfirmationService = $sl->get('MailConfirmationService'); Loading @@ -78,6 +81,7 @@ class TheseControllerFactory $controller->setTheseRechercheService($theseRechercheService); $controller->setRoleService($roleService); $controller->setFichierTheseService($fichierTheseService); $controller->setFileService($fileService); $controller->setWorkflowService($workflowService); $controller->setEtablissementService($etablissementService); $controller->setUniteRechercheService($uniteService); Loading