diff --git a/composer.json b/composer.json index cb47101d2c74e0cc2efa6493a5fb0b72d066b10b..e85dc0d81d79245e291ea03d07e58b542643265b 100755 --- a/composer.json +++ b/composer.json @@ -11,6 +11,7 @@ "unicaen/unicaen-app": "dev-trunk", "unicaen/unicaen-auth": "dev-trunk", "unicaen/unicaen-ldap": "dev-trunk", + "unicaen/unicaen-upload": "dev-trunk", "zendframework/zend-code": ">=2.3", "zf-commons/zfc-user": "0.1.3", "mpdf/mpdf": "v5.7.2" diff --git a/composer.lock b/composer.lock index 7f4f4730d500105866f5215daccfa9b12c8670da..bf6a0da3d9eec3c06fdc323675c38c5f6a8892bc 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "3a4abe9eb3a2f23392513e99e429a1ef", + "hash": "b691393f43738916dc3251302722f7f5", "packages": [ { "name": "bjyoungblood/bjy-authorize", @@ -706,7 +706,7 @@ { "name": "Johannes Schmitt", "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh", + "homepage": "http://jmsyst.com", "role": "Developer of wrapped JMSSerializerBundle" } ], @@ -1012,17 +1012,17 @@ }, { "name": "symfony/console", - "version": "v2.5.3", + "version": "v2.5.4", "target-dir": "Symfony/Component/Console", "source": { "type": "git", "url": "https://github.com/symfony/Console.git", - "reference": "cd2d1e4bac2206b337326b0140ff475fe9ad5f63" + "reference": "748beed2a1e73179c3f5154d33fe6ae100c1aeb1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/cd2d1e4bac2206b337326b0140ff475fe9ad5f63", - "reference": "cd2d1e4bac2206b337326b0140ff475fe9ad5f63", + "url": "https://api.github.com/repos/symfony/Console/zipball/748beed2a1e73179c3f5154d33fe6ae100c1aeb1", + "reference": "748beed2a1e73179c3f5154d33fe6ae100c1aeb1", "shasum": "" }, "require": { @@ -1063,21 +1063,21 @@ ], "description": "Symfony Console Component", "homepage": "http://symfony.com", - "time": "2014-08-05 09:00:40" + "time": "2014-08-14 16:10:54" }, { "name": "symfony/process", - "version": "v2.5.3", + "version": "v2.5.4", "target-dir": "Symfony/Component/Process", "source": { "type": "git", "url": "https://github.com/symfony/Process.git", - "reference": "e0997d2a9a1a763484b34b989900b61322a9b056" + "reference": "136cf0bdaacea81f779583376d47dd8aef4fc6ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/e0997d2a9a1a763484b34b989900b61322a9b056", - "reference": "e0997d2a9a1a763484b34b989900b61322a9b056", + "url": "https://api.github.com/repos/symfony/Process/zipball/136cf0bdaacea81f779583376d47dd8aef4fc6ba", + "reference": "136cf0bdaacea81f779583376d47dd8aef4fc6ba", "shasum": "" }, "require": { @@ -1110,7 +1110,7 @@ ], "description": "Symfony Process Component", "homepage": "http://symfony.com", - "time": "2014-08-05 09:00:40" + "time": "2014-08-31 03:22:04" }, { "name": "unicaen/unicaen-app", @@ -1214,6 +1214,38 @@ }, "description": "Module Ldap de l'UCBN" }, + { + "name": "unicaen/unicaen-upload", + "version": "dev-trunk", + "source": { + "type": "svn", + "url": "https://svn.unicaen.fr/svn/UnicaenUpload", + "reference": "/trunk/@10" + }, + "require": { + "php": ">=5.3.3", + "rwoverdijk/assetmanager": ">=1.3", + "zendframework/zend-i18n": ">=2.2", + "zendframework/zend-mvc": ">=2.2", + "zendframework/zend-navigation": ">=2.2", + "zendframework/zend-servicemanager": ">=2.2", + "zendframework/zend-version": ">=2.2", + "zendframework/zend-view": ">=2.2" + }, + "require-dev": { + "phpunit/phpunit": ">=3.7" + }, + "type": "library", + "autoload": { + "psr-0": { + "UnicaenUpload\\": "src/" + }, + "classmap": [ + "./Module.php" + ] + }, + "description": "Module ZF2 facilitant l'upload de fichiers" + }, { "name": "zendframework/zend-authentication", "version": "2.3.1", @@ -3177,23 +3209,23 @@ "packages-dev": [ { "name": "phpunit/php-code-coverage", - "version": "1.2.17", + "version": "1.2.18", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "6ef2bf3a1c47eca07ea95f0d8a902a6340390b34" + "reference": "fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6ef2bf3a1c47eca07ea95f0d8a902a6340390b34", - "reference": "6ef2bf3a1c47eca07ea95f0d8a902a6340390b34", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b", + "reference": "fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b", "shasum": "" }, "require": { "php": ">=5.3.3", "phpunit/php-file-iterator": ">=1.3.0@stable", "phpunit/php-text-template": ">=1.2.0@stable", - "phpunit/php-token-stream": ">=1.1.3@stable" + "phpunit/php-token-stream": ">=1.1.3,<1.3.0" }, "require-dev": { "phpunit/phpunit": "3.7.*@dev" @@ -3234,7 +3266,7 @@ "testing", "xunit" ], - "time": "2014-03-28 10:53:45" + "time": "2014-09-02 10:13:14" }, { "name": "phpunit/php-file-iterator", @@ -3543,17 +3575,17 @@ }, { "name": "symfony/yaml", - "version": "v2.5.3", + "version": "v2.5.4", "target-dir": "Symfony/Component/Yaml", "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "5a75366ae9ca8b4792cd0083e4ca4dff9fe96f1f" + "reference": "01a7695bcfb013d0a15c6757e15aae120342986f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/5a75366ae9ca8b4792cd0083e4ca4dff9fe96f1f", - "reference": "5a75366ae9ca8b4792cd0083e4ca4dff9fe96f1f", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/01a7695bcfb013d0a15c6757e15aae120342986f", + "reference": "01a7695bcfb013d0a15c6757e15aae120342986f", "shasum": "" }, "require": { @@ -3586,7 +3618,7 @@ ], "description": "Symfony Yaml Component", "homepage": "http://symfony.com", - "time": "2014-08-05 09:00:40" + "time": "2014-08-31 03:22:04" }, { "name": "zendframework/zend-dom", @@ -3693,7 +3725,8 @@ "stability-flags": { "unicaen/unicaen-app": 20, "unicaen/unicaen-auth": 20, - "unicaen/unicaen-ldap": 20 + "unicaen/unicaen-ldap": 20, + "unicaen/unicaen-upload": 20 }, "prefer-stable": false, "platform": [ diff --git a/config/application.config.php b/config/application.config.php index 525d568e9f4aa11f54839825e407def03620ac68..f8a7d556aed95dbcd0026c33de087ad5d70ed50d 100755 --- a/config/application.config.php +++ b/config/application.config.php @@ -7,6 +7,7 @@ $modules = array( 'UnicaenApp', //'AssetManager', 'UnicaenAuth', 'UnicaenLdap', + 'UnicaenUpload', 'Common', 'Import', 'Application' diff --git a/module/Application/config/intervenant.config.php b/module/Application/config/intervenant.config.php index e5ce064d8f4f90dd24bde36c2e0bb71e1cc8c6dd..62fc17de86bb2c67b93911010a0360ae042e28e8 100644 --- a/module/Application/config/intervenant.config.php +++ b/module/Application/config/intervenant.config.php @@ -137,6 +137,19 @@ return array( ), ), ), + 'joindre' => array( + 'type' => 'Segment', + 'options' => array( + 'route' => '/:intervenant/joindre[/:action]', + 'constraints' => array( + 'intervenant' => '[0-9]*', + ), + 'defaults' => array( + 'controller' => 'Dossier', + 'action' => 'joindre', + ), + ), + ), 'validation-dossier' => array( 'type' => 'Segment', 'options' => array( @@ -351,7 +364,7 @@ return array( ), array( 'controller' => 'Application\Controller\Dossier', - 'action' => array('voir', 'modifier', 'pieces-jointes'), + 'action' => array('voir', 'modifier', 'pieces-jointes', 'joindre', 'upload', 'download'), 'roles' => array(IntervenantExterieurRole::ROLE_ID, ComposanteRole::ROLE_ID,'Administrateur'), ), array( diff --git a/module/Application/src/Application/Controller/AgrementController.php b/module/Application/src/Application/Controller/AgrementController.php index 80297ede2905e5f9121bc60aff5854d44d110fae..20d7b9b2f0c80d4490491c217501be76b383cea8 100644 --- a/module/Application/src/Application/Controller/AgrementController.php +++ b/module/Application/src/Application/Controller/AgrementController.php @@ -415,6 +415,7 @@ implements ContextProviderAwareInterface, $this->view = new ViewModel(array( 'intervenants' => $intervenants, + 'typeAgrement' => $this->typeAgrement, 'title' => $this->title, 'form' => $this->formSaisie, 'role' => $this->role, diff --git a/module/Application/src/Application/Controller/DossierController.php b/module/Application/src/Application/Controller/DossierController.php index 4a9d0082df13ccd9655862b54a424c6a34d7a057..15ed5a5dbe26fb4e561f20d2d4a05dda833c96ab 100644 --- a/module/Application/src/Application/Controller/DossierController.php +++ b/module/Application/src/Application/Controller/DossierController.php @@ -280,6 +280,92 @@ class DossierController extends AbstractActionController implements ContextProvi 'role' => $role, )); } + + public function joindreAction() + { + $form = $this->getFormJoindre(); + + $request = $this->getRequest(); + if ($request->isPost()) { + // Make certain to merge the files info! + $post = array_merge_recursive( + $request->getPost()->toArray(), + $request->getFiles()->toArray() + ); + + var_dump($post); + + $form->setData($post); + if ($form->isValid()) { + $data = $form->getData();var_dump('valid'); + // Form is valid, save the form! + return $this->redirect()->toRoute('upload-form/success'); + } + } + + $viewModel = new \Zend\View\Model\ViewModel(); + $viewModel//->setTemplate('closer-module/ligne/joindre') + ->setVariables(array( + 'form' => $form, + 'terminal' => $this->getRequest()->isXmlHttpRequest(), + 'uploadUrl' => $this->url()->fromRoute(null, ['action' => 'download'], [], true), + )); + + return $viewModel; + } + + public function uploadAction() + { + error_reporting(E_ALL | E_STRICT); + $this->uploader() +// ->setUploadDir($this->getUploadDir($ligne)) + ->setUploadUrl($this->getUploadUrl() . '/') + ->setDownloadUrl($this->getDownloadUrl()) + ->handle(); + exit; + } + + public function downloadAction() + { + error_reporting(E_ALL | E_STRICT); + $this->uploader() +// ->setUploadDir($this->getUploadDir($ligne)) + ->setUploadUrl($this->getUploadUrl() . '/') + ->setDownloadUrl($this->getDownloadUrl()) + ->handle(); + exit; + } + + protected $formJoindre; + + protected function getFormJoindre() + { + if (null === $this->formJoindre) { + $this->formJoindre = new \Application\Form\Joindre(); + $this->formJoindre//->setHydrator(HydratorFactory::getHydrator($ligne)) + //->bind($ligne) + ->setAttribute('action', $this->url()->fromRoute(null, [], [], true)); + } + return $this->formJoindre; + } + + protected function getDownloadUrl() + { + return $this->url()->fromRoute(null, ['action' => 'download'], [], true); + } + + protected function getUploadUrl() + { + return $this->url()->fromRoute(null, ['action' => 'upload'], [], true); + } + +// protected function getUploadDir(Ligne $ligne) +// { +// $options = $this->getServiceLocator()->get('closer-module_options'); /* @var $options \CloserModule\Options\ModuleOptions */ +// return sprintf($options->getUploadDir() . '/acteur-%s/ligne-%s/', +// $ligne->getActeur()->getIdInterne(), +// $ligne->getId()); +// } /** * @return array diff --git a/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule.php b/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule.php deleted file mode 100644 index 1c354ef223a7ed95d5cee14ba66c97126fcea9c8..0000000000000000000000000000000000000000 --- a/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule.php +++ /dev/null @@ -1,30 +0,0 @@ -<?php - -namespace Application\Rule\Intervenant; - -/** - * Description of NecessitePassageConseilRestreintRule - * - * @author Bertrand GAUTHIER <bertrand.gauthier at unicaen.fr> - */ -class NecessitePassageConseilRestreintRule extends IntervenantRule -{ - public function execute() - { - $statut = $this->getIntervenant()->getStatut(); - - if (!$statut->estVacataire()) { - $this->setMessage("Le passage en Conseil Restreint de la composante n'est requis que pour les vacataires (BIATSS inclus)."); - return false; - } - - $this->setMessage(sprintf("Le statut de l'intervenant (%s) nécessite le passage en Conseil Restreint de la composante.", $statut)); - - return true; - } - - public function isRelevant() - { - return true; - } -} diff --git a/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule_1.php b/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule_1.php deleted file mode 100644 index 1c354ef223a7ed95d5cee14ba66c97126fcea9c8..0000000000000000000000000000000000000000 --- a/module/Application/src/Application/Rule/Intervenant/NecessitePassageConseilRestreintRule_1.php +++ /dev/null @@ -1,30 +0,0 @@ -<?php - -namespace Application\Rule\Intervenant; - -/** - * Description of NecessitePassageConseilRestreintRule - * - * @author Bertrand GAUTHIER <bertrand.gauthier at unicaen.fr> - */ -class NecessitePassageConseilRestreintRule extends IntervenantRule -{ - public function execute() - { - $statut = $this->getIntervenant()->getStatut(); - - if (!$statut->estVacataire()) { - $this->setMessage("Le passage en Conseil Restreint de la composante n'est requis que pour les vacataires (BIATSS inclus)."); - return false; - } - - $this->setMessage(sprintf("Le statut de l'intervenant (%s) nécessite le passage en Conseil Restreint de la composante.", $statut)); - - return true; - } - - public function isRelevant() - { - return true; - } -} diff --git a/module/Application/src/Application/Rule/Intervenant/PeutSaisirModificationServiceDuRule.php b/module/Application/src/Application/Rule/Intervenant/PeutSaisirModificationServiceDuRule.php index 90544311cc36496dca965b7648ae12de35f657c1..7e47e229eb78de804f35c0ae9de682254eb92b33 100644 --- a/module/Application/src/Application/Rule/Intervenant/PeutSaisirModificationServiceDuRule.php +++ b/module/Application/src/Application/Rule/Intervenant/PeutSaisirModificationServiceDuRule.php @@ -2,6 +2,7 @@ namespace Application\Rule\Intervenant; +use Zend\Permissions\Acl\Role\RoleInterface; use Application\Entity\Db\Intervenant; use Application\Acl\ComposanteDbRole; @@ -15,10 +16,10 @@ class PeutSaisirModificationServiceDuRule extends IntervenantRule /** * Constructeur. * - * @param Intervenant $intervenant Intervenant dont on modifie le service dû - * @param ComposanteDbRole $role Role auteur de la modification + * @param Intervenant $intervenant Intervenant dont on modifie le service dû + * @param RoleInterface $role Role auteur de la modification */ - public function __construct(Intervenant $intervenant, ComposanteDbRole $role) + public function __construct(Intervenant $intervenant, RoleInterface $role) { parent::__construct($intervenant); $this->role = $role; @@ -32,10 +33,12 @@ class PeutSaisirModificationServiceDuRule extends IntervenantRule return false; } - $estAffecte = new EstAffecteRule($this->getIntervenant(), $this->getRole()->getStructure()); - if (!$estAffecte->execute()) { - $this->setMessage(sprintf("%s %s étant votre structure de responsabilité.", $estAffecte->getMessage(), $this->getRole()->getStructure())); - return false; + if ($this->getRole() instanceof ComposanteDbRole) { + $estAffecte = new EstAffecteRule($this->getIntervenant(), $this->getRole()->getStructure()); + if (!$estAffecte->execute()) { + $this->setMessage(sprintf("%s %s étant votre structure de responsabilité.", $estAffecte->getMessage(), $this->getRole()->getStructure())); + return false; + } } return true; @@ -47,11 +50,11 @@ class PeutSaisirModificationServiceDuRule extends IntervenantRule } /** - * @var \Application\Acl\ComposanteDbRole + * @var RoleInterface */ protected $role; /** - * @return \Application\Acl\ComposanteDbRole + * @return RoleInterface */ public function getRole() { diff --git a/module/Application/src/Application/Service/Workflow/Step/AgrementConseilRestreintStep.php b/module/Application/src/Application/Service/Workflow/Step/AgrementConseilRestreintStep.php deleted file mode 100644 index b28fe5711169f346e975843b35e960d6bd5dfffd..0000000000000000000000000000000000000000 --- a/module/Application/src/Application/Service/Workflow/Step/AgrementConseilRestreintStep.php +++ /dev/null @@ -1,35 +0,0 @@ -<?php - -namespace Application\Service\Workflow\Step; - -use Application\Acl\IntervenantPermanentRole; -use Application\Acl\IntervenantExterieurRole; -use Application\Acl\ComposanteRole; - -/** - * Description of AgrementConseilRestreintStep - * - * @author Bertrand GAUTHIER <bertrand.gauthier at unicaen.fr> - */ -class AgrementConseilRestreintStep extends Step -{ - public function __construct() - { - $labels = array( - IntervenantPermanentRole::ROLE_ID => "Je visualise l'agrément par le Conseil Restreint de chaque composante d'enseignement", - IntervenantExterieurRole::ROLE_ID => "Je visualise l'agrément par le Conseil Restreint de chaque composante d'enseignement", - ComposanteRole::ROLE_ID => "Je visualise l'agrément par le Conseil Restreint de chaque composante d'enseignement de l'intervenant", - ); - $descriptions = array( - IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", - IntervenantExterieurRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", - ComposanteRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", - ); - - $this - - ->setLabels($labels) - ->setDescriptions($descriptions) - ->setRoute('intervenant/agrement'); - } -} \ No newline at end of file diff --git a/module/Application/src/Application/Service/Workflow/Step/AgrementStep.php b/module/Application/src/Application/Service/Workflow/Step/AgrementStep.php index d9bf680767b880f1e054ed652a3345e22077b046..db5acaab2e3fe5a09f3ff2ab012513750d644747 100644 --- a/module/Application/src/Application/Service/Workflow/Step/AgrementStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/AgrementStep.php @@ -29,6 +29,7 @@ class AgrementStep extends Step IntervenantPermanentRole::ROLE_ID => sprintf("Je visualise l'agrément « %s »", $this->typeAgrement), IntervenantExterieurRole::ROLE_ID => sprintf("Je visualise l'agrément « %s »", $this->typeAgrement), ComposanteRole::ROLE_ID => sprintf("Je visualise l'agrément « %s » de l'intervenant", $this->typeAgrement), + 'default' => sprintf("Je visualise l'agrément « %s » de l'intervenant", $this->typeAgrement), ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/EditionContratStep.php b/module/Application/src/Application/Service/Workflow/Step/EditionContratStep.php index e18c3280e3882d34686f7f159900d7a8f2885baa..bb794a27e6a54528ce0ae4f4f9cec4d9c8ed409e 100644 --- a/module/Application/src/Application/Service/Workflow/Step/EditionContratStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/EditionContratStep.php @@ -19,6 +19,7 @@ class EditionContratStep extends Step IntervenantPermanentRole::ROLE_ID => "Je visualise mes contrat/avenants", IntervenantExterieurRole::ROLE_ID => "Je visualise mes contrat/avenants", ComposanteRole::ROLE_ID => "Je visualise les contrat/avenants de l'intervenant", + 'default' => "Je visualise les contrat/avenants de l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/SaisieDossierStep.php b/module/Application/src/Application/Service/Workflow/Step/SaisieDossierStep.php index e1acd151c4ea6f9488a77baa349fb6830a21daf9..bba27bcb9343ca11866d65613243760f9b6a742a 100644 --- a/module/Application/src/Application/Service/Workflow/Step/SaisieDossierStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/SaisieDossierStep.php @@ -19,6 +19,7 @@ class SaisieDossierStep extends Step IntervenantPermanentRole::ROLE_ID => "Je saisis mes données personnelles", IntervenantExterieurRole::ROLE_ID => "Je saisis mes données personnelles", ComposanteRole::ROLE_ID => "J'accède aux données personnelles de l'intervenant", + 'default' => "J'accède aux données personnelles de l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/SaisiePiecesJointesStep.php b/module/Application/src/Application/Service/Workflow/Step/SaisiePiecesJointesStep.php index fbb9c50068e891146b2daa22c7534db457dea7a5..c5ea993303f833f88c826d21b4347c93a248196d 100644 --- a/module/Application/src/Application/Service/Workflow/Step/SaisiePiecesJointesStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/SaisiePiecesJointesStep.php @@ -18,7 +18,8 @@ class SaisiePiecesJointesStep extends Step $labels = array( IntervenantPermanentRole::ROLE_ID => "Je visualise la liste des pièces justificatives à fournir", IntervenantExterieurRole::ROLE_ID => "Je visualise la liste des pièces justificatives à fournir", - ComposanteRole::ROLE_ID => "Liste des pièces justificatives à fournir", + ComposanteRole::ROLE_ID => "Liste des pièces justificatives à fournir par l'intervenant", + 'default' => "Liste des pièces justificatives à fournir par l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/SaisieServiceStep.php b/module/Application/src/Application/Service/Workflow/Step/SaisieServiceStep.php index 134d666592bab876ce6c5e3fa41d95727dbc6c48..e7a4b5b57b7d33242da8f60e96fe2aff019d816b 100644 --- a/module/Application/src/Application/Service/Workflow/Step/SaisieServiceStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/SaisieServiceStep.php @@ -19,6 +19,7 @@ class SaisieServiceStep extends Step IntervenantPermanentRole::ROLE_ID => "Je saisis mes services prévisionnels", IntervenantExterieurRole::ROLE_ID => "Je saisis mes enseignements", ComposanteRole::ROLE_ID => "J'accède aux services prévisionnels de l'intervenant", + 'default' => "J'accède aux services prévisionnels de l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/Step.php b/module/Application/src/Application/Service/Workflow/Step/Step.php index 5e8368d4b8e95b03724d875a06d981f7dbb4a158..9255bf0a8c54c35f1f7a477a06869ca37ca9b134 100644 --- a/module/Application/src/Application/Service/Workflow/Step/Step.php +++ b/module/Application/src/Application/Service/Workflow/Step/Step.php @@ -47,7 +47,10 @@ abstract class Step $roleId = \Application\Acl\ComposanteRole::ROLE_ID; } if (!isset($this->labels[$roleId])) { - throw new \Common\Exception\LogicException("Label not set for role '$roleId'!"); + if (!isset($this->labels['default'])) { + throw new \Common\Exception\LogicException("Aucun label par défaut n'a été spécifié pour l'étape '" . get_class() . "'."); + } + return $this->labels['default']; } return $this->labels[$roleId]; } @@ -86,7 +89,8 @@ EOS; $roleId = \Application\Acl\ComposanteRole::ROLE_ID; } if (!isset($this->descriptions[$roleId])) { - throw new \Common\Exception\LogicException("Label not set for role '$roleId'!"); +// throw new \Common\Exception\LogicException("Description not set for role '$roleId'!"); + return ""; } return $this->descriptions[$roleId]; } diff --git a/module/Application/src/Application/Service/Workflow/Step/ValidationDossierStep.php b/module/Application/src/Application/Service/Workflow/Step/ValidationDossierStep.php index f460c3e0075700a1995d2142644d5e4904950cb3..a9e65f4508d2f28aa557bfeca600961335c05d34 100644 --- a/module/Application/src/Application/Service/Workflow/Step/ValidationDossierStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/ValidationDossierStep.php @@ -19,6 +19,7 @@ class ValidationDossierStep extends Step IntervenantPermanentRole::ROLE_ID => "Je visualise la validation de mes données personnelles par la composante", IntervenantExterieurRole::ROLE_ID => "Je visualise la validation de mes données personnelles par la composante", ComposanteRole::ROLE_ID => "Je visualise la validation des données personnelles de l'intervenant", + 'default' => "Je visualise la validation des données personnelles de l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/src/Application/Service/Workflow/Step/ValidationServiceStep.php b/module/Application/src/Application/Service/Workflow/Step/ValidationServiceStep.php index a774c7989d57b6c68bb1062a55f7c06d28a87d69..b0deb4a0d1c92ced8e1b72d2c7846017d1983e39 100644 --- a/module/Application/src/Application/Service/Workflow/Step/ValidationServiceStep.php +++ b/module/Application/src/Application/Service/Workflow/Step/ValidationServiceStep.php @@ -19,6 +19,7 @@ class ValidationServiceStep extends Step IntervenantPermanentRole::ROLE_ID => "Je visualise la validation de mes services par la composante", IntervenantExterieurRole::ROLE_ID => "Je visualise la validation de mes enseignements par la composante", ComposanteRole::ROLE_ID => "Je visualise la validation des services de l'intervenant", + 'default' => "Je visualise la validation des services de l'intervenant", ); $descriptions = array( IntervenantPermanentRole::ROLE_ID => "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sed sem libero. Nam urna magna, fringilla et blandit aliquam, condimentum a velit. Vivamus sollicitudin blandit augue ut dapibus. Vivamus faucibus quis massa id tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor suscipit mauris, in suscipit quam lacinia ut. Nam ac mollis enim, quis tincidunt sem.", diff --git a/module/Application/view/application/agrement/ajouter-lot.phtml b/module/Application/view/application/agrement/ajouter-lot.phtml index 919a6088d0bdcba8f60040d2570b6fd99a723b6b..a7431628bf1dfed2af709792de3eafbb4d23e5bb 100644 --- a/module/Application/view/application/agrement/ajouter-lot.phtml +++ b/module/Application/view/application/agrement/ajouter-lot.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append("Agrément $typeAgrement par lots") ?> + <h1 class="page-header"><?php echo $this->title ?></h1> <?php echo $this->messenger(true)->addMessages($messages) ?> diff --git a/module/Application/view/application/agrement/index.phtml b/module/Application/view/application/agrement/index.phtml index 517837eac67ae9a2290137223b64090365e0096c..0be60894f44deb484a719dc4f447ab10315645b7 100644 --- a/module/Application/view/application/agrement/index.phtml +++ b/module/Application/view/application/agrement/index.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append("Agrément") ?> + <h1 class="page-header"><?php echo $title ?></h1> Sélectionnez dans le menu de gauche le type d'agrément qui vous intéresse... \ No newline at end of file diff --git a/module/Application/view/application/agrement/lister.phtml b/module/Application/view/application/agrement/lister.phtml index 32eb303ef3509c1e5ef4b02059501316e0ff22aa..81c955a8624b14dd5ff0130147a447e8e1a56165 100644 --- a/module/Application/view/application/agrement/lister.phtml +++ b/module/Application/view/application/agrement/lister.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Agrément $typeAgrement") ?> + <h1 class="page-header"><?php echo $title ?></h1> <?php echo $this->messenger(true)->addMessages($messages) ?> diff --git a/module/Application/view/application/contrat/creer.phtml b/module/Application/view/application/contrat/creer.phtml index a8a590a12d093704e9b77d5cd4b1f903bba800bf..9c6954ba4e4c414f8f6c3ae95b2f29a69a87a2b7 100644 --- a/module/Application/view/application/contrat/creer.phtml +++ b/module/Application/view/application/contrat/creer.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Contrat/avenant") ?> + <h1 class="page-header"><?php echo $title ?></h1> <?php echo $this->messenger(true)->addMessages($messages) ?> diff --git a/module/Application/view/application/contrat/index.phtml b/module/Application/view/application/contrat/index.phtml deleted file mode 100644 index 8e7dbb2406a53e8121b2764bad062669754d1421..0000000000000000000000000000000000000000 --- a/module/Application/view/application/contrat/index.phtml +++ /dev/null @@ -1 +0,0 @@ -<h2 class="page-header">Contrat</small></h2> \ No newline at end of file diff --git a/module/Application/view/application/dossier/modifier.phtml b/module/Application/view/application/dossier/modifier.phtml index ee22d197b1e0bb9292d154e4dc7e892e81cd146b..b465590a8a7827f642a6e98731b5e0c041997207 100644 --- a/module/Application/view/application/dossier/modifier.phtml +++ b/module/Application/view/application/dossier/modifier.phtml @@ -1,4 +1,6 @@ -<h2 class="page-header">Données personnelles <small><?php echo $intervenant ?></small></h2> +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Données personnelles") ?> + +<h1 class="page-header">Données personnelles <small><?php echo $intervenant ?></small></h1> <?php if ($validation) { diff --git a/module/Application/view/application/dossier/pieces-jointes.phtml b/module/Application/view/application/dossier/pieces-jointes.phtml index c7132e7a65c3ad0a9c521f03af7a1bec5a66cbf1..94870b70e6db40a9bdcc676624279d0f6c6812b8 100644 --- a/module/Application/view/application/dossier/pieces-jointes.phtml +++ b/module/Application/view/application/dossier/pieces-jointes.phtml @@ -1,4 +1,6 @@ -<h2 class="page-header"><?php echo $title ?></h2> +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Pièces justificatives") ?> + +<h1 class="page-header"><?php echo $title ?></h1> <?php $messenger = $this->messenger(true); diff --git a/module/Application/view/application/index/gestion.phtml b/module/Application/view/application/index/gestion.phtml index 0c3044cfeb67011befb744fb4db61886526a727a..acb9da6fb4524f3eaf6f311b14df1ff9c25c5423 100755 --- a/module/Application/view/application/index/gestion.phtml +++ b/module/Application/view/application/index/gestion.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append("Gestion") ?> + <h1 class="page-header"><?php echo $title ?></h1> Sélectionnez dans le menu de gauche l'opération qui vous intéresse... \ No newline at end of file diff --git a/module/Application/view/application/index/index.phtml b/module/Application/view/application/index/index.phtml index 67298ba2029dbf2d9087053747973f354125808a..bc468b59e550033b8194de15390447e809c5fa6c 100755 --- a/module/Application/view/application/index/index.phtml +++ b/module/Application/view/application/index/index.phtml @@ -1,4 +1,7 @@ +<?php $this->headTitle("Accueil") ?> + <?php echo $this->messenger(true) ?> + <div class="jumbotron"> <h1>OSE <small>Organisation des Services d'Enseignement</small></h1> <p class="lead">Bienvenue dans l'application de saisie des enseignements de l'université de Caen.</p> diff --git a/module/Application/view/application/intervenant/choisir.phtml b/module/Application/view/application/intervenant/choisir.phtml index 5b0f64fd3fb7d503520954c35b9703d8017e973f..4c033a0dc547a4c369453a33b89e2e70102b3044 100644 --- a/module/Application/view/application/intervenant/choisir.phtml +++ b/module/Application/view/application/intervenant/choisir.phtml @@ -1,4 +1,6 @@ -<h2><?php echo $this->title ?></h2> +<?php $this->headTitle($this->title) ?> + +<h1 class="page-header"><?php echo $this->title ?></h1> <?php echo $this->messenger(true) ?> diff --git a/module/Application/view/application/intervenant/voir.phtml b/module/Application/view/application/intervenant/voir.phtml index a7c0c95a3861bed83032b71f8f9034f987b544a6..bd431d2cf0bdc411607d91e474d116efa0c0a5b4 100644 --- a/module/Application/view/application/intervenant/voir.phtml +++ b/module/Application/view/application/intervenant/voir.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Fiche") ?> + <h1 class="page-header"><?php echo $intervenant ?> <small><?php echo $intervenant->getType() ?></small></h1> <?php echo $this->intervenantDl($intervenant, true) ?> diff --git a/module/Application/view/application/modification-service-du/saisir.phtml b/module/Application/view/application/modification-service-du/saisir.phtml index 56a6430494239ee3f55cd864aa8c22536e0cfb0f..fd15572b92ef49a88f6fa8313944cda3eb544a6f 100644 --- a/module/Application/view/application/modification-service-du/saisir.phtml +++ b/module/Application/view/application/modification-service-du/saisir.phtml @@ -1,4 +1,6 @@ -<h1><?php echo $title ?></h1> +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Modification de service dû") ?> + +<h1 class="page-header"><?php echo $title ?></h1> <?php echo $this->messenger(true) ?> diff --git a/module/Application/view/application/offre-formation/index.phtml b/module/Application/view/application/offre-formation/index.phtml index 17e98d45efd7cee0fe09203087f9a8155d22e072..6aed83ea8819fef4d48f82408471639d70464148 100755 --- a/module/Application/view/application/offre-formation/index.phtml +++ b/module/Application/view/application/offre-formation/index.phtml @@ -24,6 +24,8 @@ $mc->setUlClass('navigation navigation-etape pull-right'); div.element-rech div.panel-body input.form-control { width: 75% } </style> +<?php $this->headTitle()->append((string)$structure)->append("Offre de formation") ?> + <h1 class="page-header">Offre de formation <?php echo $structure ? '<small>' . $structure . '</small>' : null ?></h1> <div class="row"> diff --git a/module/Application/view/application/service/index.phtml b/module/Application/view/application/service/index.phtml index 026bdfbe30a6e8c519b7bcb9d5cd58e2fb47d34b..dd1a20af86d82f1e8ab5ac2b17d3081f56d05000 100644 --- a/module/Application/view/application/service/index.phtml +++ b/module/Application/view/application/service/index.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Enseignements") ?> + <h1 class="page-header"><?php echo $title; ?></h1> <?php echo $this->messenger(true) ?> diff --git a/module/Application/view/application/service/resume.phtml b/module/Application/view/application/service/resume.phtml index 55244271cbb5abceb82949c650b052931ac97847..aa825d3200acbb3b3f63f28017f82ec1f9406691 100644 --- a/module/Application/view/application/service/resume.phtml +++ b/module/Application/view/application/service/resume.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append("Enseignements $annee") ?> + <h1 class="page-header">Enseignements <small>Année universitaire <?php echo $annee; ?></small></h1> <?php diff --git a/module/Application/view/application/validation/dossier.phtml b/module/Application/view/application/validation/dossier.phtml index e4b2dbdf451595da6ab8def138406dde16178019..01b5b8c10d4108d301d3994bfb22c23980783a11 100755 --- a/module/Application/view/application/validation/dossier.phtml +++ b/module/Application/view/application/validation/dossier.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Validation des données personnelles") ?> + <h1 class="page-header"><?php echo $title ?></h1> <?php diff --git a/module/Application/view/application/validation/service.phtml b/module/Application/view/application/validation/service.phtml index 94769d3436fb3ddbd19f89b9e1e6224eb675b070..671d9045dfec5a4e8c47dad5b59050d983636733 100755 --- a/module/Application/view/application/validation/service.phtml +++ b/module/Application/view/application/validation/service.phtml @@ -1,3 +1,5 @@ +<?php $this->headTitle()->append($intervenant->getNomUsuel())->append("Validation des enseignements") ?> + <h1 class="page-header"><?php echo $title ?></small></h1> <?php echo $this->messenger(true)->addMessages($messages) ?>