add calendar api

This commit is contained in:
Evgeny
2021-08-30 14:22:42 +03:00
parent b4c81d2afc
commit c59901b2dc
2 changed files with 40 additions and 0 deletions

View File

@@ -130,6 +130,29 @@ ui:prepare_context_menu({
Если в запросе был указан `id`, то функция вместо описанного выше колбека вызовет `on_network_result_$id(string, [code])`. То есть если id равен "server1", то колбек будет иметь вид `on_network_result_server1(string, [code])`.
# Календарь
* `calendar:get_events([calendar_id])` - возвращает таблицу табдлиц событий всех календарей, опциональный аргумент - ID календаря;
* `calendar:get_calendars()` - возвращет таблицу таблиц календарей;
* `calendar:open_event(id)` - открывает событие в системном календаре.
Формат таблицы события:
* `id` - идентификатор события;
* `calendar_id` - идентификатор календаря;
* `title` - заголовок события;
* `description` - описание события;
* `location` - адрес события строкой;
* `begin` - время начала события (в секундах);
* `end` - время конца события (в секундах);
* `all_day` - булево значение, означающее, что событие длится весь день.
Формат таблицы календаря:
* `id` - идентификатор календаря;
* `name` - название календаря;
* `color` - цвет календаря в фолрмате #XXXXXX.
# Функции обработки данных
* `ajson:get_value(string, string)` - получает указанное значение из JSON; первый аргумент - JSON-строка, второй - инструкция для получения значения.

View File

@@ -0,0 +1,17 @@
events = {}
function on_resume()
local ev_titles = {}
events = slice(calendar:get_events(), 1, 10)
for k,v in ipairs(events) do
ev_titles[k] = v.title
end
ui:show_lines(ev_titles)
end
function on_click(idx)
calendar:open_event(events[idx].id)
end