iobroker.telegram-menu 0.6.2 → 0.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/admin/css/color.css +6 -0
- package/admin/css/style.css +4 -1
- package/admin/i18n/de/translations.json +2 -0
- package/admin/i18n/en/translations.json +2 -0
- package/admin/i18n/es/translations.json +2 -0
- package/admin/i18n/fr/translations.json +2 -0
- package/admin/i18n/it/translations.json +2 -0
- package/admin/i18n/nl/translations.json +2 -0
- package/admin/i18n/pl/translations.json +2 -0
- package/admin/i18n/pt/translations.json +2 -0
- package/admin/i18n/ru/translations.json +2 -0
- package/admin/i18n/uk/translations.json +2 -0
- package/admin/i18n/zh-cn/translations.json +2 -0
- package/admin/index_m.html +181 -133
- package/admin/js/main.js +22 -0
- package/admin/words.js +4 -2
- package/io-package.json +14 -14
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,6 +33,10 @@ You can create different groups with separate menus, and then assign users to th
|
|
|
33
33
|
Placeholder for the next version (at the beginning of the line):
|
|
34
34
|
### **WORK IN PROGRESS**
|
|
35
35
|
-->
|
|
36
|
+
### 0.6.3 (2023-08-17)
|
|
37
|
+
|
|
38
|
+
- user check, least one user must be checked
|
|
39
|
+
|
|
36
40
|
### 0.6.2 (2023-08-14)
|
|
37
41
|
|
|
38
42
|
- Active Menu Output fixed
|
package/admin/css/color.css
CHANGED
package/admin/css/style.css
CHANGED
|
@@ -213,7 +213,7 @@ p[data-name="newline_checkbox"] {
|
|
|
213
213
|
margin: 10px;
|
|
214
214
|
text-align: center;
|
|
215
215
|
}
|
|
216
|
-
.
|
|
216
|
+
.hide {
|
|
217
217
|
display: none;
|
|
218
218
|
}
|
|
219
219
|
#activMenuOutput {
|
|
@@ -243,3 +243,6 @@ p[data-name="newline_checkbox"] {
|
|
|
243
243
|
#group_UserInput div {
|
|
244
244
|
display: inline-block;
|
|
245
245
|
}
|
|
246
|
+
.warning {
|
|
247
|
+
text-align: center;
|
|
248
|
+
}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Neuen Benutzer hinzufügen",
|
|
15
15
|
"Add new Username": "Neuen Benutzernamen hinzufügen",
|
|
16
16
|
"All User from Telegram, seperate with": "Alle Benutzer von Telegram, getrennt mit",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Mindestens ein Benutzer muss aktiviert sein oder das Menü muss deaktiviert sein.",
|
|
17
18
|
"Call": "Forderung",
|
|
18
19
|
"Call Text": "Aufruf Text",
|
|
19
20
|
"Cancel": "Stornieren",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Startseite",
|
|
48
49
|
"Switch": "Schalten",
|
|
49
50
|
"Text will be send if no entry was found!": "Text wird gesendet, wenn kein Eintrag gefunden wurde!",
|
|
51
|
+
"The trigger is allready in use.": "Der Auslöser ist bereits im Einsatz.",
|
|
50
52
|
"Trigger": "Auslöser",
|
|
51
53
|
"Users for this Group, seperate with": "Benutzer für diese Gruppe, trennen Sie mit",
|
|
52
54
|
"Users from Telegram": "Benutzer von Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Add new User",
|
|
15
15
|
"Add new Username": "Add new Username",
|
|
16
16
|
"All User from Telegram, seperate with": "All User from Telegram, seperate with",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "At least one user must be checked, or the menu must be deactivated.",
|
|
17
18
|
"Call": "Call",
|
|
18
19
|
"Call Text": "Call Text",
|
|
19
20
|
"Cancel": "Cancel",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Startside",
|
|
48
49
|
"Switch": "Switch",
|
|
49
50
|
"Text will be send if no entry was found!": "Text will be send if no entry was found!",
|
|
51
|
+
"The trigger is allready in use.": "The trigger is allready in use.",
|
|
50
52
|
"Trigger": "Trigger",
|
|
51
53
|
"Users for this Group, seperate with": "Users for this Group, seperate with",
|
|
52
54
|
"Users from Telegram": "Users from Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Añadir nuevo usuario",
|
|
15
15
|
"Add new Username": "Agregar nuevo nombre de usuario",
|
|
16
16
|
"All User from Telegram, seperate with": "Todos los usuarios de Telegram, separados con",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Se debe marcar al menos un usuario o se debe desactivar el menú.",
|
|
17
18
|
"Call": "Llamar",
|
|
18
19
|
"Call Text": "Texto de llamada",
|
|
19
20
|
"Cancel": "Cancelar",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Lado de salida",
|
|
48
49
|
"Switch": "Cambiar",
|
|
49
50
|
"Text will be send if no entry was found!": "¡Se enviará texto si no se encontró ninguna entrada!",
|
|
51
|
+
"The trigger is allready in use.": "El gatillo ya está en uso.",
|
|
50
52
|
"Trigger": "Desencadenar",
|
|
51
53
|
"Users for this Group, seperate with": "Usuarios para este Grupo, separe con",
|
|
52
54
|
"Users from Telegram": "Usuarios de Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Ajouter un nouvel utilisateur",
|
|
15
15
|
"Add new Username": "Ajouter un nouveau nom d'utilisateur",
|
|
16
16
|
"All User from Telegram, seperate with": "Tous les utilisateurs de Telegram, séparés par",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Au moins un utilisateur doit être coché ou le menu doit être désactivé.",
|
|
17
18
|
"Call": "Appel",
|
|
18
19
|
"Call Text": "Texte d'appel",
|
|
19
20
|
"Cancel": "Annuler",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Côté départ",
|
|
48
49
|
"Switch": "Changer",
|
|
49
50
|
"Text will be send if no entry was found!": "Le texte sera envoyé si aucune entrée n'a été trouvée !",
|
|
51
|
+
"The trigger is allready in use.": "Le déclencheur est déjà utilisé.",
|
|
50
52
|
"Trigger": "Déclencher",
|
|
51
53
|
"Users for this Group, seperate with": "Utilisateurs pour ce groupe, séparés par",
|
|
52
54
|
"Users from Telegram": "Utilisateurs de Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Aggiungi nuovo utente",
|
|
15
15
|
"Add new Username": "Aggiungi nuovo nome utente",
|
|
16
16
|
"All User from Telegram, seperate with": "Tutti gli utenti di Telegram, separati da",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Almeno un utente deve essere selezionato o il menu deve essere disattivato.",
|
|
17
18
|
"Call": "Chiamata",
|
|
18
19
|
"Call Text": "Chiama il testo",
|
|
19
20
|
"Cancel": "Annulla",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Lato iniziale",
|
|
48
49
|
"Switch": "Interruttore",
|
|
49
50
|
"Text will be send if no entry was found!": "Il testo verrà inviato se non è stata trovata alcuna voce!",
|
|
51
|
+
"The trigger is allready in use.": "Il grilletto è già in uso.",
|
|
50
52
|
"Trigger": "Grilletto",
|
|
51
53
|
"Users for this Group, seperate with": "Utenti per questo gruppo, separati da",
|
|
52
54
|
"Users from Telegram": "Utenti di Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Voeg een nieuwe gebruiker toe",
|
|
15
15
|
"Add new Username": "Nieuwe gebruikersnaam toevoegen",
|
|
16
16
|
"All User from Telegram, seperate with": "Alle gebruikers van Telegram, gescheiden met",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Er moet minimaal één gebruiker zijn aangevinkt, of het menu moet zijn gedeactiveerd.",
|
|
17
18
|
"Call": "Telefoongesprek",
|
|
18
19
|
"Call Text": "Bel tekst",
|
|
19
20
|
"Cancel": "Annuleren",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Startzijde",
|
|
48
49
|
"Switch": "Schakelaar",
|
|
49
50
|
"Text will be send if no entry was found!": "Er wordt een tekst verzonden als er geen item is gevonden!",
|
|
51
|
+
"The trigger is allready in use.": "De trigger is al in gebruik.",
|
|
50
52
|
"Trigger": "Trekker",
|
|
51
53
|
"Users for this Group, seperate with": "Gebruikers voor deze groep, scheid met",
|
|
52
54
|
"Users from Telegram": "Gebruikers van Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Dodaj nowego użytkownika",
|
|
15
15
|
"Add new Username": "Dodaj nową nazwę użytkownika",
|
|
16
16
|
"All User from Telegram, seperate with": "Wszyscy użytkownicy z Telegramu, oddzielni od",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Należy zaznaczyć przynajmniej jednego użytkownika lub dezaktywować menu.",
|
|
17
18
|
"Call": "Dzwonić",
|
|
18
19
|
"Call Text": "Tekst połączenia",
|
|
19
20
|
"Cancel": "Anulować",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Strona startowa",
|
|
48
49
|
"Switch": "Przełącznik",
|
|
49
50
|
"Text will be send if no entry was found!": "Tekst zostanie wysłany, jeśli nie znaleziono żadnego wpisu!",
|
|
51
|
+
"The trigger is allready in use.": "Spust jest już w użyciu.",
|
|
50
52
|
"Trigger": "Spust",
|
|
51
53
|
"Users for this Group, seperate with": "Użytkownicy dla tej grupy, oddzielni od",
|
|
52
54
|
"Users from Telegram": "Użytkownicy Telegrama",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Adicionar novo usuário",
|
|
15
15
|
"Add new Username": "Adicionar novo nome de usuário",
|
|
16
16
|
"All User from Telegram, seperate with": "Todos os usuários do Telegram, separados por",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Pelo menos um usuário deve ser verificado ou o menu deve ser desativado.",
|
|
17
18
|
"Call": "Chamar",
|
|
18
19
|
"Call Text": "Texto de chamada",
|
|
19
20
|
"Cancel": "Cancelar",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Startside",
|
|
48
49
|
"Switch": "Trocar",
|
|
49
50
|
"Text will be send if no entry was found!": "O texto será enviado se nenhuma entrada for encontrada!",
|
|
51
|
+
"The trigger is allready in use.": "O gatilho já está em uso.",
|
|
50
52
|
"Trigger": "Acionar",
|
|
51
53
|
"Users for this Group, seperate with": "Usuários deste Grupo, separados por",
|
|
52
54
|
"Users from Telegram": "Usuários do Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Добавить нового пользователя",
|
|
15
15
|
"Add new Username": "Добавить новое имя пользователя",
|
|
16
16
|
"All User from Telegram, seperate with": "Все пользователи из Telegram, отдельно от",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Должен быть отмечен хотя бы один пользователь, или меню должно быть деактивировано.",
|
|
17
18
|
"Call": "Вызов",
|
|
18
19
|
"Call Text": "Текст вызова",
|
|
19
20
|
"Cancel": "Отмена",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Стартовая сторона",
|
|
48
49
|
"Switch": "Выключатель",
|
|
49
50
|
"Text will be send if no entry was found!": "Текст будет отправлен, если запись не найдена!",
|
|
51
|
+
"The trigger is allready in use.": "Триггер уже используется.",
|
|
50
52
|
"Trigger": "Курок",
|
|
51
53
|
"Users for this Group, seperate with": "Пользователи для этой группы, отдельно с",
|
|
52
54
|
"Users from Telegram": "Пользователи из Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "Додати нового користувача",
|
|
15
15
|
"Add new Username": "Додайте нове ім'я користувача",
|
|
16
16
|
"All User from Telegram, seperate with": "Всі користувачі з Telegram, окремо від",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "Принаймні один користувач повинен бути відмічений, або меню має бути дезактивовано.",
|
|
17
18
|
"Call": "Телефонуйте",
|
|
18
19
|
"Call Text": "Текст виклику",
|
|
19
20
|
"Cancel": "Скасувати",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "Стартова сторона",
|
|
48
49
|
"Switch": "Перемикач",
|
|
49
50
|
"Text will be send if no entry was found!": "Текст буде надіслано, якщо запис не знайдено!",
|
|
51
|
+
"The trigger is allready in use.": "Тригер уже використовується.",
|
|
50
52
|
"Trigger": "Тригер",
|
|
51
53
|
"Users for this Group, seperate with": "Користувачі для цієї групи, окремо від",
|
|
52
54
|
"Users from Telegram": "Користувачі з Telegram",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"Add new User": "添加新用户",
|
|
15
15
|
"Add new Username": "添加新用户名",
|
|
16
16
|
"All User from Telegram, seperate with": "来自 Telegram 的所有用户,与",
|
|
17
|
+
"At least one user must be checked, or the menu must be deactivated.": "必须至少检查一名用户,否则必须停用菜单。",
|
|
17
18
|
"Call": "称呼",
|
|
18
19
|
"Call Text": "通话文字",
|
|
19
20
|
"Cancel": "取消",
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"Startside": "起跑线",
|
|
48
49
|
"Switch": "转变",
|
|
49
50
|
"Text will be send if no entry was found!": "如果没有找到条目,将发送文本!",
|
|
51
|
+
"The trigger is allready in use.": "触发器已准备好使用。",
|
|
50
52
|
"Trigger": "扳机",
|
|
51
53
|
"Users for this Group, seperate with": "该组的用户,与",
|
|
52
54
|
"Users from Telegram": "来自 Telegram 的用户",
|
package/admin/index_m.html
CHANGED
|
@@ -11,8 +11,6 @@
|
|
|
11
11
|
<script type="text/javascript" src="./js/main.js"></script>
|
|
12
12
|
<script type="text/javascript" src="./js/component.js"></script>
|
|
13
13
|
<script type="text/javascript" src="./js/emit.js"></script>
|
|
14
|
-
|
|
15
|
-
|
|
16
14
|
<script type="text/javascript" src="../../js/translate.js"></script>
|
|
17
15
|
<script type="text/javascript" src="../../lib/js/materialize.js"></script>
|
|
18
16
|
<script type="text/javascript" src="../../js/adapter-settings.js"></script>
|
|
@@ -25,7 +23,6 @@
|
|
|
25
23
|
<script type="text/javascript" src="../../lib/js/jquery.fancytree-all.min.js"></script>
|
|
26
24
|
<script type="text/javascript" src="../../lib/js/selectID.js"></script>
|
|
27
25
|
|
|
28
|
-
<!-- Load our own files -->
|
|
29
26
|
<link rel="stylesheet" type="text/css" href="./css/style.css" />
|
|
30
27
|
<link rel="stylesheet" type="text/css" href="./css/color.css" />
|
|
31
28
|
<link rel="stylesheet" type="text/css" href="./css/scrolling.css" />
|
|
@@ -119,6 +116,7 @@
|
|
|
119
116
|
obj.checkbox[$this.attr('id')] = $this.prop('checked')
|
|
120
117
|
};
|
|
121
118
|
})
|
|
119
|
+
if (!isUserChecked(activeMenu)) return
|
|
122
120
|
usersInMenus = {}
|
|
123
121
|
usersInMenus = getUserInMenus()
|
|
124
122
|
obj.usersInGroup = usersInMenus
|
|
@@ -144,45 +142,63 @@
|
|
|
144
142
|
|
|
145
143
|
$(function () {
|
|
146
144
|
let rowToUpdate;
|
|
145
|
+
// ----------------------------------------//
|
|
146
|
+
// Menu //
|
|
147
|
+
//-----------------------------------------//
|
|
147
148
|
|
|
148
|
-
//
|
|
149
|
-
// New User Show Button
|
|
149
|
+
// Menu-input , disable-enable Add Btn //
|
|
150
150
|
$("#groupname").keyup(function () {
|
|
151
|
-
let
|
|
152
|
-
let
|
|
153
|
-
return name.toLowerCase() ===
|
|
151
|
+
let valInputField = $(this).val()
|
|
152
|
+
let menuNameFound = menus.find(function (name) {
|
|
153
|
+
return name.toLowerCase() === valInputField.toLowerCase();
|
|
154
154
|
});
|
|
155
|
-
if (
|
|
155
|
+
if (valInputField !== "" && !menuNameFound) {
|
|
156
156
|
$("#addNewGroup").removeClass("disabled")
|
|
157
157
|
} else $("#addNewGroup").addClass("disabled")
|
|
158
158
|
})
|
|
159
|
-
// Add new
|
|
159
|
+
// Add Btn new Menu
|
|
160
160
|
$("#addNewGroup").click(() => {
|
|
161
|
-
let
|
|
162
|
-
if (menus.indexOf(
|
|
163
|
-
addNewGroup(menus,
|
|
164
|
-
activeMenu =
|
|
165
|
-
showUser(
|
|
166
|
-
|
|
167
|
-
buildUserSelection(valUserFromTelegram, [newUser], usersInMenus)
|
|
161
|
+
let newMenu = $("#groupname").val().replace(" ", "_")
|
|
162
|
+
if (menus.indexOf(newMenu) == -1) {
|
|
163
|
+
addNewGroup(menus, newMenu, _onChange)
|
|
164
|
+
activeMenu = newMenu
|
|
165
|
+
showUser(newMenu, showHideUserCheckbox)
|
|
166
|
+
buildUserSelection(valUserFromTelegram, [newMenu], usersInMenus)
|
|
168
167
|
translateAll()
|
|
169
168
|
}
|
|
170
169
|
})
|
|
171
|
-
|
|
172
|
-
$(".adapter-container").on("change", ".userSelection", function () {
|
|
173
|
-
_onChange()
|
|
174
|
-
})
|
|
175
|
-
function showHideUserCheckbox(activeGroup) {
|
|
176
|
-
$("#group_active_checkbox>div").hide()
|
|
177
|
-
$(`#group_active_checkbox div.${activeGroup}`).show()
|
|
178
|
-
}
|
|
179
|
-
// Delete User
|
|
170
|
+
// Delete Btn, open popup
|
|
180
171
|
$("#group_menu").on("click", "#deleteUser", function () {
|
|
181
172
|
$("#dialog-confirm").show()
|
|
182
173
|
})
|
|
183
|
-
//
|
|
184
|
-
$("#
|
|
174
|
+
// Edit Btn Menu
|
|
175
|
+
$("#editUser").click(function () {
|
|
176
|
+
$("#dialog-change-groupname").show()
|
|
177
|
+
$("#inputEditUser").val(activeMenu)
|
|
178
|
+
})
|
|
179
|
+
|
|
180
|
+
// ----------------------------------------//
|
|
181
|
+
// Popup Menu Liste //
|
|
182
|
+
//-----------------------------------------//
|
|
185
183
|
|
|
184
|
+
// Click Menu, Show Menu Navigation or Action
|
|
185
|
+
$("#group_list").on("click", ".click_user", function () {
|
|
186
|
+
activeMenu = $(this).attr("name")
|
|
187
|
+
$("#btn-nav").attr("href", `#tab-nav-user-${activeMenu}`)
|
|
188
|
+
$("#btn_action").attr("href", `#tab-todo-user-${activeMenu}`)
|
|
189
|
+
$("adapter-container").load(`#tab-nav-user-${activeMenu}`)
|
|
190
|
+
showUser(activeMenu, showHideUserCheckbox)
|
|
191
|
+
// Menu active Button show
|
|
192
|
+
showHideUserCheckbox(activeMenu)
|
|
193
|
+
generateSelectTrigger(activeMenu)
|
|
194
|
+
})
|
|
195
|
+
|
|
196
|
+
// ----------------------------------------//
|
|
197
|
+
// Popup Confirm Delete Menu //
|
|
198
|
+
//-----------------------------------------//
|
|
199
|
+
|
|
200
|
+
// Confirm Dialog Btn OK
|
|
201
|
+
$("#dialog-confirm a.btn-set").on("click", function () {
|
|
186
202
|
menus.splice(menus.indexOf(activeMenu), 1)
|
|
187
203
|
$("#group_list .active").parent().remove()
|
|
188
204
|
$(`#tab-nav tbody[name="${activeMenu}"]`).remove()
|
|
@@ -197,29 +213,18 @@
|
|
|
197
213
|
activeMenu = menus[0]
|
|
198
214
|
showUser(activeMenu, showHideUserCheckbox)
|
|
199
215
|
} else menuToSpan("No User");
|
|
200
|
-
|
|
201
216
|
_onChange()
|
|
202
217
|
$("#dialog-confirm").hide()
|
|
203
218
|
})
|
|
219
|
+
// Confirm Dialog Btn Abort
|
|
204
220
|
$("#dialog-confirm a.btn-close").on("click", function () {
|
|
205
221
|
$("#dialog-confirm").hide()
|
|
206
222
|
})
|
|
207
|
-
//
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
showUser(activeMenu, showHideUserCheckbox)
|
|
212
|
-
// User active Button zeigen
|
|
213
|
-
showHideUserCheckbox(activeMenu)
|
|
214
|
-
generateSelectTrigger(activeMenu)
|
|
215
|
-
})
|
|
223
|
+
// ----------------------------------------//
|
|
224
|
+
// Popup Edit Menu //
|
|
225
|
+
//-----------------------------------------//
|
|
216
226
|
|
|
217
|
-
//
|
|
218
|
-
$("#editUser").click(function () {
|
|
219
|
-
$("#dialog-change-groupname").show()
|
|
220
|
-
$("#inputEditUser").val(activeMenu)
|
|
221
|
-
})
|
|
222
|
-
// Check Group doesn´t exist
|
|
227
|
+
// Check Menu doesn´t exist
|
|
223
228
|
$("#inputEditUser").keyup(function () {
|
|
224
229
|
let gefundenerName = menus.find(function (name) {
|
|
225
230
|
return name.toLowerCase() === $("#inputEditUser").val().toLowerCase();
|
|
@@ -227,9 +232,9 @@
|
|
|
227
232
|
if (gefundenerName) $("#dialog-change-groupname .btn-set").attr("disabled", "disabled")
|
|
228
233
|
else $("#dialog-change-groupname .btn-set").removeAttr("disabled")
|
|
229
234
|
})
|
|
230
|
-
// Save Edit
|
|
235
|
+
// Save Edit Menu
|
|
231
236
|
$("#dialog-change-groupname .btn-set").click(function () {
|
|
232
|
-
//
|
|
237
|
+
// ActiveMenu aus der User List enfernen und die Änderung hinzufügen
|
|
233
238
|
menus = menus.filter(function (element) {
|
|
234
239
|
return element != activeMenu
|
|
235
240
|
})
|
|
@@ -253,36 +258,63 @@
|
|
|
253
258
|
$("#dialog-change-groupname").hide()
|
|
254
259
|
})
|
|
255
260
|
|
|
261
|
+
// ----------------------------------------//
|
|
262
|
+
// Navigation //
|
|
263
|
+
//-----------------------------------------//
|
|
256
264
|
|
|
257
|
-
// Navigation -----------------------------------------------------------------------------------
|
|
258
265
|
// Click Nav Buttons
|
|
259
266
|
let activeBtn = "nav"
|
|
260
267
|
$("header ul").on("click", ".btn_nav", function () {
|
|
268
|
+
if (!isUserChecked(activeMenu)) return
|
|
261
269
|
activeBtn = $(this).attr("name")
|
|
262
270
|
if (activeBtn === "nav") {
|
|
263
271
|
$("#btn_add_action").hide()
|
|
264
272
|
$(".group_menu").show()
|
|
273
|
+
$("#tab-nav").css("display", "block")
|
|
274
|
+
$("#tab-action").hide()
|
|
275
|
+
$("#tab-settings").hide()
|
|
265
276
|
} else if (activeBtn === "action") {
|
|
266
277
|
$("#btn_add_action").show()
|
|
267
278
|
$(".group_menu").show()
|
|
279
|
+
$("#tab-action").css("display", "block")
|
|
280
|
+
$("#tab-nav").hide()
|
|
281
|
+
$("#tab-settings").hide()
|
|
268
282
|
generateSelectTrigger(activeMenu)
|
|
269
283
|
}
|
|
270
284
|
else {
|
|
271
285
|
$("#btn_add_action").hide()
|
|
272
286
|
$(".group_menu").hide()
|
|
287
|
+
$("#tab-nav").hide()
|
|
288
|
+
$("#tab-action").hide()
|
|
289
|
+
$("#tab-settings").css("display", "block")
|
|
273
290
|
}
|
|
274
291
|
translateAll()
|
|
275
292
|
})
|
|
276
|
-
//
|
|
293
|
+
// Btns new Row in Navigation
|
|
277
294
|
$(".adapter-container").on("click", ".btn_add_row", function () {
|
|
278
295
|
$(this).parent().parent().after(newTableRow_Nav(activeMenu, menus))
|
|
279
296
|
checkUpAndDownArrowBtn(activeMenu)
|
|
280
297
|
})
|
|
281
298
|
|
|
299
|
+
// Button Row up
|
|
300
|
+
$(".adapter-container").on("click", ".btn_up", function () {
|
|
301
|
+
$(this).parent().parent().insertBefore($(this).parent().parent().prev())
|
|
302
|
+
checkUpAndDownArrowBtn(activeMenu)
|
|
303
|
+
_onChange()
|
|
304
|
+
})
|
|
305
|
+
// Btn Row down
|
|
306
|
+
$(".adapter-container").on("click", ".btn_down", function (key) {
|
|
307
|
+
console.log("klick")
|
|
308
|
+
$(this).parent().parent().insertAfter($(this).parent().parent().next())
|
|
309
|
+
checkUpAndDownArrowBtn(activeMenu)
|
|
310
|
+
_onChange()
|
|
311
|
+
})
|
|
282
312
|
|
|
283
|
-
//
|
|
284
|
-
//
|
|
313
|
+
// ----------------------------------------//
|
|
314
|
+
// Action //
|
|
315
|
+
//-----------------------------------------//
|
|
285
316
|
|
|
317
|
+
// Add Button in Action opens Action Popup
|
|
286
318
|
$("#btn_add_action").click(function () {
|
|
287
319
|
rowToUpdate = null
|
|
288
320
|
translateAll()
|
|
@@ -295,15 +327,10 @@
|
|
|
295
327
|
generateNav()
|
|
296
328
|
})
|
|
297
329
|
|
|
330
|
+
// ----------------------------------------//
|
|
331
|
+
// Change Events //
|
|
332
|
+
//-----------------------------------------//
|
|
298
333
|
|
|
299
|
-
// Change Events --------------------------------------------------------------------------------------
|
|
300
|
-
// Eventhandler for save change
|
|
301
|
-
$("#group_list").on("click", ".click-user", function () {
|
|
302
|
-
activeMenu = $(this).attr("name")
|
|
303
|
-
$("#btn-nav").attr("href", `#tab-nav-user-${activeMenu}`)
|
|
304
|
-
$("#btn_action").attr("href", `#tab-todo-user-${activeMenu}`)
|
|
305
|
-
$("adapter-container").load(`#tab-nav-user-${activeMenu}`)
|
|
306
|
-
})
|
|
307
334
|
// update
|
|
308
335
|
$("#navigation").change(".value", function () {
|
|
309
336
|
_onChange()
|
|
@@ -314,9 +341,21 @@
|
|
|
314
341
|
$("#group_UserInput").on("keyup", "input", function () {
|
|
315
342
|
_onChange()
|
|
316
343
|
})
|
|
344
|
+
$(".adapter-container").on("change", ".userSelection", function () {
|
|
345
|
+
_onChange()
|
|
346
|
+
})
|
|
347
|
+
$("#select_instance").on('change', function () {
|
|
348
|
+
_onChange()
|
|
349
|
+
})
|
|
350
|
+
// Active User clicken und Speichern sichtbar machen
|
|
351
|
+
$("#group_active_checkbox").on("change", "input", function () {
|
|
352
|
+
_onChange()
|
|
353
|
+
})
|
|
317
354
|
|
|
355
|
+
// ----------------------------------------//
|
|
356
|
+
// Dialog get ID Iobroker //
|
|
357
|
+
//-----------------------------------------//
|
|
318
358
|
|
|
319
|
-
//Dialog get ID Iobroker ------------------------------------------------------------------------------
|
|
320
359
|
$(".adapter-container").on("click", ".btn_getID", function () {
|
|
321
360
|
let $element = $(this).parent().prev().children("input")
|
|
322
361
|
showSelectIdDialog($element.val(), function (newID) {
|
|
@@ -324,8 +363,10 @@
|
|
|
324
363
|
})
|
|
325
364
|
});
|
|
326
365
|
|
|
327
|
-
//
|
|
328
|
-
//Modal
|
|
366
|
+
// ----------------------------------------//
|
|
367
|
+
// Modal //
|
|
368
|
+
//-----------------------------------------//
|
|
369
|
+
|
|
329
370
|
$('.modal').modal()
|
|
330
371
|
// Tables in Action Verstecken und Button new Row
|
|
331
372
|
$(".modal-content table").hide()
|
|
@@ -336,15 +377,14 @@
|
|
|
336
377
|
resetModal()
|
|
337
378
|
})
|
|
338
379
|
|
|
380
|
+
// ----------------------------------------//
|
|
381
|
+
// Telegram Instances in Select Input //
|
|
382
|
+
//-----------------------------------------//
|
|
339
383
|
|
|
340
|
-
|
|
341
|
-
// Telegram Instances in Select -----------------------------------------------------------------------
|
|
342
384
|
// Select Instance
|
|
343
385
|
getAllTelegramInstances(socket, this)
|
|
344
386
|
$("#select_instance").val(telegramInstance).select();
|
|
345
|
-
|
|
346
|
-
_onChange()
|
|
347
|
-
})
|
|
387
|
+
|
|
348
388
|
// Select Inizializieren
|
|
349
389
|
$("select").select();
|
|
350
390
|
|
|
@@ -356,22 +396,51 @@
|
|
|
356
396
|
$(`#tab_${$(this).val()}`).show()
|
|
357
397
|
})
|
|
358
398
|
|
|
359
|
-
//
|
|
399
|
+
// ----------------------------------------//
|
|
400
|
+
// Action Popup //
|
|
401
|
+
//-----------------------------------------//
|
|
402
|
+
|
|
360
403
|
// New Row in Action
|
|
361
404
|
$("#btn_action_newRow").on("click", function () {
|
|
362
405
|
const rows = $("#tab_pic tbody tr").length
|
|
363
406
|
$(`#tab_${$("#select_action").val()} tbody`).append(newTrInAction($("#select_action").val(), undefined, rows))
|
|
364
407
|
$("#btn_action_set").attr("disabled", "disabled")
|
|
365
408
|
})
|
|
409
|
+
// Edit entrys
|
|
410
|
+
$(".adapter-container").on("click", ".editEntry", function () {
|
|
411
|
+
rowToUpdate = $(this).parents("tr")
|
|
412
|
+
showTrigger = true;
|
|
413
|
+
// Select_action deaktivieren
|
|
414
|
+
$("#select_action").attr("disabled", "disabled")
|
|
415
|
+
// Select Button Aktivieren
|
|
416
|
+
$("#btn_action_set").removeAttr("disabled")
|
|
417
|
+
$("#btn_action_newRow").show()
|
|
418
|
+
let action = $(this).parents("tbody").attr("data-name")
|
|
419
|
+
$("#select_action").val(action).select()
|
|
420
|
+
$(`#tab_${action}`).show()
|
|
421
|
+
// Trigger
|
|
422
|
+
$("#select_trigger").val($(this).parent().siblings("[data-name='trigger']").html()).select()
|
|
423
|
+
insertEditValues(action, this)
|
|
424
|
+
disableValueInput()
|
|
425
|
+
})
|
|
426
|
+
// Value deaktivieren wenn Switch checked
|
|
427
|
+
$(".modal-content").on("change", ".switch_checkbox", function () {
|
|
428
|
+
disableValueInput()
|
|
429
|
+
})
|
|
430
|
+
|
|
431
|
+
// ----------------------------------------//
|
|
432
|
+
// Settings //
|
|
433
|
+
//-----------------------------------------//
|
|
366
434
|
|
|
367
|
-
// Settings--------------------------------------------------------------------
|
|
368
435
|
$("#tab-settings").on("change", "#checkboxNoValueFound", function () {
|
|
369
436
|
disableEnableInputField("#checkboxNoValueFound", "#textNoEntry")
|
|
370
|
-
|
|
371
437
|
})
|
|
372
438
|
|
|
373
|
-
//
|
|
374
|
-
// Global
|
|
439
|
+
// ----------------------------------------//
|
|
440
|
+
// Global //
|
|
441
|
+
//-----------------------------------------//
|
|
442
|
+
|
|
443
|
+
// Disable delete Button in Tables
|
|
375
444
|
$("div.adapter-container").on("click", "a.deleteRow", function () {
|
|
376
445
|
if ($(this).children("tr").length > 1) {
|
|
377
446
|
$(this).find($("a.deleteRow")).removeAttr("disabled")
|
|
@@ -385,6 +454,18 @@
|
|
|
385
454
|
$(this).find("i").html("chevron_right")
|
|
386
455
|
} else $(this).find("i").html("expand_more")
|
|
387
456
|
})
|
|
457
|
+
|
|
458
|
+
// Inputs if its not ""
|
|
459
|
+
$(".modal-content").on("input ", function () {
|
|
460
|
+
checkValueModal(showTrigger)
|
|
461
|
+
})
|
|
462
|
+
$(".modal-content").on("change", "#tab_set input.switch_checkbox", function () {
|
|
463
|
+
checkValueModal(showTrigger)
|
|
464
|
+
})
|
|
465
|
+
|
|
466
|
+
// ----------------------------------------//
|
|
467
|
+
// Save //
|
|
468
|
+
//-----------------------------------------//
|
|
388
469
|
// Save from Action Input Field
|
|
389
470
|
//SECTION - Save 1
|
|
390
471
|
$("#btn_action_set").on("click", function () {
|
|
@@ -458,59 +539,17 @@
|
|
|
458
539
|
if ($(this).val() == null) showTrigger = false
|
|
459
540
|
showSelectModal(showTrigger, true)
|
|
460
541
|
})
|
|
461
|
-
// Inputs if its not ""
|
|
462
|
-
$(".modal-content").on("input ", function () {
|
|
463
|
-
checkValueModal(showTrigger)
|
|
464
|
-
})
|
|
465
|
-
$(".modal-content").on("change", "#tab_set input.switch_checkbox", function () {
|
|
466
|
-
checkValueModal(showTrigger)
|
|
467
|
-
})
|
|
468
|
-
|
|
469
|
-
// Edit entrys
|
|
470
|
-
$(".adapter-container").on("click", ".editEntry", function () {
|
|
471
|
-
rowToUpdate = $(this).parents("tr")
|
|
472
|
-
showTrigger = true;
|
|
473
|
-
// Select_action deaktivieren
|
|
474
|
-
$("#select_action").attr("disabled", "disabled")
|
|
475
|
-
// Select Button Aktivieren
|
|
476
|
-
$("#btn_action_set").removeAttr("disabled")
|
|
477
|
-
$("#btn_action_newRow").show()
|
|
478
|
-
let action = $(this).parents("tbody").attr("data-name")
|
|
479
|
-
$("#select_action").val(action).select()
|
|
480
|
-
$(`#tab_${action}`).show()
|
|
481
|
-
// Trigger
|
|
482
|
-
$("#select_trigger").val($(this).parent().siblings("[data-name='trigger']").html()).select()
|
|
483
|
-
insertEditValues(action, this)
|
|
484
|
-
disableValueInput()
|
|
485
|
-
})
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
// Value deaktivieren wenn Switch checked
|
|
489
|
-
$(".modal-content").on("change", ".switch_checkbox", function () {
|
|
490
|
-
disableValueInput()
|
|
491
542
|
|
|
492
|
-
|
|
493
|
-
//
|
|
494
|
-
|
|
495
|
-
_onChange()
|
|
496
|
-
})
|
|
497
|
-
// Button Row up and down
|
|
498
|
-
$(".adapter-container").on("click", ".btn_up", function () {
|
|
499
|
-
$(this).parent().parent().insertBefore($(this).parent().parent().prev())
|
|
500
|
-
checkUpAndDownArrowBtn(activeMenu)
|
|
501
|
-
_onChange()
|
|
502
|
-
})
|
|
503
|
-
$(".adapter-container").on("click", ".btn_down", function (key) {
|
|
504
|
-
console.log("klick")
|
|
505
|
-
$(this).parent().parent().insertAfter($(this).parent().parent().next())
|
|
506
|
-
checkUpAndDownArrowBtn(activeMenu)
|
|
507
|
-
_onChange()
|
|
508
|
-
})
|
|
543
|
+
// ----------------------------------------//
|
|
544
|
+
// Copy Data Popup //
|
|
545
|
+
//-----------------------------------------//
|
|
509
546
|
|
|
510
|
-
//
|
|
547
|
+
// Open Popup
|
|
511
548
|
$("#btn_copy_nav").click(function () {
|
|
512
549
|
$("#dialog-copy-data").show()
|
|
513
550
|
})
|
|
551
|
+
|
|
552
|
+
// Select choose
|
|
514
553
|
$("#select-copy-data").on("change", function () {
|
|
515
554
|
$("#copyData").empty()
|
|
516
555
|
if ($(this).val() == "nav") {
|
|
@@ -557,19 +596,18 @@
|
|
|
557
596
|
$(`#tab-action tbody[name="${activeMenu}"][data-name="${action}"]`).append(rowToCopy)
|
|
558
597
|
}
|
|
559
598
|
})
|
|
560
|
-
|
|
599
|
+
// Close Copy Data Popup
|
|
561
600
|
$("#dialog-copy-data .btn-close").click(function () {
|
|
562
601
|
resetSelect()
|
|
563
602
|
_onChange()
|
|
564
603
|
})
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
}
|
|
604
|
+
// ----------------------------------------//
|
|
605
|
+
// Menu Navigation //
|
|
606
|
+
//-----------------------------------------//
|
|
607
|
+
|
|
570
608
|
// Menu Popup
|
|
571
609
|
$("#btn_expand").on("click", function () {
|
|
572
|
-
$("#group_list").toggleClass("
|
|
610
|
+
$("#group_list").toggleClass("hide")
|
|
573
611
|
})
|
|
574
612
|
let var1, var2
|
|
575
613
|
$("#btn_expand").on("mouseover", function () {
|
|
@@ -611,13 +649,13 @@
|
|
|
611
649
|
<div class="col s12">
|
|
612
650
|
<ul class="tabs bg--header">
|
|
613
651
|
<li class="tab col s3 "><a class="active btn_nav translate" name="nav" id="btn-nav"
|
|
614
|
-
href="#
|
|
652
|
+
href="#">Navigation</a>
|
|
615
653
|
</li>
|
|
616
654
|
<li class="tab col s3"><a class="btn_nav translate" name="action" id="btn_action"
|
|
617
|
-
href="#
|
|
655
|
+
href="#">Action</a>
|
|
618
656
|
</li>
|
|
619
657
|
<li class="tab col s3"><a class="btn_nav translate" name="set" id="btn_settings"
|
|
620
|
-
href="#
|
|
658
|
+
href="#">Settings</a>
|
|
621
659
|
</li>
|
|
622
660
|
</ul>
|
|
623
661
|
</div>
|
|
@@ -773,7 +811,7 @@
|
|
|
773
811
|
<br><span class="translate">Active Menu:</span><br><span class="border"
|
|
774
812
|
id="activMenuOutput"></span>
|
|
775
813
|
</p>
|
|
776
|
-
<ul id="group_list" class="
|
|
814
|
+
<ul id="group_list" class="hide">
|
|
777
815
|
</ul>
|
|
778
816
|
</div>
|
|
779
817
|
<div class="col s10 m8 l8 border">
|
|
@@ -795,6 +833,16 @@
|
|
|
795
833
|
</div>
|
|
796
834
|
</div>
|
|
797
835
|
</div>
|
|
836
|
+
<div class="row">
|
|
837
|
+
<div id="userSelection" class="col s8 offset-s2 border hide">
|
|
838
|
+
<p class="translate warning">At least one user must be checked, or the menu must be deactivated.</p>
|
|
839
|
+
</div>
|
|
840
|
+
</div>
|
|
841
|
+
<div class="row">
|
|
842
|
+
<div id="triggerAllreadyInUser" class="col s8 offset-s2 border hide">
|
|
843
|
+
<p class="translate warning">The trigger is allready in use.</p>
|
|
844
|
+
</div>
|
|
845
|
+
</div>
|
|
798
846
|
<div class="row group_menu">
|
|
799
847
|
<div class="col s4 m2 l2">
|
|
800
848
|
<a class="waves-effect waves-light btn-large green translateT modal-trigger" id="btn_add_action"
|
|
@@ -814,7 +862,7 @@
|
|
|
814
862
|
</div>
|
|
815
863
|
</header>
|
|
816
864
|
<!-- //SECTION - Navigation -->
|
|
817
|
-
<div id="tab-nav" class="resizeFull">
|
|
865
|
+
<div id="tab-nav" class="resizeFull" style="display: block;">
|
|
818
866
|
<div class="row">
|
|
819
867
|
<div class="col s12 table_wrapper ">
|
|
820
868
|
<div class="table-values-div saveTable nav" id="navigation">
|
|
@@ -839,9 +887,9 @@
|
|
|
839
887
|
</div>
|
|
840
888
|
</div>
|
|
841
889
|
</div>
|
|
842
|
-
<div id="tab-action" class="resizeFull"></div>
|
|
890
|
+
<div id="tab-action" class="resizeFull" style="display: none;"></div>
|
|
843
891
|
<!-- //SECTION - Settings -->
|
|
844
|
-
<div id="tab-settings">
|
|
892
|
+
<div id="tab-settings" style="display: none;">
|
|
845
893
|
<div class=" row">
|
|
846
894
|
<div class="col s12">
|
|
847
895
|
<h1 class="translate">Settings</h1>
|
package/admin/js/main.js
CHANGED
|
@@ -1,6 +1,28 @@
|
|
|
1
1
|
/*global newUserBtn,getUsersFromTelegram ,navElement, userSelectionTelegram ,actionElement,createSelectTrigger,newTableRow_Action,newTableRow_Action,newTrInAction,userActivCheckbox,$, groupUserInput*/
|
|
2
2
|
/*eslint no-unused-vars: ["error", { "varsIgnorePattern": "disableEnableInputField|isStringEmty|generate|create|set|fill|reset|add|show|ins|table|get|new|show|checkValueModal|disable|checkUpAndDownArrowBtn|"}]*/
|
|
3
|
+
function isUserChecked(activeMenu) {
|
|
4
|
+
let checked = false;
|
|
5
|
+
$(`#group_UserInput div[data-menu="${activeMenu}"] input`).each(function () {
|
|
6
|
+
if ($(this).prop("checked")) checked = true;
|
|
7
|
+
});
|
|
8
|
+
if (!$(`#group_active_checkbox div.${activeMenu} input`).prop("checked") || checked) {
|
|
9
|
+
$("#userSelection").addClass("hide");
|
|
10
|
+
return true;
|
|
11
|
+
} else {
|
|
12
|
+
$("#userSelection").removeClass("hide");
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
3
16
|
|
|
17
|
+
function resetSelect() {
|
|
18
|
+
$("#copyData").empty();
|
|
19
|
+
$("#select-copy-data").val("").select();
|
|
20
|
+
$("#dialog-copy-data").hide();
|
|
21
|
+
}
|
|
22
|
+
function showHideUserCheckbox(activeGroup) {
|
|
23
|
+
$("#group_active_checkbox>div").hide();
|
|
24
|
+
$(`#group_active_checkbox div.${activeGroup}`).show();
|
|
25
|
+
}
|
|
4
26
|
function getUserInMenus() {
|
|
5
27
|
const usersInMenus = {};
|
|
6
28
|
$("#group_UserInput input[type='checkbox']").each(function () {
|
package/admin/words.js
CHANGED
|
@@ -11,6 +11,7 @@ systemDictionary = {
|
|
|
11
11
|
" No entry, send to all Users.": { "en": " No entry, send to all Users.", "de": "Kein Eintrag, an alle Benutzer senden.", "ru": "Нет записи, отправить всем пользователям.", "pt": "Sem entrada, envie para todos os usuários.", "nl": "Geen invoer, verzenden naar alle gebruikers.", "fr": "Aucune entrée, envoyer à tous les utilisateurs.", "it": "Nessuna voce, invia a tutti gli utenti.", "es": "Sin entrada, enviar a todos los usuarios.", "pl": "Brak wpisu, wyślij do wszystkich Użytkowników.", "uk": "Заборонено, відправити всім користувачам.", "zh-cn": "没有条目,发送给所有用户。"},
|
|
12
12
|
"Action": { "en": "Action", "de": "Aktion", "ru": "Действие", "pt": "Ação", "nl": "Actie", "fr": "Action", "it": "Azione", "es": "Acción", "pl": "Działanie", "uk": "Дія", "zh-cn": "行动"},
|
|
13
13
|
"Active": { "en": "Active", "de": "Aktiv", "ru": "Активный", "pt": "Ativo", "nl": "Actief", "fr": "Actif", "it": "Attivo", "es": "Activo", "pl": "Aktywny", "uk": "Активний", "zh-cn": "积极的"},
|
|
14
|
+
"Active Menu:": { "en": "Active Menu:", "de": "Aktives Menü:", "ru": "Активное меню:", "pt": "Menu ativo:", "nl": "Actief menu:", "fr": "Menu Actif :", "it": "Menù attivo:", "es": "Menú Activo:", "pl": "aktywne menu:", "uk": "Активне меню:", "zh-cn": "活动菜单:"},
|
|
14
15
|
"Add": { "en": "add", "de": "hinzufügen", "ru": "добавлять", "pt": "adicionar", "nl": "toevoegen", "fr": "ajouter", "it": "aggiungere", "es": "agregar", "pl": "dodać", "uk": "додати", "zh-cn": "添加"},
|
|
15
16
|
"Add && as a placeholder for the value in the text": {"en": "Add && as a placeholder for the value in the text", "de": "Fügen Sie && als Platzhalter für den Wert im Text hinzu", "ru": "Добавьте && в качестве заполнителя для значения в тексте", "pt": "Adicionar && como espaço reservado para o valor no texto", "nl": "Voeg && toe als tijdelijke aanduiding voor de waarde in de tekst", "fr": "Ajouter && comme espace réservé pour la valeur dans le texte", "it": "Aggiungi && come segnaposto per il valore nel testo", "es": "Agregue && como marcador de posición para el valor en el texto", "pl": "Dodaj && jako symbol zastępczy wartości w tekście", "uk": "Додайте && як заповнювач для значення в тексті", "zh-cn": "添加 && 作为文本中值的占位符"},
|
|
16
17
|
"Add && as a placeholder for the value in the text": {"en": "Add && as a placeholder for the value in the text", "de": "Fügen Sie && als Platzhalter für den Wert im Text hinzu", "ru": "Добавьте && в качестве заполнителя для значения в тексте", "pt": "Adicionar && como espaço reservado para o valor no texto", "nl": "Voeg && toe als tijdelijke aanduiding voor de waarde in de tekst", "fr": "Ajouter && comme espace réservé pour la valeur dans le texte", "it": "Aggiungi && come segnaposto per il valore nel testo", "es": "Agregue && como marcador de posición para el valor en el texto", "pl": "Dodaj && jako symbol zastępczy wartości w tekście", "uk": "Додайте && як заповнювач для значення в тексті", "zh-cn": "添加 && 作为文本中值的占位符"},
|
|
@@ -57,10 +58,11 @@ systemDictionary = {
|
|
|
57
58
|
"Text will be send if no entry was found!": { "en": "Text will be send if no entry was found!", "de": "Text wird gesendet, wenn kein Eintrag gefunden wurde!", "ru": "Текст будет отправлен, если запись не найдена!", "pt": "O texto será enviado se nenhuma entrada for encontrada!", "nl": "Er wordt een tekst verzonden als er geen item is gevonden!", "fr": "Le texte sera envoyé si aucune entrée n'a été trouvée !", "it": "Il testo verrà inviato se non è stata trovata alcuna voce!", "es": "¡Se enviará texto si no se encontró ninguna entrada!", "pl": "Tekst zostanie wysłany, jeśli nie znaleziono żadnego wpisu!", "uk": "Текст буде надіслано, якщо запис не знайдено!", "zh-cn": "如果没有找到条目,将发送文本!"},
|
|
58
59
|
"Trigger": { "en": "Trigger", "de": "Auslöser", "ru": "Курок", "pt": "Acionar", "nl": "Trekker", "fr": "Déclencher", "it": "Grilletto", "es": "Desencadenar", "pl": "Spust", "uk": "Тригер", "zh-cn": "扳机"},
|
|
59
60
|
"Users for this Group, seperate with": { "en": "Users for this Group, seperate with", "de": "Benutzer für diese Gruppe, trennen Sie mit", "ru": "Пользователи для этой группы, отдельно с", "pt": "Usuários deste Grupo, separados por", "nl": "Gebruikers voor deze groep, scheid met", "fr": "Utilisateurs pour ce groupe, séparés par", "it": "Utenti per questo gruppo, separati da", "es": "Usuarios para este Grupo, separe con", "pl": "Użytkownicy dla tej grupy, oddzielni od", "uk": "Користувачі для цієї групи, окремо від", "zh-cn": "该组的用户,与"},
|
|
61
|
+
"Users from Telegram": { "en": "Users from Telegram", "de": "Benutzer von Telegram", "ru": "Пользователи из Telegram", "pt": "Usuários do Telegram", "nl": "Gebruikers van Telegram", "fr": "Utilisateurs de Telegram", "it": "Utenti di Telegram", "es": "Usuarios de Telegram", "pl": "Użytkownicy Telegrama", "uk": "Користувачі з Telegram", "zh-cn": "来自 Telegram 的用户"},
|
|
60
62
|
"Value": { "en": "Value", "de": "Wert", "ru": "Ценить", "pt": "Valor", "nl": "Waarde", "fr": "Valeur", "it": "Valore", "es": "Valor", "pl": "Wartość", "uk": "Значення", "zh-cn": "价值"},
|
|
61
63
|
"What is to do?": { "en": "What is to do?", "de": "Was ist zu tun?", "ru": "Что делать?", "pt": "O que fazer?", "nl": "Wat is er te doen?", "fr": "Que faire ?", "it": "Cosa fare?", "es": "¿Qué hay que hacer?", "pl": "Co robić?", "uk": "Що робити?", "zh-cn": "怎么办?"},
|
|
62
64
|
"active": { "en": "active", "de": "aktiv", "ru": "активный", "pt": "ativo", "nl": "actief", "fr": "actif", "it": "attivo", "es": "activo", "pl": "aktywny", "uk": "активний", "zh-cn": "积极的"},
|
|
63
65
|
"telegram-menu adapter settings": { "en": "Adapter settings for telegram-menu", "de": "Adaptereinstellungen für Telegram-Menü", "ru": "Настройки адаптера для телеграм-меню", "pt": "Configurações do adaptador para menu de telegrama", "nl": "Adapterinstellingen voor telegrammenu", "fr": "Paramètres de l'adaptateur pour le menu télégramme", "it": "Impostazioni dell'adattatore per il menu del telegramma", "es": "Configuración del adaptador para el menú de telegramas", "pl": "Ustawienia adaptera dla menu telegramu", "uk": "Налаштування адаптера для telegram-меню", "zh-cn": "电报菜单的适配器设置"},
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
+
"At least one user must be checked, or the menu must be deactivated.": {"en": "At least one user must be checked, or the menu must be deactivated.", "de": "Mindestens ein Benutzer muss aktiviert sein oder das Menü muss deaktiviert sein.", "ru": "Должен быть отмечен хотя бы один пользователь, или меню должно быть деактивировано.", "pt": "Pelo menos um usuário deve ser verificado ou o menu deve ser desativado.", "nl": "Er moet minimaal één gebruiker zijn aangevinkt, of het menu moet zijn gedeactiveerd.", "fr": "Au moins un utilisateur doit être coché ou le menu doit être désactivé.", "it": "Almeno un utente deve essere selezionato o il menu deve essere disattivato.", "es": "Se debe marcar al menos un usuario o se debe desactivar el menú.", "pl": "Należy zaznaczyć przynajmniej jednego użytkownika lub dezaktywować menu.", "uk": "Принаймні один користувач повинен бути відмічений, або меню має бути дезактивовано.", "zh-cn": "必须至少检查一名用户,否则必须停用菜单。"},
|
|
67
|
+
"The trigger is allready in use.": { "en": "The trigger is allready in use.", "de": "Der Auslöser ist bereits im Einsatz.", "ru": "Триггер уже используется.", "pt": "O gatilho já está em uso.", "nl": "De trigger is al in gebruik.", "fr": "Le déclencheur est déjà utilisé.", "it": "Il grilletto è già in uso.", "es": "El gatillo ya está en uso.", "pl": "Spust jest już w użyciu.", "uk": "Тригер уже використовується.", "zh-cn": "触发器已准备好使用。"},
|
|
66
68
|
};
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "telegram-menu",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.3",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.6.3": {
|
|
7
|
+
"en": "user check, least one user must be checked",
|
|
8
|
+
"de": "benutzerüberprüfung, mindestens ein benutzer muss überprüft werden",
|
|
9
|
+
"ru": "проверка пользователя, хотя бы один пользователь должен быть проверен",
|
|
10
|
+
"pt": "verificação do usuário, pelo menos um usuário deve ser verificado",
|
|
11
|
+
"nl": "eén gebruiker moet gecontroleerd worden",
|
|
12
|
+
"fr": "contrôle utilisateur, le moins d'un utilisateur doit être vérifié",
|
|
13
|
+
"it": "controllo utente, almeno un utente deve essere controllato",
|
|
14
|
+
"es": "control de usuario, al menos un usuario debe ser revisado",
|
|
15
|
+
"pl": "wskaźnik użytkownika musi być sprawdzany przynajmniej jeden użytkownik",
|
|
16
|
+
"uk": "перевірка користувачів, принаймні один користувач повинен перевіряти",
|
|
17
|
+
"zh-cn": "用户检查,至少必须检查一名用户。"
|
|
18
|
+
},
|
|
6
19
|
"0.6.2": {
|
|
7
20
|
"en": "Active Menu Output fixed\nchange instance, user will be load from new instance",
|
|
8
21
|
"de": "Aktive Menüausgabe fest\nänderungsinstanz, benutzer wird aus neuer instanz geladen",
|
|
@@ -80,19 +93,6 @@
|
|
|
80
93
|
"pl": "menu przełącza ersetzt menu yes-no, on-off, jest możliwe do dostosowania tekstu i wartości z tymi menu",
|
|
81
94
|
"uk": "меню переключення ersetzt меню так-но, on-off, можна налаштувати текст та значення з цим меню",
|
|
82
95
|
"zh-cn": "男性转化的男性是双赢的,有可能使文本和价值与这一男人定制。"
|
|
83
|
-
},
|
|
84
|
-
"0.4.1": {
|
|
85
|
-
"en": "Return text for submenus adjusted",
|
|
86
|
-
"de": "Rückgabetext für submenus angepasst",
|
|
87
|
-
"ru": "Вернуться текст для подменю скорректирован",
|
|
88
|
-
"pt": "Texto de retorno para submenus ajustado",
|
|
89
|
-
"nl": "Een terugkeer sms voor submenus aangepast",
|
|
90
|
-
"fr": "Texte de retour pour les sous-menus ajustés",
|
|
91
|
-
"it": "Testo di ritorno per submenus regolato",
|
|
92
|
-
"es": "Texto de retorno para submenú ajustado",
|
|
93
|
-
"pl": "Powtórne teksty do podmenu poprawiły",
|
|
94
|
-
"uk": "Повернення тексту для підменю",
|
|
95
|
-
"zh-cn": "调整的分遣案文"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"titleLang": {
|