Loading composer.lock +70 −69 Original line number Diff line number Diff line Loading @@ -460,16 +460,16 @@ }, { "name": "doctrine/dbal", "version": "3.6.0", "version": "3.6.1", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e" "reference": "57815c7bbcda3cd18871d253c1dd8cbe56f8526e" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/doctrine/dbal/zipball/85b98cb23c8af471a67abfe14485da696bcabc2e", "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e", "url": "https://api.github.com/repos/doctrine/dbal/zipball/57815c7bbcda3cd18871d253c1dd8cbe56f8526e", "reference": "57815c7bbcda3cd18871d253c1dd8cbe56f8526e", "shasum": "" }, "require": { Loading @@ -485,11 +485,11 @@ "doctrine/coding-standard": "11.1.0", "fig/log-test": "^1", "jetbrains/phpstorm-stubs": "2022.3", "phpstan/phpstan": "1.9.14", "phpstan/phpstan-strict-rules": "^1.4", "phpunit/phpunit": "9.6.3", "phpstan/phpstan": "1.10.3", "phpstan/phpstan-strict-rules": "^1.5", "phpunit/phpunit": "9.6.4", "psalm/plugin-phpunit": "0.18.4", "squizlabs/php_codesniffer": "3.7.1", "squizlabs/php_codesniffer": "3.7.2", "symfony/cache": "^5.4|^6.0", "symfony/console": "^4.4|^5.4|^6.0", "vimeo/psalm": "4.30.0" Loading Loading @@ -552,7 +552,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", "source": "https://github.com/doctrine/dbal/tree/3.6.0" "source": "https://github.com/doctrine/dbal/tree/3.6.1" }, "funding": [ { Loading @@ -568,7 +568,7 @@ "type": "tidelift" } ], "time": "2023-02-07T22:52:03+00:00" "time": "2023-03-02T19:26:24+00:00" }, { "name": "doctrine/deprecations", Loading Loading @@ -2024,16 +2024,16 @@ }, { "name": "laminas/laminas-crypt", "version": "3.9.0", "version": "3.10.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-crypt.git", "reference": "56ab1b195dad5456753601ff2e8e3d3fd9392d1a" "reference": "588375caf4d505fee90d1449e9714c912ceb5051" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/laminas/laminas-crypt/zipball/56ab1b195dad5456753601ff2e8e3d3fd9392d1a", "reference": "56ab1b195dad5456753601ff2e8e3d3fd9392d1a", "url": "https://api.github.com/repos/laminas/laminas-crypt/zipball/588375caf4d505fee90d1449e9714c912ceb5051", "reference": "588375caf4d505fee90d1449e9714c912ceb5051", "shasum": "" }, "require": { Loading Loading @@ -2084,7 +2084,7 @@ "type": "community_bridge" } ], "time": "2022-10-16T15:51:01+00:00" "time": "2023-03-03T15:57:57+00:00" }, { "name": "laminas/laminas-db", Loading Loading @@ -4808,16 +4808,16 @@ }, { "name": "laminas/laminas-view", "version": "2.26.0", "version": "2.27.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-view.git", "reference": "955c34b8fd0d5bdb28f560e64f510f6b49c7e250" "reference": "b7e66e148ccd55c815b9626ee0cfd358dbb28be4" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/laminas/laminas-view/zipball/955c34b8fd0d5bdb28f560e64f510f6b49c7e250", "reference": "955c34b8fd0d5bdb28f560e64f510f6b49c7e250", "url": "https://api.github.com/repos/laminas/laminas-view/zipball/b7e66e148ccd55c815b9626ee0cfd358dbb28be4", "reference": "b7e66e148ccd55c815b9626ee0cfd358dbb28be4", "shasum": "" }, "require": { Loading Loading @@ -4904,7 +4904,7 @@ "type": "community_bridge" } ], "time": "2023-01-15T08:16:12+00:00" "time": "2023-02-09T16:07:15+00:00" }, { "name": "mpdf/mpdf", Loading Loading @@ -4985,16 +4985,16 @@ }, { "name": "myclabs/deep-copy", "version": "1.11.0", "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { Loading Loading @@ -5032,7 +5032,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { Loading @@ -5040,20 +5040,20 @@ "type": "tidelift" } ], "time": "2022-03-03T13:19:32+00:00" "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", "version": "v4.15.3", "version": "v4.15.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "shasum": "" }, "require": { Loading Loading @@ -5094,9 +5094,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" }, "time": "2023-01-16T22:05:37+00:00" "time": "2023-03-05T19:49:14+00:00" }, { "name": "ocramius/proxy-manager", Loading Loading @@ -5684,16 +5684,16 @@ }, { "name": "setasign/fpdi", "version": "v2.3.6", "version": "v2.3.7", "source": { "type": "git", "url": "https://github.com/Setasign/FPDI.git", "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31" "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Setasign/FPDI/zipball/6231e315f73e4f62d72b73f3d6d78ff0eed93c31", "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31", "url": "https://api.github.com/repos/Setasign/FPDI/zipball/bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", "shasum": "" }, "require": { Loading Loading @@ -5744,7 +5744,7 @@ ], "support": { "issues": "https://github.com/Setasign/FPDI/issues", "source": "https://github.com/Setasign/FPDI/tree/v2.3.6" "source": "https://github.com/Setasign/FPDI/tree/v2.3.7" }, "funding": [ { Loading @@ -5752,7 +5752,7 @@ "type": "tidelift" } ], "time": "2021-02-11T11:37:01+00:00" "time": "2023-02-09T10:38:43+00:00" }, { "name": "stella-maris/clock", Loading Loading @@ -5803,16 +5803,16 @@ }, { "name": "symfony/console", "version": "v5.4.19", "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/console.git", "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", "url": "https://api.github.com/repos/symfony/console/zipball/c77433ddc6cdc689caf48065d9ea22ca0853fbd9", "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9", "shasum": "" }, "require": { Loading Loading @@ -5882,7 +5882,7 @@ "terminal" ], "support": { "source": "https://github.com/symfony/console/tree/v5.4.19" "source": "https://github.com/symfony/console/tree/v5.4.21" }, "funding": [ { Loading @@ -5898,7 +5898,7 @@ "type": "tidelift" } ], "time": "2023-01-01T08:32:19+00:00" "time": "2023-02-25T16:59:41+00:00" }, { "name": "symfony/deprecation-contracts", Loading Loading @@ -7647,16 +7647,16 @@ }, { "name": "microsoft/tolerant-php-parser", "version": "v0.1.1", "version": "v0.1.2", "source": { "type": "git", "url": "https://github.com/microsoft/tolerant-php-parser.git", "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16" "reference": "3eccfd273323aaf69513e2f1c888393f5947804b" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/6a965617cf484355048ac6d2d3de7b6ec93abb16", "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16", "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/3eccfd273323aaf69513e2f1c888393f5947804b", "reference": "3eccfd273323aaf69513e2f1c888393f5947804b", "shasum": "" }, "require": { Loading Loading @@ -7686,9 +7686,9 @@ "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios", "support": { "issues": "https://github.com/microsoft/tolerant-php-parser/issues", "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.1" "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.2" }, "time": "2021-07-16T21:28:12+00:00" "time": "2022-10-05T17:30:19+00:00" }, { "name": "netresearch/jsonmapper", Loading Loading @@ -7743,16 +7743,16 @@ }, { "name": "pdepend/pdepend", "version": "2.12.1", "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/pdepend/pdepend.git", "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84" "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/pdepend/pdepend/zipball/7a892d56ceafd804b4a2ecc85184640937ce9e84", "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84", "url": "https://api.github.com/repos/pdepend/pdepend/zipball/31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", "shasum": "" }, "require": { Loading Loading @@ -7788,7 +7788,7 @@ "description": "Official version of pdepend to be handled with Composer", "support": { "issues": "https://github.com/pdepend/pdepend/issues", "source": "https://github.com/pdepend/pdepend/tree/2.12.1" "source": "https://github.com/pdepend/pdepend/tree/2.13.0" }, "funding": [ { Loading @@ -7796,20 +7796,20 @@ "type": "tidelift" } ], "time": "2022-09-08T19:30:37+00:00" "time": "2023-02-28T20:56:15+00:00" }, { "name": "phan/phan", "version": "5.4.1", "version": "5.4.2", "source": { "type": "git", "url": "https://github.com/phan/phan.git", "reference": "fef40178a952bcfcc3f69b76989dd613c3d5c759" "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/phan/phan/zipball/fef40178a952bcfcc3f69b76989dd613c3d5c759", "reference": "fef40178a952bcfcc3f69b76989dd613c3d5c759", "url": "https://api.github.com/repos/phan/phan/zipball/4f2870ed6fea320f62f3c3c63f3274d357a7980e", "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e", "shasum": "" }, "require": { Loading @@ -7819,7 +7819,7 @@ "ext-json": "*", "ext-tokenizer": "*", "felixfbecker/advanced-json-rpc": "^3.0.4", "microsoft/tolerant-php-parser": "0.1.1", "microsoft/tolerant-php-parser": "0.1.2", "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0", "php": "^7.2.0|^8.0.0", "sabre/event": "^5.1.3", Loading Loading @@ -7873,9 +7873,9 @@ ], "support": { "issues": "https://github.com/phan/phan/issues", "source": "https://github.com/phan/phan/tree/5.4.1" "source": "https://github.com/phan/phan/tree/5.4.2" }, "time": "2022-08-26T00:49:07+00:00" "time": "2023-03-03T17:20:24+00:00" }, { "name": "phpcompatibility/php-compatibility", Loading Loading @@ -8255,16 +8255,16 @@ }, { "name": "squizlabs/php_codesniffer", "version": "3.7.1", "version": "3.7.2", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619" "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1359e176e9307e906dc3d890bcc9603ff6d90619", "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619", "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879", "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879", "shasum": "" }, "require": { Loading Loading @@ -8300,14 +8300,15 @@ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", "keywords": [ "phpcs", "standards" "standards", "static analysis" ], "support": { "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", "source": "https://github.com/squizlabs/PHP_CodeSniffer", "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" }, "time": "2022-06-18T07:21:10+00:00" "time": "2023-02-22T23:07:41+00:00" }, { "name": "symfony/config", Loading front/Application/UI/UCalendar.vue +63 −9 Original line number Diff line number Diff line Loading @@ -29,14 +29,27 @@ <div class="num-jour badge bg-secondary rounded-circle">{{ jour < 10 ? '0' + jour.toString() : jour }}</div> </th> <td> <div> <div class="alert alert-info" v-for="event in eventsByJour(jour)"> <component :is="event.component" :event="event"/> <div class="event" :style="'border-color:'+event.color" v-for="(event,index) in eventsByJour(jour)" :key="index"> <div class="event-content"> <component :is="event.component" :event="event"></component> </div> <div class="event-actions"> <div class="btn-group btn-group-sm"> <button class="btn btn-light" @click="editEvent" :data-index="index"> <u-icon name="pen-to-square"/> </button> <button class="btn btn-light" @click="deleteEvent" :data-index="index"> <u-icon name="trash-can" class="text-danger"/> </button> </div> </div> </div> <div v-if="canAddEvent"> <button @click="addEvent" :data-jour="jour" class="btn btn-light btn-sm"><u-icon name="plus" /> Nouvel événement</button> <button @click="addEvent" :data-jour="jour" class="btn btn-light btn-sm"> <u-icon name="plus"/> Nouvel événement </button> </div> </td> </tr> Loading Loading @@ -74,7 +87,7 @@ export default { let nombreJours = dateObj.getDate(); return Array.from({length: nombreJours}, (v, k) => k + 1) } }, }, watch: { date: function (newVal, oldVal) { // watch it Loading Loading @@ -137,11 +150,23 @@ export default { addEvent(event) { const dateObj = new Date(this.date); dateObj.setDate(event.target.dataset.jour); dateObj.setDate(event.currentTarget.dataset.jour); this.$emit('addEvent', dateObj); }, editEvent(event) { const index = event.currentTarget.dataset.index; this.$emit('editEvent', this.events[index]); }, deleteEvent(event) { const index = event.currentTarget.dataset.index; this.$emit('deleteEvent', this.events[index]); }, prevMois() { const dateObj = new Date(this.date); Loading @@ -162,14 +187,14 @@ export default { { const dateObj = new Date(this.date); let res = []; let res = {}; for (let e in this.events) { let event = this.events[e]; if (event.date.getFullYear() === dateObj.getFullYear() && event.date.getMonth() + 1 === dateObj.getMonth() + 1 && event.date.getDate() === jour ) { res.push(event); res[e] = event; } } return res; Loading @@ -180,8 +205,14 @@ export default { <style scoped> .table tr { background-color: #f4f4f4; border-left: 1px #ddd solid; border-right: 1px #ddd solid; } .table-hover tr:hover { background-color:lightyellow; background-color: #f7f7f7; } .recherche { Loading @@ -199,6 +230,7 @@ export default { th.nom-jour { width: 1%; padding-left: 3px; } th.numero-jour { Loading @@ -211,4 +243,26 @@ th.numero-jour { padding-bottom: 5px; } .event { display: flex; justify-content: space-between; align-items: center; margin-bottom: 3px; border-left: 10px #bbb solid; border-right: 10px #bbb solid; } .event:hover { background-color: white; } .event-content { flex-grow: 1; } .event-actions { align-self: flex-start; } </style> No newline at end of file front/Application/UI/UFormDate.vue 0 → 100644 +45 −0 Original line number Diff line number Diff line <template> <div class="mb-2"> <label :for="id ? id : name" class="form-label">{{ label }}</label> <input type="date" :name="name" :id="id ? id : name" class="form-control" v-model="dateVal" :disabled="disabled"/> </div> </template> <script> export default { name: "UFormDate", props: { id: {type: String, required: false}, name: {type: String, required: true}, label: {type: String, required: true, default: 'Inconnu'}, modelValue: {required: true, default: undefined}, disabled: {type: Boolean, required: false, default: false}, }, data() { return { dateVal: undefined }; }, watch: { modelValue: function (val) { let value = val; if (val instanceof Date) { value = Util.dateToString(val); } if (val instanceof String) { value = val.slice(0, 10); } this.dateVal = value; }, dateVal: function (val) { this.$emit("update:modelValue", new Date(val)); }, } } </script> <style scoped> </style> No newline at end of file front/Mission/Liste.vue +1 −1 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ export default { methods: { ajout(event) { modAjax(event.target, (widget) => { modAjax(event.currentTarget, (widget) => { this.reload(); }); }, Loading front/Mission/Mission.vue +10 −10 Original line number Diff line number Diff line Loading @@ -212,46 +212,46 @@ export default { }, saisie(event) { modAjax(event.target, (widget) => { modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, supprimer(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('supprimer', this.mission); }); }, valider(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, devalider(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireSupprimer(event) { event.target.href = Util.url('mission/volume-horaire/supprimer/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/supprimer/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireValider(event) { event.target.href = Util.url('mission/volume-horaire/valider/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/valider/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireDevalider(event) { event.target.href = Util.url('mission/volume-horaire/devalider/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/devalider/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, Loading Loading
composer.lock +70 −69 Original line number Diff line number Diff line Loading @@ -460,16 +460,16 @@ }, { "name": "doctrine/dbal", "version": "3.6.0", "version": "3.6.1", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e" "reference": "57815c7bbcda3cd18871d253c1dd8cbe56f8526e" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/doctrine/dbal/zipball/85b98cb23c8af471a67abfe14485da696bcabc2e", "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e", "url": "https://api.github.com/repos/doctrine/dbal/zipball/57815c7bbcda3cd18871d253c1dd8cbe56f8526e", "reference": "57815c7bbcda3cd18871d253c1dd8cbe56f8526e", "shasum": "" }, "require": { Loading @@ -485,11 +485,11 @@ "doctrine/coding-standard": "11.1.0", "fig/log-test": "^1", "jetbrains/phpstorm-stubs": "2022.3", "phpstan/phpstan": "1.9.14", "phpstan/phpstan-strict-rules": "^1.4", "phpunit/phpunit": "9.6.3", "phpstan/phpstan": "1.10.3", "phpstan/phpstan-strict-rules": "^1.5", "phpunit/phpunit": "9.6.4", "psalm/plugin-phpunit": "0.18.4", "squizlabs/php_codesniffer": "3.7.1", "squizlabs/php_codesniffer": "3.7.2", "symfony/cache": "^5.4|^6.0", "symfony/console": "^4.4|^5.4|^6.0", "vimeo/psalm": "4.30.0" Loading Loading @@ -552,7 +552,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", "source": "https://github.com/doctrine/dbal/tree/3.6.0" "source": "https://github.com/doctrine/dbal/tree/3.6.1" }, "funding": [ { Loading @@ -568,7 +568,7 @@ "type": "tidelift" } ], "time": "2023-02-07T22:52:03+00:00" "time": "2023-03-02T19:26:24+00:00" }, { "name": "doctrine/deprecations", Loading Loading @@ -2024,16 +2024,16 @@ }, { "name": "laminas/laminas-crypt", "version": "3.9.0", "version": "3.10.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-crypt.git", "reference": "56ab1b195dad5456753601ff2e8e3d3fd9392d1a" "reference": "588375caf4d505fee90d1449e9714c912ceb5051" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/laminas/laminas-crypt/zipball/56ab1b195dad5456753601ff2e8e3d3fd9392d1a", "reference": "56ab1b195dad5456753601ff2e8e3d3fd9392d1a", "url": "https://api.github.com/repos/laminas/laminas-crypt/zipball/588375caf4d505fee90d1449e9714c912ceb5051", "reference": "588375caf4d505fee90d1449e9714c912ceb5051", "shasum": "" }, "require": { Loading Loading @@ -2084,7 +2084,7 @@ "type": "community_bridge" } ], "time": "2022-10-16T15:51:01+00:00" "time": "2023-03-03T15:57:57+00:00" }, { "name": "laminas/laminas-db", Loading Loading @@ -4808,16 +4808,16 @@ }, { "name": "laminas/laminas-view", "version": "2.26.0", "version": "2.27.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-view.git", "reference": "955c34b8fd0d5bdb28f560e64f510f6b49c7e250" "reference": "b7e66e148ccd55c815b9626ee0cfd358dbb28be4" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/laminas/laminas-view/zipball/955c34b8fd0d5bdb28f560e64f510f6b49c7e250", "reference": "955c34b8fd0d5bdb28f560e64f510f6b49c7e250", "url": "https://api.github.com/repos/laminas/laminas-view/zipball/b7e66e148ccd55c815b9626ee0cfd358dbb28be4", "reference": "b7e66e148ccd55c815b9626ee0cfd358dbb28be4", "shasum": "" }, "require": { Loading Loading @@ -4904,7 +4904,7 @@ "type": "community_bridge" } ], "time": "2023-01-15T08:16:12+00:00" "time": "2023-02-09T16:07:15+00:00" }, { "name": "mpdf/mpdf", Loading Loading @@ -4985,16 +4985,16 @@ }, { "name": "myclabs/deep-copy", "version": "1.11.0", "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { Loading Loading @@ -5032,7 +5032,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { Loading @@ -5040,20 +5040,20 @@ "type": "tidelift" } ], "time": "2022-03-03T13:19:32+00:00" "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", "version": "v4.15.3", "version": "v4.15.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "shasum": "" }, "require": { Loading Loading @@ -5094,9 +5094,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" }, "time": "2023-01-16T22:05:37+00:00" "time": "2023-03-05T19:49:14+00:00" }, { "name": "ocramius/proxy-manager", Loading Loading @@ -5684,16 +5684,16 @@ }, { "name": "setasign/fpdi", "version": "v2.3.6", "version": "v2.3.7", "source": { "type": "git", "url": "https://github.com/Setasign/FPDI.git", "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31" "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Setasign/FPDI/zipball/6231e315f73e4f62d72b73f3d6d78ff0eed93c31", "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31", "url": "https://api.github.com/repos/Setasign/FPDI/zipball/bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", "shasum": "" }, "require": { Loading Loading @@ -5744,7 +5744,7 @@ ], "support": { "issues": "https://github.com/Setasign/FPDI/issues", "source": "https://github.com/Setasign/FPDI/tree/v2.3.6" "source": "https://github.com/Setasign/FPDI/tree/v2.3.7" }, "funding": [ { Loading @@ -5752,7 +5752,7 @@ "type": "tidelift" } ], "time": "2021-02-11T11:37:01+00:00" "time": "2023-02-09T10:38:43+00:00" }, { "name": "stella-maris/clock", Loading Loading @@ -5803,16 +5803,16 @@ }, { "name": "symfony/console", "version": "v5.4.19", "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/console.git", "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", "url": "https://api.github.com/repos/symfony/console/zipball/c77433ddc6cdc689caf48065d9ea22ca0853fbd9", "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9", "shasum": "" }, "require": { Loading Loading @@ -5882,7 +5882,7 @@ "terminal" ], "support": { "source": "https://github.com/symfony/console/tree/v5.4.19" "source": "https://github.com/symfony/console/tree/v5.4.21" }, "funding": [ { Loading @@ -5898,7 +5898,7 @@ "type": "tidelift" } ], "time": "2023-01-01T08:32:19+00:00" "time": "2023-02-25T16:59:41+00:00" }, { "name": "symfony/deprecation-contracts", Loading Loading @@ -7647,16 +7647,16 @@ }, { "name": "microsoft/tolerant-php-parser", "version": "v0.1.1", "version": "v0.1.2", "source": { "type": "git", "url": "https://github.com/microsoft/tolerant-php-parser.git", "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16" "reference": "3eccfd273323aaf69513e2f1c888393f5947804b" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/6a965617cf484355048ac6d2d3de7b6ec93abb16", "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16", "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/3eccfd273323aaf69513e2f1c888393f5947804b", "reference": "3eccfd273323aaf69513e2f1c888393f5947804b", "shasum": "" }, "require": { Loading Loading @@ -7686,9 +7686,9 @@ "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios", "support": { "issues": "https://github.com/microsoft/tolerant-php-parser/issues", "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.1" "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.2" }, "time": "2021-07-16T21:28:12+00:00" "time": "2022-10-05T17:30:19+00:00" }, { "name": "netresearch/jsonmapper", Loading Loading @@ -7743,16 +7743,16 @@ }, { "name": "pdepend/pdepend", "version": "2.12.1", "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/pdepend/pdepend.git", "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84" "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/pdepend/pdepend/zipball/7a892d56ceafd804b4a2ecc85184640937ce9e84", "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84", "url": "https://api.github.com/repos/pdepend/pdepend/zipball/31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", "shasum": "" }, "require": { Loading Loading @@ -7788,7 +7788,7 @@ "description": "Official version of pdepend to be handled with Composer", "support": { "issues": "https://github.com/pdepend/pdepend/issues", "source": "https://github.com/pdepend/pdepend/tree/2.12.1" "source": "https://github.com/pdepend/pdepend/tree/2.13.0" }, "funding": [ { Loading @@ -7796,20 +7796,20 @@ "type": "tidelift" } ], "time": "2022-09-08T19:30:37+00:00" "time": "2023-02-28T20:56:15+00:00" }, { "name": "phan/phan", "version": "5.4.1", "version": "5.4.2", "source": { "type": "git", "url": "https://github.com/phan/phan.git", "reference": "fef40178a952bcfcc3f69b76989dd613c3d5c759" "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/phan/phan/zipball/fef40178a952bcfcc3f69b76989dd613c3d5c759", "reference": "fef40178a952bcfcc3f69b76989dd613c3d5c759", "url": "https://api.github.com/repos/phan/phan/zipball/4f2870ed6fea320f62f3c3c63f3274d357a7980e", "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e", "shasum": "" }, "require": { Loading @@ -7819,7 +7819,7 @@ "ext-json": "*", "ext-tokenizer": "*", "felixfbecker/advanced-json-rpc": "^3.0.4", "microsoft/tolerant-php-parser": "0.1.1", "microsoft/tolerant-php-parser": "0.1.2", "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0", "php": "^7.2.0|^8.0.0", "sabre/event": "^5.1.3", Loading Loading @@ -7873,9 +7873,9 @@ ], "support": { "issues": "https://github.com/phan/phan/issues", "source": "https://github.com/phan/phan/tree/5.4.1" "source": "https://github.com/phan/phan/tree/5.4.2" }, "time": "2022-08-26T00:49:07+00:00" "time": "2023-03-03T17:20:24+00:00" }, { "name": "phpcompatibility/php-compatibility", Loading Loading @@ -8255,16 +8255,16 @@ }, { "name": "squizlabs/php_codesniffer", "version": "3.7.1", "version": "3.7.2", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619" "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1359e176e9307e906dc3d890bcc9603ff6d90619", "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619", "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879", "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879", "shasum": "" }, "require": { Loading Loading @@ -8300,14 +8300,15 @@ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", "keywords": [ "phpcs", "standards" "standards", "static analysis" ], "support": { "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", "source": "https://github.com/squizlabs/PHP_CodeSniffer", "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" }, "time": "2022-06-18T07:21:10+00:00" "time": "2023-02-22T23:07:41+00:00" }, { "name": "symfony/config", Loading
front/Application/UI/UCalendar.vue +63 −9 Original line number Diff line number Diff line Loading @@ -29,14 +29,27 @@ <div class="num-jour badge bg-secondary rounded-circle">{{ jour < 10 ? '0' + jour.toString() : jour }}</div> </th> <td> <div> <div class="alert alert-info" v-for="event in eventsByJour(jour)"> <component :is="event.component" :event="event"/> <div class="event" :style="'border-color:'+event.color" v-for="(event,index) in eventsByJour(jour)" :key="index"> <div class="event-content"> <component :is="event.component" :event="event"></component> </div> <div class="event-actions"> <div class="btn-group btn-group-sm"> <button class="btn btn-light" @click="editEvent" :data-index="index"> <u-icon name="pen-to-square"/> </button> <button class="btn btn-light" @click="deleteEvent" :data-index="index"> <u-icon name="trash-can" class="text-danger"/> </button> </div> </div> </div> <div v-if="canAddEvent"> <button @click="addEvent" :data-jour="jour" class="btn btn-light btn-sm"><u-icon name="plus" /> Nouvel événement</button> <button @click="addEvent" :data-jour="jour" class="btn btn-light btn-sm"> <u-icon name="plus"/> Nouvel événement </button> </div> </td> </tr> Loading Loading @@ -74,7 +87,7 @@ export default { let nombreJours = dateObj.getDate(); return Array.from({length: nombreJours}, (v, k) => k + 1) } }, }, watch: { date: function (newVal, oldVal) { // watch it Loading Loading @@ -137,11 +150,23 @@ export default { addEvent(event) { const dateObj = new Date(this.date); dateObj.setDate(event.target.dataset.jour); dateObj.setDate(event.currentTarget.dataset.jour); this.$emit('addEvent', dateObj); }, editEvent(event) { const index = event.currentTarget.dataset.index; this.$emit('editEvent', this.events[index]); }, deleteEvent(event) { const index = event.currentTarget.dataset.index; this.$emit('deleteEvent', this.events[index]); }, prevMois() { const dateObj = new Date(this.date); Loading @@ -162,14 +187,14 @@ export default { { const dateObj = new Date(this.date); let res = []; let res = {}; for (let e in this.events) { let event = this.events[e]; if (event.date.getFullYear() === dateObj.getFullYear() && event.date.getMonth() + 1 === dateObj.getMonth() + 1 && event.date.getDate() === jour ) { res.push(event); res[e] = event; } } return res; Loading @@ -180,8 +205,14 @@ export default { <style scoped> .table tr { background-color: #f4f4f4; border-left: 1px #ddd solid; border-right: 1px #ddd solid; } .table-hover tr:hover { background-color:lightyellow; background-color: #f7f7f7; } .recherche { Loading @@ -199,6 +230,7 @@ export default { th.nom-jour { width: 1%; padding-left: 3px; } th.numero-jour { Loading @@ -211,4 +243,26 @@ th.numero-jour { padding-bottom: 5px; } .event { display: flex; justify-content: space-between; align-items: center; margin-bottom: 3px; border-left: 10px #bbb solid; border-right: 10px #bbb solid; } .event:hover { background-color: white; } .event-content { flex-grow: 1; } .event-actions { align-self: flex-start; } </style> No newline at end of file
front/Application/UI/UFormDate.vue 0 → 100644 +45 −0 Original line number Diff line number Diff line <template> <div class="mb-2"> <label :for="id ? id : name" class="form-label">{{ label }}</label> <input type="date" :name="name" :id="id ? id : name" class="form-control" v-model="dateVal" :disabled="disabled"/> </div> </template> <script> export default { name: "UFormDate", props: { id: {type: String, required: false}, name: {type: String, required: true}, label: {type: String, required: true, default: 'Inconnu'}, modelValue: {required: true, default: undefined}, disabled: {type: Boolean, required: false, default: false}, }, data() { return { dateVal: undefined }; }, watch: { modelValue: function (val) { let value = val; if (val instanceof Date) { value = Util.dateToString(val); } if (val instanceof String) { value = val.slice(0, 10); } this.dateVal = value; }, dateVal: function (val) { this.$emit("update:modelValue", new Date(val)); }, } } </script> <style scoped> </style> No newline at end of file
front/Mission/Liste.vue +1 −1 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ export default { methods: { ajout(event) { modAjax(event.target, (widget) => { modAjax(event.currentTarget, (widget) => { this.reload(); }); }, Loading
front/Mission/Mission.vue +10 −10 Original line number Diff line number Diff line Loading @@ -212,46 +212,46 @@ export default { }, saisie(event) { modAjax(event.target, (widget) => { modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, supprimer(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('supprimer', this.mission); }); }, valider(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, devalider(event) { popConfirm(event.target, (response) => { popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireSupprimer(event) { event.target.href = Util.url('mission/volume-horaire/supprimer/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/supprimer/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireValider(event) { event.target.href = Util.url('mission/volume-horaire/valider/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/valider/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, volumeHoraireDevalider(event) { event.target.href = Util.url('mission/volume-horaire/devalider/:missionVolumeHoraire', {missionVolumeHoraire: event.target.dataset.id}); popConfirm(event.target, (response) => { event.currentTarget.href = Util.url('mission/volume-horaire/devalider/:missionVolumeHoraire', {missionVolumeHoraire: event.currentTarget.dataset.id}); popConfirm(event.currentTarget, (response) => { this.$emit('refresh', response.data); }); }, Loading