|| ###################################################################
\*=====================================================================*/
-$GLOBALS['isso:callback']->load('api', null);
-
+require_once ISSO . '/Api.php';
require_once('./includes/functions_datastore.php');
/**
* @package Bugdar
*
*/
-class UsergroupAPI extends API
+class UsergroupAPI extends BSApi
{
/**
- * Fields
- * @var array
- * @access private
- */
- var $fields = array(
- 'usergroupid' => array(TYPE_UINT, REQ_AUTO, 'verify_nozero'),
- 'title' => array(TYPE_STR, REQ_YES, 'verify_noempty'),
+ * Fields
+ * @var array
+ */
+ protected $fields = array(
+ 'usergroupid' => array(TYPE_UINT, REQ_AUTO),
+ 'title' => array(TYPE_STR, REQ_YES),
'displaytitle' => array(TYPE_STR, REQ_NO),
'permissions' => array(TYPE_UINT, REQ_NO)
);
/**
- * Database table
- * @var string
- * @access private
- */
- var $table = 'usergroup';
+ * Database table
+ * @var string
+ */
+ protected $table = 'usergroup';
/**
- * Table prefix
- * @var string
- * @access private
- */
- var $prefix = TABLE_PREFIX;
+ * Table prefix
+ * @var string
+ */
+ protected $prefix = TABLE_PREFIX;
- // ###################################################################
/**
- * Post-insert
- *
- * @access private
- */
- function post_insert()
+ * Post-insert
+ */
+ protected function post_insert()
{
build_usergroups();
}
- // ###################################################################
/**
- * Post-update
- *
- * @access private
- */
- function post_update()
+ * Post-update
+ */
+ protected function post_update()
{
build_usergroups();
build_assignedto();
}
- // ###################################################################
/**
- * Pre-delete
- *
- * @access private
- */
- function pre_delete()
+ * Pre-delete
+ */
+ protected function pre_delete()
{
if ($this->values['usergroupid'] < 7)
{
- return T('You can\'t delete a default usergroup.');
+ throw new FieldException(T('You can\'t delete a default usergroup.'), 'usergroupid');
+ return false;
}
}
- // ###################################################################
/**
- * Post-delete
- *
- * @access private
- */
- function post_delete()
+ * Post-delete
+ */
+ protected function post_delete()
{
- $this->registry->db->query("DELETE FROM " . TABLE_PREFIX . "permission WHERE usergroupid = " . $this->values['usergroupid']);
- $this->registry->db->query("DELETE FROM " . TABLE_PREFIX . "bugfieldpermission WHERE usergroupid = " . $this->values['usergroupid']);
- $this->registry->db->query("UPDATE " . TABLE_PREFIX . "user SET usergroupid = 2 WHERE usergroupid = " . $this->values['usergroupid']);
+ BSApp::$db->query("DELETE FROM " . TABLE_PREFIX . "permission WHERE usergroupid = " . $this->values['usergroupid']);
+ BSApp::$db->query("DELETE FROM " . TABLE_PREFIX . "bugfieldpermission WHERE usergroupid = " . $this->values['usergroupid']);
+ BSApp::$db->query("UPDATE " . TABLE_PREFIX . "user SET usergroupid = 2 WHERE usergroupid = " . $this->values['usergroupid']);
build_usergroups();
build_permissions();
build_assignedto();
}
+
+ /**
+ * Validate: usergroupid
+ */
+ protected function validate_usergroupid($field)
+ {
+ return $this->_verifyIsNotZero($field);
+ }
+
+ /**
+ * Validate: usergroup
+ */
+ protected function validate_usergroup($field)
+ {
+ return $this->_verifyIsNotEmpty($field);
+ }
}
/*=====================================================================*\