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

Провеббер » DataLife Engine » DLE модули » Сворачивающиеся блоки 2.1 (AJAX)

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

Сворачивающиеся блоки 2.1 (AJAX)

Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Сворачивающиеся блоки 2.1 (AJAX).

Сворачивающиеся блоки 2.1 (AJAX)


Автор: MSW
ICQ: 365-888
Версия DLE: 8.3
Пример: _http://megafile.mksat.net/_

Продолжение серии модуля: "Блоки как вконтакте"
Данный модуль позволяет создать на сайте сворачивающиеся и разворачивающиеся блоки. Каждый посетитель сайта может по собственному желанию свернуть/развернуть тот или иной блок для себя. После перезагрузки страницы блоки останутся в установленом положении.

Изменения относительно старых версий:
- динамическая подгрузка, после изменения, содержимого блока средствами AJAX
- возможность сворачивать/разворачивать содержимое тегов, по типу календарь, голосование, архив и т.д.

Установка:
Создать/отредактировать файл: /templates/ваш_шаблон/js/block.js

function block_ajax(id,z) {
    var ajax = new dle_ajax();
    ajax.setVar("action", z);
    ajax.setVar("edit", 1);
    ajax.requestFile = dle_root+"engine/modules/block/"+id+".php";
    ajax.method = 'POST';
    ajax.element = id;
    ajax.sendAJAX("");
    return false;
}

Файл: main.tpl
Найти:
</head>

Добавить выше:
<script type="text/javascript" src="{THEME}/js/block.js"></script>


Создать файл: /engine/modules/block/test.php

<?php
/*
================================
Сворачивающиеся блоки 2.1
================================
Автор: MSW
================================
ICQ: 365-888
================================
*/
//***** Настройка *** начало *****//
/*Внимание!
переменная $name_block - должна совпадать с названием файла, а также, в случае для тегов календарь, голосование и т.д. с именем этого тега!
*/
$name_block = "test";
//***** Настройка *** конец *****//
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';
    include_once ENGINE_DIR . '/classes/templates.class.php';
    include_once ENGINE_DIR . '/init.php';
    @header("Content-type: text/css; charset=windows-1251");
    if($_REQUEST["action"] == "off") {
        setcookie($name_block, 1, time()+32140800, "/");
        $cookie = 1;
    } else {
        setcookie($name_block, "", time()-60, "/");
        $cookie = 0;
    }
} else {
    $cookie = $_COOKIE["{$name_block}"];
}

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

if($cookie == 1) {
///свёрнутый блок
$content .= <<<HTML
        <tr onclick="block_ajax('{$name_block}','on')" style="cursor:pointer;">
            <th>Заголовок блока</th>
        </tr>
HTML;
} else {
//развёрнутый блок
/* Особенности:
- В случае для архива:
$block = ($_REQUEST['edit'] == 1) ? $tpl->result["archive"] : $this->data['{archives}'];

- Для других тегов:
$n = "{".$name_block."}";
$block = ($_REQUEST['edit'] == 1) ? $tpl->result[$name_block] : $this->data[$n];

в содержимое блока выводить переменную: $block
*/
$content .= <<<HTML
        <tr onclick="block_ajax('{$name_block}','off')" style="cursor:pointer;">
            <th>Заголовок блока</th>
        </tr>
        <tr>
            <td>Содержимое блока</td>
        </tr>
HTML;
}
$content .="</table></div>";

echo $content;
?>


В нужном месте для вывода блока:
{include file="engine/modules/block/test.php"}


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


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

#21Gochan

  • 1 февраля 2010 07:55
  • Регистрация: 28.01.2010
  • Был(а) онлайн: 1.02.2010
  • Комментариев: 2
  • 0
хороший модуль , отлично работает

#22david111

  • 10 февраля 2010 00:34
  • Регистрация: 10.10.2009
  • Был(а) онлайн: 30.06.2012
  • Комментариев: 16
  • 0
модуль на самом деле бесполезен!

#23apocalypce

  • 16 февраля 2010 11:14
  • Регистрация: 23.11.2009
  • Был(а) онлайн: 8.12.2014
  • Комментариев: 117
  • 0
у меня не работает говорит :
не могу загрузить enginemodulesblocktest

причем без слешей((

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

#24MSW

  • 16 февраля 2010 11:20
  • Регистрация: 28.11.2009
  • Был(а) онлайн: 2.01.2020
  • Комментариев: 153
  • 0
apocalypce,
значит что-то в установке напутал

можешь обратиться на сайт тех поддержки: http://0-web.ru/ в соответствующую тему, там же более новая версия установки доступна.

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

#25shynk75

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

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

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

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