protected function _gridUpdate($params) { if (isset($params['id']) && is_array($params['id']) && 2 == count($params) && isset($params['status'])) { $currentUserId = iaUsers::getIdentity()->id; if (in_array($currentUserId, $params['id'])) { $totalAdminsCount = (int) $this->_iaDb->one_bind(iaDb::STMT_COUNT_ROWS, '`usergroup_id` = :group AND `status` = :status AND `id` != :id', array('group' => iaUsers::MEMBERSHIP_ADMINISTRATOR, 'status' => iaCore::STATUS_ACTIVE, 'id' => $currentUserId)); if (0 == $totalAdminsCount && $params['status'] != iaCore::STATUS_ACTIVE) { return array('result' => false, 'message' => iaLanguage::get('action_not_allowed_since_you_only_admin')); } } } return parent::_gridUpdate($params); }