Commit 7b5663d1 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Merge branch 'release_2.1.8'

parents 748c933d 25896b68
Loading
Loading
Loading
Loading
Loading
+9 −0
Changes for CHANGELOG.md: 9 added lines, 0 removed lines.
Original line number Diff line number Diff line
Journal des modifications
=========================

2.1.8
-----
- Utilisation de l'établissement de la thèse pour le routing des mails du module soutenance au site concerné.
- Retrait d'espace et renommage des fichiers pour signature (module Soutenance).
- Téléversement des rapports annuels : renommage en rapports d'activité (annuel ou de fin de thèse) ; création des privilèges *_TOUT et *_SIEN.
- [FIX] Import : le préfixe 'SyGAL' par défaut pour ORIGINE_FINANCEMENT_ID est incorrect depuis que les origines sont de nouveau importées de chaque établissement.
- [FIX] Corrections pour le cas où le supannId est null.
- [FIX] Un utilisateur authentifié était associé au mauvais utilisateur si les données shib ne fournisse aucun supann{Ref|Emp|Etu}Id.

2.1.7
-----
- Changement du fonctionnement de sursis pour les soutenances : seul la validation acteur vérifie le délai de deux mois et le sursis annule cette vérification.
+1 −1
Changes for doc/release-notes/v2.1.7.md: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@
pour installer la nouvelle version :

```bash
git fetch --tags && git checkout --force 2.1.6 && bash ./install.sh
git fetch --tags && git checkout --force 2.1.7 && bash ./install.sh
```

- Selon le moteur PHP que vous avez installé, rechargez le service, exemple :
+87 −0
Changes for doc/release-notes/v2.1.8.md: 87 added lines, 0 removed lines.
Original line number Diff line number Diff line
# Version 2.1.8

## 1. Sur le serveur d'application

- Placez-vous dans le répertoire de l'application, recherchez dans le fichier de config `config/local.php` la ligne
  suivante et notez le chemin du répertoire pointé par la clé `'root_dir_path'` :
  
```php
    'fichier' => [
        'root_dir_path' => '/chemin/vers/le/dossier/upload',
```

- Placez-vous dans le répertoire en question puis renommez le répertoire d'upload des rapports d'activités 
  `rapport_annuel` en `rapport_activite` :

```bash
cd /chemin/vers/le/dossier/upload
mv rapport_annuel rapport_activite
```

- 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 2.1.8 && bash ./install.sh
```

- Selon le moteur PHP que vous avez installé, rechargez le service, exemple :
    - php7.3-fpm         : `service php7.3-fpm reload`
    - apache2-mod-php7.3 : `service apache2 reload`

## 2. Dans la base de données

```sql
--
-- Rapports d'activité
--

update NATURE_FICHIER set CODE = 'RAPPORT_ACTIVITE' where CODE = 'RAPPORT_ANNUEL' ;
create table TYPE_RAPPORT (
                            ID NUMBER not null constraint TYPE_RAPPORT_PK primary key,
                            CODE VARCHAR2(50 char) not null,
                            LIBELLE_COURT VARCHAR2(64 char) not null,
                            LIBELLE_LONG VARCHAR2(128 char) not null
) ;
create unique index TYPE_RAPPORT_UN on TYPE_RAPPORT (CODE) ;
insert into TYPE_RAPPORT (ID, CODE, LIBELLE_COURT, LIBELLE_LONG) VALUES (1, 'RAPPORT_ACTIVITE_ANNUEL', 'Annuel', 'Rapport d''activité annuel') ;
insert into TYPE_RAPPORT (ID, CODE, LIBELLE_COURT, LIBELLE_LONG) VALUES (2, 'RAPPORT_ACTIVITE_FINTHESE', 'Fin de thèse', 'Rapport d''activité de fin de thèse') ;
alter table RAPPORT_ANNUEL modify EST_FINAL default null ;
alter table RAPPORT_ANNUEL modify EST_FINAL null ;
alter table RAPPORT_ANNUEL add TYPE_RAPPORT_ID number ;
update RAPPORT_ANNUEL set TYPE_RAPPORT_ID = 1 where EST_FINAL = 0;
update RAPPORT_ANNUEL set TYPE_RAPPORT_ID = 2 where EST_FINAL = 1;
alter table RAPPORT_ANNUEL modify TYPE_RAPPORT_ID not null ;
alter table RAPPORT_ANNUEL add constraint RAPPORT_ANNUEL_TYPE_ID_FK foreign key (TYPE_RAPPORT_ID) references TYPE_RAPPORT ;
alter table RAPPORT_ANNUEL rename to RAPPORT ;

rename RAPPORT_ANNUEL_ID_SEQ to RAPPORT_ID_SEQ;

insert into CATEGORIE_PRIVILEGE (ID, CODE, LIBELLE, ORDRE) select CATEGORIE_PRIVILEGE_ID_SEQ.nextval, 'rapport-activite', 'Rapports d''activité', 23 from dual ;
insert into PRIVILEGE(ID, CATEGORIE_ID, CODE, LIBELLE, ORDRE)
with tmp(code, libelle, ordre) as (
  select 'lister-tout', 'Lister les rapports concernant toute thèse', 100 from dual union all
  select 'lister-sien', 'Lister les rapports concernant ses thèses', 200 from dual union all
  select 'televerser-tout', 'Téléverser un rapport concernant toute thèse', 300 from dual union all
  select 'televerser-sien', 'Téléverser un rapport concernant ses thèses', 400 from dual union all
  select 'supprimer-tout', 'Supprimer un rapport concernant toute thèse', 500 from dual union all
  select 'supprimer-sien', 'Supprimer un rapport concernant ses thèses', 600 from dual union all
  select 'telecharger-tout', 'Télécharger les rapports concernant toute thèse', 700 from dual union all
  select 'telecharger-sien', 'Télécharger les rapports concernant ses thèses', 800 from dual union all
  select 'telecharger-zip', 'Télécharger des rapports sous la forme d''une archive compressée (.zip)', 900 from dual union all
  select 'rechercher-tout', 'Rechercher des rapports concernant toute thèse', 1000 from dual union all
  select 'rechercher-sien', 'Rechercher des rapports concernant ses thèses', 1100 from dual
)
select privilege_id_seq.nextval, cp.id, tmp.code, tmp.libelle, tmp.ordre from tmp
join CATEGORIE_PRIVILEGE cp on cp.CODE = 'rapport-activite'
;
update PRIVILEGE set CATEGORIE_ID = (select id from CATEGORIE_PRIVILEGE where code = 'rapport-activite')
where CATEGORIE_ID = (select id from CATEGORIE_PRIVILEGE where code = 'rapport-annuel');
delete from CATEGORIE_PRIVILEGE where code = 'rapport-annuel';

update CATEGORIE_PRIVILEGE set ORDRE = 40 where code = 'validation' ;

-----> ATTENTION : 
-----> Pensez maintenant à vous rendre dans SyGAL sur la page "Droits d'accès > Profils" pour accorder les nouveaux 
-----> privilèges de la catégorie "Rapports d'activité" aux profils Doctorant, MDD, ED, etc.
```
 No newline at end of file
+3 −3
Changes for install.sh: 3 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -10,10 +10,10 @@ CURDIR=$(cd `dirname $0` && pwd)

cd ${CURDIR}

# Composer install
composer install --no-dev --no-suggest --prefer-dist --optimize-autoloader && \

# Répertoire pour l'upload de fichiers
mkdir -p upload && \
  chown -R www-data:root upload && \
  chmod -R 770 upload

# Composer install
composer install --no-suggest --prefer-dist --optimize-autoloader && \
+4 −4
Changes for module/Application/config/module.config.php: 4 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -5,14 +5,14 @@ namespace Application;
use Application\Assertion\AssertionAbstractFactory;
use Application\Cache\MemcachedFactory;
use Application\Controller\Factory\IndexControllerFactory;
use Application\Controller\Plugin\Forward;
use Application\Controller\Plugin\ForwardFactory;
use Application\Controller\Plugin\Uploader\UploaderPluginFactory;
use Application\Entity\Db\Repository\DefaultEntityRepository;
use Application\Event\UserAuthenticatedEventListenerFactory;
use Application\Event\UserRoleSelectedEventListener;
use Application\Form\Factory\EcoleDoctoraleFormFactory;
use Application\Navigation\NavigationFactoryFactory;
use Application\Search\Filter\Provider\SearchFilterProviderService;
use Application\Search\Filter\Provider\SearchFilterProviderServiceFactory;
use Application\Service\AuthorizeServiceAwareInitializer;
use Application\Service\Role\RoleService;
use Application\Service\Role\RoleServiceFactory;
@@ -220,7 +220,6 @@ return array(
            'Sygal\Memcached'                => MemcachedFactory::class,
            'RoleService' => RoleServiceFactory::class,
            SourceCodeStringHelper::class => SourceCodeStringHelperFactory::class,
            SearchFilterProviderService::class => SearchFilterProviderServiceFactory::class,
        ),
        'abstract_factories' => [
            AssertionAbstractFactory::class,
@@ -253,10 +252,11 @@ return array(
        'invokables' => [
        ],
        'factories' => [
            'forward'  => 'Application\Controller\Plugin\ForwardFactory',
            Forward::class => ForwardFactory::class,
            'uploader' => UploaderPluginFactory::class,
        ],
        'aliases' => [
            'forward' => Forward::class,
            'Uploader' => 'uploader',
        ],
        'initializers' => [
Loading