def __init__(self, view, *widths): __View__.__init__(self, 'layout_col', view=view) self._widths = L() if len(widths) > 0: for width in widths: if instof(width, tuple): self._widths << width else: self._widths << ('lg', 12)
def __create_link__(self, link): if instof(link, tuple): flink, clink = link if flink != None or clink != None: return ''' onclick="show_feature('%s','%s');"''' % ( flink['_code'] if flink else '', clink if clink else '') return ''
def __build_template__(self): self.pfm = M() greg('PFM', self.pfm) pnav = '' fnav = '' page = '' for p_name in self.products._porder: if p_name in self.products: self.pfm[p_name] = None pnav += ''' <a id="cw-pnav-%s" class="cw-pnav" onclick="show_product(\'%s\');">%s</a>\n''' % (p_name, p_name, self.products[p_name]._title) fnav += ' <ul id="cw-fnav-%s" class="nav navbar-nav side-nav cw-fnav">\n' % p_name now_sub = None for f_name in self.products[p_name]._forder: if instof(f_name, tuple): m_name, s_name = f_name feature = self.products[p_name][m_name][s_name] if now_sub != None and now_sub != m_name: fnav += ''' </ul></li> <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem"><a href="javascript:;" data-toggle="collapse" data-target="#cw-fsnav-%s-%s" class="collapsed" aria-expanded="false"><i class="fa fa-fw %s"></i> %s <i class="fa fa-fw fa-caret-down"></i></a><ul id="cw-fsnav-%s-%s" class="collapse" aria-expanded="false"> ''' % (p_name, m_name, p_name, m_name, self.products[p_name][m_name]._icon, self.products[p_name][m_name]._title, p_name, m_name) if now_sub == None: fnav += ''' <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem"><a href="javascript:;" data-toggle="collapse" data-target="#cw-fsnav-%s-%s" class="collapsed" aria-expanded="false"><i class="fa fa-fw %s"></i> %s <i class="fa fa-fw fa-caret-down"></i></a><ul id="cw-fsnav-%s-%s" class="collapse" aria-expanded="false"> ''' % (p_name, m_name, p_name, m_name, self.products[p_name][m_name]._icon, self.products[p_name][m_name]._title, p_name, m_name) now_sub = m_name fnav += ' <li id="cw-fnav-%s_%s_%s" class="ftbar cw-fnavitem" onclick="show_feature(\'%s\',\'\');"><a><i class="fa fa-fw %s"></i> %s</a></li>' % (p_name, m_name, s_name, feature._code, feature._icon, feature._title) page += '<div id="cw-page-%s_%s_%s" class="cw-page"></div>\n' % (p_name, m_name, s_name) if self.pfm[p_name] == None: self.pfm[p_name] = feature self.pfm[feature._code] = feature else: if now_sub != None: fnav += ' </ul></li>\n' now_sub = None feature = self.products[p_name][f_name] fnav += ' <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem" onclick="show_feature(\'%s\',\'\');"><a><i class="fa fa-fw %s"></i> %s</a></li>\n' % (p_name, f_name, feature._code, feature._icon, feature._title) page += '<div id="cw-page-%s_%s" class="cw-page"></div>\n' % (p_name, f_name) if self.pfm[p_name] == None: self.pfm[p_name] = feature self.pfm[feature._code] = feature if now_sub != None: fnav += '</ul></li>\n' fnav += '</ul>\n' self.pfm['dashboard'] = self.products.dashboard self.product_nav_tpl = Template(pnav).render(Context()) self.feature_nav_tpl = Template(fnav).render(Context()) self.page_html_tpl = Template(page).render(Context()) self.page_js_products_tpl = Template('var pfm = %s;' % Struct.CODE2JSON(self.pfm)).render(Context()) self.page_js_tpl = self.ciscowebkit_js_tpl.render({'pfm' : Template('var pfm = %s;' % Struct.CODE2JSON(self.pfm)).render(Context())}) self.ciscowebkit_build = self.ciscowebkit_tpl.render({'cw_pnav' : self.product_nav_tpl, 'cw_fnav' : self.feature_nav_tpl, 'cw_page_html' : self.page_html_tpl, 'cw_page_js' : self.page_js_tpl})
def __build_template__(self): self.pfm = M() greg('PFM', self.pfm) pnav = '' fnav = '' page = '' for p_name in self.products._porder: if p_name in self.products: self.pfm[p_name] = None pnav += ''' <a id="cw-pnav-%s" class="cw-pnav" onclick="show_product(\'%s\');">%s</a>\n''' % ( p_name, p_name, self.products[p_name]._title) fnav += ' <ul id="cw-fnav-%s" class="nav navbar-nav side-nav cw-fnav">\n' % p_name now_sub = None for f_name in self.products[p_name]._forder: if instof(f_name, tuple): m_name, s_name = f_name feature = self.products[p_name][m_name][s_name] if now_sub != None and now_sub != m_name: fnav += ''' </ul></li> <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem"><a href="javascript:;" data-toggle="collapse" data-target="#cw-fsnav-%s-%s" class="collapsed" aria-expanded="false"><i class="fa fa-fw %s"></i> %s <i class="fa fa-fw fa-caret-down"></i></a><ul id="cw-fsnav-%s-%s" class="collapse" aria-expanded="false"> ''' % (p_name, m_name, p_name, m_name, self.products[p_name][m_name]._icon, self.products[p_name][m_name]._title, p_name, m_name) if now_sub == None: fnav += ''' <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem"><a href="javascript:;" data-toggle="collapse" data-target="#cw-fsnav-%s-%s" class="collapsed" aria-expanded="false"><i class="fa fa-fw %s"></i> %s <i class="fa fa-fw fa-caret-down"></i></a><ul id="cw-fsnav-%s-%s" class="collapse" aria-expanded="false"> ''' % (p_name, m_name, p_name, m_name, self.products[p_name][m_name]._icon, self.products[p_name][m_name]._title, p_name, m_name) now_sub = m_name fnav += ' <li id="cw-fnav-%s_%s_%s" class="ftbar cw-fnavitem" onclick="show_feature(\'%s\',\'\');"><a><i class="fa fa-fw %s"></i> %s</a></li>' % ( p_name, m_name, s_name, feature._code, feature._icon, feature._title) page += '<div id="cw-page-%s_%s_%s" class="cw-page"></div>\n' % ( p_name, m_name, s_name) if self.pfm[p_name] == None: self.pfm[p_name] = feature self.pfm[feature._code] = feature else: if now_sub != None: fnav += ' </ul></li>\n' now_sub = None feature = self.products[p_name][f_name] fnav += ' <li id="cw-fnav-%s_%s" class="ftbar cw-fnavitem" onclick="show_feature(\'%s\',\'\');"><a><i class="fa fa-fw %s"></i> %s</a></li>\n' % ( p_name, f_name, feature._code, feature._icon, feature._title) page += '<div id="cw-page-%s_%s" class="cw-page"></div>\n' % ( p_name, f_name) if self.pfm[p_name] == None: self.pfm[p_name] = feature self.pfm[feature._code] = feature if now_sub != None: fnav += '</ul></li>\n' fnav += '</ul>\n' self.pfm['dashboard'] = self.products.dashboard self.product_nav_tpl = Template(pnav).render(Context()) self.feature_nav_tpl = Template(fnav).render(Context()) self.page_html_tpl = Template(page).render(Context()) self.page_js_products_tpl = Template( 'var pfm = %s;' % Struct.CODE2JSON(self.pfm)).render(Context()) self.page_js_tpl = self.ciscowebkit_js_tpl.render({ 'pfm': Template('var pfm = %s;' % Struct.CODE2JSON(self.pfm)).render( Context()) }) self.ciscowebkit_build = self.ciscowebkit_tpl.render({ 'cw_pnav': self.product_nav_tpl, 'cw_fnav': self.feature_nav_tpl, 'cw_page_html': self.page_html_tpl, 'cw_page_js': self.page_js_tpl })
def __create_link__(self, link): if instof(link, tuple): flink, clink = link if flink != None or clink != None: return ''' onclick="show_feature('%s','%s');"''' % (flink['_code'] if flink else '', clink if clink else '') return ''
def __call__(self, *cols): for col in cols: if instof(col, Col): self.cols << col else: self.cols << Col(col) return self
def __init__(self, *cols, **option): __View__.__init__(self, 'layout_row', cols=L()) for col in cols: if instof(col, Col): self.cols << col else: self.cols << Col(col)