$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'];