Ejemplo n.º 1
0
    def _compose_user_panel(self):
        userpanel = ZenWidget("div", {"class": "user-panel"})
        userimagediv = ZenWidget("div", {"class": "pull-left image"})
        userpanel.append_widget(userimagediv)
        userimg = Image(self.user_info["src"], self.user_info["css_classes"], self.user_info["alt"])
        userimagediv.append_widget(userimg)

        usernamediv = ZenWidget("div", {"class": "pull-left info"})
        p = ZenWidget("p")
        p.append_text(self.user_info["username"])
        userimagediv.append_widget(p)
        userstatus = Link("#")
        userstatusicon = Icon("fa fa-circle text-success")
        userstatusicon.append_text(self.user_info["userstatus"])
        userstatus.append_widget(userstatusicon)
        userimagediv.append_widget(userstatus)
        userpanel.append_widget(userstatus)

        return userpanel
Ejemplo n.º 2
0
class DropdownMenu(ZenWidget):
    def __init__(self):
        super(self.__class__, self).__init__("ul", {"class": "dropdown-menu"})
        self.header = None
        self.footer = None
        self.menu_items = []

    def set_header(self, msg, link_href=None):
        self.header = ZenWidget("li", {"class": "header"})
        if link_href:
            link = Link(link_href)
            link.append_text(msg)
            self.append_widget(link)
        else:
            self.header.append_text(msg)

    def set_footer(self, msg, link_href=None):
        self.header = ZenWidget("li", {"class": "footer"})
        if link_href:
            link = Link(link_href)
            link.append_text(msg)
            self.append_widget(link)
        else:
            self.header.append_text(msg)

    def append_menuitem(self, item):
        self.menu_items.append(item)

    def render(self):
        self.sub_widgets = []
        if self.header:
            self.append_widget(self.header)
        for item in self.menu_items:
            self.append_widget(item)
        if self.footer:
            self.append_widget(self.footer)
        return super(self.__class__, self).render()