Search Documentation

Интеграция JomSocial

Последние несколько все более популярными становятся онлайн сообщества, более известные под названием «социальные сети». Не секрет, что в настоящее время расширение сайта (будь то блог, новостной портал или страничка ВУЗа) до функционала социальной сети позволяет открыть широкие возможности для привлечения новых пользователей.

Поэтому для создания на сайте своей социальной сети Cobalt имеет возможность интеграции с такими компонентами, как JomSocial и Community Builder.

Компонент для создания социальной сети JomSocial- мощный инструмент сетевого общения, обладающий всеми функциями современной социальной сети. Он позволяет как профессионалу, так и владельцу сайта с начальными знаниями, превратить свой ресурс в удобное, понятное и интересное место интерактивного общения.

Cobalt имеет возможности для очень тесной интеграции с этим компонентом.

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

Базовый уровень интеграции поставляется бесплатно в составе ядра Cobalt и включает в себя:

  • аватар пользователя в статьях и комментариях;
  • имя пользователя с выпадающим меню со ссылками на профиль пользователя, отправку персонального сообщения и просмотра всех статей пользователя;
  • on-line статус.

Для расширенного уровня интеграции необходим плагин JomSocial, который поставляется отдельно за дополнительную плату и включает в себя:

  • интеграцию одной секции Cobalt в профиль пользователя;
  • интеграцию меню этой секции в профиль пользователя;
  • карму пользователя;
  • активность пользователя;
  • уведомления пользователя.

Для включения интеграции необходимо в панели Основные настройки Cobalt:

  1. Выбрать значение com_community в параметре Интеграция с сообществом.
  2. Установить значение параметра Разрешить Gravatar.com в Нет, т.е. отключить показ аватаров с Gravatar.com.

Доступ к параметрам осуществляется через функции интерфейса Cobalt.

Вызов функций интерфейса осуществляется следующим образом, например, получение имени пользователя

<?php echo CCommunityHelper::getName($item->user_id, $this->section);?>

###Описание функций интерфейса.

####Функция getName. Получение имени пользователя.

getName($id, $section, $options = array())

Входные параметры:

Параметр Краткое описание Обязательный
$id Идентификатор пользователя. Да
$section Текущий раздел Cobalt. Да
$options Массив дополнительных опций. Дополнительные опции позволяют изменить форму вывода. Нет

Возможные дополнительные опции:

Опция Краткое описание
nohtml Отключает вывод всего html кода.
nolinks Отключает вывод выпадающего меню.
nobadge Отключает вывод бэйджа пользователя.
noonlinestatus Отключает вывод online статуса пользователя.
label Заменяет выводимое имя пользователя.
nametag Тэг для вывода имени пользователя.

Пример использования

<?php echo CCommunityHelper::getName($item->user_id, $this->section, 
		array('nohtml'=>1, 'nolinks' => 1));
?>

####Функция getAvatar. Получение аватара пользователя.

getAvatar($user_id, $width, $height)

Входные параметры:

Параметр Краткое описание Обязательный
$user_id Идентификатор пользователя. Да
$width Ширина аватара пользователя в px. Нет
$height Высота аватара пользователя в px. Нет

Пример использования

<?php if($params->get('tmpl_core.item_author_avatar')):?>
	<img src="<?php echo CCommunityHelper::getAvatar($item->user_id,
		$params->get('tmpl_core.item_author_avatar_width', 40), 
		$params->get('tmpl_core.item_author_avatar_height', 40));?>" />
<?php endif;?>
где $params- массив параметров шаблона
	tmpl_core.item_author_avatar- параметр шаблона Аватар автора, определяет, показывать или нет аватар автора
	tmpl_core.item_author_avatar_width- параметр шаблона Ширина аватара автора (px)
	tmpl_core.item_author_avatar_height- параметр шаблона Высота аватара автора (px)

####Функция isOnline. Получение online-статуса пользователя.

isOnline($user_id)

Входные параметры:

Параметр Краткое описание Обязательный
$user_id Идентификатор пользователя. Да

Возвращаемое значение:

False или True

Пример использования

<?php if (CCommunityHelper::IsOnline($item->user_id))
	{
	echo '<img src="' . JURI::root(TRUE) . '/media/mint/icons/16/status.png" rel="tooltip" data-original-title="Online" align="absmiddle"/>';
	echo ' online';
	}
	else
	{
	echo '<img src="' . JURI::root(TRUE) . '/media/mint/icons/16/status-offline.png" rel="tooltip" data-original-title="Offline" align="absmiddle"/>';
	echo ' offline';
	}
?>

####Функция goToLogin. Переход на форму регистрации.

goToLogin()

Входные параметры- нет

Пример использования

<?php CCommunityHelper::GoTologin();?>

####Функция getRegistrationLink($label). Возвращает ссылку на форму регистрации.

getRegistrationLink($label)

Входные параметры:

Параметр Краткое описание Обязательный
$label Текст ссылки. Да

Пример использования

<?php
	$label='User name';
	$reg_link=CCommunityHelper::GetRigistrationLink($label);
?>