fa,zh bug fixed - qrcode for trojan added

This commit is contained in:
MHSanaei 2023-02-10 18:49:31 +03:30
parent 145015bf41
commit c1980277e1
6 changed files with 34 additions and 17 deletions

View file

@ -3,7 +3,7 @@
:closable="true" width="300px" :ok-text="qrModal.okText"
cancel-text='{{ i18n "close" }}' :ok-button-props="{attrs:{id:'qr-modal-ok-btn'}}">
<a-tag color="green" style="margin-bottom: 10px;display: block;text-align: center;" >click on QR Code to Copy</a-tag>
<canvas v-if="qrModal.inbound.protocol != Protocols.VMESS && qrModal.inbound.protocol != Protocols.VLESS" id="qrCode" style="width: 100%; height: 100%;"></canvas>
<canvas v-if="qrModal.inbound.protocol != Protocols.VMESS && qrModal.inbound.protocol != Protocols.VLESS && qrModal.inbound.protocol != Protocols.TROJAN" id="qrCode" style="width: 100%; height: 100%;"></canvas>
<template v-if="qrModal.inbound.protocol === Protocols.VMESS" v-for="(vmess, index) in qrModal.inbound.settings.vmesses">
<a-tag color="red" style="margin-bottom: 10px;display: block;text-align: center;" v-text="vmess.email"></a-tag>
@ -16,6 +16,12 @@
<canvas @click="copyTextToClipboard(`qrCode-vless-${vless.id}`,index)" :id="`qrCode-vless-${vless.id}`" style="width: 100%; height: 100%;"></canvas>
<a-divider style="height: 2px; background-color: #7e7e7e" />
</template>
<template v-if="qrModal.inbound.protocol === Protocols.TROJAN" v-for="(trojan, index) in qrModal.inbound.settings.trojans">
<a-tag color="red" style="margin-bottom: 10px;display: block;text-align: center;" v-text="trojan.email"></a-tag>
<canvas @click="copyTextToClipboard(`qrCode-trojan-${trojan.password}`,index)" :id="`qrCode-trojan-${trojan.password}`" style="width: 100%; height: 100%;"></canvas>
<a-divider style="height: 2px; background-color: #7e7e7e" />
</template>
</a-modal>
<script>
@ -110,6 +116,13 @@
this.setQrCode("qrCode-vless-" + vlesses[index].id ,index)
}
break;
case Protocols.TROJAN:
trojans = qrModal.inbound.settings.trojans
for (const index in trojans) {
this.setQrCode("qrCode-trojan-" + trojans[index].password ,index)
}
break;
default: return null;
}

View file

@ -25,11 +25,11 @@
</template>
<template v-if="inbound.tls || inbound.xtls">
<p v-if="inbound.tls">tls: <a-tag color="green">{{ i18n "turnOn" }}</a-tag></p>
<p v-if="inbound.xtls">xtls: <a-tag color="green">{{ i18n "turnOn" }}</a-tag></p>
<p v-if="inbound.tls">tls: <a-tag color="green">{{ i18n "enabled" }}</a-tag></p>
<p v-if="inbound.xtls">xtls: <a-tag color="green">{{ i18n "enabled" }}</a-tag></p>
</template>
<template v-else>
<p>tls: <a-tag color="red">{{ i18n "closure" }}</a-tag></p>
<p>tls: <a-tag color="red">{{ i18n "disabled" }}</a-tag></p>
</template>
<p v-if="inbound.tls">
tls {{ i18n "domainName" }}: <a-tag :color="inbound.serverName ? 'green' : 'orange'">[[ inbound.serverName ? inbound.serverName : '' ]]</a-tag>

View file

@ -7,7 +7,7 @@
<a-tag v-if="client._totalGB === 0" color="blue">{{ i18n "used" }}: [[ sizeFormat(getUpStats(record, client.email) + getDownStats(record, client.email)) ]]</a-tag>
<a-tag v-if="client._totalGB > 0 && !isTrafficExhausted(record, client.email)" color="green">{{ i18n "used" }}: [[ sizeFormat(getUpStats(record, client.email) + getDownStats(record, client.email)) ]] / [[client._totalGB]]GB</a-tag>
<a-tag v-if="client._totalGB > 0 && isTrafficExhausted(record, client.email)" color="red">{{ i18n "used" }}: [[ sizeFormat(getUpStats(record, client.email) + getDownStats(record, client.email)) ]] / [[client._totalGB]]GB</a-tag>
</template>
</template>
<template slot="expiryTime" slot-scope="text, client, index">
<template v-if="client._expiryTime > 0">
<a-tag v-if="isExpiry(record, index)" color="red">

View file

@ -31,17 +31,18 @@
"host" = "host"
"path" = "path"
"camouflage" = "camouflage"
"turnOn" = "turn on"
"closure" = "closure"
"enabled" = "enabled"
"disabled" = "disabled"
"domainName" = "domain name"
"additional" = "alter"
"monitor" = "Listen IP"
"certificate" = "certificat"
"certificate" = "certificate"
"fail" = "fail"
"success" = " success"
"getVersion" = "get version"
"install" = "install"
"used" = "used"
"clients" = "clients"
[menu]
"dashboard" = "System Status"
@ -83,7 +84,6 @@
"xraySwitchVersionDialogDesc" = "whether to switch the xray version to"
"dontRefreshh" = "Installation is in progress, please do not refresh this page"
[pages.inbounds]
"title" = "Inbounds"
"totalDownUp" = "Total uploads/downloads"

View file

@ -17,7 +17,7 @@
"hour" = "ساعت"
"day" = "روز"
"check" = "چک کردن"
"indefinitely" = "نامحدود"
"indefinite" = "نامحدود"
"unlimited" = "نامحدود"
"none" = "هیچ"
"qrCode" = "QR کد"
@ -31,8 +31,8 @@
"host" = "آدرس"
"path" = "مسیر"
"camouflage" = "استتار"
"enabled" = "فعال"
"disabled" = "disabled"
"enabled" = "فعال شد"
"disabled" = "غیرفعال شد"
"domainName" = "آدرس دامنه"
"additional" = "آی دی جایگزین"
"monitor" = "آی پی اتصال"
@ -41,6 +41,7 @@
"success" = " موفق"
"getVersion" = "دریافت ورژن"
"install" = "نصب"
"used" = "استفاده شده"
"clients" = "کاربران"
[menu]
@ -123,7 +124,8 @@
"publicKeyContent" = "محتوای Certificate.crt"
"keyPath" = "مسیر فایل Private.key"
"keyContent" = "محتوای Private.key"
"clickOnQRcode" = "برای کپی بر روی کد تصویری کلیک کنید"
"client" = "کاربر"
"uid" = "UID"
[pages.inbounds.toasts]
"obtain" = "Obtain"

View file

@ -17,7 +17,7 @@
"hour" = "小时"
"day" = "天"
"check" = "查看"
"indefinitely" = "无限期"
"indefinite" = "无限期"
"unlimited" = "无限制"
"none" = "无"
"qrCode" = "二维码"
@ -41,6 +41,7 @@
"success" = "成功"
"getVersion" = "获取版本"
"install" = "安装"
"used" = "用过的"
"clients" = "客户端"
[menu]
@ -122,7 +123,9 @@
"publicKeyContent" = "公钥内容"
"keyPath" = "密钥文件路径"
"keyContent" = "密钥内容"
"clickOnQRcode" = "click on QR Code to Copy"
"client" = "客户"
"uid" = "UID"
[pages.inbounds.toasts]
"obtain" = "获取"
@ -187,5 +190,4 @@
"getSetting" = "获取设置"
"modifyUser" = "修改用户"
"originalUserPassIncorrect" = "原用户名或原密码错误"
"userPassMustBeNotEmpty" = "新用户名和新密码不能为空"
"userPassMustBeNotEmpty" = "新用户名和新密码不能为空"