<?php

/*
 * ----------------------------------------------------
 * 程序名称: 牛叉广告管理系统(NiuXams)
 * 程序功能: 实现专业的广告投放、管理和统计等管理系统！
 * 程序开发: 牛叉软件(NiuXSoft.com)
 * 版权所有: [NiuXams] (C)2013-2099 NiuXSoft.com
 * 官方网站: www.niuxsoft.com  Email: niuxsoft@163.com
 * ----------------------------------------------------
 * 使用条款:
 * 1.为构建创新型经济社会,请尊重保护知识产权！
 * 2.该软件个人非商业用途免费使用.
 * 3.免费使用禁止修改版权信息和官方推广链接.
 * 4.禁止任何衍生版本.禁止任何非法修改源代码贩卖.
 * ----------------------------------------------------
 */

defined('NIUX_INCLUDED') or exit('Access Denied.');
$loginName = inSql($_POST['name']);
$loginPwd = inSql($_POST['pwd']);
$autoLogin = inSql($_POST['autoLogin']);
if (!(preg_match('/^([0-9a-zA-Z@._]){3,20}$/', $loginName) && preg_match('/^(\S){6,40}$/', $loginPwd) && $_SERVER['HTTP_REFERER'] == selfUrl())) {
    $cfg_strictLog && $nxsql->inLog('登录', 0, $loginName);
    exit('5');
}
$query = "SELECT COUNT(*) FROM `${cfg_dbprefix}admin_log` WHERE name='${loginName}' AND operate='登录' AND state=0 AND DATE(time)=CURDATE();";
if ($nxsql->oneRowVal($query) >= 5) {
    $cfg_strictLog && $nxsql->inLog('登录', 0, $loginName);
    exit('5');
}
$query = "SELECT pwd FROM `${cfg_dbprefix}admin` WHERE name='${loginName}';";
if ($pwd = $nxsql->oneRowVal($query)) {
    if ($pwd == md5($loginName . $loginPwd . $loginName)) {
        if ($cfg_strictLogin) {
            session_start();
            $_SESSION[$cfg_dbprefix . 'niuxams_admin'] = $loginName;
            $_SESSION[$cfg_dbprefix . 'niuxams_pws'] = md5($cfg_dbprefix . $pwd . $cfg_dbprefix);
        } else {
            if ($autoLogin) {
                $expire = time() + 60 * 60 * 24 * 10;
                setcookie($cfg_dbprefix . 'niuxams_admin', $loginName, $expire);
                setcookie($cfg_dbprefix . 'niuxams_pws', md5($cfg_dbprefix . $pwd . $cfg_dbprefix), $expire);
            } else {
                setcookie($cfg_dbprefix . 'niuxams_admin', $loginName);
                setcookie($cfg_dbprefix . 'niuxams_pws', md5($cfg_dbprefix . $pwd . $cfg_dbprefix));
            }
        }
        $nxsql->inLog('登录', 1, $loginName);
        exit('1');
    } else {
        $nxsql->inLog('登录', 0, $loginName);
        exit('2');
    }
} else {
    $nxsql->inLog('登录', 0, $loginName);
    exit('2');
}
