Merge pull request #31 from torrentpier/develop

R599b

Дополнение к предыдущей ревизии. Добавлена страница с правилами ресурса, которую администратор может настроить в администраторской панели. Текст правил вводится как обычное сообщение и поддерживает бб-коды. Также был вынесен кеш конфига в отдельную сущность, дабы при его обновлениях не скидывался кеш всего форума в целом. Мелкие правки по шаблону.

Для обновления на ревизию требуется выполнить запрос к базе: INSERT INTO `bb_config` VALUES ('terms', '');
This commit is contained in:
Exile 2014-08-31 02:59:55 +04:00
commit 2d865de5a1
15 changed files with 224 additions and 125 deletions

View file

@ -581,6 +581,7 @@ INSERT INTO `bb_config` VALUES ('show_mod_index', '0');
INSERT INTO `bb_config` VALUES ('premod', '0'); INSERT INTO `bb_config` VALUES ('premod', '0');
INSERT INTO `bb_config` VALUES ('new_tpls', '1'); INSERT INTO `bb_config` VALUES ('new_tpls', '1');
INSERT INTO `bb_config` VALUES ('tor_comment', '1'); INSERT INTO `bb_config` VALUES ('tor_comment', '1');
INSERT INTO `bb_config` VALUES ('terms', '');
-- -------------------------------------------------------- -- --------------------------------------------------------

View file

@ -137,6 +137,7 @@ ALTER TABLE `bb_posts` ADD `poster_rg_id` mediumint(8) NOT NULL DEFAULT '0' AFTE
// добавлено 598 ↑ // добавлено 598 ↑
ALTER TABLE `bb_posts` ADD `attach_rg_sig` tinyint(4) NOT NULL DEFAULT '0' AFTER `poster_rg_id`; ALTER TABLE `bb_posts` ADD `attach_rg_sig` tinyint(4) NOT NULL DEFAULT '0' AFTER `poster_rg_id`;
// добавлено 598 ↑ // добавлено 598 ↑
INSERT INTO `bb_config` VALUES ('terms', ''); // добавлено 599b
Удаленные файлы/папки: Удаленные файлы/папки:

View file

@ -38,7 +38,7 @@ foreach ($sql as $row)
if (isset($_POST['submit']) && $row['config_value'] != $new[$config_name]) if (isset($_POST['submit']) && $row['config_value'] != $new[$config_name])
{ {
bb_update_config(array($config_name => $new[$config_name])); bb_update_config(array($config_name => $new[$config_name]));
} }
} }

View file

@ -0,0 +1,25 @@
<?php
if (!empty($setmodules))
{
$module['GENERAL']['TERMS'] = basename(__FILE__);
return;
}
require('./pagestart.php');
require(INC_DIR .'bbcode.php');
if (isset($_POST['post']) && $bb_cfg['terms'] != $_POST['message'])
{
bb_update_config(array('terms' => $_POST['message']));
bb_die($lang['CONFIG_UPDATED']);
}
$template->assign_vars(array(
'S_ACTION' => 'admin_terms.php',
'EXT_LINK_NW' => $bb_cfg['ext_link_new_win'],
'MESSAGE' => ($bb_cfg['terms']) ? $bb_cfg['terms'] : '',
'PREVIEW_HTML' => (isset($_REQUEST['preview'])) ? bbcode2html($_POST['message']) : '',
));
print_page('admin_terms.tpl', 'admin');

View file

@ -72,8 +72,8 @@ $domain_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : $do
// Version info // Version info
$bb_cfg['tp_version'] = '2.1 (RC)'; $bb_cfg['tp_version'] = '2.1 (RC)';
$bb_cfg['tp_release_date'] = '30-08-2014'; $bb_cfg['tp_release_date'] = '31-08-2014';
$bb_cfg['tp_release_state'] = 'R599'; $bb_cfg['tp_release_state'] = 'R599b';
// Database // Database
$charset = 'utf8'; $charset = 'utf8';
@ -88,18 +88,18 @@ $bb_cfg['db']['db1'] = array('localhost', 'dbase', 'user', 'pass', $charset, $pc
$bb_cfg['db_alias'] = array( $bb_cfg['db_alias'] = array(
// 'alias' => 'srv_name' // 'alias' => 'srv_name'
# db1 # db1
'log' => 'db1', // BB_LOG 'log' => 'db1', // BB_LOG
'search' => 'db1', // BB_TOPIC_SEARCH 'search' => 'db1', // BB_TOPIC_SEARCH
'sres' => 'db1', // BB_BT_USER_SETTINGS, BB_SEARCH_RESULTS 'sres' => 'db1', // BB_BT_USER_SETTINGS, BB_SEARCH_RESULTS
'u_ses' => 'db1', // BB_USER_SES, BB_USER_LASTVISIT 'u_ses' => 'db1', // BB_USER_SES, BB_USER_LASTVISIT
# db2 # db2
'dls' => 'db1', // BB_BT_DLS_* 'dls' => 'db1', // BB_BT_DLS_*
'ip' => 'db1', // BB_POSTS_IP 'ip' => 'db1', // BB_POSTS_IP
'ut' => 'db1', // BB_TOPICS_USER_POSTED 'ut' => 'db1', // BB_TOPICS_USER_POSTED
# db3 # db3
'cap' => 'db1', // BB_CAPTCHA 'cap' => 'db1', // BB_CAPTCHA
'pm' => 'db1', // BB_PRIVMSGS, BB_PRIVMSGS_TEXT 'pm' => 'db1', // BB_PRIVMSGS, BB_PRIVMSGS_TEXT
'pt' => 'db1', // BB_POSTS_TEXT 'pt' => 'db1', // BB_POSTS_TEXT
); );
// Cache // Cache
@ -121,12 +121,13 @@ $bb_cfg['cache']['redis'] = array(
// Available cache types: memcache, sqlite, redis, eaccelerator, apc, xcache (default of filecache) // Available cache types: memcache, sqlite, redis, eaccelerator, apc, xcache (default of filecache)
# name => array( (string) type, (array) cfg ) # name => array( (string) type, (array) cfg )
$bb_cfg['cache']['engines'] = array( $bb_cfg['cache']['engines'] = array(
'bb_cache' => array('filecache', array()), 'bb_cache' => array('filecache', array()),
'tr_cache' => array('filecache', array()), 'bb_config' => array('filecache', array()),
'session_cache' => array('filecache', array()), 'tr_cache' => array('filecache', array()),
'bb_cap_sid' => array('filecache', array()), 'session_cache' => array('filecache', array()),
'bb_login_err' => array('filecache', array()), 'bb_cap_sid' => array('filecache', array()),
'bb_poll_data' => array('filecache', array()), 'bb_login_err' => array('filecache', array()),
'bb_poll_data' => array('filecache', array()),
); );
// Datastore // Datastore
// Available datastore types: memcache, sqlite, redis, eaccelerator, apc, xcache (default filecache) // Available datastore types: memcache, sqlite, redis, eaccelerator, apc, xcache (default filecache)
@ -148,8 +149,8 @@ $bb_cfg['js_ver'] = 1;
$bb_cfg['css_ver'] = 1; $bb_cfg['css_ver'] = 1;
// Backup // Backup
$bb_cfg['db_backup_shell_cmd'] = ''; // '/path/to/db_backup.sh 2>&1' $bb_cfg['db_backup_shell_cmd'] = ''; // '/path/to/db_backup.sh 2>&1'
$bb_cfg['site_backup_shell_cmd'] = ''; $bb_cfg['site_backup_shell_cmd'] = '';
// GZip // GZip
$bb_cfg['gzip_compress'] = true; // compress output $bb_cfg['gzip_compress'] = true; // compress output
@ -292,10 +293,10 @@ else
} }
$bb_cfg['languages'] = array( $bb_cfg['languages'] = array(
// 'folder' => 'Name', // 'folder' => 'Name',
'ru' => 'Русский', 'ru' => 'Русский',
'uk' => 'Український', 'uk' => 'Український',
'en' => 'English', 'en' => 'English',
); );
// Templates // Templates
@ -600,7 +601,7 @@ $banned_user_agents = array(
$bb_cfg['trash_forum_id'] = 0; // (int) 7 $bb_cfg['trash_forum_id'] = 0; // (int) 7
$bb_cfg['first_logon_redirect_url'] = 'index.php'; $bb_cfg['first_logon_redirect_url'] = 'index.php';
$bb_cfg['terms_and_conditions_url'] = 'index.php'; $bb_cfg['terms_and_conditions_url'] = 'terms.php';
$bb_cfg['user_agreement_url'] = 'misc.php?do=info&show=user_agreement'; $bb_cfg['user_agreement_url'] = 'misc.php?do=info&show=user_agreement';
$bb_cfg['copyright_holders_url'] = 'misc.php?do=info&show=copyright_holders'; $bb_cfg['copyright_holders_url'] = 'misc.php?do=info&show=copyright_holders';

View file

@ -1288,7 +1288,7 @@ function get_attachments_dir ($cfg = null)
function bb_get_config ($table, $from_db = false, $update_cache = true) function bb_get_config ($table, $from_db = false, $update_cache = true)
{ {
if ($from_db OR !$cfg = CACHE('bb_cache')->get("config_{$table}")) if ($from_db OR !$cfg = CACHE('bb_config')->get("config_{$table}"))
{ {
$cfg = array(); $cfg = array();
foreach (DB()->fetch_rowset("SELECT * FROM $table") as $row) foreach (DB()->fetch_rowset("SELECT * FROM $table") as $row)
@ -1297,7 +1297,7 @@ function bb_get_config ($table, $from_db = false, $update_cache = true)
} }
if ($update_cache) if ($update_cache)
{ {
CACHE('bb_cache')->set("config_{$table}", $cfg); CACHE('bb_config')->set("config_{$table}", $cfg);
} }
} }
return $cfg; return $cfg;
@ -1316,6 +1316,7 @@ function bb_update_config ($params, $table = BB_CONFIG)
$updates = DB()->build_array('MULTI_INSERT', $updates); $updates = DB()->build_array('MULTI_INSERT', $updates);
DB()->query("REPLACE INTO $table $updates"); DB()->query("REPLACE INTO $table $updates");
// Update cache // Update cache
bb_get_config($table, true, true); bb_get_config($table, true, true);
} }

View file

@ -215,18 +215,18 @@ define('TOR_TMP', 10); // временная
define('TOR_PREMOD', 11); // премодерация define('TOR_PREMOD', 11); // премодерация
$bb_cfg['tor_icons'] = array( $bb_cfg['tor_icons'] = array(
TOR_NOT_APPROVED => '<span class="tor-icon tor-not-approved">*</span>', TOR_NOT_APPROVED => '<span class="tor-icon tor-not-approved">*</span>',
TOR_CLOSED => '<span class="tor-icon tor-closed">x</span>', TOR_CLOSED => '<span class="tor-icon tor-closed">x</span>',
TOR_APPROVED => '<span class="tor-icon tor-approved">&radic;</span>', TOR_APPROVED => '<span class="tor-icon tor-approved">&radic;</span>',
TOR_NEED_EDIT => '<span class="tor-icon tor-need-edit">?</span>', TOR_NEED_EDIT => '<span class="tor-icon tor-need-edit">?</span>',
TOR_NO_DESC => '<span class="tor-icon tor-no-desc">!</span>', TOR_NO_DESC => '<span class="tor-icon tor-no-desc">!</span>',
TOR_DUP => '<span class="tor-icon tor-dup">D</span>', TOR_DUP => '<span class="tor-icon tor-dup">D</span>',
TOR_CLOSED_CPHOLD => '<span class="tor-icon tor-closed-cp">&copy;</span>', TOR_CLOSED_CPHOLD => '<span class="tor-icon tor-closed-cp">&copy;</span>',
TOR_CONSUMED => '<span class="tor-icon tor-consumed">&sum;</span>', TOR_CONSUMED => '<span class="tor-icon tor-consumed">&sum;</span>',
TOR_DOUBTFUL => '<span class="tor-icon tor-approved">#</span>', TOR_DOUBTFUL => '<span class="tor-icon tor-approved">#</span>',
TOR_CHECKING => '<span class="tor-icon tor-checking">%</span>', TOR_CHECKING => '<span class="tor-icon tor-checking">%</span>',
TOR_TMP => '<span class="tor-icon tor-dup">T</span>', TOR_TMP => '<span class="tor-icon tor-dup">T</span>',
TOR_PREMOD => '<span class="tor-icon tor-dup">&#8719;</span>', TOR_PREMOD => '<span class="tor-icon tor-dup">&#8719;</span>',
); );
// Запрет на скачивание // Запрет на скачивание
@ -468,10 +468,8 @@ $html = new html_common();
$log_action = new log_action(); $log_action = new log_action();
$ads = new ads_common(); $ads = new ads_common();
// !!! Temporarily (??) 'cat_forums' always enqueued // TODO temporarily 'cat_forums' always enqueued
$datastore->enqueue(array( $datastore->enqueue(array('cat_forums'));
'cat_forums',
));
// Дата старта вашего проекта // Дата старта вашего проекта
if (!$bb_cfg['board_startdate']) if (!$bb_cfg['board_startdate'])
@ -488,13 +486,13 @@ if ((empty($_POST) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !file_exist
// Update cron_last_check // Update cron_last_check
bb_update_config(array('cron_last_check' => (TIMENOW + 10))); bb_update_config(array('cron_last_check' => (TIMENOW + 10)));
define('CRON_LOG_ENABLED', true); // global ON/OFF define('CRON_LOG_ENABLED', true); // global ON/OFF
define('CRON_FORCE_LOG', false); // always log regardless of job settings define('CRON_FORCE_LOG', false); // always log regardless of job settings
define('CRON_DIR', INC_DIR .'cron/'); define('CRON_DIR', INC_DIR .'cron/');
define('CRON_JOB_DIR', CRON_DIR .'jobs/'); define('CRON_JOB_DIR', CRON_DIR .'jobs/');
define('CRON_LOG_DIR', 'cron/'); // inside LOG_DIR define('CRON_LOG_DIR', 'cron/'); // inside LOG_DIR
define('CRON_LOG_FILE', 'cron'); // without ext define('CRON_LOG_FILE', 'cron'); // without ext
bb_log(date('H:i:s - ') . getmypid() .' -x-- DB-LOCK try'. LOG_LF, CRON_LOG_DIR .'cron_check'); bb_log(date('H:i:s - ') . getmypid() .' -x-- DB-LOCK try'. LOG_LF, CRON_LOG_DIR .'cron_check');

View file

@ -2878,3 +2878,6 @@ $lang['ATOM_NO_USER'] = 'This user does not have a feed (no ongoing topics)';
$lang['HASH_INVALID'] = 'Hash %s is invalid'; $lang['HASH_INVALID'] = 'Hash %s is invalid';
$lang['HASH_NOT_FOUND'] = 'Release with hash %s not found'; $lang['HASH_NOT_FOUND'] = 'Release with hash %s not found';
$lang['TERMS_EMPTY_TEXT'] = '[align=center]The text of this page is edited at: [url=http://%s/admin/admin_terms.php]admin/admin_terms.php[/url]. This line can see only administrators.[/align]';
$lang['TERMS_EXPLAIN'] = 'On this page, you can specify the text of the basic rules of the resource is displayed to users.';

View file

@ -2878,3 +2878,6 @@ $lang['ATOM_NO_USER'] = 'Для этого пользователя нет ле
$lang['HASH_INVALID'] = 'Хэш %s некорректен'; $lang['HASH_INVALID'] = 'Хэш %s некорректен';
$lang['HASH_NOT_FOUND'] = 'Раздача с хэшем %s не найдена'; $lang['HASH_NOT_FOUND'] = 'Раздача с хэшем %s не найдена';
$lang['TERMS_EMPTY_TEXT'] = '[align=center]Текст этой страницы редактируется по адресу: [url=http://%s/admin/admin_terms.php]admin/admin_terms.php[/url]. Эту строку видят только администраторы.[/align]';
$lang['TERMS_EXPLAIN'] = 'На данной странице вы можете указать текст основных правил ресурса, выводящихся пользователям.';

View file

@ -2878,3 +2878,6 @@ $lang['ATOM_NO_USER'] = 'Для цього користувача немає с
$lang['HASH_INVALID'] = 'Хеш %s некоректний'; $lang['HASH_INVALID'] = 'Хеш %s некоректний';
$lang['HASH_NOT_FOUND'] = 'Роздача з хешем %s не знайдено'; $lang['HASH_NOT_FOUND'] = 'Роздача з хешем %s не знайдено';
$lang['TERMS_EMPTY_TEXT'] = '[align=center]Текст цієї сторінки редагується за адресою: [url=http://%s/admin/admin_terms.php]admin/admin_terms.php[/url]. Цю рядок бачать тільки адміністраторам.[/align]';
$lang['TERMS_EXPLAIN'] = 'На цій сторінці ви можете вказати текст основних правил ресурсу, які виводяться користувачам.';

View file

@ -1,11 +1,11 @@
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function() { $(document).ready(function() {
$("#check_all").click(function () { $("#check_all").click(function () {
if (!$("#check_all").is(":checked")) if (!$("#check_all").is(":checked"))
$(".checkbox").removeAttr("checked"); $(".checkbox").removeAttr("checked");
else else
$(".checkbox").attr("checked","checked"); $(".checkbox").attr("checked","checked");
}); });
}); });
</script> </script>
@ -24,60 +24,59 @@ tr.hl-tr:hover td { background-color: #CFC !important; }
<input class="text" type="hidden" name="mode" value="{S_MODE}" /> <input class="text" type="hidden" name="mode" value="{S_MODE}" />
<table cellpadding="2" cellspacing="0" width="100%"> <table cellpadding="2" cellspacing="0" width="100%">
<tr> <tr>
<td width="80%"> <td width="80%">
<h1>{L_CRON}</h1> <h1>{L_CRON}</h1>
<a href="admin_cron.php?mode=add">{L_CRON_EDIT_HEAD_ADD}</a>
<a href="admin_cron.php?mode=add">{L_CRON_EDIT_HEAD_ADD}</a> </td>
</td> <td width="20%" class="vBottom tRight nowrap med">
<td width="20%" class="vBottom tRight nowrap med"> <!-- IF TPL_CRON_LIST -->
<!-- IF TPL_CRON_LIST --> <table id="cron_<!-- IF CRON_ENABLED -->true<!-- ELSE -->false<!-- ENDIF -->" class="cron_<!-- IF CRON_ENABLED -->true<!-- ELSE -->false<!-- ENDIF -->">
<table id="cron_<!-- IF CRON_ENABLED -->true<!-- ELSE -->false<!-- ENDIF -->" class="cron_<!-- IF CRON_ENABLED -->true<!-- ELSE -->false<!-- ENDIF -->"> <tr>
<tr> <td>{L_CRON_ENABLED}</td>
<td>{L_CRON_ENABLED}</td> <td>
<td> <label><input type="radio" name="cron_enabled" value="1" <!-- IF CRON_ENABLED -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
<label><input type="radio" name="cron_enabled" value="1" <!-- IF CRON_ENABLED -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp; <label><input type="radio" name="cron_enabled" value="0" <!-- IF not CRON_ENABLED -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
<label><input type="radio" name="cron_enabled" value="0" <!-- IF not CRON_ENABLED -->checked="checked"<!-- ENDIF --> />{L_NO}</label> </td>
</td> <td>{L_CRON_CHECK_INTERVAL}</td>
<td>{L_CRON_CHECK_INTERVAL}</td> <td>
<td> <input class="post" type="text" size="10" maxlength="255" name="cron_check_interval" value="{CRON_CHECK_INTERVAL}" />
<input class="post" type="text" size="10" maxlength="255" name="cron_check_interval" value="{CRON_CHECK_INTERVAL}" /> </td>
</td> <td>
<td> <input type="submit" name="submit" value="{L_SUBMIT}" class="mainoption" />
<input type="submit" name="submit" value="{L_SUBMIT}" class="mainoption" /> </td>
</td> </tr>
</tr> </table>
</table> <!-- ELSE IF CRON_RUNNING -->
<!-- ELSE IF CRON_RUNNING --> <table id="tor_blocked" class="error">
<table id="tor_blocked" class="error"> <tr>
<tr> <td>
<td> <p class="error_msg">{L_CRON_WORKS} <a href="admin_cron.php?mode=repair"><b>{L_REPAIR_CRON}</b></a></p>
<p class="error_msg">{L_CRON_WORKS} <a href="admin_cron.php?mode=repair"><b>{L_REPAIR_CRON}</b></a></p> </td>
</td> </tr>
</tr> </table>
</table> <!-- ENDIF -->
<!-- ENDIF --> </td>
</td> </tr>
</tr>
</table> </table>
<br /> <br />
<table class="forumline"> <table class="forumline">
<tr> <tr>
<th colspan="10">{L_CRON_LIST}</th> <th colspan="10">{L_CRON_LIST}</th>
</tr> </tr>
<tr class="row3 med tCenter"> <tr class="row3 med tCenter">
<td><input type="checkbox" id="check_all"></td> <td><input type="checkbox" id="check_all"></td>
<td>{L_CRON_ID}</td> <td>{L_CRON_ID}</td>
<td>{L_CRON_ACTIVE}</td> <td>{L_CRON_ACTIVE}</td>
<td>{L_CRON_TITLE}</td> <td>{L_CRON_TITLE}</td>
<td>{L_CRON_SCRIPT}</td> <td>{L_CRON_SCRIPT}</td>
<td>{L_CRON_SCHEDULE}</td> <td>{L_CRON_SCHEDULE}</td>
<td>{L_CRON_LAST_RUN}</td> <td>{L_CRON_LAST_RUN}</td>
<td>{L_CRON_NEXT_RUN}</td> <td>{L_CRON_NEXT_RUN}</td>
<td>{L_CRON_RUN_COUNT}</td> <td>{L_CRON_RUN_COUNT}</td>
<td>{L_CRON_MANAGE}</td> <td>{L_CRON_MANAGE}</td>
</tr> </tr>
<!-- BEGIN list --> <!-- BEGIN list -->
@ -101,20 +100,20 @@ tr.hl-tr:hover td { background-color: #CFC !important; }
</table> </table>
<table class="forumline"> <table class="forumline">
<tr> <tr>
<td colspan="2" class="catBottom"> <td colspan="2" class="catBottom">
{L_WITH_SELECTED} {L_WITH_SELECTED}
<select name="cron_action" id="cron_select" > <select name="cron_action" id="cron_select" >
<option value="" selected="selected" class="select-action">&raquo; {L_NOTHING}</option> <option value="" selected="selected" class="select-action">&raquo; {L_NOTHING}</option>
<option value="run">{L_CRON_RUN}</option> <option value="run">{L_CRON_RUN}</option>
<option value="delete">{L_CRON_DEL}</option> <option value="delete">{L_CRON_DEL}</option>
<option value="disable">{L_CRON_DISABLE}</option> <option value="disable">{L_CRON_DISABLE}</option>
<option value="enable">{L_CRON_ENABLE}</option> <option value="enable">{L_CRON_ENABLE}</option>
</select> </select>
<label><input onclick="toggle_disabled('send', this.checked)" type="checkbox" name="confirm" value="1" /></label>&nbsp; <label><input onclick="toggle_disabled('send', this.checked)" type="checkbox" name="confirm" value="1" /></label>&nbsp;
<input type="submit" name="submit" id="send" value="{L_SUBMIT}" class="mainoption" disabled="disabled" /> <input type="submit" name="submit" id="send" value="{L_SUBMIT}" class="mainoption" disabled="disabled" />
</td> </td>
</tr> </tr>
</table> </table>
</form> </form>
<br /> <br />
@ -142,12 +141,12 @@ tr.hl-tr:hover td { background-color: #CFC !important; }
</tr> </tr>
<tr> <tr>
<td> <td>
<h4>{L_CRON_ACTIVE}</h4> <h4>{L_CRON_ACTIVE}</h4>
<h6>{L_CRON_ACTIVE_EXPL}</h6> <h6>{L_CRON_ACTIVE_EXPL}</h6>
</td> </td>
<td> <td>
<label><input type="radio" name="cron_active" value="1" <!-- IF CRON_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp; <label><input type="radio" name="cron_active" value="1" <!-- IF CRON_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
<label><input type="radio" name="cron_active" value="0" <!-- IF not CRON_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_NO}</label> <label><input type="radio" name="cron_active" value="0" <!-- IF not CRON_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -189,7 +188,7 @@ tr.hl-tr:hover td { background-color: #CFC !important; }
<tr> <tr>
<td><h4>{L_LOG_ENABLED}</h4></td> <td><h4>{L_LOG_ENABLED}</h4></td>
<td> <td>
<label><input type="radio" name="log_enabled" value="1" <!-- IF LOG_ENABLED -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp; <label><input type="radio" name="log_enabled" value="1" <!-- IF LOG_ENABLED -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
<label><input type="radio" name="log_enabled" value="0" <!-- IF not LOG_ENABLED -->checked="checked"<!-- ENDIF --> />{L_NO}</label> <label><input type="radio" name="log_enabled" value="0" <!-- IF not LOG_ENABLED -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
</td> </td>
</tr> </tr>
@ -200,14 +199,14 @@ tr.hl-tr:hover td { background-color: #CFC !important; }
<tr> <tr>
<td><h4>{L_LOG_SQL_QUERIES}</h4></td> <td><h4>{L_LOG_SQL_QUERIES}</h4></td>
<td> <td>
<label><input type="radio" name="log_sql_queries" value="1" <!-- IF LOG_SQL_QUERIES -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp; <label><input type="radio" name="log_sql_queries" value="1" <!-- IF LOG_SQL_QUERIES -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
<label><input type="radio" name="log_sql_queries" value="0" <!-- IF not LOG_SQL_QUERIES -->checked="checked"<!-- ENDIF --> />{L_NO}</label> <label><input type="radio" name="log_sql_queries" value="0" <!-- IF not LOG_SQL_QUERIES -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
</td> </td>
</tr> </tr>
<tr> <tr>
<td><h4>{L_FORUM_DISABLE}</h4><h6>{L_BOARD_DISABLE_EXPL}</h6></td> <td><h4>{L_FORUM_DISABLE}</h4><h6>{L_BOARD_DISABLE_EXPL}</h6></td>
<td> <td>
<label><input type="radio" name="disable_board" value="1" <!-- IF DISABLE_BOARD -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp; <label><input type="radio" name="disable_board" value="1" <!-- IF DISABLE_BOARD -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
<label><input type="radio" name="disable_board" value="0" <!-- IF not DISABLE_BOARD -->checked="checked"<!-- ENDIF --> />{L_NO}</label> <label><input type="radio" name="disable_board" value="0" <!-- IF not DISABLE_BOARD -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
</td> </td>
</tr> </tr>

View file

@ -0,0 +1,25 @@
<h1>{L_TERMS}</h1>
<p>{L_TERMS_EXPLAIN}</p>
<br />
<form action="{S_ACTION}" method="post">
<table class="forumline">
<tr>
<th>{L_TERMS}</th>
</tr>
<tr id="view_message"<!-- IF not PREVIEW_HTML --> class="hidden"<!-- ENDIF -->>
<td class="row1">
<div class="view-message">{PREVIEW_HTML}</div>
</td>
</tr>
<tr class="row2">
<td>
<!-- INCLUDE posting_editor.tpl -->
</td>
</tr>
</table>
</form>
<br clear="all"/>

View file

@ -21,8 +21,8 @@
window.encURL = encodeURIComponent; window.encURL = encodeURIComponent;
</script> </script>
<script type="text/javascript"> <script type="text/javascript">
var bb_url = '{SITE_URL}'; var bb_url = '{SITE_URL}';
var bbl = { "code": "{L_CODE}", "wrote": "{L_WROTE}", "quote": "{L_QUOTE}", "quoted_post": "{L_GOTO_QUOTED_POST}", "loading": "{L_LOADING}", "spoiler_head": "{L_SPOILER_HEAD}", "spoiler_close": "{L_SPOILER_CLOSE}", "links_are": "{L_LINKS_ARE_FORBIDDEN}", "scr_rules": "{L_SCREENSHOTS_RULES}", "play_on": "{L_PLAY_ON_CURPAGE}" }; var bbl = { "code": "{L_CODE}", "wrote": "{L_WROTE}", "quote": "{L_QUOTE}", "quoted_post": "{L_GOTO_QUOTED_POST}", "loading": "{L_LOADING}", "spoiler_head": "{L_SPOILER_HEAD}", "spoiler_close": "{L_SPOILER_CLOSE}", "links_are": "{L_LINKS_ARE_FORBIDDEN}", "scr_rules": "{L_SCREENSHOTS_RULES}", "play_on": "{L_PLAY_ON_CURPAGE}" };
var postImg_MaxWidth = screen.width - {POST_IMG_WIDTH_DECR_JS}; var postImg_MaxWidth = screen.width - {POST_IMG_WIDTH_DECR_JS};
var postImgAligned_MaxWidth = Math.round(screen.width/3); var postImgAligned_MaxWidth = Math.round(screen.width/3);

View file

@ -0,0 +1,21 @@
<table class="forumline">
<tr>
<th>{L_TERMS}</th>
</tr>
<!-- IF TERMS_HTML -->
<tr>
<td class="row1">
<div class="post_wrap">
{TERMS_HTML}
</div>
</td>
</tr>
<!-- ENDIF -->
<!-- IF IS_ADMIN -->
<tr>
<td class="row2">
{TERMS_EDIT}
</td>
</tr>
<!-- ENDIF -->
</table>

18
upload/terms.php Normal file
View file

@ -0,0 +1,18 @@
<?php
define('BB_SCRIPT', 'terms');
define('BB_ROOT', './');
require(BB_ROOT .'common.php');
require(INC_DIR .'bbcode.php');
// Start session management
$user->session_start();
if (!$bb_cfg['terms'] && !IS_ADMIN) redirect('index.php');
$template->assign_vars(array(
'TERMS_EDIT' => bbcode2html(sprintf($lang['TERMS_EMPTY_TEXT'], $domain_name)),
'TERMS_HTML' => bbcode2html($bb_cfg['terms']),
));
print_page('terms.tpl');