|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
if (!defined('BASEPATH'))
|
|
|
|
|
exit('No direct script access allowed');
|
|
|
|
|
|
|
|
|
|
class Information extends CI_Controller
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
function __construct()
|
|
|
|
|
{
|
|
|
|
|
parent::__construct();
|
|
|
|
|
$this->permission->is_admin();
|
|
|
|
|
//$this->output->enable_profiler(TRUE);
|
|
|
|
|
$this->load->model('Area_model');
|
|
|
|
|
$this->load->model('Information_model');
|
|
|
|
|
$this->load->model('InfoContents_model');
|
|
|
|
|
$this->load->model('InfoStructures_model');
|
|
|
|
|
$this->load->model('Landscape_model');
|
|
|
|
|
$this->load->model('Operator_model');
|
|
|
|
|
$this->load->model('Logs_model');
|
|
|
|
|
$this->load->model('InfoMetas_model');
|
|
|
|
|
$this->load->model('Infoauthors_model');
|
|
|
|
|
$this->load->model('InfoSMS_model');
|
|
|
|
|
$this->load->library('Amplib'); //加载AMP处理类
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function index()
|
|
|
|
|
{
|
|
|
|
|
echo '信息首页';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function add($is_parent_id)
|
|
|
|
|
{
|
|
|
|
|
//添加空内容.
|
|
|
|
|
$this->InfoContents_model->Add('', 'New Information', '', '', '', '', '', '', '', 0, 0, '', '', 0, 0, '', '', 0, '', 0, '', '');
|
|
|
|
|
$infocontent = $this->InfoContents_model->get_ic_contents($this->InfoContents_model->insert_id);
|
|
|
|
|
if (!empty($infocontent) && $this->InfoStructures_model->Add($is_parent_id, $this->InfoContents_model->insert_id)) {
|
|
|
|
|
$is_id = $this->InfoStructures_model->insert_id;
|
|
|
|
|
$InfoStructures = $this->InfoStructures_model->Detail($is_id);
|
|
|
|
|
$InfoStructures->is_id = $is_id;
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $InfoStructures);
|
|
|
|
|
$this->Logs_model->add($this->InfoStructures_model->insert_id);
|
|
|
|
|
} else {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('form_info_error'));
|
|
|
|
|
}
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return TRUE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//移动结构顺序
|
|
|
|
|
public function move()
|
|
|
|
|
{
|
|
|
|
|
//网站会提交一个同级节点id列表字符串,按照这个去排序
|
|
|
|
|
$parent_id = $this->input->post('pid');
|
|
|
|
|
$idsStr = $this->input->post('ids');
|
|
|
|
|
$idsArray = explode(',', $idsStr);
|
|
|
|
|
foreach ($idsArray as $key => $value) {
|
|
|
|
|
if ($value) {
|
|
|
|
|
//设置排序
|
|
|
|
|
$this->InfoStructures_model->set_sort($value, $key);
|
|
|
|
|
//设置path
|
|
|
|
|
$this->InfoStructures_model->set_path($parent_id, $value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $this->lang->line('structures_success_move'));
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
$this->Logs_model->move($idsStr);
|
|
|
|
|
return TRUE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//把文章移动到任意板块文章下
|
|
|
|
|
//is_id 信息结构ID,is_parent_id即将转移到的信息结构id
|
|
|
|
|
public function move_by_is_id()
|
|
|
|
|
{
|
|
|
|
|
$data = array();
|
|
|
|
|
$is_id = $this->input->post('is_id');
|
|
|
|
|
$is_parent_id = $this->input->post('is_parent_id');
|
|
|
|
|
if ($is_id == $is_parent_id || empty($is_id) || empty($is_parent_id)) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
//即将移动到文章结构信息
|
|
|
|
|
$Structure = $this->InfoStructures_model->Detail($is_id);
|
|
|
|
|
//目标文章结构信息
|
|
|
|
|
$Structure_parent = $this->InfoStructures_model->Detail($is_parent_id);
|
|
|
|
|
//只能移动到本站点下
|
|
|
|
|
if ($Structure->is_sitecode == $Structure_parent->is_sitecode) {
|
|
|
|
|
//不能搬迁到自己的子节点下
|
|
|
|
|
if (strpos(',' . $Structure_parent->is_path, ',' . $is_id . ',') == false) {
|
|
|
|
|
$this->InfoStructures_model->set_path($is_parent_id, $is_id);
|
|
|
|
|
}
|
|
|
|
|
//信息的区域类型和id也要修改 todo
|
|
|
|
|
}
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $this->lang->line('structures_success_move'));
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
$this->Logs_model->move($is_id);
|
|
|
|
|
return TRUE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function delete($is_id)
|
|
|
|
|
{
|
|
|
|
|
//查询结构信息
|
|
|
|
|
$Structure = $this->InfoStructures_model->Detail($is_id);
|
|
|
|
|
if ($Structure == FALSE) {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('structures_error_notfound'));
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if ($this->InfoStructures_model->HasChild($Structure->is_id)) {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('structures_error_haschild'));
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return false;
|
|
|
|
|
} else {
|
|
|
|
|
$info_detail = $this->Information_model->Detail($is_id);
|
|
|
|
|
|
|
|
|
|
//删除前,备份amp的meta标签-isid。
|
|
|
|
|
$meta_value = $this->InfoMetas_model->get($info_detail->ic_id, 'AMP_JSON');
|
|
|
|
|
if ($meta_value) {
|
|
|
|
|
$this->Logs_model->backup_meta($info_detail->ic_id, $meta_value, 'AMP_JSON_'.$is_id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->Logs_model->delete($is_id, $info_detail->ic_content);
|
|
|
|
|
if (!empty($info_detail->ic_summary)) {
|
|
|
|
|
$this->Logs_model->backup_summary($is_id, $info_detail->ic_summary);
|
|
|
|
|
}
|
|
|
|
|
$this->InfoStructures_model->Delete($Structure->is_id);
|
|
|
|
|
$this->InfoContents_model->Delete($Structure->is_ic_id);
|
|
|
|
|
//如果是已经发布的页面,删除静态文件
|
|
|
|
|
if ($info_detail->ic_status == 1) {
|
|
|
|
|
$this->update_cache($info_detail->ic_url, true);
|
|
|
|
|
}
|
|
|
|
|
//删除成功后返回一个上级链接给用户
|
|
|
|
|
$drumpurl = site_url('information/edit/' . $Structure->is_parent_id);
|
|
|
|
|
if ($Structure->is_parent_id == 0)
|
|
|
|
|
$drumpurl = site_url('/');
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $drumpurl);
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//移动优先的编辑
|
|
|
|
|
public function edit_mobile($is_id){
|
|
|
|
|
//查询结构信息
|
|
|
|
|
$Structure = $this->InfoStructures_model->Detail($is_id);
|
|
|
|
|
if ($Structure == FALSE) {
|
|
|
|
|
show_404();
|
|
|
|
|
}
|
|
|
|
|
//查询结构根节点
|
|
|
|
|
$rootStructure = $this->InfoStructures_model->GetParent($Structure->is_path, 1);
|
|
|
|
|
//没有根节点就从它本身开始查询
|
|
|
|
|
if ($rootStructure == false) {
|
|
|
|
|
$rootStructure_ID = $Structure->is_id;
|
|
|
|
|
} else {
|
|
|
|
|
$rootStructure_ID = $rootStructure->is_id;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询结构列表信息
|
|
|
|
|
$data['informationList'] = $this->Information_model->StructureList($rootStructure_ID);
|
|
|
|
|
|
|
|
|
|
//信息内容
|
|
|
|
|
$data['information'] = $this->Information_model->Detail($is_id);
|
|
|
|
|
|
|
|
|
|
$this->load->view('bootstrap3/header', $data);
|
|
|
|
|
$this->load->view('mobile_first/editor');
|
|
|
|
|
$this->load->view('bootstrap3/footer');
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function edit($is_id)
|
|
|
|
|
{
|
|
|
|
|
set_time_limit(30);
|
|
|
|
|
//$this->output->enable_profiler(true);
|
|
|
|
|
//查询结构信息
|
|
|
|
|
$Structure = $this->InfoStructures_model->Detail($is_id);
|
|
|
|
|
if ($Structure == FALSE) {
|
|
|
|
|
show_404();
|
|
|
|
|
}
|
|
|
|
|
//查询结构根节点
|
|
|
|
|
$rootStructure = $this->InfoStructures_model->GetParent($Structure->is_path, 1);
|
|
|
|
|
//没有根节点就从它本身开始查询
|
|
|
|
|
if ($rootStructure == false) {
|
|
|
|
|
$rootStructure_ID = $Structure->is_id;
|
|
|
|
|
} else {
|
|
|
|
|
$rootStructure_ID = $rootStructure->is_id;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询结构列表信息
|
|
|
|
|
$data['informationList'] = $this->Information_model->StructureList($rootStructure_ID);
|
|
|
|
|
|
|
|
|
|
//增加一项,属于这个区域,但是结构数据层次不准确的也要列出来
|
|
|
|
|
//todo:
|
|
|
|
|
//信息内容
|
|
|
|
|
$data['information'] = $this->Information_model->Detail($is_id);
|
|
|
|
|
|
|
|
|
|
//检查该信息是否已收录
|
|
|
|
|
$data['embody'] = 1;
|
|
|
|
|
if (isset($data['information']->ic_id)) {
|
|
|
|
|
$embody = $this->InfoMetas_model->get($data['information']->ic_id, 'meta_embody');
|
|
|
|
|
if ($embody && $embody != '1') {
|
|
|
|
|
$data['embody'] = 0;
|
|
|
|
|
}
|
|
|
|
|
//设置该信息所有未读消息为已读
|
|
|
|
|
$this->InfoSMS_model->readed_for_info($data['information']->ic_id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//主节点信息
|
|
|
|
|
$data['rootInformation'] = $this->Information_model->Detail($rootStructure_ID);
|
|
|
|
|
//获取未绑定的景点,只有城市有,无视其它区域类型
|
|
|
|
|
$data['unlink_landscape_list'] = array();
|
|
|
|
|
|
|
|
|
|
//可选的展示模板
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('vac', 'vc', 'jp', 'ru', 'it'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_i'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('ah'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_ah'));
|
|
|
|
|
}
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('pgr'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_pgr'));
|
|
|
|
|
}
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('ts'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_ts'));
|
|
|
|
|
}
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('cht'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_cht'));
|
|
|
|
|
}
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('gm'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_gm'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ($Structure->is_sitecode == 'ct') {
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_ct');
|
|
|
|
|
} elseif ($Structure->is_sitecode == 'ah') {
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_ah');
|
|
|
|
|
} else {
|
|
|
|
|
switch ($data['rootInformation']->ic_ht_area_type) {
|
|
|
|
|
case 'c': //城市
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_city');
|
|
|
|
|
$data['unlink_landscape_list'] = $this->Information_model->get_unlink_landscape_list($data['rootInformation']->ic_ht_area_id);
|
|
|
|
|
break;
|
|
|
|
|
case 'p': //省份
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_province');
|
|
|
|
|
break;
|
|
|
|
|
case 'n': //国家
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_country');
|
|
|
|
|
break;
|
|
|
|
|
case 't': //特殊区域
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_special');
|
|
|
|
|
break;
|
|
|
|
|
case 'e': //大洲
|
|
|
|
|
$data['infoTypeList'] = array();
|
|
|
|
|
break;
|
|
|
|
|
case 'z': //公民游
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_citizen');
|
|
|
|
|
break;
|
|
|
|
|
case 'v': //视频
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_video');
|
|
|
|
|
break;
|
|
|
|
|
case 'f': //节庆
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_festival');
|
|
|
|
|
break;
|
|
|
|
|
case 'pd': //产品管理
|
|
|
|
|
$data['infoTypeList'] = $this->config->item('InfoType_product');
|
|
|
|
|
//LMR 2016-7-14
|
|
|
|
|
if (in_array($this->config->item('site_code'), array('vac', 'vc', 'jp', 'ru', 'it'))) {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_product_i'));
|
|
|
|
|
} else {
|
|
|
|
|
$this->config->set_item('templates', $this->config->item('templates_product'));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
$data['infoTypeList'] = array('不设置' => 'none', '首页' => 'root');
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$data['templateList'] = $this->config->item('templates');
|
|
|
|
|
//翰特产品类型
|
|
|
|
|
$data['productTypeList'] = $this->config->item('ProductType_HT');
|
|
|
|
|
//获取绑定的产品名称
|
|
|
|
|
switch ($data['information']->ic_ht_product_type) {
|
|
|
|
|
case 't':
|
|
|
|
|
$data['product_title'] = $this->Landscape_model->get_landscape_title($data['information']->ic_ht_product_id);
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
$data['product_title'] = '';
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
//获取最后更新者信息
|
|
|
|
|
$data['last_edit_info'] = $this->Logs_model->get_last_edit($is_id);
|
|
|
|
|
|
|
|
|
|
//编辑列表
|
|
|
|
|
$sites = $this->config->item('site');
|
|
|
|
|
$data['editor_list'] = $this->Operator_model->get_site_user($this->config->item('site_code'));
|
|
|
|
|
//获取作者列表
|
|
|
|
|
$data['author_list'] = $this->Infoauthors_model->get_site_user($this->config->item('site_code'));
|
|
|
|
|
|
|
|
|
|
//获取备份信息记录
|
|
|
|
|
$data['content_backup_list'] = $this->Logs_model->get_backup_list($is_id);
|
|
|
|
|
|
|
|
|
|
//所属导航栏目
|
|
|
|
|
$data['setting_website_nav'] = $this->InfoMetas_model->get_list(0, 'setting_website_nav_' . strtolower($this->config->item('site_code')));
|
|
|
|
|
|
|
|
|
|
$data['my_tags'] = array();
|
|
|
|
|
$data['all_tags'] = array();
|
|
|
|
|
if (is_series_site()) {
|
|
|
|
|
//信息标签
|
|
|
|
|
//$this->InfoTags_model->ic_id = null;
|
|
|
|
|
//$data['all_tags'] = $this->InfoTags_model->list_tag();
|
|
|
|
|
//$this->InfoTags_model->ic_id = $data['information']->ic_id;
|
|
|
|
|
//$data['my_tags'] = $this->InfoTags_model->list_tag();
|
|
|
|
|
//差集
|
|
|
|
|
foreach ($data['all_tags'] as &$it) {
|
|
|
|
|
foreach ($data['my_tags'] as $it2) {
|
|
|
|
|
if ($it->it_id == $it2->icit_it_id) {
|
|
|
|
|
$it = null;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$data['all_tags'] = array_filter($data['all_tags']);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//获取移动优先的模板,如果有的话
|
|
|
|
|
$mobile_first_template_path='mobile_first/'.$this->config->item('site_code');
|
|
|
|
|
if(is_file(APPPATH.'views/'.$mobile_first_template_path.EXT)){
|
|
|
|
|
$data['mobile_first_template']=$this->load->view($mobile_first_template_path, '', TRUE);
|
|
|
|
|
}else{
|
|
|
|
|
$data['mobile_first_template']='没有找到移动模板';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->load->view('bootstrap3/header', $data);
|
|
|
|
|
$this->load->view('bootstrap3/information_edit');
|
|
|
|
|
$this->load->view('bootstrap3/footer');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
public function redirect($jumpUrl){
|
|
|
|
|
|
|
|
|
|
header('HTTP/1.1 301 Moved Permanently');
|
|
|
|
|
|
|
|
|
|
header($jumpUrl);// 301 跳转到设置的 url
|
|
|
|
|
|
|
|
|
|
exit();
|
|
|
|
|
|
|
|
|
|
} */
|
|
|
|
|
public function test_proxy($url = false)
|
|
|
|
|
{
|
|
|
|
|
$curl = curl_init();
|
|
|
|
|
//curl_setopt($curl,CURLOPT_URL, "http://graph.facebook.com/?id=http://www.chinahighlights.com");
|
|
|
|
|
//curl_setopt($curl,CURLOPT_URL, 'http://graph.facebook.com/?id=http://www.mybeijingchina.com/beijing-attractions/beihai-park/');
|
|
|
|
|
curl_setopt($curl, CURLOPT_URL, $url);
|
|
|
|
|
curl_setopt($curl, CURLOPT_HEADER, 0);
|
|
|
|
|
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
|
|
|
|
|
curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1);
|
|
|
|
|
curl_setopt($curl, CURLOPT_PROXY, "120.24.227.23:33333");
|
|
|
|
|
$request = curl_exec($curl);
|
|
|
|
|
curl_close($curl);
|
|
|
|
|
return $request;
|
|
|
|
|
//echo $request;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 分享数 lzq
|
|
|
|
|
public function statistical_sharing()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
//$info_ic = $this->Information_model->get_ic_url_by_code('mbj');
|
|
|
|
|
$info_ic = $this->Information_model->get_ic_url();
|
|
|
|
|
$ic_id = $info_ic->ic_id;
|
|
|
|
|
$ic_url = $info_ic->ic_url;
|
|
|
|
|
$ic_sitecode = $info_ic->ic_sitecode;
|
|
|
|
|
$site = $this->config->item('site');
|
|
|
|
|
|
|
|
|
|
if (!empty($ic_url)) {
|
|
|
|
|
|
|
|
|
|
$result = $this->Information_model->update_ic_date_by_code($ic_id);
|
|
|
|
|
//var_dump($site['mbj']['site_url']);
|
|
|
|
|
//$wz_url = 'http://graph.facebook.com/?id='.$site['mbj']['site_url'].$ic_url;
|
|
|
|
|
$complete_url = 'http://graph.facebook.com/?id=' . $site[$ic_sitecode]['site_url'] . $ic_url;
|
|
|
|
|
//echo $wz_url;
|
|
|
|
|
$api_return = $this->test_proxy($complete_url);
|
|
|
|
|
$api_return = json_decode($api_return);
|
|
|
|
|
if (empty($api_return->shares)) {
|
|
|
|
|
var_dump($api_return);
|
|
|
|
|
$shares = 0;
|
|
|
|
|
} else {
|
|
|
|
|
var_dump($api_return);
|
|
|
|
|
$shares = $api_return->shares;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//echo $asd->shares;
|
|
|
|
|
$result2 = $this->Information_model->insert_url_to_csi($info_ic->ic_url, $ic_id, $info_ic->ic_sitecode, $shares);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//$sstt = $this->config->item('site');
|
|
|
|
|
//foreach($infolist as $k=>$v){
|
|
|
|
|
// $aabb[] = $v->ic_sitecode;
|
|
|
|
|
//}
|
|
|
|
|
//$url_count = $this->Information_model->get_count_by_code('mbj');
|
|
|
|
|
//$surl = site_url('/information/fengxiangshu');
|
|
|
|
|
//redirect($surl,'refresh',301);
|
|
|
|
|
|
|
|
|
|
$this->load->view('bootstrap3/header');
|
|
|
|
|
$this->load->view('bootstrap3/statistical_sharing');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function edit_save()
|
|
|
|
|
{
|
|
|
|
|
header('Cache-Control: no-cache');
|
|
|
|
|
$information = $this->Information_model->Detail($this->input->post('is_id'));
|
|
|
|
|
if ($information === false) {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('structures_error_notfound'));
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->form_validation->set_rules('ic_url_title', 'lang:ic_url_title', 'required');
|
|
|
|
|
$this->form_validation->set_rules('ic_title', 'lang:ic_title', 'required');
|
|
|
|
|
$this->form_validation->set_rules('ic_author', 'lang:ic_author', 'required');
|
|
|
|
|
$this->form_validation->set_rules('ic_url', 'lang:ic_url', 'callback_ic_url_check');
|
|
|
|
|
//这里比较特别,检测两次ic_url,ci会冲掉第一个ic_url的规则,所以需要在下面也加上callback_ic_url_check
|
|
|
|
|
$this->form_validation->set_rules('ic_url', 'lang:ic_url_format', 'callback_ic_url_check|callback_ic_url_format');
|
|
|
|
|
|
|
|
|
|
if ($this->input->post('ignore_seo_check') === false) {
|
|
|
|
|
$this->form_validation->set_rules('ic_seo_title', 'lang:ic_seo_title', 'required');
|
|
|
|
|
$this->form_validation->set_rules('ic_seo_description', 'lang:ic_seo_description', 'required|max_length[250]');
|
|
|
|
|
}
|
|
|
|
|
if ($this->form_validation->run() == FALSE) {
|
|
|
|
|
$data = array();
|
|
|
|
|
foreach ($this->form_validation->_error_array as $key => $value) {
|
|
|
|
|
$data[] = array('name' => $key, 'value' => $value);
|
|
|
|
|
}
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
} else {
|
|
|
|
|
$this->InfoContents_model->Update($information->is_ic_id, $this->input->post('ic_url'), $this->input->post('ic_url_title'), $this->input->post('ic_type'), $this->input->post('ic_title'), $this->input->post('ic_content'), $this->input->post('ic_summary'), $this->input->post('ic_seo_title'), $this->input->post('ic_seo_description'), $this->input->post('ic_seo_keywords'), $this->input->post('ic_show_bread_crumbs'), $this->input->post('ic_status'), $this->input->post('ic_template'), $this->input->post('ic_photo'), $this->input->post('ic_photo_width'), $this->input->post('ic_photo_height'), $this->input->post('ic_recommend_tours'), $this->input->post('ic_recommend_packages'), $this->input->post('ic_ht_area_id'), $this->input->post('ic_ht_area_type'), $this->input->post('ic_ht_product_id'), $this->input->post('ic_ht_product_type'), $this->input->post('ic_author'));
|
|
|
|
|
|
|
|
|
|
//AMP更新和生成 beign
|
|
|
|
|
$auto_update_amp = $this->input->get_post('auto_update_amp');
|
|
|
|
|
if (!empty($auto_update_amp) && $auto_update_amp == 'true' && $this->input->post('ic_status') == 1) {
|
|
|
|
|
$amp_result = $this->amplib->auto_create($information->ic_id);
|
|
|
|
|
if (!empty($amp_result)) {
|
|
|
|
|
$amp_result = json_decode($amp_result);
|
|
|
|
|
if ($amp_result->result == 'ok') {
|
|
|
|
|
$amp_save_result = $this->amplib->edit_save($information->ic_id, $amp_result->data->amp, '1');
|
|
|
|
|
if (!empty($amp_save_result)) {
|
|
|
|
|
$amp_save_result = json_decode($amp_save_result);
|
|
|
|
|
if ($amp_save_result->name == 'no') {
|
|
|
|
|
echo json_encode(array('name' => 'no', 'value' => 'AMP转换语法错误,请重新进入AMP编辑器检查'));
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//AMP更新和生成 end
|
|
|
|
|
//为新闻添加默认发布时间
|
|
|
|
|
$meta_news_createdate = get_meta($information->ic_id, 'meta_news_createdate');
|
|
|
|
|
if (empty($meta_news_createdate)) {
|
|
|
|
|
add_meta($information->ic_id, 'meta_news_createdate', date('m/d/Y', time()));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//如果URL有修改也删除静态文件
|
|
|
|
|
if ($this->input->post('ic_url') != $information->ic_url) {
|
|
|
|
|
$this->update_cache($information->ic_url, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//如果信息不发布则删除静态文件
|
|
|
|
|
if ($this->input->post('ic_status') == '0') {
|
|
|
|
|
$this->update_cache($this->input->post('ic_url'), true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//德语站FAQ版块需要删除原来的文件才能更新静态
|
|
|
|
|
$site_code = $this->config->item('site_code');
|
|
|
|
|
$ic_url = $this->input->post('ic_url');
|
|
|
|
|
$auto_update_cache = $this->input->get_post('auto_update_cache_checkbox');
|
|
|
|
|
|
|
|
|
|
if (strcasecmp($site_code, "gm") == 0 && !empty($auto_update_cache)) {
|
|
|
|
|
$update_info_log = $this->update_cache($ic_url, true);
|
|
|
|
|
}else if (strcasecmp($site_code, "ch") == 0 && !empty($auto_update_cache)) {
|
|
|
|
|
//读取模板生成PC和移动优先文件
|
|
|
|
|
$this->make_mobile_html();
|
|
|
|
|
} else if (strcasecmp($site_code, "cht") == 0 && !empty($auto_update_cache)) {
|
|
|
|
|
$update_info_log = $this->update_cache($ic_url);
|
|
|
|
|
} else if (strcasecmp($site_code, "ah") == 0 && !empty($auto_update_cache)) {
|
|
|
|
|
$update_info_log = $this->update_cache($ic_url);
|
|
|
|
|
} else if (strcasecmp($site_code, "cht") != 0 && strcasecmp($site_code, "gm") != 0 && strcasecmp($site_code, "ah") != 0) { //非cht站点并且非GM并且非AH
|
|
|
|
|
$update_info_log = $this->update_cache($ic_url);
|
|
|
|
|
}else if (strcasecmp($site_code, "ct") == 0 && !empty($auto_update_cache)) {
|
|
|
|
|
$update_info_log = $this->update_cache($ic_url);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (empty($update_info_log) || count($update_info_log) == 0 || !isset($update_info_log[0]['url'])) {
|
|
|
|
|
$update_info_log = 'not found update info log';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $this->lang->line('form_info_success'), 'update_info_log' => $update_info_log);
|
|
|
|
|
$this->Logs_model->backup($information->is_id, $this->input->post('ic_content'));
|
|
|
|
|
$this->Logs_model->backup_summary($information->is_id, $this->input->post('ic_summary'));
|
|
|
|
|
|
|
|
|
|
//作者个人页面更新
|
|
|
|
|
if ($this->config->item('site_code') == 'cht') {
|
|
|
|
|
$author_pages = array(
|
|
|
|
|
'zzy' => 'http://www.chinahighlights.com/author/ruru-zhou/',
|
|
|
|
|
'Gavin' => 'http://www.chinahighlights.com/author/gavin-van-hinsbergh/',
|
|
|
|
|
'WBL' => 'http://www.chinahighlights.com/author/annie-wu/',
|
|
|
|
|
'PKL' => 'http://www.chinahighlights.com/author/kelly/',
|
|
|
|
|
'210000017' => 'http://www.chinahighlights.com/author/lynne-buddin/',
|
|
|
|
|
'202000027' => 'http://www.chinahighlights.com/author/margaux/',
|
|
|
|
|
'202000019' => 'http://www.chinahighlights.com/author/anusuya-mitra/',
|
|
|
|
|
'210000018' => 'http://www.chinahighlights.com/author/connie/',
|
|
|
|
|
'210000016' => 'http://www.chinahighlights.com/author/ben/',
|
|
|
|
|
'200000008' => 'http://www.chinahighlights.com/author/pete-marchetto/',
|
|
|
|
|
'210000019' => 'http://www.chinahighlights.com/author/oscar/',
|
|
|
|
|
'210000021' => 'http://www.chinahighlights.com/author/matthew/',
|
|
|
|
|
'200000013' => 'http://www.chinahighlights.com/author/kit-onslow-smith/',
|
|
|
|
|
'202000018' => 'http://www.chinahighlights.com/author/klaus-capra/',
|
|
|
|
|
'202000017' => 'http://www.chinahighlights.com/author/christy-campbell/'
|
|
|
|
|
);
|
|
|
|
|
$key = $this->input->post('ic_author');
|
|
|
|
|
if (isset($author_pages[$key])) {
|
|
|
|
|
$this->update_cache($author_pages[$key]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//URL不重复检查
|
|
|
|
|
function ic_url_check()
|
|
|
|
|
{
|
|
|
|
|
if ($this->input->post('ignore_url_check')) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$url = $this->input->post('ic_url');
|
|
|
|
|
if ($url === '') {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
$is_id = $this->input->post('is_id');
|
|
|
|
|
return $this->Information_model->URLcheck($is_id, $url);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//URL格式检查,不能包含大小写、空格等特殊字符
|
|
|
|
|
function ic_url_format($url)
|
|
|
|
|
{
|
|
|
|
|
if ($url != mb_strtolower($url) || strpos($url, ' ') !== false || strpos($url, '--') !== false || strpos($url, ')') !== false || strpos($url, '(') !== false || strpos($url, '//') !== false || strpos($url, '\\') !== false) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function make_mobile_html(){
|
|
|
|
|
//获取移动优先的模板,如果有的话
|
|
|
|
|
$mobile_first_template_path='mobile_first/'.$this->config->item('site_code');
|
|
|
|
|
if(is_file(APPPATH.'views/'.$mobile_first_template_path.EXT)){
|
|
|
|
|
$mobile_template=$this->load->view($mobile_first_template_path, '', TRUE);
|
|
|
|
|
}else{
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
$mobile_template=str_replace('<!--@TITLE@-->', $this->input->post('ic_seo_title'), $mobile_template);
|
|
|
|
|
$mobile_template=str_replace('<!--@DESCRIPTION@-->', $this->input->post('ic_seo_description'), $mobile_template);
|
|
|
|
|
$mobile_template=str_replace('<!--@KEYWORDS@-->', $this->input->post('ic_seo_keywords'), $mobile_template);
|
|
|
|
|
$mobile_template=str_replace('<!--@CANONICAL@-->', $this->input->post('site_url').$this->input->post('ic_url'), $mobile_template);
|
|
|
|
|
$mobile_template=str_replace('<!--@HEAD_1@-->', $this->input->post('ic_title'), $mobile_template);
|
|
|
|
|
$mobile_template=str_replace('<!--@CUSTOM-CONENT@-->', $this->input->post('ic_content'), $mobile_template);
|
|
|
|
|
|
|
|
|
|
// /travelguide/chinese-zodiac/monthly-fortune-for-dog.htm
|
|
|
|
|
$mobile_html=$this->config->item('cache')[$this->config->item('site_code')]['cache_path'].$this->input->post('ic_url');
|
|
|
|
|
$mobile_html=str_replace("\\", "/", $mobile_html);
|
|
|
|
|
if(substr($mobile_html, -1, 1)== '/'){
|
|
|
|
|
$mobile_html=$mobile_html.'index.htm';
|
|
|
|
|
}
|
|
|
|
|
$mobile_html.='-mobile.htm';
|
|
|
|
|
create_folder_by_path(dirname($mobile_html));
|
|
|
|
|
file_put_contents($mobile_html, $mobile_template, LOCK_EX);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//更新静态文件
|
|
|
|
|
//不用参数提交的原因是可能url带有特殊字符,CI会报错
|
|
|
|
|
public function update_cache($static_html_url = false, $delete_only = false)
|
|
|
|
|
{
|
|
|
|
|
$url = !empty($static_html_url) ? $static_html_url : $this->input->post('cache_url');
|
|
|
|
|
$url = str_replace($this->config->item('site_url'), '', $url);
|
|
|
|
|
$original_url = $url; //原始链接
|
|
|
|
|
$delete_only = !empty($delete_only) ? $delete_only : $this->input->get_post('delete_only');
|
|
|
|
|
|
|
|
|
|
switch ($this->config->item('site_code')) {
|
|
|
|
|
case 'cht':
|
|
|
|
|
$search_list = $this->Information_model->search_url($url);
|
|
|
|
|
$amp_request = FALSE;
|
|
|
|
|
foreach ($search_list as $key => $req_url) {
|
|
|
|
|
$meta_amp_status = get_meta($req_url->ic_id, 'AMP_STATUS');
|
|
|
|
|
if ($meta_amp_status) {
|
|
|
|
|
$amp_request = TRUE;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if ($amp_request) {
|
|
|
|
|
$url = 'http://169.54.167.189:22224/ampreq' . $url;
|
|
|
|
|
} else {
|
|
|
|
|
$url = 'http://169.54.167.189:22224' . $url;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 'ah':
|
|
|
|
|
if ($delete_only === true) {
|
|
|
|
|
$url = 'https://www.asiahighlights.com/index.php/information/delete_cache_8X913mksJ/?static_html_url=' . $url;
|
|
|
|
|
} else { // static_html_optimize=comeon 启用静态化压缩和js、css延迟加载
|
|
|
|
|
$url = 'https://www.asiahighlights.com/index.php/information/detail/?static_html_url=' . $url . '&static_html_optimize=comeon';
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'gm':
|
|
|
|
|
//GET_HTTP("http://148.251.35.42:3300/create-cache/?url=" . urlencode($url)); //请求nodejs静态化更新页面,删除缓存,因为部分页面没有进入信息平台
|
|
|
|
|
//if ($delete_only) {
|
|
|
|
|
// $url = "http://144.76.185.44:8029/gm.php/information/delete_cache_23Xd913mddkgssODII?static_html_url=" . urlencode($url);
|
|
|
|
|
//} else {
|
|
|
|
|
//先删除再生成,部分页面没有在信息平台中
|
|
|
|
|
GET_HTTP("http://144.76.185.44:8029/gm.php/information/delete_cache_23Xd913mddkgssODII?static_html_url=" . urlencode($url));
|
|
|
|
|
$url = "http://144.76.185.44:8029/gm.php/information/detail/?static_html_url=" . $url;
|
|
|
|
|
//}
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'vac': //国际站
|
|
|
|
|
case 'vc':
|
|
|
|
|
case 'it':
|
|
|
|
|
case 'ru':
|
|
|
|
|
case 'jp':
|
|
|
|
|
$information = $this->Information_model->Detail($url);
|
|
|
|
|
if ($delete_only || !$information || $information->ic_ht_area_type === 'q') {
|
|
|
|
|
//只删除操作,在url修改和不发布信息的时候使用
|
|
|
|
|
$url = $this->config->item('site_url') . '/index.php/welcome/update_cache/delete_only?static_html_url=' . $url;
|
|
|
|
|
} else {
|
|
|
|
|
$tmp = $url;
|
|
|
|
|
//判断是否是更新信息
|
|
|
|
|
// 产品页面不能生成静态页面,比如/beijing/hotel/只是为了在导航显示一个链接,如果生成了静态页面,网前只会显示一个空白页面了
|
|
|
|
|
if (!empty($information->ic_content)) {
|
|
|
|
|
$url = $this->config->item('site_url') . '/index.php/information/detail/?static_html_url=' . $url;
|
|
|
|
|
} else {
|
|
|
|
|
//先尝试删除静态文件。
|
|
|
|
|
//$try_del = $this->config->item('site_url') . '/index.php/welcome/update_cache/delete_only?static_html_url=' . $url;
|
|
|
|
|
//file_get_contents($try_del);
|
|
|
|
|
$url = $this->config->item('site_url') . '/index.php/welcome/update_cache/?static_html_url=' . $url;
|
|
|
|
|
}
|
|
|
|
|
if (isset($information->ic_type) && $information->ic_type == 'product') {
|
|
|
|
|
$url = $this->config->item('site_url') . '/index.php/welcome/update_cache/?static_html_url=' . $tmp;
|
|
|
|
|
}
|
|
|
|
|
//int return direct
|
|
|
|
|
$cache_url = $this->input->post('cache_url');
|
|
|
|
|
if ($url && !$cache_url) {
|
|
|
|
|
/*
|
|
|
|
|
ignore_user_abort(true);
|
|
|
|
|
$ch = curl_init();
|
|
|
|
|
curl_setopt($ch, CURLOPT_URL, $url);
|
|
|
|
|
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
|
|
|
|
|
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
|
|
|
|
|
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 从证书中检查SSL加密算法是否存在
|
|
|
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //禁止直接显示获取的内容
|
|
|
|
|
curl_setopt($ch, CURLOPT_HEADER, 0); //不需要HEAD
|
|
|
|
|
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
|
|
|
|
|
curl_setopt($ch, CURLOPT_NOBODY, 1);
|
|
|
|
|
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
|
|
|
|
curl_exec($ch);
|
|
|
|
|
curl_close($ch);
|
|
|
|
|
*/
|
|
|
|
|
$data['async_update'] = $url;
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => '信息保存成功,请在8秒后检查更新页面。', 'url' => $url);
|
|
|
|
|
//如果是外部调用就返回结果,内部就不返回了
|
|
|
|
|
if ($cache_url) {
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
}
|
|
|
|
|
return $data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'ct': //子站点使用
|
|
|
|
|
$url = 'http://50.97.246.187:22223' . $url;
|
|
|
|
|
break;
|
|
|
|
|
case 'sht':
|
|
|
|
|
case 'gl':
|
|
|
|
|
case 'mbj':
|
|
|
|
|
case 'yz':
|
|
|
|
|
$url = $this->config->item('site_url') . $url . '@cache@refresh';
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return false;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$content = GET_HTTP($url);
|
|
|
|
|
if ($content === false) {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => sprintf($this->lang->line('update_cache_failed'), $url));
|
|
|
|
|
} else {
|
|
|
|
|
//手动更新的话,接着更新CDN缓存
|
|
|
|
|
$msg = $this->lang->line('update_cache_success');
|
|
|
|
|
|
|
|
|
|
if ($this->input->post('updatecdn') == 1) {
|
|
|
|
|
$notice = $this->update_cdn();
|
|
|
|
|
if ($notice == 200) {
|
|
|
|
|
$msg .= $this->lang->line('update_cdn_success');
|
|
|
|
|
} else {
|
|
|
|
|
$msg .= $this->lang->line('update_cdn_failed') . '<br>' . $notice;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $msg, 'url' => $url);
|
|
|
|
|
}
|
|
|
|
|
//如果是外部调用就返回结果,内部就不返回了
|
|
|
|
|
if ($this->input->post('cache_url')) {
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
}
|
|
|
|
|
return $data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//更新CDN缓存
|
|
|
|
|
public function update_cdn($static_html_url = false)
|
|
|
|
|
{
|
|
|
|
|
$flag = false; //false:不更新,true:更新
|
|
|
|
|
$update_site = array('jp', 'ru'); //需要更新CDN的站点
|
|
|
|
|
//需要更新的url
|
|
|
|
|
$url = $static_html_url;
|
|
|
|
|
if (empty($url))
|
|
|
|
|
$url = $this->input->post('cache_url');
|
|
|
|
|
|
|
|
|
|
//如果传递进来的url是带有域名,则对域名进行判断
|
|
|
|
|
$tempu = parse_url($url);
|
|
|
|
|
if (isset($tempu['host'])) {
|
|
|
|
|
$url = isset($tempu['path']) ? $tempu['path'] : '/';
|
|
|
|
|
$pad = $tempu['host'];
|
|
|
|
|
$flag = true;
|
|
|
|
|
}
|
|
|
|
|
//如果传递进来的url没有域名,则使用当前站点的信息进行判断
|
|
|
|
|
else {
|
|
|
|
|
$url = str_replace($this->config->item('site_url'), '', $url);
|
|
|
|
|
$pad = str_replace('http://', '', $this->config->item('site_url'));
|
|
|
|
|
if (in_array($this->config->item('site_code'), $update_site))
|
|
|
|
|
$flag = TRUE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//默认更新成功,如果不成功,则返回错误提示信息
|
|
|
|
|
$notice = 200;
|
|
|
|
|
if ($flag) {
|
|
|
|
|
$result = GET_HTTP('https://openapi.us.cdnetworks.com/purge/rest/doPurge?user=ycc@chinahighlights.com&pass=cXi2UbsTrw9Urv@&pad=' . $pad . '&type=item&path=' . $url . '&output=json');
|
|
|
|
|
$result = json_decode($result, true);
|
|
|
|
|
if ($result['resultCode'] != 200)
|
|
|
|
|
$notice = $result['notice'] . $result['details'];
|
|
|
|
|
}
|
|
|
|
|
return $notice;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//获取产品信息,提供给用户选择进行绑定
|
|
|
|
|
function get_products()
|
|
|
|
|
{
|
|
|
|
|
$HT_productType = $this->input->post('product_type');
|
|
|
|
|
$HT_productName = $this->input->post('product_name');
|
|
|
|
|
//产品类型
|
|
|
|
|
switch ($HT_productType) {
|
|
|
|
|
case 't':
|
|
|
|
|
$data['productList'] = $this->Landscape_model->search_list($HT_productName);
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
$data['productList'] = array();
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
$data['product_type'] = $HT_productType;
|
|
|
|
|
$product_list_page = $this->load->view('bootstrap/information_select_product', $data, true);
|
|
|
|
|
$data = array();
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $product_list_page);
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//显示备份的内容
|
|
|
|
|
function backup_content($log_id)
|
|
|
|
|
{
|
|
|
|
|
$data['log_info'] = $this->Logs_model->read($log_id);
|
|
|
|
|
if($data['log_info']->log_action == 'backup_amp'){
|
|
|
|
|
$data['log_list'] = $this->Logs_model->get_all_backup_list($data['log_info']->log_res_id,true);
|
|
|
|
|
}else{
|
|
|
|
|
$data['log_list'] = $this->Logs_model->get_all_backup_list($data['log_info']->log_res_id);
|
|
|
|
|
}
|
|
|
|
|
$this->load->view('bootstrap/header', $data);
|
|
|
|
|
$this->load->view('bootstrap/information_backup_content');
|
|
|
|
|
$this->load->view('bootstrap/footer');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//保存自定义配置
|
|
|
|
|
function save_meta()
|
|
|
|
|
{
|
|
|
|
|
$im_ic_id = $this->input->post('im_ic_id');
|
|
|
|
|
$im_key = $this->input->post('im_key');
|
|
|
|
|
$im_value = $this->input->post('im_value');
|
|
|
|
|
if ($im_ic_id && $im_key && $im_value !== false) {
|
|
|
|
|
$meta = $this->InfoMetas_model->get($im_ic_id, $im_key);
|
|
|
|
|
if ($meta === false) {
|
|
|
|
|
$this->InfoMetas_model->add($im_ic_id, $im_key, $im_value);
|
|
|
|
|
} else {
|
|
|
|
|
$this->InfoMetas_model->update($im_ic_id, $im_key, $im_value);
|
|
|
|
|
}
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $this->lang->line('media_save_success'));
|
|
|
|
|
} else {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('media_save_error'));
|
|
|
|
|
}
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//保存自定义配置
|
|
|
|
|
function delete_meta()
|
|
|
|
|
{
|
|
|
|
|
$im_ic_id = $this->input->post('im_ic_id');
|
|
|
|
|
$im_key = $this->input->post('im_key');
|
|
|
|
|
if ($im_ic_id && $im_key) {
|
|
|
|
|
|
|
|
|
|
$this->InfoMetas_model->delete($im_ic_id, $im_key);
|
|
|
|
|
$data[] = array('name' => 'ok', 'value' => $this->lang->line('media_delete_success'));
|
|
|
|
|
} else {
|
|
|
|
|
$data[] = array('name' => 'no', 'value' => $this->lang->line('media_save_error'));
|
|
|
|
|
}
|
|
|
|
|
echo json_encode($data);
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
}
|