def do_render(self, session): tmpl = self.error_tmpl title = self.render_title(session) store = self.get_qmf_results(session) self.status_msg.set(session, store.status) error = None if store.exception: error = store.exception if "is unknown" in str(error): error = "%s are not available at this time." % title self.status_msg.set(session, store.exception) else: if store.status is None: error = "Loading" tmpl = self.loading_tmpl else: values = self.table.get_data_values(session) count = self.table.adapter.get_count(values) if count == 0: error = "There are no %s" % title if store.status == "OK": details = "The call to get the data succeeded, but no results were returned." else: details = "The call status is <span>%s</span>" % store.status self.status_msg.set(session, details) if error: writer = Writer() tmpl.render(writer, session, "%s" % error) return writer.to_string() return super(ObjectQmfSelector, self).do_render(session)
def render(self, session): writer = Writer() # put out the column headers writer.write(",".join(self.render_csv_header(session))) writer.write("\n") # put out the data data = self.get_data(session) for record in data: writer.write(",".join(self.render_csv_cells(session, record))) writer.write("\n") return writer.to_string()
def render_groups(self, session): writer = Writer() group_leader = self.group_leader.get(session) groups = self.group_helper.get_siblings(session, group_leader) info = self.group_helper.get_config_for_groups(session, "GROUP_QUOTA_DYNAMIC", groups) dynamic_groups = [] try: dynamic_groups = ["%s" % x for x in groups if info[x]["GROUP_QUOTA_DYNAMIC"] != ""] except: log.error("Error when loading dynamic groups for quota editing.") for group in sorted(groups): if(group in dynamic_groups): self.field_tmpl.render(writer, session, group) self.unclaimed_tmpl.render(writer, session, "Unclaimed") return writer.to_string()
def render_chart(self, session): if self.has_pie_chart: writer = Writer() self.pie_tmpl.render(writer, session) return writer.to_string()
def render_inputs(self, session, *args): writer = Writer() self.inputs_container_tmpl.render(writer, session, *args) return writer.to_string()
def render_input_fields(self, session, *args): count = self.count.get(session) writer = Writer() for i in range(count): self.inputs_tmpl.render(writer, session, i) return writer.to_string()
def render_exchange_key_input(self, session, exchange): writer = Writer() self.key_tmpl.render(writer, session, exchange) return writer.to_string()