示例#1
0
 public function up()
 {
     global $APPLICATION;
     $arProgs = array();
     $codes = array();
     $result = \Hawkart\Megatv\ProgTable::getList(array('filter' => array(), 'select' => array("ID", "UF_TITLE", "UF_CODE", "UF_EPG_ID")));
     while ($row = $result->fetch()) {
         $arParams = array("replace_space" => "-", "replace_other" => "-");
         $code = \CDev::translit(trim($row["UF_TITLE"]), "ru", $arParams);
         if (!empty($row["UF_CODE"])) {
             $codes[$row["UF_TITLE"]] = $row;
             continue;
         }
         $arCode = $codes[$row["UF_TITLE"]];
         if (!empty($arCode)) {
             if ($row["UF_EPG_ID"] != $arCode["UF_EPG_ID"]) {
                 $code .= "-" . $row["ID"];
             } else {
                 $code = $arCode["UF_CODE"];
             }
         }
         \Hawkart\Megatv\ProgTable::update($row["ID"], array("UF_CODE" => $code));
         $row["UF_CODE"] = $code;
         $codes[$row["UF_TITLE"]] = $row;
     }
 }
ini_set('mbstring.func_overload', '2');
ini_set('mbstring.internal_encoding', 'UTF-8');
global $USER, $APPLICATION;
if (!is_object($USER)) {
    $USER = new \CUser();
}
$arSerials = array();
$result = \Hawkart\Megatv\ProgTable::getList(array('filter' => array("!UF_EPG_SUB_ID" => false), 'select' => array("ID", "UF_TITLE", "UF_SERIA", "UF_SEASON", "UF_SOCIAL_VIDEO", "UF_EPG_ID")));
while ($arProg = $result->fetch()) {
    $arVideos = json_decode($arProg["UF_SOCIAL_VIDEO"], true);
    if (empty($arVideos["RUTUBE"])) {
        if ($rutube = \Hawkart\Megatv\Social\RutubeClient::search($arProg["UF_TITLE"], $arProg["UF_SEASON"], $arProg["UF_SERIA"])) {
            $arVideos["RUTUBE"] = $rutube;
        }
    }
    if (empty($arVideos["VK"])) {
        $title = $arProg["UF_TITLE"];
        if (!empty($arProg["UF_SEASON"])) {
            $title .= ": сезон " . $arProg["UF_SEASON"];
        }
        if (!empty($arProg["UF_SERIA"])) {
            $title .= " серия " . $arProg["UF_SERIA"];
        }
        $vk = new \Hawkart\Megatv\Social\VkClient();
        if ($video = $vk->searchOne($title)) {
            $arVideos["VK"] = $video;
        }
    }
    \Hawkart\Megatv\ProgTable::update($arProg["ID"], array("UF_SOCIAL_VIDEO" => json_decode($arVideos)));
}
die;