Мы в твиттере Мы в телеграме!

Провеббер » DataLife Engine » DLE хаки » Хак - Блоки как вконтакте для DLE

Набор в команду! Ведется набор в команду, для наполнения сайта новым, интересным контентом. Если у тебя есть предложения, свободное время, ты обладаешь интересным контентом, и хочешь поделиться с другими?
Обращайся к нам в ЛС группы Вконтакте.

Хак - Блоки как вконтакте для DLE

Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Хак - Блоки как вконтакте для DLE.

Хак - Блоки как вконтакте для DLE


Автор: MSW
ICQ: 365-888
Email: [email protected]

Функционал: работает на аяксе, если меню было отключено пользователем - то при повторной загрузке/обновлении страницы содержимое блока загружено не будет!
что решило заявленные в первом посте недостатки

Теперь данный хак подходит только для ДЛЕ версии 8.2
Так как содержимое менюшек нужно будет перенести в отдельные пхп файлы и просто инклудить в шаблон.


Создаём файл: /templates/ваш_шаблон/js/block.js

function setCookie(name, value, expiredays, path, domain, secure) {
    if (expiredays) {
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        var expires = exdate.toGMTString();
    }
    document.cookie = name + "=" + escape(value) +
    ((expiredays) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}
function getCookie(name) {
    var cookie = " " + document.cookie;
    var search = " " + name + "=";
    var setStr = null;
    var offset = 0;
    var end = 0;
    if (cookie.length > 0) {
        offset = cookie.indexOf(search);
        if (offset != -1) {
            offset += search.length;
            end = cookie.indexOf(";", offset)
            if (end == -1) {
                end = cookie.length;
            }
            setStr = unescape(cookie.substring(offset, end));
        }
    }
    return setStr;
}
function block_ajax(id) {
    if(getCookie(id) == 1) {
        setCookie(id, 0, 90, "/");
    } else {
        setCookie(id, 1, 90, "/");
    }
    var ajax = new dle_ajax();
    ajax.setVar("id", id);
    ajax.setVar("edit", "1");
    ajax.requestFile = dle_root+"engine/modules/block/"+id+".php";
    ajax.method = 'POST';
    ajax.element = id;
    ajax.sendAJAX("");
    return false;
}



Создаём файл инклуженого меню: /engine/modules/block/test.php

<?php
if($_REQUEST['edit'])
{
define('DATALIFEENGINE', true);
define('ROOT_DIR', '../../..');
define('ENGINE_DIR', '../..');

include ENGINE_DIR . '/data/config.php';
require_once ENGINE_DIR . '/classes/mysql.php';
require_once ENGINE_DIR . '/data/dbconfig.php';
require_once ENGINE_DIR . '/modules/functions.php';

@header("Content-type: text/css; charset=windows-1251");
}

$name = "test";

$cookie = $_COOKIE["{$name}"];

$content = "<div id=\"{$name}\">";

if($cookie == 1 || !isset($cookie))
{
$content .= <<<HTML
    <table>
        <tr onclick="block_ajax('{$name}')" style="cursor:pointer;">
            <th>Заголовок блока</th>
        </tr>
        <tr>
            <td>Содержимое блока</td>
        </tr>
    </table>
HTML;
}
else
{
$content .= <<<HTML
    <table>
        <tr onclick="block_ajax('{$name}')" style="cursor:pointer;">
            <th>Заголовок блока</th>
        </tr>
    </table>
HTML;
}
$content .= "</div>";

echo $content;
?>


Подключаем файл в шаблон: main.tpl
Найти:

</head>



Добавить выше:

<script type="text/javascript" src="{THEME}/js/block.js"></script>



В нужном месте для вывода блока:

{include file="engine/modules/block/test.php"}


Вот и всё, установка закончена :)


Дополнительные ссылки на скачивание ТОЛЬКО для зарегистрированных


-4
Просмотры: 17 716 :: Комментарии (30) :: :: Нужна помощь? Задайте вопрос на форуме ::
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#21BR0kEN

  • 30 декабря 2009 22:11
  • Регистрация: 29.11.2009
  • Был(а) онлайн: 30.11.2013
  • Комментариев: 255
  • 0
Когда уже версия с тегами???

--------------------

#22narkoz21

  • 31 декабря 2009 09:21
  • Регистрация: 28.11.2009
  • Был(а) онлайн: 18.01.2017
  • Комментариев: 24
  • 0
а для чего он чет нифига не пойму

#23goga

  • 3 января 2010 14:17
  • Регистрация: 23.09.2009
  • Был(а) онлайн: 19.05.2011
  • Комментариев: 78
  • 0
для понта он нужен)) и для удобства чтоб меньши прогружалось)

#24abatsk

  • 10 января 2010 10:38
  • Регистрация: 10.01.2010
  • Был(а) онлайн: 6.11.2018
  • Комментариев: 42
  • 0
Где можно посмотреть пример в действии? Что-то я не догнал суть хака( вконтакте не сижу, может поэтому непонял.

#25Keag

  • 11 января 2010 00:06
  • Регистрация: 8.01.2010
  • Был(а) онлайн: 14.03.2010
  • Комментариев: 25
  • 0
хрень!
ничего не получилось...

#26MSW

  • 20 января 2010 09:04
  • Регистрация: 28.11.2009
  • Был(а) онлайн: 2.01.2020
  • Комментариев: 153
  • 0
Keag,
внатуре, если руки растут не от туда то можно жаловать и на воздух, что он не работает как положено и нужном количестве не насыщает кровь кислородом.

abatsk,
посмотреть можно тут - http://megafile.mksat.net/

--------------------

#27nsdss

  • 20 января 2010 09:39
  • Регистрация: 10.01.2010
  • Был(а) онлайн: 13.03.2015
  • Комментариев: 457
  • 0
Цитата: MSW
http://megafile.mksat.net/

спасибо. посмотрел. Или у меня инет глючит, или после нажатия на "Свернуть блок" чото долго думает, а потом только сворачивает.
Я так понял данное чудо можно сделать для ЛЮБОГО шаблона?
Пойду пробовать. Вообще интеесная вещь конечно, респект автору.

У меня отображается только код блока, т.е. пытался сделать опрос, отображается только {vote}

--------------------

#28nsdss

  • 25 января 2010 15:04
  • Регистрация: 10.01.2010
  • Был(а) онлайн: 13.03.2015
  • Комментариев: 457
  • 0
Алло, ребят, меня кто-нибудь слышит? Админы, модеры простите за то, что пишу повторно, но хочется, что бы мой пост заметили и ответили что я сделал не так, что неработает данный хак у меня.

--------------------

#29shynk75

  • 12 февраля 2011 12:23
  • Регистрация: 31.10.2010
  • Был(а) онлайн: 18.06.2011
  • Комментариев: 10
  • 0
Спасибо огромное

#30Fentoozler

  • 18 июня 2011 07:50
  • Регистрация: 15.06.2011
  • Был(а) онлайн: 27.01.2012
  • Комментариев: 10
  • 0
А скрин можно посмареть? А то я чет не понял что именно он дает.

1 2
Предыдущая    Следующая
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Архив новостей
Ноябрь 2024 (9)
Октябрь 2024 (169)
Сентябрь 2024 (13)
Август 2024 (60)
Июль 2024 (12)
Июнь 2024 (30)