@presentation.render_for(Board)
def render_Board(self, h, comp, *args):
    security.check_permissions('view', self)
    h.head.css_url('css/themes/board.css')
    h.head.css_url('css/themes/%s/board.css' % self.theme)

    h.head.javascript_url('js/jquery-searchinput/jquery.searchinput.js')
    h.head.javascript_url('js/debounce.js')
    h.head.css_url('js/jquery-searchinput/styles/jquery.searchinput.min.css')
    h.head.javascript('searchinput', '''jQuery(document).ready(function ($) { $('#search').searchInput(); });''')
    title = '%s - %s' % (self.get_title(), self.app_title)
    h.head << h.head.title(title)
    if security.has_permissions('edit', self):
        h << comp.render(h, "menu")

    h << self.modal

    with h.div(class_='board'):
        if self.background_image_url:
            h << {'class': 'board ' + self.background_image_position,
                  'style': 'background-image:url(%s)' % self.background_image_url}
        with h.div(class_='header'):
            with h.div(class_='board-title', style='color: %s' % self.title_color):
                h << self.title.render(h.AsyncRenderer(), 0 if security.has_permissions('edit', self) else 'readonly')
            h << comp.render(h, 'switch')
        with h.div(class_='bbody'):
            h << comp.render(h.AsyncRenderer(), self.model)
    return h.root
Main board renderer
dataset/ETHPy150Open Net-ng/kansha/kansha/board/view.py/render_Board