diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php
new file mode 100644
index 0000000..d2d378d
--- /dev/null
+++ b/app/Http/Controllers/UserController.php
@@ -0,0 +1,34 @@
+authorize('create', User::class);
+
+ request()['password'] = Hash::make(Str::random(30));
+ $user = User::create($this->validateData());
+
+ return (new UserResource($user))
+ ->response()
+ ->setStatusCode(Response::HTTP_CREATED);
+ }
+
+ private function validateData()
+ {
+ return request()->validate([
+ 'name' => 'required',
+ 'email' => 'required|email',
+ 'password' => 'required'
+ ]);
+ }
+}
diff --git a/app/Http/Resources/User.php b/app/Http/Resources/User.php
index dd55650..ac4d57c 100644
--- a/app/Http/Resources/User.php
+++ b/app/Http/Resources/User.php
@@ -20,6 +20,8 @@ class User extends JsonResource
'user_id' => $this->id,
'attributes' => [
'name' => $this->name,
+ 'email' => $this->email,
+ 'is_admin' => $this->isAdmin(),
],
],
'links' => [
diff --git a/app/Policies/UserPolicy.php b/app/Policies/UserPolicy.php
new file mode 100644
index 0000000..3ffa838
--- /dev/null
+++ b/app/Policies/UserPolicy.php
@@ -0,0 +1,93 @@
+isAdmin();
+ }
+
+ /**
+ * Determine whether the user can update the model.
+ *
+ * @param \App\User $user
+ * @param \App\User $model
+ * @return mixed
+ */
+ public function update(User $user, User $model)
+ {
+ return $user->isAdmin() || $user->id === auth()->user()->id;
+ }
+
+ /**
+ * Determine whether the user can delete the model.
+ *
+ * @param \App\User $user
+ * @param \App\User $model
+ * @return mixed
+ */
+ public function delete(User $user, User $model)
+ {
+ return $user->isAdmin() || $user->id === auth()->user()->id;
+ }
+
+ /**
+ * Determine whether the user can restore the model.
+ *
+ * @param \App\User $user
+ * @param \App\User $model
+ * @return mixed
+ */
+ public function restore(User $user, User $model)
+ {
+ return false;
+ }
+
+ /**
+ * Determine whether the user can permanently delete the model.
+ *
+ * @param \App\User $user
+ * @param \App\User $model
+ * @return mixed
+ */
+ public function forceDelete(User $user, User $model)
+ {
+ return false;
+ }
+}
diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php
index 90ce09b..6ae91fe 100644
--- a/app/Providers/AuthServiceProvider.php
+++ b/app/Providers/AuthServiceProvider.php
@@ -15,6 +15,7 @@ class AuthServiceProvider extends ServiceProvider
*/
protected $policies = [
// 'App\Model' => 'App\Policies\ModelPolicy',
+ 'App\User' => 'App\Policies\UserPolicy',
];
/**
diff --git a/app/User.php b/app/User.php
index f5249c6..ddc210a 100644
--- a/app/User.php
+++ b/app/User.php
@@ -37,4 +37,9 @@ class User extends Authenticatable
protected $casts = [
'email_verified_at' => 'datetime',
];
+
+ public function isAdmin()
+ {
+ return $this->role === 2;
+ }
}
diff --git a/config/app.php b/config/app.php
index 5757ea7..633c142 100644
--- a/config/app.php
+++ b/config/app.php
@@ -80,7 +80,7 @@ return [
|
*/
- 'locale' => 'en',
+ 'locale' => 'fr',
/*
|--------------------------------------------------------------------------
diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php
index 621a24e..a1459a6 100644
--- a/database/migrations/2014_10_12_000000_create_users_table.php
+++ b/database/migrations/2014_10_12_000000_create_users_table.php
@@ -17,6 +17,8 @@ class CreateUsersTable extends Migration
$table->id();
$table->string('name');
$table->string('email')->unique();
+ $table->tinyInteger('role')->default(0);
+ $table->string('photo')->nullable();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
diff --git a/public/css/app.css b/public/css/app.css
index 146071d..53bfe1f 100644
--- a/public/css/app.css
+++ b/public/css/app.css
@@ -2,13 +2,34 @@
margin: 0;
}
-div,
-input,
-nav,
-aside {
+* {
box-sizing: border-box;
}
+h1 {
+ margin: 0;
+}
+
+h2 {
+ margin: 0;
+}
+
+h3 {
+ margin: 0;
+}
+
+h4 {
+ margin: 0;
+}
+
+h5 {
+ margin: 0;
+}
+
+h6 {
+ margin: 0;
+}
+
html {
font-size: 62.5%;
}
@@ -46,7 +67,7 @@ body {
.flex-center {
display: flex;
- align-items: center;
+ justify-content: center;
}
.flex-end {
@@ -73,6 +94,62 @@ body {
padding-right: auto;
}
+.m-0 {
+ margin: 0rem;
+}
+
+.mx-0 {
+ margin-left: 0rem;
+ margin-right: 0rem;
+}
+
+.my-0 {
+ margin-top: 0rem;
+ margin-bottom: 0rem;
+}
+
+.mt-0 {
+ margin-top: 0rem;
+}
+
+.ml-0 {
+ margin-left: 0rem;
+}
+
+.mr-0 {
+ margin-right: 0rem;
+}
+
+.mb-0 {
+ margin-bottom: 0rem;
+}
+
+.p-0 {
+ padding: 0rem;
+}
+
+.px-0 {
+ padding-left: 0rem;
+ padding-right: 0rem;
+}
+
+.py-0 {
+ padding-top: 0rem;
+ padding-bottom: 0rem;
+}
+
+.pt-0 {
+ padding-top: 0rem;
+}
+
+.pl-0 {
+ padding-left: 0rem;
+}
+
+.pb-0 {
+ padding-bottom: 0rem;
+}
+
.m-1 {
margin: 1rem;
}
@@ -453,6 +530,56 @@ aside {
flex-shrink: 0;
}
+.avatar {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: #1F2605;
+ border-radius: 50%;
+ color: #D6CE15;
+ font-weight: bold;
+ text-underline: none;
+}
+
+.avatar-small {
+ width: 3rem;
+ height: 3rem;
+ font-size: 2rem;
+}
+
+.avatar-medium {
+ width: 5rem;
+ height: 5rem;
+ font-size: 3.3333333333rem;
+}
+
+.avatar-large {
+ width: 8rem;
+ height: 8rem;
+ font-size: 5.3333333333rem;
+}
+
+.alert-box,
+.alert-error,
+.alert-success {
+ border: 1px solid #53900F;
+ color: #53900F;
+ font-weight: bold;
+ border-radius: 3px;
+}
+
+.alert-success {
+ border-color: green;
+ background-color: green;
+ color: #ffffff;
+}
+
+.alert-error {
+ border-color: red;
+ background-color: red;
+ color: #ffffff;
+}
+
.auth {
max-width: 350px;
width: 100%;
diff --git a/public/js/app.js b/public/js/app.js
index 46ed82d..0e9b92f 100644
--- a/public/js/app.js
+++ b/public/js/app.js
@@ -1897,6 +1897,26 @@ module.exports = {
};
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AlertBox.vue?vue&type=script&lang=js&":
+/*!*******************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AlertBox.vue?vue&type=script&lang=js& ***!
+ \*******************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "AlertBox",
+ props: ['type', 'message']
+});
+
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/App.vue?vue&type=script&lang=js&":
@@ -1920,6 +1940,8 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
+//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
@@ -1943,6 +1965,90 @@ __webpack_require__.r(__webpack_exports__);
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Avatar.vue?vue&type=script&lang=js&":
+/*!*****************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Avatar.vue?vue&type=script&lang=js& ***!
+ \*****************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "Avatar",
+ props: ['avatar', 'alt', 'size']
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/InputField.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/InputField.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "InputField",
+ props: ['name', 'type', 'label', 'placeholder', 'errors', 'data'],
+ data: function data() {
+ return {
+ value: ''
+ };
+ },
+ computed: {
+ hasError: function hasError() {
+ return this.errors && this.errors[this.name] && this.errors[this.name].length > 0;
+ }
+ },
+ methods: {
+ updateField: function updateField() {
+ this.clearErrors(this.name);
+ this.$emit('update:field', this.value);
+ },
+ errorMessage: function errorMessage() {
+ if (this.hasError) {
+ return this.errors[this.name][0];
+ }
+ },
+ clearErrors: function clearErrors() {
+ if (this.hasError) {
+ this.errors[this.name] = null;
+ }
+ },
+ errorClassObject: function errorClassObject() {
+ return {
+ 'error-field': this.hasError
+ };
+ }
+ },
+ watch: {
+ data: function data(val) {
+ this.value = val;
+ }
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Nav.vue?vue&type=script&lang=js&":
/*!**************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Nav.vue?vue&type=script&lang=js& ***!
@@ -1953,6 +2059,7 @@ __webpack_require__.r(__webpack_exports__);
"use strict";
__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 _Avatar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Avatar */ "./resources/js/components/Avatar.vue");
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
@@ -1973,16 +2080,38 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
//
//
//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
/* harmony default export */ __webpack_exports__["default"] = ({
name: "Nav",
+ components: {
+ Avatar: _Avatar__WEBPACK_IMPORTED_MODULE_1__["default"]
+ },
computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapGetters"])({
authUser: 'authUser'
})),
- mounted: function mounted() {// axios.get('/api/auth-user')
- // .then(res => {
- // this.user = res.data
- // })
+ methods: {
+ logout: function logout() {
+ axios.post('logout').then(function (res) {
+ if (res.status === 302 || 401) {
+ window.location.href = '/login';
+ }
+ })["catch"](function (error) {});
+ }
}
});
@@ -2009,6 +2138,88 @@ __webpack_require__.r(__webpack_exports__);
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/CssTesteur.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/CssTesteur.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "CssTesteur"
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/DashBoard.vue?vue&type=script&lang=js&":
+/*!***************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/DashBoard.vue?vue&type=script&lang=js& ***!
+ \***************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _User_UserAdmin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./User/UserAdmin */ "./resources/js/views/User/UserAdmin.vue");
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "DashBoard",
+ components: {
+ UserAdmin: _User_UserAdmin__WEBPACK_IMPORTED_MODULE_0__["default"]
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/Home.vue?vue&type=script&lang=js&":
/*!**********************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/Home.vue?vue&type=script&lang=js& ***!
@@ -2022,12 +2233,146 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
+//
+//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
name: "Home"
});
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js&":
+/*!********************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__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 _components_Avatar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../components/Avatar */ "./resources/js/components/Avatar.vue");
+/* harmony import */ var _components_AlertBox__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../components/AlertBox */ "./resources/js/components/AlertBox.vue");
+/* harmony import */ var _components_InputField__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../components/InputField */ "./resources/js/components/InputField.vue");
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
+
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(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; }
+
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "UserAdmin",
+ components: {
+ Avatar: _components_Avatar__WEBPACK_IMPORTED_MODULE_1__["default"],
+ AlertBox: _components_AlertBox__WEBPACK_IMPORTED_MODULE_2__["default"],
+ InputField: _components_InputField__WEBPACK_IMPORTED_MODULE_3__["default"]
+ },
+ data: function data() {
+ return {
+ form: {
+ name: '',
+ email: ''
+ },
+ alertType: '',
+ alertMessage: '',
+ errors: null
+ };
+ },
+ computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapGetters"])({
+ authUser: 'authUser'
+ })),
+ methods: {
+ addMember: function addMember() {
+ var _this = this;
+
+ console.log('addMember');
+
+ if (this.form.name.length <= 4 && this.form.name.email <= 12) {
+ axios.post('/api/users', {
+ name: this.form.name,
+ email: this.form.email
+ }).then(function (res) {
+ console.log(res);
+ _this.form.name = '';
+ _this.form.email = '';
+ _this.alertType = 'success';
+ _this.alertMessage = "".concat(res.data.data.attributes.name, " a bien \xE9t\xE9 cr\xE9\xE9");
+ })["catch"](function (errors) {
+ console.log(errors);
+ _this.alertType = 'error';
+ _this.alertMessage = "L'utilisateur n'a pas \xE9t\xE9 cr\xE9\xE9";
+ });
+ } else {
+ this.alertType = 'error';
+ this.alertMessage = "Le formulaire n'est pas correctement renseign\xE9.";
+ }
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js");
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
+
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(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; }
+
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "Profil",
+ computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapGetters"])({
+ authUser: 'authUser'
+ }))
+});
+
+/***/ }),
+
/***/ "./node_modules/lodash/lodash.js":
/*!***************************************!*\
!*** ./node_modules/lodash/lodash.js ***!
@@ -19610,6 +19955,32 @@ exports.clearImmediate = (typeof self !== "undefined" && self.clearImmediate) ||
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ "./node_modules/webpack/buildin/global.js")))
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c&":
+/*!***********************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c& ***!
+ \***********************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "p-1", class: "alert-" + _vm.type }, [
+ _vm._v(_vm._s(_vm.message))
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/App.vue?vue&type=template&id=332fccf4&":
@@ -19638,7 +20009,7 @@ var render = function() {
[
_c("SideBar"),
_vm._v(" "),
- _c("router-view", { staticClass: "main" })
+ _c("main", [_c("router-view", { staticClass: "main" })], 1)
],
1
)
@@ -19651,6 +20022,170 @@ render._withStripped = true
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Avatar.vue?vue&type=template&id=62781b04&":
+/*!*********************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Avatar.vue?vue&type=template&id=62781b04& ***!
+ \*********************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", [
+ _vm.avatar
+ ? _c("img", {
+ staticClass: "avatar",
+ class: "avatar" + _vm.size,
+ attrs: { src: "avatar", alt: "alt" }
+ })
+ : _c("span", { staticClass: "avatar", class: "avatar-" + _vm.size }, [
+ _vm._v(_vm._s(_vm.alt[0]))
+ ])
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a&":
+/*!*************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a& ***!
+ \*************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "relative" }, [
+ _c("label", { staticClass: "pb-1", attrs: { for: _vm.name } }, [
+ _vm._v(_vm._s(_vm.label))
+ ]),
+ _vm._v(" "),
+ _vm.type === "checkbox"
+ ? _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.value,
+ expression: "value"
+ }
+ ],
+ class: _vm.errorClassObject(),
+ attrs: {
+ id: _vm.name,
+ placeholder: _vm.placeholder,
+ type: "checkbox"
+ },
+ domProps: {
+ checked: Array.isArray(_vm.value)
+ ? _vm._i(_vm.value, null) > -1
+ : _vm.value
+ },
+ on: {
+ input: function($event) {
+ return _vm.updateField()
+ },
+ change: function($event) {
+ var $$a = _vm.value,
+ $$el = $event.target,
+ $$c = $$el.checked ? true : false
+ if (Array.isArray($$a)) {
+ var $$v = null,
+ $$i = _vm._i($$a, $$v)
+ if ($$el.checked) {
+ $$i < 0 && (_vm.value = $$a.concat([$$v]))
+ } else {
+ $$i > -1 &&
+ (_vm.value = $$a.slice(0, $$i).concat($$a.slice($$i + 1)))
+ }
+ } else {
+ _vm.value = $$c
+ }
+ }
+ }
+ })
+ : _vm.type === "radio"
+ ? _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.value,
+ expression: "value"
+ }
+ ],
+ class: _vm.errorClassObject(),
+ attrs: { id: _vm.name, placeholder: _vm.placeholder, type: "radio" },
+ domProps: { checked: _vm._q(_vm.value, null) },
+ on: {
+ input: function($event) {
+ return _vm.updateField()
+ },
+ change: function($event) {
+ _vm.value = null
+ }
+ }
+ })
+ : _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.value,
+ expression: "value"
+ }
+ ],
+ class: _vm.errorClassObject(),
+ attrs: { id: _vm.name, placeholder: _vm.placeholder, type: _vm.type },
+ domProps: { value: _vm.value },
+ on: {
+ input: [
+ function($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.value = $event.target.value
+ },
+ function($event) {
+ return _vm.updateField()
+ }
+ ]
+ }
+ }),
+ _vm._v(" "),
+ _c(
+ "p",
+ {
+ staticClass: "text-alert",
+ domProps: { textContent: _vm._s(_vm.errorMessage()) }
+ },
+ [_vm._v("Error Here")]
+ )
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Nav.vue?vue&type=template&id=7cd4f788&":
@@ -19677,8 +20212,23 @@ var render = function() {
_vm.authUser
? _c(
"router-link",
- { attrs: { to: "/users/" + _vm.authUser.data.user_id } },
- [_vm._v("Me")]
+ { staticClass: "flex-center", attrs: { to: "/profil" } },
+ [
+ _c("Avatar", {
+ staticClass: "mr-1",
+ attrs: {
+ avatar: _vm.authUser.data.attributes.avatar,
+ size: "small",
+ alt: _vm.authUser.data.attributes.name
+ }
+ }),
+ _vm._v(
+ "\n " +
+ _vm._s(_vm.authUser.data.attributes.name) +
+ "\n "
+ )
+ ],
+ 1
)
: _vm._e(),
_vm._v(" "),
@@ -19692,23 +20242,70 @@ var render = function() {
])
: _vm._e(),
_vm._v(" "),
- _c("router-link", { attrs: { to: "/connexion" } }, [
- _c(
- "svg",
- {
- staticClass: "fill-current site-logo",
- attrs: { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }
- },
- [
- _c("path", {
- attrs: {
- d:
- "M22.9 10.1c-.1-.1-.2-.2-.3-.2L20 9.5c-.1-.5-.3-.9-.6-1.4.2-.2.4-.6.8-1 .3-.4.6-.8.7-1 .1 0 .1-.2.1-.3 0-.1 0-.2-.1-.3-.3-.5-1.1-1.3-2.4-2.4-.1-.1-.2-.1-.4-.1-.1 0-.3 0-.3.1l-2 1.5c-.4-.2-.8-.4-1.3-.5l-.4-2.6c0-.1-.1-.2-.2-.3-.1-.2-.2-.2-.3-.2h-3.2c-.3 0-.4.1-.5.4-.1.5-.3 1.4-.4 2.7-.5.1-.9.3-1.3.5l-2-1.5c-.1-.1-.3-.2-.4-.2-.2 0-.7.3-1.4 1-.6.7-1.1 1.3-1.4 1.6-.1.1-.1.2-.1.3 0 .1 0 .2.1.3.6.8 1.2 1.4 1.5 2-.2.5-.3.9-.5 1.4l-2.6.4c-.1 0-.2.1-.3.2-.1.1-.1.2-.1.3v3.2c0 .1 0 .2.1.3.1.1.2.2.3.2l2.6.4c.1.5.3.9.6 1.4-.2.2-.4.6-.8 1-.3.4-.6.8-.7 1-.1.1-.1.2-.1.3 0 .1 0 .2.1.3.4.5 1.2 1.3 2.4 2.4.1.1.2.2.4.2.1 0 .3 0 .4-.1l2-1.5c.3.1.7.3 1.2.5l.4 2.6c0 .1.1.2.2.3.1.1.2.1.4.1h3.2c.3 0 .4-.1.5-.4.1-.5.3-1.4.4-2.7.4-.1.9-.3 1.3-.5l2 1.5c.1.1.3.1.4.1.2 0 .7-.3 1.3-1 .7-.7 1.2-1.2 1.4-1.5.1-.1.1-.2.1-.3 0-.1 0-.2-.1-.4-.7-.8-1.2-1.5-1.5-2 .2-.4.4-.8.6-1.3l2.7-.4c.1 0 .2-.1.3-.2.1-.1.1-.2.1-.3v-3.2c-.2-.1-.2-.2-.3-.3zm-8.3 4.5c-.7.7-1.6 1.1-2.6 1.1s-1.9-.4-2.6-1.1c-.7-.7-1.1-1.6-1.1-2.6s.4-1.9 1.1-2.6c.7-.7 1.6-1.1 2.6-1.1s1.9.4 2.6 1.1c.7.7 1.1 1.6 1.1 2.6s-.4 1.9-1.1 2.6z"
+ _c(
+ "div",
+ [
+ _c("router-link", { attrs: { to: "/dashboard" } }, [
+ _c(
+ "svg",
+ {
+ staticClass: "fill-current site-logo",
+ attrs: {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24"
+ }
+ },
+ [
+ _c("title", [_vm._v("Paramètres")]),
+ _vm._v(" "),
+ _c("path", {
+ attrs: {
+ d:
+ "M22.9 10.1c-.1-.1-.2-.2-.3-.2L20 9.5c-.1-.5-.3-.9-.6-1.4.2-.2.4-.6.8-1 .3-.4.6-.8.7-1 .1 0 .1-.2.1-.3 0-.1 0-.2-.1-.3-.3-.5-1.1-1.3-2.4-2.4-.1-.1-.2-.1-.4-.1-.1 0-.3 0-.3.1l-2 1.5c-.4-.2-.8-.4-1.3-.5l-.4-2.6c0-.1-.1-.2-.2-.3-.1-.2-.2-.2-.3-.2h-3.2c-.3 0-.4.1-.5.4-.1.5-.3 1.4-.4 2.7-.5.1-.9.3-1.3.5l-2-1.5c-.1-.1-.3-.2-.4-.2-.2 0-.7.3-1.4 1-.6.7-1.1 1.3-1.4 1.6-.1.1-.1.2-.1.3 0 .1 0 .2.1.3.6.8 1.2 1.4 1.5 2-.2.5-.3.9-.5 1.4l-2.6.4c-.1 0-.2.1-.3.2-.1.1-.1.2-.1.3v3.2c0 .1 0 .2.1.3.1.1.2.2.3.2l2.6.4c.1.5.3.9.6 1.4-.2.2-.4.6-.8 1-.3.4-.6.8-.7 1-.1.1-.1.2-.1.3 0 .1 0 .2.1.3.4.5 1.2 1.3 2.4 2.4.1.1.2.2.4.2.1 0 .3 0 .4-.1l2-1.5c.3.1.7.3 1.2.5l.4 2.6c0 .1.1.2.2.3.1.1.2.1.4.1h3.2c.3 0 .4-.1.5-.4.1-.5.3-1.4.4-2.7.4-.1.9-.3 1.3-.5l2 1.5c.1.1.3.1.4.1.2 0 .7-.3 1.3-1 .7-.7 1.2-1.2 1.4-1.5.1-.1.1-.2.1-.3 0-.1 0-.2-.1-.4-.7-.8-1.2-1.5-1.5-2 .2-.4.4-.8.6-1.3l2.7-.4c.1 0 .2-.1.3-.2.1-.1.1-.2.1-.3v-3.2c-.2-.1-.2-.2-.3-.3zm-8.3 4.5c-.7.7-1.6 1.1-2.6 1.1s-1.9-.4-2.6-1.1c-.7-.7-1.1-1.6-1.1-2.6s.4-1.9 1.1-2.6c.7-.7 1.6-1.1 2.6-1.1s1.9.4 2.6 1.1c.7.7 1.1 1.6 1.1 2.6s-.4 1.9-1.1 2.6z"
+ }
+ })
+ ]
+ )
+ ]),
+ _vm._v(" "),
+ _c(
+ "a",
+ {
+ staticClass: "nav-link",
+ attrs: { href: "#" },
+ on: {
+ click: function($event) {
+ $event.preventDefault()
+ return _vm.logout($event)
+ }
}
- })
- ]
- )
- ])
+ },
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "fill-current site-logo",
+ attrs: {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24"
+ }
+ },
+ [
+ _c("title", [_vm._v("Déconnexion")]),
+ _vm._v(" "),
+ _c("path", {
+ attrs: {
+ d:
+ "M21 3h-3.8c-.7 0-1.3-.6-1.3-1.3S16.5.4 17.2.4h5.1c.7 0 1.3.6 1.3 1.3v20.5c0 .7-.6 1.3-1.3 1.3h-5.1c-.7 0-1.3-.6-1.3-1.3 0-.7.6-1.3 1.3-1.3H21V3zm-6.9 7.7L8.6 5.2c-.5-.5-.6-1.3-.1-1.8s1.3-.5 1.8 0l7.7 7.7c.8.8.2 2.2-.9 2.2H1.8c-.7 0-1.3-.6-1.3-1.3 0-.7.6-1.3 1.3-1.3h12.3zm-1.6 4.8c.5-.5 1.3-.4 1.8.1s.4 1.3-.1 1.8l-3.8 3.2c-.5.5-1.3.4-1.8-.1-.6-.5-.5-1.3 0-1.7l3.9-3.3z"
+ }
+ })
+ ]
+ )
+ ]
+ )
+ ],
+ 1
+ )
],
1
)
@@ -19742,6 +20339,177 @@ render._withStripped = true
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68&":
+/*!********************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68& ***!
+ \********************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "m-2" }, [
+ _c("h1", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("h2", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("h3", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("h4", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("h5", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("h6", [_vm._v("testeur CSS")]),
+ _vm._v(" "),
+ _c("p", [
+ _vm._v(
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum"
+ )
+ ]),
+ _vm._v(" "),
+ _c(
+ "p",
+ [
+ _vm._v("Lorem ipsum dolor sit amet, "),
+ _c("strong", [_vm._v("consectetur adipiscing elit")]),
+ _vm._v(", sed do "),
+ _c("italic", [_vm._v("eiusmod tempor incididunt")]),
+ _vm._v(
+ " ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum"
+ )
+ ],
+ 1
+ ),
+ _vm._v(" "),
+ _vm._m(0),
+ _vm._v(" "),
+ _vm._m(1),
+ _vm._v(" "),
+ _vm._m(2)
+ ])
+}
+var staticRenderFns = [
+ function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "py-1" }, [
+ _c("a", { staticClass: "btn", attrs: { href: "#" } }, [
+ _vm._v("Boutton")
+ ]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-primary", attrs: { href: "#" } }, [
+ _vm._v("Boutton primary")
+ ]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-secondary", attrs: { href: "#" } }, [
+ _vm._v("Boutton secondary")
+ ]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-alert", attrs: { href: "#" } }, [
+ _vm._v("Boutton alert")
+ ])
+ ])
+ },
+ function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "py-1" }, [
+ _c("a", { staticClass: "btn", attrs: { href: "#" } }, [_vm._v("X")]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-primary", attrs: { href: "#" } }, [
+ _vm._v("X")
+ ]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-secondary", attrs: { href: "#" } }, [
+ _vm._v("X")
+ ]),
+ _vm._v(" "),
+ _c("a", { staticClass: "btn-alert", attrs: { href: "#" } }, [_vm._v("X")])
+ ])
+ },
+ function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("form", [
+ _c("label", [_vm._v("Test label")]),
+ _vm._v(" "),
+ _c("input", { attrs: { type: "text", placeholder: "Test placeholder" } }),
+ _vm._v(" "),
+ _c("input", { attrs: { type: "number" } }),
+ _vm._v(" "),
+ _c("input", { attrs: { type: "checkbox" } }),
+ _vm._v(" "),
+ _c("select", [
+ _c("option", [_vm._v("test 1")]),
+ _vm._v(" "),
+ _c("option", [_vm._v("test 2")]),
+ _vm._v(" "),
+ _c("option", [_vm._v("test 3")])
+ ]),
+ _vm._v(" "),
+ _c("input", { attrs: { type: "submit" } })
+ ])
+ }
+]
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265&":
+/*!*******************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265& ***!
+ \*******************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c(
+ "div",
+ { staticClass: "m-2" },
+ [
+ _c(
+ "div",
+ { staticClass: "flex-between" },
+ [
+ _c("h1", { staticClass: "mb-3" }, [_vm._v("Administration")]),
+ _vm._v(" "),
+ _c("router-link", { attrs: { to: "/logout" } }, [
+ _vm._v("Déconnexion")
+ ])
+ ],
+ 1
+ ),
+ _vm._v(" "),
+ _c("UserAdmin")
+ ],
+ 1
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/Home.vue?vue&type=template&id=63cd6604&":
@@ -19759,7 +20527,157 @@ var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
- return _c("h1", [_vm._v("Home")])
+ return _c(
+ "div",
+ [
+ _c("h1", [_vm._v("Home")]),
+ _vm._v(" "),
+ _c("router-link", { attrs: { to: "/css-testeur" } }, [
+ _vm._v("Css Testeur")
+ ])
+ ],
+ 1
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf&":
+/*!************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf& ***!
+ \************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", [
+ _c("div", { staticClass: "flex mb-4" }, [
+ _c(
+ "div",
+ { staticClass: "avatar mr-2" },
+ [
+ _c("Avatar", {
+ attrs: {
+ avatar: _vm.authUser.data.attributes.avatar,
+ size: "large",
+ alt: _vm.authUser.data.attributes.name
+ }
+ })
+ ],
+ 1
+ ),
+ _vm._v(" "),
+ _c("div", { staticClass: "flex-col flex-center" }, [
+ _c("div", [
+ _c("strong", [_vm._v(_vm._s(_vm.authUser.data.attributes.name))])
+ ]),
+ _vm._v(" "),
+ _c("div", [
+ _c("strong", [_vm._v(_vm._s(_vm.authUser.data.attributes.email))])
+ ])
+ ])
+ ]),
+ _vm._v(" "),
+ _vm.authUser.data.attributes.is_admin
+ ? _c(
+ "div",
+ [
+ _c("h2", { staticClass: "mb-1" }, [_vm._v("Ajouter un membre")]),
+ _vm._v(" "),
+ _vm.alertType
+ ? _c("AlertBox", {
+ staticClass: "mb-1",
+ attrs: { type: _vm.alertType, message: _vm.alertMessage }
+ })
+ : _vm._e(),
+ _vm._v(" "),
+ _c(
+ "form",
+ {
+ on: {
+ submit: function($event) {
+ $event.preventDefault()
+ return _vm.addMember($event)
+ }
+ }
+ },
+ [
+ _c("InputField", {
+ attrs: {
+ name: "name",
+ type: "text",
+ label: "Nom du nouveau membre",
+ placeholder: "Nom",
+ errors: _vm.errors
+ },
+ on: {
+ "update:field": function($event) {
+ _vm.form.name = $event
+ }
+ }
+ }),
+ _vm._v(" "),
+ _c("InputField", {
+ attrs: {
+ name: "email",
+ type: "email",
+ label: "Adresse email du nouveau membre",
+ placeholder: "E-mail",
+ errors: _vm.errors
+ },
+ on: {
+ "update:field": function($event) {
+ _vm.form.email = $event
+ }
+ }
+ }),
+ _vm._v(" "),
+ _c("button", [_vm._v("Ajouter")])
+ ],
+ 1
+ )
+ ],
+ 1
+ )
+ : _vm._e()
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c&":
+/*!*************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c& ***!
+ \*************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", [
+ _c("h1", [_vm._v(_vm._s(_vm.authUser.data.attributes.name))])
+ ])
}
var staticRenderFns = []
render._withStripped = true
@@ -35971,6 +36889,75 @@ window._ = __webpack_require__(/*! lodash */ "./node_modules/lodash/lodash.js");
window.axios = __webpack_require__(/*! axios */ "./node_modules/axios/index.js");
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
+/***/ }),
+
+/***/ "./resources/js/components/AlertBox.vue":
+/*!**********************************************!*\
+ !*** ./resources/js/components/AlertBox.vue ***!
+ \**********************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlertBox.vue?vue&type=template&id=9404768c& */ "./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c&");
+/* harmony import */ var _AlertBox_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlertBox.vue?vue&type=script&lang=js& */ "./resources/js/components/AlertBox.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _AlertBox_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/AlertBox.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/AlertBox.vue?vue&type=script&lang=js&":
+/*!***********************************************************************!*\
+ !*** ./resources/js/components/AlertBox.vue?vue&type=script&lang=js& ***!
+ \***********************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AlertBox_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./AlertBox.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AlertBox.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AlertBox_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c&":
+/*!*****************************************************************************!*\
+ !*** ./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c& ***!
+ \*****************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./AlertBox.vue?vue&type=template&id=9404768c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AlertBox.vue?vue&type=template&id=9404768c&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlertBox_vue_vue_type_template_id_9404768c___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/App.vue":
@@ -36040,6 +37027,144 @@ __webpack_require__.r(__webpack_exports__);
+/***/ }),
+
+/***/ "./resources/js/components/Avatar.vue":
+/*!********************************************!*\
+ !*** ./resources/js/components/Avatar.vue ***!
+ \********************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Avatar.vue?vue&type=template&id=62781b04& */ "./resources/js/components/Avatar.vue?vue&type=template&id=62781b04&");
+/* harmony import */ var _Avatar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Avatar.vue?vue&type=script&lang=js& */ "./resources/js/components/Avatar.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _Avatar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/Avatar.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/Avatar.vue?vue&type=script&lang=js&":
+/*!*********************************************************************!*\
+ !*** ./resources/js/components/Avatar.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Avatar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./Avatar.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Avatar.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Avatar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/Avatar.vue?vue&type=template&id=62781b04&":
+/*!***************************************************************************!*\
+ !*** ./resources/js/components/Avatar.vue?vue&type=template&id=62781b04& ***!
+ \***************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./Avatar.vue?vue&type=template&id=62781b04& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Avatar.vue?vue&type=template&id=62781b04&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Avatar_vue_vue_type_template_id_62781b04___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/components/InputField.vue":
+/*!************************************************!*\
+ !*** ./resources/js/components/InputField.vue ***!
+ \************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./InputField.vue?vue&type=template&id=eb71a80a& */ "./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a&");
+/* harmony import */ var _InputField_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InputField.vue?vue&type=script&lang=js& */ "./resources/js/components/InputField.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _InputField_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/InputField.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/InputField.vue?vue&type=script&lang=js&":
+/*!*************************************************************************!*\
+ !*** ./resources/js/components/InputField.vue?vue&type=script&lang=js& ***!
+ \*************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_InputField_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./InputField.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/InputField.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_InputField_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a&":
+/*!*******************************************************************************!*\
+ !*** ./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a& ***!
+ \*******************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./InputField.vue?vue&type=template&id=eb71a80a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/InputField.vue?vue&type=template&id=eb71a80a&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_InputField_vue_vue_type_template_id_eb71a80a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/Nav.vue":
@@ -36193,9 +37318,14 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var vue_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-router */ "./node_modules/vue-router/dist/vue-router.esm.js");
/* harmony import */ var _views_Home__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./views/Home */ "./resources/js/views/Home.vue");
+/* harmony import */ var _views_User_UserProfil__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./views/User/UserProfil */ "./resources/js/views/User/UserProfil.vue");
+/* harmony import */ var _views_DashBoard__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./views/DashBoard */ "./resources/js/views/DashBoard.vue");
+/* harmony import */ var _views_CssTesteur__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./views/CssTesteur */ "./resources/js/views/CssTesteur.vue");
+
+
+
- // import UserShow from "./views/Users/Show"
vue__WEBPACK_IMPORTED_MODULE_0___default.a.use(vue_router__WEBPACK_IMPORTED_MODULE_1__["default"]);
/* harmony default export */ __webpack_exports__["default"] = (new vue_router__WEBPACK_IMPORTED_MODULE_1__["default"]({
@@ -36207,6 +37337,27 @@ vue__WEBPACK_IMPORTED_MODULE_0___default.a.use(vue_router__WEBPACK_IMPORTED_MODU
meta: {
title: 'Home'
}
+ }, {
+ path: '/profil',
+ name: 'profil',
+ component: _views_User_UserProfil__WEBPACK_IMPORTED_MODULE_3__["default"],
+ meta: {
+ title: 'Profil'
+ }
+ }, {
+ path: '/dashboard',
+ name: 'dashboard',
+ component: _views_DashBoard__WEBPACK_IMPORTED_MODULE_4__["default"],
+ meta: {
+ title: 'Dashboard'
+ }
+ }, {
+ path: '/css-testeur',
+ name: 'css-testeur',
+ component: _views_CssTesteur__WEBPACK_IMPORTED_MODULE_5__["default"],
+ meta: {
+ title: 'css-testeur'
+ }
}]
}));
@@ -36320,6 +37471,144 @@ var mutations = {
mutations: mutations
});
+/***/ }),
+
+/***/ "./resources/js/views/CssTesteur.vue":
+/*!*******************************************!*\
+ !*** ./resources/js/views/CssTesteur.vue ***!
+ \*******************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CssTesteur.vue?vue&type=template&id=a3a57f68& */ "./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68&");
+/* harmony import */ var _CssTesteur_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CssTesteur.vue?vue&type=script&lang=js& */ "./resources/js/views/CssTesteur.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _CssTesteur_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/views/CssTesteur.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/views/CssTesteur.vue?vue&type=script&lang=js&":
+/*!********************************************************************!*\
+ !*** ./resources/js/views/CssTesteur.vue?vue&type=script&lang=js& ***!
+ \********************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CssTesteur_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./CssTesteur.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/CssTesteur.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CssTesteur_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68&":
+/*!**************************************************************************!*\
+ !*** ./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68& ***!
+ \**************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./CssTesteur.vue?vue&type=template&id=a3a57f68& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/CssTesteur.vue?vue&type=template&id=a3a57f68&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CssTesteur_vue_vue_type_template_id_a3a57f68___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/views/DashBoard.vue":
+/*!******************************************!*\
+ !*** ./resources/js/views/DashBoard.vue ***!
+ \******************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./DashBoard.vue?vue&type=template&id=67b53265& */ "./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265&");
+/* harmony import */ var _DashBoard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DashBoard.vue?vue&type=script&lang=js& */ "./resources/js/views/DashBoard.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _DashBoard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/views/DashBoard.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/views/DashBoard.vue?vue&type=script&lang=js&":
+/*!*******************************************************************!*\
+ !*** ./resources/js/views/DashBoard.vue?vue&type=script&lang=js& ***!
+ \*******************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_DashBoard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./DashBoard.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/DashBoard.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_DashBoard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265&":
+/*!*************************************************************************!*\
+ !*** ./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265& ***!
+ \*************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./DashBoard.vue?vue&type=template&id=67b53265& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/DashBoard.vue?vue&type=template&id=67b53265&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_DashBoard_vue_vue_type_template_id_67b53265___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/views/Home.vue":
@@ -36389,6 +37678,144 @@ __webpack_require__.r(__webpack_exports__);
+/***/ }),
+
+/***/ "./resources/js/views/User/UserAdmin.vue":
+/*!***********************************************!*\
+ !*** ./resources/js/views/User/UserAdmin.vue ***!
+ \***********************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./UserAdmin.vue?vue&type=template&id=7972afbf& */ "./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf&");
+/* harmony import */ var _UserAdmin_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UserAdmin.vue?vue&type=script&lang=js& */ "./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _UserAdmin_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/views/User/UserAdmin.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js&":
+/*!************************************************************************!*\
+ !*** ./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js& ***!
+ \************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UserAdmin_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./UserAdmin.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserAdmin.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UserAdmin_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf&":
+/*!******************************************************************************!*\
+ !*** ./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf& ***!
+ \******************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./UserAdmin.vue?vue&type=template&id=7972afbf& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserAdmin.vue?vue&type=template&id=7972afbf&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserAdmin_vue_vue_type_template_id_7972afbf___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/views/User/UserProfil.vue":
+/*!************************************************!*\
+ !*** ./resources/js/views/User/UserProfil.vue ***!
+ \************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./UserProfil.vue?vue&type=template&id=4cbf647c& */ "./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c&");
+/* harmony import */ var _UserProfil_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UserProfil.vue?vue&type=script&lang=js& */ "./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _UserProfil_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/views/User/UserProfil.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js&":
+/*!*************************************************************************!*\
+ !*** ./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js& ***!
+ \*************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UserProfil_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./UserProfil.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserProfil.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UserProfil_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c&":
+/*!*******************************************************************************!*\
+ !*** ./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c& ***!
+ \*******************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./UserProfil.vue?vue&type=template&id=4cbf647c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/views/User/UserProfil.vue?vue&type=template&id=4cbf647c&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_UserProfil_vue_vue_type_template_id_4cbf647c___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/sass/app.scss":
diff --git a/resources/js/components/AlertBox.vue b/resources/js/components/AlertBox.vue
new file mode 100644
index 0000000..e8a8dfe
--- /dev/null
+++ b/resources/js/components/AlertBox.vue
@@ -0,0 +1,10 @@
+
+ {{ message }}
+
+
+
diff --git a/resources/js/components/App.vue b/resources/js/components/App.vue
index 9329008..8c88e53 100644
--- a/resources/js/components/App.vue
+++ b/resources/js/components/App.vue
@@ -3,7 +3,9 @@
-
+
+
+
diff --git a/resources/js/components/Avatar.vue b/resources/js/components/Avatar.vue
new file mode 100644
index 0000000..43a8a42
--- /dev/null
+++ b/resources/js/components/Avatar.vue
@@ -0,0 +1,14 @@
+
+
+
+
{{ alt[0] }}
+
+
+
+
+
diff --git a/resources/js/components/InputField.vue b/resources/js/components/InputField.vue
new file mode 100644
index 0000000..61589d6
--- /dev/null
+++ b/resources/js/components/InputField.vue
@@ -0,0 +1,53 @@
+
+
+
{{ label }}
+
+
Error Here
+
+
+
+
diff --git a/resources/js/components/Nav.vue b/resources/js/components/Nav.vue
index 2b05f27..751922b 100644
--- a/resources/js/components/Nav.vue
+++ b/resources/js/components/Nav.vue
@@ -1,32 +1,56 @@
Logo
- Me
+
+
+ {{ authUser.data.attributes.name }}
+
-
-
-
+
diff --git a/resources/js/router.js b/resources/js/router.js
index f1c151d..b62c1c8 100644
--- a/resources/js/router.js
+++ b/resources/js/router.js
@@ -1,7 +1,9 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from "./views/Home"
-// import UserShow from "./views/Users/Show"
+import Profil from "./views/User/UserProfil";
+import DashBoard from "./views/DashBoard";
+import CssTesteur from "./views/CssTesteur";
Vue.use(VueRouter)
@@ -13,5 +15,18 @@ export default new VueRouter({
path: '/', name: 'home', component: Home,
meta: { title: 'Home'}
},
+ {
+ path: '/profil', name: 'profil', component: Profil,
+ meta: { title: 'Profil'}
+ },
+ {
+ path: '/dashboard', name: 'dashboard', component: DashBoard,
+ meta: { title: 'Dashboard'}
+ },
+
+ {
+ path: '/css-testeur', name: 'css-testeur', component: CssTesteur,
+ meta: { title: 'css-testeur'}
+ },
]
})
diff --git a/resources/js/views/CssTesteur.vue b/resources/js/views/CssTesteur.vue
new file mode 100644
index 0000000..efa733e
--- /dev/null
+++ b/resources/js/views/CssTesteur.vue
@@ -0,0 +1,42 @@
+
+
+
testeur CSS
+
testeur CSS
+
testeur CSS
+
testeur CSS
+
testeur CSS
+
testeur CSS
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit , sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
+
+
+
+
+
+
+
diff --git a/resources/js/views/DashBoard.vue b/resources/js/views/DashBoard.vue
new file mode 100644
index 0000000..843245c
--- /dev/null
+++ b/resources/js/views/DashBoard.vue
@@ -0,0 +1,20 @@
+
+
+
+
Administration
+ Déconnexion
+
+
+
+
+
+
diff --git a/resources/js/views/Home.vue b/resources/js/views/Home.vue
index 679f23a..bb75944 100644
--- a/resources/js/views/Home.vue
+++ b/resources/js/views/Home.vue
@@ -1,5 +1,8 @@
- Home
+
+
Home
+ Css Testeur
+
diff --git a/resources/js/views/User/UserProfil.vue b/resources/js/views/User/UserProfil.vue
new file mode 100644
index 0000000..692ddc7
--- /dev/null
+++ b/resources/js/views/User/UserProfil.vue
@@ -0,0 +1,18 @@
+
+
+
{{ authUser.data.attributes.name }}
+
+
+
+
diff --git a/resources/lang/fr/auth.php b/resources/lang/fr/auth.php
new file mode 100644
index 0000000..e338787
--- /dev/null
+++ b/resources/lang/fr/auth.php
@@ -0,0 +1,13 @@
+ 'Ces informations d\'identification ne correspondent pas à nos dossier',
+ 'throttle' => 'Trop de tentatives de connexion. Merci de réessayer dans :seconds secondes.',
+ 'Login' => 'Connexion',
+ 'E-Mail' => 'E-Mail',
+ 'Password' => 'Mot de passe',
+ 'Remember Me' => 'Se souvenir de moi',
+ 'Forgot Your Password?' => 'Mot de passe oublié ?',
+
+];
diff --git a/resources/lang/fr/passwords.php b/resources/lang/fr/passwords.php
new file mode 100644
index 0000000..ec524cf
--- /dev/null
+++ b/resources/lang/fr/passwords.php
@@ -0,0 +1,9 @@
+ 'Votre mot de passe à été mis à jour!',
+ 'sent' => 'Nous vous avons envoyé un email content un lien pour changer de mote de passe!',
+ 'throttled' => 'Attendez avec d\' essayer à nouveau.',
+ 'token' => 'Ce token de mot de passe est invalide.',
+ 'user' => "Nous n'avons pas trouvé un utilisateur avec cette adresse email.",
+];
diff --git a/resources/lang/fr/validation.php b/resources/lang/fr/validation.php
new file mode 100644
index 0000000..0385b62
--- /dev/null
+++ b/resources/lang/fr/validation.php
@@ -0,0 +1,7 @@
+ 'La sélection :attribute est invalide.',
+ 'file' => 'Le :attribute doit être un fichier.',
+];
diff --git a/resources/sass/app.scss b/resources/sass/app.scss
index 8dd0039..4d8736d 100644
--- a/resources/sass/app.scss
+++ b/resources/sass/app.scss
@@ -11,5 +11,7 @@
@import "components/main";
@import "components/nav";
@import "components/sidebar";
+@import "components/avatar";
+@import "components/alert_box";
@import "pages/auth";
diff --git a/resources/sass/components/alert_box.scss b/resources/sass/components/alert_box.scss
new file mode 100644
index 0000000..94783ce
--- /dev/null
+++ b/resources/sass/components/alert_box.scss
@@ -0,0 +1,21 @@
+.alert-box {
+ border: 1px solid $medium;
+ color: $medium;
+ font-weight: bold;
+ border-radius: 3px;
+
+}
+
+.alert-success {
+ @extend .alert-box;
+ border-color: $success;
+ background-color: $success;
+ color: $white;
+}
+
+.alert-error {
+ @extend .alert-box;
+ border-color: $error;
+ background-color: $error;
+ color: $white;
+}
diff --git a/resources/sass/components/avatar.scss b/resources/sass/components/avatar.scss
new file mode 100644
index 0000000..98e8aa8
--- /dev/null
+++ b/resources/sass/components/avatar.scss
@@ -0,0 +1,31 @@
+.avatar {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: $dark;
+ border-radius: 50%;
+ color: $light;
+ font-weight: bold;
+ text-underline: none;
+
+ &-small {
+ $size: 3rem;
+ width: $size;
+ height: $size;
+ font-size: $size *2/3;
+ }
+
+ &-medium {
+ $size: 5rem;
+ width: $size;
+ height: $size;
+ font-size: $size *2/3;
+ }
+
+ &-large {
+ $size: 8rem;
+ width: $size;
+ height: $size;
+ font-size: $size *2/3;
+ }
+}
diff --git a/resources/sass/setup/_colors.scss b/resources/sass/setup/_colors.scss
index d6138a5..b7cd4c3 100644
--- a/resources/sass/setup/_colors.scss
+++ b/resources/sass/setup/_colors.scss
@@ -17,7 +17,8 @@ $light: #D6CE15;
$primary: $mediumDark;
$secondary: #000;
$interactive: #000;
-$error: #000;
+$success: green;
+$error: red;
$disabled: #000;
$font: $black;
diff --git a/resources/sass/setup/_positions.scss b/resources/sass/setup/_positions.scss
index 0559644..9ec03d5 100644
--- a/resources/sass/setup/_positions.scss
+++ b/resources/sass/setup/_positions.scss
@@ -29,7 +29,7 @@ $base: 1rem;
.flex-center {
display: flex;
- align-items: center;
+ justify-content: center;
}
.flex-end {
@@ -56,7 +56,7 @@ $base: 1rem;
padding-right: auto;
}
-@for $i from 1 through 5 {
+@for $i from 0 through 5 {
.m-#{$i} {
margin: $i * $base;
}
diff --git a/resources/sass/setup/_reset.scss b/resources/sass/setup/_reset.scss
index 14d87e6..baf4224 100644
--- a/resources/sass/setup/_reset.scss
+++ b/resources/sass/setup/_reset.scss
@@ -4,10 +4,12 @@ body {
margin: 0;
}
-div,
-input,
-nav,
-aside {
+* {
box-sizing: border-box;
}
+@for $i from 1 through 6 {
+ h#{$i} {
+ margin: 0;
+ }
+}
diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php
index c12b97e..0c54893 100644
--- a/resources/views/auth/login.blade.php
+++ b/resources/views/auth/login.blade.php
@@ -1,73 +1,51 @@
@extends('layouts.app')
@section('content')
-
-
-
-
-
+
+
{{ __('E-Mail') }}
+
+
+ @error('email')
+
+ {{ $message }}
+
+ @enderror
-
+
+
{{ __('Password') }}
+
+
+
+ @error('password')
+
+ {{ $message }}
+
+ @enderror
+
+
+
+
+
+
+ {{ __('Remember Me') }}
+
+
+
+
+
+
@endsection
diff --git a/routes/api.php b/routes/api.php
index 087a4fd..11886e6 100644
--- a/routes/api.php
+++ b/routes/api.php
@@ -17,4 +17,11 @@ use Illuminate\Support\Facades\Route;
Route::middleware('auth:api')->group(function () {
Route::get('auth-user', 'AuthUserController@show');
+
+ Route::apiResources([
+// '/posts' => 'PostController',
+ '/users' => 'UserController',
+// '/users/{user}/posts' => 'UserPostController',
+// '/friend-request' => 'FriendRequestController',
+ ]);
});
diff --git a/routes/web.php b/routes/web.php
index 58f59bc..e1dbabe 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -2,7 +2,7 @@
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
-Auth::routes();
+Auth::routes(['register' => false]);
Route::get('{any}', 'AppController@index')
->where('any', '.*')
diff --git a/tests/Feature/UserAuthTest.php b/tests/Feature/UserAuthTest.php
index 47977b4..a1bff6e 100644
--- a/tests/Feature/UserAuthTest.php
+++ b/tests/Feature/UserAuthTest.php
@@ -5,6 +5,7 @@ namespace Tests\Feature;
use App\User;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Foundation\Testing\WithFaker;
+use Symfony\Component\HttpFoundation\Response;
use Tests\TestCase;
class UserAuthTest extends TestCase
@@ -19,7 +20,7 @@ class UserAuthTest extends TestCase
$response = $this->get('/api/auth-user');
- $response->assertStatus(200)
+ $response->assertStatus(Response::HTTP_OK)
->assertJson([
'data' => [
'user_id' => $user->id,
@@ -32,4 +33,30 @@ class UserAuthTest extends TestCase
]
]);
}
+
+ /** @test */
+ public function an_admin_can_add_member()
+ {
+ $this->actingAs($user = factory(User::class)->create(['role' => 2]), 'api');
+
+ $response = $this->post('/api/users', [
+ 'name' => 'TestName',
+ 'email' => 'test@test.fr',
+ ])->assertStatus(Response::HTTP_CREATED);
+
+ $this->assertCount(2, User::all());
+ }
+
+ /** @test */
+ public function a_non_admin_cant_add_member()
+ {
+ $this->actingAs($user = factory(User::class)->create(), 'api');
+
+ $response = $this->post('/api/users', [
+ 'name' => 'TestName',
+ 'email' => 'test@test.fr',
+ ])->assertStatus(Response::HTTP_FORBIDDEN);
+
+ $this->assertCount(1, User::all());
+ }
}