Мои мысли

Автор блога: Дима
Все рубрики (6)

Компонент Яндекс.Почта для домена для InstantCMS 2

Здравствуйте!

Представляю вторую версию компонента Yanmail v2.0 для InstantCMS 2.

Yanmail v1.0 for ICMS 1.10.6 - компонент Яндекс.Почта для домена

Здравствуйте, уважаемые!))

Представляю Вашему вниманию свой первый компонент для ICMS 1.10.6 (возможно будет работать на ранних версиях!). Итак:

ХАК Последние материалы + ajax

Всем привет!!!
Вот так я начал четвертую запись в  блоге... Всех украинцев с праздником, меня в том числе  laugh

И так в чем смысл ХАК’а:

1. САМОЕ ВАЖНОЕ: ХАК работает только если отображен модуль "Последние материалы"
2. Если пользователь увидит в модуле последнюю новость/статью и заинтересуется ею он на нее кликает и ... выскакивает окошко со статьей, которое можно закрыть, перемещать.

Вот такой сделал ХАК... dance


И так плавно переходим к установке:

1. Качаем архив: СКАЧАТЬ
2. Копируем файл в корень сайта
3. В файл /templates/Ваш_шаблон/template.php перед </head> вставляем:

Код PHP:
<script type="text/javascript" src="/includes/slide2/highslide-with-html.js"></script>
<script ty/pe="text/javascript">
    hs.graphicsDir = '/includes/slide2/graphics/';
    hs.outlineType = 'rounded-white';
	hs.wrapperClassName = 'draggable-header';
</script>
Всё сохраняемся...

4. Идем в файл /templates/Ваш_шаблон/modules/mod_latest.tpl:
Ищем такой код (где-то 3-я строка):
Код PHP:
<a class="mod_latest_title" href="{$article.href}">{$article.title}</a>
Заменяем на:

Код PHP:
<a class="mod_latest_title" href="{$article.href}" onclick="return hs.htmlExpand(this, {literal}{ objectType: 'ajax'}{/literal} )">{$article.title}</a>
Всё сохраняемся... Радуемся! laugh

Если Вы всё правильно сделали то у Вас должно получиться как на ДЕМО ХАК’а(После формы регистрации находятся последние новости, это и есть последние материалы zst )

Заменяем lightbox на highslide

Так же само как и maxisoft’у мне лайтбокс стал не нравиться, я решил его заменить лучшей заменой. Заменой будет Highslide. HighSlide имеет множество вариантов реализации, я выбрал только одну. И так приступим...

1. Качаем архив : СКАЧАТЬ
2. Копируем файлы в корень сайта.
3. Открываем файл templates/Ваш_шаблон/template.php и перед </head> вставляем:
Код PHP:
<script type="text/javascript" src="/includes/slide/highslide-with-gallery.js"></script>
<link rel="stylesheet" type="text/css" href="/includes/slide/highslide.css" />
<script type="text/javascript">
	hs.graphicsDir = '/includes/slide/graphics/';
	hs.align = 'center';
	hs.transitions = ['expand', 'crossfade'];
	hs.fadeInOut = true;
	hs.dimmingOpacity = 0.8;
	hs.outlineType = 'rounded-white';
	hs.captionEval = 'this.thumb.alt';
	hs.marginBottom = 105 // make room for the thumbstrip and the controls
	hs.numberPosition = 'caption';

	// Add the slideshow providing the controlbar and the thumbstrip
	hs.addSlideshow({
		//slideshowGroup: 'group1',
		interval: 5000,
		repeat: false,
		useControls: true,
		overlayOptions: {
			className: 'text-controls',
			position: 'bottom center',
			relativeTo: 'viewport',
			offsetY: -60

		},
		thumbstrip: {
			position: 'bottom center',
			mode: 'horizontal',
			relativeTo: 'viewport'
		}
	});
</script>
Сохряняем...

4. Открываем файл /components/photos/frontend.php и заменяем строку (где-то 338):
Код PHP:
echo '<a class="lightbox-enabled" rel="lightbox-galery" href="'.$photolink.'" title="'.$con['title'].'">';
Заменяем на :

Код PHP:
echo '<a href="'.$photolink.'" class="highslide" onclick="return hs.expand(this)">';
Всё на этом установка заканчивается. Если Вы всё правильно сделали должно получиться вот- так:



Чем хорош HighSlide:

1. Кода вы наводите курсор на картинку, он превращается в увеличительное стекло
2. Кода вы наводите курсор на картинку, он немного подскакивает
3. В нижней части экрана вы водятся все картинки (см. рис) (можно сделать вертикально)
4. Есть кнопка "Play", нажав на нее Вы можете запустить слайд-шоу


Вот и всё... Пишите в комментариях о ХАК’е.


ЗЫ: тестировал в лисе (только в лисе) за работу в других браузерах я не отвечаю, потому что еще раз хочется сказать я тестировал в лисе.  - глуповато написал  scratch

ДЕМО ХАК&#8217;а

Модуль - Обратный счётчик

И так вторая запись в блоге... - это начало!!!

Перед тем, как писать сразу скажу, что писал данный модуль для тех лиц, которые интересовались этим модулем, и если кому-то он не нравиться я тут не причем - пишите в комментариях, в личку - ТОЛКАЙТЕ ИДЕИ!!!, постараюсь их реализовать,если они не будут сложными. joke

И так сам скрин модуля :



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

Что делает модуль:
Модуль показывает,сколько времени осталось до какого-то события, т.е. событие Вы определяете сами. Т.е на скрине показано сколько осталось до нового года времени по киевскому времени. Красный фон можно заменить на любой, надо всего лишь отредактировать один файлик, и найти картинку для вашего дизайна.

Ну что еще...

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

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


И еще, на время написания записи у меня на часах 3:28 , поэтому файл щас выкладывать не буду - не успел запаковать в архив. И вообще я должен посмотреть, что скажут те люди которые интересовались счётчиком.

P.S Над чем буду еще работать? Наверное буду продолжать деятельность  над счётчиками.


КАК УСТАНОВИТЬ:
1. Качаем Архив ОТСЮДА
2. Копируем папку /modules в корневую директорию
3. Выполняем запрос в базу:
Код PHP:
INSERT INTO `cms_modules` (`id`, `position`, `name`, `title`, `is_external`, `content`, `ordering`, `showtitle`, `published`, `user`, `config`, `original`, `css_prefix`, `allow_group`, `cache`, `cachetime`, `cacheint`, `template`) VALUES
(null, 'left', 'Обратный счётчик', 'Обратный счётчик', 1, 'mod_count', 6, 1, 1, 0, '', 1, '', -1, 0, 1, 'HOUR', 'module.tpl')
на этом установка заканчивается...


КАК НАСТРОИТЬ:

1. Первым делом нам надо определить событие, до которого будет идти отсчёт.
2. Событие выбрано, пускай это будет Новый год
3. Открываем файл /modules/mod_count/module.php
Ищем в файле такие строки:
Код PHP:
 <h3 align="center"> До Нового года осталось </h3>
Эту строку Вы можете вообще убрать, если вы в админке укажите заголовок модуля.
Под этой строкой строкой, находите такие строки:
Код PHP:
<SCRIPT language="JavaScript" SRC="/modules/mod_count/countdown3.php?timezone=Europe/Moscow&countto=2011-01-01 00:00:00&do=t&data=С Новым Годом!!!"></SCRIPT>
3.1 countto = Время когда наступит событие в формате y-m-d h:m:s
3.2 do=t&data = Текст который будет выведен на экран когда событие наступит.  Также вместо "do=t&data =" можно написать "do=r&data="       (без кавычек), в этом случае после "=" напишите адрес страницы, сайта, и когда событие наступит, пользователя перекинет на ту       страницу, которую Вы указали.
3.3 timezone= надо указать ту тайм-зону в которой вы находитесь, её можно узнать на этой странице:       http://www.php.net/manual/en/timezones.php

вродебы всё, если есть ошибки пишите!!!

На всякий случай еще раз вылаживаю ссылку на скачивание:

СКАЧАТЬ

Время v1.0

Настроение у меня сегодня хорошее, поэтому я решил сделать что-то этакое. На самом деле программист я начинающий, по этому простите за легкие дополнения.

Сегодня я решил сделать Время v1.0. Эти часы ничего не делают, только показывают время, которое стоит у Вас на компьютере, т.е. стандартные часы, но внешний вид у них другой:


Качаем архив отсюда

Копируем папки /modules и /images с заменой в корневую директорию.
Выполните запрос в базу данных:
Код PHP:
INSERT INTO `cms_modules` (`id`, `position`, `name`, `title`, `is_external`, `content`, `ordering`, `showtitle`, `published`, `user`, `config`, `original`, `css_prefix`, `allow_group`, `cache`, `cachetime`, `cacheint`, `template`) VALUES
(null, 'left', 'Часы2.0', 'Время', 1, 'mod_clocks', 6, 1, 1, 0, '', 1, '', -1, 0, 1, 'HOUR', 'module.tpl')
В админке, выставляем позицию и страницы для отображения модуля.

Радуемся rofl


P.S. Кто-то спросит почему Время v1.0 ? Потому что, У меня на компе еще три внешних вида часов. //как-то так не понятно сказал.