diff --git a/app/Caches/AccessToken.php b/app/Caches/AccessToken.php
deleted file mode 100644
index f2222b27..00000000
--- a/app/Caches/AccessToken.php
+++ /dev/null
@@ -1,35 +0,0 @@
-lifetime;
- }
-
- public function getKey($id = null)
- {
- return "access_token:{$id}";
- }
-
- public function getContent($id = null)
- {
- $accessTokenRepo = new AccessTokenRepo();
-
- $accessToken = $accessTokenRepo->findById($id);
-
- if (!$accessToken) {
- return new \stdClass();
- }
-
- return $accessToken;
- }
-
-}
diff --git a/app/Http/Admin/Controllers/Controller.php b/app/Http/Admin/Controllers/Controller.php
index 92e7a606..a391bc86 100644
--- a/app/Http/Admin/Controllers/Controller.php
+++ b/app/Http/Admin/Controllers/Controller.php
@@ -3,16 +3,17 @@
namespace App\Http\Admin\Controllers;
use App\Models\Audit as AuditModel;
-use App\Services\AuthUser\Admin as AdminAuthUser;
+use App\Services\Auth\Admin as AdminAuth;
use App\Traits\Response as ResponseTrait;
use App\Traits\Security as SecurityTrait;
use Phalcon\Mvc\Dispatcher;
+use Yansongda\Supports\Collection;
class Controller extends \Phalcon\Mvc\Controller
{
/**
- * @var array
+ * @var Collection
*/
protected $authUser;
@@ -112,11 +113,11 @@ class Controller extends \Phalcon\Mvc\Controller
protected function getAuthUser()
{
/**
- * @var AdminAuthUser $authUser
+ * @var AdminAuth $auth
*/
- $authUser = $this->getDI()->get('auth');
+ $auth = $this->getDI()->get('auth');
- return $authUser->getAuthInfo();
+ return $auth->getAuthInfo();
}
}
diff --git a/app/Http/Admin/Module.php b/app/Http/Admin/Module.php
index d9090772..f07f31d3 100644
--- a/app/Http/Admin/Module.php
+++ b/app/Http/Admin/Module.php
@@ -2,7 +2,7 @@
namespace App\Http\Admin;
-use App\Services\AuthUser\Admin as AdminAuthUser;
+use App\Services\Auth\Admin as AdminAuth;
use Phalcon\DiInterface;
use Phalcon\Mvc\ModuleDefinitionInterface;
use Phalcon\Mvc\View;
@@ -27,7 +27,7 @@ class Module implements ModuleDefinitionInterface
});
$di->setShared('auth', function () {
- return new AdminAuthUser();
+ return new AdminAuth();
});
}
diff --git a/app/Http/Admin/Services/AlipayTest.php b/app/Http/Admin/Services/AlipayTest.php
index e48c9b18..9aff02cd 100644
--- a/app/Http/Admin/Services/AlipayTest.php
+++ b/app/Http/Admin/Services/AlipayTest.php
@@ -19,18 +19,14 @@ class AlipayTest extends PaymentTest
$qrcode = $alipayService->scan($trade);
- $result = $qrcode ?: false;
-
- return $result;
+ return $qrcode ?: false;
}
public function status($tradeNo)
{
$alipayService = new AlipayService();
- $result = $alipayService->status($tradeNo);
-
- return $result;
+ return $alipayService->status($tradeNo);
}
public function cancel($tradeNo)
diff --git a/app/Http/Admin/Services/AuthMenu.php b/app/Http/Admin/Services/AuthMenu.php
index 0e0427b3..f5458fda 100644
--- a/app/Http/Admin/Services/AuthMenu.php
+++ b/app/Http/Admin/Services/AuthMenu.php
@@ -2,7 +2,7 @@
namespace App\Http\Admin\Services;
-use App\Services\AuthUser\Admin as AdminAuthUser;
+use App\Services\Auth\Admin as AdminAuth;
use Phalcon\Mvc\User\Component;
class AuthMenu extends Component
@@ -115,11 +115,11 @@ class AuthMenu extends Component
protected function getAuthInfo()
{
/**
- * @var AdminAuthUser $authUser
+ * @var AdminAuth $auth
*/
- $authUser = $this->getDI()->get('auth');
+ $auth = $this->getDI()->get('auth');
- return $authUser->getAuthInfo();
+ return $auth->getAuthInfo();
}
}
diff --git a/app/Http/Admin/Services/PaymentTest.php b/app/Http/Admin/Services/PaymentTest.php
index b485f475..458c5789 100644
--- a/app/Http/Admin/Services/PaymentTest.php
+++ b/app/Http/Admin/Services/PaymentTest.php
@@ -4,6 +4,7 @@ namespace App\Http\Admin\Services;
use App\Models\Order as OrderModel;
use App\Models\Trade as TradeModel;
+use App\Services\Auth\Admin as AdminAuth;
abstract class PaymentTest extends Service
{
@@ -21,15 +22,17 @@ abstract class PaymentTest extends Service
public function createOrder()
{
/**
- * @var object $authUser
+ * @var AdminAuth $auth
*/
- $authUser = $this->getDI()->get('auth')->getAuthInfo();
+ $auth = $this->getDI()->get('auth');
+
+ $authUser = $auth->getAuthInfo();
$order = new OrderModel();
$order->subject = '测试 - 支付测试0.01元';
$order->amount = 0.01;
- $order->user_id = $authUser->id;
+ $order->user_id = $authUser['id'];
$order->item_type = OrderModel::ITEM_TEST;
$order->create();
diff --git a/app/Http/Admin/Services/Session.php b/app/Http/Admin/Services/Session.php
index 846eafee..04917606 100644
--- a/app/Http/Admin/Services/Session.php
+++ b/app/Http/Admin/Services/Session.php
@@ -2,7 +2,7 @@
namespace App\Http\Admin\Services;
-use App\Services\AuthUser as AuthUserService;
+use App\Services\Auth as AuthService;
use App\Validators\Account as AccountValidator;
use App\Validators\Security as SecurityValidator;
@@ -10,7 +10,7 @@ class Session extends Service
{
/**
- * @var AuthUserService
+ * @var AuthService
*/
protected $auth;
diff --git a/app/Http/Admin/Services/WxpayTest.php b/app/Http/Admin/Services/WxpayTest.php
index 04628706..14c26bc2 100644
--- a/app/Http/Admin/Services/WxpayTest.php
+++ b/app/Http/Admin/Services/WxpayTest.php
@@ -16,27 +16,21 @@ class WxpayTest extends PaymentTest
$qrcode = $wxpayService->scan($trade);
- $result = $qrcode ?: false;
-
- return $result;
+ return $qrcode ?: false;
}
public function status($tradeNo)
{
$wxpayService = new WxpayService();
- $result = $wxpayService->status($tradeNo);
-
- return $result;
+ return $wxpayService->status($tradeNo);
}
public function cancel($tradeNo)
{
$wxpayService = new WxpayService();
- $response = $wxpayService->close($tradeNo);
-
- return $response;
+ return $wxpayService->close($tradeNo);
}
}
diff --git a/app/Http/Admin/Views/index/index.volt b/app/Http/Admin/Views/index/index.volt
index e3d3857d..e6fd7d7d 100644
--- a/app/Http/Admin/Views/index/index.volt
+++ b/app/Http/Admin/Views/index/index.volt
@@ -29,7 +29,7 @@
-
- {{ auth_user['name'] }}
+ {{ auth_user.name }}
- 基本资料
- 安全设置
diff --git a/app/Http/Admin/Views/order/show.volt b/app/Http/Admin/Views/order/show.volt
index 38b2a044..4fb0cd5a 100644
--- a/app/Http/Admin/Views/order/show.volt
+++ b/app/Http/Admin/Views/order/show.volt
@@ -8,8 +8,7 @@
- 订单编号:{{ order.sn }}
- |
+ | 订单编号:{{ order.sn }} |
商品信息 |
diff --git a/app/Http/Api/Module.php b/app/Http/Api/Module.php
index 4cfa2df9..3ea77f24 100644
--- a/app/Http/Api/Module.php
+++ b/app/Http/Api/Module.php
@@ -2,7 +2,7 @@
namespace App\Http\Api;
-use App\Services\AuthUser\Web as ApiAuthUser;
+use App\Services\Auth\Api as ApiAuth;
use Phalcon\DiInterface;
use Phalcon\Mvc\ModuleDefinitionInterface;
use Phalcon\Mvc\View;
@@ -24,7 +24,7 @@ class Module implements ModuleDefinitionInterface
});
$di->setShared('auth', function () {
- return new ApiAuthUser();
+ return new ApiAuth();
});
}
diff --git a/app/Http/Api/Services/Login.php b/app/Http/Api/Services/Login.php
index 21bbab33..7ffc50fe 100644
--- a/app/Http/Api/Services/Login.php
+++ b/app/Http/Api/Services/Login.php
@@ -2,7 +2,7 @@
namespace App\Http\Api\Services;
-use App\Services\AuthUser\Api as ApiAuthUser;
+use App\Services\Auth\Api as ApiAuth;
use App\Validators\Account as AccountValidator;
class Login extends Service
@@ -14,9 +14,9 @@ class Login extends Service
$user = $validator->checkUserLogin($name, $password);
- $authUser = new ApiAuthUser();
+ $auth = new ApiAuth();
- return $authUser->saveAuthInfo($user);
+ return $auth->saveAuthInfo($user);
}
public function loginByVerify($name, $code)
@@ -25,9 +25,9 @@ class Login extends Service
$user = $validator->checkVerifyLogin($name, $code);
- $authUser = new ApiAuthUser();
+ $auth = new ApiAuth();
- return $authUser->saveAuthInfo($user);
+ return $auth->saveAuthInfo($user);
}
}
diff --git a/app/Http/Api/Services/Logout.php b/app/Http/Api/Services/Logout.php
index 6a553de3..76877ce8 100644
--- a/app/Http/Api/Services/Logout.php
+++ b/app/Http/Api/Services/Logout.php
@@ -2,16 +2,16 @@
namespace App\Http\Api\Services;
-use App\Services\AuthUser\Api as ApiAuthUser;
+use App\Services\Auth\Api as ApiAuth;
class Logout extends Service
{
public function logout()
{
- $authUser = new ApiAuthUser();
+ $auth = new ApiAuth();
- return $authUser->clearAuthInfo();
+ return $auth->clearAuthInfo();
}
}
diff --git a/app/Http/Html5/Module.php b/app/Http/Html5/Module.php
index b492a3af..3c27416e 100644
--- a/app/Http/Html5/Module.php
+++ b/app/Http/Html5/Module.php
@@ -2,7 +2,7 @@
namespace App\Http\Html5;
-use App\Services\AuthUser\Html5 as Html5AuthUser;
+use App\Services\Auth\Html5 as Html5Auth;
use Phalcon\DiInterface;
use Phalcon\Mvc\ModuleDefinitionInterface;
use Phalcon\Mvc\View;
@@ -24,7 +24,7 @@ class Module implements ModuleDefinitionInterface
});
$di->setShared('auth', function () {
- return new Html5AuthUser();
+ return new Html5Auth();
});
}
diff --git a/app/Http/Web/Controllers/Controller.php b/app/Http/Web/Controllers/Controller.php
index 59b73c9c..8dc90d38 100644
--- a/app/Http/Web/Controllers/Controller.php
+++ b/app/Http/Web/Controllers/Controller.php
@@ -2,8 +2,9 @@
namespace App\Http\Web\Controllers;
-use App\Caches\Config as ConfigCache;
use App\Caches\NavTreeList as NavTreeListCache;
+use App\Caches\SectionConfig as SectionConfigCache;
+use App\Services\Auth\Web as WebAuth;
use App\Traits\Response as ResponseTrait;
use App\Traits\Security as SecurityTrait;
use Phalcon\Mvc\Dispatcher;
@@ -46,6 +47,9 @@ class Controller extends \Phalcon\Mvc\Controller
protected function getAuthUser()
{
+ /**
+ * @var WebAuth $auth
+ */
$auth = $this->getDI()->get('auth');
return $auth->getAuthInfo();
@@ -53,16 +57,16 @@ class Controller extends \Phalcon\Mvc\Controller
protected function getNavList()
{
- $cache = new NavTreeListCache();
+ $treeListCache = new NavTreeListCache();
- return $cache->get();
+ return $treeListCache->get();
}
protected function getSiteConfig()
{
- $cache = new ConfigCache();
+ $sectionCache = new SectionConfigCache();
- return $cache->getSectionConfig('site');
+ return $sectionCache->get('site');
}
}
diff --git a/app/Http/Web/Module.php b/app/Http/Web/Module.php
index 080d0bfb..fb343324 100644
--- a/app/Http/Web/Module.php
+++ b/app/Http/Web/Module.php
@@ -2,7 +2,7 @@
namespace App\Http\Web;
-use App\Services\AuthUser\Web as WebAuthUser;
+use App\Services\Auth\Web as WebAuth;
use Phalcon\DiInterface;
use Phalcon\Mvc\ModuleDefinitionInterface;
use Phalcon\Mvc\View;
@@ -27,7 +27,7 @@ class Module implements ModuleDefinitionInterface
});
$di->setShared('auth', function () {
- return new WebAuthUser();
+ return new WebAuth();
});
}
diff --git a/app/Http/Web/Views/index/index.volt b/app/Http/Web/Views/index/index.volt
index 63185852..f9343108 100644
--- a/app/Http/Web/Views/index/index.volt
+++ b/app/Http/Web/Views/index/index.volt
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/Library/Util/Password.php b/app/Library/Util/Password.php
index b004a314..75e343d1 100644
--- a/app/Library/Util/Password.php
+++ b/app/Library/Util/Password.php
@@ -9,7 +9,7 @@ class Password
public static function salt()
{
- return Text::random();
+ return Text::random(Text::RANDOM_ALNUM, 8);
}
public static function hash($password, $salt)
diff --git a/app/Models/AccessToken.php b/app/Models/AccessToken.php
index c6b926d8..81bd7cd3 100644
--- a/app/Models/AccessToken.php
+++ b/app/Models/AccessToken.php
@@ -2,8 +2,6 @@
namespace App\Models;
-use App\Caches\AccessToken as AccessTokenCache;
-
class AccessToken extends Model
{
@@ -57,9 +55,7 @@ class AccessToken extends Model
public function beforeCreate()
{
$this->id = $this->getRandId($this->user_id);
-
$this->expiry_time = strtotime('+2 hours');
-
$this->create_time = time();
}
@@ -68,13 +64,6 @@ class AccessToken extends Model
$this->update_time = time();
}
- public function afterCreate()
- {
- $accessTokenCache = new AccessTokenCache();
-
- $accessTokenCache->rebuild($this->id);
- }
-
protected function getRandId($userId, $prefix = 'AT')
{
return md5("{$prefix}-{$userId}" . time() . rand(1000, 9999));
diff --git a/app/Models/Account.php b/app/Models/Account.php
index 0d3a8f6e..472c0370 100644
--- a/app/Models/Account.php
+++ b/app/Models/Account.php
@@ -84,18 +84,14 @@ class Account extends Model
public function beforeCreate()
{
$this->salt = Password::salt();
-
$this->password = Password::hash($this->password, $this->salt);
-
$this->create_time = time();
}
public function beforeUpdate()
{
if (!empty($this->password)) {
-
$this->salt = Password::salt();
-
$this->password = Password::hash($this->password, $this->salt);
}
@@ -105,10 +101,8 @@ class Account extends Model
public function afterCreate()
{
$user = new User();
-
$user->id = $this->id;
$user->name = "user_{$this->id}";
-
$user->create();
}
diff --git a/app/Models/Category.php b/app/Models/Category.php
index 426c36d6..016e990d 100644
--- a/app/Models/Category.php
+++ b/app/Models/Category.php
@@ -133,16 +133,13 @@ class Category extends Model
public function rebuildCache()
{
- $cache = new CategoryCache();
-
- $cache->rebuild($this->id);
+ $itemCache = new CategoryCache();
+ $itemCache->rebuild($this->id);
$listCache = new CategoryListCache();
-
$listCache->rebuild();
$treeListCache = new CategoryTreeListCache();
-
$treeListCache->rebuild();
}
diff --git a/app/Models/Chapter.php b/app/Models/Chapter.php
index a8c18704..01f5560e 100644
--- a/app/Models/Chapter.php
+++ b/app/Models/Chapter.php
@@ -243,16 +243,16 @@ class Chapter extends Model
switch ($course->model) {
case Course::MODEL_VOD:
- $model = new ChapterVod();
- $model->create($data);
+ $chapterVod = new ChapterVod();
+ $chapterVod->create($data);
break;
case Course::MODEL_LIVE:
- $model = new ChapterLive();
- $model->create($data);
+ $chapterLive = new ChapterLive();
+ $chapterLive->create($data);
break;
case Course::MODEL_READ:
- $model = new ChapterRead();
- $model->create($data);
+ $chapterRead = new ChapterRead();
+ $chapterRead->create($data);
break;
}
}
diff --git a/app/Models/ChapterRead.php b/app/Models/ChapterRead.php
index ab854765..446e8791 100644
--- a/app/Models/ChapterRead.php
+++ b/app/Models/ChapterRead.php
@@ -77,12 +77,10 @@ class ChapterRead extends Model
public static function formatTypes()
{
- $list = [
+ return [
self::FORMAT_HTML => 'html',
- self::FORMAT_MARKDOWN => 'format',
+ self::FORMAT_MARKDOWN => 'markdown',
];
-
- return $list;
}
}
diff --git a/app/Models/Course.php b/app/Models/Course.php
index 4286c0a6..09c3f79a 100644
--- a/app/Models/Course.php
+++ b/app/Models/Course.php
@@ -263,7 +263,6 @@ class Course extends Model
public function afterFetch()
{
$this->market_price = (float)$this->market_price;
-
$this->vip_price = (float)$this->vip_price;
if (!empty($this->attrs)) {
diff --git a/app/Models/Nav.php b/app/Models/Nav.php
index ea6d0e2b..048ce64f 100644
--- a/app/Models/Nav.php
+++ b/app/Models/Nav.php
@@ -157,9 +157,8 @@ class Nav extends Model
public function rebuildCache()
{
- $cache = new NavTreeListCache();
-
- $cache->rebuild();
+ $treeListCache = new NavTreeListCache();
+ $treeListCache->rebuild();
}
public static function positionTypes()
diff --git a/app/Models/Order.php b/app/Models/Order.php
index 838f0d89..7b657a3e 100644
--- a/app/Models/Order.php
+++ b/app/Models/Order.php
@@ -149,9 +149,7 @@ class Order extends Model
public function beforeCreate()
{
$this->status = self::STATUS_PENDING;
-
$this->sn = date('YmdHis') . rand(1000, 9999);
-
$this->create_time = time();
if (!empty($this->item_info)) {
diff --git a/app/Models/RefreshToken.php b/app/Models/RefreshToken.php
index 295db4ff..f1c606bc 100644
--- a/app/Models/RefreshToken.php
+++ b/app/Models/RefreshToken.php
@@ -55,9 +55,7 @@ class RefreshToken extends Model
public function beforeCreate()
{
$this->id = $this->getRandId($this->user_id);
-
$this->expiry_time = strtotime('+30 days');
-
$this->create_time = time();
}
@@ -70,4 +68,5 @@ class RefreshToken extends Model
{
return md5("{$prefix}-{$userId}" . time() . rand(1000, 9999));
}
+
}
diff --git a/app/Models/Refund.php b/app/Models/Refund.php
index dae692d1..2a728912 100644
--- a/app/Models/Refund.php
+++ b/app/Models/Refund.php
@@ -128,9 +128,7 @@ class Refund extends Model
public function beforeCreate()
{
$this->status = self::STATUS_PENDING;
-
$this->sn = date('YmdHis') . rand(1000, 9999);
-
$this->create_time = time();
}
diff --git a/app/Models/Slide.php b/app/Models/Slide.php
index 26d12515..ff7e9b83 100644
--- a/app/Models/Slide.php
+++ b/app/Models/Slide.php
@@ -131,8 +131,8 @@ class Slide extends Model
public function rebuildCache()
{
- $slideListCache = new SlideListCache();
- $slideListCache->rebuild();
+ $listCache = new SlideListCache();
+ $listCache->rebuild();
}
public static function targetTypes()
diff --git a/app/Models/Trade.php b/app/Models/Trade.php
index 6db424d8..531bd406 100644
--- a/app/Models/Trade.php
+++ b/app/Models/Trade.php
@@ -125,9 +125,7 @@ class Trade extends Model
public function beforeCreate()
{
$this->status = self::STATUS_PENDING;
-
$this->sn = date('YmdHis') . rand(1000, 9999);
-
$this->create_time = time();
}
diff --git a/app/Models/User.php b/app/Models/User.php
index 095ce3f1..cd370919 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -177,7 +177,6 @@ class User extends Model
public function afterCreate()
{
$maxUserIdCache = new MaxUserIdCache();
-
$maxUserIdCache->rebuild();
}
diff --git a/app/Providers/Router.php b/app/Providers/Router.php
index 03d4f3cc..0679d9ca 100644
--- a/app/Providers/Router.php
+++ b/app/Providers/Router.php
@@ -28,7 +28,7 @@ class Router extends Provider
foreach ($webFiles as $file) {
if (strpos($file, 'Controller.php')) {
$className = str_replace('Controller.php', '', $file);
- $router->addModuleResource('home', 'App\Http\Web\Controllers\\' . $className);
+ $router->addModuleResource('web', 'App\Http\Web\Controllers\\' . $className);
}
}
diff --git a/app/Providers/Session.php b/app/Providers/Session.php
index 2180d4d0..8b9eb6f1 100644
--- a/app/Providers/Session.php
+++ b/app/Providers/Session.php
@@ -19,7 +19,7 @@ class Session extends Provider
'host' => $config->redis->host,
'port' => $config->redis->port,
'auth' => $config->redis->auth,
- 'index' => $config->session->index,
+ 'index' => $config->redis->index,
'prefix' => $config->session->prefix,
'lifetime' => $config->session->lifetime,
'persistent' => $config->redis->persistent,
diff --git a/app/Services/AuthUser.php b/app/Services/Auth.php
similarity index 83%
rename from app/Services/AuthUser.php
rename to app/Services/Auth.php
index cb297c04..dada6e74 100644
--- a/app/Services/AuthUser.php
+++ b/app/Services/Auth.php
@@ -4,7 +4,7 @@ namespace App\Services;
use App\Models\User as UserModel;
-abstract class AuthUser extends Service
+abstract class Auth extends Service
{
abstract function saveAuthInfo(UserModel $user);
diff --git a/app/Services/AuthUser/Admin.php b/app/Services/Auth/Admin.php
similarity index 62%
rename from app/Services/AuthUser/Admin.php
rename to app/Services/Auth/Admin.php
index a0d8103b..8f55a4da 100644
--- a/app/Services/AuthUser/Admin.php
+++ b/app/Services/Auth/Admin.php
@@ -1,20 +1,16 @@
$user->id,
'name' => $user->name,
- 'avatar' => $user->avatar,
'routes' => $role->routes,
'root' => $root,
];
@@ -36,9 +31,6 @@ class Admin extends AuthUser
$this->session->set($authKey, $authInfo);
}
- /**
- * 清除会话
- */
public function clearAuthInfo()
{
$authKey = $this->getAuthKey();
@@ -46,43 +38,31 @@ class Admin extends AuthUser
$this->session->remove($authKey);
}
- /**
- * 读取会话
- *
- * @return mixed
- */
public function getAuthInfo()
{
$authKey = $this->getAuthKey();
- return $this->session->get($authKey);
+ $authInfo = $this->session->get($authKey);
+
+ $items = $authInfo ? $authInfo : [];
+
+ return new Collection($items);
}
- /**
- * 获取会话键值
- *
- * @return string
- */
public function getAuthKey()
{
- return 'admin_user_info';
+ return 'admin_auth_info';
}
- /**
- * 判断权限
- *
- * @param string $route
- * @return bool
- */
public function hasPermission($route)
{
$authUser = $this->getAuthInfo();
- if ($authUser->root) {
+ if ($authUser['root']) {
return true;
}
- if (in_array($route, $authUser->routes)) {
+ if (in_array($route, $authUser['routes'])) {
return true;
}
diff --git a/app/Services/Auth/Api.php b/app/Services/Auth/Api.php
new file mode 100644
index 00000000..85ec9c0f
--- /dev/null
+++ b/app/Services/Auth/Api.php
@@ -0,0 +1,89 @@
+user_id = $user->id;
+ $accessToken->create();
+
+ $refreshToken = new RefreshTokenModel();
+ $refreshToken->user_id = $user->id;
+ $refreshToken->create();
+
+ $authInfo = [
+ 'id' => $user->id,
+ 'name' => $user->name,
+ ];
+
+ $cache = $this->getCache();
+
+ $key = $this->getCacheKey($accessToken->id);
+
+ $cache->save($key, $authInfo, 2 * 3600);
+
+ return new Collection([
+ 'access_token' => $accessToken->id,
+ 'refresh_token' => $refreshToken->id,
+ 'expiry_time' => $accessToken->expiry_time,
+ ]);
+ }
+
+ public function clearAuthInfo()
+ {
+ $authToken = $this->getAuthToken();
+
+ $cache = $this->getCache();
+
+ $key = $this->getCacheKey($authToken);
+
+ $cache->delete($key);
+ }
+
+ public function getAuthInfo()
+ {
+ $authToken = $this->getAuthToken();
+
+ if (!$authToken) return null;
+
+ $cache = $this->getCache();
+
+ $key = $this->getCacheKey($authToken);
+
+ $authInfo = $cache->get($key);
+
+ $items = $authInfo ? $authInfo : [];
+
+ return new Collection($items);
+ }
+
+ protected function getAuthToken()
+ {
+ return $this->request->getHeader('Authorization');
+ }
+
+ protected function getCacheKey($token)
+ {
+ return "access_token:{$token}";
+ }
+
+ /**
+ * @return RedisCache
+ */
+ protected function getCache()
+ {
+ return $this->getDI()->get('cache');
+ }
+
+}
diff --git a/app/Services/Auth/Html5.php b/app/Services/Auth/Html5.php
new file mode 100644
index 00000000..c2a5efab
--- /dev/null
+++ b/app/Services/Auth/Html5.php
@@ -0,0 +1,47 @@
+getAuthKey();
+
+ $authInfo = [
+ 'id' => $user->id,
+ 'name' => $user->name,
+ ];
+
+ $this->session->set($authKey, $authInfo);
+ }
+
+ public function clearAuthInfo()
+ {
+ $authKey = $this->getAuthKey();
+
+ $this->session->remove($authKey);
+ }
+
+ public function getAuthInfo()
+ {
+ $authKey = $this->getAuthKey();
+
+ $authInfo = $this->session->get($authKey);
+
+ $items = $authInfo ? $authInfo : [];
+
+ return new Collection($items);
+ }
+
+ public function getAuthKey()
+ {
+ return 'html5_auth_info';
+ }
+
+}
diff --git a/app/Services/AuthUser/Web.php b/app/Services/Auth/Web.php
similarity index 56%
rename from app/Services/AuthUser/Web.php
rename to app/Services/Auth/Web.php
index c17311bf..8e261d45 100644
--- a/app/Services/AuthUser/Web.php
+++ b/app/Services/Auth/Web.php
@@ -1,11 +1,12 @@
getAuthKey();
- $authUser = new \stdClass();
+ $authInfo = new Collection([
+ 'id' => $user->id,
+ 'name' => $user->name,
+ ]);
- $authUser->id = $user->id;
- $authUser->name = $user->name;
- $authUser->avatar = $user->avatar;
- $authUser->admin_role = $user->admin_role;
- $authUser->edu_role = $user->edu_role;
-
- $this->session->set($authKey, $authUser);
+ $this->session->set($authKey, $authInfo);
}
/**
@@ -41,13 +39,17 @@ class Web extends AuthUser
/**
* 读取会话
*
- * @return mixed
+ * @return Collection
*/
public function getAuthInfo()
{
$authKey = $this->getAuthKey();
- return $this->session->get($authKey);
+ $authInfo = $this->session->get($authKey);
+
+ $items = $authInfo ? $authInfo : [];
+
+ return new Collection($items);
}
/**
@@ -57,7 +59,7 @@ class Web extends AuthUser
*/
public function getAuthKey()
{
- return 'web_user_info';
+ return 'web_auth_info';
}
}
diff --git a/app/Services/AuthUser/Api.php b/app/Services/AuthUser/Api.php
deleted file mode 100644
index 3cc98b27..00000000
--- a/app/Services/AuthUser/Api.php
+++ /dev/null
@@ -1,64 +0,0 @@
-user_id = $user->id;
- $accessToken->create();
-
- $refreshToken = new RefreshTokenModel();
- $refreshToken->user_id = $user->id;
- $refreshToken->create();
-
- return [
- 'access_token' => $accessToken->id,
- 'refresh_token' => $refreshToken->id,
- 'expiry_time' => $accessToken->expiry_time,
- ];
- }
-
- public function clearAuthInfo()
- {
- $authToken = $this->getAuthToken();
-
- $accessTokenCache = new AccessTokenCache();
-
- /**
- * @var AccessTokenModel $accessToken
- */
- $accessToken = $accessTokenCache->get($authToken);
-
- if ($accessToken) {
-
- $accessToken->update(['revoked' => 1]);
-
- $accessTokenCache->delete($authToken);
- }
- }
-
- public function getAuthInfo()
- {
- $authToken = $this->getAuthToken();
-
- $accessTokenCache = new AccessTokenCache();
-
- return $accessTokenCache->get($authToken);
- }
-
- public function getAuthToken()
- {
- return $this->request->getHeader('Authorization');
- }
-
-}
diff --git a/app/Services/AuthUser/Html5.php b/app/Services/AuthUser/Html5.php
deleted file mode 100644
index bc1a25ec..00000000
--- a/app/Services/AuthUser/Html5.php
+++ /dev/null
@@ -1,63 +0,0 @@
-getAuthKey();
-
- $authUser = new \stdClass();
-
- $authUser->id = $user->id;
- $authUser->name = $user->name;
- $authUser->avatar = $user->avatar;
- $authUser->admin_role = $user->admin_role;
- $authUser->edu_role = $user->edu_role;
-
- $this->session->set($authKey, $authUser);
- }
-
- /**
- * 清除会话
- */
- public function clearAuthInfo()
- {
- $authKey = $this->getAuthKey();
-
- $this->session->remove($authKey);
- }
-
- /**
- * 读取会话
- *
- * @return mixed
- */
- public function getAuthInfo()
- {
- $authKey = $this->getAuthKey();
-
- return $this->session->get($authKey);
- }
-
- /**
- * 获取会话键值
- *
- * @return string
- */
- public function getAuthKey()
- {
- return 'html5_user_info';
- }
-
-}
diff --git a/app/Services/Frontend/Account/PasswordReset.php b/app/Services/Frontend/Account/PasswordReset.php
index 70f9c341..388541e4 100644
--- a/app/Services/Frontend/Account/PasswordReset.php
+++ b/app/Services/Frontend/Account/PasswordReset.php
@@ -15,7 +15,7 @@ class PasswordReset extends Service
$accountValidator = new AccountValidator();
- $account = $accountValidator->checkLoginAccount($post['account']);
+ $account = $accountValidator->checkLoginName($post['account']);
$accountValidator->checkPassword($post['new_password']);
diff --git a/app/Services/Frontend/Account/Register.php b/app/Services/Frontend/Account/Register.php
index 167c3d15..2aa95df8 100644
--- a/app/Services/Frontend/Account/Register.php
+++ b/app/Services/Frontend/Account/Register.php
@@ -10,7 +10,7 @@ use App\Validators\Security as SecurityValidator;
class Register extends Service
{
- public function register()
+ public function registerByPhone()
{
$post = $this->request->getPost();
@@ -34,4 +34,28 @@ class Register extends Service
return $account;
}
+ public function registerByEmail()
+ {
+ $post = $this->request->getPost();
+
+ $securityValidator = new SecurityValidator();
+
+ $securityValidator->checkVerifyCode($post['email'], $post['verify_code']);
+
+ $accountValidator = new AccountValidator();
+
+ $data = [];
+
+ $data['email'] = $accountValidator->checkEmail($post['email']);
+ $data['password'] = $accountValidator->checkPassword($post['password']);
+
+ $accountValidator->checkIfEmailTaken($post['email']);
+
+ $account = new AccountModel();
+
+ $account->create($data);
+
+ return $account;
+ }
+
}
diff --git a/app/Services/Frontend/Service.php b/app/Services/Frontend/Service.php
index fe36f134..f06a2aa2 100644
--- a/app/Services/Frontend/Service.php
+++ b/app/Services/Frontend/Service.php
@@ -4,6 +4,7 @@ namespace App\Services\Frontend;
use App\Models\User as UserModel;
use App\Repos\User as UserRepo;
+use App\Services\Auth as AuthService;
use App\Validators\Validator as AppValidator;
use Phalcon\Mvc\User\Component;
@@ -11,15 +12,6 @@ class Service extends Component
{
public function getCurrentUser()
- {
- $userRepo = new UserRepo();
-
- $user = $userRepo->findById(100015);
-
- return $user;
- }
-
- public function getCurrentUser2()
{
$authUser = $this->getAuthUser();
@@ -29,21 +21,10 @@ class Service extends Component
$userRepo = new UserRepo();
- $user = $userRepo->findById($authUser->id);
-
- return $user;
+ return $userRepo->findById($authUser['id']);
}
public function getLoginUser()
- {
- $userRepo = new UserRepo();
-
- $user = $userRepo->findById(100015);
-
- return $user;
- }
-
- public function getLoginUser2()
{
$authUser = $this->getAuthUser();
@@ -51,15 +32,18 @@ class Service extends Component
$validator->checkAuthUser($authUser);
+ dd($authUser);
+
$userRepo = new UserRepo();
- $user = $userRepo->findById($authUser->id);
-
- return $user;
+ return $userRepo->findById($authUser['id']);
}
public function getAuthUser()
{
+ /**
+ * @var AuthService $auth
+ */
$auth = $this->getDI()->get('auth');
return $auth->getAuthInfo();
diff --git a/app/Services/VerifyCode.php b/app/Services/VerifyCode.php
index 7f2acf05..e32b1fed 100644
--- a/app/Services/VerifyCode.php
+++ b/app/Services/VerifyCode.php
@@ -41,6 +41,8 @@ class VerifyCode extends Service
$code = Text::random(Text::RANDOM_NUMERIC, 6);
$this->cache->save($key, $code, $lifetime);
+
+ return $code;
}
public function getMailCode($email, $lifetime = 300)
@@ -50,6 +52,8 @@ class VerifyCode extends Service
$code = Text::random(Text::RANDOM_NUMERIC, 6);
$this->cache->save($key, $code, $lifetime);
+
+ return $code;
}
public function checkSmsCode($phone, $code)
diff --git a/app/Traits/Auth.php b/app/Traits/Auth.php
index 58b23fca..35f71b6f 100644
--- a/app/Traits/Auth.php
+++ b/app/Traits/Auth.php
@@ -4,7 +4,7 @@ namespace App\Traits;
use App\Models\User as UserModel;
use App\Repos\User as UserRepo;
-use App\Services\AuthUser as AuthUserService;
+use App\Services\Auth as AuthService;
use App\Validators\Validator as AppValidator;
use Phalcon\Di;
@@ -50,7 +50,7 @@ trait Auth
public function getAuthUser()
{
/**
- * @var AuthUserService $auth
+ * @var AuthService $auth
*/
$auth = Di::getDefault()->get('auth');
diff --git a/app/Validators/Account.php b/app/Validators/Account.php
index 972980d6..740a7a55 100644
--- a/app/Validators/Account.php
+++ b/app/Validators/Account.php
@@ -6,6 +6,7 @@ use App\Exceptions\BadRequest as BadRequestException;
use App\Exceptions\Forbidden as ForbiddenException;
use App\Library\Util\Password as PasswordUtil;
use App\Library\Validator\Common as CommonValidator;
+use App\Models\Account as AccountModel;
use App\Repos\Account as AccountRepo;
use App\Repos\User as UserRepo;
@@ -39,6 +40,15 @@ class Account extends Validator
return $password;
}
+ public function checkOriginPassword(AccountModel $account, $password)
+ {
+ $hash = PasswordUtil::hash($password, $account->salt);
+
+ if ($hash != $account->password) {
+ throw new BadRequestException('account.origin_password_incorrect');
+ }
+ }
+
public function checkIfPhoneTaken($phone)
{
$accountRepo = new AccountRepo();
@@ -61,7 +71,7 @@ class Account extends Validator
}
}
- public function checkLoginAccount($name)
+ public function checkLoginName($name)
{
$accountRepo = new AccountRepo();
@@ -74,28 +84,19 @@ class Account extends Validator
}
if (!$account) {
- throw new BadRequestException('account.not_found');
+ throw new BadRequestException('account.login_name_incorrect');
}
return $account;
}
- public function checkOriginPassword($account, $password)
- {
- $hash = PasswordUtil::hash($password, $account->salt);
-
- if ($hash != $account->password) {
- throw new BadRequestException('account.origin_password_incorrect');
- }
- }
-
public function checkVerifyLogin($name, $code)
{
$security = new Security();
$security->checkVerifyCode($name, $code);
- $account = $this->checkLoginAccount($name);
+ $account = $this->checkLoginName($name);
$userRepo = new UserRepo();
@@ -104,19 +105,7 @@ class Account extends Validator
public function checkUserLogin($name, $password)
{
- $accountRepo = new AccountRepo();
-
- $account = null;
-
- if (CommonValidator::email($name)) {
- $account = $accountRepo->findByEmail($name);
- } elseif (CommonValidator::phone($name)) {
- $account = $accountRepo->findByPhone($name);
- }
-
- if (!$account) {
- throw new BadRequestException('account.login_account_incorrect');
- }
+ $account = $this->checkLoginName($name);
$hash = PasswordUtil::hash($password, $account->salt);
diff --git a/app/Validators/User.php b/app/Validators/User.php
index 1f1e8a0b..8b0f12c9 100644
--- a/app/Validators/User.php
+++ b/app/Validators/User.php
@@ -9,6 +9,7 @@ use App\Library\Validator\Common as CommonValidator;
use App\Models\User as UserModel;
use App\Repos\Role as RoleRepo;
use App\Repos\User as UserRepo;
+use App\Services\Auth\Admin as AdminAuth;
class User extends Validator
{
@@ -181,11 +182,15 @@ class User extends Validator
public function checkIfCanEditUser($user)
{
+ /**
+ * @var AdminAuth $auth
+ */
$auth = $this->getDI()->get('auth');
$authUser = $auth->getAuthInfo();
- if ($authUser->id) {
+ if ($authUser['id']) {
+
}
}
diff --git a/app/Validators/Validator.php b/app/Validators/Validator.php
index 3f142593..f12f66ea 100644
--- a/app/Validators/Validator.php
+++ b/app/Validators/Validator.php
@@ -9,18 +9,9 @@ use Phalcon\Mvc\User\Component;
class Validator extends Component
{
- public function checkAuthToken($token)
- {
- if (!$token) {
- throw new UnauthorizedException('sys.invalid_auth_token');
- }
-
- return $token;
- }
-
public function checkAuthUser($user)
{
- if (!$user) {
+ if (empty($user['id'])) {
throw new UnauthorizedException('sys.auth_user_failed');
}
diff --git a/bootstrap/HttpKernel.php b/bootstrap/HttpKernel.php
index e9206756..8da08da6 100644
--- a/bootstrap/HttpKernel.php
+++ b/bootstrap/HttpKernel.php
@@ -104,7 +104,7 @@ class HttpKernel extends Kernel
'className' => 'App\Http\Web\Module',
'path' => app_path('Http/Web/Module.php'),
],
- 'mobile' => [
+ 'html5' => [
'className' => 'App\Http\Html5\Module',
'path' => app_path('Http/Html5/Module.php'),
],
diff --git a/composer.json b/composer.json
index d9ca405e..2a57b207 100644
--- a/composer.json
+++ b/composer.json
@@ -9,6 +9,7 @@
"swiftmailer/swiftmailer": "^6.0",
"peppeocchi/php-cron-scheduler": "^2.4",
"yansongda/pay": "^2.8",
+ "yansongda/supports": "^2.0",
"tencentcloud/tencentcloud-sdk-php": "3.*",
"qcloudsms/qcloudsms_php": "0.1.*",
"qcloud/cos-sdk-v5": "2.*",
diff --git a/composer.lock b/composer.lock
index 0bc66e84..6f010676 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1,63 +1,63 @@
{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
- "This file is @generated automatically"
- ],
- "content-hash": "f77081b03bbccc02f9356f839a178d81",
- "packages": [
+ "_readme": [
+ "This file locks the dependencies of your project to a known state",
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
+ "This file is @generated automatically"
+ ],
+ "content-hash": "1de77fca92539b23fbdbad81127bafd1",
+ "packages": [
+ {
+ "name": "aferrandini/phpqrcode",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/aferrandini/PHPQRCode.git",
+ "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/aferrandini/PHPQRCode/zipball/3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
+ "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-0": {
+ "PHPQRCode": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.jp/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
{
- "name": "aferrandini/phpqrcode",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/aferrandini/PHPQRCode.git",
- "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/aferrandini/PHPQRCode/zipball/3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
- "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
- "shasum": "",
- "mirrors": [
- {
- "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
- "preferred": true
- }
- ]
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "PHPQRCode": "lib/"
- }
- },
- "notification-url": "https://packagist.jp/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ariel Ferrandini",
- "email": "arielferrandini@gmail.com",
- "homepage": "http://www.ferrandini.com/",
- "role": "Developer"
- }
- ],
- "description": "PHPQRCode porting and changed for PHP 5.3 compatibility",
- "homepage": "https://github.com/aferrandini/PHPQRCode",
- "keywords": [
- "barcode",
- "php",
- "qrcode"
- ],
- "abandoned": "endroid/qr-code",
- "time": "2013-07-08T09:39:08+00:00"
- },
- {
+ "name": "Ariel Ferrandini",
+ "email": "arielferrandini@gmail.com",
+ "homepage": "http://www.ferrandini.com/",
+ "role": "Developer"
+ }
+ ],
+ "description": "PHPQRCode porting and changed for PHP 5.3 compatibility",
+ "homepage": "https://github.com/aferrandini/PHPQRCode",
+ "keywords": [
+ "barcode",
+ "php",
+ "qrcode"
+ ],
+ "abandoned": "endroid/qr-code",
+ "time": "2013-07-08T09:39:08+00:00"
+ },
+ {
"name": "doctrine/lexer",
"version": "1.1.0",
"source": {
@@ -66,9 +66,9 @@
"reference": "e17f069ede36f7534b95adec71910ed1b49c74ea"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/lexer/zipball/e17f069ede36f7534b95adec71910ed1b49c74ea",
- "reference": "e17f069ede36f7534b95adec71910ed1b49c74ea",
+ "type": "zip",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/e17f069ede36f7534b95adec71910ed1b49c74ea",
+ "reference": "e17f069ede36f7534b95adec71910ed1b49c74ea",
"shasum": "",
"mirrors": [
{
@@ -134,9 +134,9 @@
"reference": "92dd169c32f6f55ba570c309d83f5209cefb5e23"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/92dd169c32f6f55ba570c309d83f5209cefb5e23",
- "reference": "92dd169c32f6f55ba570c309d83f5209cefb5e23",
+ "type": "zip",
+ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/92dd169c32f6f55ba570c309d83f5209cefb5e23",
+ "reference": "92dd169c32f6f55ba570c309d83f5209cefb5e23",
"shasum": "",
"mirrors": [
{
@@ -198,9 +198,9 @@
"reference": "2aaa2521a8f8269d6f5dfc13fe2af12c76921034"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/command/zipball/2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
- "reference": "2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/command/zipball/2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
+ "reference": "2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
"shasum": "",
"mirrors": [
{
@@ -257,9 +257,9 @@
"reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/407b0cb880ace85c9b63c5f9551db498cb2d50ba",
- "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba",
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/407b0cb880ace85c9b63c5f9551db498cb2d50ba",
+ "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba",
"shasum": "",
"mirrors": [
{
@@ -328,9 +328,9 @@
"reference": "9e3abf20161cbf662d616cbb995f2811771759f7"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle-services/zipball/9e3abf20161cbf662d616cbb995f2811771759f7",
- "reference": "9e3abf20161cbf662d616cbb995f2811771759f7",
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/guzzle-services/zipball/9e3abf20161cbf662d616cbb995f2811771759f7",
+ "reference": "9e3abf20161cbf662d616cbb995f2811771759f7",
"shasum": "",
"mirrors": [
{
@@ -394,9 +394,9 @@
"reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646",
- "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646",
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646",
+ "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646",
"shasum": "",
"mirrors": [
{
@@ -451,9 +451,9 @@
"reference": "239400de7a173fe9901b9ac7c06497751f00727a"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a",
- "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a",
+ "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
"shasum": "",
"mirrors": [
{
@@ -528,9 +528,9 @@
"reference": "d2faba65b9b4c0c0ea6e8b2ad5bafdefcbf3db87"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hightman/xs-sdk-php/zipball/d2faba65b9b4c0c0ea6e8b2ad5bafdefcbf3db87",
- "reference": "d2faba65b9b4c0c0ea6e8b2ad5bafdefcbf3db87",
+ "type": "zip",
+ "url": "https://api.github.com/repos/hightman/xs-sdk-php/zipball/d2faba65b9b4c0c0ea6e8b2ad5bafdefcbf3db87",
+ "reference": "d2faba65b9b4c0c0ea6e8b2ad5bafdefcbf3db87",
"shasum": "",
"mirrors": [
{
@@ -592,9 +592,9 @@
"reference": "68545165e19249013afd1d6f7485aecff07a2d22"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/68545165e19249013afd1d6f7485aecff07a2d22",
- "reference": "68545165e19249013afd1d6f7485aecff07a2d22",
+ "type": "zip",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/68545165e19249013afd1d6f7485aecff07a2d22",
+ "reference": "68545165e19249013afd1d6f7485aecff07a2d22",
"shasum": "",
"mirrors": [
{
@@ -679,9 +679,9 @@
"reference": "9504fa9ea681b586028adaaa0877db4aecf32bad"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/mtdowling/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad",
- "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad",
+ "type": "zip",
+ "url": "https://api.github.com/repos/mtdowling/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad",
+ "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad",
"shasum": "",
"mirrors": [
{
@@ -708,18 +708,18 @@
],
"authors": [
{
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
+ "name": "Michael Dowling",
+ "email": "mtdowling@gmail.com",
+ "homepage": "https://github.com/mtdowling"
}
],
- "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due",
- "keywords": [
- "cron",
- "schedule"
- ],
+ "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due",
+ "keywords": [
+ "cron",
+ "schedule"
+ ],
"abandoned": "dragonmantank/cron-expression",
- "time": "2017-01-23T04:29:33+00:00"
+ "time": "2017-01-23T04:29:33+00:00"
},
{
"name": "peppeocchi/php-cron-scheduler",
@@ -730,9 +730,9 @@
"reference": "1b18892fdd4f9c913107fda1544ac402eb7ec6e5"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/peppeocchi/php-cron-scheduler/zipball/1b18892fdd4f9c913107fda1544ac402eb7ec6e5",
- "reference": "1b18892fdd4f9c913107fda1544ac402eb7ec6e5",
+ "type": "zip",
+ "url": "https://api.github.com/repos/peppeocchi/php-cron-scheduler/zipball/1b18892fdd4f9c913107fda1544ac402eb7ec6e5",
+ "reference": "1b18892fdd4f9c913107fda1544ac402eb7ec6e5",
"shasum": "",
"mirrors": [
{
@@ -791,9 +791,9 @@
"reference": "4883d9009a9d651308bfc201a0e9440c0ff692e2"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phalcon/incubator/zipball/4883d9009a9d651308bfc201a0e9440c0ff692e2",
- "reference": "4883d9009a9d651308bfc201a0e9440c0ff692e2",
+ "type": "zip",
+ "url": "https://api.github.com/repos/phalcon/incubator/zipball/4883d9009a9d651308bfc201a0e9440c0ff692e2",
+ "reference": "4883d9009a9d651308bfc201a0e9440c0ff692e2",
"shasum": "",
"mirrors": [
{
@@ -866,9 +866,9 @@
"reference": "d11b50ad223250cf17b86e38383413f5a6764bf8"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8",
- "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8",
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8",
+ "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8",
"shasum": "",
"mirrors": [
{
@@ -918,9 +918,9 @@
"reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
+ "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
"shasum": "",
"mirrors": [
{
@@ -974,9 +974,9 @@
"reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
- "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
+ "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
"shasum": "",
"mirrors": [
{
@@ -1027,9 +1027,9 @@
"reference": "a8ac2dc1f58ddb36e5d702d19f9d7cb8d6f1dc5e"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/tencentyun/cos-php-sdk-v5/zipball/a8ac2dc1f58ddb36e5d702d19f9d7cb8d6f1dc5e",
- "reference": "a8ac2dc1f58ddb36e5d702d19f9d7cb8d6f1dc5e",
+ "type": "zip",
+ "url": "https://api.github.com/repos/tencentyun/cos-php-sdk-v5/zipball/a8ac2dc1f58ddb36e5d702d19f9d7cb8d6f1dc5e",
+ "reference": "a8ac2dc1f58ddb36e5d702d19f9d7cb8d6f1dc5e",
"shasum": "",
"mirrors": [
{
@@ -1080,9 +1080,9 @@
"reference": "48822045772d343b93c3d505d8a187cd51153c5a"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/qcloudsms/qcloudsms_php/zipball/48822045772d343b93c3d505d8a187cd51153c5a",
- "reference": "48822045772d343b93c3d505d8a187cd51153c5a",
+ "type": "zip",
+ "url": "https://api.github.com/repos/qcloudsms/qcloudsms_php/zipball/48822045772d343b93c3d505d8a187cd51153c5a",
+ "reference": "48822045772d343b93c3d505d8a187cd51153c5a",
"shasum": "",
"mirrors": [
{
@@ -1122,9 +1122,9 @@
"reference": "120b605dfeb996808c31b6477290a714d356e822"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822",
- "reference": "120b605dfeb996808c31b6477290a714d356e822",
+ "type": "zip",
+ "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822",
+ "reference": "120b605dfeb996808c31b6477290a714d356e822",
"shasum": "",
"mirrors": [
{
@@ -1168,9 +1168,9 @@
"reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a",
- "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a",
+ "type": "zip",
+ "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a",
+ "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a",
"shasum": "",
"mirrors": [
{
@@ -1236,9 +1236,9 @@
"reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/429d0a1451d4c9c4abe1959b2986b88794b9b7d2",
- "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/429d0a1451d4c9c4abe1959b2986b88794b9b7d2",
+ "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2",
"shasum": "",
"mirrors": [
{
@@ -1312,9 +1312,9 @@
"reference": "c61766f4440ca687de1084a5c00b08e167a2575c"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/c61766f4440ca687de1084a5c00b08e167a2575c",
- "reference": "c61766f4440ca687de1084a5c00b08e167a2575c",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/c61766f4440ca687de1084a5c00b08e167a2575c",
+ "reference": "c61766f4440ca687de1084a5c00b08e167a2575c",
"shasum": "",
"mirrors": [
{
@@ -1376,9 +1376,9 @@
"reference": "d804bea118ff340a12e22a79f9c7e7eb56b35adc"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d804bea118ff340a12e22a79f9c7e7eb56b35adc",
- "reference": "d804bea118ff340a12e22a79f9c7e7eb56b35adc",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d804bea118ff340a12e22a79f9c7e7eb56b35adc",
+ "reference": "d804bea118ff340a12e22a79f9c7e7eb56b35adc",
"shasum": "",
"mirrors": [
{
@@ -1437,9 +1437,9 @@
"reference": "987a05df1c6ac259b34008b932551353f4f408df"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/mime/zipball/987a05df1c6ac259b34008b932551353f4f408df",
- "reference": "987a05df1c6ac259b34008b932551353f4f408df",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/mime/zipball/987a05df1c6ac259b34008b932551353f4f408df",
+ "reference": "987a05df1c6ac259b34008b932551353f4f408df",
"shasum": "",
"mirrors": [
{
@@ -1502,9 +1502,9 @@
"reference": "685968b11e61a347c18bf25db32effa478be610f"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/685968b11e61a347c18bf25db32effa478be610f",
- "reference": "685968b11e61a347c18bf25db32effa478be610f",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/685968b11e61a347c18bf25db32effa478be610f",
+ "reference": "685968b11e61a347c18bf25db32effa478be610f",
"shasum": "",
"mirrors": [
{
@@ -1567,9 +1567,9 @@
"reference": "6af626ae6fa37d396dc90a399c0ff08e5cfc45b2"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/6af626ae6fa37d396dc90a399c0ff08e5cfc45b2",
- "reference": "6af626ae6fa37d396dc90a399c0ff08e5cfc45b2",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/6af626ae6fa37d396dc90a399c0ff08e5cfc45b2",
+ "reference": "6af626ae6fa37d396dc90a399c0ff08e5cfc45b2",
"shasum": "",
"mirrors": [
{
@@ -1635,9 +1635,9 @@
"reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17",
- "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17",
+ "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17",
"shasum": "",
"mirrors": [
{
@@ -1700,9 +1700,9 @@
"reference": "04ce3335667451138df4307d6a9b61565560199e"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/04ce3335667451138df4307d6a9b61565560199e",
- "reference": "04ce3335667451138df4307d6a9b61565560199e",
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/04ce3335667451138df4307d6a9b61565560199e",
+ "reference": "04ce3335667451138df4307d6a9b61565560199e",
"shasum": "",
"mirrors": [
{
@@ -1761,9 +1761,9 @@
"reference": "71164956c234368c65c00e321e96f6dbd0f8d9c0"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/TencentCloud/tencentcloud-sdk-php/zipball/71164956c234368c65c00e321e96f6dbd0f8d9c0",
- "reference": "71164956c234368c65c00e321e96f6dbd0f8d9c0",
+ "type": "zip",
+ "url": "https://api.github.com/repos/TencentCloud/tencentcloud-sdk-php/zipball/71164956c234368c65c00e321e96f6dbd0f8d9c0",
+ "reference": "71164956c234368c65c00e321e96f6dbd0f8d9c0",
"shasum": "",
"mirrors": [
{
@@ -1811,9 +1811,9 @@
"reference": "9c6ad8eadc23294b1c66d92876c11f13c5d4cf48"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/WhichBrowser/Parser-PHP/zipball/9c6ad8eadc23294b1c66d92876c11f13c5d4cf48",
- "reference": "9c6ad8eadc23294b1c66d92876c11f13c5d4cf48",
+ "type": "zip",
+ "url": "https://api.github.com/repos/WhichBrowser/Parser-PHP/zipball/9c6ad8eadc23294b1c66d92876c11f13c5d4cf48",
+ "reference": "9c6ad8eadc23294b1c66d92876c11f13c5d4cf48",
"shasum": "",
"mirrors": [
{
@@ -1876,9 +1876,9 @@
"reference": "38b44c95f21cd340b5a9cff3987ddb2abb9a2a38"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/walkor/GatewayWorker/zipball/38b44c95f21cd340b5a9cff3987ddb2abb9a2a38",
- "reference": "38b44c95f21cd340b5a9cff3987ddb2abb9a2a38",
+ "type": "zip",
+ "url": "https://api.github.com/repos/walkor/GatewayWorker/zipball/38b44c95f21cd340b5a9cff3987ddb2abb9a2a38",
+ "reference": "38b44c95f21cd340b5a9cff3987ddb2abb9a2a38",
"shasum": "",
"mirrors": [
{
@@ -1916,9 +1916,9 @@
"reference": "488f108f9e446f31bac4d689bb9f9fe3705862cf"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/walkor/Workerman/zipball/488f108f9e446f31bac4d689bb9f9fe3705862cf",
- "reference": "488f108f9e446f31bac4d689bb9f9fe3705862cf",
+ "type": "zip",
+ "url": "https://api.github.com/repos/walkor/Workerman/zipball/488f108f9e446f31bac4d689bb9f9fe3705862cf",
+ "reference": "488f108f9e446f31bac4d689bb9f9fe3705862cf",
"shasum": "",
"mirrors": [
{
@@ -1959,26 +1959,26 @@
],
"time": "2019-09-06T03:42:47+00:00"
},
- {
- "name": "xiaochong0302/ip2region",
- "version": "v1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/xiaochong0302/ip2region.git",
- "reference": "3cb3c50fa9e2c49115e40252f6b651437712a4e9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/xiaochong0302/ip2region/zipball/3cb3c50fa9e2c49115e40252f6b651437712a4e9",
- "reference": "3cb3c50fa9e2c49115e40252f6b651437712a4e9",
- "shasum": "",
- "mirrors": [
- {
- "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
- "preferred": true
- }
- ]
- },
+ {
+ "name": "xiaochong0302/ip2region",
+ "version": "v1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/xiaochong0302/ip2region.git",
+ "reference": "3cb3c50fa9e2c49115e40252f6b651437712a4e9"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/xiaochong0302/ip2region/zipball/3cb3c50fa9e2c49115e40252f6b651437712a4e9",
+ "reference": "3cb3c50fa9e2c49115e40252f6b651437712a4e9",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
"require": {
"php": ">=7.0"
},
@@ -2013,9 +2013,9 @@
"reference": "841999b65f97466ed1b405c52400c0c73aeaa3b5"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/yansongda/pay/zipball/841999b65f97466ed1b405c52400c0c73aeaa3b5",
- "reference": "841999b65f97466ed1b405c52400c0c73aeaa3b5",
+ "type": "zip",
+ "url": "https://api.github.com/repos/yansongda/pay/zipball/841999b65f97466ed1b405c52400c0c73aeaa3b5",
+ "reference": "841999b65f97466ed1b405c52400c0c73aeaa3b5",
"shasum": "",
"mirrors": [
{
@@ -2062,26 +2062,26 @@
],
"time": "2019-09-21T15:05:57+00:00"
},
- {
- "name": "yansongda/supports",
- "version": "v2.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/yansongda/supports.git",
- "reference": "d4742562cf0453d127dc064334ad6dc3f86d247d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/yansongda/supports/zipball/d4742562cf0453d127dc064334ad6dc3f86d247d",
- "reference": "d4742562cf0453d127dc064334ad6dc3f86d247d",
- "shasum": "",
- "mirrors": [
- {
- "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
- "preferred": true
- }
- ]
- },
+ {
+ "name": "yansongda/supports",
+ "version": "v2.1.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/yansongda/supports.git",
+ "reference": "c114fe4502af60d8b7ea261b68a0ab5f17b39339"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/yansongda/supports/zipball/c114fe4502af60d8b7ea261b68a0ab5f17b39339",
+ "reference": "c114fe4502af60d8b7ea261b68a0ab5f17b39339",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
"require": {
"guzzlehttp/guzzle": "^6.2",
"monolog/monolog": "^1.23 || ^2.0",
@@ -2121,71 +2121,77 @@
"support",
"throttle"
],
- "time": "2019-09-21T14:56:18+00:00"
+ "time": "2019-12-30T02:00:50+00:00"
}
],
"packages-dev": [
- {
- "name": "cache/adapter-common",
- "version": "1.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-cache/adapter-common.git",
- "reference": "6320bb5f5574cb88438059b59f8708da6b6f1d32"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-cache/adapter-common/zipball/6320bb5f5574cb88438059b59f8708da6b6f1d32",
- "reference": "6320bb5f5574cb88438059b59f8708da6b6f1d32",
- "shasum": ""
- },
- "require": {
- "cache/tag-interop": "^1.0",
- "php": "^5.6 || ^7.0",
- "psr/cache": "^1.0",
- "psr/log": "^1.0",
- "psr/simple-cache": "^1.0"
- },
- "require-dev": {
- "cache/integration-tests": "^0.16",
- "phpunit/phpunit": "^5.7.21"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Cache\\Adapter\\Common\\": ""
- }
- },
- "notification-url": "https://packagist.jp/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Aaron Scherer",
- "email": "aequasi@gmail.com",
- "homepage": "https://github.com/aequasi"
- },
- {
- "name": "Tobias Nyholm",
- "email": "tobias.nyholm@gmail.com",
- "homepage": "https://github.com/Nyholm"
- }
- ],
- "description": "Common classes for PSR-6 adapters",
- "homepage": "http://www.php-cache.com/en/latest/",
- "keywords": [
- "cache",
- "psr-6",
- "tag"
- ],
- "time": "2018-07-08T13:04:33+00:00"
+ {
+ "name": "cache/adapter-common",
+ "version": "1.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-cache/adapter-common.git",
+ "reference": "6320bb5f5574cb88438059b59f8708da6b6f1d32"
},
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-cache/adapter-common/zipball/6320bb5f5574cb88438059b59f8708da6b6f1d32",
+ "reference": "6320bb5f5574cb88438059b59f8708da6b6f1d32",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
+ "require": {
+ "cache/tag-interop": "^1.0",
+ "php": "^5.6 || ^7.0",
+ "psr/cache": "^1.0",
+ "psr/log": "^1.0",
+ "psr/simple-cache": "^1.0"
+ },
+ "require-dev": {
+ "cache/integration-tests": "^0.16",
+ "phpunit/phpunit": "^5.7.21"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.1-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Cache\\Adapter\\Common\\": ""
+ }
+ },
+ "notification-url": "https://packagist.jp/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Aaron Scherer",
+ "email": "aequasi@gmail.com",
+ "homepage": "https://github.com/aequasi"
+ },
+ {
+ "name": "Tobias Nyholm",
+ "email": "tobias.nyholm@gmail.com",
+ "homepage": "https://github.com/Nyholm"
+ }
+ ],
+ "description": "Common classes for PSR-6 adapters",
+ "homepage": "http://www.php-cache.com/en/latest/",
+ "keywords": [
+ "cache",
+ "psr-6",
+ "tag"
+ ],
+ "time": "2018-07-08T13:04:33+00:00"
+ },
{
"name": "cache/filesystem-adapter",
"version": "1.0.0",
@@ -2198,7 +2204,13 @@
"type": "zip",
"url": "https://api.github.com/repos/php-cache/filesystem-adapter/zipball/d50680b6dabbe39f9831f5fc9efa61c09d936017",
"reference": "d50680b6dabbe39f9831f5fc9efa61c09d936017",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cache/adapter-common": "^1.0",
@@ -2266,7 +2278,13 @@
"type": "zip",
"url": "https://api.github.com/repos/php-cache/tag-interop/zipball/c7496dd81530f538af27b4f2713cde97bc292832",
"reference": "c7496dd81530f538af27b4f2713cde97bc292832",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^5.5 || ^7.0",
@@ -2310,19 +2328,25 @@
"time": "2017-03-13T09:14:27+00:00"
},
{
- "name": "cakephp/cache",
- "version": "3.8.7",
- "source": {
- "type": "git",
- "url": "https://github.com/cakephp/cache.git",
- "reference": "855a920c479925262575ec5b404010e22049098c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/cache/zipball/855a920c479925262575ec5b404010e22049098c",
- "reference": "855a920c479925262575ec5b404010e22049098c",
- "shasum": ""
- },
+ "name": "cakephp/cache",
+ "version": "3.8.7",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/cakephp/cache.git",
+ "reference": "855a920c479925262575ec5b404010e22049098c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/cache/zipball/855a920c479925262575ec5b404010e22049098c",
+ "reference": "855a920c479925262575ec5b404010e22049098c",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
"require": {
"cakephp/core": "^3.6.0",
"php": ">=5.6.0",
@@ -2362,10 +2386,16 @@
"reference": "3541cdd1739334fcbe301daed8d6cb9458903fdd"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/collection/zipball/3541cdd1739334fcbe301daed8d6cb9458903fdd",
- "reference": "3541cdd1739334fcbe301daed8d6cb9458903fdd",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/collection/zipball/3541cdd1739334fcbe301daed8d6cb9458903fdd",
+ "reference": "3541cdd1739334fcbe301daed8d6cb9458903fdd",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.6.0"
@@ -2408,10 +2438,16 @@
"reference": "e77b155f93fd63d1a944c07f27abc82651377956"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/core/zipball/e77b155f93fd63d1a944c07f27abc82651377956",
- "reference": "e77b155f93fd63d1a944c07f27abc82651377956",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/core/zipball/e77b155f93fd63d1a944c07f27abc82651377956",
+ "reference": "e77b155f93fd63d1a944c07f27abc82651377956",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/utility": "^3.6.0",
@@ -2458,10 +2494,16 @@
"reference": "c8a9123e8a393ac122bb0b51b100cafb3d34cece"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/database/zipball/c8a9123e8a393ac122bb0b51b100cafb3d34cece",
- "reference": "c8a9123e8a393ac122bb0b51b100cafb3d34cece",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/database/zipball/c8a9123e8a393ac122bb0b51b100cafb3d34cece",
+ "reference": "c8a9123e8a393ac122bb0b51b100cafb3d34cece",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/cache": "^3.6.0",
@@ -2506,10 +2548,16 @@
"reference": "e2fff5bd4adb650d565c853fb25380657e2d1dbb"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/datasource/zipball/e2fff5bd4adb650d565c853fb25380657e2d1dbb",
- "reference": "e2fff5bd4adb650d565c853fb25380657e2d1dbb",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/datasource/zipball/e2fff5bd4adb650d565c853fb25380657e2d1dbb",
+ "reference": "e2fff5bd4adb650d565c853fb25380657e2d1dbb",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/core": "^3.6.0",
@@ -2556,10 +2604,16 @@
"reference": "9194c5aebaf30d4e9541e5635fa16f8c373af2f3"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/log/zipball/9194c5aebaf30d4e9541e5635fa16f8c373af2f3",
- "reference": "9194c5aebaf30d4e9541e5635fa16f8c373af2f3",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/log/zipball/9194c5aebaf30d4e9541e5635fa16f8c373af2f3",
+ "reference": "9194c5aebaf30d4e9541e5635fa16f8c373af2f3",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/core": "^3.6.0",
@@ -2601,10 +2655,16 @@
"reference": "e60bf1dc7fbdbc0d717c950cbbeb3196d3bc0cf9"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/utility/zipball/e60bf1dc7fbdbc0d717c950cbbeb3196d3bc0cf9",
- "reference": "e60bf1dc7fbdbc0d717c950cbbeb3196d3bc0cf9",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/utility/zipball/e60bf1dc7fbdbc0d717c950cbbeb3196d3bc0cf9",
+ "reference": "e60bf1dc7fbdbc0d717c950cbbeb3196d3bc0cf9",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/core": "^3.6.0",
@@ -2645,43 +2705,49 @@
],
"time": "2019-11-21T14:18:54+00:00"
},
- {
- "name": "jaeger/g-http",
- "version": "V1.6.0",
- "source": {
- "type": "git",
- "url": "https://github.com/jae-jae/GHttp.git",
- "reference": "eb34d266a07c687aef45087370ef47d48321bd2e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/jae-jae/GHttp/zipball/eb34d266a07c687aef45087370ef47d48321bd2e",
- "reference": "eb34d266a07c687aef45087370ef47d48321bd2e",
- "shasum": ""
- },
- "require": {
- "cache/filesystem-adapter": "^1.0",
- "guzzlehttp/guzzle": "^6.2"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Jaeger\\": "src"
- }
- },
- "notification-url": "https://packagist.jp/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaeger",
- "email": "JaegerCode@gmail.com"
- }
- ],
- "description": "Simple Http client base on GuzzleHttp",
- "time": "2018-12-12T04:21:15+00:00"
+ {
+ "name": "jaeger/g-http",
+ "version": "V1.6.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/jae-jae/GHttp.git",
+ "reference": "eb34d266a07c687aef45087370ef47d48321bd2e"
},
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/jae-jae/GHttp/zipball/eb34d266a07c687aef45087370ef47d48321bd2e",
+ "reference": "eb34d266a07c687aef45087370ef47d48321bd2e",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
+ "require": {
+ "cache/filesystem-adapter": "^1.0",
+ "guzzlehttp/guzzle": "^6.2"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Jaeger\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.jp/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jaeger",
+ "email": "JaegerCode@gmail.com"
+ }
+ ],
+ "description": "Simple Http client base on GuzzleHttp",
+ "time": "2018-12-12T04:21:15+00:00"
+ },
{
"name": "jaeger/phpquery-single",
"version": "1.0.0",
@@ -2694,7 +2760,13 @@
"type": "zip",
"url": "https://api.github.com/repos/jae-jae/phpQuery-single/zipball/2d607a2bcfd8bcf5c42e83d6c66fedaf397c7c3f",
"reference": "2d607a2bcfd8bcf5c42e83d6c66fedaf397c7c3f",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.3.0"
@@ -2737,7 +2809,13 @@
"type": "zip",
"url": "https://api.github.com/repos/jae-jae/QueryList/zipball/46f564bc8b1a22b5dca7cd690b4af76e919b39f7",
"reference": "46f564bc8b1a22b5dca7cd690b4af76e919b39f7",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"jaeger/g-http": "^1.1",
@@ -2786,7 +2864,13 @@
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/8132daec326565036bc8e8d1876f77ec183a7bd6",
"reference": "8132daec326565036bc8e8d1876f77ec183a7bd6",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"ext-fileinfo": "*",
@@ -2859,19 +2943,25 @@
"time": "2020-01-04T16:30:31+00:00"
},
{
- "name": "odan/phinx-migrations-generator",
- "version": "4.6.0",
- "source": {
- "type": "git",
- "url": "https://github.com/odan/phinx-migrations-generator.git",
- "reference": "741aa0b8003a620968dcb77ee4d503d89dacce3a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/odan/phinx-migrations-generator/zipball/741aa0b8003a620968dcb77ee4d503d89dacce3a",
- "reference": "741aa0b8003a620968dcb77ee4d503d89dacce3a",
- "shasum": ""
- },
+ "name": "odan/phinx-migrations-generator",
+ "version": "4.6.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/odan/phinx-migrations-generator.git",
+ "reference": "741aa0b8003a620968dcb77ee4d503d89dacce3a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/odan/phinx-migrations-generator/zipball/741aa0b8003a620968dcb77ee4d503d89dacce3a",
+ "reference": "741aa0b8003a620968dcb77ee4d503d89dacce3a",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
"require": {
"php": "^7.1",
"riimu/kit-phpencoder": "^2.4",
@@ -2909,54 +2999,60 @@
],
"time": "2019-11-21T15:15:19+00:00"
},
- {
- "name": "phalcon/ide-stubs",
- "version": "v3.4.3",
- "source": {
- "type": "git",
- "url": "https://github.com/phalcon/ide-stubs.git",
- "reference": "65144f2b0fad32b182ccb062b1efc1b4edea5d44"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phalcon/ide-stubs/zipball/65144f2b0fad32b182ccb062b1efc1b4edea5d44",
- "reference": "65144f2b0fad32b182ccb062b1efc1b4edea5d44",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "notification-url": "https://packagist.jp/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Phalcon Team",
- "email": "team@phalconphp.com",
- "homepage": "https://phalconphp.com/en/team"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/phalcon/ide-stubs/graphs/contributors"
- }
- ],
- "description": "The most complete Phalcon Framework IDE stubs library which enables autocompletion in modern IDEs.",
- "homepage": "https://phalconphp.com",
- "keywords": [
- "Devtools",
- "Eclipse",
- "autocomplete",
- "ide",
- "netbeans",
- "phalcon",
- "phpstorm",
- "stub",
- "stubs"
- ],
- "time": "2018-12-09T14:11:06+00:00"
+ {
+ "name": "phalcon/ide-stubs",
+ "version": "v3.4.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phalcon/ide-stubs.git",
+ "reference": "65144f2b0fad32b182ccb062b1efc1b4edea5d44"
},
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phalcon/ide-stubs/zipball/65144f2b0fad32b182ccb062b1efc1b4edea5d44",
+ "reference": "65144f2b0fad32b182ccb062b1efc1b4edea5d44",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "notification-url": "https://packagist.jp/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Phalcon Team",
+ "email": "team@phalconphp.com",
+ "homepage": "https://phalconphp.com/en/team"
+ },
+ {
+ "name": "Contributors",
+ "homepage": "https://github.com/phalcon/ide-stubs/graphs/contributors"
+ }
+ ],
+ "description": "The most complete Phalcon Framework IDE stubs library which enables autocompletion in modern IDEs.",
+ "homepage": "https://phalconphp.com",
+ "keywords": [
+ "Devtools",
+ "Eclipse",
+ "autocomplete",
+ "ide",
+ "netbeans",
+ "phalcon",
+ "phpstorm",
+ "stub",
+ "stubs"
+ ],
+ "time": "2018-12-09T14:11:06+00:00"
+ },
{
"name": "psr/container",
"version": "1.0.0",
@@ -2966,10 +3062,16 @@
"reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
- "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.3.0"
@@ -3015,10 +3117,16 @@
"reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
- "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+ "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.3.0"
@@ -3063,10 +3171,16 @@
"reference": "7e876d25019c3f6c23321ab5ac1a55c72fcd0933"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Riimu/Kit-PHPEncoder/zipball/7e876d25019c3f6c23321ab5ac1a55c72fcd0933",
- "reference": "7e876d25019c3f6c23321ab5ac1a55c72fcd0933",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/Riimu/Kit-PHPEncoder/zipball/7e876d25019c3f6c23321ab5ac1a55c72fcd0933",
+ "reference": "7e876d25019c3f6c23321ab5ac1a55c72fcd0933",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.6.0"
@@ -3114,10 +3228,16 @@
"reference": "3c6a171b0455225cf42716dc4864feb620da716f"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cakephp/phinx/zipball/3c6a171b0455225cf42716dc4864feb620da716f",
- "reference": "3c6a171b0455225cf42716dc4864feb620da716f",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/cakephp/phinx/zipball/3c6a171b0455225cf42716dc4864feb620da716f",
+ "reference": "3c6a171b0455225cf42716dc4864feb620da716f",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"cakephp/collection": "^3.6",
@@ -3191,10 +3311,16 @@
"reference": "c0773efcc2c940ffbc4c34a0dba2836f2cf6dc9c"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/c0773efcc2c940ffbc4c34a0dba2836f2cf6dc9c",
- "reference": "c0773efcc2c940ffbc4c34a0dba2836f2cf6dc9c",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/config/zipball/c0773efcc2c940ffbc4c34a0dba2836f2cf6dc9c",
+ "reference": "c0773efcc2c940ffbc4c34a0dba2836f2cf6dc9c",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.2.5",
@@ -3255,10 +3381,16 @@
"reference": "f0aea3df20d15635b3cb9730ca5eea1c65b7f201"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/f0aea3df20d15635b3cb9730ca5eea1c65b7f201",
- "reference": "f0aea3df20d15635b3cb9730ca5eea1c65b7f201",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/console/zipball/f0aea3df20d15635b3cb9730ca5eea1c65b7f201",
+ "reference": "f0aea3df20d15635b3cb9730ca5eea1c65b7f201",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.1.3",
@@ -3331,10 +3463,16 @@
"reference": "1d71f670bc5a07b9ccc97dc44f932177a322d4e6"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/1d71f670bc5a07b9ccc97dc44f932177a322d4e6",
- "reference": "1d71f670bc5a07b9ccc97dc44f932177a322d4e6",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/1d71f670bc5a07b9ccc97dc44f932177a322d4e6",
+ "reference": "1d71f670bc5a07b9ccc97dc44f932177a322d4e6",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.2.5",
@@ -3381,10 +3519,16 @@
"reference": "f8f0b461be3385e56d6de3dbb5a0df24c0c275e3"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
- "reference": "f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
+ "reference": "f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.3.3"
@@ -3439,10 +3583,16 @@
"reference": "4b0e2222c55a25b4541305a053013d5647d3a25f"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/4b0e2222c55a25b4541305a053013d5647d3a25f",
- "reference": "4b0e2222c55a25b4541305a053013d5647d3a25f",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/4b0e2222c55a25b4541305a053013d5647d3a25f",
+ "reference": "4b0e2222c55a25b4541305a053013d5647d3a25f",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": ">=5.3.3"
@@ -3497,10 +3647,16 @@
"reference": "144c5e51266b281231e947b51223ba14acf1a749"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749",
- "reference": "144c5e51266b281231e947b51223ba14acf1a749",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749",
+ "reference": "144c5e51266b281231e947b51223ba14acf1a749",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.2.5",
@@ -3546,82 +3702,88 @@
],
"time": "2019-11-18T17:27:11+00:00"
},
- {
- "name": "symfony/var-dumper",
- "version": "v4.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/var-dumper.git",
- "reference": "be330f919bdb395d1e0c3f2bfb8948512d6bdd99"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/be330f919bdb395d1e0c3f2bfb8948512d6bdd99",
- "reference": "be330f919bdb395d1e0c3f2bfb8948512d6bdd99",
- "shasum": ""
- },
- "require": {
- "php": "^7.1.3",
- "symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php72": "~1.5"
- },
- "conflict": {
- "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
- "symfony/console": "<3.4"
- },
- "require-dev": {
- "ext-iconv": "*",
- "symfony/console": "^3.4|^4.0|^5.0",
- "symfony/process": "^4.4|^5.0",
- "twig/twig": "^1.34|^2.4|^3.0"
- },
- "suggest": {
- "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
- "ext-intl": "To show region name in time zone dump",
- "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
- },
- "bin": [
- "Resources/bin/var-dump-server"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.4-dev"
- }
- },
- "autoload": {
- "files": [
- "Resources/functions/dump.php"
- ],
- "psr-4": {
- "Symfony\\Component\\VarDumper\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.jp/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony mechanism for exploring and dumping PHP variables",
- "homepage": "https://symfony.com",
- "keywords": [
- "debug",
- "dump"
- ],
- "time": "2019-12-18T13:41:29+00:00"
+ {
+ "name": "symfony/var-dumper",
+ "version": "v4.4.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/var-dumper.git",
+ "reference": "be330f919bdb395d1e0c3f2bfb8948512d6bdd99"
},
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/be330f919bdb395d1e0c3f2bfb8948512d6bdd99",
+ "reference": "be330f919bdb395d1e0c3f2bfb8948512d6bdd99",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
+ },
+ "require": {
+ "php": "^7.1.3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-php72": "~1.5"
+ },
+ "conflict": {
+ "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
+ "symfony/console": "<3.4"
+ },
+ "require-dev": {
+ "ext-iconv": "*",
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/process": "^4.4|^5.0",
+ "twig/twig": "^1.34|^2.4|^3.0"
+ },
+ "suggest": {
+ "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
+ "ext-intl": "To show region name in time zone dump",
+ "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
+ },
+ "bin": [
+ "Resources/bin/var-dump-server"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.4-dev"
+ }
+ },
+ "autoload": {
+ "files": [
+ "Resources/functions/dump.php"
+ ],
+ "psr-4": {
+ "Symfony\\Component\\VarDumper\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.jp/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony mechanism for exploring and dumping PHP variables",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "debug",
+ "dump"
+ ],
+ "time": "2019-12-18T13:41:29+00:00"
+ },
{
"name": "symfony/yaml",
"version": "v5.0.1",
@@ -3631,10 +3793,16 @@
"reference": "51b684480184fa767b97e28eaca67664e48dd3e9"
},
"dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/51b684480184fa767b97e28eaca67664e48dd3e9",
- "reference": "51b684480184fa767b97e28eaca67664e48dd3e9",
- "shasum": ""
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/51b684480184fa767b97e28eaca67664e48dd3e9",
+ "reference": "51b684480184fa767b97e28eaca67664e48dd3e9",
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.2.5",
@@ -3670,16 +3838,16 @@
"authors": [
{
"name": "Fabien Potencier",
- "email": "fabien@symfony.com"
+ "email": "fabien@symfony.com"
},
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com",
- "time": "2019-11-18T17:27:11+00:00"
+ "description": "Symfony Yaml Component",
+ "homepage": "https://symfony.com",
+ "time": "2019-11-18T17:27:11+00:00"
},
{
"name": "tightenco/collect",
@@ -3693,7 +3861,13 @@
"type": "zip",
"url": "https://api.github.com/repos/tightenco/collect/zipball/c93a7039e6207ad533a09109838fe80933fcc72c",
"reference": "c93a7039e6207ad533a09109838fe80933fcc72c",
- "shasum": ""
+ "shasum": "",
+ "mirrors": [
+ {
+ "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
+ "preferred": true
+ }
+ ]
},
"require": {
"php": "^7.1.3",
@@ -3730,16 +3904,19 @@
"laravel"
],
"time": "2019-09-17T18:57:01+00:00"
- }
+ }
],
- "aliases": [],
- "minimum-stability": "stable",
+ "aliases": [],
+ "minimum-stability": "stable",
"stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
+ "prefer-stable": false,
+ "prefer-lowest": false,
"platform": {
- "ext-redis": "*",
+ "ext-phalcon": "~3.4",
+ "ext-redis": "~4.3",
+ "ext-pdo": "*",
"ext-json": "*"
},
- "platform-dev": []
+ "platform-dev": [],
+ "plugin-api-version": "1.1.0"
}
diff --git a/config/config.php.default b/config/config.php.default
index 5ac74c3a..00edbcb7 100644
--- a/config/config.php.default
+++ b/config/config.php.default
@@ -95,18 +95,13 @@ $config['redis']['lifetime'] = 7 * 86400;
/**
* 会话键前缀
*/
-$config['session']['prefix'] = '';
+$config['session']['prefix'] = ':session:';
/**
* 会话有效期(秒)
*/
$config['session']['lifetime'] = 2 * 3600;
-/**
- * redis库编号
- */
-$config['session']['index'] = 1;
-
/**
* 日志级别
*/
diff --git a/config/errors.php b/config/errors.php
index 6fbc0a6a..5a8b07b1 100644
--- a/config/errors.php
+++ b/config/errors.php
@@ -22,7 +22,7 @@ $error['security.invalid_verify_code'] = '无效的验证码';
*/
$error['account.not_found'] = '账号不存在';
$error['account.login_locked'] = '账号被锁定,无法登录';
-$error['account.login_account_incorrect'] = '登录账号不正确';
+$error['account.login_name_incorrect'] = '登录账号不正确';
$error['account.login_password_incorrect'] = '登录密码不正确';
$error['account.invalid_email'] = '无效的电子邮箱';
$error['account.invalid_phone'] = '无效的手机号';