listData($where, $order, $param['page'], $param['limit']); $this->assign('list', $res['list']); $this->assign('total', $res['total']); $this->assign('page', $res['page']); $this->assign('limit', $res['limit']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param', $param); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_vod'; $collect_break_vod = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_art'; $collect_break_art = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_actor'; $collect_break_actor = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_role'; $collect_break_role = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_website'; $collect_break_website = Cache::get($key); $this->assign('collect_break_vod', $collect_break_vod); $this->assign('collect_break_art', $collect_break_art); $this->assign('collect_break_actor', $collect_break_actor); $this->assign('collect_break_role', $collect_break_role); $this->assign('collect_break_website', $collect_break_website); $this->assign('title',lang('admin/collect/title')); return $this->fetch('admin@collect/index'); } public function test() { $param = input(); $res = model('Collect')->vod($param); return json($res); } public function info() { if (Request()->isPost()) { $param = input('post.'); $validate = \think\Loader::validate('Token'); if(!$validate->check($param)){ return $this->error($validate->getError()); } $res = model('Collect')->saveData($param); if ($res['code'] > 1) { return $this->error($res['msg']); } return $this->success($res['msg']); } $id = input('id'); $where = []; $where['collect_id'] = ['eq', $id]; $res = model('Collect')->infoData($where); $this->assign('info', $res['info']); $this->assign('title', lang('admin/collect/title')); return $this->fetch('admin@collect/info'); } public function del() { $param = input(); $ids = $param['ids']; if (!empty($ids)) { $where = []; $where['collect_id'] = ['in', $ids]; $res = model('Collect')->delData($where); if ($res['code'] > 1) { return $this->error($res['msg']); } return $this->success($res['msg']); } return $this->error(lang('param_err')); } public function union() { $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_vod'; $collect_break_vod = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_art'; $collect_break_art = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_actor'; $collect_break_actor = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_role'; $collect_break_role = Cache::get($key); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_website'; $collect_break_website = Cache::get($key); $this->assign('collect_break_vod', $collect_break_vod); $this->assign('collect_break_art', $collect_break_art); $this->assign('collect_break_actor', $collect_break_actor); $this->assign('collect_break_role', $collect_break_role); $this->assign('collect_break_website', $collect_break_website); $this->assign('title', lang('admin/collect/title')); return $this->fetch('admin@collect/union'); } public function load() { $param = input(); $key = $GLOBALS['config']['app']['cache_flag']. '_'. 'collect_break_' . $param['flag']; $collect_break = Cache::get($key); $url = $this->_ref; if (!empty($collect_break)) { echo lang('admin/collect/load_break'); $url = $collect_break; } mac_jump($url); } public function api($pp = []) { $param = input(); if (!empty($pp)) { $param = $pp; } //分类 $type_list = model('Type')->getCache('type_list'); $this->assign('type_list', $type_list); if (!empty($param['pg'])) { $param['page'] = $param['pg']; unset($param['pg']); } @session_write_close(); if ($param['mid'] == '' || $param['mid'] == '1') { return $this->vod($param); } elseif ($param['mid'] == '2') { return $this->art($param); } elseif ($param['mid'] == '8') { return $this->actor($param); } elseif ($param['mid'] == '9') { return $this->role($param); } elseif ($param['mid'] == '11') { return $this->website($param); } } public function timing() { //当日视频分类ids $res = model('Vod')->updateToday('type'); $this->assign('vod_type_ids_today', $res['data']); return $this->fetch('admin@collect/timing'); } public function clearbind() { $param = input(); $config = []; if(!empty($param['cjflag'])){ $bind_list = config('bind'); foreach($bind_list as $k=>$v){ if(strpos($k,$param['cjflag'])===false){ $config[$k] = $v; } } } $res = mac_arr2file( APP_PATH .'extra/bind.php', $config); if($res===false){ return json(['code'=>0,'msg'=>lang('clear_err')]); } return json(['code'=>1,'msg'=>lang('clear_ok')]); } public function bind() { $param = input(); $ids = $param['ids']; $col = $param['col']; $val = $param['val']; if(!empty($col)){ $config = config('bind'); $config[$col] = intval($val); $data = []; $data['id'] = $col; $data['st'] = 0; $data['local_type_id'] = $val; $data['local_type_name'] = ''; if(intval($val)>0){ $data['st'] = 1; $type_list = model('Type')->getCache('type_list'); $data['local_type_name'] = $type_list[$val]['type_name']; } $res = mac_arr2file( APP_PATH .'extra/bind.php', $config); if($res===false){ return $this->error(lang('save_err')); } return $this->success(lang('save_ok'),null, $data); } return $this->error(lang('param_err')); } public function vod($param) { if($param['ac'] != 'list'){ $key = $GLOBALS['config']['app']['cache_flag']. '_'.'collect_break_vod'; Cache::set($key, url('collect/api').'?'. http_build_query($param) ); } $res = model('Collect')->vod($param); if($res['code']>1){ return $this->error($res['msg']); } if($param['ac'] == 'list'){ $bind_list = config('bind'); $type_list = model('Type')->getCache('type_list'); foreach($res['type'] as $k=>$v){ $key = $param['cjflag'] . '_' . $v['type_id']; $res['type'][$k]['isbind'] = 0; $local_id = intval($bind_list[$key]); if( $local_id>0 ){ $res['type'][$k]['isbind'] = 1; $res['type'][$k]['local_type_id'] = $local_id; $type_name = $type_list[$local_id]['type_name']; if(empty($type_name)){ $type_name = lang('unknown_type'); } $res['type'][$k]['local_type_name'] = $type_name; } } $this->assign('page',$res['page']); $this->assign('type',$res['type']); $this->assign('list',$res['data']); $this->assign('total',$res['page']['recordcount']); $this->assign('page',$res['page']['page']); $this->assign('limit',$res['page']['pagesize']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param',$param); $this->assign('param_str',http_build_query($param)) ; return $this->fetch('admin@collect/vod'); } $page_now = isset($param['page']) && strlen($param['page']) > 0 ? (int)$param['page'] : 1; mac_echo('' . $page_now . '/' . (int)$res['page']['pagecount'] . ' collecting..'); mac_echo(''); model('Collect')->vod_data($param,$res ); } public function art($param) { if($param['ac'] != 'list'){ $key = $GLOBALS['config']['app']['cache_flag']. '_'.'collect_break_art'; Cache::set($key, url('collect/api').'?'. http_build_query($param) ); } $res = model('Collect')->art($param); if($res['code']>1){ return $this->error($res['msg']); } if($param['ac'] == 'list'){ $bind_list = config('bind'); $type_list = model('Type')->getCache('type_list'); foreach($res['type'] as $k=>$v){ $key = $param['cjflag'] . '_' . $v['type_id']; $res['type'][$k]['isbind'] = 0; $local_id = intval($bind_list[$key]); if( $local_id>0 ){ $res['type'][$k]['isbind'] = 1; $res['type'][$k]['local_type_id'] = $local_id; $type_name = $type_list[$local_id]['type_name']; if(empty($type_name)){ $type_name = lang('unknown_type'); } $res['type'][$k]['local_type_name'] = $type_name; } } $this->assign('page',$res['page']); $this->assign('type',$res['type']); $this->assign('list',$res['data']); $this->assign('total',$res['page']['recordcount']); $this->assign('page',$res['page']['page']); $this->assign('limit',$res['page']['pagesize']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param',$param); $this->assign('param_str',http_build_query($param)) ; return $this->fetch('admin@collect/art'); } mac_echo(''); model('Collect')->art_data($param,$res ); } public function actor($param) { if($param['ac'] != 'list'){ $key = $GLOBALS['config']['app']['cache_flag']. '_'.'collect_break_actor'; Cache::set($key, url('collect/api').'?'. http_build_query($param) ); } $res = model('Collect')->actor($param); if($res['code']>1){ return $this->error($res['msg']); } if($param['ac'] == 'list'){ $bind_list = config('bind'); $type_list = model('Type')->getCache('type_list'); foreach($res['type'] as $k=>$v){ $key = $param['cjflag'] . '_' . $v['type_id']; $res['type'][$k]['isbind'] = 0; $local_id = intval($bind_list[$key]); if( $local_id>0 ){ $res['type'][$k]['isbind'] = 1; $res['type'][$k]['local_type_id'] = $local_id; $type_name = $type_list[$local_id]['type_name']; if(empty($type_name)){ $type_name = lang('unknown_type'); } $res['type'][$k]['local_type_name'] = $type_name; } } $this->assign('page',$res['page']); $this->assign('type',$res['type']); $this->assign('list',$res['data']); $this->assign('total',$res['page']['recordcount']); $this->assign('page',$res['page']['page']); $this->assign('limit',$res['page']['pagesize']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param',$param); $this->assign('param_str',http_build_query($param)) ; return $this->fetch('admin@collect/actor'); } mac_echo(''); model('Collect')->actor_data($param,$res ); } public function role($param) { if ($param['ac'] != 'list') { $key = $GLOBALS['config']['app']['cache_flag']. '_'.'collect_break_role'; Cache::set($key, url('collect/api') . '?' . http_build_query($param)); } $res = model('Collect')->role($param); if ($res['code'] > 1) { return $this->error($res['msg']); } if ($param['ac'] == 'list') { $bind_list = config('bind'); $type_list = model('Type')->getCache('type_list'); foreach ($res['type'] as $k => $v) { $key = $param['cjflag'] . '_' . $v['type_id']; $res['type'][$k]['isbind'] = 0; $local_id = intval($bind_list[$key]); if ($local_id > 0) { $res['type'][$k]['isbind'] = 1; $res['type'][$k]['local_type_id'] = $local_id; $type_name = $type_list[$local_id]['type_name']; if (empty($type_name)) { $type_name = lang('unknown_type'); } $res['type'][$k]['local_type_name'] = $type_name; } } $this->assign('page', $res['page']); $this->assign('type', $res['type']); $this->assign('list', $res['data']); $this->assign('total', $res['page']['recordcount']); $this->assign('page', $res['page']['page']); $this->assign('limit', $res['page']['pagesize']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param', $param); $this->assign('param_str', http_build_query($param)); return $this->fetch('admin@collect/role'); } mac_echo(''); model('Collect')->role_data($param,$res ); } public function website($param) { if ($param['ac'] != 'list') { $key = $GLOBALS['config']['app']['cache_flag']. '_'.'collect_break_website'; Cache::set($key, url('collect/api') . '?' . http_build_query($param)); } $res = model('Collect')->website($param); if ($res['code'] > 1) { return $this->error($res['msg']); } if ($param['ac'] == 'list') { $bind_list = config('bind'); $type_list = model('Type')->getCache('type_list'); foreach ($res['type'] as $k => $v) { $key = $param['cjflag'] . '_' . $v['type_id']; $res['type'][$k]['isbind'] = 0; $local_id = intval($bind_list[$key]); if ($local_id > 0) { $res['type'][$k]['isbind'] = 1; $res['type'][$k]['local_type_id'] = $local_id; $type_name = $type_list[$local_id]['type_name']; if (empty($type_name)) { $type_name = lang('unknown_type'); } $res['type'][$k]['local_type_name'] = $type_name; } } $this->assign('page', $res['page']); $this->assign('type', $res['type']); $this->assign('list', $res['data']); $this->assign('total', $res['page']['recordcount']); $this->assign('page', $res['page']['page']); $this->assign('limit', $res['page']['pagesize']); $param['page'] = '{page}'; $param['limit'] = '{limit}'; $this->assign('param', $param); $this->assign('param_str', http_build_query($param)); return $this->fetch('admin@collect/website'); } mac_echo(''); model('Collect')->website_data($param,$res ); } }