mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-13 20:31:06 +03:30
Forgot Password
This commit is contained in:
@@ -1,11 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace App\Packages\Messaging\src\Facades;
|
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Facade;
|
|
||||||
use App\Packages\Messaging\src\Message;
|
|
||||||
|
|
||||||
class MessageResponse extends Facade {
|
|
||||||
|
|
||||||
protected static function getFacadeAccessor() { return Message::class; }
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Packages\Messaging\src;
|
|
||||||
|
|
||||||
class Message
|
|
||||||
{
|
|
||||||
public function success($data = null, $message = null, $title = null, $status = 'Success')
|
|
||||||
{
|
|
||||||
$message = isset($message) ? $message : trans('success_title');
|
|
||||||
$title = isset($title) ? $title : trans('success');
|
|
||||||
return response()->json(['status' => $status, 'message' => $message, 'title' => $title, 'data' => $data], 200);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function error($message = null, $title = null, $statusCode = 422, $status = 'Faild', $data = null)
|
|
||||||
{
|
|
||||||
$message = isset($message) ? $message : trans('messages.faild_message');
|
|
||||||
$title = isset($title) ? $title : trans('messages.faild');
|
|
||||||
return response()->json(['status' => $status, 'errors' => ['message' => [$message, 'Title' => $title]], 'data' => $data], $statusCode);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -4,7 +4,9 @@ namespace Packages\Auth;
|
|||||||
|
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\User;
|
use App\User;
|
||||||
use App\Http\Controller\Api\Auth\LoginController;
|
use Carbon\Carbon;
|
||||||
|
use App\Http\Controllers\Api\Auth\LoginController;
|
||||||
|
use Packages\SMSSender\SMSSender;
|
||||||
|
|
||||||
trait SendsPasswordResetEmails
|
trait SendsPasswordResetEmails
|
||||||
{
|
{
|
||||||
@@ -40,11 +42,10 @@ trait SendsPasswordResetEmails
|
|||||||
if($user) {
|
if($user) {
|
||||||
|
|
||||||
$password = rand(10000000, 999999999);
|
$password = rand(10000000, 999999999);
|
||||||
$user->password = Hash::make($password);
|
$user->password = \Hash::make($password);
|
||||||
$user->save();
|
$user->save();
|
||||||
|
|
||||||
$request->merge([ 'cell_number' => $user->cell_number, 'password' => $password ]);
|
$request->merge([ 'cell_number' => $user->cell_number, 'password' => $password ]);
|
||||||
|
|
||||||
return (new LoginController())->login($request);
|
return (new LoginController())->login($request);
|
||||||
}
|
}
|
||||||
return \MessageResponse::error('User Not Found');
|
return \MessageResponse::error('User Not Found');
|
||||||
|
|||||||
@@ -8,12 +8,7 @@ class SMSSender
|
|||||||
private $password = null;
|
private $password = null;
|
||||||
private $webService = null;
|
private $webService = null;
|
||||||
private $fromNumber = null;
|
private $fromNumber = null;
|
||||||
private $messageFee = 15;
|
|
||||||
private $type = 'Other';
|
|
||||||
private static $panel = null;
|
private static $panel = null;
|
||||||
private $pattern = [
|
|
||||||
'121' => 'کد فعال سازی: %activate-code%',
|
|
||||||
];
|
|
||||||
|
|
||||||
private function __construct() { }
|
private function __construct() { }
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -219,7 +219,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
|
|
||||||
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
||||||
// Module
|
// Module
|
||||||
exports.push([module.i, "\n.WM-ActionButton[data-v-1346f0a2] {\r\n padding: 8px 22px;\n}\r\n", ""]);
|
exports.push([module.i, "\n.WM-ActionButton[data-v-1346f0a2] {\n padding: 8px 22px;\n}\n", ""]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -210,7 +210,7 @@ __webpack_require__.r(__webpack_exports__);
|
|||||||
|
|
||||||
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
||||||
// Module
|
// Module
|
||||||
exports.push([module.i, "\n.WM-Border[data-v-7eb32e4a] {\r\n border: 1px solid;\n}\n.WM-Border-Black[data-v-7eb32e4a] {\r\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-7eb32e4a] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-7eb32e4a] {\r\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-7eb32e4a] {\r\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-7eb32e4a] {\r\n top: -25px !important;\n}\r\n", ""]);
|
exports.push([module.i, "\n.WM-Border[data-v-7eb32e4a] {\n border: 1px solid;\n}\n.WM-Border-Black[data-v-7eb32e4a] {\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-7eb32e4a] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-7eb32e4a] {\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-7eb32e4a] {\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-7eb32e4a] {\n top: -25px !important;\n}\n", ""]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -562,7 +562,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
|
|
||||||
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
||||||
// Module
|
// Module
|
||||||
exports.push([module.i, "\n.WM-Border-Gray[data-v-5cc5a650] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-5cc5a650] {\r\n background-color: #f5f5f5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-5cc5a650] {\r\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-5cc5a650] {\r\n bottom: -24px !important;\n}\r\n", ""]);
|
exports.push([module.i, "\n.WM-Border-Gray[data-v-5cc5a650] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-5cc5a650] {\n background-color: #f5f5f5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-5cc5a650] {\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-5cc5a650] {\n bottom: -24px !important;\n}\n", ""]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -225,7 +225,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
|
|
||||||
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
||||||
// Module
|
// Module
|
||||||
exports.push([module.i, "\n.WM-ActionButton[data-v-b1f1b72e] {\r\n padding: 8px 22px;\n}\r\n", ""]);
|
exports.push([module.i, "\n.WM-ActionButton[data-v-b1f1b72e] {\n padding: 8px 22px;\n}\n", ""]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Vendored
+45
-11
@@ -9,7 +9,17 @@
|
|||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
__webpack_require__.r(__webpack_exports__);
|
__webpack_require__.r(__webpack_exports__);
|
||||||
/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js");
|
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js");
|
||||||
|
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);
|
||||||
|
/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js");
|
||||||
|
/* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/services */ "./resources/js/vue/services/index.js");
|
||||||
|
/* harmony import */ var _config_urls__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/config/urls */ "./resources/js/vue/config/urls.js");
|
||||||
|
|
||||||
|
|
||||||
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
||||||
|
|
||||||
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
||||||
|
|
||||||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
|
||||||
|
|
||||||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
||||||
@@ -56,20 +66,45 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||||
data: function data() {
|
data: function data() {
|
||||||
return {
|
return {
|
||||||
|
form: {
|
||||||
cell_number: ""
|
cell_number: ""
|
||||||
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapActions"])("auth", ["forgotPassword"]), Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapMutations"])("modal", ["changeCurrentModal"]), {
|
methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapActions"])("auth", ["forgotPassword"]), {
|
||||||
handleSubmit: function handleSubmit() {
|
// ...mapMutations("modal", ["changeCurrentModal"]),
|
||||||
this.changeCurrentModal({
|
handleSubmit: function () {
|
||||||
modal: "modal-auth-verify-code"
|
var _handleSubmit = _asyncToGenerator(
|
||||||
|
/*#__PURE__*/
|
||||||
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee() {
|
||||||
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) {
|
||||||
|
while (1) {
|
||||||
|
switch (_context.prev = _context.next) {
|
||||||
|
case 0:
|
||||||
|
this.forgotPassword({
|
||||||
|
form: this.form
|
||||||
});
|
});
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
case "end":
|
||||||
|
return _context.stop();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}, _callee, this);
|
||||||
|
}));
|
||||||
|
|
||||||
|
function handleSubmit() {
|
||||||
|
return _handleSubmit.apply(this, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
return handleSubmit;
|
||||||
|
}()
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -124,15 +159,14 @@ var render = function() {
|
|||||||
attrs: {
|
attrs: {
|
||||||
name: "cellnumber",
|
name: "cellnumber",
|
||||||
label: "Cell Number",
|
label: "Cell Number",
|
||||||
id: "id1",
|
|
||||||
color: "black"
|
color: "black"
|
||||||
},
|
},
|
||||||
model: {
|
model: {
|
||||||
value: _vm.cell_number,
|
value: _vm.form.cell_number,
|
||||||
callback: function($$v) {
|
callback: function($$v) {
|
||||||
_vm.cell_number = $$v
|
_vm.$set(_vm.form, "cell_number", $$v)
|
||||||
},
|
},
|
||||||
expression: "cell_number"
|
expression: "form.cell_number"
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
],
|
],
|
||||||
@@ -190,7 +224,7 @@ var render = function() {
|
|||||||
"router-link",
|
"router-link",
|
||||||
{
|
{
|
||||||
staticClass: "black--text",
|
staticClass: "black--text",
|
||||||
attrs: { to: "login" }
|
attrs: { to: { name: "Login" } }
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
_c(
|
_c(
|
||||||
|
|||||||
Vendored
+1
-55
@@ -68,14 +68,6 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
|
|
||||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||||
data: function data() {
|
data: function data() {
|
||||||
@@ -242,52 +234,6 @@ var render = function() {
|
|||||||
)
|
)
|
||||||
],
|
],
|
||||||
1
|
1
|
||||||
),
|
|
||||||
_vm._v(" "),
|
|
||||||
_c(
|
|
||||||
"v-flex",
|
|
||||||
{
|
|
||||||
staticClass:
|
|
||||||
"text-md-right text-sm-center text-xs-center",
|
|
||||||
attrs: { xs12: "", md6: "", sm6: "" }
|
|
||||||
},
|
|
||||||
[
|
|
||||||
_c(
|
|
||||||
"router-link",
|
|
||||||
{
|
|
||||||
staticClass: "black--text",
|
|
||||||
attrs: { to: "register" }
|
|
||||||
},
|
|
||||||
[
|
|
||||||
_c(
|
|
||||||
"v-btn",
|
|
||||||
{
|
|
||||||
staticClass:
|
|
||||||
"WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black"
|
|
||||||
},
|
|
||||||
[
|
|
||||||
_c(
|
|
||||||
"v-icon",
|
|
||||||
{
|
|
||||||
staticClass:
|
|
||||||
"black--text mr-2 caption"
|
|
||||||
},
|
|
||||||
[_vm._v("fas fa-plus")]
|
|
||||||
),
|
|
||||||
_vm._v(" "),
|
|
||||||
_c(
|
|
||||||
"span",
|
|
||||||
{ staticClass: "black--text" },
|
|
||||||
[_vm._v("Register")]
|
|
||||||
)
|
|
||||||
],
|
|
||||||
1
|
|
||||||
)
|
|
||||||
],
|
|
||||||
1
|
|
||||||
)
|
|
||||||
],
|
|
||||||
1
|
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
1
|
1
|
||||||
@@ -310,7 +256,7 @@ var render = function() {
|
|||||||
[
|
[
|
||||||
_c(
|
_c(
|
||||||
"router-link",
|
"router-link",
|
||||||
{ attrs: { to: "/forgot-password" } },
|
{ attrs: { to: { name: "ForgotPassword" } } },
|
||||||
[
|
[
|
||||||
_c(
|
_c(
|
||||||
"span",
|
"span",
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"/vue/js/app.js": "/vue/js/app.js?id=38cf613a394ed614a026"
|
"/vue/js/app.js": "/vue/js/app.js?id=8c04dcb4c96b990c50a9"
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+170
-180
@@ -3352,14 +3352,16 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|||||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||||
data: function data() {
|
data: function data() {
|
||||||
return {
|
return {
|
||||||
verifyCode: ""
|
form: {
|
||||||
|
code: ""
|
||||||
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapActions"])('auth', ['verifyCodeSMS']), {
|
methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapActions"])('auth', ['verifyCodeSMS']), {
|
||||||
submitVerifyCode: function submitVerifyCode() {
|
submitVerifyCode: function submitVerifyCode() {
|
||||||
if (this.verifyCode != '') {
|
if (this.form.code != '') {
|
||||||
this.verifyCodeSMS({
|
this.verifyCodeSMS({
|
||||||
verifyCode: this.verifyCode
|
form: this.form
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -8263,7 +8265,7 @@ exports.push([module.i, "/*!\n* Vuetify v1.5.11\n* Forged by John Leider\n* Rele
|
|||||||
|
|
||||||
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
||||||
// Module
|
// Module
|
||||||
exports.push([module.i, "\n#core-footer {\r\n z-index: 0;\n}\r\n", ""]);
|
exports.push([module.i, "\n#core-footer {\n z-index: 0;\n}\n", ""]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -17001,11 +17003,11 @@ var render = function() {
|
|||||||
color: "black"
|
color: "black"
|
||||||
},
|
},
|
||||||
model: {
|
model: {
|
||||||
value: _vm.verifyCode,
|
value: _vm.form.code,
|
||||||
callback: function($$v) {
|
callback: function($$v) {
|
||||||
_vm.verifyCode = $$v
|
_vm.$set(_vm.form, "code", $$v)
|
||||||
},
|
},
|
||||||
expression: "verifyCode"
|
expression: "form.code"
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
],
|
],
|
||||||
@@ -60537,6 +60539,7 @@ var map = {
|
|||||||
"./material/Notification.vue": "./resources/js/vue/components/material/Notification.vue",
|
"./material/Notification.vue": "./resources/js/vue/components/material/Notification.vue",
|
||||||
"./material/StatsCard.vue": "./resources/js/vue/components/material/StatsCard.vue",
|
"./material/StatsCard.vue": "./resources/js/vue/components/material/StatsCard.vue",
|
||||||
"./modal/Base.vue": "./resources/js/vue/components/modal/Base.vue",
|
"./modal/Base.vue": "./resources/js/vue/components/modal/Base.vue",
|
||||||
|
"./modal/auth/ChangePassword.vue": "./resources/js/vue/components/modal/auth/ChangePassword.vue",
|
||||||
"./modal/auth/VerifyCode.vue": "./resources/js/vue/components/modal/auth/VerifyCode.vue",
|
"./modal/auth/VerifyCode.vue": "./resources/js/vue/components/modal/auth/VerifyCode.vue",
|
||||||
"./modal/user/Role.vue": "./resources/js/vue/components/modal/user/Role.vue"
|
"./modal/user/Role.vue": "./resources/js/vue/components/modal/user/Role.vue"
|
||||||
};
|
};
|
||||||
@@ -61686,6 +61689,38 @@ __webpack_require__.r(__webpack_exports__);
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ "./resources/js/vue/components/modal/auth/ChangePassword.vue":
|
||||||
|
/*!*******************************************************************!*\
|
||||||
|
!*** ./resources/js/vue/components/modal/auth/ChangePassword.vue ***!
|
||||||
|
\*******************************************************************/
|
||||||
|
/*! exports provided: default */
|
||||||
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
__webpack_require__.r(__webpack_exports__);
|
||||||
|
/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
|
||||||
|
var render, staticRenderFns
|
||||||
|
var script = {}
|
||||||
|
|
||||||
|
|
||||||
|
/* normalize component */
|
||||||
|
|
||||||
|
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_0__["default"])(
|
||||||
|
script,
|
||||||
|
render,
|
||||||
|
staticRenderFns,
|
||||||
|
false,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
component.options.__file = "resources/js/vue/components/modal/auth/ChangePassword.vue"
|
||||||
|
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ "./resources/js/vue/components/modal/auth/VerifyCode.vue":
|
/***/ "./resources/js/vue/components/modal/auth/VerifyCode.vue":
|
||||||
@@ -61846,6 +61881,9 @@ var urls = {
|
|||||||
storeTestType: "/TestTypes",
|
storeTestType: "/TestTypes",
|
||||||
listTestTypeName: "/TestTypes/ListNames",
|
listTestTypeName: "/TestTypes/ListNames",
|
||||||
getInputs: "/GetInputs",
|
getInputs: "/GetInputs",
|
||||||
|
forgotPassword: "/password/phone",
|
||||||
|
sendVerifyCode: "/password/verifyCode",
|
||||||
|
changePassword: "/password/reset",
|
||||||
listTestType: function listTestType(page) {
|
listTestType: function listTestType(page) {
|
||||||
return "/TestTypes?page=" + page;
|
return "/TestTypes?page=" + page;
|
||||||
},
|
},
|
||||||
@@ -62707,7 +62745,7 @@ var UserService = {
|
|||||||
},
|
},
|
||||||
auth: {
|
auth: {
|
||||||
username: "2",
|
username: "2",
|
||||||
password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE"
|
password: "r46iu0QJFTrC30H0fEoBbxTGmbJQjjOlSQYFYS7w"
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
_context.prev = 1;
|
_context.prev = 1;
|
||||||
@@ -62744,127 +62782,17 @@ var UserService = {
|
|||||||
return login;
|
return login;
|
||||||
}(),
|
}(),
|
||||||
|
|
||||||
/**
|
|
||||||
* Login the user and store the access token to TokenService.
|
|
||||||
*
|
|
||||||
* @returns access_token
|
|
||||||
* @throws AuthenticationError
|
|
||||||
**/
|
|
||||||
forgotPassword: function () {
|
|
||||||
var _forgotPassword = _asyncToGenerator(
|
|
||||||
/*#__PURE__*/
|
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2(cell_number) {
|
|
||||||
var requestData, response;
|
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {
|
|
||||||
while (1) {
|
|
||||||
switch (_context2.prev = _context2.next) {
|
|
||||||
case 0:
|
|
||||||
requestData = {
|
|
||||||
method: "post",
|
|
||||||
url: "forgotPassword",
|
|
||||||
data: {
|
|
||||||
cell_number: cell_number
|
|
||||||
},
|
|
||||||
auth: {
|
|
||||||
username: "2",
|
|
||||||
password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
_context2.prev = 1;
|
|
||||||
_context2.next = 4;
|
|
||||||
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].customRequest(requestData);
|
|
||||||
|
|
||||||
case 4:
|
|
||||||
response = _context2.sent;
|
|
||||||
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].setAuthHeader();
|
|
||||||
return _context2.abrupt("return", response.data);
|
|
||||||
|
|
||||||
case 9:
|
|
||||||
_context2.prev = 9;
|
|
||||||
_context2.t0 = _context2["catch"](1);
|
|
||||||
throw new AuthenticationError(_context2.t0.response.status, _context2.t0.response.data.detail);
|
|
||||||
|
|
||||||
case 12:
|
|
||||||
case "end":
|
|
||||||
return _context2.stop();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, _callee2, null, [[1, 9]]);
|
|
||||||
}));
|
|
||||||
|
|
||||||
function forgotPassword(_x3) {
|
|
||||||
return _forgotPassword.apply(this, arguments);
|
|
||||||
}
|
|
||||||
|
|
||||||
return forgotPassword;
|
|
||||||
}(),
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Login the user and store the access token to TokenService.
|
|
||||||
*
|
|
||||||
* @returns access_token
|
|
||||||
* @throws AuthenticationError
|
|
||||||
**/
|
|
||||||
verifyCode: function () {
|
|
||||||
var _verifyCode2 = _asyncToGenerator(
|
|
||||||
/*#__PURE__*/
|
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(_verifyCode) {
|
|
||||||
var requestData, response;
|
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {
|
|
||||||
while (1) {
|
|
||||||
switch (_context3.prev = _context3.next) {
|
|
||||||
case 0:
|
|
||||||
requestData = {
|
|
||||||
method: "post",
|
|
||||||
url: "forgotPassword",
|
|
||||||
data: {
|
|
||||||
verifyCode: _verifyCode
|
|
||||||
},
|
|
||||||
auth: {
|
|
||||||
username: "2",
|
|
||||||
password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
_context3.prev = 1;
|
|
||||||
_context3.next = 4;
|
|
||||||
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].customRequest(requestData);
|
|
||||||
|
|
||||||
case 4:
|
|
||||||
response = _context3.sent;
|
|
||||||
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].setAuthHeader();
|
|
||||||
return _context3.abrupt("return", response.data);
|
|
||||||
|
|
||||||
case 9:
|
|
||||||
_context3.prev = 9;
|
|
||||||
_context3.t0 = _context3["catch"](1);
|
|
||||||
throw new AuthenticationError(_context3.t0.response.status, _context3.t0.response.data.detail);
|
|
||||||
|
|
||||||
case 12:
|
|
||||||
case "end":
|
|
||||||
return _context3.stop();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, _callee3, null, [[1, 9]]);
|
|
||||||
}));
|
|
||||||
|
|
||||||
function verifyCode(_x4) {
|
|
||||||
return _verifyCode2.apply(this, arguments);
|
|
||||||
}
|
|
||||||
|
|
||||||
return verifyCode;
|
|
||||||
}(),
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Refresh the access token.
|
* Refresh the access token.
|
||||||
**/
|
**/
|
||||||
refreshToken: function () {
|
refreshToken: function () {
|
||||||
var _refreshToken = _asyncToGenerator(
|
var _refreshToken = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4() {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2() {
|
||||||
var refreshToken, requestData, response;
|
var refreshToken, requestData, response;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context4.prev = _context4.next) {
|
switch (_context2.prev = _context2.next) {
|
||||||
case 0:
|
case 0:
|
||||||
refreshToken = _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].getRefreshToken();
|
refreshToken = _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].getRefreshToken();
|
||||||
requestData = {
|
requestData = {
|
||||||
@@ -62876,32 +62804,32 @@ var UserService = {
|
|||||||
},
|
},
|
||||||
auth: {
|
auth: {
|
||||||
username: "2",
|
username: "2",
|
||||||
password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE"
|
password: "r46iu0QJFTrC30H0fEoBbxTGmbJQjjOlSQYFYS7w"
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
_context4.prev = 2;
|
_context2.prev = 2;
|
||||||
_context4.next = 5;
|
_context2.next = 5;
|
||||||
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].customRequest(requestData);
|
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].customRequest(requestData);
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
response = _context4.sent;
|
response = _context2.sent;
|
||||||
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(response.data.access_token);
|
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(response.data.access_token);
|
||||||
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(response.data.refresh_token); // Update the header in ApiService
|
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(response.data.refresh_token); // Update the header in ApiService
|
||||||
|
|
||||||
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].setAuthHeader();
|
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].setAuthHeader();
|
||||||
return _context4.abrupt("return", response.data.access_token);
|
return _context2.abrupt("return", response.data.access_token);
|
||||||
|
|
||||||
case 12:
|
case 12:
|
||||||
_context4.prev = 12;
|
_context2.prev = 12;
|
||||||
_context4.t0 = _context4["catch"](2);
|
_context2.t0 = _context2["catch"](2);
|
||||||
throw new AuthenticationError(_context4.t0.response.status, _context4.t0.response.data.detail);
|
throw new AuthenticationError(_context2.t0.response.status, _context2.t0.response.data.detail);
|
||||||
|
|
||||||
case 15:
|
case 15:
|
||||||
case "end":
|
case "end":
|
||||||
return _context4.stop();
|
return _context2.stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, _callee4, null, [[2, 12]]);
|
}, _callee2, null, [[2, 12]]);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
function refreshToken() {
|
function refreshToken() {
|
||||||
@@ -62919,18 +62847,18 @@ var UserService = {
|
|||||||
logout: function () {
|
logout: function () {
|
||||||
var _logout = _asyncToGenerator(
|
var _logout = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee5() {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3() {
|
||||||
var response;
|
var response;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee5$(_context5) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context5.prev = _context5.next) {
|
switch (_context3.prev = _context3.next) {
|
||||||
case 0:
|
case 0:
|
||||||
_context5.prev = 0;
|
_context3.prev = 0;
|
||||||
_context5.next = 3;
|
_context3.next = 3;
|
||||||
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].logout);
|
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].logout);
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
response = _context5.sent;
|
response = _context3.sent;
|
||||||
// Remove the token and remove Authorization header from Api Service as well
|
// Remove the token and remove Authorization header from Api Service as well
|
||||||
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeToken();
|
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeToken();
|
||||||
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeRefreshToken();
|
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeRefreshToken();
|
||||||
@@ -62938,19 +62866,19 @@ var UserService = {
|
|||||||
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].removeAuthHeader(); // NOTE: Again, we'll cover the 401 Interceptor a bit later.
|
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].removeAuthHeader(); // NOTE: Again, we'll cover the 401 Interceptor a bit later.
|
||||||
|
|
||||||
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].unmount401Interceptor();
|
_global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].unmount401Interceptor();
|
||||||
return _context5.abrupt("return", response.data);
|
return _context3.abrupt("return", response.data);
|
||||||
|
|
||||||
case 12:
|
case 12:
|
||||||
_context5.prev = 12;
|
_context3.prev = 12;
|
||||||
_context5.t0 = _context5["catch"](0);
|
_context3.t0 = _context3["catch"](0);
|
||||||
throw new AuthenticationError(_context5.t0.response.status, _context5.t0.response.data.detail);
|
throw new AuthenticationError(_context3.t0.response.status, _context3.t0.response.data.detail);
|
||||||
|
|
||||||
case 15:
|
case 15:
|
||||||
case "end":
|
case "end":
|
||||||
return _context5.stop();
|
return _context3.stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, _callee5, null, [[0, 12]]);
|
}, _callee3, null, [[0, 12]]);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
function logout() {
|
function logout() {
|
||||||
@@ -62968,26 +62896,26 @@ var UserService = {
|
|||||||
getInfo: function () {
|
getInfo: function () {
|
||||||
var _getInfo = _asyncToGenerator(
|
var _getInfo = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee6() {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4() {
|
||||||
var response;
|
var response;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee6$(_context6) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context6.prev = _context6.next) {
|
switch (_context4.prev = _context4.next) {
|
||||||
case 0:
|
case 0:
|
||||||
_context6.next = 2;
|
_context4.next = 2;
|
||||||
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].get(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].getInfo);
|
return _global_api_service__WEBPACK_IMPORTED_MODULE_1__["ApiService"].get(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].getInfo);
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
response = _context6.sent;
|
response = _context4.sent;
|
||||||
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveInfo(response.data.data);
|
_storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveInfo(response.data.data);
|
||||||
return _context6.abrupt("return", response.data.data);
|
return _context4.abrupt("return", response.data.data);
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
case "end":
|
case "end":
|
||||||
return _context6.stop();
|
return _context4.stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, _callee6);
|
}, _callee4);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
function getInfo() {
|
function getInfo() {
|
||||||
@@ -63494,8 +63422,9 @@ __webpack_require__.r(__webpack_exports__);
|
|||||||
__webpack_require__.r(__webpack_exports__);
|
__webpack_require__.r(__webpack_exports__);
|
||||||
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js");
|
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js");
|
||||||
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);
|
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);
|
||||||
/* harmony import */ var _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/services/auth/user.service */ "./resources/js/vue/services/auth/user.service.js");
|
/* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/services */ "./resources/js/vue/services/index.js");
|
||||||
/* harmony import */ var _router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/router */ "./resources/js/vue/router/index.js");
|
/* harmony import */ var _router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/router */ "./resources/js/vue/router/index.js");
|
||||||
|
/* harmony import */ var _config_urls__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/config/urls */ "./resources/js/vue/config/urls.js");
|
||||||
|
|
||||||
|
|
||||||
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
||||||
@@ -63504,6 +63433,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||||
login: function () {
|
login: function () {
|
||||||
var _login = _asyncToGenerator(
|
var _login = _asyncToGenerator(
|
||||||
@@ -63519,7 +63449,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
commit('loginRequest');
|
commit('loginRequest');
|
||||||
_context.prev = 3;
|
_context.prev = 3;
|
||||||
_context.next = 6;
|
_context.next = 6;
|
||||||
return _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].login(cell_number, password);
|
return _services__WEBPACK_IMPORTED_MODULE_1__["UserService"].login(cell_number, password);
|
||||||
|
|
||||||
case 6:
|
case 6:
|
||||||
token = _context.sent;
|
token = _context.sent;
|
||||||
@@ -63535,7 +63465,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
_context.prev = 13;
|
_context.prev = 13;
|
||||||
_context.t0 = _context["catch"](3);
|
_context.t0 = _context["catch"](3);
|
||||||
|
|
||||||
if (_context.t0 instanceof _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["AuthenticationError"]) {
|
if (_context.t0 instanceof _services__WEBPACK_IMPORTED_MODULE_1__["AuthenticationError"]) {
|
||||||
commit('loginError', {
|
commit('loginError', {
|
||||||
errorCode: _context.t0.errorCode,
|
errorCode: _context.t0.errorCode,
|
||||||
errorMessage: _context.t0.message
|
errorMessage: _context.t0.message
|
||||||
@@ -63562,20 +63492,28 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
var _forgotPassword = _asyncToGenerator(
|
var _forgotPassword = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2(_ref3, _ref4) {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2(_ref3, _ref4) {
|
||||||
var commit, cell_number, result;
|
var commit, form, result;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context2.prev = _context2.next) {
|
switch (_context2.prev = _context2.next) {
|
||||||
case 0:
|
case 0:
|
||||||
commit = _ref3.commit;
|
commit = _ref3.commit;
|
||||||
cell_number = _ref4.cell_number;
|
form = _ref4.form;
|
||||||
_context2.next = 4;
|
_context2.next = 4;
|
||||||
return _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].forgotPassword(cell_number);
|
return _services__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].forgotPassword, form);
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
result = _context2.sent;
|
result = _context2.sent;
|
||||||
|
|
||||||
case 5:
|
if (result && result.status == 200) {
|
||||||
|
commit('modal/changeCurrentModal', {
|
||||||
|
modal: "modal-auth-verify-code"
|
||||||
|
}, {
|
||||||
|
root: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
case 6:
|
||||||
case "end":
|
case "end":
|
||||||
return _context2.stop();
|
return _context2.stop();
|
||||||
}
|
}
|
||||||
@@ -63593,20 +63531,35 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
var _verifyCodeSMS = _asyncToGenerator(
|
var _verifyCodeSMS = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(_ref5, _ref6) {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(_ref5, _ref6) {
|
||||||
var commit, verifyCode, result;
|
var commit, dispatch, form, response;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context3.prev = _context3.next) {
|
switch (_context3.prev = _context3.next) {
|
||||||
case 0:
|
case 0:
|
||||||
commit = _ref5.commit;
|
commit = _ref5.commit, dispatch = _ref5.dispatch;
|
||||||
verifyCode = _ref6.verifyCode;
|
form = _ref6.form;
|
||||||
_context3.next = 4;
|
_context3.next = 4;
|
||||||
return _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].verifyCode(verifyCode);
|
return _services__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].sendVerifyCode, form);
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
result = _context3.sent;
|
response = _context3.sent;
|
||||||
|
|
||||||
case 5:
|
if (response && response.status == 200 && response.data.access_token) {
|
||||||
|
_services__WEBPACK_IMPORTED_MODULE_1__["TokenService"].saveToken(response.data.access_token);
|
||||||
|
_services__WEBPACK_IMPORTED_MODULE_1__["TokenService"].saveRefreshToken(response.data.refresh_token);
|
||||||
|
_services__WEBPACK_IMPORTED_MODULE_1__["ApiService"].setAuthHeader();
|
||||||
|
commit('loginSuccess', response.data.access_token);
|
||||||
|
commit('modal/changeCurrentModal', {
|
||||||
|
modal: "modal-auth-change-password"
|
||||||
|
}, {
|
||||||
|
root: true
|
||||||
|
});
|
||||||
|
dispatch('info', {}, {
|
||||||
|
root: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
case 6:
|
||||||
case "end":
|
case "end":
|
||||||
return _context3.stop();
|
return _context3.stop();
|
||||||
}
|
}
|
||||||
@@ -63620,23 +63573,28 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
|
|
||||||
return verifyCodeSMS;
|
return verifyCodeSMS;
|
||||||
}(),
|
}(),
|
||||||
logout: function () {
|
changePassword: function () {
|
||||||
var _logout = _asyncToGenerator(
|
var _changePassword = _asyncToGenerator(
|
||||||
/*#__PURE__*/
|
/*#__PURE__*/
|
||||||
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4(_ref7) {
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4(_ref7, _ref8) {
|
||||||
var commit, result;
|
var commit, form, response;
|
||||||
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) {
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) {
|
||||||
while (1) {
|
while (1) {
|
||||||
switch (_context4.prev = _context4.next) {
|
switch (_context4.prev = _context4.next) {
|
||||||
case 0:
|
case 0:
|
||||||
commit = _ref7.commit;
|
commit = _ref7.commit;
|
||||||
_context4.next = 3;
|
form = _ref8.form;
|
||||||
return _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].logout();
|
_context4.next = 4;
|
||||||
|
return _services__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].changePassword, form);
|
||||||
|
|
||||||
case 3:
|
case 4:
|
||||||
result = _context4.sent;
|
response = _context4.sent;
|
||||||
commit('logoutSuccess');
|
|
||||||
_router__WEBPACK_IMPORTED_MODULE_2__["default"].push('/login');
|
if (response && response.status == 200) {
|
||||||
|
commit('modal/closeModal', {}, {
|
||||||
|
root: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
case 6:
|
case 6:
|
||||||
case "end":
|
case "end":
|
||||||
@@ -63646,20 +63604,52 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|||||||
}, _callee4);
|
}, _callee4);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
function logout(_x7) {
|
function changePassword(_x7, _x8) {
|
||||||
|
return _changePassword.apply(this, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
return changePassword;
|
||||||
|
}(),
|
||||||
|
logout: function () {
|
||||||
|
var _logout = _asyncToGenerator(
|
||||||
|
/*#__PURE__*/
|
||||||
|
_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee5(_ref9) {
|
||||||
|
var commit, result;
|
||||||
|
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee5$(_context5) {
|
||||||
|
while (1) {
|
||||||
|
switch (_context5.prev = _context5.next) {
|
||||||
|
case 0:
|
||||||
|
commit = _ref9.commit;
|
||||||
|
_context5.next = 3;
|
||||||
|
return _services__WEBPACK_IMPORTED_MODULE_1__["UserService"].logout();
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
result = _context5.sent;
|
||||||
|
commit('logoutSuccess');
|
||||||
|
_router__WEBPACK_IMPORTED_MODULE_2__["default"].push('/login');
|
||||||
|
|
||||||
|
case 6:
|
||||||
|
case "end":
|
||||||
|
return _context5.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, _callee5);
|
||||||
|
}));
|
||||||
|
|
||||||
|
function logout(_x9) {
|
||||||
return _logout.apply(this, arguments);
|
return _logout.apply(this, arguments);
|
||||||
}
|
}
|
||||||
|
|
||||||
return logout;
|
return logout;
|
||||||
}(),
|
}(),
|
||||||
refreshToken: function refreshToken(_ref8) {
|
refreshToken: function refreshToken(_ref10) {
|
||||||
var commit = _ref8.commit,
|
var commit = _ref10.commit,
|
||||||
state = _ref8.state;
|
state = _ref10.state;
|
||||||
|
|
||||||
// If this is the first time the refreshToken has been called, make a request
|
// If this is the first time the refreshToken has been called, make a request
|
||||||
// otherwise return the same promise to the caller
|
// otherwise return the same promise to the caller
|
||||||
if (!state.refreshTokenPromise) {
|
if (!state.refreshTokenPromise) {
|
||||||
var p = _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].refreshToken();
|
var p = _services__WEBPACK_IMPORTED_MODULE_1__["UserService"].refreshToken();
|
||||||
commit('refreshTokenPromise', p); // Wait for the UserService.refreshToken() to resolve. On success set the token and clear promise
|
commit('refreshTokenPromise', p); // Wait for the UserService.refreshToken() to resolve. On success set the token and clear promise
|
||||||
// Clear the promise on error as well.
|
// Clear the promise on error as well.
|
||||||
|
|
||||||
@@ -64059,7 +64049,7 @@ module.exports = webpackAsyncContext;
|
|||||||
/*! no static exports found */
|
/*! no static exports found */
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
module.exports = __webpack_require__(/*! D:\Atom\Git\CSSD\resources\js\vue\main.js */"./resources/js/vue/main.js");
|
module.exports = __webpack_require__(/*! /home/saeid/Projects/Git/CSSD/resources/js/vue/main.js */"./resources/js/vue/main.js");
|
||||||
|
|
||||||
|
|
||||||
/***/ })
|
/***/ })
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
<template>
|
||||||
|
<v-form >
|
||||||
|
<v-container grid-list-xs>
|
||||||
|
<v-layout row wrap class="justify-center">
|
||||||
|
<v-flex xs12 md3 sm3 class="WM-WidthScreen-SM WM-WidthScreen-XS">
|
||||||
|
<material-card
|
||||||
|
color="black"
|
||||||
|
title="Change Password">
|
||||||
|
<v-layout row wrap class="px-3">
|
||||||
|
<v-flex xs12 md12 sm12>
|
||||||
|
<v-text-field
|
||||||
|
v-model="form.password"
|
||||||
|
label="Password"
|
||||||
|
color="black"
|
||||||
|
></v-text-field>
|
||||||
|
</v-flex>
|
||||||
|
<v-flex xs12 md12 sm12>
|
||||||
|
<v-text-field
|
||||||
|
v-model="form.password_confirmation"
|
||||||
|
label="Confirm Password"
|
||||||
|
color="black"
|
||||||
|
></v-text-field>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
<v-layout row wrap class="px-3">
|
||||||
|
<v-flex xs12 md6 sm6 class="text-md-left text-sm-center text-xs-center">
|
||||||
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 60px" @click="submitChangePassword">
|
||||||
|
<v-icon class="white--text mr-2 caption">fas fa-sign-in-alt</v-icon>
|
||||||
|
<span class="white--text">Submit</span>
|
||||||
|
</v-btn>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</material-card>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</v-form>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { mapActions } from "vuex";
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
password: "",
|
||||||
|
password_confirmation: "",
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
...mapActions('auth', [
|
||||||
|
'changePassword'
|
||||||
|
]),
|
||||||
|
submitVerifyCode() {
|
||||||
|
if (this.form.code != '') {
|
||||||
|
this.changePassword({form: this.form});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -9,7 +9,7 @@
|
|||||||
<v-layout row wrap class="px-3">
|
<v-layout row wrap class="px-3">
|
||||||
<v-flex xs12 md12 sm12>
|
<v-flex xs12 md12 sm12>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="verifyCode"
|
v-model="form.code"
|
||||||
label="Verify Code Number"
|
label="Verify Code Number"
|
||||||
color="black"
|
color="black"
|
||||||
></v-text-field>
|
></v-text-field>
|
||||||
@@ -30,11 +30,13 @@
|
|||||||
</v-form>
|
</v-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters, mapActions } from "vuex";
|
import { mapActions } from "vuex";
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
verifyCode: "",
|
form: {
|
||||||
|
code: "",
|
||||||
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -42,8 +44,8 @@ export default {
|
|||||||
'verifyCodeSMS'
|
'verifyCodeSMS'
|
||||||
]),
|
]),
|
||||||
submitVerifyCode() {
|
submitVerifyCode() {
|
||||||
if (this.verifyCode != '') {
|
if (this.form.code != '') {
|
||||||
this.verifyCodeSMS({verifyCode: this.verifyCode});
|
this.verifyCodeSMS({form: this.form});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+3
@@ -8,6 +8,9 @@ const urls = {
|
|||||||
storeTestType : "/TestTypes",
|
storeTestType : "/TestTypes",
|
||||||
listTestTypeName : "/TestTypes/ListNames",
|
listTestTypeName : "/TestTypes/ListNames",
|
||||||
getInputs : `/GetInputs`,
|
getInputs : `/GetInputs`,
|
||||||
|
forgotPassword : `/password/phone`,
|
||||||
|
sendVerifyCode : `/password/verifyCode`,
|
||||||
|
changePassword : `/password/reset`,
|
||||||
listTestType : function(page) {
|
listTestType : function(page) {
|
||||||
return "/TestTypes?page=" + page;
|
return "/TestTypes?page=" + page;
|
||||||
},
|
},
|
||||||
|
|||||||
-63
@@ -50,69 +50,6 @@ const UserService = {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
|
||||||
* Login the user and store the access token to TokenService.
|
|
||||||
*
|
|
||||||
* @returns access_token
|
|
||||||
* @throws AuthenticationError
|
|
||||||
**/
|
|
||||||
forgotPassword: async function(cell_number) {
|
|
||||||
const requestData = {
|
|
||||||
method: "post",
|
|
||||||
url: "forgotPassword",
|
|
||||||
data: {
|
|
||||||
cell_number
|
|
||||||
},
|
|
||||||
auth: {
|
|
||||||
username: process.env.MIX_APP_CLIENT_ID,
|
|
||||||
password: process.env.MIX_APP_CLIENT_SECRET
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
try {
|
|
||||||
const response = await ApiService.customRequest(requestData);
|
|
||||||
ApiService.setAuthHeader();
|
|
||||||
|
|
||||||
return response.data;
|
|
||||||
} catch (error) {
|
|
||||||
throw new AuthenticationError(
|
|
||||||
error.response.status,
|
|
||||||
error.response.data.detail
|
|
||||||
);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* Login the user and store the access token to TokenService.
|
|
||||||
*
|
|
||||||
* @returns access_token
|
|
||||||
* @throws AuthenticationError
|
|
||||||
**/
|
|
||||||
verifyCode: async function(verifyCode) {
|
|
||||||
const requestData = {
|
|
||||||
method: "post",
|
|
||||||
url: "forgotPassword",
|
|
||||||
data: {
|
|
||||||
verifyCode
|
|
||||||
},
|
|
||||||
auth: {
|
|
||||||
username: process.env.MIX_APP_CLIENT_ID,
|
|
||||||
password: process.env.MIX_APP_CLIENT_SECRET
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
try {
|
|
||||||
const response = await ApiService.customRequest(requestData);
|
|
||||||
ApiService.setAuthHeader();
|
|
||||||
|
|
||||||
return response.data;
|
|
||||||
} catch (error) {
|
|
||||||
throw new AuthenticationError(
|
|
||||||
error.response.status,
|
|
||||||
error.response.data.detail
|
|
||||||
);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Refresh the access token.
|
* Refresh the access token.
|
||||||
**/
|
**/
|
||||||
|
|||||||
+25
-7
@@ -1,5 +1,6 @@
|
|||||||
import { UserService, AuthenticationError } from '@/services/auth/user.service'
|
import { UserService, AuthenticationError, ApiService, TokenService } from '@/services'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
|
import { urls } from '@/config/urls'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async login({ commit, dispatch }, {cell_number, password}) {
|
async login({ commit, dispatch }, {cell_number, password}) {
|
||||||
@@ -22,14 +23,31 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
async forgotPassword({ commit }, {cell_number}) {
|
async forgotPassword({commit}, {form}) {
|
||||||
const result = await UserService.forgotPassword(cell_number);
|
var result = await ApiService.post(urls.forgotPassword, form);
|
||||||
// TODO: Open Modal For Get Section
|
if(result && result.status == 200) {
|
||||||
|
commit('modal/changeCurrentModal', { modal: "modal-auth-verify-code" }, {root: true});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
async verifyCodeSMS({ commit }, {verifyCode}) {
|
|
||||||
const result = await UserService.verifyCode(verifyCode);
|
async verifyCodeSMS({commit, dispatch}, {form}) {
|
||||||
// TODO: Open Modal For Get Section
|
var response = await ApiService.post(urls.sendVerifyCode, form);
|
||||||
|
if(response && response.status == 200 && response.data.access_token) {
|
||||||
|
TokenService.saveToken(response.data.access_token);
|
||||||
|
TokenService.saveRefreshToken(response.data.refresh_token);
|
||||||
|
ApiService.setAuthHeader();
|
||||||
|
commit('loginSuccess', response.data.access_token);
|
||||||
|
commit('modal/changeCurrentModal', { modal: "modal-auth-change-password" }, {root: true});
|
||||||
|
dispatch('info', {}, {root : true});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
async changePassword({commit}, {form}) {
|
||||||
|
var response = await ApiService.post(urls.changePassword, form);
|
||||||
|
if(response && response.status == 200 ) {
|
||||||
|
commit('modal/closeModal', {}, {root: true});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
async logout({ commit }) {
|
async logout({ commit }) {
|
||||||
|
|||||||
@@ -7,10 +7,9 @@
|
|||||||
<v-layout row wrap class="px-3">
|
<v-layout row wrap class="px-3">
|
||||||
<v-flex xs12 md12 sm12>
|
<v-flex xs12 md12 sm12>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="cell_number"
|
v-model="form.cell_number"
|
||||||
name="cellnumber"
|
name="cellnumber"
|
||||||
label="Cell Number"
|
label="Cell Number"
|
||||||
id="id1"
|
|
||||||
color="black"
|
color="black"
|
||||||
></v-text-field>
|
></v-text-field>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
@@ -27,7 +26,7 @@
|
|||||||
</v-btn>
|
</v-btn>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md6 sm6 class="text-md-right text-sm-center text-xs-center">
|
<v-flex xs12 md6 sm6 class="text-md-right text-sm-center text-xs-center">
|
||||||
<router-link class="black--text" to="login">
|
<router-link class="black--text" :to="{name: 'Login'}">
|
||||||
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-sign-in-alt</v-icon>
|
<v-icon class="black--text mr-2 caption">fas fa-sign-in-alt</v-icon>
|
||||||
<span class="black--text">Login</span>
|
<span class="black--text">Login</span>
|
||||||
@@ -43,17 +42,21 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapActions, mapMutations } from "vuex";
|
import { mapActions, mapMutations } from "vuex";
|
||||||
|
import { ApiService } from "@/services";
|
||||||
|
import { urls } from "@/config/urls";
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
form :{
|
||||||
cell_number: ""
|
cell_number: ""
|
||||||
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapActions("auth", ["forgotPassword"]),
|
...mapActions("auth", ["forgotPassword"]),
|
||||||
...mapMutations("modal", ["changeCurrentModal"]),
|
// ...mapMutations("modal", ["changeCurrentModal"]),
|
||||||
handleSubmit() {
|
async handleSubmit() {
|
||||||
this.changeCurrentModal({ modal: "modal-auth-verify-code" });
|
this.forgotPassword({form : this.form});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -38,18 +38,10 @@
|
|||||||
<span class="white--text">Login</span>
|
<span class="white--text">Login</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md6 sm6 class="text-md-right text-sm-center text-xs-center">
|
|
||||||
<router-link class="black--text" to="register">
|
|
||||||
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-plus</v-icon>
|
|
||||||
<span class="black--text">Register</span>
|
|
||||||
</v-btn>
|
|
||||||
</router-link>
|
|
||||||
</v-flex>
|
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout row wrap class="text-md-left text-sm-center text-xs-center">
|
<v-layout row wrap class="text-md-left text-sm-center text-xs-center">
|
||||||
<v-flex xs12 md6 sm6 class="px-4 py-3">
|
<v-flex xs12 md6 sm6 class="px-4 py-3">
|
||||||
<router-link to="/forgot-password">
|
<router-link :to="{name: 'ForgotPassword'}">
|
||||||
<span class="black--text" style="border-bottom:1px solid #000;">Forgot Password ?</span>
|
<span class="black--text" style="border-bottom:1px solid #000;">Forgot Password ?</span>
|
||||||
</router-link>
|
</router-link>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
|
|||||||
Reference in New Issue
Block a user