Files
tuend-work 4478491d73 z
2025-11-13 07:41:56 +07:00

1 line
14 KiB
JavaScript

(window.webpackJsonp=window.webpackJsonp||[]).push([[104],{1814:function(t,e,n){"use strict";n.r(e);var a=n(3922),i=n(2553);for(var r in i)["default"].indexOf(r)<0&&function(t){n.d(e,t,(function(){return i[t]}))}(r);var o=n(0),l=n(3578),s=n.n(l),u=Object(o.a)(i.default,a.a,a.b,!1,null,null,null);"function"==typeof s.a&&s()(u),e.default=u.exports},2553:function(t,e,n){"use strict";n.r(e);var a=n(2554),i=n.n(a);for(var r in a)["default"].indexOf(r)<0&&function(t){n.d(e,t,(function(){return a[t]}))}(r);e.default=i.a},2554:function(t,e,n){"use strict";n(16),n(23),n(25),n(18),n(6);var a=n(1),i=n(20);Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=a(n(36)),o=a(n(37));n(34),n(100),n(14),n(65),n(5);var l=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==i(t)&&"function"!=typeof t)return{default:t};var n=u(e);if(n&&n.has(t))return n.get(t);var a={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in t)if("default"!==o&&Object.prototype.hasOwnProperty.call(t,o)){var l=r?Object.getOwnPropertyDescriptor(t,o):null;l&&(l.get||l.set)?Object.defineProperty(a,o,l):a[o]=t[o]}a.default=t,n&&n.set(t,a);return a}(n(3576)),s=a(n(3577));function u(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(u=function(t){return t?n:e})(t)}var c,d,p={preload:l.getFilters,api:[{command:l.getFilters,bind:"filters"}],components:{FilterInput:s.default},data:function(){return{add:{type:"email",value:""},adult:!1,action:"drop",checkedRows:[],showAddFilter:!0}},computed:{checkedFilters:function(){var t=this;return this.checkedRows.map((function(e){return t.$api.filters.rows.indexOf(e)}))}},watch:{$domain:function(){this.reloadFilters()}},created:function(){var t=this;this.adult=this.$api.filters.options.adult,this.action=this.$api.filters.options.action,this.$watch("adult",this.updateAdult),this.$watch("action",this.updateAction),this.$watch("add.type",(function(){t.add.value=""})),this.filterTypeStrings={email:{label:this.$gettext("E-mail"),tooltip:this.$gettext("Block a specific E-mail address")},domain:{label:this.$gettext("Domain"),tooltip:this.$gettext("Block mail from an entire domain")},word:{label:this.$gettext("Stop word"),tooltip:this.$gettext("Block all e-mails containing stop words")},size:{label:this.$gettext("Size"),tooltip:this.$gettext("Block all e-mails larger than (KB)")}}},methods:{reloadFilters:function(){l.getFilters(),this.checkedRows=[]},updateAdult:function(){l.setOption({option:"adult",value:this.adult})},updateAction:function(){l.setOption({option:"action",value:this.action})},addFilter:(d=(0,o.default)(r.default.mark((function t(){var e,n,a,i=this;return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return this.showAddFilter=!1,this.$nextTick((function(){i.showAddFilter=!0})),e=this.add.value,n=this.add.type,e=e.toString(),"email"===this.add.type?e=this.$p6e.email2ascii(e):"size"===this.add.type&&(e="".concat(e,"B")),t.next=8,l.createFilter({type:this.add.type,value:e});case 8:if(!t.sent){t.next=20;break}if(this.$reset(),this.adult=this.$api.filters.options.adult,this.action=this.$api.filters.options.action,"size"!==n){t.next=18;break}if(!(a=this.$api.filters.rows.filter((function(t){return"size"===t.type}))).length){t.next=18;break}return t.next=18,l.deleteFilters({select:a.map((function(t){return i.$api.filters.rows.indexOf(t)}))});case 18:this.reloadFilters(),this.add.type=n;case 20:case"end":return t.stop()}}),t,this)}))),function(){return d.apply(this,arguments)}),deleteFilters:(c=(0,o.default)(r.default.mark((function t(){return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,l.deleteFilters({select:this.checkedFilters});case 2:t.sent&&(this.checkedRows=[],this.reloadFilters());case 4:case"end":return t.stop()}}),t,this)}))),function(){return c.apply(this,arguments)})}};e.default=p},2555:function(t,e,n){"use strict";n.r(e);var a=n(2556),i=n.n(a);for(var r in a)["default"].indexOf(r)<0&&function(t){n.d(e,t,(function(){return a[t]}))}(r);e.default=i.a},2556:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,n(17);var a={data:function(){return{dataValue:this.value}},props:{value:{type:[String,Number],required:!0},type:{type:String,required:!0}},methods:{submit:function(){this.$emit("block")}},computed:{input:function(){return"size"===this.type?"input-size":"input-text"},validators:function(){var t={required:!0};return"email"!==this.type&&"domain"!==this.type||(t[this.type]=!0),t}},watch:{type:function(){this.dataValue="",this.$emit("input","")},dataValue:function(t){this.$emit("input",t)}}};e.default=a},3576:function(t,e,n){"use strict";n(7),n(10),n(5),n(6),n(8),n(11);var a=n(1);Object.defineProperty(e,"__esModule",{value:!0}),e.deleteFilters=e.setOption=e.createFilter=e.getFilters=void 0;var i=a(n(2));n(21),n(40),n(13);var r=a(n(78));function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function l(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?o(Object(n),!0).forEach((function(e){(0,i.default)(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var s=r.default.get({id:"FILTERS",url:"/CMD_EMAIL_FILTER",params:{bytes:!0},domain:!0,after:function(t){return function(e){return{options:{action:(e.action||"action=drop").replace("action=",""),adult:"ON"===e.adult},rows:t.toArray(e.filters)}}}});e.getFilters=s;var u=r.default.post({url:"/CMD_EMAIL_FILTER",params:{action:"add"},domain:!0,schema:{type:r.default.REQUIRED_STRING,value:r.default.REQUIRED_STRING}});e.createFilter=u;var c=r.default.post({url:"/CMD_EMAIL_FILTER",domain:!0,params:{option:l(l({},r.default.REQUIRED_STRING),{},{validator:function(t){return["adult","action"].includes(t)}}),value:{required:!0}},before:function(t){var e=t.option,n=t.value;return"adult"===e?{action:"adult",enabled:n,add:n?"Enable":"Disable"}:{action:"action",value:n}}});e.setOption=c;var d=r.default.select({url:"/CMD_EMAIL_FILTER",params:{action:"delete"},domain:!0});e.deleteFilters=d},3577:function(t,e,n){"use strict";n.r(e);var a=n(4062),i=n(2555);for(var r in i)["default"].indexOf(r)<0&&function(t){n.d(e,t,(function(){return i[t]}))}(r);var o=n(0),l=Object(o.a)(i.default,a.a,a.b,!1,null,null,null);e.default=l.exports},3578:function(t,e){},3922:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return i}));var a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("app-page",[n("app-page-section",[n("ui-r-table",t._b({key:t.add.type+"-type-select",attrs:{"checked-rows":t.checkedRows,editable:!1},on:{"update:checkedRows":function(e){t.checkedRows=e},"update:checked-rows":function(e){t.checkedRows=e}},scopedSlots:t._u([{key:"col:type",fn:function(e){var n=e.type;return[t._v("\n "+t._s(t.filterTypeStrings[n].label)+"\n ")]}},{key:"col:value",fn:function(e){var n=e.value,a=e.item;return["size"===a.type?[t._v("\n "+t._s(t._f("humanReadableSize")(n))+"\n ")]:"email"===a.type?[t._v("\n "+t._s(t._f("p6eUnicodeEmail")(n))+"\n ")]:[t._v("\n "+t._s(n)+"\n ")]]}}])},"ui-r-table",{rows:t.$api.filters.rows,columns:[{id:"type",label:t.$gettext("Block By"),width:"200px"},{id:"value",label:t.$gettext("Value"),grow:!0}],rowsCount:t.$api.filters.rows.length,isCheckable:!0,isSortable:!1,verticalLayout:t.$_Client.isPhone},!1),[n("template",{slot:"table:actions"},[n("ui-table-action",{on:{click:function(e){t.$dialog("DELETE_ITEMS_DIALOG").open()}}},[n("translate",[t._v("Delete")])],1)],1),t._v(" "),t._v(" "),t._v(" "),t.$_Client.isPhone?t._e():[t._v("\n x\n "),n("ui-form-element",{attrs:{slot:"col:after:type",vertical:""},slot:"col:after:type"},[n("input-select",{directives:[{name:"flex-item",rawName:"v-flex-item",value:{grow:!0},expression:"{ grow: true }"}],attrs:{slot:"content",options:{email:t.$gettext("E-mail"),domain:t.$gettext("Domain"),word:t.$gettext("Stop word"),size:t.$gettext("Size")}},slot:"content",model:{value:t.add.type,callback:function(e){t.$set(t.add,"type",e)},expression:"add.type"}}),t._v(" "),n("ui-tooltip",{directives:[{name:"flex-item",rawName:"v-flex-item",value:{grow:!1},expression:"{ grow: false }"},{name:"margin",rawName:"v-margin",value:[0,1],expression:"[0, 1]"}],attrs:{slot:"content",theme:"primary"},slot:"content"},[t._v("\n "+t._s(t.filterTypeStrings[t.add.type].tooltip)+"\n "),"word"===t.add.type?n("translate",{attrs:{tag:"p"}},[t._v('\n Note: the word filter matches partial words. For\n example, if you block the word "put" and the\n email contains "computer", then the email will\n be blocked. If you expect it to be its own word,\n then block " put ", with spaces beside it to\n avoid partial matching.\n ')]):t._e()],1)],1),t._v(" "),t.showAddFilter?n("filter-input",{attrs:{slot:"col:after:value",type:t.add.type},on:{block:t.addFilter},slot:"col:after:value",model:{value:t.add.value,callback:function(e){t.$set(t.add,"value",e)},expression:"add.value"}}):t._e()]],2),t._v(" "),t.$_Client.isPhone?[n("ui-form-element",{attrs:{vertical:""}},[n("translate",{attrs:{slot:"title"},slot:"title"},[t._v("\n Block By\n ")]),t._v(" "),n("input-select",{attrs:{slot:"content",options:{email:t.$gettext("E-mail"),domain:t.$gettext("Domain"),word:t.$gettext("Stop word"),size:t.$gettext("Size")}},slot:"content",model:{value:t.add.type,callback:function(e){t.$set(t.add,"type",e)},expression:"add.type"}})],1),t._v(" "),n("ui-form-element",{attrs:{vertical:""}},[n("translate",{attrs:{slot:"title"},slot:"title"},[t._v("\n Value\n ")]),t._v(" "),t.showAddFilter?n("filter-input",{attrs:{slot:"content",type:t.add.type},on:{block:t.addFilter},slot:"content",model:{value:t.add.value,callback:function(e){t.$set(t.add,"value",e)},expression:"add.value"}}):t._e()],1),t._v(" "),n("ui-form-element",{attrs:{vertical:""}},[n("span",{attrs:{slot:"content"},slot:"content"},[t._v("\n "+t._s(t.filterTypeStrings[t.add.type].tooltip)+"\n "),"word"===t.add.type?n("translate",{attrs:{tag:"p"}},[t._v('\n Note: the word filter matches partial words. For\n example, if you block the word "put" and the email\n contains "computer", then the email will be blocked.\n If you expect it to be its own word, then block "\n put ", with spaces beside it to avoid partial\n matching.\n ')]):t._e()],1)])]:t._e()],2),t._v(" "),n("app-page-section",[n("translate",{attrs:{slot:"section:title"},slot:"section:title"},[t._v("\n Options\n ")]),t._v(" "),n("ui-form-element",[n("div",{directives:[{name:"flex",rawName:"v-flex",value:{cross:"center"},expression:"{ cross: 'center' }"},{name:"gutter",rawName:"v-gutter",value:1,expression:"1"}],attrs:{slot:"title"},slot:"title"},[n("translate",[t._v("Adult Filter:")]),t._v(" "),n("ui-tooltip",[n("translate",[t._v("\n Blocks out common adult phrases, words, and\n addresses\n ")])],1)],1),t._v(" "),n("input-checkbox",{attrs:{slot:"content"},slot:"content",model:{value:t.adult,callback:function(e){t.adult=e},expression:"adult"}},[t._v("\n "+t._s(t.adult?t.$gettext("Enabled"):t.$gettext("Disabled"))+"\n ")])],1),t._v(" "),n("ui-form-element",[n("translate",{attrs:{slot:"title"},slot:"title"},[t._v("\n Action for filter matches:\n ")]),t._v(" "),n("div",{directives:[{name:"flex",rawName:"v-flex",value:{cross:t.$_Client.isPhone?"start":"center",dir:t.$_Client.isPhone?"column":"row"},expression:"{\n cross: $_Client.isPhone ? 'start' : 'center',\n dir: $_Client.isPhone ? 'column' : 'row',\n }"},{name:"gutter",rawName:"v-gutter",value:[0,1],expression:"[0, 1]"}],attrs:{slot:"content"},slot:"content"},[n("input-radio",{attrs:{value:"drop"},model:{value:t.action,callback:function(e){t.action=e},expression:"action"}},[n("translate",[t._v("Drop E-mail")])],1),t._v(" "),n("input-radio",{attrs:{value:"email"},model:{value:t.action,callback:function(e){t.action=e},expression:"action"}},[n("translate",[t._v("Send to spambox")])],1)],1)],1)],1),t._v(" "),n("ui-dialog-delete-items",{attrs:{subject:t.$ngettext("filter","filters",t.checkedRows.length)},on:{"click:confirm":t.deleteFilters}})],1)},i=[]},4062:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return i}));var a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ui-form-element",t._b({key:t.type,attrs:{vertical:"",group:"filterInput"}},"ui-form-element",{validators:t.validators},!1),[n("ui-input-group",{attrs:{slot:"content"},slot:"content"},[n(t.input,{key:t.type,tag:"component",attrs:{slot:"input",units:"KB"},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.submit.apply(null,arguments)}},slot:"input",model:{value:t.dataValue,callback:function(e){t.dataValue=e},expression:"dataValue"}}),t._v(" "),n("ui-button",{attrs:{slot:"additions:right",theme:"safe",validateGroup:"filterInput"},on:{click:t.submit},slot:"additions:right"},[n("translate",[t._v("Block")])],1)],1),t._v(" "),n("translate",{attrs:{slot:"error:email"},slot:"error:email"},[t._v("Should be valid email")]),t._v(" "),n("translate",{attrs:{slot:"error:domain"},slot:"error:domain"},[t._v("Should be valid domain")])],1)},i=[]}}]);