%PDF- %PDF-
| Direktori : /proc/self/root/home/bitrix/www/local/components/UB/ub.ajax.add2fun/ |
| Current File : //proc/self/root/home/bitrix/www/local/components/UB/ub.ajax.add2fun/component.php |
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
$usrid = $USER->GetID();
if (ctype_digit($_GET["id"])) $id = $_GET["id"];
if (ctype_digit($_GET["fun"])) $fun = $_GET["fun"];
// @todo сделать через механизм друзей (что бы скрестить с блогами и рейтингами), добавить контроль sessid и вынести в компонент
if (CModule::IncludeModule("iblock") && CModule::IncludeModule("im") && $usrid>0){
$ar_funs=array();
// Находим профиль теущего пользователя
$res = CIBlockElement::GetList(Array(), Array("IBLOCK_ID"=>2, "PROPERTY_ACCOUNT"=>$usrid));
if($ar_fields = $res->GetNext()) $profid = $ar_fields["ID"]; // id профиля текущего пользователя
$profile = getUserProfile($usrid); // профиль текущего пользователя
// Находим список фан-клуба объека лайка
$db_props = CIBlockElement::GetProperty(2, $id, array(), Array("CODE"=>"RECOMMEND"));
while ($ar_props = $db_props->Fetch()) {
$ar_funs[] = $ar_props["VALUE"]; // список id профилей у объекта лайка
}
// Находим USER_ID объекта лайка (для уведомления)
$db_props = CIBlockElement::GetProperty(2, $id, array(), Array("CODE"=>"ACCOUNT"));
if ($ar_props = $db_props->Fetch()) $like_user_id = $ar_props["VALUE"];
if (!in_array($profid, $ar_funs)) {
$ar_funs[] = $profid;
echo "ok";
$message = GetMessage("TO_YOUR_FAN_CLUB_JOIN").'<a href="'.$profile['LINK'].'">'.$profile['NAME'].'</a>';
}
else {
$key = array_search($profid, $ar_funs);
unset($ar_funs[$key]);
echo "ok_del";
$message = GetMessage("FROM_YOUR_FAN_CLUB_CAME_OUT").'<a href="'.$profile['LINK'].'">'.$profile['NAME'].'</a>';
}
// Обновляем список
CIBlockElement::SetPropertyValues($id, 2, $ar_funs, "RECOMMEND");
$arMessageFields = array(
"TO_USER_ID" => $like_user_id,
"FROM_USER_ID" => 0,
"NOTIFY_TYPE" => IM_NOTIFY_SYSTEM,
"NOTIFY_MODULE" => "im",
"NOTIFY_MESSAGE" => $message,
);
CIMNotify::Add($arMessageFields);
}
else echo "need_auth";
?>