Вы здесь: Статьи Статьи по Joomla! Создаем модуль ICQ статуса для Joomla! - Содержание основного файла

Создаем модуль ICQ статуса для Joomla! - Содержание основного файла

Индекс материала
Создаем модуль ICQ статуса для Joomla!
Основной файл модуля
Содержание основного файла
Все страницы

Теперь займемся написанием именно того кода который и будет отображать наш модуль.

Нам понадобится код который будет осуществлять запрос статуса вашей ICQ и отображать соответствующую картинку на вашем сайте.

Выглядит этот код вот так: 

 
<img src="http://wwp.icq.com/scripts/online.dll?icq=55522230&amp;img=21"  
border="0" alt="Статус ICQ"/>

Ну тут все просто, мы получаем картинку с сервера ICQ соответствующую статусу on/off, принадлежащую номеру 55522230. Цифра 21 говорит о том какой стиль картинки будет использоватся (Icq нам предоставляет разные стили от 1-27 для того чтобы можно было подобрать под дизайн сайта). Примеры картинок

Что мы делаем с этим кодом? Да просто именно в таком виде как есть вставляем его в наш mod_myicq.php. Должно получится вот так:

 
<?php
/**
* @version 1.0
* @package ICQ_online
* @copyright &copy; 200 LightDeath
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_VALID_MOS' ) or die( 'Restricted access' );
?>
 
<img src="http://wwp.icq.com/scripts/online.dll?icq=55522230&amp;img=21" border="0" 
alt="Статус ICQ"/>
Вот и все сохраняем опять файлик. А теперь надо посмотреть как работает наш модуль. Что бы это сделать надо его установить. Для этого два наших файла запаковываем в архив mod_myicq.zip. Идем в админку Joomla и устанавливаем обычным способом наш модуль. Теперь заходим в список модулей и находим наш модуль, опубликовываем его и идем смотреть что там у нас получилось.

Пример модуля icq статуса

Вот вроде модуль уже и готов. А что можно еще сделать?

А можно его например унифицировать вот если у вас сменится номер вам придется открывать код и менять номер на новый или кто-то скачал ваш модуль, а у него соответственно номер и ему придется тоже копаться в чужом коде, хоть он пока и маленький. Но человек может быть не таким подготовленным как Вы.

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

Итак что мы можем поменять в этом несложном коде

 
<img src="http://wwp.icq.com/scripts/online.dll?icq=55522230&amp;img=21" border="0" 
alt="Статус ICQ"/>

Ну как минимум сам UIN (это так не по русски называют номер ICQ), идентификационный номер отображаемой картинки.

Вот этим и займемся.

Для этого открываем файл mod_myicq.xml и начинаем добавлять наши параметры которые я обещал в начале статьи.

Добавляем между тегов

 
<params> </params>

вот такую строчку

 
<param name="myuin" type="text" default="" 
 
label="Номер ICQ " description="Введите ваш номер ICQ без пробелов и дефиса."       />

Посмотрим что мы сделали:

Мы добавили поле для ввода текста type="text"

Добавили имя для этого поля label="Номер ICQ"

И добавили всплывающую подсказку description="Введите ваш номер ICQ без пробелов и дефиса. "

И имя параметра нашего поля для ввода текста name="myuin"

Теперь по аналогии добавляем второе поле для ввода ID картинки:

 
<param name="idimg" type="text" default="5" label="id стиля картинки" 
description="Введите число от 1 до 27." />

Тут все точно также только одно отличие , мы добавили значение параметру "default" значение "21", сделали мы это для того чтобы поле было изначально заполнено значением.

Ну вот таким образом теперь должен выглядеть ваш mod_myicq.xml 

 
<?xml version="1.0" encoding="windows-1251"?>
 <mosinstall   type="module" version="1.0.0">
 <name>ICQ_online?</name>
 <author>LightDeath</author>
 <creationDate>jule 2008</creationDate>
 <copyright>(C) 2008 Open Source Matters. All rights reserved.</copyright>
 <license>http://www.gnu.org/copyleft/gpl.html GNU/GPL</license>
 <authorEmail>autor(@)mail.ru</authorEmail>
 <authorUrl>http://cms-joomla.info</authorUrl>
 <version>1.0.0</version>
 <description>Информер статуса ICQ</description>
 <files>
 <filename module="mod_myicq">mod_myicq.php</filename>
 </files>
 <params>
 <param name="moduleclass_sfx" type="text" default="" 
label="Суффикс класса модуля" description="Тутможно прописать свой суффикс класса модуля."       />
 <param name="myuin" type="text" default="" label="Номер ICQ"
 description="Введите ваш номер ICQ без пробелов и дефиса." />
 <param name="idimg" type="text" default="21" label="id стиля картинки"
 description="Введите число от 1 до 27."/>
 </params>
 </mosinstall>

 

Сохраняем этот файл. Вот для чего это делалось.

 

Открываем mod_myicq.php

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

Для этого добавляем в наш код вот такие строки:

 
$myuin = $params->get( 'myuin');
 $idimg = $params->get( 'idimg', '21' );

Это мы создаем переменные и даем понять нашему коду откуда он должен взять данные и какой переменной присвоить соответствующие значения. Обратите внимание они у нас совпадают с именами полей ввода которые мы сделали в mod_myicq.xml.

Теперь осталось вставить наши переменные в код который отвечает за вывод картинки.

Делаем мы это очень простым способом используя функцию PHP echo вот что должно получится:

 
<div  align="center">
 <img src="http://wwp.icq.com/scripts/online.dll?icq= <?php echo $myuin; ?> 
&amp;img=<?php echo $idimg; ?> " border="0" alt="Статус ICQ" />
 </div>

Обратите внимание я все это поместил еще и в блок DIV для того чтобы просто отцентрировать нашу картинку по середине нашего модуля.

Предлагаю добавить к нашей картинке снизу еще и сам номер ICQ, чтобы человек мог увидеть на какой номер написать. А еще сделаем этот номер ссылкой на ваш профиль ICQ. Делается это вот таким кодом:

 
<a href="http://wwp.mirabilis.com/scripts/Search.dll?to=<?php echo $myuin; ?> " 
target="_blank" class="menu"><?php echo $myuin; ?></a>

Тут мы тоже заменили номер на переменную.
Вот так будет выглядеть наш mod_myicq.php с новыми изменениями:

 
<?php
 /** 
 * @version 1.0 
 * @package ICQ_online ? 
 * @copyright &copy; 200 LightDeath 
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL 
 */ 
 defined( '_VALID_MOS' ) or die( 'Restricted access' ); 
    $myuin = 
    $params->get( 'myuin'); 
    $idimg = 
    $params->get( 'idimg', '21a' ); 
    ?> 
    <div 
    align="center"> 
    <img src="http://wwp.icq.com/scripts/online.dll?icq=<?php echo $myuin; 
    ?>&amp;img=<?php echo $idimg; ?>" border="0" alt="Статус ICQ"   /><br> 
    <strong> 
    <a href="http://wwp.mirabilis.com/scripts/Search.dll?to=<?php echo $myuin; 
    ?> " target="_blank" 
    class="menu"><?php echo $myuin; ?></a></strong>
 
 </div>

Ну вот вроде и все можно упаковывать в *.zip и устанавливать, если вы устанавливали предыдущий вариант то его надо предварительно удалить.
Ну а после установки и настройки параметров. Можно будет посмотреть на результат:

 

Незнаю насколько понятно я обьяснил, но сложностей именно с эти вроде не должно возникнуть.
Точно таким же образом можно делать какие угодно модули, смело использую PHP, JAVA и HTML.

Ну я думаю что это не конец, что нибудь придумаю еще и на примере этого модуля буду учится сам и может помогу еще кому нибудь.

Люди которые понимают в програмировании побольше (учитывая что я ничего почти не понимаю и делаю интуитивно), прошу писать замечания и советы может они помогут мне и всем остальным.

Оригинал статьи - cms-joomla.info



Комментарии  

Коммент от
Мар 14, 2009
Комментатор
SeBun
0 именно с эти вроде не....
Кажется, букву м пропустил. А так статья понравилась, молодец!
Коммент от
Июл 03, 2009
Комментатор
Sandro
-1 Спасибо, реально помогло)) Даже для 1.5 годится :-)
Коммент от
Сен 02, 2009
Комментатор
АлександЫр-дЫр-дЫр
0 Спасибо большое.
Коммент от
Сен 06, 2009
Комментатор
турист
+1 Цитирую Sandro:
Спасибо, реально помогло)) Даже для 1.5 годится :-)
а что для 1.5 надо переделать?
Коммент от
Сен 06, 2009
Комментатор
Aleks_El_Dia
+1 Цитирую турист:
Цитирую Sandro:
Спасибо, реально помогло)) Даже для 1.5 годится :-)
а что для 1.5 надо переделать?

Нужно переделать лишь xml файл (можно взять от любого модуля для 1.5 и подкоректироват ь). Содержание основного файла (http://www.eldia.org.ua/stati/15-stati-po-joomla/36-sozdaem-modul-icq-statusa-dla-joomla.html?start=2 ) остается прежним.
Коммент от
Окт 12, 2009
Комментатор
Евгений
-1 А как насчет ссылку на источник поставить?
Раньше это было на сайте cms-joomla.info, а теперь http://blog.boxdox.ru/2009/08/modul_for-joomla/
Коммент от
Окт 13, 2009
Комментатор
Aleks_El_Dia
0 Цитирую Евгений:
А как насчет ссылку на источник поставить?
Раньше это было на сайте cms-joomla.info, а теперь http://blog.boxdox.ru/2009/08/modul_for-joomla/

Это претензия?
Ссылка на первоисточник стоит. Мне отслеживать перемещение всех первоисточников ? :-)
Коммент от
Ноя 17, 2009
Комментатор
Александр
0 спасибо автору
всегда думал что icq сложно определять статус
Коммент от
Дек 14, 2009
Комментатор
Леонид
0 А я уже создал такой модуль смотрим и качаем:
www.foto-s.ru/the-news/262-icq-online-module-for-joomla-15.html
Коммент от
Дек 17, 2009
Комментатор
Денис Огурцов
+1 Статья понятная, думаю пригодиться Автору СпасЫба.

Оставить комментарий

Защитный код
Обновить

Популярные файлы

1.
Компонент Миграции с Joomla! 1.0.x на Joomla! 1.5.x
2104
2.
Хак постраничной навигации сайта на CMS Joomla!
882
3.
Дополнительное изменяемое поле "Телефон"
513

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

  • повторюсь - очень очень надо для 1.5 )) Ну и спаси... Подробнее..
    От Илюха
  • Так введите это имя и пароль/мыло админа и заканч... Подробнее..
    От Aleks_El_Dia
  • делал, делал, миграция прошла успешно, жму далее -... Подробнее..
    От Вася