123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- <?php
- /**
- * mobile父类
- *
- *
- */
- //use Shopnc\Tpl;
- defined('InShopNC') or exit('Access Invalid!');
- /********************************** 前台control父类 **********************************************/
- class mobileControl
- {
- //客户端类型
- protected $client_type_array = array('android', 'wap', 'wechat', 'ios','ajax','web');
-
- //列表默认分页数
- //protected $page_size = 5;
- protected $page = 5;
- protected $cur_page = 1;
- //任务开始时间
- private static $startime = 0;
- public function __construct()
- {
- self::$startime = microtime(true);
- Language::read('mobile');
- //分页数处理
- if (is_numeric($_GET['page']) && intval(trim($_GET['page'])) > 0) {
- $this->page = intval(trim($_GET['page']));
- }
- if (is_numeric($_GET['curpage']) && intval(trim($_GET['curpage'])) > 0) {
- $this->cur_page = intval(trim($_GET['curpage']));
- }
- $this->check_app_type();
- }
- protected function page_size() {
- return $this->page;
- }
- protected function page_no() {
- return $this->cur_page;
- }
- private static function eclipse_time() {
- return (microtime(true) - self::$startime);
- }
- protected function check_app_type()
- {
- $client = strtolower(trim($_SERVER['HTTP_CLIENT_TYPE']));
- $version = trim($_SERVER['HTTP_CLIENT_VERSION']);
- if(empty($client)) {
- $client = $_POST['client_type'];
- }
- if (empty($client)|| !in_array($client, $this->client_type_array)) {
- $_SESSION['client_type'] = 'wap';
- } else {
- $_SESSION['client_type'] = $client;
- }
- if(!empty($version)) {
- $_SESSION['client_version'] = $version;
- }
- return true;
- }
- static public function outerr($code,$msg = '',$page = '')
- {
- static $json_clients = array('android', 'ios','ajax');
- if(in_array($_SESSION['client_type'],$json_clients)) {
- joutput_error($code,$msg);
- }
- else if($_SESSION['client_type'] == 'wap')
- {
- Tpl::output("error",$msg);
- if(!empty($page)) {
- TPL::showpage($page);
- }
- }
- else {
- if(empty($msg)) {
- $msg = errcode::msg($code);
- }
- echo joutput_error($code,$msg,'web') . "<br/>";
- echo sprintf("eclipse_time = %.6f <br/><br/>", self::eclipse_time());
- echo "性能关键统计:<br/><br/>";
- performance_helper::format_log();
- $sqls = Log::sql_log();
- echo "sql count = " . count($sqls) . "<br/><br/>";
- foreach($sqls as $sql) {
- echo "{$sql}<br/>";
- }
- }
- }
- static public function outsuccess($data,$page = '')
- {
- static $json_clients = array('android', 'ios'); //,'ajax'
- if(in_array($_SESSION['client_type'],$json_clients)) {
- joutput_data($data);
- }
- else if($_SESSION['client_type'] == 'wap')
- {
- if(is_array($data)) {
- foreach($data as $key => $val) {
- TPL::output($key,$val);
- }
- }
- if(!empty($page)) {
- TPL::showpage($page);
- }
- }
- else if($_SESSION['client_type'] == 'ajax') {
- echo "callback(";
- joutput_data($data);
- echo ")";
- }
- else
- {
- echo 'success: return data=<br/>';
- joutput_data($data,'web');
- echo "<br/><br/>";
- echo sprintf("eclipse_time = %.6f <br/><br/>", self::eclipse_time());
- echo "性能关键统计:<br/><br/>";
- performance_helper::format_log();
- $sqls = Log::sql_log();
- echo "sql count = " . count($sqls) . "<br/><br/>";
- foreach($sqls as $sql) {
- echo "{$sql}<br/>";
- }
- }
- }
- }
- class mobileHomeControl extends mobileControl
- {
- public function __construct()
- {
- parent::__construct();
- }
- }
- /**
- * Class mbMemberControl
- */
- class mbMemberControl extends mobileControl
- {
- public $err_code = errcode::Success;
- public function __construct()
- {
- parent::__construct();
- if($_SESSION['is_login'] != 1) {
- throw new UnloginException();
- }
- }
- }
|