Показать сообщение отдельно
  #3  
Старый 30.09.2009, 21:14
Аватар для Handy.CMS
Handy.CMS Handy.CMS вне форума
Администратор
 
Регистрация: 25.07.2009
Сообщений: 170
Handy.CMS отключил(а) отображение уровня репутации
По умолчанию

13. Получение значение и внесение изменений в значения настроек модулей
Добавлены функции self::setExtSettings($array[,$ext=false]) и self::getExtSettings([$ext=false])) для более удобного получения настроек из модуля и внесение настроек в модуль.




PHP код:
self::setExtSettings($ext$array
, где
  • $ext - системное имя модуля (по-умолчанию - имя вызывающего модуля), необходимо указывать, только если мы хотим получить настройки не текущего модуля (не того, из которого происходит вызов метода).
  • $array - массив со значениями, в котором ключ элемента массива соответствует значению поля extensions_settings_id таблицы БД extensions_settings, а значение - новому значению свойства
PHP код:
self::getExtSettings($ext
, где
  • $ext - системное имя модуля (по-умолчанию - имя вызывающего модуля), необходимо указывать, только если мы хотим получить настройки не текущего модуля (не того, из которого происходит вызов метода).
Таблица extensions_settings содержит следующие поля:
  • extensions_settings_id - уникальное ID, устанавливается автоматически
  • extension_sysname - системное название модуля, которому принадлежит поле
  • setting_name -системное название поля (буквы латинского алфавита, цифры, символ подчеркивания и дефис)
  • setting_title - Название поля, для вывода в шаблоне
  • setting_value - Значение поля
  • setting_dim - тип поля для вывода в шаблоне (сантиметры, пиксели, кг и т.п.), если присутствует.


Пример использования:

Код модуля:
PHP код:
// Устанавливаем значение сеттингов
$this->setExtSettings("subscribe"$_POST['extensions_settings_id']);
// Получаем значение сеттингов
$settings $this->getExtSettings("subscribe");
$this -> smarty -> assign ('subscribe_settings'$settings); 
Код шаблона:
PHP код:
<table border="0" cellpadding="0" cellspacing="0" width="100%">
 {
section loop=$subscribe_settings name=i} <tr>
 <
td nowrap>{$subscribe_settings[i].setting_title|escape}</td>
 <
td><img src="$theme/p.gif" width=10 height=1></td>
 <
td width="100%"><input type="text" name="extensions_settings_id[{$subscribe_settings[i].extensions_settings_id}]" value="{$subscribe_settings[i].setting_value|escape}class="input100persent" /></td>
 </
tr>
 {/
section}
 </
table
__________________
Команда Handy.CMS