| rev | line source | 
| bsw/jbe@4 | 1 function util.help(id, title) | 
| bsw/jbe@4 | 2   local setting_key = "liquidfeedback_frontend_hidden_help_" .. id | 
| bsw/jbe@4 | 3   local setting = Setting:by_pk(app.session.member.id, setting_key) | 
| bsw/jbe@4 | 4   if not setting then | 
| bsw/jbe@4 | 5     ui.container{ | 
| bsw/jbe@4 | 6       attr = { class = "help help_visible" }, | 
| bsw/jbe@4 | 7       content = function() | 
| bsw/jbe@4 | 8         ui.image{ | 
| bsw/jbe@4 | 9           attr = { class = "help_icon" }, | 
| bsw/jbe@4 | 10           static = "icons/16/help.png" | 
| bsw/jbe@4 | 11         } | 
| bsw/jbe@4 | 12         ui.container{ | 
| bsw/jbe@4 | 13           attr = { class = "help_actions" }, | 
| bsw/jbe@4 | 14           content = function() | 
| bsw/jbe@4 | 15             ui.link{ | 
| bsw/jbe@19 | 16               text   = _"Hide this help message", | 
| bsw/jbe@4 | 17               module = "help", | 
| bsw/jbe@4 | 18               action = "update", | 
| bsw/jbe@4 | 19               params = { | 
| bsw/jbe@4 | 20                 help_ident = id, | 
| bsw/jbe@4 | 21                 hide = true | 
| bsw/jbe@4 | 22               }, | 
| bsw/jbe@4 | 23               routing = { | 
| bsw/jbe@4 | 24                 default = { | 
| bsw/jbe@4 | 25                   mode = "redirect", | 
| bsw/jbe@4 | 26                   module = request.get_module(), | 
| bsw/jbe@4 | 27                   view = request.get_view(), | 
| bsw/jbe@4 | 28                   id = param.get_id_cgi(), | 
| bsw/jbe@4 | 29                   params = param.get_all_cgi() | 
| bsw/jbe@4 | 30                 } | 
| bsw/jbe@4 | 31               } | 
| bsw/jbe@4 | 32             } | 
| bsw/jbe@4 | 33           end | 
| bsw/jbe@4 | 34         } | 
| bsw/jbe@4 | 35         local lang = locale.get("lang") | 
| bsw/jbe@4 | 36         local basepath = request.get_app_basepath() | 
| bsw/jbe@4 | 37         local file_name = basepath .. "/locale/help/" .. id .. "." .. lang .. ".txt" | 
| bsw/jbe@4 | 38         local file = io.open(file_name) | 
| bsw/jbe@4 | 39         if file ~= nil then | 
| bsw/jbe@4 | 40           local help_text = file:read("*a") | 
| bsw/jbe@4 | 41           if #help_text > 0 then | 
| bsw/jbe@4 | 42             ui.container{ | 
| bsw/jbe@4 | 43               attr = { class = "wiki" }, | 
| bsw/jbe@4 | 44               content = function() | 
| bsw/jbe@4 | 45                 slot.put(format.wiki_text(help_text)) | 
| bsw/jbe@4 | 46               end | 
| bsw/jbe@4 | 47             } | 
| bsw/jbe@4 | 48           else | 
| bsw/jbe@4 | 49             ui.field.text{ value = _("Empty help text: #{id}.#{lang}.txt", { id = id, lang = lang }) } | 
| bsw/jbe@4 | 50           end | 
| bsw/jbe@4 | 51         else | 
| bsw/jbe@4 | 52           ui.field.text{ value = _("Missing help text: #{id}.#{lang}.txt", { id = id, lang = lang }) } | 
| bsw/jbe@4 | 53         end | 
| bsw/jbe@4 | 54       end | 
| bsw/jbe@4 | 55     } | 
| bsw/jbe@4 | 56   else | 
| bsw/jbe@4 | 57     if util._hidden_helps == nil then | 
| bsw/jbe@4 | 58       util._hidden_helps = {} | 
| bsw/jbe@4 | 59     end | 
| bsw/jbe@4 | 60     util._hidden_helps[#util._hidden_helps+1] = { | 
| bsw/jbe@4 | 61       id = id, | 
| bsw/jbe@4 | 62       title = title | 
| bsw/jbe@4 | 63     } | 
| bsw/jbe@4 | 64   end | 
| bsw/jbe@4 | 65 end |