Новое поле в com_contacts, joomla 15
Способ добавления нового поля в com_comtacts для joomla 1.5 , на примере добавления поля Jabber ID
Добавляем поле в таблицу:
1 | ALTER TABLE `jos_contact_details` ADD `jid` VARCHAR( 255 ) NULL DEFAULT NULL |
administrator/components/com_contact/tables/contact.php
1 | var $jid = null; |
Добавляем новые параметры для компонента:
administrator/components/com_contact/config.xml
1 2 3 4 | <param name="show_jid" type="radio" default="1" label="Show Jabber ID" description="Show/Hide the Jabber ID"> <option value="0">Hide</option> <option value="1">Show</option> </param> |
administrator/components/com_contact/contact_items.xml
1 2 3 4 | <param name="show_jid" type="radio" default="1" label="JID" description="Show/Hide JID"> <option value="0">Hide</option> <option value="1">Show</option> </param> |
Добавляем поле для заполнения в админке:
administrator/components/com_contact/admin.contact.html.php
после
1 2 3 4 5 6 7 8 9 10 |
добавляем
1 2 3 4 5 6 7 8 9 10 |
Показываем информацию пользователю:
components/com_contact/views/contact/tmpl/default_address.php
после
1 2 3 4 5 6 7 8 9 10 | <?php if ( $this->contact->fax && $this->contact->params->get( 'show_fax' ) ) : ?> <tr> <td width="<?php echo $this->contact->params->get( 'column_width' ); ?>" > <?php echo $this->contact->params->get( 'marker_fax' ); ?> </td> <td> <?php echo nl2br($this->contact->fax); ?> </td> </tr> <?php endif; ?> |
вставить
1 2 3 4 5 6 7 8 9 10 | <?php if ( $this->contact->jid && $this->contact->params->get( 'show_jid' ) ) : ?> <tr> <td width="<?php echo $this->contact->params->get( 'column_width' ); ?>" > <?php $jid = split('@',$this->contact->jid);echo "<img src='http://presence.jabber.ru/{$jid[0]}/{$jid[1]}/image' />"; ?> </td> <td> <?php echo $this->contact->jid; ?> </td> </tr> <?php endif; ?> |
Для отображения состояния в виде изображения используется сервис от jabber.ru.