Модуль в память о Светлане - "Падающий снег"

2680
Модуль позволяет вывести на страницу Вашего сайта изображения падающих снежинок. Модуль является глубокой модернизацией модуля Светланы Кондратьевой "Падающий снег".

Предыстория. Немного о нашей Светке

Светлана была очень светлым человеком. И не только в смысле "рыжести". Это верно, она была ярчайше рыжей, лицо усыпано веснушками. Я точно знаю, что конопушки отравляли ей жизнь, она с ними боролась, но безуспешно. Тем не менее, именно эти веснушки, а еще внезапно вспыхивающая задорная улыбка делали ее неотразимой.

Стоило ей зайти в формулярку, тут же вся наша технота переставала материться, сутулится и забивать козла. Все начинали улыбаться, совать ей конфеты, шоколадки или бутырброды. Как будто формулярка озарялась ярким светом.

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

Вместе с тем, она все-таки была девчонкой до мозга костей. Любила все яркое, светлое, доброе, красивое, пушистое. Ей и принадлежит идея этого модуля. Она его сделала на скорую руку, без админки и регулировок. Все говорила, что модуль надо доделать, чтобы он приобрел презентабельный вид. Но не успела.

Суть модернизации

У модуля появились настройки в админке, как Света и хотела. Туда выведены все регулировки.

От себя я добавил автоматический забор картинок из папки модуля /modules/mod_snow/img/. То есть модуль забирает из папки все картинки, которые там есть, ставит на страницу и начинает прокручивать. Картинки я оставил Светкины, так что визуально большой разницы те, кто ставил старый модуль, и заменил его на нынешний, не заметят. Впрочем, можно картинки заменить или добавить. Рекомендация - использовать *.gif с прозрачностью, поскольку, *.png может искажаться (меняется соотношение между высотой и шириной рисунка). Если кому нужно будет до зарезу использовать *.png, да еще без искажения, пусть пишет в личку, помогу исправить.

Мне пришлось выбросить Светкины джаваскрипты, поскольку Лис в консоли ругался на устаревшие методы, а Опера и Хром попросту отказались двигать снежинки по странице. Этот модуль написан на jquery.

Установка модуля на сайт

Порядок установки немного отличается от установки обычного программного модуля. Это отличие связано с добавлением в шаблон еще одной позиции "new_year". Отличие этой позиции от остальных - она закрывает всё окно сайта.

1. Откройте файл templates/_default_/positions.txt любым редактором и добавьте в конец еще одну позицию к уже имеющимся. Позиция называется "new_year". Естественно, вместо "_default_" открываете текущий шаблон.

2. Откройте файл templates/_default_/template.php и в самый конец, перед тегом </body> добавляете вывод модуля в позицию "new_year"
Код HTML:
  1. <!-- Модуль "С новым годом" -->
  2. <?php $this->printModules('new_year'); ?>
Естественно, вместо "_default_" открываете текущий шаблон.

3. Заливаете в корень сайта содержание архива (кроме инструкции readme.txt, и sql-запроса, само собой). Если текущий шаблон отличается от дефолтного, в папке templates/_default_/modules/ найдите два файла:
mod_snow.tpl и module_slim.tpl
и перебросьте их в папку modules своего шаблона

4. Идете в базу данных и выполняете sql-запрос, чтобы подключить модуль к сайту.

5. Заходите в настройки модуля (нужно нажать на шестеренку), и настраиваете значения полей, пользуясь подсказками.

В дефолтном шаблоне "_default_", который входит в дистрибутив, есть div, которому присвоен id = "wrapper". Это контейнер (обертка) всего контента сайта. Имейте ввиду, что скорее всего, в вашем рабочем шаблоне, на сайте, шаблонодел присвоил обертке совсем другой id. Возможно даже, он присвоил не id, а класс. В любом случае, в настройку "id контейнера контента Вашего шаблона" следует вписать "#имя_контейнера", если обертке присвоен id, либо ".имя_контейнера", если присвоен класс, и этот класс на странице один. Если не один, присвойте сами id контейнеру. Для этого вам придется отредактировать файл рабочего шаблона template.php. Этот id и впишите в настройку.

Даже если Вы содержимое полей не меняли, в первый раз, при установке модуля, обязательно нажмите кнопку "Сохранить", чтобы в базу прописался конфиг.


6. Идите в админку модуля и проверьте три позиции, которые я обозначил желтым маркером. Они должны быть такие же, как на скриншоте. Если вы хотите пустить снег не на всех страницах сайта, а только на некоторых, снимите галку "Показывать на всех страницах сайта" и установите галки на нужных. Не забудьте при этом указать позицию для этих страниц "new_year".

Достоинства и недостатки модуля

Как и любое техническое решение, данное ПО обладает как достоинствами, так и недостатками. Перечислю самые очевидные:
1. Достоинства.
- стандартная установка (ну почти стандартная, все-таки два файла надо дополнительно поправить)
- модуль можно установить один раз, а после нового года просто выключить. К следующему новому году не нужно лихорадочно вновь искать модуль, а взять и включить имеющийся.
- совместим с другим моим модулем, "Новогодняя гирлянда", который я написал в прошлом году. Если вы установили себе на сайт Новогоднюю гирлянду, править файлы positions.txt и template.php НЕ нужно - позиция new_year там уже прописана.
- все необходимые настройки вынесены в админку модуля.
- если вам не хватает снежинок, достаточно просто добавить рисунки *.gif с прозрачностью. Равно, если вам вдруг понадобилось заменить снежинки на капли дождя и изобразить на сайте дождик 1 сентября))). Модуль подхватит их и будет прокручивать. Достаточно загрузить рисунки в папку модуля /modules/mod_snow/img/ - остальное произойдет автоматически.
2. Недостатки.
- сильно грузит локальную машину. Особенно возрастает нагрузка при уменьшении параметра "Интенсивность снегопада" до 100 и ниже. По сути, это временной интервал между итерациями.
- мелькающие снежинки отвлекают внимание посетителей от контента. Возможно, в будущем я модифицирую модуль, чтобы, например, через минуту, снегопад прекращался. Почему не сделал этого сразу....причина проста - я только сейчас догадался сделать эту фичу))).
- не совсем стандартная установка, поскольку требуется править два файла.

С наступающим Новым Годом!

Я желаю всем счастья, любви, процветания в Новом году. Пусть сбудутся ваши мечты, а удача не покидает ваш дом. Удачи в сайтостроении!

Как скачать.

Поскольку блог Светланы мне недоступен, я вынужден публиковать модуль в своем. Скачать можно тут.
Комплект задачи cron и плагина "Уведомление друзей именинника" для 1.10.6 | Что такое Userscripts. Чуть чуть теории.
Комментарии (19)
GNabi 9 декабря 2015 в 20:14 +1
А что со Светой случилось?
letsgo 9 декабря 2015 в 20:23 +7
Светлая память девочке. Странник ++++
Владимир Савенко 9 декабря 2015 в 20:28 +8
Знаешь, дружище. Я больше, чем уверен - есть люди, которые небо коптят, а есть люди, как звездочки - блеснул и от этого свечения стало всем тепло. Один этого достигает в 20, другой в 60, а кому то это вообще не дано... У каждого свой путь, своя миссия в этой жизни...
Майкл 9 декабря 2015 в 20:52 +1
+++ Странник
alex 9 декабря 2015 в 21:03 +2
* * * * * * *Хорошее украшение для сайта !* * * * * * * *
* * * * * * * * * * * * * * *
Val 9 декабря 2015 в 21:21 +1
мало звёздочек - надо больше)))
Кирилл Эдуардович (Странник) 10 декабря 2015 в 11:54 +1
- Чем коньяк "три звездочки" отличается от коньяка "пять звездочек"?
- Нэ знаю, дарагой. Из адной бочки налэваем....
Спасибо +++
Александр 10 декабря 2015 в 00:18 +1
Благодарю +
Кирилл Эдуардович (Странник) 10 декабря 2015 в 10:04 +7
Спасибо всем, кто откликнулся и написал такие теплые слова. Тем, кто не знает Светлану, скажу, что одно время она, пока не заболела, плотно сидела тут, на Инстанте. Сделала несколько сайтов, меня вот на Инстант привела. Я тогда был новичком в сайтостроении, хотя какие-то навыки программирования были.
Света скончалась на операционном столе 23 апреля 2011 года.
Админы не закрыли ее профиль, а превратили в мемориал, что что им огромное спасибо.
Кирилл Эдуардович (Странник) 10 декабря 2015 в 20:34 0
Рекомендую всем, скачавшим у меня архив, скачать его заново. Как мне сообщил Андрей, в sql-запрос старого архива закралась небольшая ошибка. Она не дает установить модуль правильно. В новом архиве эта ошибка поправлена.

Те, кто уже установил модуль самостоятельно, минуя приложенный sql-запрос, ничего поправлять не нужно, на функциональность эта ошибка не влияет.

Приношу свои извинения.
lesterkey 10 декабря 2015 в 22:26 0
+
Андрей 11 декабря 2015 в 16:37 0
Спасибо.
Юрий 12 декабря 2015 в 15:24 +2
Добрая и светлая память нашей Свете! На многих сайтах встречаю ее снежинки и сразу вспоминаю ее, будто Света нам всем привет передает! На моих 4-х сайтах все также падают снежинки ...
jazzfriends 20 декабря 2015 в 16:00 +1
Спасибо Вам и светлая память Светлане!
SpaceSel 29 декабря 2015 в 10:48 0
Эхъ, а как насчет снега для двойки?
PS: Смерть безлика, смерть беспристрастна, смерть - лучшее изобретение жизни.
Кирилл Эдуардович (Странник) 29 декабря 2015 в 12:13 0
SpaceSel:
а как насчет снега для двойки?
Этот модуль писался для Первой, в память о Светлане.
Birles 29 декабря 2015 в 16:54 0
У меня есть снег для двойки, напишите в личку, объясню как надо устанавливать)
Loadырь 29 декабря 2015 в 20:27 0
На память для двойки