| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 | 
							- <?php
 
- defined('IN_PHPCMS') or exit('No permission resources.');
 
- pc_base::load_app_class('admin','admin',0);
 
- pc_base::load_sys_class('form', '', 0);
 
- class downservers extends admin {
 
- 	private $db;
 
- 	function __construct() {
 
- 		parent::__construct();
 
- 		$this->db = pc_base::load_model('downservers_model');
 
- 		$this->sites = pc_base::load_app_class('sites');
 
- 	}
 
- 	
 
- 	public function init() {
 
- 		if(isset($_POST['dosubmit'])) {
 
- 			$info['siteurl'] = trim($_POST['info']['siteurl']);
 
- 			$info['sitename'] = trim($_POST['info']['sitename']);
 
- 			$info['siteid'] = intval($_POST['info']['siteid']);
 
- 			if(empty($info['sitename'])) showmessage(L('downserver_not_empty'), HTTP_REFERER);	
 
- 			if(empty($info['siteurl']) || !preg_match('/(\w+):\/\/(.+)[^\/]$/i', $info['siteurl'])) showmessage(L('downserver_error'), HTTP_REFERER);
 
- 			$insert_id = $this->db->insert($info,true);
 
- 			if($insert_id){
 
- 				$this->_set_cache();
 
- 				showmessage(L('operation_success'), HTTP_REFERER);
 
- 			}
 
- 		} else {
 
- 			$infos =  $sitelist = array();
 
- 			$current_siteid = get_siteid();
 
- 			$where = "`siteid`='$current_siteid' or `siteid`=''";
 
- 			$sitelists = $this->sites->get_list();
 
- 			if($_SESSION['roleid'] == '1') {
 
- 				foreach($sitelists as $key=>$v) $sitelist[$key] = $v['name'];
 
- 				$default = L('all_site');
 
- 			} else {
 
- 				$sitelist[$current_siteid] = $sitelists[$current_siteid]['name'];
 
- 				$default = '';
 
- 			}			
 
- 			$page = $_GET['page'] ? $_GET['page'] : '1';
 
- 			$infos = $this->db->listinfo($where, 'listorder DESC,id DESC', $page, $pagesize = 20);
 
- 			$pages = $this->db->pages;						
 
- 			include $this->admin_tpl('downservers_list');
 
- 		}
 
- 	}
 
- 	
 
- 	public function edit() {
 
- 		if(isset($_POST['dosubmit'])) {
 
- 			$info['siteurl'] = trim($_POST['info']['siteurl']);
 
- 			$info['sitename'] = trim($_POST['info']['sitename']);
 
- 			$info['siteid'] = intval($_POST['info']['siteid']);
 
- 			if(empty($info['sitename'])) showmessage(L('downserver_not_empty'), HTTP_REFERER);	
 
- 			if(empty($info['siteurl']) || !preg_match('/(\w+):\/\/(.+)[^\/]$/i', $info['siteurl'])) showmessage(L('downserver_error'), HTTP_REFERER);
 
- 			$id = intval(trim($_POST['id']));
 
- 			$this->_set_cache();
 
- 			$this->db->update($info,array('id'=>$id));
 
- 			showmessage(L('operation_success'), '', '', 'edit');
 
- 		} else {
 
- 			$info =  $sitelist = array();
 
- 			$default = '';
 
- 			$sitelists = $this->sites->get_list();
 
- 			if($_SESSION['roleid'] == '1') {
 
- 				foreach($sitelists as $key=>$v) $sitelist[$key] = $v['name'];
 
- 				$default = L('all_site');
 
- 			} else {
 
- 				$current_siteid = self::get_siteid();
 
- 				$sitelist[$current_siteid] = $sitelists[$current_siteid]['name'];
 
- 				$default = '';
 
- 			}			
 
- 			$info = $this->db->get_one(array('id'=>intval($_GET['id'])));
 
- 			extract($info);
 
- 			$show_validator = true;
 
- 			$show_header = true;
 
- 			include $this->admin_tpl('downservers_edit');
 
- 		}
 
- 	}
 
- 	
 
- 	public function delete() {
 
- 		$id = intval($_GET['id']);
 
- 		$this->db->delete(array('id'=>$id));
 
- 		$this->_set_cache();
 
- 		showmessage(L('downserver_del_success'), HTTP_REFERER);
 
- 	}	
 
- 	
 
- 	/**
 
- 	 * 排序
 
- 	 */
 
- 	public function listorder() {
 
- 		if(isset($_POST['dosubmit'])) {
 
- 			foreach($_POST['listorders'] as $id => $listorder) {
 
- 				$this->db->update(array('listorder'=>$listorder),array('id'=>$id));
 
- 			}
 
- 			showmessage(L('operation_success'), HTTP_REFERER);
 
- 		} else {
 
- 			showmessage(L('operation_failure'), HTTP_REFERER);
 
- 		}
 
- 	}	
 
- 	
 
- 	private function _set_cache() {
 
- 		$infos = $this->db->select();
 
- 		foreach ($infos as $info){
 
- 			$servers[$info['id']] = $info;
 
- 		}
 
- 		setcache('downservers', $servers,'commons');
 
- 		return $infos;
 
- 	}
 
- 	
 
- }
 
- ?>
 
 
  |