File manager - Edit - /home/autoph/public_html/projects/ahg-connect/assets/access.6893b3de.js
Back
import{L as F}from"./index.d8327ad1.js";import{B as E}from"./index.ce033c34.js";import{_ as A,r as d,o,c as r,n as b,k as S,t as f,b as u,J as L,f as a,d as l,a as k,w as _,g as z,I as m,F as p}from"./index.c8fd93d6.js";import{I as M}from"./index.4b7607b5.js";import{S as j,U as T}from"./UpdateButton.c88607b8.js";/* empty css */import{C as G,M as N}from"./index.5f96e265.js";import{T as q}from"./index.ab35056f.js";import{L as W}from"./Loading.6052584f.js";import{A as J}from"./AppService.083ffddb.js";import{P as Y}from"./PermissionService.13eaf680.js";import{R as V}from"./RoleService.a9c47278.js";import{s as H}from"./multiselect.717b6532.js";/* empty css */import"./logo-white.e9971405.js";import"./_commonjsHelpers.de833af9.js";import"./ck-white.4bf441fa.js";import"./vue-cleave.min.7c593396.js";const K={setup(){},components:{Icon:M},props:{label:null,formClass:{type:String,default:"border-slate-300"},labelClass:{type:String,default:"p-2 bg-slate-100 text-slate-900"},isRequired:{type:Boolean,default:!1},icon:null,iconWrapperClass:{type:String,default:""},iconClass:{type:String,default:""}}},Q={key:0,class:"text-red-600 text-lg"},X={class:"w-full"};function Z(s,e,t,x,n,c){const g=d("Icon");return o(),r("div",{class:b(`w-full flex border rounded ${t.formClass}`)},[t.label?(o(),r("label",{key:0,class:b(` ${t.labelClass} ltr:inline-block rtl:block `)},[S(f(t.label)+" ",1),t.isRequired?(o(),r("span",Q,"*")):u("",!0)],2)):s.$slots.label?(o(),r("label",{key:1,class:b(`input-label ${t.labelClass} ltr:inline-block rtl:block`)},[L(s.$slots,"label")],2)):u("",!0),t.icon?(o(),r("span",{key:2,class:b(`px-3 py-2 ${t.iconWrapperClass}`)},[a(g,{icon:t.icon,class:b(`text-xl ${t.iconClass} text-slate-300`)},null,8,["icon","class"])],2)):s.$slots.icon?(o(),r("span",{key:3,class:b(`text-xl ${t.iconClass}`)},[L(s.$slots,"icon")],2)):u("",!0),l("div",X,[L(s.$slots,"default")])],2)}const $=A(K,[["render",Z]]),ee={components:{Button:E},props:{text:{type:String,default:"Back"},link:[String,Object],title:{type:String,default:"Go back"}},setup(){}};function se(s,e,t,x,n,c){const g=d("Button");return o(),k(g,{btnClass:"btn-secondary pl-3 py-2",icon:"carbon:arrow-left",iconClass:"text-2xl",text:t.text,link:t.link},null,8,["text","link"])}const te=A(ee,[["render",se]]),ie={components:{Layout:F,InputGroup:$,TextInput:q,SubmitButton:j,UpdateButton:T,BackButton:te,Multiselect:H,Loading:W,Checkbox:G,Icon:M},data(){return{form:{id:this.$route.params.id??null,company_id:null,dealership_id:null,modules:[]},systemID:null,searchModule:"",selectedSystem:3,appOptions:[],modules:[],permissions:[],companyOptions:[],dealerships:[],rolePermissions:[],errors:{},state:{isEdit:this.$route.params.id!==void 0&&this.$route.params.id!==null,isSaving:!1,isLoading:!1},checkAllPermissions:[],id:this.$route.params.id??null,title:"Role Access",theme:"warning",headerIcon:"heroicons:document-text"}},watch:{"form.company_id":{handler(){this.resetForm()}},"form.dealership_id":{handler(){this.resetForm()}},selectedSystem:{handler(){this.resetForm()}}},computed:{superAdmin(){return this.$store.userSettings.getRoles.map(t=>t.group_id).includes(1)},filteredModules(){return console.log("modules",this.form.modules),this.form.modules.filter(e=>!e.confidential&&e.system_id==this.selectedSystem&&e.name.toLowerCase().includes(this.searchModule.toString().toLowerCase())&&(this.superAdmin||!this.superAdmin&&e.protected==0))},filteredModulesConfidential:function(){return console.log("modules",this.form.modules),this.form.modules.filter(e=>e.confidential&&e.system_id==this.selectedSystem&&e.name.toLowerCase().includes(this.searchModule.toString().toLowerCase())&&(this.superAdmin||!this.superAdmin&&e.protected==0))},dealershipOptions:function(){let s=[];return this.form.company_id&&(s=this.dealerships.filter(e=>this.form.company_id==e.company_id).map(e=>({label:e.name,value:e.id}))),s}},methods:{showDetail(s){console.log("detail"),console.log(s)},async fetchRecord(){this.state.isLoading=!0,await V.fetchRecord(this.$route.params.id).then(s=>{if(console.log(s),s.status==200){let e=s.data.data;this.companyOptions=e.companies.map(t=>({label:t.name,value:t.id})),this.dealerships=e.dealerships}}).catch(s=>{console.log(s)}).finally(()=>{this.state.isLoading=!1})},async fetchModules(){this.state.isLoading=!0,await N.fetchRecords().then(s=>{s.status==200&&(this.modules=s.data.data.map(e=>{var t;return{id:e.id,name:e.name,description:e.description,system_id:e.system_id,system:(t=e.system)==null?void 0:t.name,protected:e.protected,confidential:e.confidential}}))}).catch(s=>console.error(s)).finally(()=>this.state.isLoading=!1)},async fetchPermissions(){this.state.isLoading=!0,await Y.fetchRecords().then(s=>{s.status==200&&(this.permissions=s.data.data.map(e=>({id:e.id,name:e.name})))}).catch(s=>console.error(s)).finally(()=>this.state.isLoading=!1)},async fetchRolePermission(){this.state.isLoading=!0,await V.fetchRolePermission(this.$route.params.id).then(s=>{s.status==200&&(this.rolePermissions=s.data.data,this.modules.length>0&&this.permissions.length>0&&(this.form.company_id=this.rolePermissions[0].company_id,this.form.dealership_id=this.rolePermissions[0].dealership_id!=0?this.rolePermissions[0].dealership_id:null,this.resetForm()))}).finally(()=>{this.state.isLoading=!1})},async submitForm(){this.state.isSaving=!0,console.log(this.form);let s={};s=this.form,s.system_id=this.selectedSystem,s.modules=s.modules.map(e=>({...e,permissions:e.permissions.filter(t=>t.checked==!0)})).filter(e=>e.system_id==this.selectedSystem&&e.permissions!==null&&e.permissions.length>0),console.log("formData"),console.log(s),await V.savePermission(s).then(e=>{e.status==201?(this.$swal.fire({title:"Great!",text:"Record successfully saved.",icon:"success",timer:2e3}),this.fetchRolePermission()):this.$swal.fire({title:"Ooops! something is wrong.",text:e.data.message,icon:"error",timer:2e3})}).catch(e=>{console.log(e),e.response.status==422?this.$swal.fire({title:"Ooops! something is wrong.",text:e.response.data.message??null,icon:"warning"}):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",icon:"error",timer:2e3})}).finally(()=>{this.state.isSaving=!1})},confirmSubmit(){this.$swal.fire({title:"Are you sure you want to save this record?",text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(s=>{s.value&&this.submitForm()})},resetForm(){this.form.modules=[],this.checkAllPermissions=[],this.unCheckAll(),this.modules.filter(s=>s.system_id==this.selectedSystem).forEach(s=>{let e=this.filteredPermissions(s.id);console.log("moduleid",s.id),console.log(e),console.log(e.length);let t=[];this.permissions.forEach(x=>{t.push({id:x.id,checked:e.length>0&&e.includes(x.id)})}),this.form.modules.push({id:s.id,name:s.name,description:s.description,system_id:s.system_id,system:s.system??"",permissions:t,protected:s.protected,confidential:s.confidential})}),console.log("this.form"),console.log(this.form)},checkAll(s){if(this.checkAllPermissions.includes(s)){const e=this.checkAllPermissions.indexOf(s);this.checkAllPermissions.splice(e)}else this.checkAllPermissions.push(s);this.form.modules.forEach(e=>{e.permissions.forEach(t=>{t.id==s&&(this.checkAllPermissions.includes(t.id)?t.checked=!0:t.checked=!1)})})},unCheckAll(){this.form.modules.forEach(s=>{s.permissions.forEach(e=>{e.id==id&&(e.checked=!1)})})},filteredPermissions(s){let e=[];return this.rolePermissions.length>0&&(e=this.rolePermissions.filter(t=>t.company_id==this.form.company_id&&t.dealership_id==(this.form.dealership_id??0)&&t.module_id==s).map(t=>t.permission_id)),e},async fetchApps(){this.state.isLoading=!0,await J.fetchRecords().then(s=>{s.status==200&&(this.appOptions=s.data.data.map(e=>({value:e.id,label:e.name})),this.systemId&&(this.appOptions=this.appOptions.filter(e=>e.value==this.systemId)))}).catch(s=>console.error(s)).finally(()=>this.state.isLoading=!1)},async setSystemId(){this.systemId=this.$route.query.system_id,this.selectedSystem=this.systemId},async init(){await this.setSystemId(),await this.fetchApps(),await this.fetchModules(),await this.fetchPermissions(),this.$route.params.id&&(await this.fetchRecord(),await this.fetchRolePermission())}},mounted(){this.init()}},oe={class:"p-2"},le={class:"w-full grid lg:flex lg:flex-row gap-2"},ne={class:"flex-grow grid grid-cols-1 lg:grid-cols-3 gap-2"},re={class:"flex justify-end"},ae={class:"flex gap-1 justify-end"},ce={class:"overflow-x-auto max-h-[600px] relative"},de={class:"min-w-full bg-white border border-gray-300 text-xs lg:text-base"},ue=l("th",{class:"sticky top-0 bg-white z-20 py-2 px-4 border-b border-gray-300"}," MODULES ",-1),he={class:"sticky top-[38px] bg-white z-10 border-b border-slate-300"},me={class:"flex justify-center"},pe={class:"py-2 px-4 border-b font-semibold text-[#116466]"},fe={key:0,class:"text-sky-400"},ye={key:1,class:"text-sm italic"},ge={class:"flex justify-center"},be={class:"text-2xl font-bold flex items-center gap-2"},_e={class:"overflow-x-auto max-h-[600px] relative"},ke={class:"min-w-full bg-white border border-gray-300 text-xs lg:text-base"},xe=l("th",{class:"sticky top-0 bg-white z-20 py-2 px-4 border-b border-gray-300"}," MODULES ",-1),we={class:"sticky top-[38px] bg-white z-10 border-b border-slate-300"},ve={class:"flex justify-center"},Ce={class:"py-2 px-4 border-b font-semibold text-[#116466]"},Se={key:0,class:"text-sky-400"},Pe={class:"flex justify-center"};function Be(s,e,t,x,n,c){const g=d("Loading"),P=d("Multiselect"),w=d("InputGroup"),O=d("SubmitButton"),R=d("BackButton"),I=d("TextInput"),C=d("Checkbox"),U=d("Icon"),D=d("Layout");return o(),k(D,{header:n.title,theme:n.theme,headerIcon:n.headerIcon},{default:_(()=>[n.state.isLoading?(o(),k(g,{key:0,text:"Fetching record"})):u("",!0),n.state.isSaving?(o(),k(g,{key:1,text:"Saving record"})):u("",!0),l("div",oe,[l("form",{onSubmit:e[6]||(e[6]=z((...i)=>c.confirmSubmit&&c.confirmSubmit(...i),["prevent"])),class:"space-y-4"},[l("div",le,[l("div",ne,[a(w,{label:"System",labelClass:"border border-slate-300 bg-success-600 px-3 py-2 text-white"},{default:_(()=>[a(P,{modelValue:n.selectedSystem,"onUpdate:modelValue":e[0]||(e[0]=i=>n.selectedSystem=i),id:"selectedSystem","close-on-select":!0,searchable:!0,options:n.appOptions,onInput:e[1]||(e[1]=i=>c.resetForm())},null,8,["modelValue","options"])]),_:1}),a(w,{label:"Company",labelClass:"border border-slate-300 bg-success-600 px-3 py-2 text-white"},{default:_(()=>[a(P,{modelValue:n.form.company_id,"onUpdate:modelValue":e[2]||(e[2]=i=>n.form.company_id=i),id:"company_id","close-on-select":!0,searchable:!0,options:n.companyOptions},null,8,["modelValue","options"])]),_:1}),a(w,{label:"Dealership",labelClass:"border border-slate-300 bg-success-600 px-3 py-2 text-white"},{default:_(()=>[a(P,{modelValue:n.form.dealership_id,"onUpdate:modelValue":e[3]||(e[3]=i=>n.form.dealership_id=i),id:"dealership","close-on-select":!0,searchable:!0,options:c.dealershipOptions},null,8,["modelValue","options"])]),_:1})]),l("div",re,[l("div",ae,[a(O,{text:"Save"}),a(R,{link:{name:"roles"}})])])]),l("div",ce,[l("table",de,[l("thead",null,[l("tr",null,[ue,(o(!0),r(p,null,m(n.permissions,(i,h)=>(o(),r("th",{key:h,class:"sticky top-0 bg-white z-20 py-2 px-4 border-b border-gray-300"},f(i.name),1))),128))]),l("tr",null,[l("td",he,[n.form.modules.length>0?(o(),k(w,{key:0,icon:"heroicons:magnifying-glass-20-solid"},{default:_(()=>[a(I,{type:"text",modelValue:n.searchModule,"onUpdate:modelValue":e[4]||(e[4]=i=>n.searchModule=i),hasBorder:!1},null,8,["modelValue"])]),_:1})):u("",!0)]),(o(!0),r(p,null,m(n.permissions,i=>(o(),r("td",{key:i.id,class:"sticky top-[38px] bg-white z-10 py-2 px-4 border-b border-slate-300"},[l("div",me,[a(C,{activeClass:"ring-[#116466] bg-[#116466]",checked:n.checkAllPermissions.includes(i.id),onClick:h=>c.checkAll(i.id)},null,8,["checked","onClick"])])]))),128))])]),(o(),r("tbody",{key:n.selectedSystem},[(o(!0),r(p,null,m(c.filteredModules,(i,h)=>(o(),r("tr",{key:h},[l("td",pe,[S(f(i.name)+" ",1),i.system?(o(),r("span",fe," ("+f(i.system)+") ",1)):u("",!0),i.description!=null&&i.description!=""?(o(),r("div",ye," ( "+f(i.description)+" ) ",1)):u("",!0)]),(o(!0),r(p,null,m(i.permissions,(y,B)=>(o(),r("td",{class:"py-2 px-4 border-b",key:B},[l("div",ge,[a(C,{modelValue:y.checked,"onUpdate:modelValue":v=>y.checked=v,activeClass:"ring-[#116466] bg-[#116466]",checked:y.checked,onClick:v=>c.showDetail(i),value:y.checked},null,8,["modelValue","onUpdate:modelValue","checked","onClick","value"])])]))),128))]))),128))]))])]),l("div",be,[a(U,{icon:"dashicons:privacy"}),S(" Confidential ")]),l("div",_e,[l("table",ke,[l("thead",null,[l("tr",null,[xe,(o(!0),r(p,null,m(n.permissions,(i,h)=>(o(),r("th",{key:h,class:"sticky top-0 bg-white z-20 py-2 px-4 border-b border-gray-300"},f(i.name),1))),128))]),l("tr",null,[l("td",we,[n.form.modules.length>0?(o(),k(w,{key:0,icon:"heroicons:magnifying-glass-20-solid"},{default:_(()=>[a(I,{type:"text",modelValue:n.searchModule,"onUpdate:modelValue":e[5]||(e[5]=i=>n.searchModule=i),hasBorder:!1},null,8,["modelValue"])]),_:1})):u("",!0)]),(o(!0),r(p,null,m(n.permissions,i=>(o(),r("td",{key:i.id,class:"sticky top-[38px] bg-white z-10 py-2 px-4 border-b border-slate-300"},[l("div",ve,[a(C,{activeClass:"ring-[#116466] bg-[#116466]",checked:n.checkAllPermissions.includes(i.id),onClick:h=>c.checkAll(i.id)},null,8,["checked","onClick"])])]))),128))])]),l("tbody",null,[(o(!0),r(p,null,m(c.filteredModulesConfidential,(i,h)=>(o(),r("tr",{key:h},[l("td",Ce,[S(f(i.name)+" ",1),i.system?(o(),r("span",Se," ("+f(i.system)+") ",1)):u("",!0)]),(o(!0),r(p,null,m(i.permissions,(y,B)=>(o(),r("td",{class:"py-2 px-4 border-b",key:B},[l("div",Pe,[a(C,{modelValue:y.checked,"onUpdate:modelValue":v=>y.checked=v,activeClass:"ring-[#116466] bg-[#116466]",onClick:v=>c.showDetail(i)},null,8,["modelValue","onUpdate:modelValue","onClick"])])]))),128))]))),128))])])])],32)])]),_:1},8,["header","theme","headerIcon"])}const Je=A(ie,[["render",Be]]);export{Je as default};
| ver. 1.4 |
.
| PHP 8.1.32 | Generation time: 0 |
proxy
|
phpinfo
|
Settings