Снова про сортировку

#
Снова про сортировку
Кто знает почему при редактировании информационной системы на вкладке "сортировка" нельзя выбрать для сортировке поле, которое бы соответствовало полю information_groups_id?
Как бы хотелось отсортировать по id!

И почему не работает сортировка если в коде типовой динамической страницы вписать после объявления
$property = array();
такие строки
$property['OrderGroupField']="information_groups_id";
$property['OrderGroup'] ="DESC";

чего еще не хватает?
#
Re: Снова про сортировку
esmeralda, приведите полученный код тип. дин. страницы полностью.
#
Re: Снова про сортировку
Это код стандартной входящей в поставку страницы.
"Типовые динамические страницы → Информационные системы - Информационная система"
+добавленные мной 2 строчки
$property['OrderGroupField']="information_groups_id";
$property['OrderGroup'] ="DESC";


Код:
<?php

// Получаем информацию о текущем пользователе
if (class_exists('SiteUsers'))
{
   $SiteUsers = & singleton('SiteUsers');
   $site_user_id = $SiteUsers->GetCurrentSiteUser();
}
else
{
   $site_user_id = 0;
}

/* Массив внешних параметров, передаваемых в XML */
$external_propertys = array();

/* Добавление комментария */
// ShowAddComment == 1 - только авторизированные
// ShowAddComment == 2 - все
if (isset($_POST['add_comment'])
&& (($GLOBALS['LA']['ShowAddComment'] == 1 && $site_user_id > 0) || $GLOBALS['LA']['ShowAddComment'] == 2))
{
   $param['information_items_id'] = to_int($GLOBALS['InformationResult']['item_id']);

   /* XSL шаблон для отправки уведомления администратору о добавлении комментария */
   $param['admin_email_xsl'] = to_str($GLOBALS['LA']['xsl_admin_email']);

   $xsl_add_comment = to_str($GLOBALS['LA']['xsl_add_comment']);

   /* Режим добавления комментария:
   1 - публиковать сразу,
   0 - публиковать после проверки.*/
   if (to_bool($GLOBALS['LA']['TypeAddComment'])/* || $site_user_id > 0*/)
   {
      $param['status'] = 1;
   }
   else
   {
      $param['status'] = 0;
   }

   // Текст комментария
   $_POST['comment_text'] = nl2br(to_str($_POST['comment_text']));

   // Типографируем текст, если доступен модуль типографирования
   if (class_exists('typograph'))
   {
      $typograph = new typograph();
      $_POST['comment_text'] = $typograph->ProcessTypographic($_POST['comment_text']);
   }

   $param['comment_mail_type'] = to_int($GLOBALS['LA']['comment_mail_type']);

   // ID родительского комментария
   $param['comment_parent_id'] = to_int($_POST['comment_parent_id']);
   
   $param['comment_autor'] = to_str($_POST['comment_autor']);
   $param['comment_email'] = to_str($_POST['comment_email']);
   $param['comment_subject'] = to_str($_POST['comment_subject']);
   $param['comment_text'] = to_str($_POST['comment_text']);
   $param['comment_grade'] = to_int($_POST['comment_grade']);
   $param['allowable_tags'] = '<b><strong><i><u><strike><ul><ol><li>';
   
   ob_start();
   $GLOBALS['LA_InformationSystem']->ShowAddComment('УведомлениеДобавлениеКомментария', $param);
   $external_propertys['message'] = ob_get_clean();
}

$InformationSystem_id = to_int($GLOBALS['InformationSystem_id']);

// XSL шаблон для отображения списка элементов информационной системы
$xsl_list = to_str($GLOBALS['LA']['xsl_information_system_list']);

// XSL шаблон для отображения элемента информационной системы
$xsl_item = to_str($GLOBALS['LA']['xsl_information_item']);

$InformationResult = $GLOBALS['InformationResult'];

$external_propertys['ОтображатьСсылкуНаАрхив'] = 0;
$external_propertys['ОтображатьСсылкиНаСледующиеСтраницы'] = 1;

// Массив дополнительных параметров
$property = array();
$property['OrderGroupField']="information_groups_table.information_groups_id";
$property['OrderGroup'] ="DESC";
// Число элементов на страницу
if (isset($InformationResult['items_on_page']))
{
   if ($InformationResult['items_on_page'] !== true)
   {
      $InformationResult['items_on_page'] = to_int($InformationResult['items_on_page']);
   }
}
else
{
   $InformationResult['items_on_page'] = 10;
}

/* Номер, с которого начинается показ */
if (isset($InformationResult['items_begin']))
{
   $InformationResult['items_begin'] = to_int($InformationResult['items_begin']);
}
else
{
   $InformationResult['items_begin'] = 0;
}

/* Метод определения идентификатора информационной группы и идентификатора информационного элемента по значению URI */
//$result = $GLOBALS['LA_InformationSystem']->GetInformationFromPath($InformationSystem_id);

if ($GLOBALS['INFSYS_result'] != false)
{
   /* Вывод списка */
   if ($GLOBALS['INFSYS_result']['item'] == false)
   {
      // Если передано имя тэга - фильтруем
      if (isset($GLOBALS['INFSYS_result']['tag_name']))
      {
         $oTag = & singleton('Tag');

         $tag_row = $oTag->GetTagByName($GLOBALS['INFSYS_result']['tag_name']);

         $property['tags'] = array($tag_row['tag_id']);

         // При выводе тэгов вывод элементов ведется из всех групп
         $GLOBALS['INFSYS_result']['group'] = false;
      }
      $property['xml_show_group_type'] = 'all';
      /* Отображаем информационную систему */
      $GLOBALS['LA_InformationSystem']->ShowInformationSystem($InformationSystem_id, $GLOBALS['INFSYS_result']['group'], $xsl_list, $InformationResult['items_on_page'], $InformationResult['items_begin'], $external_propertys, $property);
   }
   else
   {
      /* Определяем идентификатор информационного элемента */
      $item_id = $GLOBALS['LA_InformationSystem']->GetIdInformationItem($GLOBALS['INFSYS_result']['item'], $GLOBALS['INFSYS_result']['group'], $InformationSystem_id);

      if (to_bool($GLOBALS['LA']['ShowComments']))
      {
         $external_propertys['show_comments'] = '1';
      }
      else
      {
         $external_propertys['show_comments'] = '0';
      }

      // Кому разрешено добавление комментария
      $external_propertys['show_add_comments'] = to_int($GLOBALS['LA']['ShowAddComment']);

      // Выводим элемент информационной системы
      $GLOBALS['LA_InformationSystem']->ShowInformationSystemItem($item_id, $xsl_item, $external_propertys,
      array('part' => $GLOBALS['part_ii']));
   }
}

?>
#
Re: Снова про сортировку
esmeralda, должно все работать. Сообщите адрес страницы, на которой наблюдается проблема, данные доступа к разделу администрирования на адрес службы поддержки.
#
Re: Снова про сортировку
Интересно, что если вписать в то же место таким же образом сортировку элементов, то она работает и перекрывает сортировку настроенную на вкладке Сортировка при редактировании ИС. А для групп работает только сортировка настроенная на вкладке Сортировка.
Нет идей, что может мешать работе?
#
Re: Снова про сортировку
esmeralda, при локальной проверке описанной вами проблемы не наблюдается. Поэтому просьба к вам прислать все-таки данные доступа на адрес службы поддержки. Не видя проблемы "в живую" сложно стоить предположения.
#
Re: Снова про сортировку
Мне нужно сделать так.
Пользователь заходит в раздел "Игры" (ИС "Игры" и видит 2 подгруппы: "Новости" и "Каталог игр".
В подгруппе "Новости" нужна сортировка по Дата и Убиванию, а в подгруппе "Каталог игр" - по Алфавиту и возрастанию.
Можно ли это сделать?

И ещё, вопрос не совсем по теме сортировки, но тоже с ней связан (в моей задаче): можно ли ID подгруппы новости получить через какой-нибудь поиск по заголовку подгруппы, то есть слову "Новости". Тое сть, если у меня подгрупп "Новости" может быть 1000 штук в одной ИС (В разных подкатегориях, относящихся к разным играм), то вбивать вручную 1000 ID'шников, чтобы, например, сделать общий вывод для всех новойсте, крайне неудобно.
Авторизация