/** * * * @param integer $id */ public static function removeByID($id) { $db = eZDB::instance(); $db->begin(); $states = eZContentObjectState::fetchByGroup($id); foreach ($states as $state) { eZContentObjectState::removeByID($state->attribute('id')); } eZPersistentObject::removeObject(eZContentObjectStateGroupLanguage::definition(), array('contentobject_state_group_id' => $id)); eZPersistentObject::removeObject(eZContentObjectStateGroup::definition(), array('id' => $id)); $db->commit(); }
default: $limit = 10; break; } $languages = eZContentLanguage::fetchList(); $tpl = eZTemplate::factory(); eZDebug::writeDebug($Module->currentAction()); if ($Module->isCurrentAction('Remove') && $Module->hasActionParameter('RemoveIDList')) { $removeIDList = $Module->actionParameter('RemoveIDList'); foreach ($removeIDList as $removeID) { $group = eZContentObjectStateGroup::fetchById($removeID); if ($group && !$group->isInternal()) { eZContentObjectStateGroup::removeByID($removeID); } } } else { if ($Module->isCurrentAction('Create')) { return $Module->redirectTo('state/group_edit'); } } $groups = eZContentObjectStateGroup::fetchByOffset($limit, $offset); $groupCount = eZPersistentObject::count(eZContentObjectStateGroup::definition()); $viewParameters = array('offset' => $offset); $tpl->setVariable('limit', $limit); $tpl->setVariable('list_limit_preference_name', $listLimitPreferenceName); $tpl->setVariable('list_limit_preference_value', $listLimitPreferenceValue); $tpl->setVariable('groups', $groups); $tpl->setVariable('group_count', $groupCount); $tpl->setVariable('view_parameters', $viewParameters); $tpl->setVariable('languages', $languages); $Result = array('content' => $tpl->fetch('design:state/groups.tpl'), 'path' => array(array('url' => false, 'text' => ezpI18n::tr('kernel/state', 'State')), array('url' => false, 'text' => ezpI18n::tr('kernel/state', 'Groups'))));