Хаки и Скрипты Next Generation CMS

Хак - Добавление в редактор кнопочек цвета и размера шрифта

irbees2008 irbees2008 Опубликовано - 5 - апреля Интерфейс
4243 - 4
  • Автор: CyberMama
  • Обсудить на :на форуме
  • Адаптировал: CyberMama
  • Уровень сложности исполнения: это делается простым копированием и нажиманием кнопки

В стандартном редакторе ng всё-таки не хватает выбора цвета и особенно размера шрифта. А цвет текста хоть и был заложен но мы и это упростим.

Приступим.
1. в engine/skins/default/tpl qt_news qt_static (qt_editcomm qt_pmmes - по желанию) в желаемом месте добавляем

Код:
<select name="txtcolor" size="1" onChange="insertfortext('color',document.form.txtcolor[document.form.txtcolor.selectedIndex].value,{area});">
<option value="#000000" selected style='background-color:#000000;height:15px;width:40px;'>Цвет
<option value="#408080" style='background-color:#408080;height:15px;width:40px;'>
<option value="#C0C0C0" style='background-color:#C0C0C0;height:15px;width:40px;'>
<option value="#730200" style='background-color:#730200;height:15px;width:40px;'>
<option value="#231800" style='background-color:#231800;height:15px;width:40px;'>
<option value="#044302" style='background-color:#044302;height:15px;width:40px;'>
<option value="#0D09A3" style='background-color:#0D09A3;height:15px;width:40px;'>
<option value="#808040" style='background-color:#808040;height:15px;width:40px;'>
<option value="#800080" style='background-color:#800080;height:15px;width:40px;'>
<option value="#444444" style='background-color:#444444;height:15px;width:40px;'>
<option value="#FF0400" style='background-color:#FF0400;height:15px;width:40px;'>
<option value="#EFE800" style='background-color:#EFE800;height:15px;width:40px;'>
<option value="#05EF00" style='background-color:#05EF00;height:15px;width:40px;'>
<option value="#0206FF" style='background-color:#0206FF;height:15px;width:40px;'>
<option value="#AE08EF" style='background-color:#AE08EF;height:15px;width:40px;'>
<option value="#FF8C8A" style='background-color:#FF8C8A;height:15px;width:40px;'>
<option value="#FF80FF" style='background-color:#FF80FF;height:15px;width:40px;'>
<option value="#FFCCCC" style='background-color:#FFCCCC;height:15px;width:40px;'>
<option value="#FFCC99" style='background-color:#FFCC99;height:15px;width:40px;'>
<option value="#000080" style='background-color:#000080;height:15px;width:40px;'>
<option value="#808080" style='background-color:#808080;height:15px;width:40px;'>
<option value="#D5CCBB" style='background-color:#D5CCBB;height:15px;width:40px;'>
<option value="#DDDDDD" style='background-color:#DDDDDD;height:15px;width:40px;'>
<option value="#FBFF73" style='background-color:#FBFF73;height:15px;width:40px;'>
<option value="#7CFF7D" style='background-color:#7CFF7D;height:15px;width:40px;'>
<option value="#A6BEFF" style='background-color:#A6BEFF;height:15px;width:40px;'>
<option value="#FFFFFF" style='background-color:#FFFFFF;height:15px;width:40px;'>
</select>
<select name="txtsize" size="1" onChange="insertfortext('size',document.form.txtsize[document.form.txtsize.selectedIndex].value,{area});">
<option value="1" style="font-size:1;"> 1
<option value="2" style="font-size:2;"> 2
<option value="3" selected style="font-size:3"> 3
<option value="4" style="font-size:4"> 4
<option value="5" style="font-size:5;"> 5
</select>
Цвета, размеры шрифтов настроить по вкусу.

2.Для релиза 0.93engine/includes/js/function.js ,для SVN lib/function.js добавить в самый конец после }
Код:
function insertfortext(teg,val,field){
try { var msgfield = document.getElementById((field=='')?'content':field);
} catch (err) {
return false;
}
var open ='['+teg+'="'+val+'"]';
var close='[/'+teg+']';
// IE support
if (document.selection && document.selection.createRange){
msgfield.focus();
sel = document.selection.createRange();
sel.text = open + sel.text + close;
msgfield.focus();
}
// Moz support
else if (msgfield.selectionStart || msgfield.selectionStart == "0"){
var startPos = msgfield.selectionStart;
var endPos = msgfield.selectionEnd;
msgfield.value = msgfield.value.substring(0, startPos) + open + msgfield.value.substring(startPos, endPos) + close + msgfield.value.substring(endPos, msgfield.value.length);
msgfield.selectionStart = msgfield.selectionEnd = endPos + open.length + close.length;
msgfield.focus();
}
// Fallback support for other browsers
else {
msgfield.value += open + close;
msgfield.focus();
}
return true;}
3. engine/includes/classes/parse.class.php
например после
Код:
$content    =    preg_replace("#\[br\]#is", "<br/>", $content);

Добавить
Код:
while (preg_match("#\[size=\"(.+?)\"\](.*?)\[/size\]#is", $content, $null))

$content = preg_replace("#\[size=\"(.+?)\"\](.*?)\[/size\]#is", '<font size="$1">$2</font>', $content);
Вот и все, все выделения цветомсделаны в этой статье сделаны этим хаком.

Можешь почитать и вот эту статейку "Пишем файл main.tpl"

Опрос

Ваше мнение

Вы нашли что искали?
Результаты

Последние комментарии

Теги

Anything in here will be replaced on browsers that support the canvas element

Статистика

  • Caйту: 4403 дня
  • Новостей: 566
  • Комменты: 257
  • Зарегистрированно : 662
  • Онлайн всего: [3]
  • Гости: [2]
  • Поисковики: [1] Google
  • Были сегодня : [3] Google, Яндекс, Яндекс
  • SQL запросов: 30
  • Генерация страницы: 0.268сек
  • Потребление памяти: 5.172 Mb 
  •   Яндекс.Метрика