mirror of
				https://gitlab.com/Chill-Projet/chill-bundles.git
				synced 2025-10-31 01:08:26 +00:00 
			
		
		
		
	Compare commits
	
		
			8 Commits
		
	
	
		
			43-wopi-us
			...
			export-202
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 01790fa0cf | |||
| 582983f5ef | |||
| 1f48900434 | |||
| 91494c07d5 | |||
| c05d153029 | |||
| 5fea61c450 | |||
| e7ac8aafe1 | |||
| 99455ca685 | 
| @@ -60,7 +60,7 @@ class ByCreatorAggregator implements AggregatorInterface | ||||
|                 return 'Created by'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class BySocialActionAggregator implements AggregatorInterface | ||||
|                 return 'Social action'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class BySocialIssueAggregator implements AggregatorInterface | ||||
|                 return 'Social issues'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class ByThirdpartyAggregator implements AggregatorInterface | ||||
|                 return 'Accepted thirdparty'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class CreatorScopeAggregator implements AggregatorInterface | ||||
|                 return 'Scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,11 +65,13 @@ class LocationTypeAggregator implements AggregatorInterface | ||||
|                 return 'Accepted locationtype'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $lt = $this->locationTypeRepository->find($value); | ||||
|             if (null === $lt = $this->locationTypeRepository->find($value)) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|                 $lt->getTitle() | ||||
|   | ||||
| @@ -71,7 +71,7 @@ class ActivityTypeAggregator implements AggregatorInterface | ||||
|                 return 'Activity type'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -66,7 +66,7 @@ class ActivityUserAggregator implements AggregatorInterface | ||||
|                 return 'Activity user'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -64,7 +64,7 @@ class ActivityUsersAggregator implements AggregatorInterface | ||||
|                 return 'Activity users'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -63,7 +63,7 @@ class ActivityUsersJobAggregator implements \Chill\MainBundle\Export\AggregatorI | ||||
|                 return 'Users \'s job'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -63,7 +63,7 @@ class ActivityUsersScopeAggregator implements \Chill\MainBundle\Export\Aggregato | ||||
|                 return 'Users \'s scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -134,6 +134,10 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali | ||||
|                 return 'reasons' === $data['level'] ? 'Group by reasons' : 'Group by categories of reason'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             switch ($data['level']) { | ||||
|                 case 'reasons': | ||||
|                     $r = $this->activityReasonRepository->find($value); | ||||
|   | ||||
| @@ -57,6 +57,7 @@ class SentReceivedAggregator implements AggregatorInterface | ||||
|  | ||||
|             switch ($value) { | ||||
|                 case null: | ||||
|                 case '': | ||||
|                     return ''; | ||||
|  | ||||
|                 case 'sent': | ||||
|   | ||||
| @@ -17,11 +17,9 @@ use Chill\ActivityBundle\Repository\ActivityTypeRepositoryInterface; | ||||
| use Chill\MainBundle\Export\FilterInterface; | ||||
| use Chill\MainBundle\Templating\TranslatableStringHelperInterface; | ||||
| use Chill\PersonBundle\Export\Declarations; | ||||
| use Doctrine\ORM\Query\Expr; | ||||
| use Doctrine\ORM\QueryBuilder; | ||||
| use Symfony\Bridge\Doctrine\Form\Type\EntityType; | ||||
| use Symfony\Component\Form\FormBuilderInterface; | ||||
| use function in_array; | ||||
|  | ||||
| class ActivityTypeFilter implements FilterInterface | ||||
| { | ||||
| @@ -44,14 +42,13 @@ class ActivityTypeFilter implements FilterInterface | ||||
|  | ||||
|     public function alterQuery(QueryBuilder $qb, $data) | ||||
|     { | ||||
|         if (!in_array('activity', $qb->getAllAliases(), true)) { | ||||
|             $qb->join(Activity::class, 'activity', Expr\Join::WITH, 'activity.accompanyingPeriod = acp'); | ||||
|         } | ||||
|  | ||||
|         $clause = $qb->expr()->in('activity.activityType', ':selected_activity_types'); | ||||
|  | ||||
|         $qb->andWhere($clause); | ||||
|         $qb->setParameter('selected_activity_types', $data['types']); | ||||
|         $qb->andWhere( | ||||
|             $qb->expr()->exists( | ||||
|                 'SELECT 1 FROM ' . Activity::class . ' act_type_filter_activity | ||||
|                 WHERE act_type_filter_activity.activityType IN (:act_type_filter_activity_types) AND act_type_filter_activity.accompanyingPeriod = acp' | ||||
|             ) | ||||
|         ); | ||||
|         $qb->setParameter('act_type_filter_activity_types', $data['accepted_activitytypes']); | ||||
|     } | ||||
|  | ||||
|     public function applyOn() | ||||
|   | ||||
| @@ -66,6 +66,10 @@ final class AgentAggregator implements AggregatorInterface | ||||
|                 return 'Agent'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $r = $this->userRepository->find($value); | ||||
|  | ||||
|             return $this->userRender->renderString($r, []); | ||||
|   | ||||
| @@ -67,6 +67,10 @@ class CancelReasonAggregator implements AggregatorInterface | ||||
|                 return 'Cancel reason'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $j = $this->cancelReasonRepository->find($value); | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|   | ||||
| @@ -66,6 +66,10 @@ final class JobAggregator implements AggregatorInterface | ||||
|                 return 'Job'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $j = $this->jobRepository->find($value); | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|   | ||||
| @@ -60,6 +60,10 @@ final class LocationAggregator implements AggregatorInterface | ||||
|                 return 'Location'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $l = $this->locationRepository->find($value); | ||||
|  | ||||
|             return $l->getName(); | ||||
|   | ||||
| @@ -66,7 +66,13 @@ final class LocationTypeAggregator implements AggregatorInterface | ||||
|                 return 'Location type'; | ||||
|             } | ||||
|  | ||||
|             $j = $this->locationTypeRepository->find($value); | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             if (null === $j = $this->locationTypeRepository->find($value)) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|                 $j->getTitle() | ||||
|   | ||||
| @@ -66,6 +66,10 @@ final class ScopeAggregator implements AggregatorInterface | ||||
|                 return 'Scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $s = $this->scopeRepository->find($value); | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|   | ||||
| @@ -11,6 +11,7 @@ declare(strict_types=1); | ||||
|  | ||||
| namespace Chill\MainBundle\Security\Authorization; | ||||
|  | ||||
| use Chill\MainBundle\Entity\Scope; | ||||
| use Chill\MainBundle\Entity\User; | ||||
| use Symfony\Component\Security\Core\Security; | ||||
|  | ||||
|   | ||||
| @@ -11,6 +11,9 @@ declare(strict_types=1); | ||||
|  | ||||
| namespace Chill\MainBundle\Security\Authorization; | ||||
|  | ||||
| use Chill\MainBundle\Entity\Center; | ||||
| use Chill\MainBundle\Entity\Scope; | ||||
|  | ||||
| interface AuthorizationHelperForCurrentUserInterface | ||||
| { | ||||
|     /** | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class AdministrativeLocationAggregator implements AggregatorInterface | ||||
|                 return 'Administrative location'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -60,7 +60,7 @@ class ClosingMotiveAggregator implements AggregatorInterface | ||||
|                 return 'Closing motive'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ class CreatorJobAggregator implements AggregatorInterface | ||||
|                 return 'export.aggregator.course.by_creator_job.Creator\'s job'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || null === $j = $this->jobRepository->find($value)) { | ||||
|             if (null === $value || '' === $value || null === $j = $this->jobRepository->find($value)) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -69,7 +69,7 @@ final class EvaluationAggregator implements AggregatorInterface | ||||
|                 return 'Evaluation'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -143,7 +143,7 @@ final class GeographicalUnitStatAggregator implements AggregatorInterface | ||||
|                         return 'acp_geog_agg_unitname'; | ||||
|                     } | ||||
|  | ||||
|                     if (null === $value) { | ||||
|                     if (null === $value || '' === $value) { | ||||
|                         return ''; | ||||
|                     } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ final class JobAggregator implements AggregatorInterface | ||||
|                 return 'Job'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -67,7 +67,7 @@ final class OriginAggregator implements AggregatorInterface | ||||
|                 return 'Origin'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -94,7 +94,7 @@ final class ReferrerAggregator implements AggregatorInterface | ||||
|                 return 'Referrer'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -101,7 +101,7 @@ class ReferrerScopeAggregator implements AggregatorInterface | ||||
|                 return 'export.aggregator.course.by_user_scope.Referrer\'s scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,11 +65,13 @@ final class ScopeAggregator implements AggregatorInterface | ||||
|                 return 'Scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $s = $this->scopeRepository->find($value); | ||||
|             if (null === $s = $this->scopeRepository->find($value)) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             return $this->translatableStringHelper->localize( | ||||
|                 $s->getName() | ||||
|   | ||||
| @@ -66,11 +66,13 @@ final class SocialActionAggregator implements AggregatorInterface | ||||
|                 return 'Social action'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $sa = $this->actionRepository->find($value); | ||||
|             if (null === $sa = $this->actionRepository->find($value)) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             return $this->actionRender->renderString($sa, []); | ||||
|         }; | ||||
|   | ||||
| @@ -66,6 +66,10 @@ final class SocialIssueAggregator implements AggregatorInterface | ||||
|                 return 'Social issues'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $i = $this->issueRepository->find($value); | ||||
|  | ||||
|             return $this->issueRender->renderString($i, []); | ||||
|   | ||||
| @@ -98,6 +98,7 @@ final class StepAggregator implements AggregatorInterface | ||||
|                     return 'Step'; | ||||
|  | ||||
|                 case null: | ||||
|                 case '': | ||||
|                     return ''; | ||||
|  | ||||
|                 default: | ||||
|   | ||||
| @@ -60,7 +60,7 @@ class EvaluationTypeAggregator implements AggregatorInterface | ||||
|                 return 'Evaluation type'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -89,7 +89,7 @@ class CompositionAggregator implements AggregatorInterface | ||||
|                 return 'Composition'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -105,7 +105,7 @@ class ByHouseholdCompositionAggregator implements AggregatorInterface | ||||
|                 return 'export.aggregator.person.by_household_composition.Household composition'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -66,6 +66,7 @@ final class GenderAggregator implements AggregatorInterface | ||||
|                     return $this->translator->trans('unknown'); | ||||
|  | ||||
|                 case null: | ||||
|                 case '': | ||||
|                     return $this->translator->trans('Not given'); | ||||
|  | ||||
|                 case '_header': | ||||
|   | ||||
| @@ -101,7 +101,7 @@ final class HouseholdPositionAggregator implements AggregatorInterface, ExportEl | ||||
|                 return 'Household position'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return $this->translator->trans('without data'); | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -63,6 +63,10 @@ final class MaritalStatusAggregator implements AggregatorInterface | ||||
|                 return 'Marital status'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|             $g = $this->maritalStatusRepository->find($value); | ||||
|  | ||||
|             return $this->translatableStringHelper->localize($g->getName()); | ||||
|   | ||||
| @@ -85,7 +85,7 @@ final class ActionTypeAggregator implements AggregatorInterface | ||||
|                         return 'Social Action Type'; | ||||
|                     } | ||||
|  | ||||
|                     if (null === $value || null === $sa = $this->socialActionRepository->find($value)) { | ||||
|                     if (null === $value || '' === $value || null === $sa = $this->socialActionRepository->find($value)) { | ||||
|                         return ''; | ||||
|                     } | ||||
|  | ||||
|   | ||||
| @@ -63,7 +63,7 @@ final class GoalAggregator implements AggregatorInterface | ||||
|                 return 'Goal Type'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -72,7 +72,7 @@ class GoalResultAggregator implements AggregatorInterface | ||||
|     public function getLabels($key, array $values, $data) | ||||
|     { | ||||
|         return function ($value) use ($key): string { | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ final class JobAggregator implements AggregatorInterface | ||||
|                 return 'Job'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ final class ReferrerAggregator implements AggregatorInterface | ||||
|                 return 'Referrer'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -63,7 +63,7 @@ final class ResultAggregator implements AggregatorInterface | ||||
|                 return 'Result Type'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -65,7 +65,7 @@ final class ScopeAggregator implements AggregatorInterface | ||||
|                 return 'Scope'; | ||||
|             } | ||||
|  | ||||
|             if (null === $value) { | ||||
|             if (null === $value || '' === $value) { | ||||
|                 return ''; | ||||
|             } | ||||
|  | ||||
|   | ||||
| @@ -70,11 +70,11 @@ class GeographicalUnitStatFilter implements FilterInterface | ||||
|             LEFT JOIN acp_geog_filter_address.geographicalUnits acp_geog_filter_units | ||||
|             WHERE | ||||
|                 (acp_geog_filter_location_history.startDate <= :acp_geog_filter_date AND ( | ||||
|                     acp_geog_filter_location_history.endDate IS NULL OR acp_geog_filter_location_history.endDate < :acp_geog_filter_date | ||||
|                     acp_geog_filter_location_history.endDate IS NULL OR acp_geog_filter_location_history.endDate > :acp_geog_filter_date | ||||
|                 )) | ||||
|                 AND | ||||
|                 (acp_geog_filter_address_person_location.validFrom < :acp_geog_filter_date AND ( | ||||
|                     acp_geog_filter_address_person_location.validTo IS NULL OR acp_geog_filter_address_person_location.validTo < :acp_geog_filter_date | ||||
|                     acp_geog_filter_address_person_location.validTo IS NULL OR acp_geog_filter_address_person_location.validTo > :acp_geog_filter_date | ||||
|                 )) | ||||
|                 AND acp_geog_filter_units IN (:acp_geog_filter_units) | ||||
|                 AND acp_geog_filter_location_history.period = acp.id | ||||
|   | ||||
| @@ -111,10 +111,10 @@ class GeographicalUnitFilter implements \Chill\MainBundle\Export\FilterInterface | ||||
|     public function describeAction($data, $format = 'string') | ||||
|     { | ||||
|         return [ | ||||
|             'exports.by_person.Filtered by person\'s geographical unit (based on address) computed at datecalc, only units', | ||||
|             'export.filter.by_geog_unit.Filtered by person\'s geographical unit (based on address) computed at %datecalc%, only %units%', | ||||
|             [ | ||||
|                 'datecalc' => $this->rollingDateConverter->convert($data['date_calc'])->format('Y-m-d'), | ||||
|                 'units' => implode( | ||||
|                 '%datecalc%' => $this->rollingDateConverter->convert($data['date_calc'])->format('Y-m-d'), | ||||
|                 '%units%' => implode( | ||||
|                     ', ', | ||||
|                     array_map( | ||||
|                         function (SimpleGeographicalUnitDTO $item) { | ||||
|   | ||||
| @@ -1046,6 +1046,8 @@ export: | ||||
|                 Max date: Date d'échéance | ||||
|  | ||||
|     filter: | ||||
|         by_geog_unit: | ||||
|             Filtered by person's geographical unit (based on address) computed at %datecalc%, only %units%: Filtré par unité géographique (sur base de l'adresse), calculé le %datecalc%, seulement %units% | ||||
|         person: | ||||
|             by_composition: | ||||
|                 Filter by household composition: Filtrer les personnes par composition du ménage | ||||
|   | ||||
		Reference in New Issue
	
	Block a user