1
0
Эх сурвалжийг харах

Add copy button for sub link

Hamidreza Ghavami 1 жил өмнө
parent
commit
8143379645

+ 3 - 10
web/html/xui/inbound_info_modal.html

@@ -114,6 +114,7 @@
         <tr v-if="infoModal.clientSettings.subId">
             <td>Subscription link</td>
             <td><a :href="[[ subBase + infoModal.clientSettings.subId ]]" target="_blank">[[ subBase + infoModal.clientSettings.subId ]]</a></td>
+            <td><a-icon id="copy-sub-link" type="snippets" @click="copyToClipboard('copy-sub-link', subBase + infoModal.clientSettings.subId)"></a-icon></td>
         </tr>
         <tr v-if="infoModal.clientSettings.tgId">
             <td>Telegram ID</td>
@@ -190,7 +191,7 @@
     <div v-if="dbInbound.hasLink()">
         <a-divider>URL</a-divider>
         <p>[[ infoModal.link ]]</p>
-        <button class="ant-btn ant-btn-primary" id="copy-url-link"><a-icon type="snippets"></a-icon>{{ i18n "copy" }}</button>
+        <button class="ant-btn ant-btn-primary" id="copy-url-link" @click="copyToClipboard('copy-url-link', infoModal.link)"><a-icon type="snippets"></a-icon>{{ i18n "copy" }}</button>
     </div>
 </a-modal>
 <script>
@@ -218,14 +219,6 @@
             this.isExpired = this.inbound.isExpiry(index);
             this.clientStats = this.settings.clients ? this.dbInbound.clientStats.find(row => row.email === this.clientSettings.email) : [];
             this.visible = true;
-            infoModalApp.$nextTick(() => {
-                if (this.clipboard === null) {
-                    this.clipboard = new ClipboardJS('#copy-url-link', {
-                        text: () => this.link,
-                    });
-                    this.clipboard.on('success', () => app.$message.success('{{ i18n "copied" }}'));
-                }
-            });
         },
         close() {
             infoModal.visible = false;
@@ -263,7 +256,7 @@
             },
         },
         methods: {
-            copyTextToClipboard(elmentId, content) {
+            copyToClipboard(elmentId, content) {
                 this.infoModal.clipboard = new ClipboardJS('#' + elmentId, {
                     text: () => content,
                 });