Пример #1
0
        parent::__destruct();
    }
    /**
	 * 获取数据
	 * @param Array $data
	 */
    public function show($data)
    {
        if ($data['count'] != -1) {
            $data_limit = ' LIMIT ' . $data['offset'] . ' , ' . $data['count'];
        }
        $sql = 'SELECT * FROM ' . DB_PREFIX . 'column WHERE 1';
        //获取查询条件
        $condition = $this->get_condition($data['condition']);
        $sql .= $condition;
        if ($data_limit) {
            $sql .= $data_limit;
        }
        $query = $this->db->query($sql);
        $info = $site = array();
        while ($rows = $this->db->fetch_array($query)) {
            $site[$rows['site_id']] = $rows['site_id'];
            $info[] = $rows;
        }
        $site_ids = implode(',', $site);
        $site = new publishconfig();
        $site_info = $site->get_site_by_ids('id,site_name', $site_ids);
        if ($site_info) {
            foreach ($info as $k => $v) {
Пример #2
0
 public function create()
 {
     #####节点权限认证需要将节点数据放在nodes=>标志=>节点id=>节点所有父级节点
     /*if($this->user['group_type'] > MAX_ADMIN_TYPE)
     		{
     			$action = $this->user['prms']['app_prms'][APP_UNIQUEID]['nodes'];
     			if(!in_array('template',$action))
     			{
     				$this->errorOutput("NO_PRIVILEGE");
     			}
     		}*/
     #####节点权限认证需要将节点数据放在nodes=>标志=>节点id=>节点所有父级节点
     $data = array('title' => trim($this->input['title']), 'create_time' => TIMENOW, 'user_id' => $this->user['user_id'], 'user_name' => $this->user['user_name']);
     //栏目id特殊处理
     if ($this->input['column_id']) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $pub_column_id = $publishconfig->get_column_by_ids('id, childs', $this->input['column_id']);
         foreach ((array) $pub_column_id as $k => $v) {
             $column_id[] = $v['childs'];
         }
         $column_id = implode("','", $column_id);
     }
     //xml_id特殊处理
     if ($this->input['xml_id']) {
         if (substr(trim($this->input['xml_id']), 0, 1) == '_') {
             $type_id = trim($this->input['xml_id'], '_');
             $sql = "SELECT id FROM " . DB_PREFIX . "xml WHERE type_id = " . $type_id;
             $query = $this->db->query($sql);
             $xml_id = '';
             while ($row = $this->db->fetch_array($query)) {
                 $xml_id .= $row['id'] . ',';
             }
             $xml_id = trim($xml_id, ',');
         } else {
             $xml_id = $this->input['xml_id'];
         }
     } else {
         $this->errorOutput('请选择模板');
     }
     //
     $map = array(0 => array('name' => 'key', 'value' => $this->input['key']), 1 => array('name' => 'pub_column_id', 'value' => $column_id), 2 => array('name' => 'add_user_name', 'value' => $this->input['add_user_name']), 3 => array('name' => 'start_time', 'value' => $this->input['start_time']), 4 => array('name' => 'end_time', 'value' => $this->input['end_time']), 5 => array('name' => 'start_weight', 'value' => $this->input['start_weight'] ? $this->input['start_weight'] : '0'), 6 => array('name' => 'end_weight', 'value' => $this->input['end_weight'] ? $this->input['end_weight'] : '100'), 7 => array('name' => 'xml_id', 'value' => $xml_id), 8 => array('name' => 'xml_name', 'value' => $this->input['xml_name']), 9 => array('name' => 'need_file', 'value' => $this->input['need_file'] ? 1 : 0), 10 => array('name' => 'vod_sort_id', 'value' => implode(',', $this->input['district_id'])), 11 => array('name' => 'column_name', 'value' => $this->input['column_name']), 12 => array('name' => 'file_num', 'value' => $this->input['file_num']));
     foreach ((array) $map as $k => $v) {
         $val[$v['name']] = $v['value'];
     }
     //$data['tag_val'] = $val ? addslashes(serialize($val)) : '';
     $data['config'] = $val ? serialize($val) : '';
     //$sql = "INSERT INTO " .DB_PREFIX. "export_config SET ";
     //$vid = $this->mode->create($data);
     $vid = $this->db->insert_data($data, 'export_config');
     if ($vid) {
         $sql = " UPDATE " . DB_PREFIX . "export_config SET order_id = {$vid}  WHERE id = {$vid}";
         $this->db->query($sql);
         $data['id'] = $vid;
         //$this->addLogs('创建',$data,'','创建' . $vid);此处是日志,自己根据情况加一下
         $this->addItem('success');
         $this->output();
     }
 }
Пример #3
0
 public function siteList()
 {
     if (!class_exists('publishconfig')) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishConfig = new publishconfig();
     }
     //获取所有站点
     $hgSites = $publishConfig->get_sites();
     $this->addItem($hgSites);
     $this->output();
 }
Пример #4
0
 private function storage_data($video, $vod_config)
 {
     if ($video['column_id']) {
         $publish_column = new publishconfig();
         $column_id = $video['column_id'];
         $column_id = $publish_column->get_columnname_by_ids('id,name', $column_id);
         $column_id = serialize($column_id);
     }
     $channel_id = $video['channel_id'];
     if ($video['create_time'] != -1) {
         $create_time = strtotime($video['create_time']);
     }
     $pathinfo = pathinfo($video['filepath']);
     //如果不存在分类就默认其分类与类型相同
     $vod_leixing = $video['vod_leixing'] ? $video['vod_leixing'] : 1;
     if (!$video['vod_sort_id'] || intval($video['vod_sort_id']) == -1) {
         $video['vod_sort_id'] = $vod_leixing;
     }
     /************创建视频的权限控制**********/
     if ($this->user['group_type'] > MAX_ADMIN_TYPE) {
         $prms['_action'] = 'create';
         $prms['node'] = $video['vod_sort_id'];
         if (!$this->verify_self_prms($prms)) {
             $this->errorOutput('NO_PRIVILEGE');
             //$this->addItem(array('return' => 'fail'));
             //$this->output();
         }
     }
     foreach ($video as $k => $v) {
         if (is_string($v)) {
             $video[$k] = rawurldecode($v);
         }
     }
     $data = array('cur_clarity' => $vod_config['unique_id'], 'title' => $video['title'] ? $video['title'] : $this->dir_info['original'], 'source' => $video['source'], 'subtitle' => $video['subtitle'], 'keywords' => $video['keywords'], 'weight' => $video['weight'], 'comment' => $video['comment'], 'author' => $video['author'], 'vod_leixing' => $vod_leixing, 'bitrate' => $vod_config['video_bitrate'], 'vod_sort_id' => $video['vod_sort_id'], 'is_allow' => $video['is_mark'], 'starttime' => $video['starttime'] ? strtotime($video['starttime']) : '', 'hostwork' => defined("TARGET_VIDEO_DOMAIN") ? 'http://' . ltrim(TARGET_VIDEO_DOMAIN, 'http://') : $this->settings['videouploads']['protocol'] . $this->settings['videouploads']['host'], 'source_hostwork' => defined("SOURCE_VIDEO_DOMIAN") ? 'http://' . ltrim(SOURCE_VIDEO_DOMIAN, 'http://') : '', 'source_base_path' => UPLOAD_DIR, 'source_path' => rtrim($pathinfo['dirname'], '/') . '/', 'source_filename' => $pathinfo['basename'], 'video_base_path' => TARGET_DIR, 'video_path' => $this->dir_info['target_dir'], 'video_filename' => $this->dir_info['output_filename'] . '.' . $this->dir_info['output_format'], 'channel_id' => $channel_id, 'column_id' => $column_id, 'from_appid' => $this->user['appid'], 'from_appname' => $this->user['display_name'], 'user_id' => $video['_user_id'] ? $video['_user_id'] : ($this->input['user_id'] ? $this->input['user_id'] : $this->user['user_id']), 'addperson' => $video['_user_name'] ? $video['_user_name'] : ($this->input['user_name'] ? $this->input['user_name'] : $this->user['user_name']), 'org_id' => $this->input['org_id'] ? $this->input['org_id'] : $this->user['org_id'], 'create_time' => $create_time ? $create_time : TIMENOW, 'update_time' => TIMENOW, 'ip' => hg_getip(), 'app_uniqueid' => $video['app_uniqueid'] ? $video['app_uniqueid'] : 'livmedia', 'mod_uniqueid' => $video['mod_uniqueid'] ? $video['mod_uniqueid'] : MOD_UNIQUEID, 'morebitrate_config_id' => $video['vod_config_id'], 'template_sign' => $video['template_sign']);
     if ($video['is_time_shift']) {
         $sql = "UPDATE " . DB_PREFIX . "vodinfo SET ";
     } else {
         $sql = " INSERT INTO " . DB_PREFIX . "vodinfo SET ";
     }
     foreach ($data as $k => $v) {
         $sql .= " {$k} = '{$v}',";
     }
     $sql = trim($sql, ',');
     if ($video['is_time_shift']) {
         $sql .= ' WHERE id = ' . $video['id'];
     }
     $this->db->query($sql);
     if ($video['is_time_shift']) {
         $vid = $video['id'];
     } else {
         $vid = $this->db->insert_id();
     }
     //记录发布库栏目分发表
     $this->update_pub_column($vid, $video['column_id']);
     //记录发布库栏目分发表
     if ($video['index_pic']) {
         $material = new material();
         $img_info = $material->localMaterial($video['index_pic'], $vid);
         $img_info = $img_info[0];
     } else {
         //获取一张截图,并且提交到图片服务器
         $img_info = getimage(UPLOAD_DIR . $video['filepath'], TARGET_DIR . $this->dir_info['target_dir'], $vid);
         if (!$img_info || !$img_info['filename']) {
             if ($this->settings['App_live'] && $channel_id) {
                 include_once ROOT_PATH . 'lib/class/live.class.php';
                 $live = new live();
                 $channelinfo = $live->getChannelById($channel_id, 1, 1);
                 if ($channelinfo && $channelinfo[0] && $channelinfo[0]['snap']) {
                     $img_info = $channelinfo[0]['snap'];
                 }
             }
         }
     }
     if ($img_info && is_array($img_info)) {
         $image_info = array('host' => $img_info['host'], 'dir' => $img_info['dir'], 'filepath' => $img_info['filepath'], 'filename' => $img_info['filename'], 'imgwidth' => $img_info['imgwidth'], 'imgheight' => $img_info['imgheight']);
     } else {
         $image_info = array();
     }
     $sql = " UPDATE " . DB_PREFIX . "vodinfo SET video_order_id = {$vid},img_info = '" . serialize($image_info) . "'  WHERE id = {$vid}";
     $this->db->query($sql);
     //存储vod_extend表
     if ($video['content_id']) {
         $extend_data = array('vodinfo_id' => $vid, 'content_id' => $video['content_id'], 'extend_data' => $video['extend_data']);
         $sql = " INSERT INTO " . DB_PREFIX . "vod_extend SET ";
         foreach ($extend_data as $k => $v) {
             $sql .= " {$k} = '{$v}',";
         }
         $sql = trim($sql, ',');
         $this->db->query($sql);
     }
     //加入日志
     $data['id'] = $vid;
     $this->addLogs('创建视频', '', $data, $data['title']);
     return array('vid' => $vid, 'img_info' => $image_info);
 }
Пример #5
0
 /**
  * 修改news内容的所属栏目
  */
 public function editColumnById()
 {
     $article_id = intval($this->input['id']);
     $column_id = intval($this->input['column_id']);
     $sql = "SELECT * FROM " . DB_PREFIX . "article WHERE id = " . $article_id;
     $q = $this->db->query_first($sql);
     $updateArray = array();
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish_column = new publishconfig();
     $result = $publish_column->get_columnname_by_ids('id,name', $column_id);
     $info['column_id'] = $result ? serialize($result) : '';
     $updateArray['column_id'] = serialize($result);
     $article_update_ret = $this->obj->update($updateArray, "article", "id={$article_id}");
     $ori_column_id = array();
     $q['column_id'] = unserialize($q['column_id']);
     if (is_array($q['column_id'])) {
         $ori_column_id = array_keys($q['column_id']);
     }
     //记录文稿发布库栏目分发表
     $this->obj->update_pub_column($article_id, $this->input['column_id']);
     //发布系统
     $ret = $this->obj->get_article(" id = {$article_id}", 'column_id,state,expand_id,catalog');
     //更改文章后发布的栏目
     $ret['column_id'] = unserialize($ret['column_id']);
     $new_column_id = array();
     if (is_array($ret['column_id'])) {
         $new_column_id = array_keys($ret['column_id']);
     }
     $info['id'] = $article_id;
     if (intval($ret['state']) == 1) {
         if (!empty($ret['expand_id'])) {
             $del_column = array_diff($ori_column_id, $new_column_id);
             if (!empty($del_column)) {
                 publish_insert_query($info, 'delete', $del_column);
             }
             $add_column = array_diff($new_column_id, $ori_column_id);
             if (!empty($add_column)) {
                 publish_insert_query($info, 'insert', $add_column);
             }
             $same_column = array_intersect($ori_column_id, $new_column_id);
             if (!empty($same_column)) {
                 publish_insert_query($info, 'update', $same_column);
                 //有新插入素材时需插入子队列
                 publish_insert_query($info, 'insert', $same_column, 1);
             }
         } else {
             //根据$article_id拿取news表/article中的信息
             $op = "insert";
             publish_insert_query($info, $op);
         }
     } else {
         if (!empty($ret['expand_id'])) {
             $new_info = $this->obj->getNewInfoById($article_id);
             $new_info['column_id'] = $info['column_id'];
             $info = $new_info;
             $op = "delete";
             publish_insert_query($info, $op);
         }
     }
     if ($article_update_ret) {
         $this->addItem($updateArray);
     }
     $this->output();
     // 	 	$result = $this->obj->update(array('column_id'=>$column_id),'article','id = '.$id);
 }
Пример #6
0
 /**
  * 检索条件 关键字,时间,状态,标题,发布时间,图片,附件,视频
  *
  * @name get_condition
  * @access    private
  * @category  hogesoft
  * @copyright hogesoft
  */
 private function get_condition()
 {
     $condition = '';
     //搜索标签
     if ($this->input['searchtag_id']) {
         $searchtag = $this->searchtag_detail(intval($this->input['searchtag_id']));
         foreach ((array) $searchtag['tag_val'] as $k => $v) {
             if (in_array($k, array('_id'))) {
                 //防止左边栏分类搜索无效
                 continue;
             }
             $this->input[$k] = hg_clean_value($v);
         }
     }
     //搜索标签
     ####增加权限控制 用于显示####
     if ($this->user['group_type'] > MAX_ADMIN_TYPE) {
         if (!$this->user['prms']['default_setting']['show_other_data']) {
             $condition .= ' AND user_id = ' . $this->user['user_id'];
         } else {
             //组织以内
             if ($this->user['prms']['default_setting']['show_other_data'] == 1 && $this->user['slave_group']) {
                 $condition .= ' AND org_id IN(' . $this->user['slave_org'] . ')';
             }
         }
         if ($authnode = $this->user['prms']['app_prms'][APP_UNIQUEID]['nodes']) {
             $authnode_str = $authnode ? implode(',', $authnode) : '';
             if ($authnode_str === '0') {
                 $condition .= ' AND a.sort_id IN(' . $authnode_str . ')';
             }
             if ($authnode_str && $authnode_str != -1) {
                 $authnode_str = intval($this->input['_id']) ? $authnode_str . ',' . $this->input['_id'] : $authnode_str;
                 $sql = 'SELECT id,childs FROM ' . DB_PREFIX . 'sort WHERE id IN(' . $authnode_str . ')';
                 $query = $this->db->query($sql);
                 $authnode_array = array();
                 while ($row = $this->db->fetch_array($query)) {
                     $authnode_array[$row['id']] = explode(',', $row['childs']);
                 }
                 $authnode_str = '';
                 foreach ($authnode_array as $node_id => $n) {
                     if ($node_id == intval($this->input['_id'])) {
                         $node_father_array = $n;
                         if (!in_array(intval($this->input['_id']), $authnode)) {
                             continue;
                         }
                     }
                     $authnode_str .= implode(',', $n) . ',';
                 }
                 $authnode_str = TRUE ? $authnode_str . '0' : trim($authnode_str, ',');
                 if (!$this->input['_id']) {
                     $condition .= ' AND a.sort_id IN(' . $authnode_str . ')';
                 } else {
                     $authnode_array = explode(',', $authnode_str);
                     if (!in_array($this->input['_id'], $authnode_array)) {
                         //
                         if (!($auth_child_node_array = array_intersect($node_father_array, $authnode_array))) {
                             $this->errorOutput(NO_PRIVILEGE);
                         }
                         //$this->errorOutput(var_export($auth_child_node_array,1));
                         $condition .= ' AND a.sort_id IN(' . implode(',', $auth_child_node_array) . ')';
                     }
                 }
             }
         }
     }
     if ($this->input['_id']) {
         $sql = "SELECT childs FROM " . DB_PREFIX . "sort WHERE id = " . intval($this->input['_id']);
         $ret = $this->db->query_first($sql);
         $condition .= " AND  a.sort_id in (" . $ret['childs'] . ")";
     }
     ####增加权限控制 用于显示####
     if ($this->input['max_id']) {
         $condition .= " AND a.id >" . intval($this->input['max_id']);
     }
     //查询
     if ($this->input['key']) {
         if (stripos($this->input['key'], '_') !== FALSE) {
             $this->input['key'] = addcslashes($this->input['key'], '_');
         }
         if (stripos($this->input['key'], '%') !== FALSE) {
             $this->input['key'] = addcslashes($this->input['key'], '%');
         }
         if ($this->input['key'] == '#') {
             $condition .= " AND a.title REGEXP '[^&]#' OR a.title LIKE '#%' ";
         } else {
             $condition .= " AND a.title LIKE '%" . addslashes(trim($this->input['key'])) . "%' ";
         }
     }
     if ($this->input['user_name']) {
         $condition .= " AND a.user_name = '" . trim($this->input['user_name']) . "' ";
     }
     if ($this->input['author']) {
         $condition .= " AND a.author = '" . trim($this->input['author']) . "'";
     }
     //查询分组
     if ($this->input['sort_id'] && $this->input['sort_id'] != -1) {
         $condition .= " AND  a.sort_id = '" . intval($this->input['sort_id']) . "'";
     }
     if ($this->input['para']) {
         $condition .= " AND  a.para = '" . intval($this->input['para']) . "'";
     }
     if ($this->input['start_time'] == $this->input['end_time']) {
         $his = date('His', strtotime($this->input['start_time']));
         if (!intval($his)) {
             $this->input['start_time'] = date('Y-m-d', strtotime($this->input['start_time'])) . ' 00:00';
             $this->input['end_time'] = date('Y-m-d', strtotime($this->input['end_time'])) . ' 23:59';
         }
     }
     //查询创建的起始时间
     if ($this->input['start_time']) {
         $start_time = strtotime($this->input['start_time']);
         $condition .= " AND a.create_time > " . $start_time;
     }
     //查询创建的结束时间
     if ($this->input['end_time']) {
         $end_time = strtotime($this->input['end_time']);
         $condition .= " AND a.create_time < " . $end_time;
         $start_time > $end_time && $this->errorOutput('搜索开始时间不能大于结束时间');
     }
     //查询权重
     if ($this->input['start_weight'] && $this->input['start_weight'] != -1) {
         $condition .= " AND a.weight >= " . $this->input['start_weight'];
     }
     if ($this->input['end_weight'] && $this->input['end_weight'] != -1) {
         $condition .= " AND a.weight <= " . $this->input['end_weight'];
     }
     if ($this->input['outlink'] == 1) {
         $condition .= " AND a.outlink != '' ";
     }
     if ($this->input['outlink_status']) {
         switch ($this->input['outlink_status']) {
             case 1:
                 $condition .= " AND a.outlink != '' ";
                 break;
             case 2:
                 $condition .= " AND a.outlink = '' ";
                 break;
         }
     }
     //查询发布的时间
     if ($this->input['date_search']) {
         $today = strtotime(date('Y-m-d'));
         $tomorrow = strtotime(date('Y-m-d', TIMENOW + 24 * 3600));
         switch (intval($this->input['date_search'])) {
             case 1:
                 //所有时间段
                 break;
             case 2:
                 //昨天的数据
                 $yesterday = strtotime(date('y-m-d', TIMENOW - 24 * 3600));
                 $condition .= " AND  a.create_time > '" . $yesterday . "' AND a.create_time < '" . $today . "'";
                 break;
             case 3:
                 //今天的数据
                 $condition .= " AND  a.create_time > '" . $today . "' AND a.create_time < '" . $tomorrow . "'";
                 break;
             case 4:
                 //最近3天
                 $last_threeday = strtotime(date('y-m-d', TIMENOW - 2 * 24 * 3600));
                 $condition .= " AND  a.create_time > '" . $last_threeday . "' AND a.create_time < '" . $tomorrow . "'";
                 break;
             case 5:
                 //最近7天
                 $last_sevenday = strtotime(date('y-m-d', TIMENOW - 6 * 24 * 3600));
                 $condition .= " AND  a.create_time > '" . $last_sevenday . "' AND a.create_time < '" . $tomorrow . "'";
                 break;
             default:
                 //所有时间段
                 break;
         }
     }
     //查询文章的状态
     if (isset($this->input['status'])) {
         switch (intval($this->input['status'])) {
             case 0:
                 $condition .= " ";
                 break;
             case 1:
                 //待审核
                 $condition .= " AND a.state= 0";
                 break;
             case 2:
                 //已审核
                 $condition .= " AND a.state = 1";
                 break;
             case 3:
                 //已打回
                 $condition .= " AND a.state = 2";
             default:
                 break;
         }
     }
     //根据是否有图片查询
     if (isset($this->input['is_img'])) {
         switch (intval($this->input['is_img'])) {
             case 1:
                 //不限制
                 $condition .= " ";
                 break;
             case 2:
                 //没有图片
                 $condition .= " AND a.is_img = 0";
                 break;
             case 3:
                 //有图片
                 $condition .= " AND a.is_img = 1";
                 break;
             default:
                 break;
         }
     }
     //根据是否有附件查询
     if (isset($this->input['is_affix'])) {
         switch (intval($this->input['is_affix'])) {
             case 1:
                 //不限制
                 $condition .= " ";
                 break;
             case 2:
                 //没有附件
                 $condition .= " AND a.is_affix = 0";
                 break;
             case 3:
                 //有附件
                 $condition .= " AND a.is_affix = 1";
                 break;
             default:
                 break;
         }
     }
     //根据是否有视频查询
     if (isset($this->input['is_video'])) {
         switch (intval($this->input['is_video'])) {
             case 1:
                 //不限制
                 $condition .= " ";
                 break;
             case 2:
                 //没有视频
                 $condition .= " AND a.is_video = 0";
                 break;
             case 3:
                 //有视频
                 $condition .= " AND a.is_video = 1";
                 break;
             default:
                 break;
         }
     }
     //过滤掉自动草稿
     $condition .= " AND a.state != -1";
     //根据发布库栏目搜索
     if ($this->input['pub_column_id']) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $pub_column_id = $publishconfig->get_column_by_ids('id, childs', $this->input['pub_column_id']);
         foreach ((array) $pub_column_id as $k => $v) {
             $column_id[] = $v['childs'];
         }
         $column_id = implode("','", $column_id);
         if ($column_id) {
             $condition .= " AND pc.column_id IN('" . $column_id . "')";
         }
         $condition .= " GROUP BY a.id";
     }
     return $condition;
 }
Пример #7
0
 /**
  * 排序操作
  *
  * @access public
  * @param  sort:排序的id array
  *
  * @return array
  */
 public function sort()
 {
     $sort = $this->input['sort'];
     if (!$sort || !is_array($sort)) {
         $this->errorOutput(ORDER_ERROR);
     }
     //排序栏目
     $module_info = $this->api->show(array('count' => -1));
     if ($module_info) {
         $column_sort = array();
         foreach ($module_info as $v) {
             if ($sort[$v['id']]) {
                 $column_sort[$v['column_id']] = $sort[$v['id']];
             }
         }
         $publish = new publishconfig();
         $ret = $publish->column_sort(json_encode($column_sort));
         if ($ret != 'success') {
             $this->errorOutput(COLUMN_SORT_WRONG);
         }
     }
     $condition = array('user_id' => $this->user['user_id']);
     foreach ($sort as $k => $v) {
         $condition['id'] = intval($k);
         $updateData = array('sort_order' => intval($v));
         $result = $this->api->update('app_module', $updateData, $condition);
     }
     $this->addItem($result);
     $this->output();
 }
Пример #8
0
 public function get_roles_prms()
 {
     $sql = "SELECT prms.*, app.name FROM " . DB_PREFIX . "role_prms prms LEFT JOIN " . DB_PREFIX . 'apps app ON prms.app_uniqueid=app.bundle ';
     $query = $this->db->query($sql);
     $role_prms = array();
     while ($row = $this->db->fetch_array($query)) {
         if (trim($row['func_prms'])) {
             $row['func_prms'] = array_flip(explode(',', $row['func_prms']));
             foreach ($row['func_prms'] as $action => $null) {
                 if (!$this->settings['auth_op'][$action]) {
                     $row['func_prms'][$action] = $action;
                 } else {
                     $row['func_prms'][$action] = $this->settings['auth_op'][$action];
                 }
             }
             //$this->settings['auth_op'];
         }
         $role_prms[$row['admin_role_id']]['app_prms'][$row['app_uniqueid']] = $row;
     }
     $sql = 'SELECT id,extend_prms,site_prms,publish_prms FROM ' . DB_PREFIX . 'admin_role ';
     $query = $this->db->query($sql);
     $column_ids = $site_ids = '';
     while ($row = $this->db->fetch_array($query)) {
         if ($row['publish_prms']) {
             $column_ids .= $row['publish_prms'] . ',';
         }
         if ($row['site_prms']) {
             $site_ids .= $row['site_prms'] . ',';
         }
         $row['publish_prms'] = $row['publish_prms'] ? explode(',', $row['publish_prms']) : array();
         $row['site_prms'] = $row['site_prms'] ? explode(',', $row['site_prms']) : array();
         $row['extend_prms'] = unserialize($row['extend_prms']);
         $role[$row['id']] = $row;
     }
     $column_ids = trim($column_ids, ',');
     $site_ids = trim($site_ids, ',');
     if ($column_ids) {
         require_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $publish_columns = $publishconfig->get_columnname_by_ids('*', $column_ids);
     }
     if (!class_exists('publishconfig')) {
         require_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
     }
     $publish_sites = $publishconfig->get_sites();
     foreach ($role_prms as $role_id => $v) {
         $v['publish_prms'] = array();
         if ($role[$role_id]['publish_prms']) {
             $v['publish_prms'] = array_intersect_key($publish_columns, array_flip($role[$role_id]['publish_prms']));
         }
         $v['site_prms'] = array();
         if ($role[$role_id]['site_prms']) {
             $v['site_prms'] = array_intersect_key($publish_sites, array_flip($role[$role_id]['site_prms']));
         }
         $v['extend_prms'] = array();
         if ($role[$role_id]['extend_prms']) {
             $v['default_setting'] = $role[$role_id]['extend_prms'];
         }
         $this->addItem_withkey($role_id, $v);
     }
     $this->output();
 }
Пример #9
0
 /**
  * 内容管理下更换视频内容的栏目
  */
 public function editColumnsById()
 {
     $id = intval($this->input['id']);
     $column_id = intval($this->input['column_id']);
     $updateArray = array();
     //查询修改视频之前已经发布到的栏目
     $sql = "select * from " . DB_PREFIX . "vodinfo where id = " . $id;
     $q = $this->db->query_first($sql);
     $pre_data = $q;
     $q['column_id'] = unserialize($q['column_id']);
     $ori_column_id = array();
     if (is_array($q['column_id'])) {
         $ori_column_id = array_keys($q['column_id']);
     }
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish_column = new publishconfig();
     $result = $publish_column->get_columnname_by_ids('id,name', $column_id);
     $updateArray['column_id'] = serialize($result);
     $updatesql = "UPDATE " . DB_PREFIX . "vodinfo set column_id ='" . $updateArray['column_id'] . "'  WHERE  id = " . $id;
     $updateC = $this->db->query($updatesql);
     //发布系统
     $sql = "SELECT * FROM " . DB_PREFIX . "vodinfo WHERE id = " . $id;
     $ret = $this->db->query_first($sql);
     //更改视频后发布的栏目
     $ret['column_id'] = unserialize($ret['column_id']);
     $new_column_id = array();
     if (is_array($ret['column_id'])) {
         $new_column_id = array_keys($ret['column_id']);
     }
     //记录发布库栏目分发表
     $this->update_pub_column(intval($this->input['id']), implode(',', $new_column_id));
     //记录发布库栏目分发表
     if (intval($ret['status']) == 2) {
         if (!empty($ret['expand_id'])) {
             $del_column = array_diff($ori_column_id, $new_column_id);
             if (!empty($del_column)) {
                 publish_insert_query($ret, 'delete', $del_column);
             }
             $add_column = array_diff($new_column_id, $ori_column_id);
             if (!empty($add_column)) {
                 publish_insert_query($ret, 'insert', $add_column);
             }
             $same_column = array_intersect($ori_column_id, $new_column_id);
             if (!empty($same_column)) {
                 publish_insert_query($ret, 'update', $same_column);
             }
         } else {
             if ($new_column_id) {
                 $op = "insert";
                 publish_insert_query($ret, $op);
             }
         }
     } else {
         if (!empty($ret['expand_id'])) {
             $op = "delete";
             publish_insert_query($ret, $op);
         }
     }
     //修改vote_question中column_id
     if ($updateC) {
         $this->addItem($updateArray);
     }
     $this->output();
 }
Пример #10
0
 public function get_site()
 {
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish_server = new publishconfig();
     return $publish_server->get_site();
 }
Пример #11
0
 /**
  * 内容管理下更换内容的栏目
  */
 public function editColumnsById()
 {
     $id = intval($this->input['id']);
     $column_id = intval($this->input['column_id']);
     $updateArray = array();
     //取投票数据
     $vote = $this->mVote->get_vote_by_id($id);
     $vote = $vote[0];
     $status = $vote['status'];
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish_column = new publishconfig();
     $result = $publish_column->get_columnname_by_ids('id,name', $column_id);
     $updateArray['column_id'] = serialize($result);
     $updateArray['id'] = $id;
     //修改vote_question中column_id
     $ret_vote = $this->mVote->update($updateArray);
     //发布开始
     //$vote['column_id'] = unserialize($vote['column_id']);
     $ori_column_id = array();
     if (is_array($vote['column_id'])) {
         $ori_column_id = array_keys($vote['column_id']);
     }
     $data['column_id'] = $this->mPublishColumn->get_columnname_by_ids('id,name', $column_id);
     $data['column_id'] = $data['column_id'] ? serialize($data['column_id']) : '';
     $data['id'] = $id;
     //发布开始
     if ($ret_vote['id']) {
         //更改文章后发布的栏目
         $ret_vote['column_id'] = unserialize($ret_vote['column_id']);
         $new_column_id = array();
         if (is_array($ret_vote['column_id'])) {
             $new_column_id = array_keys($ret_vote['column_id']);
         }
         if ($status == 1) {
             if (!empty($vote['expand_id'])) {
                 $del_column = array_diff($ori_column_id, $new_column_id);
                 if (!empty($del_column)) {
                     $this->publish_insert_query($data['id'], 'delete', $del_column);
                 }
                 $add_column = array_diff($new_column_id, $ori_column_id);
                 if (!empty($add_column)) {
                     $this->publish_insert_query($data['id'], 'insert', $add_column);
                 }
                 $same_column = array_intersect($ori_column_id, $new_column_id);
                 if (!empty($same_column)) {
                     $this->publish_insert_query($data['id'], 'update', $same_column);
                 }
             } else {
                 $op = "insert";
                 $this->publish_insert_query($data['id'], $op, $new_column_id);
             }
         } else {
             if (!empty($vote['expand_id'])) {
                 $op = "delete";
                 $this->publish_insert_query($data['id'], $op, $ori_column_id);
             }
         }
     }
     if ($ret_vote) {
         $this->addItem($updateArray);
     }
     $this->output();
 }
Пример #12
0
 /**
  * 更新扩展数据
  */
 public function updateExtra()
 {
     $id = intval($this->input['id']);
     $app_id = intval($this->input['app_id']);
     if ($id <= 0 || $app_id <= 0) {
         $this->errorOutput(PARAM_WRONG);
     }
     //验证APP是否存在
     $queryData = array('id' => $app_id, 'user_id' => $this->user['user_id'], 'del' => 0);
     $app_info = $this->api->detail('app_info', $queryData);
     if (!$app_info) {
         $this->errorOutput(NO_APPID);
     }
     $appModule_info = $this->api->detail('app_module', array('id' => $id, 'app_id' => $app_id));
     if (!$appModule_info) {
         $this->errorOutput(PARAM_WRONG);
     }
     $data = array('ui_id' => intval($this->input['uiId']), 'column_ids' => isset($this->input['columnIds']) ? $this->input['columnIds'] : '', 'type' => isset($this->input['type']) ? implode(',', (array) $this->input['type']) : '', 'site_id' => intval($this->input['siteId']), 'is_sub' => intval($this->input['is_sub']), 'icon_bg' => trim(urldecode($this->input['iconBackground'])), 'webview_id' => intval($this->input['webviewId']), 'webview_url' => trim(urldecode($this->input['webviewUrl'])), 'solidify_id' => intval($this->input['solidifyId']));
     $validate = array();
     if ($data['webview_id'] > 0 || $data['webview_url']) {
         if ($data['webview_id'] > 0 && $appModule_info['web_view'] != $data['webview_id']) {
             $webview_info = $this->api->detail('app_webview', array('id' => $data['webview_id']));
             if (!$webview_info) {
                 $this->errorOutput(PARAM_WRONG);
             }
             $validate['web_view'] = $data['webview_id'];
             $validate['web_url'] = $webview_info['url'];
         } elseif ($data['webview_url'] && $appModule_info['web_url'] != $data['webview_url']) {
             //判断url
             if (!filter_var($data['webview_url'], FILTER_VALIDATE_URL)) {
                 $this->errorOutput(URL_NOT_VALID);
             }
             $validate['web_url'] = $data['webview_url'];
             $validate['web_view'] = -1;
         }
         $validate['ui_id'] = 0;
         $validate['column_ids'] = '';
         $validate['type'] = '';
         $validate['solidify_id'] = 0;
     } else {
         if ($data['ui_id'] > 0 && $appModule_info['ui_id'] != $data['ui_id']) {
             $validate['ui_id'] = $data['ui_id'];
         }
         if ($data['solidify_id'] > 0 && $appModule_info['solidify_id'] != $data['solidify_id']) {
             $validate['solidify_id'] = $data['solidify_id'];
             $validate['column_ids'] = '';
             $validate['type'] = '';
         } else {
             if ($data['column_ids'] && $data['site_id']) {
                 $publish = new publishconfig();
                 $where = ' AND site_id = ' . $data['site_id'] . ' AND id IN (' . $data['column_ids'] . ')';
                 $column_info = $publish->get_column('*', $where);
                 if (!$column_info) {
                     $this->errorOutput(PARAM_WRONG);
                 }
                 $column_arr = array();
                 foreach ($column_info as $column) {
                     $column_arr[$column['id']] = $column['name'];
                 }
                 if ($column_arr) {
                     $data['column_ids'] = serialize($column_arr);
                 }
             }
             unset($data['site_id']);
             if ($appModule_info['column_ids'] != $data['column_ids']) {
                 $validate['column_ids'] = $data['column_ids'];
             }
             if ($appModule_info['type'] != $data['type']) {
                 $validate['type'] = $data['type'];
             }
             $validate['solidify_id'] = 0;
         }
         $validate['web_view'] = 0;
         $validate['web_url'] = '';
     }
     if ($appModule_info['is_sub'] != $data['is_sub']) {
         $validate['is_sub'] = $data['is_sub'];
     }
     if ($appModule_info['icon_bg'] != $data['icon_bg']) {
         if ($data['icon_bg'] && checkColor($data['icon_bg']) === false) {
             $this->errorOutput(COLOR_ERROR);
         }
         $validate['icon_bg'] = $data['icon_bg'];
     }
     if ($validate) {
         $result = $this->api->update('app_module', $validate, array('id' => $id));
     } else {
         $result = true;
     }
     $this->addItem($result);
     $this->output();
 }
Пример #13
0
 public function get_condition()
 {
     $condition = '';
     //搜索标签
     if ($this->input['searchtag_id']) {
         $searchtag = $this->searchtag_detail(intval($this->input['searchtag_id']));
         foreach ((array) $searchtag['tag_val'] as $k => $v) {
             if (in_array($k, array('_id'))) {
                 //防止左边栏分类搜索无效
                 continue;
             }
             $this->input[$k] = $v;
         }
     }
     //搜索标签
     ####增加权限控制 用于显示####
     if ($this->user['group_type'] > MAX_ADMIN_TYPE) {
         if (!$this->user['prms']['default_setting']['show_other_data']) {
             $condition .= ' AND t.user_id = ' . $this->user['user_id'];
         } else {
             if ($this->user['prms']['default_setting']['show_other_data'] == 1 && $this->user['slave_group']) {
                 $condition .= ' AND t.org_id IN(' . $this->user['slave_org'] . ')';
             }
         }
         $authnode = $this->user['prms']['app_prms'][APP_UNIQUEID]['nodes'];
         if ($authnode) {
             $authnode_str = $authnode ? implode(',', $authnode) : '';
             if ($authnode_str && $authnode_str != -1) {
                 $sql = 'SELECT id,childs FROM ' . DB_PREFIX . 'tuji_node WHERE id IN(' . $authnode_str . ')';
                 $query = $this->db->query($sql);
                 $authnode_array = array();
                 while ($row = $this->db->fetch_array($query)) {
                     $authnode_array[$row['id']] = explode(',', $row['childs']);
                 }
                 //算出所有允许的节点
                 $auth_nodes = array();
                 foreach ($authnode_array as $k => $v) {
                     $auth_nodes = array_merge($auth_nodes, $v);
                 }
                 //如果没有_id就查询出所有权限所允许的节点下的视频包括其后代元素
                 if (!$this->input['_id']) {
                     $condition .= " AND t.tuji_sort_id IN (" . implode(',', $auth_nodes) . ",0)";
                 } else {
                     if (in_array($this->input['_id'], $auth_nodes)) {
                         if (isset($authnode_array[$this->input['_id']]) && $authnode_array[$this->input['_id']]) {
                             $condition .= " AND t.tuji_sort_id IN (" . implode(',', $authnode_array[$this->input['_id']]) . ")";
                         } else {
                             $sql = "SELECT id,childs FROM " . DB_PREFIX . "tuji_node WHERE id = '" . $this->input['_id'] . "'";
                             $childs_nodes = $this->db->query_first($sql);
                             $condition .= " AND t.tuji_sort_id IN (" . $childs_nodes['childs'] . ")";
                         }
                     } else {
                         $this->errorOutput(NO_PRIVILEGE);
                     }
                 }
             } else {
                 if ($authnode_str == -1) {
                     if ($this->input['_id']) {
                         $sql = " SELECT childs, fid FROM " . DB_PREFIX . "tuji_node WHERE  id = '" . $this->input['_id'] . "'";
                         $arr = $this->db->query_first($sql);
                         if ($arr) {
                             $condition .= " AND t.tuji_sort_id IN (" . $arr['childs'] . ")";
                         }
                     }
                 }
             }
         }
     } else {
         if ($this->input['_id']) {
             $sql = " SELECT childs, fid FROM " . DB_PREFIX . "tuji_node WHERE  id = '" . $this->input['_id'] . "'";
             $arr = $this->db->query_first($sql);
             if ($arr) {
                 $condition .= " AND t.tuji_sort_id IN (" . $arr['childs'] . ")";
             }
         }
     }
     if ($this->input['id']) {
         $condition .= ' AND t.id = ' . intval($this->input['id']);
     }
     if ($this->input['max_id']) {
         $condition .= " AND t.id >" . intval($this->input['max_id']);
     }
     if (trim($this->input['key']) || trim(urldecode($this->input['key'])) == '0') {
         $condition .= ' AND t.title LIKE "%' . trim($this->input['key']) . '%"';
     }
     if ($this->input['user_name']) {
         $condition .= " AND t.user_name = '" . $this->input['user_name'] . "' ";
     }
     if ($this->input['user_id']) {
         $condition .= " AND t.user_id = '" . $this->input['user_id'] . "' ";
     }
     if ($this->input['comment']) {
         $condition .= ' AND t.comment LIKE "%' . urldecode($this->input['comment']) . '%"';
     }
     if (intval($this->input['status'])) {
         $condition .= " AND t.status = '" . intval($this->input['status']) . "'";
     }
     if ($this->input['start_time'] == $this->input['end_time']) {
         //处理时间相等
         $his = date('His', strtotime($this->input['start_time']));
         if (!intval($his)) {
             $this->input['start_time'] = date('Y-m-d', strtotime($this->input['start_time'])) . ' 00:00';
             $this->input['end_time'] = date('Y-m-d', strtotime($this->input['end_time'])) . ' 23:59:59';
         }
     }
     if ($this->input['start_time']) {
         $start_time = strtotime(trim(urldecode($this->input['start_time'])));
         $condition .= " AND t.create_time >= '" . $start_time . "'";
     }
     if ($this->input['end_time']) {
         $end_time = strtotime(trim(urldecode($this->input['end_time'])));
         $condition .= " AND t.create_time <= '" . $end_time . "'";
     }
     //权重
     if ($this->input['start_weight'] && $this->input['start_weight'] != -1) {
         $condition .= " AND t.weight >= " . $this->input['start_weight'];
     }
     if ($this->input['end_weight'] && $this->input['end_weight'] != -1) {
         $condition .= " AND t.weight <= " . $this->input['end_weight'];
     }
     if ($this->input['date_search']) {
         $today = strtotime(date('Y-m-d'));
         $tomorrow = strtotime(date('y-m-d', TIMENOW + 24 * 3600));
         switch (intval($this->input['date_search'])) {
             case 1:
                 //所有时间段
                 break;
             case 2:
                 //昨天的数据
                 $yesterday = strtotime(date('y-m-d', TIMENOW - 24 * 3600));
                 $condition .= " AND  t.create_time > '" . $yesterday . "' AND t.create_time < '" . $today . "'";
                 break;
             case 3:
                 //今天的数据
                 $condition .= " AND  t.create_time > '" . $today . "' AND t.create_time < '" . $tomorrow . "'";
                 break;
             case 4:
                 //最近3天
                 $last_threeday = strtotime(date('y-m-d', TIMENOW - 2 * 24 * 3600));
                 $condition .= " AND  t.create_time > '" . $last_threeday . "' AND t.create_time < '" . $tomorrow . "'";
                 break;
             case 5:
                 //最近7天
                 $last_sevenday = strtotime(date('y-m-d', TIMENOW - 6 * 24 * 3600));
                 $condition .= " AND  t.create_time > '" . $last_sevenday . "' AND t.create_time < '" . $tomorrow . "'";
                 break;
             default:
                 //所有时间段
                 break;
         }
     }
     if ($this->input['pub_column_id']) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $pub_column_id = $publishconfig->get_column_by_ids('id, childs', $this->input['pub_column_id']);
         foreach ((array) $pub_column_id as $k => $v) {
             $column_id[] = $v['childs'];
         }
         $column_id = implode("','", $column_id);
         if ($column_id) {
             $condition .= " AND pc.column_id IN('" . $column_id . "')";
         }
     }
     return $condition;
 }
Пример #14
0
 /**
  * 内容管理下更换内容的栏目
  */
 public function editColumnsById()
 {
     $id = intval($this->input['id']);
     $column_id = intval($this->input['column_id']);
     $updateArray = array();
     //查询修改图集之前已经发布到的栏目
     $sql = "select * from " . DB_PREFIX . "tuji where id = " . $id;
     $q = $this->db->query_first($sql);
     if (!empty($q)) {
         $ori_column_id = array();
         $q['column_id'] = unserialize($q['column_id']);
         if (is_array($q['column_id'])) {
             $ori_column_id = array_keys($q['column_id']);
         }
     }
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish_column = new publishconfig();
     $result = $publish_column->get_columnname_by_ids('id,name', $column_id);
     $updateArray['column_id'] = serialize($result);
     //修改vote_question中column_id
     $sql = "UPDATE " . DB_PREFIX . "tuji  SET  status=1 , column_id = '" . serialize($result) . "'  WHERE id IN (" . $id . ")";
     $updateC = $this->db->query($sql);
     //记录发布库栏目分发表
     $this->tuji->update_pub_column($id, $column_id);
     //记录发布库栏目分发表
     //发布系统
     $sql = "SELECT * FROM " . DB_PREFIX . "tuji WHERE id = " . intval($this->input['id']);
     $ret = $this->db->query_first($sql);
     //更改文章后发布的栏目
     $ret['column_id'] = unserialize($ret['column_id']);
     $new_column_id = array();
     if (is_array($ret['column_id'])) {
         $new_column_id = array_keys($ret['column_id']);
     }
     if (intval($ret['status']) == 1) {
         if (!empty($ret['expand_id'])) {
             $del_column = array_diff($ori_column_id, $new_column_id);
             if (!empty($del_column)) {
                 publish_insert_query($ret, 'delete', $del_column);
             }
             $add_column = array_diff($new_column_id, $ori_column_id);
             if (!empty($add_column)) {
                 publish_insert_query($ret, 'insert', $add_column);
             }
             $same_column = array_intersect($ori_column_id, $new_column_id);
             if (!empty($same_column)) {
                 publish_insert_query($ret, 'update', $same_column);
                 //有新图片时需插入子队列
                 publish_insert_query($ret, 'insert', $same_column, 1);
             }
         } else {
             $op = "insert";
             publish_insert_query($ret, $op);
         }
     } else {
         if (!empty($ret['expand_id'])) {
             $op = "delete";
             publish_insert_query($ret, $op);
         }
     }
     if ($updateC) {
         $this->addItem($updateArray);
     }
     $this->output();
 }
Пример #15
0
 public function get_condition()
 {
     $condition = "";
     ####增加权限控制 用于显示####
     if ($this->user['group_type'] > MAX_ADMIN_TYPE) {
         if (!$this->user['prms']['default_setting']['show_other_data']) {
             $condition .= ' AND v.user_id = ' . $this->user['user_id'];
         } else {
             if ($this->user['prms']['default_setting']['show_other_data'] == 1 && $this->user['slave_group']) {
                 $condition .= ' AND v.org_id IN(' . $this->user['slave_org'] . ')';
             }
         }
         $authnode = $this->user['prms']['app_prms'][APP_UNIQUEID]['nodes'];
         if ($authnode) {
             $authnode_str = $authnode ? implode(',', $authnode) : '';
             if ($authnode_str) {
                 $sql = 'SELECT id,childs FROM ' . DB_PREFIX . 'vod_media_node WHERE id IN(' . $authnode_str . ')';
                 $query = $this->db->query($sql);
                 $authnode_array = array();
                 while ($row = $this->db->fetch_array($query)) {
                     $authnode_array[$row['id']] = explode(',', $row['childs']);
                 }
                 //算出所有允许的节点
                 $auth_nodes = array();
                 foreach ($authnode_array as $k => $v) {
                     $auth_nodes = array_merge($auth_nodes, $v);
                 }
                 //如果没有_id就查询出所有权限所允许的节点下的视频包括其后代元素
                 if (!$this->input['vod_sort_id']) {
                     $condition .= " AND v.vod_sort_id IN (" . implode(',', $auth_nodes) . ")";
                 } else {
                     if (in_array($this->input['vod_sort_id'], $auth_nodes)) {
                         if (isset($authnode_array[$this->input['vod_sort_id']]) && $authnode_array[$this->input['vod_sort_id']]) {
                             $condition .= " AND v.vod_sort_id IN (" . implode(',', $authnode_array[$this->input['vod_sort_id']]) . ")";
                         } else {
                             $sql = "SELECT id,childs FROM " . DB_PREFIX . "vod_media_node WHERE id = '" . $this->input['vod_sort_id'] . "'";
                             $childs_nodes = $this->db->query_first($sql);
                             $condition .= " AND v.vod_sort_id IN (" . $childs_nodes['childs'] . ")";
                         }
                     } else {
                         $this->errorOutput(NO_PRIVILEGE);
                     }
                 }
             }
         }
     } else {
         if ($this->input['vod_sort_id']) {
             $sql = " SELECT childs, fid FROM " . DB_PREFIX . "vod_media_node WHERE  id = '" . $this->input['vod_sort_id'] . "'";
             $arr = $this->db->query_first($sql);
             if ($arr) {
                 $condition .= " AND v.vod_sort_id IN (" . $arr['childs'] . ")";
             }
         }
     }
     ####增加权限控制 用于显示####
     if ($this->input['k'] || trim($this->input['k']) == '0') {
         $condition .= ' AND  v.title  LIKE "%' . trim($this->input['k']) . '%"';
     }
     if ($this->input['start_time']) {
         $start_time = strtotime(trim($this->input['start_time']));
         $condition .= " AND v.create_time >= '" . $start_time . "'";
     }
     if ($this->input['end_time']) {
         $end_time = strtotime(trim($this->input['end_time']));
         $condition .= " AND v.create_time <= '" . $end_time . "'";
     }
     if ($this->input['vod_leixing']) {
         $sql .= "  AND v.vod_leixing = " . intval($this->input['vod_leixing']);
     }
     if ($this->input['user_name']) {
         $condition .= " AND v.addperson = '" . $this->input['user_name'] . "' ";
     }
     //权重
     if ($this->input['start_weight'] && $this->input['start_weight'] != -1) {
         $condition .= " AND v.weight >=" . $this->input['start_weight'];
     }
     if ($this->input['end_weight'] && $this->input['end_weight'] != -2) {
         $condition .= " AND v.weight <= " . $this->input['end_weight'];
     }
     if ($this->input['trans_status'] && $this->input['trans_status'] != -2) {
         $condition .= " AND v.status = '" . $this->input['trans_status'] . "'";
     } else {
         if ($this->input['trans_status'] == '0') {
             $condition .= " AND v.status = 0 ";
         }
     }
     if ($this->input['date_search']) {
         $today = strtotime(date('Y-m-d'));
         $tomorrow = strtotime(date('y-m-d', TIMENOW + 24 * 3600));
         switch (intval($this->input['date_search'])) {
             case 1:
                 //所有时间段
                 break;
             case 2:
                 //昨天的数据
                 $yesterday = strtotime(date('y-m-d', TIMENOW - 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $yesterday . "' AND v.create_time < '" . $today . "'";
                 break;
             case 3:
                 //今天的数据
                 $condition .= " AND  v.create_time > '" . $today . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             case 4:
                 //最近3天
                 $last_threeday = strtotime(date('y-m-d', TIMENOW - 2 * 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $last_threeday . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             case 5:
                 //最近7天
                 $last_sevenday = strtotime(date('y-m-d', TIMENOW - 6 * 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $last_sevenday . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             default:
                 //所有时间段
                 break;
         }
     }
     //加限制显示来自于哪些应用的视频
     if (defined('LIMIT_NOT_SHOW') && LIMIT_NOT_SHOW) {
         $_limit_app = explode(',', LIMIT_NOT_SHOW);
         foreach ($_limit_app as $_k => $_v) {
             $condition .= " AND v.app_uniqueid != '" . $_v . "' ";
         }
     }
     //根据发布库栏目搜索
     if ($this->input['pub_column_id']) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $pub_column_id = $publishconfig->get_column_by_ids('id, childs', $this->input['pub_column_id']);
         foreach ((array) $pub_column_id as $k => $v) {
             $column_id[] = $v['childs'];
         }
         $column_id = implode(",", $column_id);
         if ($column_id) {
             $condition .= " AND pc.column_id IN(" . $column_id . ")";
         }
     }
     return $condition;
 }
Пример #16
0
 private function get_condition()
 {
     $condition = "";
     if ($this->input['vod_sort_id']) {
         $sql = " SELECT childs, fid FROM " . DB_PREFIX . "vod_media_node WHERE  id = '" . $this->input['vod_sort_id'] . "'";
         $arr = $this->db->query_first($sql);
         if ($arr) {
             $condition .= " AND v.vod_sort_id IN (" . $arr['childs'] . ")";
         }
     }
     ####增加权限控制 用于显示####
     if ($this->input['id']) {
         $condition .= " AND v.id in (" . $this->input['id'] . ")";
     }
     if ($this->input['user_name']) {
         $condition .= " AND v.addperson = '" . $this->input['user_name'] . "' ";
     }
     if ($this->input['user_id']) {
         $condition .= " AND v.user_id = '" . $this->input['user_id'] . "' ";
     }
     if ($this->input['title'] || trim($this->input['title']) == '0') {
         $condition .= ' AND v.title LIKE "%' . $this->input['title'] . '%"';
     }
     if ($this->input['k'] || trim($this->input['k']) == '0') {
         $condition .= ' AND v.title LIKE "%' . $this->input['k'] . '%"';
     }
     if ($this->input['status']) {
         $condition .= " AND v.status IN (" . $this->input['status'] . ")";
     }
     if ($this->input['is_forcecode']) {
         $condition .= " AND v.is_forcecode = 1 ";
     }
     if ($this->input['start_time']) {
         $start_time = strtotime(trim($this->input['start_time']));
         $condition .= " AND v.create_time >= '" . $start_time . "'";
     }
     if ($this->input['end_time']) {
         $end_time = strtotime(trim($this->input['end_time']));
         $condition .= " AND v.create_time <= '" . $end_time . "'";
     }
     //权重
     if ($this->input['start_weight'] && $this->input['start_weight'] != -1) {
         $condition .= " AND v.weight >=" . $this->input['start_weight'];
     }
     if ($this->input['end_weight'] && $this->input['end_weight'] != -2) {
         $condition .= " AND v.weight <= " . $this->input['end_weight'];
     }
     if ($this->input['date_search']) {
         $today = strtotime(date('Y-m-d'));
         $tomorrow = strtotime(date('y-m-d', TIMENOW + 24 * 3600));
         switch (intval($this->input['date_search'])) {
             case 1:
                 //所有时间段
                 break;
             case 2:
                 //昨天的数据
                 $yesterday = strtotime(date('y-m-d', TIMENOW - 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $yesterday . "' AND v.create_time < '" . $today . "'";
                 break;
             case 3:
                 //今天的数据
                 $condition .= " AND  v.create_time > '" . $today . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             case 4:
                 //最近3天
                 $last_threeday = strtotime(date('y-m-d', TIMENOW - 2 * 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $last_threeday . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             case 5:
                 //最近7天
                 $last_sevenday = strtotime(date('y-m-d', TIMENOW - 6 * 24 * 3600));
                 $condition .= " AND  v.create_time > '" . $last_sevenday . "' AND v.create_time < '" . $tomorrow . "'";
                 break;
             default:
                 //所有时间段
                 break;
         }
     }
     if ($this->input['pub_column_id']) {
         include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
         $publishconfig = new publishconfig();
         $pub_column_id = $publishconfig->get_column_by_ids('id, childs', $this->input['pub_column_id']);
         foreach ((array) $pub_column_id as $k => $v) {
             $column_id[] = $v['childs'];
         }
         $column_id = implode("','", $column_id);
         if ($column_id) {
             $condition .= " AND pc.column_id IN('" . $column_id . "')";
         }
     }
     return $condition;
 }
Пример #17
0
 public function show_site()
 {
     include_once ROOT_PATH . 'lib/class/publishconfig.class.php';
     $publish = new publishconfig();
     $sites = $publish->get_site('id,site_name');
     $ret = array();
     if (is_array($sites) && count($sites) > 0) {
         foreach ($sites as $k => $v) {
             $ret[$v['id']] = $v;
         }
     }
     return $ret;
 }