$APPLICATION->SetDirProperty('og_image', $arResult["PICTURE"]["SRC"]); $APPLICATION->SetDirProperty('og_type', 'album'); //get status schedule $arResult["STATUS"] = \Hawkart\Megatv\CScheduleTemplate::status(array("ID" => $arResult["ID"], "UF_CHANNEL_ID" => $arResult["UF_CHANNEL_ID"], "DATE_START" => $arResult["DATE_START"], "DATE_END" => $arResult["DATE_END"])); foreach (array("UF_DIRECTOR", "UF_PRESENTER", "UF_ACTOR") as $type) { $_arResult[$type] = array(); $arPeoples = explode(",", $arResult[$type]); foreach ($arPeoples as $actor) { $actor = trim($actor); if (!empty($actor)) { $link = \Hawkart\Megatv\PeopleTable::getKinopoiskLinkByName($actor); $link = str_replace("//name", "/name", $link); if (empty($link)) { $link = "#"; } $_arResult[$type][] = array("NAME" => $actor, "LINK" => $link); } } $arResult[$type] = $_arResult[$type]; unset($_arResult[$type]); } /** * Add data to statistics */ //\Hawkart\Megatv\CStat::channelAdd($arResult["UF_CHANNEL_ID"]); $back_recommendations = false; if (strpos($_SERVER['HTTP_REFERER'], "/recommendations/") !== false) { $back_recommendations = true; } \Hawkart\Megatv\CStat::addByShedule($arResult["ID"], "scheduleShow", $back_recommendations); $this->IncludeComponentTemplate();
$duration = strtotime($arSchedule["UF_DATE_END"]) - strtotime($arSchedule["UF_DATE_START"]); $minutes = ceil($duration / 60); $gb = $minutes * 18.5 / 1024; $busy = floatval($arUser["UF_CAPACITY_BUSY"]) + $gb; if ($busy >= floatval($arUser["UF_CAPACITY"])) { exit(json_encode(array("status" => "require-space", "error" => "Не достаточно места на диске для записи"))); } else { if (in_array($arSchedule["UF_CHANNEL_BASE_ID"], $selectedChannels)) { $log_file = "/logs/sotal/sotal_" . date("d_m_Y_H") . ".txt"; \CDev::log(array("ACTION" => "PUT_TO_RECORD", "DATA" => array("SCHEDULE_ID" => $prog_time, "DATE" => date("d.m.Y H:i:s"))), false, $log_file); if ($update) { \Hawkart\Megatv\RecordTable::update($update_id, array("UF_DELETED" => 0)); } else { \Hawkart\Megatv\RecordTable::create($arSchedule); } //Inc rating for prog \Hawkart\Megatv\ProgTable::addByEpgRating($arSchedule["UF_PROG_EPG_ID"], 1); //change capacity for user $cuser = new \CUser(); $cuser->Update($arUser["ID"], array("UF_CAPACITY_BUSY" => $busy)); /** * Данные в статистику */ \Hawkart\Megatv\CStat::addByShedule($arSchedule["ID"], "record"); $status = "success"; } else { exit(json_encode(array("status" => "error", "error" => "Нельзя записать"))); } } } exit(json_encode(array("status" => $status)));