1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
<?php
/* --------------------------------------------------------------
DataTableColumnType.inc.php 2016-05-02
Gambio GmbH
http://www.gambio.de
Copyright (c) 2016 Gambio GmbH
Released under the GNU General Public License (Version 2)
[http://www.gnu.org/licenses/gpl-2.0.html]
--------------------------------------------------------------
*/
/**
* Class DataTableColumnType
*
* There are cases where each column is treated differently depending its data type.
*
* @category System
* @package Extensions
* @subpackage Helpers
*/
class DataTableColumnType extends StringType
{
// Supported column types.
const DATE = 'date';
const NUMBER = 'number';
const STRING = 'string';
/**
* DataTableColumnType constructor.
*
* @param string $value
*
* @throws InvalidArgumentException
*/
public function __construct($value)
{
parent::__construct($value);
$type = strtoupper($value); // 'DATE', 'STRING' or 'NUMBER'
if(!defined('self::' . $type))
{
throw new InvalidArgumentException('Invalid DataTableColumnType provided: ' . $value);
}
}
}