prowebber.ru - Тут есть все для настоящих вебмастеров

Чтение RSS Мы в твиттере
«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

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

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


Данный материал предоставлен сайтом ProWebber.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
У нас вы можете скачать бесплатно Сворачивающиеся блоки 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
Просмотры: 17587 VIP ProWebber | Комментарии (25)
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1MSW

  • 26 января 2010 15:02
  • Регистрация: 28.11.2009
  • ICQ: --
  • Комментариев: 153
P.S.: ещё пару работ своих выложу как тут кликандер уберут)))

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

0

#2nsdss

  • 26 января 2010 15:47
  • Регистрация: 10.01.2010
  • ICQ: --
  • Комментариев: 457
Молодца. Надеюсь этот заработает на 8.3 версии, предыдущий неработал, и ты не ответил в той теме мне(
Неработает. Тоже самое, что и в предыдущей версии((( Я к тебе в аську стукну, поможешь?
Урааа, Реальный чел. В аське помог. Теперь все летает)

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

0

#3GrOzNy

  • 26 января 2010 17:18
  • Регистрация: 13.10.2009
  • ICQ: 30986184
  • Комментариев: 125
что-то похожое уже где-то видел

0

#4MysterIoes

  • 26 января 2010 17:59
  • Регистрация: 22.11.2009
  • ICQ: --
  • Комментариев: 356
MSW,
отредактировал новость

0

#51nokia

  • 26 января 2010 18:21
  • Регистрация: 1.12.2009
  • ICQ: 1
  • Комментариев: 106
ilja, зачем делать такую подлянку - удалять комментарий MSW, в котором было сказано, что нужно поменять. Обматерить за это готов...
Я уже почти до конца отредактировал старые блоки на новый лад, думал посмотреть, что нужно подправить, а тут на тебе.
Придётся заново переделывать chok

0

#6MSW

  • 26 января 2010 18:31
  • Регистрация: 28.11.2009
  • ICQ: --
  • Комментариев: 153
1nokia,
не придётся, правка была только в местах
$content = "<div id=\"{$name_block}\"><table>";

и закрывающий тег таблицы и дива

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

0

#71nokia

  • 26 января 2010 19:04
  • Регистрация: 1.12.2009
  • ICQ: 1
  • Комментариев: 106
Кстати, инструкция не совсем полная. Если нужно выводить в блоке всё время один и тот же тест, то в содержание блока вместо $block нужно вводить сам текст, а если тег, то $block.
Сейчас буду смотреть, как будет работать с инклюдами (флеш-облако тегов хочу попробовать, будет сворачиваться или нет) и куда вообще прописывать инклюд.
И ещё: как быть, если нужно, кроме тега, вывести в блоке текст?
Например,
<div ....>{тег}</div>
текст

0

#8MysterIoes

  • 26 января 2010 19:05
  • Регистрация: 22.11.2009
  • ICQ: --
  • Комментариев: 356
1nokia,
1. Я знаю что я делаю
2. Все что надо было исправить теперь в новости оформлено
3. Думайте перед тем как писать.

0

#9ProStyle

  • 26 января 2010 19:23
  • Регистрация: 26.01.2010
  • ICQ: 355205880
  • Комментариев: 1
круто ммм а чё такпафыафывавфыа

0

#101nokia

  • 26 января 2010 19:38
  • Регистрация: 1.12.2009
  • ICQ: 1
  • Комментариев: 106
Заметил небольшой косяк - если тег не стандартный, например, {ххх}, то при разворачивании блока ничего не подгружается, но при перезагрузке страницы содержимое блока отображается.

0

#11MSW

  • 26 января 2010 19:43
  • Регистрация: 28.11.2009
  • ICQ: --
  • Комментариев: 153
1nokia,
теги работают те что прописаны в index.php
по типу:
$tpl->set ( '{тег}', $tpl->result['тег'] );

а это из стандартных: calendar, archives, tags, vote, info

с остальным - экспериментируйте, пробуйте.
я за вас делать это не буду))) итак работы нашару выкладываю)))

консультации по аське, как вставить тот или иной тег, платные))

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

0

#12d0z

  • 26 января 2010 19:47
  • Регистрация: 29.12.2009
  • ICQ: 913153
  • Комментариев: 455
хмм... На любых шаблонах работает?

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

-1

#13MSW

  • 26 января 2010 20:13
  • Регистрация: 28.11.2009
  • ICQ: --
  • Комментариев: 153
d0z,
всё в ваших руках, правьте в коде там де
///свёрнутый блок
и
///развёрнутый блок
изменяя под свой шаблон.

Ещё раз повторю - это заготовка, базовая версия, конструктор (называйте как хотите) на основе которой каждый под себя делает свои блоки.

Включаем мозг, достаём руки и делаем именно то что вам нужно. Хоть тут уже постарайтесь подумать, это уже не сложно, самое основное и сложное за вас уже сделано. каждому индивидуально делать не буду, если нет желания думать/нет времени/нет опыта/и т.д. и т.п. - обращаемся в аську, договоримся за цену и я всё сделаю за вас)))

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

0

#14pilot233

  • 26 января 2010 20:39
  • Регистрация: 17.11.2009
  • ICQ: --
  • Комментариев: 126
Вот что-то бодобное я искал!

0

#15DarkneZ

  • 26 января 2010 20:48
  • Регистрация: 13.10.2009
  • ICQ: 9115263
  • Комментариев: 120
я думаю этот сайт пойдёт только там где много блоков!

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

0

#16jeff

  • 26 января 2010 21:09
  • Регистрация: 9.10.2009
  • ICQ: 927700
  • Комментариев: 24
попробую потом отпишусь...

0

#17d0z

  • 27 января 2010 04:49
  • Регистрация: 29.12.2009
  • ICQ: 913153
  • Комментариев: 455
MSW, получается самому под свой шаблон нужно настроить?

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

-1

#18abatsk

  • 27 января 2010 07:10
  • Регистрация: 10.01.2010
  • ICQ: --
  • Комментариев: 42
Цитата: d0z
MSW, получается самому под свой шаблон нужно настроить?

ну конечно нужно подстраивать под свой дизайн. Он же не один у всех. шаблоны разные и разная верства шаблонов. У кого то таблица у кого-то на дивах.
ProStyle, спамер мать твою diablo

0

#19DOG

  • 27 января 2010 20:07
  • Регистрация: 10.10.2009
  • ICQ: 1505837
  • Комментариев: 103
  • Выкл.
Никто не пробовал баннеры таким способом скрывать? Если да -то подскажите как.

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

0

#200904

  • 28 января 2010 21:14
  • Регистрация: 24.01.2010
  • ICQ: 550570244
  • Комментариев: 18
Интересный модуль, но, блин, запарился править под шаблон :)

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

Max-energy.top - Заработок на электросчетчиках;)

Skripters.info - все для вебмастера. Только эксклюзивный контент.

Создание шаблонов DLE, быстро и недорого! 3wave.com.ua

Бро лей на лучшую партнёрку

Почти бесплатный VDS хостинг!

Поддержи сайт
Скрипты, cms, шаблоны, статьи по раскрутке

Опросы

Как часто вы бываете на сайте?

Захожу 1-2 раза в день
1-2 часа в сутки
Более 2 часов
Почти целый день тут smile

Архив новостей
Ноябрь 2016 (7)
Октябрь 2016 (10)
Сентябрь 2016 (8)
Август 2016 (11)
Июль 2016 (14)
Июнь 2016 (17)

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

Искать людей

Ваши переписки