Plug писал(а): Вт июн 26, 2018 2:31 pm
Чет не сохраняет в поле url api. Система на Вин10х64
Попробуйте несколько раз, получилось с 4 попытки. Причину глюка под виндой пока понять не могу.
А зачем делать все эти сложные манипуляции со своими темплейтами и т.д. для того чтобы отредактировать 2 параметра? Есть же стандартный модуль settings, как раз для редактирования settings. Причём работает без проблем и не надо по нескольку раз сохранять...
В темплейт админки вставляется [#module name="settings" action="admin" filter_name="названия модуля"#]
А в функции function checkSettings() {
// Здесь задаются нужные нам параметры - пример взят из календаря, как раз есть текстбокс и радиобуттон
$settings=array(
array(
'NAME'=>'APP_CALENDAR_SOONLIMIT',
'TITLE'=>'Days to show in "soon" section',
'TYPE'=>'text',
'DEFAULT'=>'14'
),
array(
'NAME'=>'APP_CALENDAR_SHOWCALENDAR',
'TITLE'=>'Показывать календарь в Делах и Событиях',
'TYPE'=>'yesno',
'DEFAULT'=>'1'
)
);
foreach($settings as $k=>$v) {
$rec=SQLSelectOne("SELECT ID FROM settings WHERE NAME='".$v['NAME']."'");
if (!$rec['ID']) {
$rec['NAME']=$v['NAME'];
$rec['VALUE']=$v['DEFAULT'];
$rec['DEFAULTVALUE']=$v['DEFAULT'];
$rec['TITLE']=$v['TITLE'];
$rec['TYPE']=$v['TYPE'];
$rec['DATA']=$v['DATA'];
$rec['ID']=SQLInsert('settings', $rec);
Define('SETTINGS_'.$rec['NAME'], $v['DEFAULT']);
}
}
}
Я наверное, что то делаю не так!
Кнопку "Update" нажимал много раз! не сохраняется и не обновляется! У меня Debian 8 x64bit
Так же интересует следующая реализация как описанно ниже...
fandaymon писал(а): Ср июн 27, 2018 12:26 am
А зачем делать все эти сложные манипуляции со своими темплейтами и т.д. для того чтобы отредактировать 2 параметра? Есть же стандартный модуль settings, как раз для редактирования settings. Причём работает без проблем и не надо по нескольку раз сохранять...
В темплейт админки вставляется [#module name="settings" action="admin" filter_name="названия модуля"#]
А в функции function checkSettings() {
// Здесь задаются нужные нам параметры - пример взят из календаря, как раз есть текстбокс и радиобуттон
$settings=array(
array(
'NAME'=>'APP_CALENDAR_SOONLIMIT',
'TITLE'=>'Days to show in "soon" section',
'TYPE'=>'text',
'DEFAULT'=>'14'
),
array(
'NAME'=>'APP_CALENDAR_SHOWCALENDAR',
'TITLE'=>'Показывать календарь в Делах и Событиях',
'TYPE'=>'yesno',
'DEFAULT'=>'1'
)
);
foreach($settings as $k=>$v) {
$rec=SQLSelectOne("SELECT ID FROM settings WHERE NAME='".$v['NAME']."'");
if (!$rec['ID']) {
$rec['NAME']=$v['NAME'];
$rec['VALUE']=$v['DEFAULT'];
$rec['DEFAULTVALUE']=$v['DEFAULT'];
$rec['TITLE']=$v['TITLE'];
$rec['TYPE']=$v['TYPE'];
$rec['DATA']=$v['DATA'];
$rec['ID']=SQLInsert('settings', $rec);
Define('SETTINGS_'.$rec['NAME'], $v['DEFAULT']);
}
}
}
Если не трудно можно для чайников? В темплейт админки вставляется [#module name="settings" action="admin" filter_name="названия модуля"#] - это где?
Yashalta писал(а): Сб июн 30, 2018 10:51 pm
Если не трудно можно для чайников? В темплейт админки вставляется [#module name="settings" action="admin" filter_name="названия модуля"#] - это где?
Это для автора модуля написано было.
А для пользователей - можно просто в phpmyadmine исправить. Найти в табличке settings запись с нужным параметром и исправить поле VALUE