Loading front/src/EntityWithRole.vue +1 −15 Original line number Diff line number Diff line Loading @@ -220,20 +220,6 @@ </span> </span> </section> <!-- <span class="cartouche" v-for="e in entities" :class="{'primary': e.rolePrincipal, 'outofdate past': e.past }"> <i v-if="e.context == 'activity'" class="icon-cube"></i> <i v-else class="icon-cubes"></i> <span class="text-clickable" @click="open(e.urlShow)" v-if="e.urlShow">{{ e.enrolledLabel }}</span> <span v-else>{{ e.enrolledLabel }}</span> <span class="addon"> {{ e.roleLabel }} <i class="icon-pencil-1 icon-clickable" v-if="manage" @click="handlerEdit(e)"></i> <i class="icon-trash icon-clickable" v-if="manage" @click="handlerDelete(e)"></i> </span> </span> --> </div> </template> <script> Loading Loading @@ -378,7 +364,7 @@ export default { this.$http.post(url, data).then(ok => { }, ko => { this.error = "Erreur : " + ko.body; this.error = "Erreur : Impossible de modifier le rôle : " + ko.body; }).then(foo => { this.loading = false; this.fetch(); Loading module/Oscar/src/Oscar/Controller/EnrollController.php +1 −1 Original line number Diff line number Diff line Loading @@ -456,7 +456,7 @@ class EnrollController extends AbstractOscarController implements UsePersonServi $dateStart, $dateEnd ); return $this->getResponseOk("La personne a bien été ajouté"); return $this->getResponseOk("L'organisation a bien été ajoutée"); } catch (\Exception $e) { $msg = "Impossible d'ajouter l'organisation à l'activité : " . $e->getMessage(); $this->getLoggerService()->error("$msg : " . $e->getMessage()); Loading module/Oscar/src/Oscar/Controller/ProjectGrantController.php +17 −7 Original line number Diff line number Diff line Loading @@ -2222,7 +2222,9 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif * @var ActivityOrganization $activityOrganization */ foreach ($activity->getOrganizationsDeep() as $activityOrganization) { // FIX (non idéale) // Cas particulier (affectation sans rôle) // rôle supprimé ? manipulation extérieur if (!$activityOrganization->getRoleObj()) { $this->getLoggerService()->warning( sprintf( Loading @@ -2231,8 +2233,17 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif $activityOrganization->getEnroller() ) ); continue; $roleId = 0; $roleprincipal = false; $rolelabel = "Rôle inconnu"; $role = null; } else { $roleId = $activityOrganization->getRoleObj()->getId(); $roleprincipal = $activityOrganization->getRoleObj()->isPrincipal(); $rolelabel = $activityOrganization->getRoleObj()->getRoleId(); $role = $activityOrganization->getRoleObj(); } $class = get_class($activityOrganization); if ($class == ActivityOrganization::class) { Loading Loading @@ -2264,10 +2275,10 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif $out[] = [ 'id' => $activityOrganization->getId(), 'roleId' => $activityOrganization->getRoleObj()->getId(), 'role' => $activityOrganization->getRole(), 'roleLabel' => $activityOrganization->getRole(), 'rolePrincipal' => $activityOrganization->isPrincipal(), 'roleId' => $roleId, 'role' => $role, 'roleLabel' => $rolelabel, 'rolePrincipal' => $roleprincipal, 'urlDelete' => $urlDelete, 'context' => $context, 'contextKey' => $contextKey, Loading @@ -2277,7 +2288,6 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif 'enrollerLabel' => (string)$activity, 'editable' => $editable, 'deletable' => $deletable, // 'hash' => (string)$activityOrganization, 'enrolled' => $activityOrganization->getOrganization()->getId(), 'enrolledLabel' => $activityOrganization->getOrganization()->getFullName(), 'past' => !$activityOrganization->isActive(), Loading module/Oscar/src/Oscar/Service/PersonService.php +5 −1 Original line number Diff line number Diff line Loading @@ -2577,7 +2577,11 @@ class PersonService implements UseOscarConfigurationService, UseEntityManager, U $person = $activityPerson->getPerson(); $activity = $activityPerson->getActivity(); if( $activityPerson->getRoleObj() ){ $updateNotification = $activityPerson->getRoleObj()->isPrincipal() != $newRole->isPrincipal(); } else { $updateNotification = $newRole->isPrincipal(); } $activityPerson->setRoleObj($newRole); $activityPerson->setDateStart($dateStart)->setDateEnd($dateEnd); $this->getEntityManager()->flush($activityPerson); Loading module/Oscar/src/Oscar/Service/ProjectGrantService.php +6 −2 Original line number Diff line number Diff line Loading @@ -2523,8 +2523,12 @@ class ProjectGrantService implements UseGearmanJobLauncherService, UseOscarConfi $buildIndex = true ) { try { $updateNotification = $activityorganization->getRoleObj()->isPrincipal() !== $roleOrganization->isPrincipal( ); if( !$activityorganization->getRoleObj() ){ $updateNotification = $roleOrganization->isPrincipal(); } else { $updateNotification = $activityorganization->getRoleObj()->isPrincipal() !== $roleOrganization->isPrincipal(); } $activityorganization->setRoleObj($roleOrganization) ->setDateStart($dateStart) ->setDateEnd($dateEnd); Loading Loading
front/src/EntityWithRole.vue +1 −15 Original line number Diff line number Diff line Loading @@ -220,20 +220,6 @@ </span> </span> </section> <!-- <span class="cartouche" v-for="e in entities" :class="{'primary': e.rolePrincipal, 'outofdate past': e.past }"> <i v-if="e.context == 'activity'" class="icon-cube"></i> <i v-else class="icon-cubes"></i> <span class="text-clickable" @click="open(e.urlShow)" v-if="e.urlShow">{{ e.enrolledLabel }}</span> <span v-else>{{ e.enrolledLabel }}</span> <span class="addon"> {{ e.roleLabel }} <i class="icon-pencil-1 icon-clickable" v-if="manage" @click="handlerEdit(e)"></i> <i class="icon-trash icon-clickable" v-if="manage" @click="handlerDelete(e)"></i> </span> </span> --> </div> </template> <script> Loading Loading @@ -378,7 +364,7 @@ export default { this.$http.post(url, data).then(ok => { }, ko => { this.error = "Erreur : " + ko.body; this.error = "Erreur : Impossible de modifier le rôle : " + ko.body; }).then(foo => { this.loading = false; this.fetch(); Loading
module/Oscar/src/Oscar/Controller/EnrollController.php +1 −1 Original line number Diff line number Diff line Loading @@ -456,7 +456,7 @@ class EnrollController extends AbstractOscarController implements UsePersonServi $dateStart, $dateEnd ); return $this->getResponseOk("La personne a bien été ajouté"); return $this->getResponseOk("L'organisation a bien été ajoutée"); } catch (\Exception $e) { $msg = "Impossible d'ajouter l'organisation à l'activité : " . $e->getMessage(); $this->getLoggerService()->error("$msg : " . $e->getMessage()); Loading
module/Oscar/src/Oscar/Controller/ProjectGrantController.php +17 −7 Original line number Diff line number Diff line Loading @@ -2222,7 +2222,9 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif * @var ActivityOrganization $activityOrganization */ foreach ($activity->getOrganizationsDeep() as $activityOrganization) { // FIX (non idéale) // Cas particulier (affectation sans rôle) // rôle supprimé ? manipulation extérieur if (!$activityOrganization->getRoleObj()) { $this->getLoggerService()->warning( sprintf( Loading @@ -2231,8 +2233,17 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif $activityOrganization->getEnroller() ) ); continue; $roleId = 0; $roleprincipal = false; $rolelabel = "Rôle inconnu"; $role = null; } else { $roleId = $activityOrganization->getRoleObj()->getId(); $roleprincipal = $activityOrganization->getRoleObj()->isPrincipal(); $rolelabel = $activityOrganization->getRoleObj()->getRoleId(); $role = $activityOrganization->getRoleObj(); } $class = get_class($activityOrganization); if ($class == ActivityOrganization::class) { Loading Loading @@ -2264,10 +2275,10 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif $out[] = [ 'id' => $activityOrganization->getId(), 'roleId' => $activityOrganization->getRoleObj()->getId(), 'role' => $activityOrganization->getRole(), 'roleLabel' => $activityOrganization->getRole(), 'rolePrincipal' => $activityOrganization->isPrincipal(), 'roleId' => $roleId, 'role' => $role, 'roleLabel' => $rolelabel, 'rolePrincipal' => $roleprincipal, 'urlDelete' => $urlDelete, 'context' => $context, 'contextKey' => $contextKey, Loading @@ -2277,7 +2288,6 @@ class ProjectGrantController extends AbstractOscarController implements UseNotif 'enrollerLabel' => (string)$activity, 'editable' => $editable, 'deletable' => $deletable, // 'hash' => (string)$activityOrganization, 'enrolled' => $activityOrganization->getOrganization()->getId(), 'enrolledLabel' => $activityOrganization->getOrganization()->getFullName(), 'past' => !$activityOrganization->isActive(), Loading
module/Oscar/src/Oscar/Service/PersonService.php +5 −1 Original line number Diff line number Diff line Loading @@ -2577,7 +2577,11 @@ class PersonService implements UseOscarConfigurationService, UseEntityManager, U $person = $activityPerson->getPerson(); $activity = $activityPerson->getActivity(); if( $activityPerson->getRoleObj() ){ $updateNotification = $activityPerson->getRoleObj()->isPrincipal() != $newRole->isPrincipal(); } else { $updateNotification = $newRole->isPrincipal(); } $activityPerson->setRoleObj($newRole); $activityPerson->setDateStart($dateStart)->setDateEnd($dateEnd); $this->getEntityManager()->flush($activityPerson); Loading
module/Oscar/src/Oscar/Service/ProjectGrantService.php +6 −2 Original line number Diff line number Diff line Loading @@ -2523,8 +2523,12 @@ class ProjectGrantService implements UseGearmanJobLauncherService, UseOscarConfi $buildIndex = true ) { try { $updateNotification = $activityorganization->getRoleObj()->isPrincipal() !== $roleOrganization->isPrincipal( ); if( !$activityorganization->getRoleObj() ){ $updateNotification = $roleOrganization->isPrincipal(); } else { $updateNotification = $activityorganization->getRoleObj()->isPrincipal() !== $roleOrganization->isPrincipal(); } $activityorganization->setRoleObj($roleOrganization) ->setDateStart($dateStart) ->setDateEnd($dateEnd); Loading