Loading module/Oscar/src/Oscar/Command/OscarDataControlPFICommand.php +5 −2 Original line number Diff line number Diff line Loading @@ -52,15 +52,18 @@ class OscarDataControlPFICommand extends OscarAdvancedCommandAbstract } $repport = $this->getProjectGrantService()->checkPFIRegex($regex, false); if( $repport['error'] ){ $this->getIO()->error($repport['error']); } $sep = ""; $this->getIO()->write("PFI conforme : "); foreach ($repport['valids'] as $pfi) { $this->getIO()->writeln("$sep<green>$pfi</green>"); $this->getIO()->write("$sep<green>$pfi</green>"); $sep = ", "; } $sep = ""; $this->getIO()->write("PFI non-conforme : "); $this->getIO()->write("\nPFI non-conforme : "); foreach ($repport['warnings'] as $pfi) { $this->getIO()->write("$sep<red>$pfi</red>"); $sep = ", "; Loading module/Oscar/src/Oscar/Controller/AdministrationController.php +5 −1 Original line number Diff line number Diff line Loading @@ -324,6 +324,8 @@ class AdministrationController extends AbstractOscarController implements UsePro case OscarConfigurationService::pfi_strict: $strict = $this->params()->fromPost(OscarConfigurationService::pfi_strict) == "on"; var_dump($strict); die(); $regex = $this->params()->fromPost(OscarConfigurationService::pfi_strict_format); if( $strict == true && !$regex ){ throw new OscarException("Vous ne pouvez pas appliquer le mode strict avec une expression régulière vide"); Loading @@ -340,6 +342,7 @@ class AdministrationController extends AbstractOscarController implements UsePro } $pfiFixed = $this->getOscarConfigurationService()->getPfiRegex(); return [ OscarConfigurationService::spents_account_filter => implode( ', ', Loading @@ -359,7 +362,8 @@ class AdministrationController extends AbstractOscarController implements UsePro 'organization_leader_role' => $organization_leader_role, OscarConfigurationService::document_use_version_in_name => $this->getOscarConfigurationService()->getDocumentUseVersionInName(), OscarConfigurationService::pfi_strict => $this->getOscarConfigurationService()->isPfiStrict(), OscarConfigurationService::pfi_strict_format => $this->getOscarConfigurationService()->getPfiRegex(), OscarConfigurationService::pfi_strict_format => $pfiFixed, "pfi_default_format" => $this->getOscarConfigurationService()->getConfiguration('validation.pfi'), ]; } Loading module/Oscar/src/Oscar/Service/OscarConfigurationService.php +2 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ class OscarConfigurationService implements ServiceLocatorAwareInterface public function isPfiStrict() :bool { $new = $this->getEditableConfKey(self::pfi_strict, null); if( $new == null ){ if( $new === null ){ return true; } return $new; Loading module/Oscar/src/Oscar/Service/ProjectGrantService.php +11 −1 Original line number Diff line number Diff line Loading @@ -175,19 +175,29 @@ class ProjectGrantService implements UseGearmanJobLauncherService, UseOscarConfi 'warnings' => [], 'valids' => [], 'count' => 0, 'valid' => false 'valid' => false, 'error' => [] ]; $badPfi = false; $pfi = $this->getActivityRepository()->getDistinctPFI(); foreach ($pfi as $pfiTested) { if( $pfiTested == "" ) continue; if( preg_match_all($regex, $pfiTested, $matches, PREG_SET_ORDER, 0)){ $out['valids'][] = $pfiTested; } else { $badPfi = "Un ou plusieurs PFI ne correspondent pas au format attendu"; $out['warnings'][] = $pfiTested; } $out['count']++; } if($badPfi){ $out['error'][] = $badPfi; } if(!$regex){ $out['error'][] = "Aucune regex renseignée"; } $out['valid'] = count($out['warnings']) == 0; Loading module/Oscar/view/oscar/administration/parameters.phtml +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ <span class="input-group-btn"> <button class="btn btn-default" type="button" id="verifyPfi" @click="handlerVerify" >Vérifier {{ reg }}</button> >Vérifier</button> </span> </div><!-- /input-group --> </div><!-- /.col-lg-6 --> Loading Loading
module/Oscar/src/Oscar/Command/OscarDataControlPFICommand.php +5 −2 Original line number Diff line number Diff line Loading @@ -52,15 +52,18 @@ class OscarDataControlPFICommand extends OscarAdvancedCommandAbstract } $repport = $this->getProjectGrantService()->checkPFIRegex($regex, false); if( $repport['error'] ){ $this->getIO()->error($repport['error']); } $sep = ""; $this->getIO()->write("PFI conforme : "); foreach ($repport['valids'] as $pfi) { $this->getIO()->writeln("$sep<green>$pfi</green>"); $this->getIO()->write("$sep<green>$pfi</green>"); $sep = ", "; } $sep = ""; $this->getIO()->write("PFI non-conforme : "); $this->getIO()->write("\nPFI non-conforme : "); foreach ($repport['warnings'] as $pfi) { $this->getIO()->write("$sep<red>$pfi</red>"); $sep = ", "; Loading
module/Oscar/src/Oscar/Controller/AdministrationController.php +5 −1 Original line number Diff line number Diff line Loading @@ -324,6 +324,8 @@ class AdministrationController extends AbstractOscarController implements UsePro case OscarConfigurationService::pfi_strict: $strict = $this->params()->fromPost(OscarConfigurationService::pfi_strict) == "on"; var_dump($strict); die(); $regex = $this->params()->fromPost(OscarConfigurationService::pfi_strict_format); if( $strict == true && !$regex ){ throw new OscarException("Vous ne pouvez pas appliquer le mode strict avec une expression régulière vide"); Loading @@ -340,6 +342,7 @@ class AdministrationController extends AbstractOscarController implements UsePro } $pfiFixed = $this->getOscarConfigurationService()->getPfiRegex(); return [ OscarConfigurationService::spents_account_filter => implode( ', ', Loading @@ -359,7 +362,8 @@ class AdministrationController extends AbstractOscarController implements UsePro 'organization_leader_role' => $organization_leader_role, OscarConfigurationService::document_use_version_in_name => $this->getOscarConfigurationService()->getDocumentUseVersionInName(), OscarConfigurationService::pfi_strict => $this->getOscarConfigurationService()->isPfiStrict(), OscarConfigurationService::pfi_strict_format => $this->getOscarConfigurationService()->getPfiRegex(), OscarConfigurationService::pfi_strict_format => $pfiFixed, "pfi_default_format" => $this->getOscarConfigurationService()->getConfiguration('validation.pfi'), ]; } Loading
module/Oscar/src/Oscar/Service/OscarConfigurationService.php +2 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ class OscarConfigurationService implements ServiceLocatorAwareInterface public function isPfiStrict() :bool { $new = $this->getEditableConfKey(self::pfi_strict, null); if( $new == null ){ if( $new === null ){ return true; } return $new; Loading
module/Oscar/src/Oscar/Service/ProjectGrantService.php +11 −1 Original line number Diff line number Diff line Loading @@ -175,19 +175,29 @@ class ProjectGrantService implements UseGearmanJobLauncherService, UseOscarConfi 'warnings' => [], 'valids' => [], 'count' => 0, 'valid' => false 'valid' => false, 'error' => [] ]; $badPfi = false; $pfi = $this->getActivityRepository()->getDistinctPFI(); foreach ($pfi as $pfiTested) { if( $pfiTested == "" ) continue; if( preg_match_all($regex, $pfiTested, $matches, PREG_SET_ORDER, 0)){ $out['valids'][] = $pfiTested; } else { $badPfi = "Un ou plusieurs PFI ne correspondent pas au format attendu"; $out['warnings'][] = $pfiTested; } $out['count']++; } if($badPfi){ $out['error'][] = $badPfi; } if(!$regex){ $out['error'][] = "Aucune regex renseignée"; } $out['valid'] = count($out['warnings']) == 0; Loading
module/Oscar/view/oscar/administration/parameters.phtml +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ <span class="input-group-btn"> <button class="btn btn-default" type="button" id="verifyPfi" @click="handlerVerify" >Vérifier {{ reg }}</button> >Vérifier</button> </span> </div><!-- /input-group --> </div><!-- /.col-lg-6 --> Loading