Пример #1
0
 $ch_id = intval(@$_GET['id']);
 $channel = Itv::getChannelById($ch_id);
 if (!empty($channel) && ($channel['enable_tv_archive'] != $enable_tv_archive || $channel['wowza_dvr'] != $wowza_dvr || $channel['flussonic_dvr'] != $flussonic_dvr || $channel['tv_archive_duration'] != $_POST['tv_archive_duration'])) {
     if ($channel['enable_tv_archive']) {
         if ($channel['flussonic_dvr']) {
             $archive = new FlussonicTvArchive();
         } elseif ($channel['wowza_dvr']) {
             $archive = new WowzaTvArchive();
         } else {
             $archive = new TvArchive();
         }
         $archive->deleteTasks($ch_id);
     }
 }
 Mysql::getInstance()->update('itv', array('name' => $_POST['name'], 'cmd' => !empty($_POST['cmd'][0]) ? $_POST['cmd'][0] : "", 'cmd_1' => @$_POST['cmd_1'], 'cmd_2' => @$_POST['cmd_2'], 'cmd_3' => @$_POST['cmd_3'], 'mc_cmd' => $mc_cmd, 'enable_wowza_load_balancing' => $enable_wowza_load_balancing, 'enable_tv_archive' => $enable_tv_archive, 'allow_pvr' => $allow_pvr, 'allow_local_pvr' => $allow_local_pvr, 'allow_local_timeshift' => $allow_local_timeshift, 'enable_monitoring' => $enable_monitoring, 'wowza_tmp_link' => $wowza_tmp_link, 'nginx_secure_link' => $nginx_secure_link, 'wowza_dvr' => $wowza_dvr, 'flussonic_dvr' => $flussonic_dvr, 'use_http_tmp_link' => $use_http_tmp_link, 'censored' => $censored, 'base_ch' => $base_ch, 'bonus_ch' => $bonus_ch, 'hd' => $hd, 'cost' => $_POST['cost'], 'number' => $_POST['number'], 'descr' => $_POST['descr'], 'tv_genre_id' => $_POST['tv_genre_id'], 'xmltv_id' => $_POST['xmltv_id'], 'service_id' => trim($_POST['service_id']), 'volume_correction' => intval($_POST['volume_correction']), 'correct_time' => intval($_POST['correct_time']), 'modified' => 'NOW()', 'tv_archive_duration' => $_POST['tv_archive_duration']), array('id' => intval(@$_GET['id'])));
 Itv::invalidateCacheForChannel(intval(@$_GET['id']));
 if (!$enable_monitoring) {
     Mysql::getInstance()->update('itv', array('monitoring_status' => 1), array('id' => intval(@$_GET['id'])));
 }
 $urls = $_POST['cmd'];
 $priorities = $_POST['priority'];
 $current_urls = Mysql::getInstance()->from('ch_links')->where(array('ch_id' => intval($_GET['id'])))->get()->all('url');
 $current_links = Mysql::getInstance()->from('ch_links')->where(array('ch_id' => intval($_GET['id'])))->get()->all();
 $urls_str = "'" . implode("','", $urls) . "'";
 $need_to_delete_links = Mysql::getInstance()->query("select * from ch_links where ch_id=" . intval($_GET['id']) . " and url not in (" . $urls_str . ")")->all('id');
 if ($need_to_delete_links) {
     Mysql::getInstance()->query("delete from ch_links where id in (" . implode(",", $need_to_delete_links) . ")");
     Mysql::getInstance()->query("delete from ch_link_on_streamer where link_id in (" . implode(",", $need_to_delete_links) . ")");
 }
 foreach ($links as $link) {
     $link['ch_id'] = (int) $_GET['id'];