diff options
| author | MHSanaei <ho3ein.sanaei@gmail.com> | 2024-02-21 14:46:27 +0300 |
|---|---|---|
| committer | MHSanaei <ho3ein.sanaei@gmail.com> | 2024-02-21 14:46:27 +0300 |
| commit | aebf52efb22a64ac2b0ba203dd41b7523b7d998c (patch) | |
| tree | aa097019b67426b4be0637bfc4b5a484bd415a99 /web/html | |
| parent | c83a1db0c8dc3d8e6c5d59372f992f0668cef433 (diff) | |
simplify log and text modals
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
Diffstat (limited to 'web/html')
| -rw-r--r-- | web/html/common/text_modal.html | 21 | ||||
| -rw-r--r-- | web/html/xui/index.html | 70 |
2 files changed, 46 insertions, 45 deletions
diff --git a/web/html/common/text_modal.html b/web/html/common/text_modal.html index 4fe2f175..68387be2 100644 --- a/web/html/common/text_modal.html +++ b/web/html/common/text_modal.html @@ -1,15 +1,16 @@ {{define "textModal"}} <a-modal id="text-modal" v-model="txtModal.visible" :title="txtModal.title" - :closable="true" ok-text='{{ i18n "copy" }}' cancel-text='{{ i18n "close" }}' - :class="themeSwitcher.currentTheme" - :ok-button-props="{attrs:{id:'txt-modal-ok-btn'}}"> - <a-button v-if="!ObjectUtil.isEmpty(txtModal.fileName)" type="primary" style="margin-bottom: 10px;" - :href="'data:application/text;charset=utf-8,' + encodeURIComponent(txtModal.content)" - :download="txtModal.fileName"> - {{ i18n "download" }} [[ txtModal.fileName ]] - </a-button> + :closable="true" + :class="themeSwitcher.currentTheme"> + <template slot="footer"> + <a-button v-if="!ObjectUtil.isEmpty(txtModal.fileName)" icon="download" + :href="'data:application/text;charset=utf-8,' + encodeURIComponent(txtModal.content)" + :download="txtModal.fileName">[[ txtModal.fileName ]] + </a-button> + <a-button type="primary" id="copy-btn">{{ i18n "copy" }}</a-button> + </template> <a-input type="textarea" v-model="txtModal.content" - :autosize="{ minRows: 10, maxRows: 20}"></a-input> + :autosize="{ minRows: 10, maxRows: 20}"></a-input> </a-modal> <script> @@ -28,7 +29,7 @@ this.visible = true; textModalApp.$nextTick(() => { if (this.clipboard === null) { - this.clipboard = new ClipboardJS('#txt-modal-ok-btn', { + this.clipboard = new ClipboardJS('#copy-btn', { text: () => this.content, }); this.clipboard.on('success', () => { diff --git a/web/html/xui/index.html b/web/html/xui/index.html index 1bc0dfa4..86dbf6b8 100644 --- a/web/html/xui/index.html +++ b/web/html/xui/index.html @@ -285,45 +285,45 @@ </template> </a-modal> - <a-modal id="log-modal" v-model="logModal.visible" title="Logs" - :closable="true" @ok="() => logModal.visible = false" @cancel="() => logModal.visible = false" + <a-modal id="log-modal" v-model="logModal.visible" + :closable="true" @cancel="() => logModal.visible = false" :class="themeSwitcher.currentTheme" - width="800px" - footer=""> + width="800px" footer=""> + <template slot="title"> + {{ i18n "pages.index.logs" }} + <a-icon :spin="logModal.loading" + type="sync" + style="vertical-align: middle; margin-left: 10px;" + :disabled="logModal.loading" + @click="openLogs()"> + </a-icon> + </template> <a-form layout="inline"> - <a-form-item label="Count"> - <a-select v-model="logModal.rows" - style="width: 80px" - @change="openLogs()" - :dropdown-class-name="themeSwitcher.currentTheme"> - <a-select-option value="10">10</a-select-option> - <a-select-option value="20">20</a-select-option> - <a-select-option value="50">50</a-select-option> - <a-select-option value="100">100</a-select-option> - </a-select> - </a-form-item> - <a-form-item label="Log Level"> - <a-select v-model="logModal.level" - style="width: 120px" - @change="openLogs()" - :dropdown-class-name="themeSwitcher.currentTheme"> - <a-select-option value="debug">Debug</a-select-option> - <a-select-option value="info">Info</a-select-option> - <a-select-option value="notice">Notice</a-select-option> - <a-select-option value="warning">Warning</a-select-option> - <a-select-option value="err">Error</a-select-option> - </a-select> - </a-form-item> - <a-form-item label="SysLog"> - <a-checkbox v-model="logModal.syslog" @change="openLogs()"></a-checkbox> - </a-form-item> <a-form-item> - <a-button class="ant-btn ant-btn-primary" :loading="logModal.loading" @click="openLogs()"><a-icon :spin="logModal.loading" type="sync"></a-icon> Reload</a-button> + <a-input-group compact> + <a-select v-model="logModal.rows" style="width:70px;" + @change="openLogs()" :dropdown-class-name="themeSwitcher.currentTheme"> + <a-select-option value="10">10</a-select-option> + <a-select-option value="20">20</a-select-option> + <a-select-option value="50">50</a-select-option> + <a-select-option value="100">100</a-select-option> + </a-select> + <a-select v-model="logModal.level" style="width:100px;" + @change="openLogs()" :dropdown-class-name="themeSwitcher.currentTheme"> + <a-select-option value="debug">Debug</a-select-option> + <a-select-option value="info">Info</a-select-option> + <a-select-option value="notice">Notice</a-select-option> + <a-select-option value="warning">Warning</a-select-option> + <a-select-option value="err">Error</a-select-option> + </a-select> + </a-input-group> </a-form-item> <a-form-item> - <a-button type="primary" style="margin-bottom: 10px;" + <a-checkbox v-model="logModal.syslog" @change="openLogs()">SysLog</a-checkbox> + </a-form-item> + <a-form-item style="float: right;"> + <a-button type="primary" icon="download" :href="'data:application/text;charset=utf-8,' + encodeURIComponent(logModal.logs)" download="x-ui.log"> - {{ i18n "download" }} x-ui.log </a-button> </a-form-item> </a-form> @@ -331,8 +331,8 @@ </a-modal> <a-modal id="backup-modal" v-model="backupModal.visible" :title="backupModal.title" - :closable="true" :class="themeSwitcher.currentTheme" - @ok="() => backupModal.hide()" @cancel="() => backupModal.hide()"> + :closable="true" footer="" + :class="themeSwitcher.currentTheme"> <a-alert type="warning" style="margin-bottom: 10px; width: fit-content" :message="backupModal.description" show-icon |
