Пример #1
0
/**
 * 判断COOKIE是否超过一个小时,如果没有超过则更新$_M['user']['cookie']中的信息
 */
function met_cooike_start()
{
    global $_M;
    $_M['user']['cookie'] = array();
    $met_webkeys = $_M['config']['met_webkeys'];
    list($username, $password) = explode("\t", authcode($_M['form']['met_auth'], 'DECODE', $met_webkeys . $_COOKIE['met_key']));
    $username = sqlinsert($username);
    $query = "SELECT * from {$_M['table']['admin_table']} WHERE admin_id = '{$username}'";
    $user = DB::get_one($query);
    $usercooike = json_decode($user['cookie']);
    if (md5($user['admin_pass']) == $password && time() - $usercooike->time < 3600) {
        foreach ($usercooike as $key => $val) {
            $_M['user']['cookie'][$key] = $val;
        }
        if (defined('IN_ADMIN')) {
            $_M['user']['admin_name'] = get_met_cookie('metinfo_admin_name');
            $_M['user']['admin_id'] = $_M['user']['cookie']['metinfo_admin_id'];
            $privilege = background_privilege();
            $_M['user']['langok'] = $privilege['langok'];
        }
        $_M['user']['cookie']['time'] = time();
        $json = json_encode($_M['user']['cookie']);
        $query = "update {$_M['table']['admin_table']} set cookie = '{$json}' WHERE admin_id = '{$username}'";
        $user = DB::query($query);
    }
}
Пример #2
0
 public function doindex()
 {
     global $_M;
     $app = load::mod_class('myapp/class/getapp', 'new');
     $appl = $app->get_app();
     foreach ($appl as $key => $val) {
         if ($val['no'] > 10000) {
             $applist .= $val['no'] . '-' . $val['ver'] . '|';
         }
     }
     $applist = trim($applist, '|');
     $privilege = background_privilege();
     if ($privilege['application'] != 'metinfo') {
         foreach ($appl as $key => $val) {
             if ($val['no'] > 10000) {
                 if (!strstr($privilege['application'], $val['no'])) {
                     unset($appl[$key]);
                 }
             }
         }
     }
     require $this->template('tem/myapp');
 }
Пример #3
0
 protected function confirm($title, $html, $cancel, $confirm)
 {
     global $_M;
     $privilege = background_privilege();
     if ($privilege['navigation'] == 'metinfo' || strstr($privilege['navigation'], '1801')) {
         $jurisdiction = '1';
     }
     return "\n\t\t<div class='v52fmbx' style='border-bottom: none;'>\n\t\t\t<h3 class='v52fmbx_hr'>{$title}</h3>\n\t\t\t<dl>\n\t\t\t\t<dd class='ftype_input'>\n\t\t\t\t\t{$html}\n\t\t\t\t</dd>\n\t\t\t</dl>\n\t\t\t<br>\n\t\t\t<dl class='noborder'>\n\t\t\t\t<dd style='margin-left: 200px;'>\n\t\t\t\t\t<input id='olupdate_type' name='olupdate_type' type='hidden' value='{$jurisdiction}' />\n\t\t\t\t\t<input type='submit' name='remodal-cancel' value='{$cancel}' class='submit'>\n\t\t\t\t\t<input type='submit' name='remodal-confirm' value='{$confirm}' class='submit'>\n\t\t\t\t</dd>\n\t\t\t</dl>\n\t\t</div>";
 }
Пример #4
0
 public function dohome()
 {
     global $_M;
     /*获取统计数据*/
     function statime($ymd, $day = '')
     {
         $day = $day == '' ? time() : strtotime($day);
         $time = strtotime(date($ymd, $day));
         return $time;
     }
     $stat = array();
     for ($i = 1; $i <= 5; $i++) {
         $stats = $i == 1 ? statime("Y-m-d") : statime("Y-m-d", 0 - $i + 1 . " day");
         $query = "select * from {$_M[table][visit_summary]} WHERE stattime ='{$stats}'";
         $stat[$i] = DB::get_one($query);
         if (!$stat[$i]) {
             $stat[$i]['pv'] = 0;
             $stat[$i]['alone'] = 0;
             $stat[$i]['ip'] = 0;
         }
         $stat[$i]['day'] = date('Y-m-d', $stats);
         if ($i == 1) {
             $stat[$i]['day'] = $_M['word']['today'];
         }
         if ($i == 2) {
             $stat[$i]['day'] = $_M['word']['yesterday'];
         }
     }
     /*图表数据*/
     $dm = date('H', time());
     $dt = $dm - 8;
     $dt = $dt < 0 ? $dt + 24 : $dt;
     for ($i = 0; $i <= 23; $i++) {
         if ($i <= $dm && $i >= $dt) {
             $d = $i < 10 ? '0' . $i : $i;
             $chartdata['labels'][] = "{$d}:59";
         }
     }
     $chartcolor[0] = "#23b7e5";
     $chartcolor[1] = "#7266ba";
     $chartcolor[2] = "#23ad44";
     foreach ($chartcolor as $key => $val) {
         $chartdata['datasets'][$key]['fillColor'] = $val;
         $chartdata['datasets'][$key]['strokeColor'] = $val;
         $chartdata['datasets'][$key]['pointColor'] = $val;
         $chartdata['datasets'][$key]['pointStrokeColor'] = '#fff';
     }
     $nowcrt = explode("|", $stat[1]['parttime']);
     $i = 0;
     foreach ($nowcrt as $val) {
         if ($i <= $dm && $i >= $dt) {
             $aowcrt = '';
             if ($val) {
                 $aowcrt = explode("-", $val);
                 $val = array();
                 $val[0] = $aowcrt[0];
                 $val[1] = $aowcrt[1];
                 $val[2] = $aowcrt[2];
             } else {
                 $val[0] = 0;
                 $val[1] = 0;
                 $val[2] = 0;
             }
             $chartdata['datasets'][0]['data'][] = $val[0];
             $chartdata['datasets'][1]['data'][] = $val[1];
             $chartdata['datasets'][2]['data'][] = $val[2];
         }
         $i++;
     }
     $chartdata = jsonencode($chartdata);
     /*我的应用*/
     $query = "select * from {$_M['table']['admin_column']} where bigclass='44'";
     $app_in = DB::get_all($query);
     $privilege = background_privilege();
     require $this->template('tem/home');
 }
Пример #5
0
/**
 * 获取后台导航栏目数组
 * @return array 返回记录后台导航栏目信息的数组
 */
function get_adminnav()
{
    global $_M;
    $jurisdiction = background_privilege();
    $query = "select * from {$_M['table']['admin_column']} order by type desc,list_order";
    $sidebarcolumn = DB::get_all($query);
    $bigclass = array();
    foreach ($sidebarcolumn as $key => $val) {
        if ($val['id'] == 68) {
            $val['field'] = '1301';
        }
        if (!is_strinclude($jurisdiction['navigation'], $val['field']) && $jurisdiction['navigation'] != 'metinfo' && $val['field'] != 0) {
            continue;
        }
        //需要清理,下面的代码,有些栏目已经多余
        if (($val['name'] == 'lang_indexcode' || $val['name'] == 'lang_indexebook' || $val['name'] == 'lang_indexbbs' || $val['name'] == 'lang_indexskinset') && $_M['config']['met_agents_type'] > 1) {
            continue;
        }
        if (($val['name'] == 'lang_webnanny' || $val['name'] == 'lang_smsfuc') && $_M['config']['met_agents_sms'] == 0) {
            continue;
        }
        if ($val['name'] == 'lang_dlapptips2' && $_M['config']['met_agents_app'] == 0) {
            continue;
        }
        //
        $val['name'] = get_word($val['name']);
        $val['info'] = get_word($val['info']);
        $bigclass[$val['bigclass']] = 1;
        switch ($val['type']) {
            case 1:
                if ($bigclass[$val['id']] == 1) {
                    $adminnav[$val['id']] = $val;
                }
                break;
            case 2:
                if (strstr($val['url'], "?")) {
                    $val['url'] .= '&anyid=' . $val['id'] . '&lang=' . $_M['lang'];
                } else {
                    $val['url'] .= '?anyid=' . $val['id'] . '&lang=' . $_M['lang'];
                }
                $val['url'] = $_M['url']['site_admin'] . $val['url'];
                $adminnav[$val['id']] = $val;
                break;
        }
    }
    return $adminnav;
}
Пример #6
0
 public function __construct()
 {
     global $_M;
     $this->power = background_privilege();
 }