diff --git a/CHANGELOG.md b/CHANGELOG.md index 257dd38323878fa7c3930adb221b50714df3cd6b..23d641a4f492e56b47a671338374ddf7317da672 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,24 +35,34 @@ Si vous êtes sur une version antérieurs à la 14, merci de migrer en V14.x **A * La base de données ayant été remaniée, il vous faudra adapter vos connecteurs RH. En particulier ceux visant les tables INTERVERNANT et STRUCTURE. Une nouvelle documentation sur les connecteurs est disponible ici : [Import de données via les connecteurs](doc/Connecteurs%20Import/Connecteurs%20IMPORT.md). +# OSE 14.10 +## Corrections de bugs + +* Lors de la modification du référentiel réalisé, l'horodatage (nom et date de modification) n'impacte plus le référentiel prévisionnel. # OSE 14.9 ## Nouveautés -* Intégration (en cours) de la formule de calcul de Poitiers. +* Intégration de la formule de calcul de Poitiers. * Stockage de la date d'envoi par e-mail du contrat * Nouvel indicateur 361 permettant de suivre les retours de contrats envoyés par email * Possibilité de tranférer une fiche de service vers la page de test des formules de calcul * Possibilité d'exporter et d'importer sous forme de fichier un test de formule de calcul -* Formule de calcul de l'Université de Poitiers * Piece justificative : forcer la durée de vie à 1 si la case "Uniquement en cas de changement de RIB" est cochée par l'utilisateur pour éviter les mauvais paramétrages des pièces jointes ## Corrections de bugs * Dans l'écran contrat du vacataire, l'action "envoyer par mail", n'envoyait pas le contrat par mail si l'intervenant n'avait pas d'email établissement. +## Notes de mise à jour + +* Lors de la mise à jour, vous rencontrerez deux erreurs : + * lors de la modification de l'indicateur 361 + * lors de l'ajout d'une contrainte sur la table NOEUD + +Il vous faudra éxécuter `./bin/ose update-bdd` juste après la MAJ pour corriger ces erreurs. # OSE 14.8 diff --git a/admin/actions/update-employeur.php b/admin/actions/update-employeur.php index e3c1047f332a83b81a305dab773f92228e730277..c8181817d7777b5ca72d52b724bbeab69ffd7b38 100644 --- a/admin/actions/update-employeur.php +++ b/admin/actions/update-employeur.php @@ -96,10 +96,14 @@ foreach ($listFiles as $file) { $data['NOM_COMMERCIAL'] = $nomCommercial; $data['SOURCE_ID'] = $oseSource; $data['IDENTIFIANT_ASSOCIATION'] = $identifiantAssociation; + $data['HISTO_DESTRUCTEUR_ID'] = null; + $data['HISTO_DESTRUCTION'] = null; + $data['IDENTIFIANT_ASSOCIATION'] = $identifiantAssociation; $data['CRITERE_RECHERCHE'] = reduce($raisonSociale . ' ' . $nomCommercial . ' ' . $siren); $datas[] = $data; $options['histo-user-id'] = $oseId; $options['where'] = 'SIREN LIKE \'' . $num . '%\''; + $options['soft-delete'] = true; } $i++; diff --git a/admin/src/BddAdmin/Table.php b/admin/src/BddAdmin/Table.php index 84de6cfa9ec9a434b75047f1ca499f0b3e7ab47d..aac7796ccc00b0f8c79f7595f4239a71f046fa83 100644 --- a/admin/src/BddAdmin/Table.php +++ b/admin/src/BddAdmin/Table.php @@ -377,13 +377,14 @@ class Table public function merge(array $data, $key, array $options = []): array { - $result = ['insert' => 0, 'update' => 0, 'delete' => 0]; + $result = ['insert' => 0, 'update' => 0, 'delete' => 0, 'soft-delete' => 0]; /* Initialisation */ $defaultOptions = [ 'where' => null, 'key' => $key, 'delete' => true, + 'soft-delete' => false, 'insert' => true, 'update' => true, 'update-cols' => [], @@ -437,7 +438,14 @@ class Table $this->insert($new, $traitementOptions); $result['insert']++; } - } elseif (empty($new)) { // DELETE + } elseif (empty($new) && $options['soft-delete'] && !empty($options['histo-user-id'])) { // SOFT DELETE + //On ne delete pas mais on historise + $new = $old; + $new['HISTO_DESTRUCTEUR_ID'] = $traitementOptions['histo-user-id']; + $new['HISTO_DESTRUCTION'] = new \DateTime(); + $this->update($new, $this->makeKeyArray($old, $key), $traitementOptions); + $result['soft-delete']++; + } elseif (empty($new) && !$options['soft-delete']) { // DELETE if ($options['delete']) { $this->delete($this->makeKeyArray($old, $key)); $result['delete']++; diff --git a/data/privileges.php b/data/privileges.php index d7f66287a344a3bdbec6e510e9efd62cd80e11bd..721e62daaf5f37d616e458b9aa9701cb6c3858c2 100644 --- a/data/privileges.php +++ b/data/privileges.php @@ -388,16 +388,19 @@ return [ ], ], - 'formule' => [ + 'formule' => [ 'libelle' => 'Formule de calcul', 'privileges' => [ 'tests' => 'Tests', ], ], - 'employeur' => [ - 'libelle' => 'Employeurs', + 'referentiel-commun' => [ + 'libelle' => 'Référentiels communs', 'privileges' => [ - 'gestion' => 'Gestion des employeurs', + 'voirie-visualisation' => 'Visualisation voiries', + 'voirie-edition' => 'Édition voiries', + 'employeur-visualisation' => 'Visualisation employeurs', + 'employeur-edition' => 'Édition employeurs', ], ], diff --git a/module/Application/config/administration.config.php b/module/Application/config/administration.config.php index a4e1a56c8b186b5de6c1d47b7826f7070285fc6f..4594f0924043dea9c0dacd78c23c7c431d1f6922 100755 --- a/module/Application/config/administration.config.php +++ b/module/Application/config/administration.config.php @@ -8,7 +8,7 @@ use UnicaenAuth\Guard\PrivilegeController; return [ 'router' => [ 'routes' => [ - 'administration' => [ + 'administration' => [ 'type' => 'Literal', 'options' => [ 'route' => '/administration', @@ -19,7 +19,7 @@ return [ ], 'may_terminate' => true, ], - 'administration-type' => [ + 'administration-type' => [ 'type' => 'Literal', 'options' => [ 'route' => '/administration-type', @@ -30,7 +30,18 @@ return [ ], 'may_terminate' => true, ], - 'administration-financiere' => [ + 'administration-referentiel-commun' => [ + 'type' => 'Literal', + 'options' => [ + 'route' => '/administration-referentiel-commun', + 'defaults' => [ + 'controller' => 'Application\Controller\Administration', + 'action' => 'administration-referentiel-commun', + ], + ], + 'may_terminate' => true, + ], + 'administration-financiere' => [ 'type' => 'Literal', 'options' => [ 'route' => '/administration-financiere', @@ -41,7 +52,7 @@ return [ ], 'may_terminate' => true, ], - 'administration-intervenant' => [ + 'administration-intervenant' => [ 'type' => 'Literal', 'options' => [ 'route' => '/administration-intervenant', @@ -55,7 +66,7 @@ return [ ], ], - 'navigation' => [ + 'navigation' => [ 'default' => [ 'home' => [ 'pages' => [ @@ -65,7 +76,34 @@ return [ 'resource' => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'), 'order' => 7, 'pages' => [ - 'gestion-intervenant' => [ + 'gestion-referentiel-commun' => [ + 'label' => 'Gestion référentiels communs', + 'icon' => 'glyphicon glyphicon - list-alt', + 'route' => 'administration-referentiel-commun', + 'resource' => PrivilegeController::getResourceId('Application\Controller\Administration', 'administration-referentiel-commun'), + 'order' => 80, + 'border - color' => '#111', + 'pages' => [ + 'voirie' => [ + 'label' => 'Gestion des voiries', + 'icon' => 'fa fa-graduation-cap', + 'route' => 'voirie', + 'resource' => PrivilegeController::getResourceId('Application\Controller\Voirie', 'index'), + 'order' => 800, + 'border-color' => '#BBCF55', + ], + 'Employeurs' => [ + 'border-color' => '#9F491F', + 'icon' => 'glyphicon glyphicon-list-alt', + 'label' => "Gestion des employeurs", + 'title' => "Gestion des employeurs", + 'route' => 'employeur', + 'resource' => PrivilegeController::getResourceId('Application\Controller\Employeur', 'index'), + 'order' => 70, + ], + ], + ], + 'gestion-intervenant' => [ 'label' => 'Gestion intervenants (Statuts, PJ, etc...)', 'icon' => 'glyphicon glyphicon - list-alt', 'route' => 'administration-intervenant', @@ -104,7 +142,7 @@ return [ ], ], ], - 'administration-financiere' => [ + 'administration-financiere' => [ 'label' => 'Données financières', 'icon' => 'glyphicon glyphicon - list-alt', 'route' => 'administration-financiere', @@ -137,12 +175,13 @@ return [ ], ], ], + 'bjyauthorize' => [ 'guards' => [ PrivilegeController::class => [ [ 'controller' => 'Application\Controller\Administration', - 'action' => ['index', 'administration-types', 'administration-financiere', 'administration-intervenant'], + 'action' => ['index', 'administration-types', 'administration-financiere', 'administration-intervenant', 'administration-referentiel-commun'], 'privileges' => [ Privileges::IMPORT_ECARTS, Privileges::IMPORT_MAJ, @@ -157,6 +196,8 @@ return [ Privileges::DROIT_AFFECTATION_VISUALISATION, Privileges::PARAMETRES_GENERAL_VISUALISATION, Privileges::REFERENTIEL_ADMIN_VISUALISATION, + Privileges::REFERENTIEL_COMMUN_VOIRIE_VISUALISATION, + Privileges::REFERENTIEL_COMMUN_EMPLOYEUR_VISUALISATION, Privileges::TYPE_INTERVENTION_VISUALISATION, Privileges::TYPE_RESSOURCE_VISUALISATION, Privileges::PIECE_JUSTIFICATIVE_GESTION_VISUALISATION, diff --git a/module/Application/config/employeur.config.php b/module/Application/config/employeur.config.php index 8cf3bd510300a48b2385ea43e606108c80b68868..06c32be62624624d288573250e757e802301bfdd 100644 --- a/module/Application/config/employeur.config.php +++ b/module/Application/config/employeur.config.php @@ -46,27 +46,7 @@ return [ ], ], - 'navigation' => [ - 'default' => [ - 'home' => [ - 'pages' => [ - 'administration' => [ - 'pages' => [ - 'Employeurs' => [ - 'border-color' => '#9F491F', - 'icon' => 'glyphicon glyphicon-list-alt', - 'label' => "Employeurs", - 'title' => "Gestion des employeurs", - 'route' => 'employeur', - 'resource' => PrivilegeController::getResourceId('Application\Controller\Discipline', 'index'),//creer un priviege employeur - 'order' => 70, - ], - ], - ], - ], - ], - ], - ], + 'console' => [ 'router' => [ @@ -99,7 +79,7 @@ return [ [ 'controller' => 'Application\Controller\Employeur', 'action' => ['index', 'recherche-json'], - 'privileges' => Privileges::EMPLOYEUR_GESTION, + 'privileges' => Privileges::REFERENTIEL_COMMUN_EMPLOYEUR_VISUALISATION, ], ], 'BjyAuthorize\Guard\Controller' => [ @@ -118,7 +98,7 @@ return [ 'allow' => [ [ 'privileges' => [ - Privileges::EMPLOYEUR_GESTION, + Privileges::REFERENTIEL_COMMUN_EMPLOYEUR_VISUALISATION, ], 'resources' => 'Contrat', ], diff --git a/module/Application/config/voirie.config.php b/module/Application/config/voirie.config.php new file mode 100755 index 0000000000000000000000000000000000000000..f40be28da356d966ca81e06ac807b3f2f617e06a --- /dev/null +++ b/module/Application/config/voirie.config.php @@ -0,0 +1,82 @@ +<?php + +namespace Application; + + +use Application\Provider\Privilege\Privileges; +use UnicaenAuth\Guard\PrivilegeController; + +return [ + 'router' => [ + 'routes' => [ + 'voirie' => [ + 'type' => 'Literal', + 'options' => [ + 'route' => '/voirie', + 'defaults' => [ + 'controller' => 'Application\Controller\Voirie', + 'action' => 'index', + ], + ], + 'may_terminate' => true, + 'child_routes' => [ + 'saisie' => [ + 'type' => 'Segment', + 'options' => [ + 'route' => '/saisie[/:voirie]', + 'constraints' => [ + 'voirie' => '[0-9]*', + ], + 'defaults' => [ + 'action' => 'saisie', + ], + ], + 'may_terminate' => true, + ], + 'delete' => [ + 'type' => 'Segment', + 'options' => [ + 'route' => '/delete/:voirie', + 'constraints' => [ + 'voirie' => '[0-9]*', + ], + 'defaults' => [ + 'action' => 'delete', + ], + ], + 'may_terminate' => true, + ], + ], + ], + ], + ], + + 'bjyauthorize' => [ + 'guards' => [ + PrivilegeController::class => [ + [ + 'controller' => 'Application\Controller\Voirie', + 'action' => ['index'], + 'privileges' => [Privileges::REFERENTIEL_COMMUN_VOIRIE_VISUALISATION], + ], + [ + 'controller' => 'Application\Controller\Voirie', + 'action' => ['saisie', 'delete'], + 'privileges' => [Privileges::REFERENTIEL_COMMUN_VOIRIE_EDITION], + ], + + + ], + ], + ], + 'controllers' => [ + 'invokables' => [ + 'Application\Controller\Voirie' => Controller\VoirieController::class, + ], + ], + 'form_elements' => [ + 'invokables' => [ + Form\Voirie\VoirieSaisieForm::class => Form\Voirie\VoirieSaisieForm::class, + ], + ], +]; diff --git a/module/Application/src/Application/Controller/AdministrationController.php b/module/Application/src/Application/Controller/AdministrationController.php index 9f04d00bcba587c8ab02a0d38995b5e52bdf6074..1e188714ec5360142d0d3310ebd502f9b2ed4ebe 100755 --- a/module/Application/src/Application/Controller/AdministrationController.php +++ b/module/Application/src/Application/Controller/AdministrationController.php @@ -38,4 +38,11 @@ class AdministrationController extends AbstractController return []; } + + + public function administrationReferentielCommunAction() + { + return []; + } + } \ No newline at end of file diff --git a/module/Application/src/Application/Controller/VoirieController.php b/module/Application/src/Application/Controller/VoirieController.php new file mode 100644 index 0000000000000000000000000000000000000000..ec74ca674a4c953afed04f5092419339e9931f26 --- /dev/null +++ b/module/Application/src/Application/Controller/VoirieController.php @@ -0,0 +1,68 @@ +<?php + +namespace Application\Controller; + +use Application\Entity\Db\Voirie; +use Application\Form\Voirie\Traits\VoirieSaisieFormAwareTrait; +use Application\Service\Traits\VoirieServiceAwareTrait; +use UnicaenApp\View\Model\MessengerViewModel; + +class VoirieController extends AbstractController +{ + + use VoirieServiceAwareTrait; + use VoirieSaisieFormAwareTrait; + + public function indexAction() + { + $this->em()->getFilters()->enable('historique')->init([ + Voirie::class, + ]); + + $voiries = $this->getServiceVoirie()->getList(); + + return compact('voiries'); + } + + + + public function saisieAction() + { + $voirie = $this->getEvent()->getParam('voirie'); + + $form = $this->getFormVoirieSaisie(); + + if (empty($voirie)) { + $title = "Création d'une nouvelle voirie"; + $voirie = $this->getServiceVoirie()->newEntity(); + } else { + $title = "Edition d'une voirie"; + } + + $form->bindRequestSave($voirie, $this->getRequest(), function (Voirie $v) { + try { + $this->getServiceVoirie()->save($v); + $this->flashMessenger()->addSuccessMessage('Enregistrement effectué'); + } catch (Exception $e) { + $this->flashMessenger()->addErrorMessage($this->translate($e)); + } + }); + + return compact('form', 'title'); + } + + + + public function deleteAction() + { + $voirie = $this->getEvent()->getParam('voirie'); + try { + $this->getServiceVoirie()->delete($voirie); + $this->flashMessenger()->addSuccessMessage("Voirie supprimée avec succés"); + } catch (\Exception $e) { + $this->flasheMessenger()->addErrorMessage($this->translate($e)); + } + + return new MessengerViewModel(compact('voirie')); + } +} \ No newline at end of file diff --git a/module/Application/src/Application/Form/Voirie/Traits/VoirieSaisieFormAwareTrait.php b/module/Application/src/Application/Form/Voirie/Traits/VoirieSaisieFormAwareTrait.php new file mode 100755 index 0000000000000000000000000000000000000000..3094351efa695527b36e173d12d636d0b6e44f10 --- /dev/null +++ b/module/Application/src/Application/Form/Voirie/Traits/VoirieSaisieFormAwareTrait.php @@ -0,0 +1,43 @@ +<?php + +namespace Application\Form\Voirie\Traits; + + +use Application\Form\Voirie\VoirieSaisieForm; + +/** + * Description of VoirieSaisieFormAwareTrait + */ +trait VoirieSaisieFormAwareTrait +{ + /** + * @var VoirieSaisieForm + */ + private $formVoirieSaisie; + + + + /** + * @param VoirieSaisieForm $formVoirieSaisie + * + * @return self + */ + public function setFormVoirieSaisie(VoirieSaisieForm $formVoirieSaisie) + { + $this->formVoirieSaisie = $formVoirieSaisie; + + return $this; + } + + + + public function getFormVoirieSaisie() + { + if (!empty($this->formVoirieSaisie)) { + return $this->formVoirieSaisie; + } + + return \Application::$container->get('FormElementManager')->get(VoirieSaisieForm::class); + } +} + diff --git a/module/Application/src/Application/Form/Voirie/VoirieSaisieForm.php b/module/Application/src/Application/Form/Voirie/VoirieSaisieForm.php new file mode 100755 index 0000000000000000000000000000000000000000..5d82d767c1fd42fe3063ee72d3a0a25571b266c5 --- /dev/null +++ b/module/Application/src/Application/Form/Voirie/VoirieSaisieForm.php @@ -0,0 +1,120 @@ +<?php + +namespace Application\Form\Voirie; + + +use Application\Form\AbstractForm; +use Application\Hydrator\GenericHydrator; +use Application\Service\Traits\SourceServiceAwareTrait; +use UnicaenApp\Util; +use UnicaenImport\Entity\Db\Source; +use Zend\Form\Element\Csrf; + +/** + * Description of VoirieForm + */ +class VoirieSaisieForm extends AbstractForm +{ + use SourceServiceAwareTrait; + + + protected $hydratorElements = [ + 'id' => ['type' => 'int'], + 'libelle' => ['type' => 'string'], + 'code' => ['type' => 'string'], + 'source' => ['type' => Source::class], + 'sourceCode' => ['type' => 'string'], + ]; + + + + public function init() + { + $hydrator = new GenericHydrator($this->getServiceSource()->getEntityManager(), $this->hydratorElements); + $this->setHydrator($hydrator); + + $this->setAttribute('action', $this->getCurrentUrl()); + + $this->add([ + 'name' => 'libelle', + 'options' => [ + 'label' => 'Libellé', + ], + 'attributes' => [ + + ], + 'type' => 'Text', + ]); + + $this->add([ + 'name' => 'code', + 'options' => [ + 'label' => "Code", + ], + 'attributes' => [ + 'id' => uniqid('code'), + ], + 'type' => 'Text', + ]); + + $this->add([ + 'name' => 'source', + 'type' => 'Select', + 'options' => [ + 'label' => 'Source des données', + 'value_options' => Util::collectionAsOptions($this->getServiceSource()->getList()), + ], + ]); + + $this->add([ + 'name' => 'sourceCode', + 'type' => 'Text', + 'options' => [ + 'label' => 'Code source', + ], + ]); + + + $this->add(new Csrf('security')); + $this->add([ + 'name' => 'submit', + 'type' => 'Submit', + 'attributes' => [ + 'value' => "Enregistrer", + 'class' => 'btn btn-primary', + ], + ]); + + $this->add([ + 'name' => 'id', + 'type' => 'Hidden', + ]); + + + return $this; + } + + + + /** + * Should return an array specification compatible with + * {@link Zend\InputFilter\Factory::createInputFilter()}. + * + * @return array + */ + public function getInputFilterSpecification() + { + return [ + 'libelle' => [ + 'required' => false, + ], + 'code' => [ + 'required' => false, + ], + ]; + } + +} + + + diff --git a/module/Application/src/Application/Provider/Privilege/Privileges.php b/module/Application/src/Application/Provider/Privilege/Privileges.php index 8cdf53cbe2255752aa0b9ac3c3f398c6f116ab30..d529aaced027baef3243768efd5f3b1529a23c21 100755 --- a/module/Application/src/Application/Provider/Privilege/Privileges.php +++ b/module/Application/src/Application/Provider/Privilege/Privileges.php @@ -196,6 +196,10 @@ class Privileges extends \UnicaenAuth\Provider\Privilege\Privileges const PLAFONDS_GESTION_VISUALISATION = 'plafonds-gestion-visualisation'; const REFERENTIEL_ADMIN_EDITION = 'referentiel-admin-edition'; const REFERENTIEL_ADMIN_VISUALISATION = 'referentiel-admin-visualisation'; + const REFERENTIEL_COMMUN_VOIRIE_EDITION = 'referentiel-commun-voirie-edition'; + const REFERENTIEL_COMMUN_VOIRIE_VISUALISATION = 'referentiel-commun-voirie-visualisation'; + const REFERENTIEL_COMMUN_EMPLOYEUR_EDITION = 'referentiel-commun-employeur-edition'; + const REFERENTIEL_COMMUN_EMPLOYEUR_VISUALISATION = 'referentiel-commun-employeur-visualisation'; const REFERENTIEL_DEVALIDATION = 'referentiel-devalidation'; const REFERENTIEL_EDITION = 'referentiel-edition'; const REFERENTIEL_VALIDATION = 'referentiel-validation'; diff --git a/module/Application/src/Application/Service/EmployeurService.php b/module/Application/src/Application/Service/EmployeurService.php index 5eeef1c1deeafa3b6a4c00ec15b90adcccc66115..50e35ee5d025eaa73e8d11a36dadeaf6ec20011c 100644 --- a/module/Application/src/Application/Service/EmployeurService.php +++ b/module/Application/src/Application/Service/EmployeurService.php @@ -74,6 +74,7 @@ class EmployeurService extends AbstractEntityService FROM EMPLOYEUR e WHERE rownum <= $limit + AND HISTO_DESTRUCTION IS NULL "; if (!empty($criteria)) { diff --git a/module/Application/view/application/voirie/index.phtml b/module/Application/view/application/voirie/index.phtml new file mode 100755 index 0000000000000000000000000000000000000000..84c142aa9ef3c932c72c85769d1f8828fa119c7f --- /dev/null +++ b/module/Application/view/application/voirie/index.phtml @@ -0,0 +1,78 @@ +<?php +/** + * @var $this \Application\View\Renderer\PhpRenderer + */ + +use Application\Provider\Privilege\Privileges; + +$this->headTitle()->append("Gestion des voiries"); + +$canEdit = $this->isAllowed(Privileges::getResourceId(Privileges::REFERENTIEL_COMMUN_VOIRIE_EDITION)); + +?> +<h1 class="page-header">Gestion des voiries</h1> + +<table class="table table-bordered table-sort"> + <thead> + <th>Code</th> + <th>Libelle</th> + <th>Source</th> + <?php if ($canEdit) echo '<th>Actions</th>' ?> + </thead> + <tbody> + <?php + /** + * @var \Application\Entity\Db\Voirie $voirie + */ + ?> + <?php foreach ($voiries as $voirie): ?> + <tr> + <td><?= $voirie->getCode() ?></td> + <td data-order="<?= $voirie->getLibelle() ?>"> + <?= $voirie->getLibelle() ?> + </td> + <td><?= $voirie->getSource()->getLibelle() ?></td> + + <?php if ($canEdit): ?> + <td style="text-align:center;width:1px;white-space: nowrap"> + <?php if (!$voirie->getSource()->getImportable()): ?> + <a class="disabled ajax-modal" data-event="voirie-saisie" + href="<?= $this->url('voirie/saisie', ['voirie' => $voirie->getId()]) ?>" + title="Modifier la voirie"> + <span class="glyphicon glyphicon-edit"></span></a> + <a class="pop-ajax" + href="<?= $this->url('voirie/delete', ['voirie' => $voirie->getId()]) ?>" + title="Supprimer la voirie" + data-content="<p class='lead text-danger'><strong>Attention!</strong> Confirmez-vous cette suppression ?</p>" + data-confirm="true" + data-confirm-button="Oui" + data-cancel-button="Non" + data-submit-reload="true" + > + <span class="glyphicon glyphicon-remove"></span> + </a> + <?php else: ?> + Non modifiable + <?php endif; ?> + </td> + <?php endif; ?> + </tr> + <?php endforeach; ?> + </tbody> +</table> +<?php if ($canEdit): ?> + <a class="btn btn-primary ajax-modal" data-event="voirie-saisie" + href="<?= $this->url('voirie/saisie') ?>" + title="Ajouter une voirie"> + <span class="glyphicon glyphicon-edit"></span> + Ajouter une voirie</a> + + <script type="text/javascript"> + $(function () { + $("body").on("voirie-saisie", function (event, data) { + window.location.reload(); + }); + }); + </script> +<?php endif ?> + diff --git a/module/Application/view/application/voirie/saisie.phtml b/module/Application/view/application/voirie/saisie.phtml new file mode 100755 index 0000000000000000000000000000000000000000..ac28762d2c392f055cf83ceaa86f7de06e74155e --- /dev/null +++ b/module/Application/view/application/voirie/saisie.phtml @@ -0,0 +1,7 @@ +<?php +/** + * @var $this \Application\View\Renderer\PhpRenderer + */ + +echo $this->messenger()->addCurrentMessagesFromFlashMessenger(); +echo $this->form($form);