2 lines
6.8 KiB
JavaScript
2 lines
6.8 KiB
JavaScript
"use strict";(self["webpackChunkmiriamgemeinde"]=self["webpackChunkmiriamgemeinde"]||[]).push([[703],{703:function(e,n,t){t.r(n),t.d(n,{default:function(){return z}});var u=t(641),l=t(33),a=t(3751);const o=e=>((0,u.Qi)("data-v-0e6a0522"),e=e(),(0,u.jt)(),e),i={class:"menu-management"},r=o((()=>(0,u.Lk)("h1",null,"Menüverwaltung",-1))),d={class:"button-container"},s={key:0,class:"edit-form"},c=o((()=>(0,u.Lk)("label",{for:"name"},"Name",-1))),m=o((()=>(0,u.Lk)("label",{for:"link"},"Link",-1))),p=o((()=>(0,u.Lk)("label",{for:"page-title"},"Seitenname",-1))),k=o((()=>(0,u.Lk)("label",{for:"order-id"},"Order ID",-1))),b={class:"checkbox-container"},h=o((()=>(0,u.Lk)("label",{for:"parent-id"},"Elternelement",-1))),M=o((()=>(0,u.Lk)("option",{value:"-1"},"Ohne Elternelement",-1))),v=["value"],L=["innerHTML"],I=o((()=>(0,u.Lk)("label",{for:"component"},"Vue-Komponente",-1))),f=o((()=>(0,u.Lk)("button",{type:"submit"},"Speichern",-1))),g={class:"tree-view"},C={class:"menu-item"},_=["onClick"],D={class:"action-buttons"},E=["onClick"],y=["onClick"],w={key:0},S={class:"menu-item"},V=["onClick"],A={class:"action-buttons"},U=["onClick"],X=["onClick"];function F(e,n,t,o,F,K){return(0,u.uX)(),(0,u.CE)("div",i,[r,(0,u.Lk)("div",d,[(0,u.Lk)("button",{onClick:n[0]||(n[0]=(...e)=>o.addMenuItem&&o.addMenuItem(...e))},"Hauptmenü hinzufügen"),(0,u.Lk)("button",{onClick:n[1]||(n[1]=(...e)=>o.saveMenuData&&o.saveMenuData(...e))},"Speichern")]),o.selectedMenuItem?((0,u.uX)(),(0,u.CE)("div",s,[(0,u.Lk)("h2",null,(0,l.v_)(o.isEditMode?"Menüpunkt bearbeiten":"Menüpunkt erstellen"),1),(0,u.Lk)("form",{onSubmit:n[11]||(n[11]=(0,a.D$)(((...e)=>o.saveMenuData&&o.saveMenuData(...e)),["prevent"]))},[c,(0,u.bo)((0,u.Lk)("input",{id:"name","onUpdate:modelValue":n[2]||(n[2]=e=>o.selectedMenuItem.name=e),placeholder:"Name"},null,512),[[a.Jo,o.selectedMenuItem.name]]),m,(0,u.bo)((0,u.Lk)("input",{id:"link","onUpdate:modelValue":n[3]||(n[3]=e=>o.selectedMenuItem.link=e),placeholder:"Link"},null,512),[[a.Jo,o.selectedMenuItem.link]]),p,(0,u.bo)((0,u.Lk)("input",{id:"page-title","onUpdate:modelValue":n[4]||(n[4]=e=>o.selectedMenuItem.pageTitle=e),placeholder:"Seitenname"},null,512),[[a.Jo,o.selectedMenuItem.pageTitle]]),k,(0,u.bo)((0,u.Lk)("input",{id:"order-id","onUpdate:modelValue":n[5]||(n[5]=e=>o.selectedMenuItem.order_id=e),placeholder:"Order ID",type:"number",class:"order-id"},null,512),[[a.Jo,o.selectedMenuItem.order_id,void 0,{number:!0}]]),(0,u.Lk)("div",b,[(0,u.Lk)("label",null,[(0,u.bo)((0,u.Lk)("input",{type:"checkbox","onUpdate:modelValue":n[6]||(n[6]=e=>o.selectedMenuItem.showInMenu=e)},null,512),[[a.lH,o.selectedMenuItem.showInMenu]]),(0,u.eW)(" Im Menü anzeigen ")]),(0,u.Lk)("label",null,[(0,u.bo)((0,u.Lk)("input",{type:"checkbox","onUpdate:modelValue":n[7]||(n[7]=e=>o.selectedMenuItem.requiresAuth=e)},null,512),[[a.lH,o.selectedMenuItem.requiresAuth]]),(0,u.eW)(" Authentifizierung erforderlich ")])]),h,(0,u.bo)((0,u.Lk)("select",{id:"parent-id","onUpdate:modelValue":n[8]||(n[8]=e=>o.selectedMenuItem.parent_id=e)},[M,((0,u.uX)(!0),(0,u.CE)(u.FK,null,(0,u.pI)(o.flattenedMenuData,(e=>((0,u.uX)(),(0,u.CE)("option",{key:e.id,value:e.id},[(0,u.Lk)("span",{innerHTML:o.getIndentedName(e)},null,8,L)],8,v)))),128))],512),[[a.u1,o.selectedMenuItem.parent_id,void 0,{number:!0}]]),I,(0,u.bo)((0,u.Lk)("input",{id:"component","onUpdate:modelValue":n[9]||(n[9]=e=>o.selectedMenuItem.component=e),placeholder:"Vue-Komponente"},null,512),[[a.Jo,o.selectedMenuItem.component]]),(0,u.Lk)("button",{type:"button",onClick:n[10]||(n[10]=(...e)=>o.resetForm&&o.resetForm(...e))},"Neuen Menüpunkt erstellen"),f],32)])):(0,u.Q3)("",!0),(0,u.Lk)("div",g,[(0,u.Lk)("ul",null,[((0,u.uX)(!0),(0,u.CE)(u.FK,null,(0,u.pI)(o.sortedMenuData,(e=>((0,u.uX)(),(0,u.CE)("li",{key:e.id},[(0,u.Lk)("div",C,[(0,u.Lk)("span",{onClick:n=>o.selectMenuItem(e)},(0,l.v_)(e.name)+" (ID: "+(0,l.v_)(e.order_id)+") ",9,_),(0,u.Lk)("div",D,[(0,u.Lk)("button",{onClick:n=>o.addSubmenu(e),class:"action-button"},"Untermenü hinzufügen",8,E),(0,u.Lk)("button",{onClick:n=>o.removeMenuItem(e),class:"action-button"},"Löschen",8,y)])]),e.submenu.length?((0,u.uX)(),(0,u.CE)("ul",w,[((0,u.uX)(!0),(0,u.CE)(u.FK,null,(0,u.pI)(o.sortedSubmenu(e),(n=>((0,u.uX)(),(0,u.CE)("li",{key:n.id},[(0,u.Lk)("div",S,[(0,u.Lk)("span",{onClick:e=>o.selectMenuItem(n)},(0,l.v_)(n.name)+" (ID: "+(0,l.v_)(n.order_id)+") ",9,V),(0,u.Lk)("div",A,[(0,u.Lk)("button",{onClick:e=>o.addSubmenu(n),class:"action-button"},"Untermenü hinzufügen",8,U),(0,u.Lk)("button",{onClick:t=>o.removeSubmenu(e,n),class:"action-button"},"Löschen",8,X)])])])))),128))])):(0,u.Q3)("",!0)])))),128))])])])}t(4114),t(8992),t(8872);var K=t(953),T=t(6296),q=t(6278),O={name:"MenuManagement",setup(){const e=(0,q.Pj)(),n=(0,K.KR)([]),t=(0,K.KR)(null),l=(0,K.KR)(!1),a=async()=>{try{const e=await T.A.get("/menu-data");n.value=e.data}catch(e){console.error("Fehler beim Abrufen der Menü-Daten:",e)}},o=async()=>{try{const e=i(n.value);await T.A.post("/menu-data",e),alert("Menü-Daten erfolgreich gespeichert")}catch(e){console.error("Fehler beim Speichern der Menü-Daten:",e)}},i=e=>e.reduce(((e,n)=>{const t={...n,page_title:n.pageTitle,show_in_menu:n.showInMenu,requires_auth:n.requiresAuth},{submenu:u,...l}=t;return e.push(l),u&&u.length&&e.push(...i(u,t.id)),e}),[]),r=(e,n=0)=>e.reduce(((e,t)=>(e.push({...t,indent:n}),t.submenu&&t.submenu.length&&e.push(...r(t.submenu,t.id,n+1)),console.log,e)),[]),d=()=>{const e={name:"",link:"",component:"",pageTitle:"",showInMenu:!0,requiresAuth:!1,order_id:0,submenu:[],parent_id:0};n.value.push(e),p(e),l.value=!1},s=e=>{const n={name:"",link:"",component:"",pageTitle:"",showInMenu:!0,requiresAuth:!1,order_id:0};e.submenu.push(n),p(n),l.value=!1},c=e=>{const u=n.value.indexOf(e);u>-1&&n.value.splice(u,1),t.value=null},m=(e,n)=>{const u=e.submenu.indexOf(n);u>-1&&e.submenu.splice(u,1),t.value=null},p=e=>{t.value=e,l.value=!0},k=()=>{t.value=null,l.value=!1},b=(0,u.EW)((()=>[...n.value].sort(((e,n)=>e.order_id-n.order_id)))),h=e=>e.submenu.slice().sort(((e,n)=>e.order_id-n.order_id)),M=e=>" ".repeat(2*e.indent)+e.name,v=(0,u.EW)((()=>{const n=r(e.state.menuData);return console.log(n),n}));return(0,u.sV)((()=>{a()})),{menuData:n,sortedMenuData:b,sortedSubmenu:h,selectedMenuItem:t,fetchMenuData:a,saveMenuData:o,addMenuItem:d,addSubmenu:s,removeMenuItem:c,removeSubmenu:m,selectMenuItem:p,getIndentedName:M,isEditMode:l,resetForm:k,flattenedMenuData:v}}},R=t(6262);const x=(0,R.A)(O,[["render",F],["__scopeId","data-v-0e6a0522"]]);var z=x},8872:function(e,n,t){var u=t(6518),l=t(2652),a=t(9306),o=t(8551),i=t(1767),r=TypeError;u({target:"Iterator",proto:!0,real:!0},{reduce:function(e){o(this),a(e);var n=i(this),t=arguments.length<2,u=t?void 0:arguments[1],d=0;if(l(n,(function(n){t?(t=!1,u=n):u=e(u,n,d),d++}),{IS_RECORD:!0}),t)throw new r("Reduce of empty iterator with no initial value");return u}})}}]);
|
|
//# sourceMappingURL=703.5de9aa34.js.map
|