add aio:show_args_dialog function

This commit is contained in:
ezobnin
2021-08-15 10:07:33 +03:00
parent fd5b0ffad3
commit eed6bebabe
2 changed files with 12 additions and 2 deletions

View File

@@ -94,6 +94,7 @@ ui:prepare_context_menu({
* `aio:is_widget_added(string)` - проверяет, добавлен ли виджет на экран; * `aio:is_widget_added(string)` - проверяет, добавлен ли виджет на экран;
* `aio:get_args()` - возвращает таблицу аргументов, которые пользователь указал нажав на иконку настроек в режиме редактирования виджета; * `aio:get_args()` - возвращает таблицу аргументов, которые пользователь указал нажав на иконку настроек в режиме редактирования виджета;
* `aio:set_args(table)` - принудительно устанавливает аргументы скрипта (можно использовать для сохранения настроек скрипта - аргументы не стираются при отключении скрипта); * `aio:set_args(table)` - принудительно устанавливает аргументы скрипта (можно использовать для сохранения настроек скрипта - аргументы не стираются при отключении скрипта);
* `aio:show_args_dialog()` - показать диалог изменения аргументов;
Если в метаданных виджета есть поле `arguments_help`, его значение будет выведено при редактировании аргументов виджета. Если есть поле `arguments_default` - оно будет использовано для получения дефолтовых аргументов. Если в метаданных виджета есть поле `arguments_help`, его значение будет выведено при редактировании аргументов виджета. Если есть поле `arguments_default` - оно будет использовано для получения дефолтовых аргументов.

View File

@@ -1,5 +1,5 @@
-- name = "Uptimerobot" -- name = "Uptimerobot"
-- description = "Shows uptime information from uptimerobot.com. Needs api key." -- description = "Shows uptime information from uptimerobot.com. Needs API key."
-- data_source = "https://uptimerobot.com" -- data_source = "https://uptimerobot.com"
-- type = "widget" -- type = "widget"
-- author = "Evgeny Zobnin (zobnin@gmail.com) -- author = "Evgeny Zobnin (zobnin@gmail.com)
@@ -11,11 +11,12 @@ local md_colors = require "md_colors"
-- constants -- constants
local api_url = "https://api.uptimerobot.com/v2/" local api_url = "https://api.uptimerobot.com/v2/"
local click_url = "https://uptimerobot.com/dashboard#mainDashboard"
local media_type = "application/x-www-form-urlencoded" local media_type = "application/x-www-form-urlencoded"
function on_alarm() function on_alarm()
if (next(aio:get_args()) == nil) then if (next(aio:get_args()) == nil) then
ui:show_text("Enter API key in the settings") ui:show_text("Tap to enter API key")
return return
end end
@@ -25,6 +26,14 @@ function on_alarm()
http:post(api_url.."getMonitors", body, media_type) http:post(api_url.."getMonitors", body, media_type)
end end
function on_click()
if (next(aio:get_args()) == nil) then
aio:show_args_dialog()
else
system:open_browser(click_url)
end
end
function on_network_result(result) function on_network_result(result)
local parsed = json.decode(result) local parsed = json.decode(result)