2 /*=====================================================================*\
3 || ###################################################################
5 || # Copyright ©2002-2007 Blue Static
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version 2 of the License.
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
22 require_once ISSO
. '/Api.php';
23 require_once('./includes/functions_datastore.php');
29 * @copyright Copyright ©2002 - 2007, Blue Static
34 class AutomationAPI
extends BSApi
40 protected $fields = array(
41 'actionid' => array(TYPE_UINT
, REQ_AUTO
),
42 'name' => array(TYPE_STR
, REQ_YES
),
43 'description' => array(TYPE_STR
, REQ_NO
),
44 'fieldchanges' => array(TYPE_NONE
, REQ_YES
),
45 'comment' => array(TYPE_STR
, REQ_NO
)
52 protected $table = 'automation';
58 protected $prefix = TABLE_PREFIX
;
63 protected function post_insert()
71 protected function post_update()
79 protected function post_delete()
87 protected function validate_actionid($field)
89 return $this->_verifyIsNotZero($field);
95 protected function validate_name($field)
97 return $this->_verifyIsNotEmpty($field);
101 * Validate: fieldchanges
103 protected function validate_fieldchanges()
105 if (!is_array($this->values
['fieldchanges']) ||
sizeof($this->values
['fieldchanges']) != 2 ||
!is_array($this->values
['fieldchanges']['custom']) ||
!is_array($this->values
['fieldchanges']['builtin']))
107 return T('Invalid array type passed. The fieldchaneges array must be a two-dimensional array: array("builtin" => array("fieldname" => "newvalue" ...), "custom" => array("fieldname" => "fieldvalue" ...))');
110 if (sizeof($this->values
['fieldchanges']['custom']) < 1 && sizeof($this->values
['fieldchanges']['builtin']) < 1)
112 return T('You need to specify some fields to change.');
115 $this->values
['fieldchanges'] = serialize($this->values
['fieldchanges']);
121 /*=====================================================================*\
122 || ###################################################################
125 || ###################################################################
126 \*=====================================================================*/