Commit 1df330e4 authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

Merge branches 'alc-agrement-duree-vie' and 'master' of...

Merge branches 'alc-agrement-duree-vie' and 'master' of https://git.unicaen.fr/open-source/OSE into alc-agrement-duree-vie

 Conflicts:
	data/ddl.php
parents 9dca55ae 472adc2b
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
# OSE 14 (Alpha)

## Nouveautés

* Améliorations portées au système de gestion des contrats.
  * Le corps de message de l'envoi du ontrat par mail peut maintenant être personnalisé (cf. Paramètres globaux dans le menu Administration).
  * L'indicateur 360 resence maintenant les contrats validés qui n'ont aucun fichier téléversé.
  * Un nouvel indicateur 370 liste les contrats validés qui ont des fichiers téléversés, mais sans date de retour.
  * Les fichiers téléversés ne peuvent plus être modifiés si une date de retour a été saisie. Pour pouvoir modifier à nouveau, il faut d'abord enlever la date de retour.
  * La règle de franchissement de l'étape contrat peut maintenant être personnalisés : soit l'étape est franchie si le projet de contrat est validé, soit il faut en plus qu'une date de retour ait été saisie. 

* Personnalisation
  * Le message de bienvenue et la page "Contact", auparavant configurables dans le fichier config.local.php, dont maintenant modifiables dans la page Administration / Paramètres généraux.

## Notes de mise à jour

* Dans le fichier config.local.php, supprimer les items suivants de la rubrique etablissement :
  * messageBienvenue 
  * contact
  
* N'oubliez pas de configurer les nouveaux paramètres généraux de OSE!

# OSE 13.1

## Correction de bugs
+13 −17
Original line number Diff line number Diff line
<?php

if (!$oa->bddIsOk($msg)) {
    $c->printDie("Impossible d'accéder à la base de données : $msg!"
        . "\nVeuillez contrôler vos paramètres de configuration s'il vous plaît, avant de refaire une tentative de MAJ de la base de données (./bin/ose update-bdd).");
}

$bdd = $oa->getBdd();
$schema = new \BddAdmin\Schema($bdd);
$bdd->setLogger($c);

$fichier = $oa->getOseDir() . 'cache/bdd-update-diff.sql';

$c->println("\nConstruction d'un script de mise à jour de la base de données ...", $c::COLOR_LIGHT_CYAN);
$c->println("Attention : par rapport à update-bdd, seules les définitions des objets sont concernées. Les requêtes de mise à jour des données ne sont pas générées.");
$c->begin("Construction d'un script de mise à jour de la base de données");
$c->msg("Attention : par rapport à update-bdd, seules les définitions des objets sont concernées. Les requêtes de mise à jour des données ne sont pas générées.");

/* Récupération du schéma de référence */
$ref = $schema->loadFromFile($oa->getOseDir() . 'data/ddl.php');
$ref = new BddAdmin\Ddl\Ddl;
$ref->loadFromDir($oa->getOseDir() . 'data/ddl');


/* Construction de la config de DDL pour filtrer */
$ddlConfig = require $oa->getOseDir() . 'data/ddl_config.php';
$filters = require $oa->getOseDir() . 'data/ddl_config.php';
foreach ($ref as $ddlClass => $objects) {
    foreach ($objects as $object => $objectDdl) {
        $ddlConfig[$ddlClass]['includes'][] = $object;
        $filters[$ddlClass]['includes'][] = $object;
    }
}

/* Mise à jour de la BDD */
$queries = $schema->diff($ref, false, $ddlConfig);
$sqlDdl = $schema->queriesToSql($queries);
file_put_contents($fichier, $sqlDdl);
$diff = $bdd->diff($ref, $filters);
$sql  = $diff->toScript();
file_put_contents($fichier, $sql);

$c->println("Script différentiel créé et enregistré dans le fichier $fichier");
 No newline at end of file
$c->end("Script différentiel créé et enregistré dans le fichier $fichier");
 No newline at end of file
+2 −2
Original line number Diff line number Diff line
@@ -23,11 +23,11 @@ if ($params['params']['creer-intervenant']) {

    $bdd = $oa->getBdd();

    $annee                     = $bdd->select("SELECT libelle FROM annee WHERE id = (SELECT valeur FROM parametre WHERE nom = 'annee')", [], $bdd::FETCH_ONE)['LIBELLE'];
    $annee                     = $bdd->select("SELECT LIBELLE FROM ANNEE WHERE ID = (SELECT VALEUR FROM PARAMETRE WHERE NOM = 'annee')", [], ['fetch' => $bdd::FETCH_ONE])['LIBELLE'];
    $params['params']['annee'] = $c->getInput('annee', 'Année universitaire (' . $annee . ' par défaut, sinon entrez 2020 pour 2020/2021, etc.)');

    if (!$c->hasOption('statut')) {
        $statuts = $bdd->select("SELECT source_code CODE, libelle FROM statut_intervenant WHERE histo_destruction IS NULL AND source_code <> 'AUTRES' ORDER BY ordre");
        $statuts = $bdd->select("SELECT CODE CODE, LIBELLE FROM STATUT_INTERVENANT WHERE HISTO_DESTRUCTION IS NULL AND CODE <> 'AUTRES' ORDER BY ORDRE");
        $c->println('Statut de \'intervenant ("AUTRES" par défaut, sinon entrez le code parmi les propositions suivantes) :');
        $maxCodeLength = 0;
        foreach ($statuts as $statut) {
+6 −23
Original line number Diff line number Diff line
<?php

/* Initialisation */
$c->println("\nInstallation de la base de données", $c::COLOR_LIGHT_CYAN);
if (!$oa->bddIsOk($msg)) {
    $c->printDie("Impossible d'accéder à la base de données : $msg!"
        . "\nVeuillez contrôler les paramètres de configurations entrés dans le fichier confg.local.php s'il vous plaît, avant de refaire une tentative d'installation de la base de données.");
}

$bdd = $oa->getBdd();
$schema = new \BddAdmin\Schema($bdd);

$bdd->setLogger($c);

/* Mise en place du schéma de la BDD */
$c->println("\n" . 'Création des définitions de la base de données', $c::COLOR_LIGHT_PURPLE);

$ref = $schema->loadFromFile($oa->getOseDir() . 'data/ddl.php');

$scl          = new \BddAdmin\SchemaConsoleLogger();
$scl->console = $c;
$schema->setLogger($scl);
$schema->create($ref, true);

$ref = new BddAdmin\Ddl\Ddl();
$ref->loadFromDir($oa->getOseDir() . 'data/ddl');
$bdd->create($ref);

/* Insertion des données */
$c->println("\n" . 'Insertion des données', $c::COLOR_LIGHT_PURPLE);
$dataGen = new DataGen($oa);
$dataGen->install();

$c->println("\n" . 'Mise à jour du point d\'indice pour les HETD', $c::COLOR_LIGHT_PURPLE);
$bdd->exec('BEGIN OSE_FORMULE.UPDATE_ANNEE_TAUX_HETD; END;');


/* Définition d'un mdp pour oseappli */
if ($c->hasOption('oseappli-pwd')) {
@@ -47,7 +30,7 @@ if ($c->hasOption('oseappli-pwd')) {
    }
}

$c->println('Application du de mot de pase de oseappli...');
$c->println('Application du de mot de passe de oseappli...');
$oa->exec("changement-mot-de-passe --utilisateur=oseappli --mot-de-passe=$pwd1");

$c->println('Mot de passe changé', $c::COLOR_LIGHT_GREEN);
+1 −1
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ if ($composerExists) {
}

// Mise à jour des liens vers les répertoires publics des dépendances
$oa->run('maj-public-links', false);
$oa->run('maj-public-links');

if (!file_exists($osedir . 'config.local.php')) {
    $c->exec([
Loading