- <?php
- /***************************************************************************
- * mides.ru
- * -------------------
- ***************************************************************************/
- define('IN_PHPBB', true);
-
- if( !empty($setmodules) )
- {
- $filename = basename(__FILE__);
- $module['General']['Управление стилями'] = $filename;
- return;
- }
-
- $phpbb_root_path = '../';
- require($phpbb_root_path . 'extension.inc');
- require('pagestart.' . $phpEx);
-
- $confirm = ( isset($HTTP_POST_VARS['confirm']) ) ? TRUE : FALSE;
-
- if( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
- {
- $mode = ( isset($HTTP_GET_VARS['mode']) ) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];
- $mode = htmlspecialchars($mode);
- }
- else
- {
- $mode = "";
- }
-
- switch( $mode )
- {
- case "delete":
- $style_id = ( isset($HTTP_GET_VARS['style_id']) ) ? intval($HTTP_GET_VARS['style_id']) : intval($HTTP_POST_VARS['style_id']);
-
- if( !$style_id )
- {
- message_die(GENERAL_MESSAGE, "Не выбран ни один стиль");
- }
-
- if( !$confirm )
- {
- if($style_id == $board_config['default_style'])
- {
- message_die(GENERAL_MESSAGE, $lang['Cannot_remove_style']);
- }
-
- $hidden_fields = '<input type="hidden" name="mode" value="'.$mode.'" /><input type="hidden" name="style_id" value="'.$style_id.'" />';
-
- $template->set_filenames(array(
- "confirm" => "admin/confirm_body.tpl")
- );
-
- $template->assign_vars(array(
- "MESSAGE_TITLE" => $lang['Confirm'],
- "MESSAGE_TEXT" => $lang['Confirm_delete_style'],
-
- "L_YES" => $lang['Yes'],
- "L_NO" => $lang['No'],
-
- "S_CONFIRM_ACTION" => append_sid("admin_style_edit.$phpEx"),
- "S_HIDDEN_FIELDS" => $hidden_fields)
- );
-
- $template->pparse("confirm");
-
- }
- else
- {
- $sql = "DELETE FROM " . STYLES_CSS . "
- WHERE style_id = $style_id";
- if(!$result = $db->sql_query($sql, BEGIN_TRANSACTION))
- {
- message_die(GENERAL_ERROR, "Could not remove style data!", "", __LINE__, __FILE__, $sql);
- }
-
- $message = $lang['Style_removed'] . "<br /><br />" . sprintf($lang['Click_return_styleadmin'], "<a href=\"" . append_sid("admin_style_edit.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
-
- message_die(GENERAL_MESSAGE, $message);
- }
- break;
- case "edit":
- $style_id = ( isset($HTTP_GET_VARS['style_id']) ) ? intval($HTTP_GET_VARS['style_id']) : intval($HTTP_POST_VARS['style_id']);
-
- if( !$confirm )
- {
- $sql = "SELECT *
- FROM " . STYLES_CSS . "
- WHERE style_id = $style_id";
- if(!$result = $db->sql_query($sql))
- {
- message_die(GENERAL_ERROR, "Could not get data from styles table", "", __LINE__, __FILE__, $sql);
- }
- $row = $db->sql_fetchrow($result);
-
- $hidden_fields = '<input type="hidden" name="mode" value="'.$mode.'" /><input type="hidden" name="style_id" value="'.$style_id.'" /><input type="hidden" name="confirm" value="yes" />';
-
- $template->set_filenames(array(
- "body" => "admin/style_edit.tpl")
- );
-
- $template->assign_vars(array(
- "S_PROFILE_ACTION" => append_sid('admin_style_edit.'.$phpEx),
- "STYLE_NAME" => $row['style_name'],
- "STYLE_TEXT" => $row['style_text'],
- "L_SUBMIT" => $lang['Submit'],
- "S_HIDDEN_FIELDS" => $hidden_fields)
- );
-
- $template->pparse("body");
- include('./page_footer_admin.'.$phpEx);
-
- }
- else
- {
-
- if ( empty($HTTP_POST_VARS['style_text']) || empty($HTTP_POST_VARS['style_name']) )
- {
- $message = "Заполните все поля!<br /><br /><a href=\"" . append_sid("admin_style_edit.$phpEx?mode=edit&style_id=$style_id") . "\">Попробовать ещё</a>";
- message_die(GENERAL_ERROR, $message);
- }
- $style_text = htmlspecialchars(trim($HTTP_POST_VARS['style_text']));
- $style_name = htmlspecialchars(trim($HTTP_POST_VARS['style_name']));
-
- $sql = "UPDATE " . STYLES_CSS . "
- SET style_name = '" . str_replace("\'", "''", $style_name) . "', style_text = '" . str_replace("\'", "''", $style_text) . "'
- WHERE style_id = $style_id";
- if(!$result = $db->sql_query($sql))
- {
- message_die(GENERAL_ERROR, "Could not update style information", "", __LINE__, __FILE__, $sql);
- }
-
- $message = 'Стиль изменён<br/>- <a href="index.php?pane=left">настройки системы</a>';
- message_die(GENERAL_MESSAGE, $message);
-
- }
- break;
- case "setup":
- if( !$confirm )
- {
- message_die(GENERAL_MESSAGE, "Ошибка! Не введены данные стиля!");
- }
- else
- {
-
- if ( empty($HTTP_POST_VARS['style_text']) || empty($HTTP_POST_VARS['style_name']) )
- {
- $message = "Заполните все поля!<br /><br /><a href=\"" . append_sid("admin_style_edit.$phpEx") . "\">Попробовать ещё</a>";
- message_die(GENERAL_ERROR, $message);
- }
-
- $style_text = htmlspecialchars(trim($HTTP_POST_VARS['style_text']));
- $style_name = htmlspecialchars(trim($HTTP_POST_VARS['style_name']));
-
- $sql = "INSERT INTO " . STYLES_CSS . " (style_name, style_text)
- VALUES ('" . str_replace("\'", "''", $style_name) . "', '" . str_replace("\'", "''", $style_text) . "')";
- if ( !($result = $db->sql_query($sql)) )
- {
- message_die(GENERAL_ERROR, 'Could not insert data into styles table', '', __LINE__, __FILE__, $sql);
- }
- $message = "Стиль \"".$style_name."\" успешно добавлен.<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=left") . "\">", "</a>");
- message_die(GENERAL_MESSAGE, $message);
-
- }
- break;
- default:
- $sql = "SELECT style_id, style_name
- FROM " . STYLES_CSS . " ORDER BY style_id ASC";
- if(!$result = $db->sql_query($sql))
- {
- message_die(GENERAL_ERROR, "Could not get style information!", "", __LINE__, __FILE__, $sql);
- }
- $style_rowset = $db->sql_fetchrowset($result);
-
- $template->set_filenames(array(
- "body" => "admin/styles_list_body.tpl")
- );
-
- $hidden_fields = '<input type="hidden" name="mode" value="setup" /><input type="hidden" name="confirm" value="yes" />';
-
- $template->assign_vars(array(
- "S_PROFILE_ACTION" => append_sid('admin_style_edit.'.$phpEx),
- "L_SUBMIT" => $lang['Submit'],
- "S_HIDDEN_FIELDS" => $hidden_fields)
- );
-
- for($i = 0; $i < count($style_rowset); $i++)
- {
- $row_class = ( !($i % 2) ) ? 'row_easy' : 'row_hard';
- $s_id = $i+1;
-
- $template->assign_block_vars("styles", array(
- "ROW_CLASS" => $row_class,
- "STYLE_NAME" => $style_rowset[$i]['style_name'],
- "STYLE_ID" => $s_id,
- "U_STYLE_EDIT" => append_sid("admin_style_edit.$phpEx?mode=edit&style_id=" . $style_rowset[$i]['style_id']),
- "U_STYLE_DELETE" => append_sid("admin_style_edit.$phpEx?mode=delete&style_id=" . $style_rowset[$i]['style_id']))
- );
- }
-
- $template->pparse("body");
- include('./page_footer_admin.'.$phpEx);
-
- }
-
- ?>