{"version":3,"sources":["webpack:///./src/views/Administration/Admin-EmailVerteiler.vue?0058","webpack:///./src/views/Administration/Admin-EmailVerteiler.vue?0f9e","webpack:///./src/views/Administration/Admin-EmailVerteiler.vue?b461","webpack:///./src/views/Administration/Admin-EmailVerteiler.vue"],"names":["Filter","render","_vm","this","_h","$createElement","_c","_self","staticClass","_v","_s","$tc","filteredBenutzer","length","benutzer","_m","attrs","kundeFilterOptions","model","value","callback","$$v","kundeFilter","expression","benutzerFilterOptions","benutzerFilter","$t","_e","_l","item","key","Id","class","new","IsActive","audited","Email","FullName","KundeFirma","isLoadingBenutzer","on","exportBenutzer","staticRenderFns","Benutzer","Kunde","seperator","fileStart","fileType","kunden","isLoadingKunden","Alle","Lizenz","Regulär","map","c","id","text","benutzerHeader","filtered","filter","Rolle_Rechte_eines_Datenschutzbeauftragten","Rolle_Administrative_Rechte","KundeId","some","IstLizenzKunde","created","userService","kundeService","mounted","loadKunden","loadBenutzer","GetList","resp","file","generateCSV","toString","downloadFile","data","header","titleAddition","columnNames","Object","values","keys","firstLine","col","join","dataLines","entry","textArray","push","concat","date","Date","title","addition","replace","toISOString","slice","File","type","lastModified","getTime","a","document","createElement","blobUrl","URL","createObjectURL","download","name","href","body","appendChild","click","setTimeout","remove","revokeObjectURL","Administration","components","IcsButton","ChosenSelect","component"],"mappings":"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","file":"js/chunk-2d21a423.a2b0f131.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"icsbox\"},[_c('div',{staticClass:\"icsbox-header\"},[_vm._v(\"\\n \"+_vm._s(_vm.$tc(\"Administration.Benutzer\", 2))+\"\\n \"),_c('small',{staticClass:\"ml-auto text-muted\"},[(_vm.isLoadingBenutzer)?_c('span',[_vm._v(\"--\")]):_c('span',[_vm._v(_vm._s(_vm.filteredBenutzer.length))]),_vm._v(\"\\n von\\n \"),(_vm.isLoadingBenutzer)?_c('span',[_vm._v(\"--\")]):_c('span',[_vm._v(_vm._s(_vm.benutzer.length))]),_vm._v(\"\\n \"+_vm._s(_vm.$tc(\n \"Administration.Benutzer\",\n _vm.filteredBenutzer.length === 1 ? 1 : 2\n ))+\"\\n \")])]),_c('div',{staticClass:\"icsbox-content\"},[_c('div',{staticClass:\"f-grid\"},[_vm._m(0),_c('div',{staticClass:\"f-input\"},[_c('chosen-select',{staticClass:\"w-100 form-control\",attrs:{\"id\":\"kundeFilter\",\"options\":_vm.kundeFilterOptions},model:{value:(_vm.kundeFilter),callback:function ($$v) {_vm.kundeFilter=$$v},expression:\"kundeFilter\"}})],1),_vm._m(1),_c('div',{staticClass:\"f-longinput\"},[_c('chosen-select',{staticClass:\"w-100 form-control\",attrs:{\"id\":\"benutzerFilter\",\"options\":_vm.benutzerFilterOptions},model:{value:(_vm.benutzerFilter),callback:function ($$v) {_vm.benutzerFilter=$$v},expression:\"benutzerFilter\"}})],1)]),_c('table',{staticClass:\"table b-table mt-2\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t(\"Administration.Email\")))]),_c('th',[_vm._v(_vm._s(_vm.$t(\"Administration.Name\")))]),_c('th',[_vm._v(_vm._s(_vm.$t(\"Administration.Firma\")))])])]),_c('tbody',[(_vm.isLoadingKunden)?_c('tr',[_c('td',{staticClass:\"text-center\",attrs:{\"colspan\":\"3\"}},[_c('spinner')],1)]):_vm._e(),_vm._l((_vm.filteredBenutzer),function(item){return _c('tr',{key:item.Id,class:{ new: !item.IsActive, audited: item.IsActive }},[_c('td',[_vm._v(\"\\n \"+_vm._s(item.Email)+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(item.FullName)+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(item.KundeFirma)+\"\\n \")])])})],2)])])]),_c('div',{staticClass:\"d-inline-flex justify-content-end w-100\"},[_c('div',{staticClass:\"d-flex\"},[_c('ics-button',{attrs:{\"id\":\"btnExport\",\"type\":\"positive\",\"disabled\":_vm.isLoadingBenutzer || _vm.filteredBenutzer.length <= 0},on:{\"click\":_vm.exportBenutzer}},[_vm._v(_vm._s(_vm.$t(\"Export.Exportieren\")))])],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"f-label\"},[_c('label',{attrs:{\"for\":\"kundeFilter\"}},[_vm._v(\"Kundenstatus:\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"f-label\"},[_c('label',{attrs:{\"for\":\"benutzerFilter\"}},[_vm._v(\"Nutzer-Berechtigung:\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GuardileoVueComponent } from \"@/lib\";\r\nimport { Kunde } from \"@/models/kunde-model\";\r\nimport { User } from \"@/models/user-model\";\r\nimport { KundeService } from \"@/services/kunde-service\";\r\nimport { UserService } from \"@/services/user-service\";\r\nimport { Component, Watch } from \"vue-property-decorator\";\r\nimport ChosenSelect from \"@/components/ChosenSelect.vue\";\r\nimport IcsButton from \"@/components/IcsButton.vue\";\r\n\r\nnamespace Filter {\r\n export enum Benutzer {\r\n Alle = 0,\r\n \"Nutzer/innen mit Rechten eines/r Datenschutzbeauftragten\",\r\n \"Nutzer/innen mit administrativen Rechten\",\r\n }\r\n\r\n export enum Kunde {\r\n Alle = 100,\r\n Lizenz,\r\n Regulär,\r\n }\r\n}\r\n\r\ntype Filter = Filter.Benutzer | Filter.Kunde;\r\n\r\n@Component({\r\n components: {\r\n IcsButton,\r\n ChosenSelect,\r\n },\r\n})\r\nexport default class Administration extends GuardileoVueComponent {\r\n private readonly seperator = \";\";\r\n private readonly fileStart = \"\\uFEFF\";\r\n private readonly fileType = \"text/csv;charset=utf8;\";\r\n\r\n private kundeService!: KundeService;\r\n private kunden: Kunde[] = [];\r\n private isLoadingKunden: boolean = false;\r\n\r\n private kundeFilter: Filter.Kunde = Filter.Kunde.Alle;\r\n private readonly kundeFilterOptions: {\r\n id: Filter.Kunde;\r\n text: string;\r\n }[] = [Filter.Kunde.Alle, Filter.Kunde.Lizenz, Filter.Kunde.Regulär].map(\r\n (c) => ({ id: c, text: Filter.Kunde[c] })\r\n );\r\n\r\n private userService!: UserService;\r\n private benutzer: User[] = [];\r\n private isLoadingBenutzer: boolean = false;\r\n private readonly benutzerHeader: Partial> = {\r\n Email: \"Administration.Email\",\r\n FullName: \"Administration.Name\",\r\n KundeFirma: \"Administration.Firma\",\r\n };\r\n private readonly benutzerFilterOptions: {\r\n id: Filter.Benutzer;\r\n text: string;\r\n }[] = [\r\n Filter.Benutzer.Alle,\r\n Filter.Benutzer[\"Nutzer/innen mit Rechten eines/r Datenschutzbeauftragten\"],\r\n Filter.Benutzer[\"Nutzer/innen mit administrativen Rechten\"],\r\n ].map((c) => ({ id: c, text: Filter.Benutzer[c] }));\r\n\r\n private benutzerFilter: Filter.Benutzer = Filter.Benutzer.Alle;\r\n private get filteredBenutzer() {\r\n let filtered = this.benutzer.filter((c) => c.IsActive);\r\n switch (this.benutzerFilter) {\r\n case Filter.Benutzer.Alle:\r\n filtered = filtered;\r\n break;\r\n case Filter.Benutzer[\r\n \"Nutzer/innen mit Rechten eines/r Datenschutzbeauftragten\"\r\n ]:\r\n filtered = filtered.filter(\r\n (c) => c.Rolle_Rechte_eines_Datenschutzbeauftragten\r\n );\r\n break;\r\n case Filter.Benutzer[\"Nutzer/innen mit administrativen Rechten\"]:\r\n filtered = filtered.filter((c) => c.Rolle_Administrative_Rechte);\r\n break;\r\n default:\r\n filtered = filtered;\r\n break;\r\n }\r\n\r\n if (this.kundeFilter !== Filter.Kunde.Alle) {\r\n if (this.kundeFilter === Filter.Kunde.Lizenz) {\r\n filtered = filtered.filter(({ KundeId }) =>\r\n this.kunden.some((c) => c.Id === KundeId && c.IstLizenzKunde)\r\n );\r\n } else if (this.kundeFilter === Filter.Kunde.Regulär) {\r\n filtered = filtered.filter(({ KundeId }) =>\r\n this.kunden.some((c) => c.Id === KundeId && !c.IstLizenzKunde)\r\n );\r\n }\r\n }\r\n return filtered;\r\n }\r\n\r\n created() {\r\n this.userService = new UserService();\r\n this.kundeService = new KundeService();\r\n }\r\n\r\n mounted() {\r\n this.loadKunden();\r\n this.loadBenutzer();\r\n }\r\n\r\n private async loadKunden() {\r\n try {\r\n this.isLoadingKunden = true;\r\n const resp = await this.kundeService.GetList();\r\n this.kunden = resp;\r\n } catch (error) {\r\n throw error;\r\n } finally {\r\n this.isLoadingKunden = false;\r\n }\r\n }\r\n\r\n private async loadBenutzer() {\r\n try {\r\n this.isLoadingBenutzer = true;\r\n const resp = await this.userService.GetList(true);\r\n this.benutzer = resp;\r\n } catch (error) {\r\n throw error;\r\n } finally {\r\n this.isLoadingBenutzer = false;\r\n }\r\n }\r\n\r\n private exportBenutzer() {\r\n const file = this.generateCSV(\r\n this.filteredBenutzer,\r\n this.benutzerHeader,\r\n this.$tc(\"Administration.Benutzer\", 2).toString()\r\n );\r\n this.downloadFile(file);\r\n }\r\n\r\n private generateCSV(\r\n data: T[],\r\n header: Partial>,\r\n titleAddition?: string\r\n ) {\r\n const columnNames: string[] = Object.values(header);\r\n const keys = Object.keys(header) as (keyof T)[];\r\n\r\n const firstLine = columnNames\r\n .map((col) => this.$t(col).toString())\r\n .join(this.seperator);\r\n const dataLines = data.map((entry) =>\r\n keys.map((key) => entry[key]).join(this.seperator)\r\n );\r\n\r\n let textArray = [];\r\n textArray.push(firstLine);\r\n textArray = textArray.concat(dataLines);\r\n const text = this.fileStart + textArray.join(\"\\r\\n\");\r\n\r\n const date = new Date();\r\n let title = this.$t(\"Administration.EmailVerteiler\");\r\n const addition = titleAddition\r\n ? titleAddition.replace(/\\./g, \"-\") + \" \"\r\n : \"\";\r\n title = `${addition}${title} ${date.toISOString().slice(0, 10)}`;\r\n const file = new File([text], title + \".csv\", {\r\n type: this.fileType,\r\n lastModified: date.getTime(),\r\n });\r\n\r\n return file;\r\n }\r\n\r\n private downloadFile(file: File) {\r\n const a = document.createElement(\"a\");\r\n const blobUrl = URL.createObjectURL(file);\r\n a.download = file.name;\r\n a.href = blobUrl;\r\n document.body.appendChild(a);\r\n a.click();\r\n setTimeout(() => {\r\n a.remove();\r\n URL.revokeObjectURL(blobUrl);\r\n }, 1000);\r\n return;\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/ts-loader/index.js??ref--12-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Admin-EmailVerteiler.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/ts-loader/index.js??ref--12-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Admin-EmailVerteiler.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Admin-EmailVerteiler.vue?vue&type=template&id=22241fbe&\"\nimport script from \"./Admin-EmailVerteiler.vue?vue&type=script&lang=ts&\"\nexport * from \"./Admin-EmailVerteiler.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}