def page_view(): views.load_views() view_name = html.var("view_name") if not view_name: return page_index() view = views.permitted_views().get(view_name) if not view: raise MKGeneralException("No view defined with the name '%s'." % view_name) title = views.view_title(view) mobile_html_head(title) views.prepare_painter_options(view_name) try: views.show_view(view, show_heading=False, show_buttons=False, show_footer=False, render_function=render_view) except Exception, e: if config.debug: raise html.write("ERROR showing view: %s" % html.attrencode(e))
def render_view(view, rows, datasource, group_painters, painters, display_options, painter_options, show_heading, show_buttons, show_checkboxes, layout, num_columns, show_filters, show_footer, hide_filters, browser_reload): home = ("mobile.py", "Home", "home") page = html.var("page") if not page: if view.get("mustsearch"): page = "filter" else: page = "data" title = views.view_title(view) navbar = [("data", _("Results"), "grid", 'results_button'), ("filter", _("Filter"), "search", False)] if config.may("general.act"): navbar.append(("commands", _("Commands"), "gear", False)) # Should we show a page with context links? context_links = [ e for e in views.collect_context_links(view, hide_filters) if e[0].get("mobile") ] if context_links: navbar.append(("context", _("Context"), "arrow-r", False)) page_id = "view_" + view["name"] if page == "filter": jqm_page_header(_("Filter / Search"), left_button=home, id="filter") show_filter_form(show_filters) jqm_page_navfooter(navbar, 'filter', page_id) elif page == "commands": # Page: Commands if config.may("general.act"): jqm_page_header(_("Commands"), left_button=home, id="commands") show_commands = True if html.has_var("_do_actions"): try: show_commands = do_commands(view, datasource["infos"][0], rows) except MKUserError, e: html.show_error(e.message) html.add_user_error(e.varname, e.message) show_commands = True if show_commands: show_command_form(view, datasource, rows) jqm_page_navfooter(navbar, 'commands', page_id)
def render_view(view, rows, datasource, group_painters, painters, display_options, painter_options, show_heading, show_buttons, show_checkboxes, layout, num_columns, show_filters, show_footer, hide_filters, browser_reload): home=("mobile.py", "Home", "home") page = html.var("page") if not page: if view.get("mustsearch"): page = "filter" else: page = "data" title = views.view_title(view) navbar = [ ( "data", _("Results"), "grid", 'results_button'), ( "filter", _("Filter"), "search", False )] if config.may("general.act"): navbar.append(( "commands", _("Commands"), "gear", False )) # Should we show a page with context links? context_links = [ e for e in views.collect_context_links(view, hide_filters) if e[0].get("mobile") ] if context_links: navbar.append(( "context", _("Context"), "arrow-r", False)) page_id = "view_" + view["name"] if page == "filter": jqm_page_header(_("Filter / Search"), left_button=home, id="filter") show_filter_form(show_filters) jqm_page_navfooter(navbar, 'filter', page_id) elif page == "commands": # Page: Commands if config.may("general.act"): jqm_page_header(_("Commands"), left_button=home, id="commands") show_commands = True if html.has_var("_do_actions"): try: show_commands = do_commands(view, datasource["infos"][0], rows) except MKUserError, e: html.show_error(e.message) html.add_user_error(e.varname, e.message) show_commands = True if show_commands: show_command_form(view, datasource, rows) jqm_page_navfooter(navbar, 'commands', page_id)
def page_view(): views.load_views() view_name = html.var("view_name") if not view_name: return page_index() view = views.permitted_views().get(view_name) if not view: raise MKGeneralException("No view defined with the name '%s'." % view_name) title = views.view_title(view) mobile_html_head(title) try: views.show_view(view, show_heading = False, show_buttons = False, show_footer = False, render_function = render_view) except Exception, e: if config.debug: raise html.write("ERROR showing view: %s" % html.attrencode(e))