 |
 |
Форум сетевых администраторов » Веб Форумы » VBulletin 2.x.x » Хаки от Netadmin или "Сделай сам" » Some hacks for vB 2.2.6
| Автор |
| Тема |
 |
|
 |
|
|
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Да простят меня админ и модераторы форума, но первые три поста в этой теме будут моими. Ниже будут описаны 2-а хака написанных некогда для знакомых админов, они преследуют идей украшательства в той или иной форме. Возможно, им существуют аналоги, однако я не задавался целью найти их.
При описании некоторых хаков я приводил предысторию создания этого хака, в общем, она несет больше информационную пользу, нежели практическую, поэтому для особо ценящих время людей рекомендую эту часть опускать, для большего удобства она отделена горизонтальной чертой от основной - описательной части.
З.Ы. В который раз убеждаюсь, что писать доку к программам/скриптам есть неимоверный труд для программиста (кто писал тот поймет). Если найдете корявости в описаниях не судите строго, ведь бывает и так, что что-то тебе кажется простым и очевидным, для другого окажется сложным и не логичным.
З.З.Ы. В ближайшее время будет добавлен еще один хак, как только перейду к другому прову на выделенку.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
31-07-2002 14:32 |
|
|


-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Один из моих знакомых админов попросил написать ему хак для vB, что бы можно было определять тройку авторов с самым большим к.п.д. за неделю. Дело в том, что у него (админа) на борде сделана раздача авардов самым плодовитым авторам на форумах, однако возникла проблема - человека, который некогда стал лидером с кол-вом постов за 1000, любому новичку не догнать, при том лидеру достаточно раз в неделю написать 2-3 поста для сохранения лидерства. Вот у него и родилась идея поощрять не только старожителей форумов, а вообще всех (в т.ч. и тех же новичков).
В общем я создал этот хак и так как мой знакомый не имеет претензий (как генератор идеи) на то, что я буду распространять этот хак бесплатно в народ, я выкладываю его вам, может у кого-нибудь схожая ситуация или просто хочется выделить актив своего форума.
__________________________________________________
Установка:
В общем так, лень меня покорила и инсталляшку писать не хочется, поэтому выкладываю чистые файлы vB 2.2.6 с установленным хаком, Вам останется установить только таблицы в Вашу БД (при помощи winst.php) и в одном месте дополнить template (что по нашему шаблон!). Архив со всем прилагается, хак выделен комментариями, так что сориентируетесь.
Идея работы хака:
Хак должен определять тройку людей, чья активность на всех форумах за неделю оказалась наибольшей, ну и соответственно как-то поощрять их. Как это работает? Пользователь за неделю (с понедельника по понедельник) создает темы, пишет в темах, а мы это все учитываем при помощи раздачи очков этим пользователям, и в начале новой недели определяются три пользователя, с наибольшим количеством очков, набранных на прошлой неделе, которым и раздаются аварды и так каждую неделю.
Ð_аздача очей:
'1' - очко за ответ в теме
'2' - очка за создание новой темы
'-1' - очко за удаление ответа
и соответственно
'-2' - за удаление темы (за все удаленные в этой теме сообщения их авторам очки не снимаются!).
Для чего нужен файл winst.php:
Данный файл лежит в каталоге admin и позволяет установить таблицы необходимые для работы хака в Вашу БД. Так же он отвечает за установку начальной даты, с которой будет вестись отсчет недель. Данный скрипт должен быть запущен единожды, перед началом использования хака, после этого он может быть удален.
Внимание: повторный запуск скрипта приводит к ошибке при обращении к БД, сие никоем образом не портит Вашу БД, а также не влияет на работу хака.
Дополнение template:
Если Вы хотите использовать аварды, как это предусмотрено изначально в этом хаке, то в Postbit Templates в шаблоне Postbit вставьте в нужном Вам месте строчку - $status.
Файл: weektop.zip
Был скачан 56 раз(а).
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
31-07-2002 14:33 |
|
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Идея хака:
Собственно хак предсталяет собой расширение возможностей при создании собственных тайтлов (custom titles). Он позволяет создавать цветные тайтлы, а также тайтлы с некоторыми эффектами DHTML (Shadow, Glow, DropShadow).
В исходной версии доступно только 3 эффекта и 8 рабочих цветов, однако, все это может быть дополнено даже Вами самими.
Написание тайтла с цветом:
Принцип написания тайтла достаточно прост (ИМХО, а возможно просто других идей по введению цвета не было), кто знаком с этим действом в Q3 поймет .
Перед выделяемым цветом фрагментом/буквой ставится указатель цвета - ^x, где x - код цвета от 0 до 8.
К примеру надо получить что-то вроде этого :
In G0D We Trust
То в поле изменения тайтла вводим:
In ^1G^2O^4D ^5We ^0Trust
И все! Получаем желаемый результат.
Список индексов цветов:
Для полноты картины приведу еще и его
- 0 - Черный
- 1 - Синий
- 2 - Зеленый
- 3 - Голубой
- 4 - Красный
- 5 - Фиолетовый
- 6 - Коричневый
- 7 - Серый
- 8 - Белый
Написание тайтла с эффектами DHTML:
Принцип вроде тот же, что и с цветом, однако, обозначение несколько иное:
[ax1x2], где x1 - обозначение действия (s-Shadow, g-Glow, d-DropShadow), а x2 - код цвета текста (см. выше).
Пример:
[ag8]In ^2G0D ^8We Trust
Будет создан тайтл с эфектом Glow белым цветом и зеленым G0D'ом по середине Как видно из примера допускается сочетание эффекта и цвета.
При работе с данными тегами (а вернее с эффектами DHTML) возникла одна проблема, решение которой потребовало зафиксировать место положения тэга. Он должен распологаться только в начале текста, т.е. нельзя применить эффект например только ко второму слову в тайтле, а другое, например первое, оставить без изменений. Собственно, это не недостаток самого хака, а несколько непонятная мне работа DHTML - он переносит текст с эффектом на новую строку. Так что конструкции типа: In [ag8] G0D ^8We Trust восприниматься как тег не будут!
Установка:
Все по тем же причинам, изложенным выше, инсталляции как таковой нет. Однако она, как таковая и не требуется. Поэтому выкладываю файл admin/functions.php с поставленным хаком (файл чистый от vb 2.2.6). В архиве так же имеется screenshot всего этого (как оно работало у меня). Замечу так же, что тайтл пользователя так же выводится в Private Messages, когда просматриваем входящие сообщения (поэтому, если это необходимо, следует фиксить файл private.php, иначе будет тайтл с тэгами (не очень красиво )), а так же при выводе информации о пользователе (в member.php), не красивости были так же найдены и при выводе анонсов.
Как это сделать? Читайте комментарии в файле functions.php
Замечание: Если в некоторых местах Вы хотите что бы выводился нормальный тайтл воспользуйтесь функцией clear_ctitle, в таком виде (приведено для строки $str):
$str = clear_ctitle($str);
Дополнение templates:
Для работы DHTML эффектов добавляем в headinclude перед $headnewpm
<STYLE>.pr2 {
FILTER: Shadow(Color="#000000", Direction="150")
}
</STYLE>
<STYLE type=text/css>.pr4 {
FILTER: Glow(Strength=2, Color="#0066cc")
}
</STYLE>
<STYLE>.pr6 {
FILTER: DropShadow(Color="#999999",OffX="2",OffY="2",Positive="1")
}
</STYLE>
Плюс в Postbit Templates в шаблоне Postbit удалите <br> после $post[usertitle]</smallfont>
Файл: ctitle.zip
Был скачан 35 раз(а).
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
31-07-2002 14:34 |
|
|
MuZzClub.ru
|
| спасибо! а вот аналогичный первому хаку был... |
[сооб. #18083]
31-07-2002 19:34 |
|
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Продолжение!!!
Часто приходится видеть, как модераторы/администраторы на форумах что бы создать правила для конкретного форума создают тему, помещают туда правила, делаю ее always on top (stick) и закрывают, дабы не было обсуждений правил. В общем, то это кажется, наиболее приемлемым путем при создании правил, однако приходится делать много лишних телодвижений, да и вид вывода самих правил ни чем не будет отличаться от любой заурядной темы (тем более при отключенном то HTML коде). А если необходимо что бы эти правила были доступны для категории форумов (т.е. что бы в каждом форуме из этой категории были одни и те же правила), да еще категория содержит форумов более 10-ти штук, вот здесь придется попотеть. Еще меньше радует то, что после проделанной работы по предыдущему пункту, необходимо внести в эти правила небольшие изменения.
Собственно все эти доводы не принадлежат мне. Так что до некоторого времени, и я считал, что проще сделать stick & close, чем создавать нечто для создания правил.
Возможно, кто-то скажет, что можно создавать правила при помощи анонсной системы, тогда они будут удовлетворять всем этим требованиям (если изменить шаблоны вывода анонсов вообще будет хорошо). И, в общем, они будут правы, собственно для создания хака и была использована анонсная система.
__________________________________________________
Установка:
Скажу просто - как и у первых двух Конечно, для этого хака стоило бы написать хорошую инсталляшку, но есть проблема установка хака требует множественных изменений в файлах, а как показывает практика - чем больше действий должен совершить человек, тем проще в них совершить ошибку (возможно даже не по своей вине (( ) Но для работы с БД все же создан скрипт помогающий в установке - rulins.php, как им пользоваться и что он делает, описано ниже.
Идея работы хака:
Проста как пареная репа. Выше было сказано, что для создания хака использована анонсная система, более того это она и есть, правда в измененном варианте. Как и в анонсах, право создания правил для определенного форума имеют модераторы этого форума и администраторы (хотя для них определенность форума роли не играет ). Более того у модераторов можно отбирать возможность создания правил на форуме.
Для правил, так же как и для анонсов работает лимит действия, т.е. когда начинаем выводить правила и когда заканчиваем. По правде сказать, необходимость этой возможности спорна, однако unlimit для правил сделан, просто впишите нулевую дату (0000-00-00) в срок окончания действия правил, хотя Вы можете поставить срок и на 3002 год и думаю мало, кто в ближайшие 800 лет сможет оспорить unlimit'ность Ваших правил, не говоря уж про практическую проверку )) (однако, на всякую хитрую задницу сами знаете что находится (( (еще более хитрая, ну для тех кто не знал))
Принцип главенства правил:
Если форум не имеет своих правил и в то же время свод правил установлен для категории форумов, к которой он (форум) принадлежит - то в этом форуме будет выведен этот свод.
Если же форум имеет свои правила - то вне зависимости от того имеет ли категория правила или нет, всегда будут выведены правила форума.
Если форум имеет несколько сводов правил, то выводятся самые первые (т.е. которые были созданы самыми первыми).
Для тех, кто не ясно уловил идею, вместе с хаком приведена ступенчатая схема (главный элемент всегда находится сверху).
Информация о rulins.php:
Скрипт предназначен для модернизации таблиц в Вашей БД в соответствии с требованиями хака. Так же при помощи этого скрипта можно добавить изменения в шаблоны, а так же добавить новые - необходимые для хака. При запуске этого скрипта Вам будет предложен список дальнейших действий, думаю, не ошибетесь при выборе там все подробно описано. Естественно каждое действие следует производить однократно (особенно это касается изменения и добавления шаблонов), иначе это может привести к непредсказуемой работе всей борды.
Замечение: проверьте наличие добавляемых полей в Ваших таблицах (при помощи phpmyadmin или еще чего-то доступного), возможно что одно из полей может быть не создано (по неизвестной мне причине, так было у меня*), тогда придейтся выполнить запросы в ручную. Вот эти запросы: ALTER TABLE `announcement` ADD `isrule` SMALLINT(6) DEFAULT '0' NOT NULL; и ALTER TABLE `moderator` ADD `canaddrules` SMALLINT(6) DEFAULT '0' NOT NULL;
*Вообще, я склонен это связывать с особенностями работы MySQL составляющей vB на локалхосте (но это может быть и не так).
Внимание:
К сожалению, это описание не изобилует разъяснением процесса установки, так уж получилось, но если вдруг оно понадобится, то готов буду помочь. А если таковых будет большинство, тогда придется пересмотреть мою позицию и переборов свою леность написать более полное описание.
Файл: addrules.zip
Был скачан 61 раз(а).
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 10:35 |
|
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Некогда этот хак уже был зарелизен мной, да и не только мной на этом форуме. Если я не ошибаюсь то посмотреть сие можно здесь (если его не убили еще). Тот хак без проблем переносится на vb 2.2.6 и работает без глюков. Однако по прошествии некоторого времени он был доработан с учетом улучшения внешнего вида склеенных сообщений. В данной модификации хак может склеивать все посты, не зависимо от того имеет ли предыдущий или нынешний пост аттачи, причем без потерь информации и аттачей, данное проверено на практике, однако я остановился только на возможности склейки, а ведь есть еще и удаление постов (и там нужно переписывать буквально все функции удаления, как тем так и сообщений). По этому дабы не перегружать хак, да и не сотворить чего-нить, я решил все же эту возможность убрать.
__________________________________________________
Установка:
Коментарии ищите в файлах. С БД никаких перетурбаций делать не надо. Но в то же время есть необходимость создания и изменения шаблонов (об этом читайте ниже).
Идея работы хака:
Для тех кто не смог ознакомиться с вышеприведенным линком (советую все же ознакомиться, если конечно он доступен) в кратьсе: хак производит склейку сообщений посланных в одну тему в течении определенного интервала времени (при условии что оба поста были последними в этой теме), в общем объяснить это на пальцах сколь-нибудь внятно нельзя, такой же, по принципу работы, хак работает на этой борде.
Новые возможности хака:
+ Произведено переоформление вывода склеенных сообщений в теме.
+ Переоформлен вывод склеенных сообщений для печати (опция такая, кстати полезная для сохранения больших тем одним файлом).
+ Добавлена возможность вывода темы добавленного сообщения и его иконки (если таковые имеются).
+ Введены возможности редактирования склеенных сообщений, при этом оставляя место склейки (каждая часть склеенного сообщения редактируется отдельно)
+ Введены возможности удаления частей склеенного сообщения (а не всего сообщения сразу).
+ Появился шаблон части склеенного сообщения (для тех кто не понял, теперь его можно редактировать под свои нужды тем самым меняя вид вывода частей)
+ При склейке не происходит изменений счетчиков (у пользователя, темы), ни поднятия темы в списке.
Изменения в шаблонах:
Для установки новых шаблонов и осуществления изменений в старых воспользуйтесь скриптом itemplat.php, он автоматически создает новые шаблоны и дает инструкции по исправлению стандартных. Инструкции должны быть понятны.
Прикрепленный файл был битым, поэтому если Вам нужен этот хак обращайтесь ко мне в приват, пишите свое мыло, он будет отправлен Вам
Сообщение было отредактировано Vanish 30-08-2002 в 09:17
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 10:39 |
|
|
Потерявшийся
|
| Суппер, все хаки просто высший класс! Молодец!... |
[сооб. #19598]
09-08-2002 12:24 |
|
Потерявшийся


Зарегистрирован: Oct 2001
Место проживания: Tallinn, Estonia
Публикаций: 609
Статус:  |
Суппер, все хаки просто высший класс! Молодец!
__________________
**censored** Ты тут еще не был? ...
**censored** Админы форумов - сюда!!!
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 12:24 |
|
|
Нечто
|
а можно руководство по установке хаков?
а... |
[сооб. #19602]
09-08-2002 12:38 |
|
Нечто

Зарегистрирован: Feb 2002
Место проживания:
Публикаций: 754
Статус:  |
а можно руководство по установке хаков?
а то у меня заменять мои прохаченые файлы твоими нерезонно, а искать что там добавлено не очень хочется
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 12:38 |
|
|
-= n0b0dy =-
|
| Тогда в этих файлах ищи строки с комментариями... |
[сооб. #19605]
09-08-2002 12:44 |
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Тогда в этих файлах ищи строки с комментариями там куски выделены Hack Name - Предназначение и кончается (кусок в смысле) Hack Name - Конец. Ну а дальше куски в свои прохаканные файлы ставь. Однако не советую могут начаться глюки и баги, т.к. иногда некоторые хаки меняют одно и тоже, хотя вероятность этого мала (м.б. даже ничтожно )
__________________
No pity, no mercy, no regret.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 12:44 |
|
|
Потерявшийся


Зарегистрирован: Oct 2001
Место проживания: Tallinn, Estonia
Публикаций: 609
Статус:  |
А примеры есть этих хаков?
__________________
**censored** Ты тут еще не был? ...
**censored** Админы форумов - сюда!!!
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 12:55 |
|
|
-= n0b0dy =-
|
| Живых нет (в смысле в on-line) а заскринить могу...... |
[сооб. #19612]
09-08-2002 13:24 |
|
-= n0b0dy =-

Зарегистрирован: Oct 2001
Место проживания: rus|53
Публикаций: 624
Статус:  |
Живых нет (в смысле в on-line) а заскринить могу... Если надо... В некоторых архивах есть и уже готовые скрины, в описании должно быть отмечено про это.
__________________
No pity, no mercy, no regret.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 13:24 |
|
|
Потерявшийся
|
Vanish
Мне пожалуста скрины для хака правил..... |
[сооб. #19621]
09-08-2002 13:57 |
|
Потерявшийся


Зарегистрирован: Oct 2001
Место проживания: Tallinn, Estonia
Публикаций: 609
Статус:  |
Vanish
Мне пожалуста скрины для хака правил.. очень интересно как они выглядят... в разделах и под разделах... А так же сами правила (тоесть страница правил)
__________________
**censored** Ты тут еще не был? ...
**censored** Админы форумов - сюда!!!
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
09-08-2002 13:57 |
|
|
|
Формат времени GMT. Текущее время 23:24.
|
Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения. |
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
|
|
|
|
| |
Page generated in 0.01590705 seconds (56.43% PHP - 43.57% MySQL) with 27 queries.
|
 |