Перейти к контенту

[1.x.x]Post Options


Z

Рекомендуемые сообщения

Название: Post Options

Добавил: Z

Добавлен: 10 Янв 2004

Обновлен: 15 Янв 2004

Категория: IP.Board 1.x.x

 

Позволяет пользователям единожды выбрать цвет и шрифт всех своих сообщений на форуме.

 

Теоретически совместим с версией 1.2 (не проверял).

 

Post Options v.1.2

Добавлена возможно править пользовательские настройки через AdminCP.

 

Скриншот админки

 

Нажмите здесь, чтобы скачать файл

Ссылка на комментарий
Поделиться на других сайтах

2 @sms

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

 

2 Oska

Благодарю, я польщен.

Ссылка на комментарий
Поделиться на других сайтах

версия 1.2 Post Options mod

 

Изменения:

Добавлена возможно править пользовательские настройки через AdminCP.

Если мод Post Options уже был установлен и вы хотите только добавить возможность

править пользовательские настройки через AdminCP - перейдите к пункту 8 файла мода (в архиве обновлен).

 

Скриншот

 

ad_member.php

 

ищем:

  $ADMIN->html .= $SKIN->add_td_row( array( "<b>Email a PM reminder?</b>" ,
              $SKIN->form_yes_no("email_pm", $mem['email_pm'] )
              )      );

ниже добавляем:

 	$ADMIN->html .= $SKIN->add_td_row( array( "<b>Post Color</b>" ,
              $SKIN->form_input("pcolor", $mem['pcolor'])
              )      );

  $ADMIN->html .= $SKIN->add_td_row( array( "<b>Post Font</b>" ,
              $SKIN->form_input("pfont", $mem['pfont'])
              )      );

 

ищем:

  'integ_msg'    => $IN['integ_msg'],

ниже добавляем:

  'pcolor'       => $IN['pcolor'],
  'pfont'        => $IN['pfont'],

 

лезем в админку AdminCP > Skins & Templates > HTML Templates

в Template Tools выбираем редактируемый скин и кликаем на кнопку Run Tool

Ссылка на комментарий
Поделиться на других сайтах

1. проверь, записывается ли информация введенная с админки в базу...

2. проверь, правильно ли ты отредактировал файл skin_topic.php...

Ссылка на комментарий
Поделиться на других сайтах

еще одно легкое добавление.

учитывая то, что некоторые шрифты со стандартным параметром size отображаются слишком мелко, ввел установку размера шрифта. установка размера производится исключительно с админ панели, так как пользователи могут прописать себе сумасшедший размер.

 

ВНИМАНИЕ! Данное добавление устанавливается после версии 1.2

 

итак, для начала правим таблицу ibf_members.

в AdminCP > mySQL Toolbox внизу страницы в поле Manual Query вводим SLQ-запрос:

alter table ibf_members
add `psize` text not null;

 

 

 

/sources/Admin/ad_member.php

 

ищем:

 	$ADMIN->html .= $SKIN->add_td_row( array( "<b>Post Font</b>" ,
              $SKIN->form_input("pfont", $mem['pfont'])
              )      );

ниже добавляем:

 	$ADMIN->html .= $SKIN->add_td_row( array( "<b>Post Font size</b><br>Font size for all users post (pixels). Not editable from UsersCP." ,
              $SKIN->form_input("psize", $mem['psize'])
              )      );

 

ищем:

               'pfont'        => $IN['pfont'],

ниже добавляем:

               'psize'        => $IN['psize'],

 

/sources/Topics.php

 

ищем:

m.pfont,m.pcolor,

заменяем на:

m.pfont,m.pcolor,m.psize,

 

 

/Skin/s1/skin_topics.php

 

ищем:

<font color='{$author['pcolor']}' face='{$author['pfont']}'>{$post['post']}</font>

 

заменяем на:

<span style="font-family:{$author['pfont']}; font-size:{$author['psize']}px; color:{$author['pcolor']}">{$post['post']}</span>

 

 

сохраняем все файлы, заливаем в соответствующие каталоги и рассинхронизируем скины через AdminCP > HTML Templates

 

 

 

2 lool

Добавлено в [mergetime]1074349303[/mergetime]

1)Как проверить?

2)Вроде да

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

Ссылка на комментарий
Поделиться на других сайтах

  • 6 месяцев спустя...

Столкнулся сегодня с установкой этого мода - вношу некоторые замечания!

 

1.

2.

****************************************

lang_ucp.php

// для английского языка

 

ищем в конце файла:

 

);

?>

 

и высше добавляем:

 

po_option  =>  "Option",

po_curset  =>  "Current Setting",

po_color   =>  "Post color",

po_font    =>  "Font face",

po_sect    =>  "Post options",

po_butt    =>  "Apply",

po_mess    =>  "Your Post Settings has been updated",

po_warn    =>  "<span style='color:red'><b>Warning!</b></span> This options is affected to all your posts!<br /> Color settings is a numerical format or is a name of color<br />For example: RED color is a numerical as #FF0000 or is name is RED<br />If you don't known any colors or font face names - live this options is blank.<br /><br />Font face name set only if you sure of this font is exist in all members!",

Если б я был англичанином, я бы голову сломал, читая это. :) Предлагаю более литературный ;) вариант:

po_option  =>  "Option",

po_curset  =>  "Current Setting",

po_color   =>  "Post color",

po_font    =>  "Font face",

po_sect    =>  "Post options",

po_butt    =>  "Apply",

po_mess    =>  "Your Post Settings have been updated",

po_warn    =>  "<span class='red'><b>Warning!</b></span> This options affects all your posts!<br />Color setting must be in hexadecimal format, or color name (e.g. red, blue, green etc.)<br />Note: RED color has a hexadecimal value of #FF0000<br />If you don't know any colors or font face names - leave these options blank.<br /><br />Font face name will only be set if other members have this font installed!",

 

2.

ниже добавляем:

 

function post_settings(){

global $ibforums, $DB, $std, $print;

// Lets get your data

$DB->query("SELECT * FROM ibf_members WHERE id='".$ibforums->member['id']."'");

$member = $DB->fetch_row();

$this->output .= $this->html->PostSettings($member);

$this->page_title = $ibforums->lang['t_welcome'];

$this->nav        = array( "<a href='".$this->base_url."&act=UserCP&CODE=00'>".$ibforums->lang['t_title']."</a>",

"{$ibforums->lang['po_sect']}",

);

}

 

function do_post_settings(){

global $ibforums, $DB, $std, $print;

$DB->query("SELECT * FROM ibf_members WHERE id='".$this->member['id']."'");

$member = $DB->fetch_row();

$db_string = $DB->compile_db_update_string( array(

'pcolor' => $ibforums->input['pcolor'],

'pfont' => $ibforums->input['pfont'],

)      );

$DB->query("UPDATE ibf_members SET $db_string WHERE id='{$this->member['id']}'");

 

$print->redirect_screen( "{$ibforums->lang['po_mess']}", 'act=UserCP&CODE=PostSettings' );

}

Два лишних SQL-запроса + нефильтрованные данные в базе! Не надо помогать кулхацкерам, пусть сами себе помогают.

Мой вариант:

 function post_settings()
{
  global $ibforums, $DB, $std, $print;
  
  $this->output .= $this->html->PostSettings($this->member);
  $this->page_title = $ibforums->lang['t_welcome'];
  $this->nav = array( "<a href='".$this->base_url."act=UserCP&CODE=00'>".$ibforums->lang['t_title']."</a>", "{$ibforums->lang['po_sect']}" );
}

function do_post_settings()
{
  global $ibforums, $DB, $std, $print;
  
  if (preg_match('/[^a-zA-Z0-9#]/' , $ibforums->input['pcolor'])) $ibforums->input['pcolor'] = '#000';
  if (preg_match('/[^a-zA-Z0-9\s]/', $ibforums->input['pfont']))  $ibforums->input['pfont'] = '';
  
  $db_string = $DB->compile_db_update_string( array(
              	'pcolor' => $ibforums->input['pcolor'],
              	'pfont'  => $ibforums->input['pfont'],
              )      );
  
  $DB->query("UPDATE ibf_members SET $db_string WHERE id='{$this->member['id']}'");
  
  $print->redirect_screen( "{$ibforums->lang['po_mess']}", 'act=UserCP&CODE=PostSettings' );
}

 

Про замену font на span Z уже написал. Обращаюсь к народу: народ, юзайте span, ибо font - это уже не круто! :D

Ссылка на комментарий
Поделиться на других сайтах

PS Я бы ещё предложил SQL-запрос подсократить - вот такого
ALTER TABLE ibf_members
ADD `pcolor` VARCHAR(32) NOT NULL,
ADD `pfont` VARCHAR(128) NOT NULL;

имхо, вполне достаточно.

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

В AdminCP > mySQL Toolbox в самом низу, в поле Manual Query вводим комманду добавления полей

к базе данных ibf_members.

 

alter table ibf_members

add `pcolor` text not null,

add `pfont` text not null;

 

нажать Run Query.

 

Внимание! Если при установке форума вы выбрали другой префикс баз данных (не ibf_) - в комманде

следует указать название базы с префиксом.

Например, если префикс баз данных указан db_ - в комманде добавления следует вместо

ibf_members написать правильное (ваше) название базы, т.е. db_members. Посмотреть правильный

префикс можно непосредственно в mySQL Toolbox - перечисленные базы будут указаны с префиксом.

 

помогите плиз с этим пунктом1 я ничего здесь не поняла. где это и что сделать нужно? помогите.

Добавлено в [mergetime]1096029585[/mergetime]

лезем в админку AdminCP > Skins & Templates > HTML Templates

в Template Tools выбираем редактируемый скин и кликаем на кнопку Run Tool

 

и какой выбираем редактируемый скин? не понятно :D

Добавлено в [mergetime]1096030105[/mergetime]

почему в примерах все на русском, а у меня на английском? как это исправить?

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...
  • 1 год спустя...

Народ , а как сделать толстый\тонкий\подчёркнутый шрифт что б ешё был ? Пытался сделать новую переменную , и в Topics.php вставлят там такой код :

<{$autors[field_2]}> ... </{$autors[field_2]}>

И в выбор ставил p , b , i , u , но если стоит p ( по умолчанию ) то перед сообщениями появляется - <>

Не подскажите где я ошибся ?

Ссылка на комментарий
Поделиться на других сайтах

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.