public reorder ( $move ) |
public function reorder($move)
{
$orders = $this->getOrders();
$tmp = array_keys($orders, $this->m_data['field_name']);
if (count($tmp) == 0) {
return;
}
$pos = $tmp[0];
reset($orders);
list($max, $value) = each($orders);
end($orders);
list($min, $value) = each($orders);
if ($pos <= $min && $move == 'up') {
return;
}
if ($pos >= $max && $move == 'down') {
return;
}
if ($move == 'down') {
$tmp = $orders[$pos + 1];
$orders[$pos + 1] = $orders[$pos];
$orders[$pos] = $tmp;
}
if ($move == 'up') {
$tmp = $orders[$pos - 1];
$orders[$pos - 1] = $orders[$pos];
$orders[$pos] = $tmp;
}
$this->setOrders($orders);
}
<?php require_once $GLOBALS['g_campsiteDir'] . '/classes/Log.php'; require_once $GLOBALS['g_campsiteDir'] . '/classes/Input.php'; require_once $GLOBALS['g_campsiteDir'] . '/classes/Article.php'; require_once $GLOBALS['g_campsiteDir'] . '/classes/ArticleType.php'; $translator = \Zend_Registry::get('container')->getService('translator'); if (!Saas::singleton()->hasPermission('ManageArticleTypes')) { camp_html_display_error($translator->trans("You do not have the right to reorder article types.", array(), 'article_types')); exit; } if (!SecurityToken::isValid()) { camp_html_display_error($translator->trans('Invalid security token!')); exit; } $articleTypeName = Input::Get('f_article_type'); $articleTypeFieldName = Input::Get('f_field_name'); $move = Input::Get('f_move'); $errorMsgs = array(); $articleTypeField = new ArticleTypeField($articleTypeName, $articleTypeFieldName); $articleTypeField->reorder($move); $cacheService = \Zend_Registry::get('container')->getService('newscoop.cache'); $cacheService->clearNamespace('article_type'); camp_html_goto_page("/{$ADMIN}/article_types/fields/?f_article_type=" . urlencode($articleTypeName));