Skip to content

Commit

Permalink
[REF] use CarbonImmutable instead of Carbon
Browse files Browse the repository at this point in the history
  • Loading branch information
n3o77 committed Sep 5, 2023
1 parent ad76f2c commit 80572c6
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 28 deletions.
38 changes: 19 additions & 19 deletions src/FilterType/DateFilterType.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

namespace Unlooped\GridBundle\FilterType;

use Carbon\Carbon;
use Carbon\CarbonImmutable;
use DateTimeInterface;
use Doctrine\ORM\QueryBuilder;
use Exception;
Expand Down Expand Up @@ -122,7 +122,7 @@ public static function createDefaultData(
*/
public static function createDefaultDataForDate(string $operator, DateTimeInterface $dateTime): DefaultFilterDataStruct
{
return static::createDefaultData($operator, Carbon::instance($dateTime)->toFormattedDateString());
return static::createDefaultData($operator, CarbonImmutable::instance($dateTime)->toFormattedDateString());
}

public function configureOptions(OptionsResolver $resolver): void
Expand Down Expand Up @@ -157,9 +157,9 @@ public function handleFilter(QueryBuilder $qb, FilterRow $filterRow, array $opti
}

try {
$date = Carbon::parse($value, $options['view_timezone'])->startOfDay();
$date = CarbonImmutable::parse($value, $options['view_timezone'])->startOfDay();
} catch (Exception $e) {
$date = Carbon::now($options['view_timezone'])->startOfDay();
$date = CarbonImmutable::now($options['view_timezone'])->startOfDay();
}

if (static::EXPR_EQ === $op) {
Expand All @@ -181,7 +181,7 @@ public function handleFilter(QueryBuilder $qb, FilterRow $filterRow, array $opti

public function replaceVarsInValue(string $value, array $options = []): string
{
$now = Carbon::now($options['view_timezone']);
$now = CarbonImmutable::now($options['view_timezone']);
$now->settings([
'monthOverflow' => false,
'yearOverflow' => false,
Expand Down Expand Up @@ -213,40 +213,40 @@ public function replaceVarsInValue(string $value, array $options = []): string
return $now->subWeeks(4)->startOfDay()->toFormattedDateString();

case 'START_OF_WEEK_MONDAY':
return $now->startOfWeek(Carbon::MONDAY)->toFormattedDateString();
return $now->startOfWeek(CarbonImmutable::MONDAY)->toFormattedDateString();

case 'START_OF_WEEK_SUNDAY':
return $now->startOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->startOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'START_OF_LAST_WEEK_MONDAY':
return $now->subWeek()->startOfWeek(Carbon::MONDAY)->toFormattedDateString();
return $now->subWeek()->startOfWeek(CarbonImmutable::MONDAY)->toFormattedDateString();

case 'START_OF_LAST_WEEK_SUNDAY':
return $now->subWeek()->startOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->subWeek()->startOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'START_OF_NEXT_WEEK_MONDAY':
return $now->addWeek()->startOfWeek(Carbon::MONDAY)->toFormattedDateString();
return $now->addWeek()->startOfWeek(CarbonImmutable::MONDAY)->toFormattedDateString();

case 'START_OF_NEXT_WEEK_SUNDAY':
return $now->addWeek()->startOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->addWeek()->startOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'END_OF_WEEK_SUNDAY':
return $now->endOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->endOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'END_OF_WEEK_SATURDAY':
return $now->endOfWeek(Carbon::SATURDAY)->toFormattedDateString();
return $now->endOfWeek(CarbonImmutable::SATURDAY)->toFormattedDateString();

case 'END_OF_LAST_WEEK_SUNDAY':
return $now->subWeek()->endOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->subWeek()->endOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'END_OF_LAST_WEEK_SATURDAY':
return $now->subWeek()->endOfWeek(Carbon::SATURDAY)->toFormattedDateString();
return $now->subWeek()->endOfWeek(CarbonImmutable::SATURDAY)->toFormattedDateString();

case 'END_OF_NEXT_WEEK_SUNDAY':
return $now->addWeek()->endOfWeek(Carbon::SUNDAY)->toFormattedDateString();
return $now->addWeek()->endOfWeek(CarbonImmutable::SUNDAY)->toFormattedDateString();

case 'END_OF_NEXT_WEEK_SATURDAY':
return $now->addWeek()->endOfWeek(Carbon::SATURDAY)->toFormattedDateString();
return $now->addWeek()->endOfWeek(CarbonImmutable::SATURDAY)->toFormattedDateString();

case 'START_OF_MONTH':
return $now->startOfMonth()->toFormattedDateString();
Expand Down Expand Up @@ -369,7 +369,7 @@ public function postSetFormData($builder, array $options = [], $data = null, For
$builder->get('_variables')->setData($data->getValue());
} elseif (static::VALUE_CHOICE_DATE === $valueType) {
if ($data->getValue()) {
$builder->get('_dateValue')->setData(Carbon::parse($data->getValue()));
$builder->get('_dateValue')->setData(CarbonImmutable::parse($data->getValue()));
}
}
}
Expand All @@ -378,7 +378,7 @@ public function postFormSubmit($builder, array $options = [], $data = null, Form
{
$valueType = $builder->get('_valueChoices')->getData();
if (static::VALUE_CHOICE_DATE === $valueType) {
$date = null !== $builder->get('_dateValue')->getData() ? Carbon::parse($builder->get('_dateValue')->getData())->toFormattedDateString() : null;
$date = null !== $builder->get('_dateValue')->getData() ? CarbonImmutable::parse($builder->get('_dateValue')->getData())->toFormattedDateString() : null;
$data->setValue($date);
$data->addMetaData('value_type', $valueType);
} elseif (static::VALUE_CHOICE_VARIABLES === $valueType) {
Expand Down
18 changes: 9 additions & 9 deletions src/FilterType/DateRangeFilterType.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

namespace Unlooped\GridBundle\FilterType;

use Carbon\Carbon;
use Carbon\CarbonImmutable;
use DateTimeInterface;
use Doctrine\ORM\QueryBuilder;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
Expand Down Expand Up @@ -34,8 +34,8 @@ public static function createDefaultDataForDateRange(DateTimeInterface $fromDate
$dto->operator = static::EXPR_IN_RANGE;
$dto->metaData = [
'value_type' => static::VALUE_CHOICE_DATE,
'dateValue_from' => Carbon::instance($fromDate)->toFormattedDateString(),
'dateValue_to' => Carbon::instance($toDate)->toFormattedDateString(),
'dateValue_from' => CarbonImmutable::instance($fromDate)->toFormattedDateString(),
'dateValue_to' => CarbonImmutable::instance($toDate)->toFormattedDateString(),
];

return $dto;
Expand Down Expand Up @@ -70,7 +70,7 @@ public function handleFilter(QueryBuilder $qb, FilterRow $filterRow, array $opti
$startValue = $this->replaceVarsInValue($startValue, $options);
}

$startDate = Carbon::parse($startValue, $options['view_timezone'])->startOfDay();
$startDate = CarbonImmutable::parse($startValue, $options['view_timezone'])->startOfDay();

$qb->andWhere($qb->expr()->gte($field, ':value_start_'.$suffix));
$qb->setParameter('value_start_'.$suffix, $startDate->timezone($options['target_timezone']));
Expand All @@ -81,7 +81,7 @@ public function handleFilter(QueryBuilder $qb, FilterRow $filterRow, array $opti
$endValue = $this->replaceVarsInValue($endValue, $options);
}

$endDate = Carbon::parse($endValue, $options['view_timezone'])->addDay()->startOfDay();
$endDate = CarbonImmutable::parse($endValue, $options['view_timezone'])->addDay()->startOfDay();
$qb->andWhere($qb->expr()->lt($field, ':value_end_'.$suffix));
$qb->setParameter('value_end_'.$suffix, $endDate->timezone($options['target_timezone']));
}
Expand Down Expand Up @@ -175,17 +175,17 @@ public function postSetFormData($builder, array $options = [], $data = null, For
$builder->get('_variables_from')->setData($metaData['variable_from']);
$builder->get('_variables_to')->setData($metaData['variable_to']);
} elseif (static::VALUE_CHOICE_DATE === $valueType) {
$builder->get('_dateValue_from')->setData(Carbon::parse($metaData['dateValue_from']));
$builder->get('_dateValue_to')->setData(Carbon::parse($metaData['dateValue_to']));
$builder->get('_dateValue_from')->setData(CarbonImmutable::parse($metaData['dateValue_from']));
$builder->get('_dateValue_to')->setData(CarbonImmutable::parse($metaData['dateValue_to']));
}
}

public function postFormSubmit($builder, array $options = [], $data = null, FormEvent $event = null): void
{
$valueType = $builder->get('_valueChoices')->getData();
if (static::VALUE_CHOICE_DATE === $valueType) {
$dateFrom = null !== $builder->get('_dateValue_from')->getData() ? Carbon::parse($builder->get('_dateValue_from')->getData())->toFormattedDateString() : null;
$dateTo = null !== $builder->get('_dateValue_to')->getData() ? Carbon::parse($builder->get('_dateValue_to')->getData())->toFormattedDateString() : null;
$dateFrom = null !== $builder->get('_dateValue_from')->getData() ? CarbonImmutable::parse($builder->get('_dateValue_from')->getData())->toFormattedDateString() : null;
$dateTo = null !== $builder->get('_dateValue_to')->getData() ? CarbonImmutable::parse($builder->get('_dateValue_to')->getData())->toFormattedDateString() : null;

$data->setMetaData([
'operator' => $data->getOperator(),
Expand Down

0 comments on commit 80572c6

Please sign in to comment.