summaryrefslogtreecommitdiffstats
path: root/vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php')
-rw-r--r--vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php65
1 files changed, 65 insertions, 0 deletions
diff --git a/vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php b/vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php
new file mode 100644
index 0000000..68350b0
--- /dev/null
+++ b/vendor/simshaun/recurr/src/Recurr/Transformer/ArrayTransformerConfig.php
@@ -0,0 +1,65 @@
+<?php
+
+/*
+ * Copyright 2014 Shaun Simmons
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Recurr\Transformer;
+
+class ArrayTransformerConfig
+{
+ /** @var int */
+ protected $virtualLimit = 732;
+
+ protected $lastDayOfMonthFix = false;
+
+ /**
+ * Set the virtual limit imposed upon infinitely recurring events.
+ *
+ * @param int $virtualLimit The limit
+ *
+ * @return $this
+ */
+ public function setVirtualLimit($virtualLimit)
+ {
+ $this->virtualLimit = (int) $virtualLimit;
+
+ return $this;
+ }
+
+ /**
+ * Get the virtual limit imposed upon infinitely recurring events.
+ *
+ * @return int
+ */
+ public function getVirtualLimit()
+ {
+ return $this->virtualLimit;
+ }
+
+ /**
+ * By default, January 30 + 1 month results in March 30 because February doesn't have 30 days.
+ *
+ * Enabling this fix tells Recurr that +1 month means "last day of next month".
+ */
+ public function enableLastDayOfMonthFix()
+ {
+ $this->lastDayOfMonthFix = true;
+ }
+
+ public function disableLastDayOfMonthFix()
+ {
+ $this->lastDayOfMonthFix = false;
+ }
+
+ /**
+ * @return boolean
+ */
+ public function isLastDayOfMonthFixEnabled()
+ {
+ return $this->lastDayOfMonthFix;
+ }
+}