dle.in.ua » Хаки » Модифицированное отображение страницы персональных сообщений

Модифицированное отображение страницы персональных сообщений

Автор: rashpil от 17-04-2010, 14:37
Модифицированное отображение страницы персональных сообщений


Здравствуйте уважаемые так сказать товарищи по оружию :) Недавно задумался об изменении вида и структуры персональных сообщений. Недавно пришла идея сделать открытие страницы персональных сообщений в новом окне, без блоков, притом чтобы окно это было определённых размеров.
Ну и чтобы это окно выводилось при нажатии на кнопку "Прочитать" при уведомление о новом сообщении.
Расскажу вам как добиться этого :)
1. Нужно отключить отображение колонок и логотипа на странице персональных сообщений. Делаем это стандартными средствами DLE, ибо его создателями был сделан волшебный тег [aviable]

Открываем файл: templates/ИМя_Вашего_Шаблона/main.tpl
После:
{AJAX}

Вставляем:
[not-aviable=pm]

А перед :
{info}
{content}

Вставляем закрытие тега
[/not-aviable]
тем самым мы пока отключили отображение логотипа, левой колонки и прочей ерунды. Дальше нужно отключить вторую колонку и падвал.
Для этого после тега
{content}
вновь вставляем
[not-aviable=pm]
,
а уже перед тегами:
</body>
</html>

Вставляем
[/not-aviable]
.

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

2. Открываем файл login.tpl (Для тех кто не вкурсе, он находится в той же папке что и main.tpl)

Находим:
<a href="{$link_pm}">ПС ({$member_id['pm_unread']} | {$member_id['pm_all']})</a>

И заменяем это на:
<a href="javascript:void(0);" onclick="javascript:window.open('{$link_pm}', '_blank', 'Toolbar=0, Scrollbars=0, Resizable=0, Width=560, resize=no, Height=350'); return false;">ПС ({$member_id['pm_unread']} | {$member_id['pm_all']})</a>


Где Width=560 это значение ширины, а Height=350 в свою очередь означает высоту.

3. Теперь нужно заставить открываться это окно из уведомления о новом сообщении и сделаем мы это следующим образом:
Открыть файл engine/modules/pm_alert.php

В нём ищем запись:
<a href="{$PHP_SELF}?do=pm">{$lang['pm_aread']}</a>

Заменяем её на:
<a href="javascript:void(0);" onclick="javascript:window.open('{$PHP_SELF}?do=pm', '_blank', 'Toolbar=0, Scrollbars=0, Resizable=0, Width=560, resize=no, Height=350'); return false;">{$lang['pm_aread']}</a>


Хак этот неимеет особого смысла и большой роли в жизни сайта не играет, так что тех кому он не пришёлся по душе, прошу сильно не ругаться :) Ибо делал я его для себя, и выложил преследуя исключительно спортивный интерес :)
  • Группа: Модератор +
  • Icq: --
  • Комментариев: 191
  • Публикаций: 14
  • По идеи, зря... Должно блочится антибаннерами, KIS 2009/2010 в частности.

    --------------------
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 4
  • Публикаций: 0
  • Антибаннер не должен блочить. У него же определенная база блокируемых баннеров и т.п.
    Идея отличная, попробуем...
    • Serega12689
    • Регистрация: 17.08.2009
    • Репутация: (0|0|0)
    • 17 апреля 2010 14:59
    • 2
    ^
  • Группа: Модератор +
  • Icq: --
  • Комментариев: 191
  • Публикаций: 14
  • Эм, не только... Ещё всплывающие окна блочатся той же оперой по умолчанию... Надо тестировать на совместимость с KIS'ом и Oper'ой...
    Вечером попробую, потом отпишусь...

    --------------------
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 26
  • Публикаций: 2
  • Горбушка, Я сам использую KIS и в том числе антибаннер встроенный в систему, и ничего не блокировалось. Модуль Оперы "Антибаннер" не использовал, но думаю что и с оперой будет всё впорядке
    • rashpil
    • Регистрация: 24.11.2009
    • Репутация: (0|0|0)
    • 17 апреля 2010 17:52
    • 4
    ^
  • Группа: Модератор +
  • Icq: --
  • Комментариев: 191
  • Публикаций: 14
  • rashpil, сейчас поставил, старая версия оперы спросила открывать/не открывать, но в 10-ке проблем нету. KIS тоже съел winked Просто я с настороженностью отношусь к всплывающим окнам...

    Ну что могу сказать? Респект и уважуха!

    --------------------
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 37
  • Публикаций: 0
  • а как сделаь ответы на ПС ajax окне в ДЛЕ 9?
    • hayk
    • Регистрация: 25.08.2008
    • Репутация: (0|0|0)
    • 5 декабря 2010 22:29
    • 6
    ^
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.