| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  | {{define "clientsBulkModal"}} | 
					
						
							| 
									
										
										
										
											2023-12-09 15:18:06 +00:00
										 |  |  | <a-modal id="client-bulk-modal" v-model="clientsBulkModal.visible" :title="clientsBulkModal.title" | 
					
						
							|  |  |  |     @ok="clientsBulkModal.ok" :confirm-loading="clientsBulkModal.confirmLoading" :closable="true" :mask-closable="false" | 
					
						
							|  |  |  |     :ok-text="clientsBulkModal.okText" cancel-text='{{ i18n "close" }}' :class="themeSwitcher.currentTheme"> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |     <a-form :colon="false" :label-col="{ md: {span:8} }" :wrapper-col="{ md: {span:14} }"> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.method" }}'> | 
					
						
							|  |  |  |             <a-select v-model="clientsBulkModal.emailMethod" buttonStyle="solid" | 
					
						
							|  |  |  |                 :dropdown-class-name="themeSwitcher.currentTheme"> | 
					
						
							|  |  |  |                 <a-select-option :value="0">Random</a-select-option> | 
					
						
							|  |  |  |                 <a-select-option :value="1">Random+Prefix</a-select-option> | 
					
						
							|  |  |  |                 <a-select-option :value="2">Random+Prefix+Num</a-select-option> | 
					
						
							|  |  |  |                 <a-select-option :value="3">Random+Prefix+Num+Postfix</a-select-option> | 
					
						
							|  |  |  |                 <a-select-option :value="4">Prefix+Num+Postfix</a-select-option> | 
					
						
							|  |  |  |             </a-select> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.first" }}' v-if="clientsBulkModal.emailMethod>1"> | 
					
						
							|  |  |  |             <a-input-number v-model="clientsBulkModal.firstNum" :min="1"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.last" }}' v-if="clientsBulkModal.emailMethod>1"> | 
					
						
							|  |  |  |             <a-input-number v-model="clientsBulkModal.lastNum" :min="clientsBulkModal.firstNum"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.prefix" }}' v-if="clientsBulkModal.emailMethod>0"> | 
					
						
							| 
									
										
										
										
											2024-05-28 13:16:29 +00:00
										 |  |  |             <a-input v-model.trim="clientsBulkModal.emailPrefix"></a-input> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.postfix" }}' v-if="clientsBulkModal.emailMethod>2"> | 
					
						
							| 
									
										
										
										
											2024-05-28 13:16:29 +00:00
										 |  |  |             <a-input v-model.trim="clientsBulkModal.emailPostfix"></a-input> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.clientCount" }}' v-if="clientsBulkModal.emailMethod < 2"> | 
					
						
							|  |  |  |             <a-input-number v-model="clientsBulkModal.quantity" :min="1" :max="100"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							| 
									
										
										
										
											2024-09-16 11:51:36 +00:00
										 |  |  |         <a-form-item label='{{ i18n "security" }}' v-if="inbound.protocol === Protocols.VMESS"> | 
					
						
							| 
									
										
										
										
											2024-08-10 22:47:44 +00:00
										 |  |  |             <a-select v-model="clientsBulkModal.security" :dropdown-class-name="themeSwitcher.currentTheme"> | 
					
						
							|  |  |  |                 <a-select-option v-for="key in USERS_SECURITY" :value="key">[[ key ]]</a-select-option> | 
					
						
							|  |  |  |             </a-select> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |         <a-form-item label='Flow' v-if="clientsBulkModal.inbound.canEnableTlsFlow()"> | 
					
						
							|  |  |  |             <a-select v-model="clientsBulkModal.flow" :dropdown-class-name="themeSwitcher.currentTheme"> | 
					
						
							|  |  |  |                 <a-select-option value="" selected>{{ i18n "none" }}</a-select-option> | 
					
						
							|  |  |  |                 <a-select-option v-for="key in TLS_FLOW_CONTROL" :value="key">[[ key ]]</a-select-option> | 
					
						
							|  |  |  |             </a-select> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item v-if="app.subSettings.enable"> | 
					
						
							|  |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         <span>{{ i18n "pages.inbounds.subscriptionDesc" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							|  |  |  |                     Subscription | 
					
						
							|  |  |  |                     <a-icon @click="clientsBulkModal.subId = RandomUtil.randomLowerAndNum(16)" type="sync"></a-icon> | 
					
						
							|  |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							|  |  |  |             <a-input v-model.trim="clientsBulkModal.subId"></a-input> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item v-if="app.tgBotEnable"> | 
					
						
							|  |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         <span>{{ i18n "pages.inbounds.telegramDesc" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |                     Telegram ChatID | 
					
						
							| 
									
										
										
										
											2023-12-13 16:25:20 +00:00
										 |  |  |                     <a-icon type="question-circle"></a-icon> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |             <a-input-number style="width: 50%" v-model="clientsBulkModal.tgId" min="0"></a-input-number> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |         </a-form-item> | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |         <a-form-item v-if="app.ipLimitEnable"> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         <span>{{ i18n "pages.inbounds.IPLimitDesc" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							|  |  |  |                     <span>{{ i18n "pages.inbounds.IPLimit" }} </span> | 
					
						
							| 
									
										
										
										
											2023-12-13 16:25:20 +00:00
										 |  |  |                     <a-icon type="question-circle"></a-icon> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							|  |  |  |             <a-input-number v-model="clientsBulkModal.limitIp" min="0"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item> | 
					
						
							|  |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         0 <span>{{ i18n "pages.inbounds.meansNoLimit" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							| 
									
										
										
										
											2024-01-12 14:24:42 +00:00
										 |  |  |                     {{ i18n "pages.inbounds.totalFlow" }} | 
					
						
							| 
									
										
										
										
											2023-12-13 16:25:20 +00:00
										 |  |  |                     <a-icon type="question-circle"></a-icon> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							|  |  |  |             <a-input-number v-model="clientsBulkModal.totalGB" :min="0"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.delayedStart" }}'> | 
					
						
							|  |  |  |             <a-switch v-model="clientsBulkModal.delayedStart" @click="clientsBulkModal.expiryTime=0"></a-switch> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item label='{{ i18n "pages.client.expireDays" }}' v-if="clientsBulkModal.delayedStart"> | 
					
						
							|  |  |  |             <a-input-number v-model.number="delayedExpireDays" :min="0"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item v-else> | 
					
						
							|  |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         <span>{{ i18n "pages.inbounds.leaveBlankToNeverExpire" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							|  |  |  |                     {{ i18n "pages.inbounds.expireDate" }} | 
					
						
							| 
									
										
										
										
											2023-12-13 16:25:20 +00:00
										 |  |  |                     <a-icon type="question-circle"></a-icon> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |             <a-date-picker v-if="datepicker == 'gregorian'" :show-time="{ format: 'HH:mm:ss' }" | 
					
						
							|  |  |  |                 format="YYYY-MM-DD HH:mm:ss" :dropdown-class-name="themeSwitcher.currentTheme" | 
					
						
							|  |  |  |                 v-model="clientsBulkModal.expiryTime"></a-date-picker> | 
					
						
							| 
									
										
										
										
											2024-01-23 19:46:33 +00:00
										 |  |  |             <persian-datepicker v-else placeholder='{{ i18n "pages.settings.datepickerPlaceholder" }}' | 
					
						
							| 
									
										
										
										
											2024-07-12 23:38:51 +00:00
										 |  |  |                 value="clientsBulkModal.expiryTime" v-model="clientsBulkModal.expiryTime"> | 
					
						
							|  |  |  |             </persian-datepicker> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |         </a-form-item> | 
					
						
							|  |  |  |         <a-form-item v-if="clientsBulkModal.expiryTime != 0"> | 
					
						
							|  |  |  |             <template slot="label"> | 
					
						
							|  |  |  |                 <a-tooltip> | 
					
						
							|  |  |  |                     <template slot="title"> | 
					
						
							|  |  |  |                         <span>{{ i18n "pages.client.renewDesc" }}</span> | 
					
						
							|  |  |  |                     </template> | 
					
						
							| 
									
										
										
										
											2024-07-12 23:38:51 +00:00
										 |  |  |                     {{ i18n "pages.client.renew" }} | 
					
						
							| 
									
										
										
										
											2023-12-13 16:25:20 +00:00
										 |  |  |                     <a-icon type="question-circle"></a-icon> | 
					
						
							| 
									
										
										
										
											2023-12-13 15:57:36 +00:00
										 |  |  |                 </a-tooltip> | 
					
						
							|  |  |  |             </template> | 
					
						
							|  |  |  |             <a-input-number v-model.number="clientsBulkModal.reset" :min="0"></a-input-number> | 
					
						
							|  |  |  |         </a-form-item> | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |     </a-form> | 
					
						
							|  |  |  | </a-modal> | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     const clientsBulkModal = { | 
					
						
							|  |  |  |         visible: false, | 
					
						
							|  |  |  |         confirmLoading: false, | 
					
						
							|  |  |  |         title: '', | 
					
						
							|  |  |  |         okText: '', | 
					
						
							|  |  |  |         confirm: null, | 
					
						
							|  |  |  |         dbInbound: new DBInbound(), | 
					
						
							|  |  |  |         inbound: new Inbound(), | 
					
						
							|  |  |  |         quantity: 1, | 
					
						
							|  |  |  |         totalGB: 0, | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |         limitIp: 0, | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |         expiryTime: '', | 
					
						
							|  |  |  |         emailMethod: 0, | 
					
						
							|  |  |  |         firstNum: 1, | 
					
						
							|  |  |  |         lastNum: 1, | 
					
						
							|  |  |  |         emailPrefix: "", | 
					
						
							|  |  |  |         emailPostfix: "", | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |         subId: "", | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |         tgId: '', | 
					
						
							| 
									
										
										
										
											2024-08-10 22:47:44 +00:00
										 |  |  |         security: "auto", | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |         flow: "", | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |         delayedStart: false, | 
					
						
							| 
									
										
										
										
											2023-12-04 18:20:16 +00:00
										 |  |  |         reset: 0, | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |         ok() { | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |             clients = []; | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |             method = clientsBulkModal.emailMethod; | 
					
						
							|  |  |  |             if (method > 1) { | 
					
						
							|  |  |  |                 start = clientsBulkModal.firstNum; | 
					
						
							|  |  |  |                 end = clientsBulkModal.lastNum + 1; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             } else { | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |                 start = 0; | 
					
						
							|  |  |  |                 end = clientsBulkModal.quantity; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             } | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |             prefix = (method > 0 && clientsBulkModal.emailPrefix.length > 0) ? clientsBulkModal.emailPrefix : ""; | 
					
						
							|  |  |  |             useNum = (method > 1); | 
					
						
							|  |  |  |             postfix = (method > 2 && clientsBulkModal.emailPostfix.length > 0) ? clientsBulkModal.emailPostfix : ""; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             for (let i = start; i < end; i++) { | 
					
						
							|  |  |  |                 newClient = clientsBulkModal.newClient(clientsBulkModal.dbInbound.protocol); | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |                 if (method == 4) newClient.email = ""; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |                 newClient.email += useNum ? prefix + i.toString() + postfix : prefix + postfix; | 
					
						
							| 
									
										
										
										
											2023-05-23 14:25:42 +00:00
										 |  |  |                 if (clientsBulkModal.subId.length > 0) newClient.subId = clientsBulkModal.subId; | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |                 newClient.tgId = clientsBulkModal.tgId; | 
					
						
							| 
									
										
										
										
											2024-08-10 22:47:44 +00:00
										 |  |  |                 newClient.security = clientsBulkModal.security; | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |                 newClient.limitIp = clientsBulkModal.limitIp; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |                 newClient._totalGB = clientsBulkModal.totalGB; | 
					
						
							|  |  |  |                 newClient._expiryTime = clientsBulkModal.expiryTime; | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |                 if (clientsBulkModal.inbound.canEnableTlsFlow()) { | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |                     newClient.flow = clientsBulkModal.flow; | 
					
						
							|  |  |  |                 } | 
					
						
							| 
									
										
										
										
											2023-12-04 18:20:16 +00:00
										 |  |  |                 newClient.reset = clientsBulkModal.reset; | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |                 clients.push(newClient); | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             } | 
					
						
							| 
									
										
										
										
											2023-04-18 18:04:06 +00:00
										 |  |  |             ObjectUtil.execute(clientsBulkModal.confirm, clients, clientsBulkModal.dbInbound.id); | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |         }, | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |         show({ | 
					
						
							|  |  |  |             title = '', | 
					
						
							|  |  |  |             okText = '{{ i18n "sure" }}', | 
					
						
							|  |  |  |             dbInbound = null, | 
					
						
							|  |  |  |             confirm = (inbound, dbInbound) => { } | 
					
						
							|  |  |  |         }) { | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             this.visible = true; | 
					
						
							|  |  |  |             this.title = title; | 
					
						
							|  |  |  |             this.okText = okText; | 
					
						
							|  |  |  |             this.confirm = confirm; | 
					
						
							|  |  |  |             this.quantity = 1; | 
					
						
							|  |  |  |             this.totalGB = 0; | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |             this.expiryTime = 0; | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |             this.emailMethod = 0; | 
					
						
							|  |  |  |             this.limitIp = 0; | 
					
						
							|  |  |  |             this.firstNum = 1; | 
					
						
							|  |  |  |             this.lastNum = 1; | 
					
						
							|  |  |  |             this.emailPrefix = ""; | 
					
						
							|  |  |  |             this.emailPostfix = ""; | 
					
						
							|  |  |  |             this.subId = ""; | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |             this.tgId = ''; | 
					
						
							| 
									
										
										
										
											2024-08-10 22:47:44 +00:00
										 |  |  |             this.security = "auto"; | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |             this.flow = ""; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             this.dbInbound = new DBInbound(dbInbound); | 
					
						
							|  |  |  |             this.inbound = dbInbound.toInbound(); | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |             this.delayedStart = false; | 
					
						
							| 
									
										
										
										
											2023-12-04 18:20:16 +00:00
										 |  |  |             this.reset = 0; | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |         }, | 
					
						
							|  |  |  |         newClient(protocol) { | 
					
						
							|  |  |  |             switch (protocol) { | 
					
						
							| 
									
										
										
										
											2024-08-10 22:47:44 +00:00
										 |  |  |                 case Protocols.VMESS: return new Inbound.VmessSettings.VMESS(); | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |                 case Protocols.VLESS: return new Inbound.VLESSSettings.VLESS(); | 
					
						
							|  |  |  |                 case Protocols.TROJAN: return new Inbound.TrojanSettings.Trojan(); | 
					
						
							| 
									
										
										
										
											2023-07-31 16:19:27 +00:00
										 |  |  |                 case Protocols.SHADOWSOCKS: return new Inbound.ShadowsocksSettings.Shadowsocks(clientsBulkModal.inbound.settings.shadowsockses[0].method); | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |                 default: return null; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |         close() { | 
					
						
							|  |  |  |             clientsBulkModal.visible = false; | 
					
						
							|  |  |  |             clientsBulkModal.loading(false); | 
					
						
							|  |  |  |         }, | 
					
						
							| 
									
										
										
										
											2024-05-16 12:58:32 +00:00
										 |  |  |         loading(loading = true) { | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |             clientsBulkModal.confirmLoading = loading; | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     const clientsBulkModalApp = new Vue({ | 
					
						
							|  |  |  |         delimiters: ['[[', ']]'], | 
					
						
							|  |  |  |         el: '#client-bulk-modal', | 
					
						
							|  |  |  |         data: { | 
					
						
							|  |  |  |             clientsBulkModal, | 
					
						
							|  |  |  |             get inbound() { | 
					
						
							|  |  |  |                 return this.clientsBulkModal.inbound; | 
					
						
							|  |  |  |             }, | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |             get delayedExpireDays() { | 
					
						
							|  |  |  |                 return this.clientsBulkModal.expiryTime < 0 ? this.clientsBulkModal.expiryTime / -86400000 : 0; | 
					
						
							|  |  |  |             }, | 
					
						
							| 
									
										
										
										
											2024-01-02 08:32:21 +00:00
										 |  |  |             get datepicker() { | 
					
						
							|  |  |  |                 return app.datepicker; | 
					
						
							|  |  |  |             }, | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  |             set delayedExpireDays(days) { | 
					
						
							| 
									
										
										
										
											2023-04-09 19:43:18 +00:00
										 |  |  |                 this.clientsBulkModal.expiryTime = -86400000 * days; | 
					
						
							|  |  |  |             }, | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  |         }, | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2023-05-08 14:44:22 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-17 16:07:49 +00:00
										 |  |  | </script> | 
					
						
							|  |  |  | {{end}} |