webpackJsonp([20],{JtQz:function(e,s,t){"use strict";var r=t("Xxa5"),i=t.n(r),n=t("exGp"),a=t.n(n),o=t("Dd8w"),u=t.n(o),c=t("NYxO");s.a={layout:"admin",data:function(){return{loading:!1,users:[],roles:[],newUser:null,permissions:[],currentUser:null,form:{user:null}}},computed:u()({isNewUser:function(){return!this.form.user.id}},Object(c.mapState)({seasons:function(e){return e.seasons},activeSeason:function(e){return e.activeSeason}})),mounted:function(){this.fetchData()},methods:{fetchData:function(){var e=a()(i.a.mark(function e(){var s;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.$store.commit("preFlight"),e.next=3,this.$axios.$get("users");case 3:s=e.sent,this.users=s.users,this.roles=s.roles,this.permissions=s.permissions,this.$store.commit("postFlight");case 8:case"end":return e.stop()}},e,this)}));return function(){return e.apply(this,arguments)}}(),setCurrentUser:function(e){this.newUser=null,this.currentUser=e,this.form.user=_.clone(this.currentUser)},isCurrentUser:function(e){return this.currentUser&&this.currentUser.id===e.id},addNewUser:function(){this.newUser={name:"",email:"",password:""},this.currentUser=this.newUser,this.form.user=_.clone(this.currentUser)},saveUser:function(){var e=a()(i.a.mark(function e(s){return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(s.preventDefault(),!this.validateUser()){e.next=24;break}if(e.prev=2,this.loading=!0,!this.isNewUser){e.next=10;break}return e.next=7,this.$axios.$post("users",this.form.user);case 7:e.sent,e.next=13;break;case 10:return e.next=12,this.$axios.$put("users/"+this.form.user.id,this.form.user);case 12:e.sent;case 13:this.showSuccessNotification(),this.loading=!1,this.fetchData(),e.next=22;break;case 18:e.prev=18,e.t0=e.catch(2),this.showErrorNotification({message:"["+e.t0.response.status+"] "+e.t0.response.data.message}),this.loading=!1;case 22:e.next=25;break;case 24:this.showErrorNotification({message:"Form validation failed. Please check all values."});case 25:case"end":return e.stop()}},e,this,[[2,18]])}));return function(s){return e.apply(this,arguments)}}(),validateUser:function(){return this.form.user&&this.form.user.name&&this.form.user.email&&(!this.isNewUser||this.form.user.password)},cancelUser:function(){this.newUser=null,this.currentUser=null,this.form.user=null},deleteUser:function(){var e=a()(i.a.mark(function e(){return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.isNewUser){e.next=15;break}return e.prev=1,this.loading=!0,e.next=5,this.$axios.$delete("users/"+this.form.user.id);case 5:e.sent,this.showSuccessNotification(),this.loading=!1,this.fetchData(),e.next=15;break;case 11:e.prev=11,e.t0=e.catch(1),this.showErrorNotification({message:"["+e.t0.response.status+"] "+e.t0.response.data.message}),this.loading=!1;case 15:case"end":return e.stop()}},e,this,[[1,11]])}));return function(){return e.apply(this,arguments)}}()},notifications:{showErrorNotification:{title:"Error",message:"Whoops, something went wrong",type:"error"},showSuccessNotification:{message:"Registration details saved.",type:"success"}}}},Qipa:function(e,s,t){"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r=t("JtQz"),i=t("fG7V"),n=t("VU/8")(r.a,i.a,!1,null,null,null);n.options.__file="pages/admin/users/index.vue",s.default=n.exports},fG7V:function(e,s,t){"use strict";var r=function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("div",[t("b-row",[t("b-col",{attrs:{cols:"6"}},[t("b-card",{attrs:{"no-body":"",header:"Users"}},[t("b-list-group",[e._l(e.users,function(s){return t("b-list-group-item",{key:s.id,attrs:{button:"",active:e.isCurrentUser(s)},on:{click:function(t){e.setCurrentUser(s)}}},[e._v(e._s(s.name)+" - "+e._s(s.email))])}),t("b-list-group-item",{attrs:{button:"",active:!!e.newUser},on:{click:e.addNewUser}},[t("i",{staticClass:"icon-plus"}),e._v(" Add New User\n ")])],2)],1)],1),e.currentUser?t("b-col",{attrs:{cols:"6"}},[t("b-card",[t("b-form",{on:{submit:e.saveUser}},[t("b-form-group",{attrs:{label:"Name:"}},[t("b-form-input",{attrs:{type:"text",name:"formName",required:"",placeholder:"Enter name"},model:{value:e.form.user.name,callback:function(s){e.$set(e.form.user,"name",s)},expression:"form.user.name"}})],1),t("b-form-group",{attrs:{label:"Email:"}},[t("b-form-input",{attrs:{type:"email",name:"formEmail",required:"",placeholder:"Enter email"},model:{value:e.form.user.email,callback:function(s){e.$set(e.form.user,"email",s)},expression:"form.user.email"}})],1),t("b-form-group",{attrs:{label:(e.isNewUser?"":"Reset ")+"Password:"}},[t("b-form-input",{attrs:{type:"password",name:"formPassword",placeholder:"Enter password"},model:{value:e.form.user.password,callback:function(s){e.$set(e.form.user,"password",s)},expression:"form.user.password"}})],1),t("b-form-group",{attrs:{label:"Role:"}},[t("b-form-select",{staticClass:"mb-3",attrs:{options:e.roles,"value-field":"id","text-field":"display_name"},model:{value:e.form.user.role_id,callback:function(s){e.$set(e.form.user,"role_id",s)},expression:"form.user.role_id"}},[t("option",{attrs:{slot:"first",disabled:""},domProps:{value:null},slot:"first"},[e._v("Select User Role...")])])],1),e.loading?t("div",[e.loading?t("i",{staticClass:"fa fa-spinner fa-spin"}):e._e()]):t("div",{staticClass:"d-flex justify-content-between"},[t("div",[t("b-button",{attrs:{type:"submit",variant:"primary"}},[e._v("Save")]),t("b-button",{attrs:{type:"reset",variant:"secondary"},on:{click:e.cancelUser}},[e._v("Cancel")])],1),e.isNewUser?e._e():t("div",[t("b-button",{attrs:{type:"button",variant:"danger"},on:{click:e.deleteUser}},[t("i",{staticClass:"icon-trash"})])],1)])],1)],1)],1):e._e()],1)],1)};r._withStripped=!0;var i={render:r,staticRenderFns:[]};s.a=i}});