Ejemplo n.º 1
0
 /**
  * Bootstrap any application services.
  *
  * @return void
  */
 public function boot()
 {
     //
     \Validator::extend('mobile', function ($attribute, $value, $parameters) {
         return mobileCheck($value);
     });
     \Validator::extend('identity', function ($attribute, $value, $parameters) {
         return identityCardCheck($value);
     });
     \App::environment('local') && \DB::enableQueryLog();
     if (\App::environment('local') && file_exists(app_path() . '/localHelper.php')) {
         include app_path('localHelper.php');
     }
     \DB::listen(function ($sql, $bindings, $time) {
     });
 }
Ejemplo n.º 2
0
function generateNameOfCacheFile()
{
    if (!empty($GLOBALS['nitro.pagecache.file'])) {
        return $GLOBALS['nitro.pagecache.file'];
    }
    nitroEnableSession();
    if (empty($_SESSION['language']) && empty($_SESSION['currency'])) {
        $db = NitroDb::getInstance();
        $db->query("SET NAMES 'utf8'");
        $db->query("SET CHARACTER SET utf8");
        $db->query("SET CHARACTER_SET_CONNECTION=utf8");
        $db->query("SET SQL_MODE = ''");
        // In, when the site is opened for first time
        // Store
        if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == '1')) {
            $store_query = $db->query("SELECT * FROM " . DB_PREFIX . "store WHERE REPLACE(`ssl`, 'www.', '') = '" . $db->escape('https://' . str_replace('www.', '', $_SERVER['HTTP_HOST']) . rtrim(dirname($_SERVER['PHP_SELF']), '/.\\') . '/') . "'");
        } else {
            $store_query = $db->query("SELECT * FROM " . DB_PREFIX . "store WHERE REPLACE(`url`, 'www.', '') = '" . $db->escape('http://' . str_replace('www.', '', $_SERVER['HTTP_HOST']) . rtrim(dirname($_SERVER['PHP_SELF']), '/.\\') . '/') . "'");
        }
        $store_id = 0;
        if ($store_query->num_rows) {
            $result = $store_query->row;
            $store_id = (int) $result['store_id'];
        }
        $GLOBALS['nitro.store_id'] = $store_id;
        $resource = $db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE (`key`='config_language' OR `key`='config_currency') AND `store_id` = '" . $store_id . "'");
        if ($resource->num_rows) {
            $data = array();
            $config_language = 0;
            $config_currency = 0;
            foreach ($resource->rows as $result) {
                if (!empty($result['key']) && $result['key'] == 'config_language') {
                    $config_language = strtolower($result['value']);
                }
                if (!empty($result['key']) && $result['key'] == 'config_currency') {
                    $config_currency = strtolower($result['value']);
                }
            }
            if (isset($_SESSION)) {
                $_SESSION['language'] = $config_language;
                $_SESSION['currency'] = $config_currency;
            }
        }
    }
    $filename = getFullURL();
    $filename = str_replace(array('/', '?', ':', ';', '=', '&', '&', '.', '--', '%', '~', '-amp-'), '-', $filename);
    $default_language = !empty($_COOKIE['language']) ? $_COOKIE['language'] : '0';
    $default_currency = !empty($_COOKIE['currency']) ? $_COOKIE['currency'] : '0';
    $language = strtolower(!empty($_SESSION['language']) && is_string($_SESSION['language']) ? $_SESSION['language'] : $default_language);
    $currency = strtolower(!empty($_SESSION['currency']) && is_string($_SESSION['currency']) ? $_SESSION['currency'] : $default_currency);
    if (NITRO_DEBUG_MODE) {
        $cached_filename = $filename . '-' . $language . '-' . $currency . '.html';
    } else {
        $cached_filename = md5($filename . '-' . $language . '-' . $currency) . '.html';
    }
    if (mobileCheck()) {
        $cached_filename = 'mobile-' . $cached_filename;
    }
    $GLOBALS['nitro.pagecache.file'] = getSSLCachePrefix() . $cached_filename;
    return $GLOBALS['nitro.pagecache.file'];
}
Ejemplo n.º 3
0
 public function sendSMSCheckNO()
 {
     $phone = $this->post('phone');
     $code = randCode();
     $redis_key = $_SESSION['uid'] . ':sms';
     $code_key = $_SESSION['uid'] . ':sms_code';
     if (strlen($code) != 4) {
         echo '短信发送异常';
         exit;
     }
     if (mobileCheck($phone)) {
         echo '手机号码不对';
         exit;
     }
     //限制发送时间
     if ($this->cacheKV()->exists($redis_key)) {
         echo '请稍后再发送';
         exit;
     }
     $this->cacheKV()->setex($redis_key, $this->kvExTime(), 1);
     //发送成功标识,用来重发
     Doo::loadClassAt('SmsApi', 'default');
     $clapi = new SmsApi();
     $result = $clapi->sendSMS($phone, '您好,您的验证码是 ' . $code . ' <微微乐>', 'true');
     $result = $clapi->execResult($result);
     if ($result[1] == 0) {
         echo '发送成功';
         $this->cacheKV()->setex($code_key, $this->kvExTime() * 10, $code);
         //10分钟内有效
     } else {
         echo "发送失败{$result[1]}";
     }
     exit;
 }