Пример #1
0
 public function dopatch()
 {
     global $_M;
     $curl = load::sys_class('curl', 'new');
     $curl->set('file', '?n=platform&c=system&a=dopatch');
     $post_data = array('cmsver' => $_M['config']['metcms_v'], 'patch' => $_M['config']['met_patch']);
     $difilelist = $curl->curl_post($post_data, 10);
     $difilelists = stringto_array($difilelist, '|', '*', ':');
     if ($difilelists[0][0][0] == 'suc') {
         foreach ($difilelists[1] as $keylist => $vallist) {
             $met_patch = $vallist[0];
             unset($vallist[0]);
             foreach ($vallist as $key => $val) {
                 $dlfile = load::sys_class('dlfile', 'new');
                 $copydir = str_replace(':/admin/', ':/' . $_M['config']['met_adminfile'] . '/', ':/' . $val);
                 $copydir = str_replace(':/', '', $copydir);
                 $re = $dlfile->dlfile('file/v' . $_M['config']['metcms_v'] . '/file/' . $val, PATH_WEB . $copydir, 'metcms');
                 if ($re != 1) {
                     break;
                 }
             }
             $update_file = PATH_WEB . "{$_M['config'][met_adminfile]}/update/patch/v{$_M['config']['metcms_v']}_{$met_patch}.class.php";
             if (file_exists($update_file)) {
                 require_once $update_file;
             }
             @unlink($update_file);
             $query = "update {$_M['table']['config']} set value='{$met_patch}' where name='met_patch'";
             DB::query($query);
         }
         echo 1;
     } else {
         echo 2;
     }
     die;
 }
Пример #2
0
 public function donews_info()
 {
     global $_M;
     $sval = $_M['form']['search_title'];
     $table = load::sys_class('tabledata', 'new');
     //加载表格数据获取类
     $where = "(lang='{$_M['lang']}' or lang='metinfo') ";
     //整理查询条件
     if ($_M['form']['search_type'] && $_M['form']['search_type'] != 'all') {
         $where .= " AND type like '%{$_M['form']['search_type']}%'";
     }
     if ($sval) {
         $where .= " AND member like '%{$sval}%'";
     }
     $order = "time DESC";
     //排序方式
     $array = $table->getdata($_M['table']['infoprompt'], '*', $where, $order);
     $j = 1;
     $url = '';
     foreach ($array as $key => $val) {
         if ($val['type'] == 'job') {
             $title = $val['newstitle'];
             $news_type = $_M['word']['recruitment_information'];
             $url = $_M['url']['site_admin'] . "content/job/cv_editor.php?anyid=29&lang={$_M['lang']}&id={$val['news_id']}";
         }
         if (strstr($val['type'], "feedback")) {
             $title = $_M['word']['news_prompt1'];
             $news_type = $_M['word']['physicalunread1'];
             $type = explode('-', $val['type']);
             $url = $_M['url']['site_admin'] . "content/feedback/editor.php?anyid=29&id={$val['news_id']}&lang={$_M['lang']}&class1={$type['1']}";
         }
         if (strstr($val['type'], "message")) {
             $title = $_M['word']['news_prompt'];
             $news_type = $_M['word']['physicalunread2'];
             $type = explode('-', $val['type']);
             $url = $_M['url']['site_admin'] . "message/editor.php?anyid=29&id={$val['news_id']}&lang={$_M['lang']}&class1={$type['1']}";
         }
         if ($val['type'] == 'official') {
             $title = $val['newstitle'];
             $news_type = $_M['word']['official_information'];
             $url = "{$_M['url']['own_form']}a=doofficial&id={$val['id']}";
         }
         $valinfo = $val['content'];
         $val['content'] = preg_replace('#^(?:[\\x00-\\x7F]|[\\xC0-\\xFF][\\x80-\\xBF]+){0,0}' . '((?:[\\x00-\\x7F]|[\\xC0-\\xFF][\\x80-\\xBF]+){0,30}).*#s', '$1', $valinfo);
         if ($valinfo != $val['content']) {
             $val['content'] .= '..';
         }
         $time = date("Y-m-d H:i:s", $val['time']);
         if ($val['see_ok'] == '0') {
             $color = '#656565';
         } else {
             $color = '#c5c5c9';
         }
         $list = array();
         $list[] = "<a href='{$_M['url']['own_form']}a=donews_jump&id={$val['id']}' style='color:{$color};' >{$title}</a>";
         $list[] = $time;
         $rarray[] = $list;
     }
     $table->rdata($rarray);
 }
Пример #3
0
 public function dotable_temset_json()
 {
     global $_M;
     $table = load::sys_class('tabledata', 'new');
     //加载表格数据获取类
     $where = "no='{$_M['form']['no']}' and pos='{$_M['form']['pos']}' and lang='{$_M['form']['lang']}'";
     $order = "no_order";
     //排序方式
     $array = $table->getdata($_M['table']['templates'], '*', $where, $order);
     foreach ($array as $key => $val) {
         $list = array();
         $list[] = "<input name=\"id\" type=\"checkbox\" value=\"{$val[id]}\" />";
         $list[] = '<i class="fa fa-caret-right"></i>';
         $list[] = $this->select($val['type'], $val[id]);
         $list[] = "<input type=\"text\" name=\"name-{$val[id]}\" class=\"ui-input\" placeholder=\"变量名\" data-norepeat='namenopt' value=\"{$val['name']}\" >";
         $list[] = "<input type=\"text\" name=\"defaultvalue-{$val[id]}\" class=\"ui-input\"  placeholder=\"默认值\" value=\"{$val['defaultvalue']}\" >";
         $list[] = "<input type=\"text\" name=\"valueinfo-{$val[id]}\" class=\"ui-input\" value=\"{$val['valueinfo']}\" placeholder=\"标题\" data-required=\"1\">";
         $list[] = "<input type=\"text\" name=\"tips-{$val[id]}\" class=\"ui-input\" placeholder=\"说明\" value=\"{$val['tips']}\" >";
         $list[] = "\n\t\t\t\t<select name='pos-{$val[id]}' data-checked='{$val[pos]}'>\n\t\t\t\t\t<option value='0'>全局</option>\n\t\t\t\t\t<option value='1'>首页</option>\n\t\t\t\t\t<option value='2'>列表页</option>\n\t\t\t\t\t<option value='3'>详细页</option>\n\t\t\t\t</select>\n\t\t\t";
         $list[] = "\n\t\t\t\t<a href=\"{$_M[url][own_form]}a=dosetlist\" class='selectd'>设置选项</a>\n\t\t\t\t<span class=\"line selectd\">|</span>\n\t\t\t\t<a href=\"{$_M[url][own_form]}a=dotable_add&pos={$_M['form']['pos']}\" class='nowaddlist'>添加子选项</a>\n\t\t\t\t<span class=\"line nowaddlist\">|</span>\n\t\t\t\t<input type='hidden' name='selectd-{$val[id]}' value='{$val['selectd']}' />\n\t\t\t\t<input type='hidden' name='style-{$val[id]}' value='{$val['style']}' />\n\t\t\t\t<a href=\"{$_M['url']['own_form']}a=dosetsave&allid={$val[id]},&submit_type=del&no={$_M['form']['no']}&pos={$_M['form']['pos']}\" data-confirm=\"您确定要删除该信息吗?删除之后无法再恢复。<br/>如果删除分区,分区下的子选项不会被删除。\">删除</a>";
         //{$_M['url']['own_name']}c=setedit&a=dosetedit&id={$val[id]}
         if ($val['type'] == 1) {
             $list['toclass'] = 'fenqu';
         } else {
             $list['toclass'] = 'xuanxiang';
         }
         $rarray[] = $list;
     }
     $table->rdata($rarray);
 }
Пример #4
0
/**
* 获取COOKIE值
* @param  string  $key                             指定键值
* @return string  $_M['user']['cookie'][$key]	    返回当前管理员或会员的相关COOKIE值
* 例:get_met_cookie('metinfo_admin_name'):返回当前管理员的账号
	   get_met_cookie('metinfo_member_name'):返回当前会员的账号
	   get_met_cookie('metinfo_admin_pass'):返回当前管理员的密码
	   get_met_cookie('metinfo_member_pass'):返回当前会员的密码
*/
function get_met_cookie($key)
{
    global $_M;
    if (defined('IN_ADMIN')) {
        if ($key == 'metinfo_admin_name' || $key == 'metinfo_member_name') {
            $val = urldecode($_M['user']['cookie'][$key]);
            $val = sqlinsert($val);
            return $val;
        }
        return $_M['user']['cookie'][$key];
    } else {
        $userclass = load::sys_class('user', 'new');
        if (!$userclass->get_login_user_info()) {
            $userclass->login_by_auth($_M['form']['acc_auth'], $_M['form']['acc_key']);
        }
        $m = $userclass->get_login_user_info();
        $m['metinfo_admin_name'] = $m['username'];
        $m['metinfo_member_name'] = $m['username'];
        $m['metinfo_member_id'] = $m['id'];
        $m['metinfo_admin_id'] = $m['id'];
        $m['metinfo_admin_pass'] = $m['password'];
        $m['metinfo_member_pass'] = $m['password'];
        if ($key == 'metinfo_admin_name' || $key == 'metinfo_member_name') {
            $val = urldecode($m[$key]);
            $val = sqlinsert($val);
            return $val;
        }
        return $m[$key];
    }
}
Пример #5
0
 public function json_list($where, $order)
 {
     global $_M;
     $this->table = load::sys_class('tabledata', 'new');
     $where = "lang='{$_M['lang']}' and (recycle = '0' or recycle = '-1') {$where}";
     $data = $this->table->getdata($this->tablename, '*', $where, $order);
     return $data;
 }
Пример #6
0
/**
 * 获取当前会员信息;
 * @return array  $user 返回记录当前会员信息的数组
 */
function member_information()
{
    global $_M;
    $metinfo_member_name = get_met_cookie('metinfo_member_name');
    $user = load::sys_class('user', 'new')->get_user_by_username($metinfo_member_name);
    $user['usertype'] = $user['groupid'];
    $user['admin_id'] = $user['username'];
    $user['admin_pass'] = $user['password'];
    $query = "SELECT id,name FROM {$_M['table']['column']} WHERE access <= '{$user['groupid']}' AND lang = '{$_M['lang']}'";
    $column = DB::get_all($query);
    $user['column'] = $column;
    return $user;
}
Пример #7
0
 public function authinfo()
 {
     global $_M;
     $query = "SELECT * FROM {$_M['table']['otherinfo']} WHERE id='1'";
     $key_info = DB::get_one($query);
     $curl = load::sys_class('curl', 'new');
     $curl->set('file', "index.php?n=platform&c=authcheck&m=web&a=doauth_json&key={$key_info['authpass']}&code={$key_info['authcode']}&domain={$_M['url']['site']}&datatype=data&weblang=cn");
     $post = array('post' => '');
     $info = $curl->curl_post($post);
     $re = jsondecode($info);
     $query = "update {$_M['table']['otherinfo']} set info1='{$re['webtype_h']}' where id=1";
     DB::query($query);
     return $re;
 }
Пример #8
0
 public function json_group_list()
 {
     global $_M;
     $table = load::sys_class('tabledata', 'new');
     $order = "access";
     $where = "lang='{$_M['lang']}'";
     $grouplist = $table->getdata($_M['table']['user_group'], '*', $where, $order);
     foreach ($grouplist as $val) {
         $list = array();
         $list[] = "<input name=\"id\" type=\"checkbox\" value=\"{$val[id]}\">";
         $list[] = "<input type=\"text\" name=\"name-{$val[id]}\" data-required=\"1\" class=\"ui-input listname\" value=\"{$val[name]}\">";
         $list[] = "<input type=\"text\" name=\"access-{$val[id]}\" data-required=\"1\" class=\"ui-input met-center\" value=\"{$val['access']}\">";
         $rarray[] = $list;
     }
     $table->rdata($rarray);
 }
Пример #9
0
 public function get_tel($tel)
 {
     global $_M;
     $session = load::sys_class('session', 'new');
     if ($session->get("phonetime") && time() < $session->get("phonetime") - 220) {
         return false;
         die;
     }
     $code = random(6, 1);
     $time = time() + 300;
     $session->set("phonecode", $code);
     $session->set("phonetime", $time);
     $session->set("phonetel", $tel);
     $sms = load::sys_class('sms', 'new');
     $ret = $sms->sendsms($tel, "验证码为 {$code} ,请及时输入验证。({$_M['config']['met_webname']})");
     return $ret;
 }
Пример #10
0
 public function json_product_list($where, $order)
 {
     global $_M;
     $this->table = load::sys_class('tabledata', 'new');
     $p = $_M['table']['product'];
     $s = $_M['table']['shopv2_product'];
     if ($_M['config']['shopv2_open']) {
         //开启在线订购时
         $table = $p . ' Left JOIN ' . $s . " ON ({$p}.id = {$s}.pid)";
         $where = "{$p}.lang='{$_M['lang']}' and ({$p}.recycle = '0' or {$p}.recycle = '-1') {$where}";
     } else {
         $table = $p;
         $where = "lang='{$_M['lang']}' and (recycle = '0' or recycle = '-1') {$where}";
     }
     $data = $this->table->getdata($table, '*', $where, $order);
     return $data;
 }
Пример #11
0
 public function dotable_temlist_json()
 {
     global $_M;
     $table = load::sys_class('tabledata', 'new');
     //加载表格数据获取类
     $where = "";
     $order = "";
     //排序方式
     $array = $table->getdata($_M['table']['skin_table'], '*', $where, $order);
     foreach ($array as $key => $val) {
         $list = array();
         $list[] = "<img src='{$_M[url][site]}templates/{$val['skin_file']}/view.jpg' width='150' style='padding:5px; background:#fff; border:1px solid #ddd;' />";
         $list[] = $val['skin_file'];
         $list[] = $val['devices'] ? '手机模板' : '电脑模板';
         $list[] = "\n\t\t\t\t\t\t<a href=\"{$_M['url']['own_name']}c=temset&a=doset&no={$val[skin_file]}\">自定义标签</a>\n\t\t\t\t\t\t<span class=\"line\">|</span>\n\t\t\t\t\t\t<a href=\"{$_M['url']['own_name']}c=temtool&a=dode&id={$val[id]}&no={$val[skin_file]}\" data-confirm=\"您确定要删除该信息吗?删除之后无法再恢复。\">删除</a>\n\t\t\t";
         $rarray[] = $list;
     }
     $table->rdata($rarray);
 }
Пример #12
0
 public function json_para_list($where, $order, $module)
 {
     global $_M;
     $this->table = load::sys_class('tabledata', 'new');
     $where = "lang='{$_M['lang']}' and module = '{$module}' {$where}";
     $data = $this->table->getdata($_M['table']['parameter'], '*', $where, $order);
     foreach ($data as $key => $val) {
         $val['id_html'] = "<input name=\"id\" type=\"checkbox\" value=\"{$val[id]}\">";
         $val['no_order_html'] = "<input type=\"text\" name=\"no_order-{$val[id]}\" data-required=\"1\" class=\"ui-input met-center\" value=\"{$val['no_order']}\">";
         $val['name_html'] = "<input type=\"text\" name=\"name-{$val[id]}\" data-required=\"1\" class=\"ui-input listname\" value=\"{$val['name']}\">";
         $val['paratype_html'] = $this->para_type($val['id'], $val['type']);
         $val['wr_oks_html'] = "<input name=\"wr_oks-{$val[id]}\" type=\"checkbox\" data-checked=\"{$val['wr_oks']}\" value=\"1\">";
         $val['wr_ok_html'] = "<input name=\"wr_ok-{$val[id]}\" type=\"checkbox\" data-checked=\"{$val['wr_ok']}\" value=\"1\">";
         $val['description_html'] = "<input type=\"text\" name=\"description-{$val[id]}\" class=\"ui-input listname\" value=\"{$val[description]}\">";
         $none = $val['type'] == 2 || $val['type'] == 4 || $val['type'] == 6 ? '' : ' none';
         $val['options_html'] = "<button type=\"button\" class=\"btn btn-info{$none} paraoption\" data-id=\"{$val[id]}\">设置选项</button><input name=\"options-{$val[id]}\" type=\"hidden\" value=\"{$val['options']}\">";
         $datas[] = $val;
     }
     return $datas;
 }
Пример #13
0
 /**
  * 初始化
  */
 public function __construct()
 {
     global $_M;
     parent::__construct();
     $this->check();
     $this->userclass = load::sys_class('user', 'new');
     $query = "SELECT * FROM {$_M['table']['column']} WHERE module='10' AND lang='{$_M['lang']}'";
     $member = DB::get_one($query);
     if ($_M['config']['met_title_type'] == 0) {
         $_M['tem_data']['title'] = $member['name'];
     } else {
         if ($_M['config']['met_title_type'] == 1) {
             $_M['tem_data']['title'] = $member['name'] . '-' . $_M['config']['met_keywords'];
         } else {
             if ($_M['config']['met_title_type'] == 2) {
                 $_M['tem_data']['title'] = $member['name'] . '-' . $_M['config']['met_webname'];
             } else {
                 if ($_M['config']['met_title_type'] == 3) {
                     $_M['tem_data']['title'] = $member['name'] . '-' . $_M['config']['met_keywords'] . '-' . $_M['config']['met_webname'];
                 }
             }
         }
     }
     $query = "SELECT * FROM {$_M['table']['ifmember_left']}";
     $navigation = DB::get_all($query);
     foreach ($navigation as $key => $val) {
         if ($val[columnid]) {
             //$column = $class_list[$val[columnid]];
             $query = "SELECT * FROM {$_M['table']['column']} WHERE id = '{$val[columnid]}'";
             $column = DB::get_one($query);
             $val['foldername'] = $val['foldername'] ? $val['foldername'] : $column['foldername'];
             $val['filename'] = $val['filename'] ? $val['filename'] : 'index.php';
             $list['url'] = "../{$val['foldername']}/{$val['filename']}";
             $list['title'] = $column['name'];
         } else {
             $list['url'] = "../{$val['foldername']}/{$val['filename']}";
             $list['title'] = $val['title'];
         }
         $_M['html']['app_sidebar'][] = $list;
     }
 }
Пример #14
0
 function dousercsv()
 {
     global $_M;
     $groupid = $_M['form']['groupid'];
     $keyword = $_M['form']['keyword'];
     $search = $groupid ? "and groupid = '{$groupid}'" : '';
     $search .= $keyword ? "and (username like '%{$keyword}%' || email like '%{$keyword}%' || tel like '%{$keyword}%')" : '';
     /*查询表*/
     $query = "SELECT * FROM {$_M['table']['user']} WHERE lang='{$_M['lang']}' {$search} ORDER BY login_time DESC,register_time DESC";
     //mysql语句
     $array = DB::get_all($query);
     $paralist = $this->paraclass->get_para_list(10);
     foreach ($array as $key => $val) {
         switch ($val['source']) {
             case 'weixin':
                 $val['source'] = '微信登录';
                 break;
             case 'weibo':
                 $val['source'] = '微博登录';
                 break;
             case 'qq':
                 $val['source'] = 'QQ登录';
                 break;
             default:
                 $val['source'] = '注册';
                 break;
         }
         if (!$val['login_time']) {
             $val['login_time'] = $val['register_time'];
         }
         $list = array();
         $list[] = $val['username'];
         $list[] = $user_group[$val['groupid']];
         $list[] = date('Y-m-d H:i:s', $val['register_time']);
         $list[] = date('Y-m-d H:i:s', $val['login_time']);
         $list[] = $val['login_count'];
         $list[] = $val['valid'] ? '已激活' : '未激活';
         $list[] = $val['source'];
         $list[] = $val['email'];
         $list[] = $val['tel'];
         if ($paralist) {
             $para = $this->paraclass->get_para($val['id'], 10);
             foreach ($paralist as $vals) {
                 $list[] = $para['info_' . $vals['id']];
             }
         }
         $rarray[] = $list;
     }
     $filename = "USER_" . date('Y-m-d', time()) . "_ACCLOG";
     $head = array('用户名', '会员组', '注册时间', '最后活跃', '登录次数', '是否激活', '来源', '绑定邮箱', '绑定手机');
     if ($paralist) {
         foreach ($paralist as $val) {
             $head[] = $val['name'];
         }
     }
     $csv = load::sys_class('csv', 'new');
     $csv->get_csv($filename, $rarray, $head);
 }
Пример #15
0
 public function dosafety_teladd()
 {
     global $_M;
     $session = load::sys_class('session', 'new');
     if ($_M['form']['code'] != $session->get("phonecode")) {
         okinfo($_M['url']['profile_safety'], $_M['word']['membercode']);
     }
     if (time() > $session->get("phonetime")) {
         okinfo($_M['url']['profile_safety'], $_M['word']['codetimeout']);
     }
     if ($_M['form']['tel'] != $session->get("phonetel")) {
         okinfo($_M['url']['profile_safety'], $_M['word']['telcheckfail']);
     }
     $session->del('phonecode');
     $session->del('phonetime');
     $session->del('phonetel');
     if ($this->userclass->editor_uesr_tel($_M['user']['id'], $_M['form']['tel'])) {
         okinfo($_M['url']['profile_safety'], $_M['word']['bindingok']);
     } else {
         okinfo($_M['url']['profile_safety'], $_M['word']['opfail']);
     }
 }
Пример #16
0
<?php

defined('IN_MET') or exit('No permission');
defined('IN_ADMIN') or exit('No permission');
load::sys_class('common');
load::sys_class('nav');
load::sys_func('admin');
/**
 * 后台基类
 */
class admin extends common
{
    /**
     * 初始化
     */
    public function __construct()
    {
        parent::__construct();
        global $_M;
        met_cooike_start();
        //读取已登陆管理员信息
        $this->load_language();
        //语言加载
        $this->check();
        //验证管理员
        load::plugin('doadmin');
        //插件加载
    }
    /**
     * 重写common类的load_url_site方法,获取前台与后台网址
     */
Пример #17
0
<?php

defined('IN_MET') or exit('No permission');
load::sys_class('admin.class.php');
class para_admin extends admin
{
    public $paraclass;
    function __construct()
    {
        global $_M;
        parent::__construct();
        $this->paraclass = load::mod_class('system/class/sys_para', 'new');
    }
    function doindex()
    {
        global $_M;
        require $this->template('tem/para_index');
    }
    function dojson_para_list()
    {
        global $_M;
        $moduleclass = load::mod_class('content/class/module');
        $column = $moduleclass->column(3, 3);
        $order = "no_order";
        $where = '';
        $paralist = $this->paraclass->json_para_list($where, $order, 3);
        foreach ($paralist as $key => $val) {
            $list = array();
            $list[] = $val['id_html'];
            $list[] = $val['name_html'];
            $list[] = $val['paratype_html'];
Пример #18
0
 function getpin()
 {
     return load::sys_class('session', 'new')->get('pin');
 }
Пример #19
0
 public function getauth($auth, $key)
 {
     global $_M;
     $private_auth = $auth;
     $private_key = $key;
     list($return['username'], $return['password']) = explode("\t", load::sys_class('auth', 'new')->decode($private_auth, $private_key));
     return $return;
 }
Пример #20
0
 public function state_ok($state)
 {
     if ($state == load::sys_class('session', 'new')->get('other_state')) {
         return true;
     } else {
         return false;
     }
 }
Пример #21
0
 public function dlfile()
 {
     global $_M;
     $dlfile = load::sys_class('dlfile', 'new');
     return $dlfile;
 }
Пример #22
0
<?php

defined('IN_MET') or exit('No permission');
load::sys_class('admin');
load::sys_class('nav.class.php');
load::sys_func('file');
class uninstall extends admin
{
    public function __construct()
    {
        parent::__construct();
    }
    public function dodel()
    {
        global $_M;
        $query = "delete from {$_M['table']['applist']} where no='10012'";
        DB::query($query);
        echo '删除成功!';
    }
}
Пример #23
0
 function dositemapeditor()
 {
     global $_M;
     $configlist = array();
     $configlist[] = 'met_sitemap_auto';
     $configlist[] = 'met_sitemap_not1';
     $configlist[] = 'met_sitemap_not2';
     $configlist[] = 'met_sitemap_lang';
     $configlist[] = 'met_sitemap_xml';
     $configlist[] = 'met_sitemap_txt';
     configsave($configlist);
     /*保存系统配置*/
     load::sys_func('file');
     /*验证读写权限*/
     function yanquan($fname)
     {
         global $_M;
         $r = false;
         if (!file_exists(PATH_WEB . $fname)) {
             file_put_contents(PATH_WEB . $fname, 'metinfo');
             $str = 'metinfo';
         } else {
             $str = file_get_contents(PATH_WEB . $fname);
         }
         if (!file_put_contents(PATH_WEB . $fname, $str)) {
             $r = true;
         }
         return $r;
     }
     $err = false;
     if (!$_M['form']['met_sitemap_xml']) {
         delfile(PATH_WEB . "/sitemap.xml");
     } else {
         $err = yanquan('sitemap.xml');
     }
     if (!$_M['form']['met_sitemap_txt']) {
         delfile(PATH_WEB . "/sitemap.txt");
     } else {
         $err = yanquan('sitemap.txt');
     }
     if ($err) {
         turnover("{$_M[url][own_form]}a=dositemap", $_M['form']['otherinfocache2']);
     } else {
         $sitemaptype = $_M['form']['met_sitemap_xml'] ? 'xml' : ($_M['form']['met_sitemap_txt'] ? 'txt' : 0);
         sitemap_robots($sitemaptype);
         if ($_M['form']['met_sitemap_xml'] || $_M['form']['met_sitemap_txt']) {
             $gent = "sitemap/index.php?lang={$_M[lang]}&htmsitemap={$_M['config']['met_member_force']}";
             $curl = load::sys_class('curl', 'new');
             $curl->set('host', $_M['url']['site']);
             $curl->set('file', $gent);
             $post = array('post' => '');
             $curl->curl_post($post);
         }
         turnover("{$_M[url][own_form]}a=dositemap");
     }
 }
Пример #24
0
 function doemail()
 {
     global $_M;
     if (!get_extension_funcs('openssl') && stripos($_M['form']['met_fd_smtp'], '.gmail.com') !== false) {
         $metinfo = "<span style=\"color:#f00;\">{$_M['word']['setbasicTip14']}</span>";
         echo $metinfo;
         die;
     }
     if (!get_extension_funcs('openssl') && $_M['form']['met_fd_way'] == 'ssl') {
         $metinfo = "<span style=\"color:#f00;\">{$_M['word']['setbasicTip15']}</span>";
         echo $metinfo;
         die;
     }
     if (!function_exists('fsockopen') && !function_exists('pfsockopen') && !function_exists('stream_socket_client')) {
         $metinfo = "<span style=\"color:#f00;\">{$_M['word']['basictips1']}</span>";
         $metinfo .= "<span style=\"color:#090;\">{$_M['word']['basictips2']}</span>";
     } else {
         $usename = $_M['form']['met_fd_usename'];
         $fromname = $_M['form']['met_fd_fromname'];
         $password = $_M['form']['met_fd_password'];
         $password = $password == 'passwordhidden' ? $_M['config']['met_fd_password'] : $password;
         $smtp = $_M['form']['met_fd_smtp'];
         $port = $_M['form']['met_fd_port'];
         $way = $_M['form']['met_fd_way'];
         $jmail = load::sys_class('jmail', 'new');
         $jmail->set_send_mailbox($usename, $fromname, $usename, $password, $smtp, $port, $way);
         $ret = $jmail->send_email($usename, $_M['word']['basictips3'], $_M['word']['basictips4']);
         if ($ret) {
             $metinfo = "<span style=\"color:#090;\">{$_M['word']['basictips7']}</span>";
         } else {
             $metinfo = "<span style=\"color:#f00;\">{$_M['word']['basictips5']}</span>";
             $metinfo .= "<span style=\"color:#f00;\">{$_M['word']['basictips6']}</span>";
         }
     }
     echo $metinfo;
 }
Пример #25
0
 public function access_option($name, $value)
 {
     $group = load::sys_class('group', 'new')->get_group_list();
     $re = "<select name=\"{$name}\" data-checked=\"{$value}\">";
     $re .= "<option value=\"0\">不限制</option>";
     foreach ($group as $val) {
         $re .= "<option value=\"{$val['id']}\">{$val['name']}</option>";
     }
     $re .= "<option value=\"{$val['id']}\">管理员</option>";
     $re .= "</select>";
     return $re;
 }
Пример #26
0
<?php

defined('IN_MET') or exit('No permission');
load::sys_class('group');
class sys_group extends group
{
}
Пример #27
0
 public function dovalid()
 {
     global $_M;
     $auth = load::sys_class('auth', 'new');
     $email = $auth->decode($_M['form']['p']);
     if ($email) {
         if ($_M['form']['password']) {
             $user = $this->userclass->get_user_by_email($email);
             if ($user) {
                 if ($this->userclass->editor_uesr_password($user['id'], $_M['form']['password'])) {
                     okinfo($_M['url']['login'], $_M['word']['modifypasswordsuc']);
                 } else {
                     okinfo($_M['url']['login'], $_M['word']['opfail']);
                 }
             } else {
                 okinfo($_M['url']['login'], $_M['word']['nouser']);
             }
         }
         require_once $this->template('tem/getpassword_mailset');
     } else {
         okinfo($_M['url']['register'], $_M['word']['emailvildtips2']);
     }
 }
Пример #28
0
 public function doemailvild()
 {
     global $_M;
     $auth = load::sys_class('auth', 'new');
     $username = $auth->decode($_M['form']['p']);
     if ($username) {
         if ($this->userclass->get_user_valid($username)) {
             okinfo($_M['url']['login'], $_M['word']['activesuc']);
         } else {
             okinfo($_M['url']['register'], $_M['word']['emailvildtips1']);
         }
     } else {
         okinfo($_M['url']['register'], $_M['word']['emailvildtips2']);
     }
 }
Пример #29
0
<?php

defined('IN_MET') or exit('No permission');
load::sys_class('admin');
class editor extends admin
{
    function __construct()
    {
        parent::__construct();
    }
    /*编辑器上传处理*/
    public function doeditor()
    {
        global $_M;
        $CONFIG = json_decode(preg_replace("/\\/\\*[\\s\\S]+?\\*\\//", "", file_get_contents(PATH_WEB . "app/system/include/module/editor/config.json")), true);
        $CONFIG['imagePathFormat'] = PATH_WEB . 'upload/' . $CONFIG['imagePathFormat'];
        $CONFIG['scrawlPathFormat'] = PATH_WEB . 'upload/' . $CONFIG['scrawlPathFormat'];
        $CONFIG['catcherPathFormat'] = PATH_WEB . 'upload/' . $CONFIG['catcherPathFormat'];
        $CONFIG['videoPathFormat'] = PATH_WEB . 'upload/' . $CONFIG['videoPathFormat'];
        $CONFIG['filePathFormat'] = PATH_WEB . 'upload/' . $CONFIG['filePathFormat'];
        $CONFIG['imageManagerListPath'] = PATH_WEB . 'upload/';
        $CONFIG['fileManagerListPath'] = PATH_WEB . 'upload/';
        //$CONFIG['imagePathFormat'] = '/metv5/upload/'.$CONFIG['imagePathFormat'];
        //dump($CONFIG);
        //die;
        switch ($_M['form']['action']) {
            case 'config':
                $result = json_encode($CONFIG);
                break;
                /* 上传图片 */
            /* 上传图片 */
Пример #30
0
<?php

defined('IN_MET') or exit('No permission');
/**
 * 短信发送类
 * @param string $errorcode  出错信息	
 */
load::sys_class('curl');
class sms extends curl
{
    public $errorcode;
    /**
     * 短信发送
     * @param string $phone     手机号码
     * @param string $message   要发送的内容
     * @param integer $type     发送类型
     * 0 = 其他
     * 1 = 短信群发
     * 2 = 站长统计
     * 3 = 访问监测
     * 4 = 访客操作提醒
     * 5 = 密码找回	
     * 6 = 用户通知	
     * @rerutn array            返回发送是否成功信息
     */
    public function sendsms($phone, $message, $type = 6)
    {
        global $_M;
        //验证商业用户
        $varcode = $this->varcodeb('sms');
        $varcode = $varcode['re'] == 'SUC' ? $varcode['md5'] : '';