Move attribute tag to start of tag

This commit is contained in:
zsxeee 2021-09-30 19:22:17 +08:00
parent dcd68213b1
commit 138ddf5608
No known key found for this signature in database
GPG Key ID: 895CFFFD8313B3B8
12 changed files with 26 additions and 43 deletions

View File

@ -4,15 +4,15 @@
<input id="apprise-url" v-model="$parent.notification.appriseURL" type="text" class="form-control" required> <input id="apprise-url" v-model="$parent.notification.appriseURL" type="text" class="form-control" required>
<div class="form-text"> <div class="form-text">
<p>{{ $t("Example:", ["twilio://AccountSid:AuthToken@FromPhoneNo"]) }}</p> <p>{{ $t("Example:", ["twilio://AccountSid:AuthToken@FromPhoneNo"]) }}</p>
<i18n-t keypath="Read more:" tag="p"> <i18n-t tag="p" keypath="Read more:">
<a href="https://github.com/caronc/apprise/wiki#notification-services" target="_blank">https://github.com/caronc/apprise/wiki#notification-services</a> <a href="https://github.com/caronc/apprise/wiki#notification-services" target="_blank">https://github.com/caronc/apprise/wiki#notification-services</a>
</i18n-t> </i18n-t>
</div> </div>
</div> </div>
<div class="mb-3"> <div class="mb-3">
<i18n-t keypath="Status:" tag="p"> <i18n-t tag="p" keypath="Status:">
<span v-if="appriseInstalled" class="text-primary">{{ $t("appriseInstalled") }}</span> <span v-if="appriseInstalled" class="text-primary">{{ $t("appriseInstalled") }}</span>
<i18n-t v-else keypath="appriseNotInstalled" tag="span" class="text-danger"> <i18n-t v-else tag="span" keypath="appriseNotInstalled" class="text-danger">
<a href="https://github.com/caronc/apprise" target="_blank">{{ $t("Read more") }}</a> <a href="https://github.com/caronc/apprise" target="_blank">{{ $t("Read more") }}</a>
</i18n-t> </i18n-t>
</i18n-t> </i18n-t>
@ -24,12 +24,12 @@ export default {
data() { data() {
return { return {
appriseInstalled: false appriseInstalled: false
} };
}, },
mounted() { mounted() {
this.$root.getSocket().emit("checkApprise", (installed) => { this.$root.getSocket().emit("checkApprise", (installed) => {
this.appriseInstalled = installed; this.appriseInstalled = installed;
}) });
}, },
} };
</script> </script>

View File

@ -3,17 +3,17 @@
<label for="line-channel-access-token" class="form-label">{{ $t("Channel access token") }}</label> <label for="line-channel-access-token" class="form-label">{{ $t("Channel access token") }}</label>
<HiddenInput id="line-channel-access-token" v-model="$parent.notification.lineChannelAccessToken" :required="true" autocomplete="one-time-code"></HiddenInput> <HiddenInput id="line-channel-access-token" v-model="$parent.notification.lineChannelAccessToken" :required="true" autocomplete="one-time-code"></HiddenInput>
</div> </div>
<i18n-t keypath="lineDevConsoleTo" tag="div" class="form-text"> <i18n-t tag="div" keypath="lineDevConsoleTo" class="form-text">
<b>{{ $t("Basic Settings") }}</b> <b>{{ $t("Basic Settings") }}</b>
</i18n-t> </i18n-t>
<div class="mb-3" style="margin-top: 12px;"> <div class="mb-3" style="margin-top: 12px;">
<label for="line-user-id" class="form-label">User ID</label> <label for="line-user-id" class="form-label">User ID</label>
<input id="line-user-id" v-model="$parent.notification.lineUserID" type="text" class="form-control" required> <input id="line-user-id" v-model="$parent.notification.lineUserID" type="text" class="form-control" required>
</div> </div>
<i18n-t keypath="lineDevConsoleTo" tag="div" class="form-text"> <i18n-t tag="div" keypath="lineDevConsoleTo" class="form-text">
<b>{{ $t("Messaging API") }}</b> <b>{{ $t("Messaging API") }}</b>
</i18n-t> </i18n-t>
<i18n-t keypath="wayToGetLineChannelToken" tag="div" class="form-text" style="margin-top: 8px;"> <i18n-t tag="div" keypath="wayToGetLineChannelToken" class="form-text" style="margin-top: 8px;">
<a href="https://developers.line.biz/console/" target="_blank">{{ $t("Line Developers Console") }}</a> <a href="https://developers.line.biz/console/" target="_blank">{{ $t("Line Developers Console") }}</a>
</i18n-t> </i18n-t>
</template> </template>
@ -25,5 +25,5 @@ export default {
components: { components: {
HiddenInput, HiddenInput,
}, },
} };
</script> </script>

View File

@ -12,7 +12,7 @@
<input id="mattermost-channel-name" v-model="$parent.notification.mattermostchannel" type="text" class="form-control"> <input id="mattermost-channel-name" v-model="$parent.notification.mattermostchannel" type="text" class="form-control">
<div class="form-text"> <div class="form-text">
<span style="color:red;"><sup>*</sup></span>{{ $t("Required") }} <span style="color:red;"><sup>*</sup></span>{{ $t("Required") }}
<i18n-t keypath="aboutWebhooks" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="aboutWebhooks" style="margin-top: 8px;">
<a href="https://docs.mattermost.com/developer/webhooks-incoming.html" target="_blank">https://docs.mattermost.com/developer/webhooks-incoming.html</a> <a href="https://docs.mattermost.com/developer/webhooks-incoming.html" target="_blank">https://docs.mattermost.com/developer/webhooks-incoming.html</a>
</i18n-t> </i18n-t>
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
@ -24,7 +24,7 @@
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
{{ $t("aboutIconURL") }} {{ $t("aboutIconURL") }}
</p> </p>
<i18n-t keypath="emojiCheatSheet" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="emojiCheatSheet" style="margin-top: 8px;">
<a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a> <a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a>
</i18n-t> </i18n-t>
</div> </div>

View File

@ -11,7 +11,7 @@
<option value="sms_premium">{{ $t("octopushTypePremium") }}</option> <option value="sms_premium">{{ $t("octopushTypePremium") }}</option>
<option value="sms_low_cost">{{ $t("octopushTypeLowCost") }}</option> <option value="sms_low_cost">{{ $t("octopushTypeLowCost") }}</option>
</select> </select>
<i18n-t keypath="Check octopush prices" tag="div" class="form-text"> <i18n-t tag="div" keypath="Check octopush prices" class="form-text">
<a href="https://octopush.com/tarifs-sms-international/" target="_blank">https://octopush.com/tarifs-sms-international/</a> <a href="https://octopush.com/tarifs-sms-international/" target="_blank">https://octopush.com/tarifs-sms-international/</a>
</i18n-t> </i18n-t>
</div> </div>
@ -24,7 +24,7 @@
<input id="octopush-sender-name" v-model="$parent.notification.octopushSenderName" type="text" minlength="3" maxlength="11" class="form-control"> <input id="octopush-sender-name" v-model="$parent.notification.octopushSenderName" type="text" minlength="3" maxlength="11" class="form-control">
</div> </div>
<i18n-t keypath="More info on:" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="More info on:" style="margin-top: 8px;">
<a href="https://octopush.com/api-sms-documentation/envoi-de-sms/" target="_blank">https://octopush.com/api-sms-documentation/envoi-de-sms/</a> <a href="https://octopush.com/api-sms-documentation/envoi-de-sms/" target="_blank">https://octopush.com/api-sms-documentation/envoi-de-sms/</a>
</i18n-t> </i18n-t>
</template> </template>
@ -36,5 +36,5 @@ export default {
components: { components: {
HiddenInput, HiddenInput,
}, },
} };
</script> </script>

View File

@ -4,7 +4,7 @@
<HiddenInput id="pushbullet-access-token" v-model="$parent.notification.pushbulletAccessToken" :required="true" autocomplete="one-time-code"></HiddenInput> <HiddenInput id="pushbullet-access-token" v-model="$parent.notification.pushbulletAccessToken" :required="true" autocomplete="one-time-code"></HiddenInput>
</div> </div>
<i18n-t keypath="More info on:" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="More info on:" style="margin-top: 8px;">
<a href="https://docs.pushbullet.com" target="_blank">https://docs.pushbullet.com</a> <a href="https://docs.pushbullet.com" target="_blank">https://docs.pushbullet.com</a>
</i18n-t> </i18n-t>
</template> </template>
@ -16,5 +16,5 @@ export default {
components: { components: {
HiddenInput, HiddenInput,
}, },
} };
</script> </script>

View File

@ -43,7 +43,7 @@
</select> </select>
<div class="form-text"> <div class="form-text">
<span style="color: red;"><sup>*</sup></span>{{ $t("Required") }} <span style="color: red;"><sup>*</sup></span>{{ $t("Required") }}
<i18n-t keypath="More info on:" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="More info on:" style="margin-top: 8px;">
<a href="https://pushover.net/api" target="_blank">https://pushover.net/api</a> <a href="https://pushover.net/api" target="_blank">https://pushover.net/api</a>
</i18n-t> </i18n-t>
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">

View File

@ -10,7 +10,7 @@
<HiddenInput id="pushy-user-key" v-model="$parent.notification.pushyToken" :required="true" autocomplete="one-time-code"></HiddenInput> <HiddenInput id="pushy-user-key" v-model="$parent.notification.pushyToken" :required="true" autocomplete="one-time-code"></HiddenInput>
</div> </div>
</div> </div>
<i18n-t keypath="More info on:" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="More info on:" style="margin-top: 8px;">
<a href="https://pushy.me/docs/api/send-notifications" target="_blank">https://pushy.me/docs/api/send-notifications</a> <a href="https://pushy.me/docs/api/send-notifications" target="_blank">https://pushy.me/docs/api/send-notifications</a>
</i18n-t> </i18n-t>
</template> </template>
@ -22,5 +22,5 @@ export default {
components: { components: {
HiddenInput, HiddenInput,
}, },
} };
</script> </script>

View File

@ -12,7 +12,7 @@
<input id="rocket-button" v-model="$parent.notification.rocketbutton" type="text" class="form-control"> <input id="rocket-button" v-model="$parent.notification.rocketbutton" type="text" class="form-control">
<div class="form-text"> <div class="form-text">
<span style="color: red;"><sup>*</sup></span>{{ $t("Required") }} <span style="color: red;"><sup>*</sup></span>{{ $t("Required") }}
<i18-t keypath="aboutWebhooks" tag="p" style="margin-top: 8px;"> <i18-t tag="p" keypath="aboutWebhooks" style="margin-top: 8px;">
<a href="https://docs.rocket.chat/guides/administration/administration/integrations" target="_blank">https://api.slack.com/messaging/webhooks</a> <a href="https://docs.rocket.chat/guides/administration/administration/integrations" target="_blank">https://api.slack.com/messaging/webhooks</a>
</i18-t> </i18-t>
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
@ -21,7 +21,7 @@
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
{{ $t("aboutKumaURL") }} {{ $t("aboutKumaURL") }}
</p> </p>
<i18n-t keypath="emojiCheatSheet" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="emojiCheatSheet" style="margin-top: 8px;">
<a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a> <a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a>
</i18n-t> </i18n-t>
</div> </div>

View File

@ -12,7 +12,7 @@
<input id="slack-button" v-model="$parent.notification.slackbutton" type="text" class="form-control"> <input id="slack-button" v-model="$parent.notification.slackbutton" type="text" class="form-control">
<div class="form-text"> <div class="form-text">
<span style="color: red;"><sup>*</sup></span>{{ $t("Required") }} <span style="color: red;"><sup>*</sup></span>{{ $t("Required") }}
<i18-t keypath="aboutWebhooks" tag="p" style="margin-top: 8px;"> <i18-t tag="p" keypath="aboutWebhooks" style="margin-top: 8px;">
<a href="https://api.slack.com/messaging/webhooks" target="_blank">https://api.slack.com/messaging/webhooks</a> <a href="https://api.slack.com/messaging/webhooks" target="_blank">https://api.slack.com/messaging/webhooks</a>
</i18-t> </i18-t>
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
@ -21,7 +21,7 @@
<p style="margin-top: 8px;"> <p style="margin-top: 8px;">
{{ $t("aboutKumaURL") }} {{ $t("aboutKumaURL") }}
</p> </p>
<i18n-t keypath="emojiCheatSheet" tag="p" style="margin-top: 8px;"> <i18n-t tag="p" keypath="emojiCheatSheet" style="margin-top: 8px;">
<a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a> <a href="https://www.webfx.com/tools/emoji-cheat-sheet/" target="_blank">https://www.webfx.com/tools/emoji-cheat-sheet/</a>
</i18n-t> </i18n-t>
</div> </div>

View File

@ -8,7 +8,7 @@
class="form-control" class="form-control"
required required
/> />
<i18n-t keypath="wayToGetTeamsURL" class="form-text" tag="div"> <i18n-t tag="div" keypath="wayToGetTeamsURL" class="form-text">
<a <a
href="https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook" href="https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook"
target="_blank" target="_blank"

View File

@ -17,7 +17,7 @@
<div class="form-text"> <div class="form-text">
<p>"application/json" is good for any modern http servers such as express.js</p> <p>"application/json" is good for any modern http servers such as express.js</p>
<i18n-t keypath="webhookFormDataDesc" tag="p"> <i18n-t tag="p" keypath="webhookFormDataDesc">
"multipart/form-data" "multipart/form-data"
<strong>json_decode($_POST['data'])</strong> <strong>json_decode($_POST['data'])</strong>
</i18n-t> </i18n-t>

View File

@ -182,7 +182,6 @@ export default {
defaultNotificationName: "My {0} Alert ({1})", defaultNotificationName: "My {0} Alert ({1})",
here: "here", here: "here",
"Required": "Required", "Required": "Required",
"telegram": "Telegram", "telegram": "Telegram",
"Bot Token": "Bot Token", "Bot Token": "Bot Token",
"You can get a token from": "You can get a token from", "You can get a token from": "You can get a token from",
@ -191,13 +190,11 @@ export default {
wayToGetTelegramChatID: "You can get your chat id by sending message to the bot and go to this url to view the chat_id:", wayToGetTelegramChatID: "You can get your chat id by sending message to the bot and go to this url to view the chat_id:",
"YOUR BOT TOKEN HERE": "YOUR BOT TOKEN HERE", "YOUR BOT TOKEN HERE": "YOUR BOT TOKEN HERE",
chatIDNotFound: "Chat ID is not found, please send a message to this bot first", chatIDNotFound: "Chat ID is not found, please send a message to this bot first",
"webhook": "Webhook", "webhook": "Webhook",
"Post URL": "Post URL", "Post URL": "Post URL",
"Content Type": "Content Type", "Content Type": "Content Type",
webhookJsonDesc: "{0} is good for any modern http servers such as express.js", webhookJsonDesc: "{0} is good for any modern http servers such as express.js",
webhookFormDataDesc: "{0} is good for PHP, you just need to parse the json by {1}", webhookFormDataDesc: "{0} is good for PHP, you just need to parse the json by {1}",
"smtp": "Email (SMTP)", "smtp": "Email (SMTP)",
secureOptionNone: "None / STARTTLS (25, 587)", secureOptionNone: "None / STARTTLS (25, 587)",
secureOptionTLS: "TLS (465)", secureOptionTLS: "TLS (465)",
@ -206,30 +203,25 @@ export default {
"To Email": "To Email", "To Email": "To Email",
smtpCC: "CC", smtpCC: "CC",
smtpBCC: "BCC", smtpBCC: "BCC",
"discord": "Discord", "discord": "Discord",
"Discord Webhook URL": "Discord Webhook URL", "Discord Webhook URL": "Discord Webhook URL",
wayToGetDiscordURL: "You can get this by going to Server Settings -> Integrations -> Create Webhook", wayToGetDiscordURL: "You can get this by going to Server Settings -> Integrations -> Create Webhook",
"Bot Display Name": "Bot Display Name", "Bot Display Name": "Bot Display Name",
"Prefix Custom Message": "Prefix Custom Message", "Prefix Custom Message": "Prefix Custom Message",
"Hello @everyone is...": "Hello @everyone is...", "Hello @everyone is...": "Hello @everyone is...",
"teams": "Microsoft Teams", "teams": "Microsoft Teams",
"Webhook URL": "Webhook URL", "Webhook URL": "Webhook URL",
wayToGetTeamsURL: "You can learn how to create a webhook url {0}.", wayToGetTeamsURL: "You can learn how to create a webhook url {0}.",
"signal": "Signal", "signal": "Signal",
"Number": "Number", "Number": "Number",
"Recipients": "Recipients", "Recipients": "Recipients",
needSignalAPI: "You need to have a signal client with REST API.", needSignalAPI: "You need to have a signal client with REST API.",
wayToCheckSignalURL: "You can check this url to view how to setup one:", wayToCheckSignalURL: "You can check this url to view how to setup one:",
signalImportant: "IMPORTANT: You cannot mix groups and numbers in recipients!", signalImportant: "IMPORTANT: You cannot mix groups and numbers in recipients!",
"gotify": "Gotify", "gotify": "Gotify",
"Application Token": "Application Token", "Application Token": "Application Token",
"Server URL": "Server URL", "Server URL": "Server URL",
"Priority": "Priority", "Priority": "Priority",
"slack": "Slack", "slack": "Slack",
"Icon Emoji": "Icon Emoji", "Icon Emoji": "Icon Emoji",
"Channel Name": "Channel Name", "Channel Name": "Channel Name",
@ -238,9 +230,7 @@ export default {
aboutChannelName: "Enter the channel name on {0} Channel Name field if you want to bypass the webhook channel. Ex: #other-channel", aboutChannelName: "Enter the channel name on {0} Channel Name field if you want to bypass the webhook channel. Ex: #other-channel",
aboutKumaURL: "If you leave the Uptime Kuma URL field blank, it will default to the Project Github page.", aboutKumaURL: "If you leave the Uptime Kuma URL field blank, it will default to the Project Github page.",
emojiCheatSheet: "Emoji cheat sheet: {0}", emojiCheatSheet: "Emoji cheat sheet: {0}",
"rocket.chat": "Rocket.chat", "rocket.chat": "Rocket.chat",
"pushover": "Pushover", "pushover": "Pushover",
"User Key": "User Key", "User Key": "User Key",
"Device": "Device", "Device": "Device",
@ -249,9 +239,7 @@ export default {
"More info on:": "More info on: {0}", "More info on:": "More info on: {0}",
pushoverDesc1: "Emergency priority (2) has default 30 second timeout between retries and will expire after 1 hour.", pushoverDesc1: "Emergency priority (2) has default 30 second timeout between retries and will expire after 1 hour.",
pushoverDesc2: "If you want to send notifications to different devices, fill out Device field.", pushoverDesc2: "If you want to send notifications to different devices, fill out Device field.",
"pushy": "Pushy", "pushy": "Pushy",
"octopush": "Octopush", "octopush": "Octopush",
"SMS Type": "SMS Type", "SMS Type": "SMS Type",
octopushTypePremium: "Premium (Fast - recommended for alerting)", octopushTypePremium: "Premium (Fast - recommended for alerting)",
@ -259,10 +247,8 @@ export default {
"Check octopush prices": "Check octopush prices {0}.", "Check octopush prices": "Check octopush prices {0}.",
octopushPhoneNumber: "Phone number (intl format, eg : +33612345678) ", octopushPhoneNumber: "Phone number (intl format, eg : +33612345678) ",
octopushSMSSender: "SMS Sender Name : 3-11 alphanumeric characters and space (a-zA-Z0-9)", octopushSMSSender: "SMS Sender Name : 3-11 alphanumeric characters and space (a-zA-Z0-9)",
"lunasea": "LunaSea", "lunasea": "LunaSea",
"LunaSea Device ID": "LunaSea Device ID", "LunaSea Device ID": "LunaSea Device ID",
"apprise": "Apprise (Support 50+ Notification services)", "apprise": "Apprise (Support 50+ Notification services)",
"Apprise URL": "Apprise URL", "Apprise URL": "Apprise URL",
"Example:": "Example: {0}", "Example:": "Example: {0}",
@ -271,10 +257,8 @@ export default {
"Read more": "Read more", "Read more": "Read more",
appriseInstalled: "Apprise is installed.", appriseInstalled: "Apprise is installed.",
appriseNotInstalled: "Apprise is not installed. {0}", appriseNotInstalled: "Apprise is not installed. {0}",
"pushbullet": "Pushbullet", "pushbullet": "Pushbullet",
"Access Token": "Access Token", "Access Token": "Access Token",
"line": "Line Messenger", "line": "Line Messenger",
"Channel access token": "Channel access token", "Channel access token": "Channel access token",
"Line Developers Console": "Line Developers Console", "Line Developers Console": "Line Developers Console",
@ -283,7 +267,6 @@ export default {
"User ID": "User ID", "User ID": "User ID",
"Messaging API": "Messaging API", "Messaging API": "Messaging API",
wayToGetLineChannelToken: "First access the {0}, create a provider and channel (Messaging API), then you can get the channel access token and user id from the above mentioned menu items.", wayToGetLineChannelToken: "First access the {0}, create a provider and channel (Messaging API), then you can get the channel access token and user id from the above mentioned menu items.",
"mattermost": "Mattermost", "mattermost": "Mattermost",
"Icon URL": "Icon URL", "Icon URL": "Icon URL",
aboutIconURL: "You can provide a link to a picture in \"Icon URL\" to override the default profile picture. Will not be used if Icon Emoji is set.", aboutIconURL: "You can provide a link to a picture in \"Icon URL\" to override the default profile picture. Will not be used if Icon Emoji is set.",