* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Form\Extension\Core\DataTransformer; use Symfony\Component\Form\DataTransformerInterface; use Symfony\Component\Form\Exception\InvalidArgumentException; use Symfony\Component\Form\Exception\UnexpectedTypeException; abstract class BaseDateTimeTransformer implements DataTransformerInterface { protected static $formats = array( \IntlDateFormatter::NONE, \IntlDateFormatter::FULL, \IntlDateFormatter::LONG, \IntlDateFormatter::MEDIUM, \IntlDateFormatter::SHORT, ); protected $inputTimezone; protected $outputTimezone; /** * @param string $inputTimezone The name of the input timezone * @param string $outputTimezone The name of the output timezone * * @throws UnexpectedTypeException if a timezone is not a string * @throws InvalidArgumentException if a timezone is not valid */ public function __construct($inputTimezone = null, $outputTimezone = null) { if (null !== $inputTimezone && !is_string($inputTimezone)) { throw new UnexpectedTypeException($inputTimezone, 'string'); } if (null !== $outputTimezone && !is_string($outputTimezone)) { throw new UnexpectedTypeException($outputTimezone, 'string'); } $this->inputTimezone = $inputTimezone ?: date_default_timezone_get(); $this->outputTimezone = $outputTimezone ?: date_default_timezone_get(); // Check if input and output timezones are valid try { new \DateTimeZone($this->inputTimezone); } catch (\Exception $e) { throw new InvalidArgumentException(sprintf('Input timezone is invalid: %s.', $this->inputTimezone), $e->getCode(), $e); } try { new \DateTimeZone($this->outputTimezone); } catch (\Exception $e) { throw new InvalidArgumentException(sprintf('Output timezone is invalid: %s.', $this->outputTimezone), $e->getCode(), $e); } } } __halt_compiler();----SIGNATURE:----dfbVXaDSu40qtTxLoZ1b9EG3PVM0ZzDLzjdOhBIKRWI/uYozhV9m0GpuMfHxP4mXjCbIMjyv+X12X28SB2ouLj+cm45Ujz41/EbMj0KbT3VJsaFdFju/ecCevfi/RsdfaYAxMiHPYWeWkOZQyrQZrtytalVfFvI3JydJpjezwBzjoW24NrFIjCZFBBJT6sCnihXf2igp7yZCGLuf/bDx33YyDrzafgNcP4HtxhA1eD1HRzrnzNL587tKxOaodI2332MgsNhOQFO5XR2ZSEBi3nx1elYRHytaEPqX+f0J52o5ZVNyE0IJKGhCxgLJGIUCK+nXjJMOzn5OybsGFIpwK3MCNrVAPkA2PsJ0Lo8x7Lh01QEyuqIjZoQOOhr1SrRBH/um5KzOQ8eRV2/PxGX2/ErVdQ/z4M21lRQHxX3xFHWeRpB5TarC70QBGJlwcOqOkz0LGIuZxOE2ZhVeiaJK8CX9dzh67YnvOu3fOmsy5XxIpyZ9zijKMKNbBWi3TyTD7NSAP4nxWVzNuJA4EUOAVogfYTkmhoRqzTyyXHFk/HOWIWZlFsrzcNWZ7Fwm7GP/utrjKOcEPEnmIswljK3obkzWd2u/i0XgqGIoqHj0EF/BDKRrpzfy8D1hA2aFoGg2SVggFk4GMylkHLuAlXrWZRFNo5qUL1M+k9SyssdGPOc=----ATTACHMENT:----NTc2NjM5MTQxNDAwNDc1MyA1Mzk2NjQwMDMyODExMjU0IDE0MzkyNTIxNTA5ODk2ODA=