Exemple #1
0
    def render_option(cls, value, label, mixed):
        """
        Render option as HTML tag, but not forget to wrap options into
        ``optgroup`` tag if ``label`` var is ``list`` or ``tuple``.
        """
        if isinstance(label, (list, tuple)):
            children = []

            for item_value, item_label in label:
                item_html = cls.render_option(item_value, item_label, mixed)
                children.append(item_html)

            html = u'<optgroup label="%s">%s</optgroup>'
            data = (escape(unicode(value)), u'\n'.join(children))
        else:
            coerce_func, data = mixed
            selected = coerce_func(value) == data

            options = {'value': value}

            if selected:
                options['selected'] = u'selected'

            html = u'<option %s>%s</option>'
            data = (html_params(**options), escape(unicode(label)))

        return HTMLString(html % data)
Exemple #2
0
    def render_option(cls, value, label, mixed):
        """
        Render option as HTML tag, but not forget to wrap options into
        ``optgroup`` tag if ``label`` var is ``list`` or ``tuple``.
        """
        if isinstance(label, (list, tuple)):
            children = []

            for item_value, item_label in label:
                item_html = cls.render_option(item_value, item_label, mixed)
                children.append(item_html)

            html = u'<optgroup label="%s">%s</optgroup>'
            data = (escape(unicode(value)), u'\n'.join(children))
        else:
            coerce_func, data = mixed
            selected = coerce_func(value) == data

            options = {'value': value}

            if selected:
                options['selected'] = u'selected'

            html = u'<option %s>%s</option>'
            data = (html_params(**options), escape(unicode(label)))

        return HTMLString(html % data)
Exemple #3
0
    def __call__(self, field, **kwargs):
        kwargs.setdefault('id', field.id)
        html = ''
        html += '<div class=\"btn-toolbar m-b-sm btn-editor\" data-role=\"editor-toolbar\"data-target=\"#editor\"><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Font\"><i class=\"fa fa-font\"></i><b class=\"caret\"></b></a><ul class=\"dropdown-menu\"></ul></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Font Size\"><i class=\"fa fa-text-height\"></i>            &nbsp;<b class=\"caret\"></b></a><ul class=\"dropdown-menu\"><li><a data-edit=\"fontSize 5\"><font size=\"5\">                        Huge</font></a></li><li><a data-edit=\"fontSize 3\"><font size=\"3\">                        Normal</font></a></li><li><a data-edit=\"fontSize 1\"><font size=\"1\">                        Small</font></a></li></ul></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"bold\" title=\"Bold (Ctrl/Cmd+B)\"><i class=\"fa fa-bold\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"italic\" title=\"Italic (Ctrl/Cmd+I)\"><i class=\"fa fa-italic\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"strikethrough\" title=\"Strikethrough\"><i class=\"fa fa-strikethrough\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"underline\" title=\"Underline (Ctrl/Cmd+U)\"><i class=\"fa fa-underline\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"insertunorderedlist\" title=\"Bullet list\"><i class=\"fa fa-list-ul\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"insertorderedlist\" title=\"Number list\"><i class=\"fa fa-list-ol\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"outdent\" title=\"Reduce indent (Shift+Tab)\"><i class=\"fa fa-dedent\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"indent\" title=\"Indent (Tab)\"><i class=\"fa fa-indent\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"justifyleft\" title=\"Align Left (Ctrl/Cmd+L)\"><i class=\"fa fa-align-left\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifycenter\" title=\"Center (Ctrl/Cmd+E)\"><i class=\"fa fa-align-center\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifyright\" title=\"Align Right (Ctrl/Cmd+R)\"><i class=\"fa fa-align-right\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifyfull\" title=\"Justify (Ctrl/Cmd+J)\"><i class=\"fa fa-align-justify\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Hyperlink\"><i class=\"fa fa-link\"></i></a><div class=\"dropdown-menu\"><div class=\"input-group m-l-xs m-r-xs\"><input class=\"form-control input-sm\" placeholder=\"URL\" type=\"text\" data-edit=\"createLink\"                /><div class=\"input-group-btn\"><button class=\"btn btn-default btn-sm\" type=\"button\">                        Add</button></div></div></div><a class=\"btn btn-default btn-sm\" data-edit=\"unlink\" title=\"Remove Hyperlink\"><i class=\"fa fa-cut\"></i></a></div><div class=\"btn-group hide\"><a class=\"btn btn-default btn-sm\" title=\"Insert picture (or just drag & drop)\"        id=\"pictureBtn\"><i class=\"fa fa-picture-o\"></i></a><input type=\"file\" data-role=\"magic-overlay\" data-target=\"#pictureBtn\"        data-edit=\"insertImage\" /></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"undo\" title=\"Undo (Ctrl/Cmd+Z)\"><i class=\"fa fa-undo\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"redo\" title=\"Redo (Ctrl/Cmd+Y)\"><i class=\"fa fa-repeat\"></i></a></div></div>'
        html += '<textarea class=\"hide flask-wysiwyg\"   data-editor=\"editor\" %s>%s</textarea>'
        html += '<div id=\"editor\"   style=\"overflow:scroll;height:150px;max-height:150px\"  class="bootstrap-wysiwyg form-control" >%s</div>'

        return HTMLString(html % (html_params(
            name=field.name, **kwargs), escape(text_type(
                field._value())), escape(text_type(field._value()))))
Exemple #4
0
 def render_option(cls, value, label, selected, **kwargs):
     value, tracker_id = value
     options = dict(kwargs, value=value)
     if selected:
         options['selected'] = True
     options['data-tracker_id'] = tracker_id
     return HTMLString('<option %s>%s</option>' % (html_params(**options), escape(text_type(label))))
Exemple #5
0
 def render_option(cls, val, label, photo_file_path):
     options = {'value': val}
     if photo_file_path:
         options['data-img-src'] = photo_file_path
     return widgets.HTMLString(
         u'<option %s>%s</option>' %
         (widgets.html_params(**options), escape(unicode(label))))
Exemple #6
0
    def __call__(self, field, **kwargs):
        kwargs.setdefault('type', 'submit')
        kwargs["class"] = self.class_
        title = kwargs.pop('title', field.description or '')
        params = html_params(title=title, **kwargs)

        html = '<button %s>%s</button>'
        return Markup(html % (params, escape(field.label.text)))
Exemple #7
0
 def __call__(self, field, **kwargs):
     kwargs.setdefault('id', field.id)
     html=''
     html+='<div class=\"btn-toolbar m-b-sm btn-editor\" data-role=\"editor-toolbar\"data-target=\"#editor\"><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Font\"><i class=\"fa fa-font\"></i><b class=\"caret\"></b></a><ul class=\"dropdown-menu\"></ul></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Font Size\"><i class=\"fa fa-text-height\"></i>            &nbsp;<b class=\"caret\"></b></a><ul class=\"dropdown-menu\"><li><a data-edit=\"fontSize 5\"><font size=\"5\">                        Huge</font></a></li><li><a data-edit=\"fontSize 3\"><font size=\"3\">                        Normal</font></a></li><li><a data-edit=\"fontSize 1\"><font size=\"1\">                        Small</font></a></li></ul></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"bold\" title=\"Bold (Ctrl/Cmd+B)\"><i class=\"fa fa-bold\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"italic\" title=\"Italic (Ctrl/Cmd+I)\"><i class=\"fa fa-italic\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"strikethrough\" title=\"Strikethrough\"><i class=\"fa fa-strikethrough\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"underline\" title=\"Underline (Ctrl/Cmd+U)\"><i class=\"fa fa-underline\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"insertunorderedlist\" title=\"Bullet list\"><i class=\"fa fa-list-ul\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"insertorderedlist\" title=\"Number list\"><i class=\"fa fa-list-ol\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"outdent\" title=\"Reduce indent (Shift+Tab)\"><i class=\"fa fa-dedent\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"indent\" title=\"Indent (Tab)\"><i class=\"fa fa-indent\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"justifyleft\" title=\"Align Left (Ctrl/Cmd+L)\"><i class=\"fa fa-align-left\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifycenter\" title=\"Center (Ctrl/Cmd+E)\"><i class=\"fa fa-align-center\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifyright\" title=\"Align Right (Ctrl/Cmd+R)\"><i class=\"fa fa-align-right\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"justifyfull\" title=\"Justify (Ctrl/Cmd+J)\"><i class=\"fa fa-align-justify\"></i></a></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm dropdown-toggle\" data-toggle=\"dropdown\"        title=\"Hyperlink\"><i class=\"fa fa-link\"></i></a><div class=\"dropdown-menu\"><div class=\"input-group m-l-xs m-r-xs\"><input class=\"form-control input-sm\" placeholder=\"URL\" type=\"text\" data-edit=\"createLink\"                /><div class=\"input-group-btn\"><button class=\"btn btn-default btn-sm\" type=\"button\">                        Add</button></div></div></div><a class=\"btn btn-default btn-sm\" data-edit=\"unlink\" title=\"Remove Hyperlink\"><i class=\"fa fa-cut\"></i></a></div><div class=\"btn-group hide\"><a class=\"btn btn-default btn-sm\" title=\"Insert picture (or just drag & drop)\"        id=\"pictureBtn\"><i class=\"fa fa-picture-o\"></i></a><input type=\"file\" data-role=\"magic-overlay\" data-target=\"#pictureBtn\"        data-edit=\"insertImage\" /></div><div class=\"btn-group\"><a class=\"btn btn-default btn-sm\" data-edit=\"undo\" title=\"Undo (Ctrl/Cmd+Z)\"><i class=\"fa fa-undo\"></i></a><a class=\"btn btn-default btn-sm\" data-edit=\"redo\" title=\"Redo (Ctrl/Cmd+Y)\"><i class=\"fa fa-repeat\"></i></a></div></div>'
     html+='<textarea class=\"hide flask-wysiwyg\"   data-editor=\"editor\" %s>%s</textarea>'
     html+='<div id=\"editor\"   style=\"overflow:scroll;height:150px;max-height:150px\"  class="bootstrap-wysiwyg form-control" >%s</div>'
     
     
     return HTMLString(html % (html_params(name=field.name, **kwargs), escape(text_type(field._value())),escape(text_type(field._value()))))
Exemple #8
0
 def __call__(self, field, **kwargs):
     kwargs.setdefault('id', field.id)
     html=''
     html+='<div class=\"btn-toolbar\" data-role=\"editor-toolbar\" data-target=\"#editor\">'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn dropdown-toggle\" data-toggle=\"dropdown\" title=\"Font\"><i class=\"icon-font\"></i><b class=\"caret\"></b></a>'
     html+='          <ul class=\"dropdown-menu\">'
     html+='          </ul>'
     html+='        </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn dropdown-toggle\" data-toggle=\"dropdown\" title=\"Font Size\"><i class=\"icon-text-height\"></i>&nbsp;<b class=\"caret\"></b></a>'
     html+='          <ul class=\"dropdown-menu\">'
     html+='          <li><a data-edit=\"fontSize 5\"><font size=\"5\">Huge</font></a></li>'
     html+='          <li><a data-edit=\"fontSize 3\"><font size=\"3\">Normal</font></a></li>'
     html+='          <li><a data-edit=\"fontSize 1\"><font size=\"1\">Small</font></a></li>'
     html+='          </ul>'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn\" data-edit=\"bold\" title=\"Bold (Ctrl/Cmd+B)\"><i class=\"icon-bold\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"italic\" title=\"Italic (Ctrl/Cmd+I)\"><i class=\"icon-italic\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"strikethrough\" title=\"Strikethrough\"><i class=\"icon-strikethrough\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"underline\" title=\"Underline (Ctrl/Cmd+U)\"><i class=\"icon-underline\"></i></a>'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn\" data-edit=\"insertunorderedlist\" title=\"Bullet list\"><i class=\"icon-list-ul\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"insertorderedlist\" title=\"Number list\"><i class=\"icon-list-ol\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"outdent\" title=\"Reduce indent (Shift+Tab)\"><i class=\"icon-indent-left\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"indent\" title=\"Indent (Tab)\"><i class=\"icon-indent-right\"></i></a>'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn\" data-edit=\"justifyleft\" title=\"Align Left (Ctrl/Cmd+L)\"><i class=\"icon-align-left\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"justifycenter\" title=\"Center (Ctrl/Cmd+E)\"><i class=\"icon-align-center\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"justifyright\" title=\"Align Right (Ctrl/Cmd+R)\"><i class=\"icon-align-right\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"justifyfull\" title=\"Justify (Ctrl/Cmd+J)\"><i class=\"icon-align-justify\"></i></a>'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='		  <a class=\"btn dropdown-toggle\" data-toggle=\"dropdown\" title=\"Hyperlink\"><i class=\"icon-link\"></i></a>'
     html+='		    <div class=\"dropdown-menu input-append\">'
     html+='			    <input class=\"span2\" placeholder=\"URL\" type=\"text\" data-edit=\"createLink\"/>'
     html+='			    <button class=\"btn\" type=\"button\">Add</button>'
     html+='        </div>'
     html+='        <a class=\"btn\" data-edit=\"unlink\" title=\"Remove Hyperlink\"><i class=\"icon-cut\"></i></a>'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn\" title=\"Insert picture (or just drag & drop)\" id=\"pictureBtn\"><i class=\"icon-picture\"></i></a>'
     html+='        <input type=\"file\" data-role=\"magic-overlay\" data-target=\"#pictureBtn\" data-edit=\"insertImage\" />'
     html+='      </div>'
     html+='      <div class=\"btn-group\">'
     html+='        <a class=\"btn\" data-edit=\"undo\" title=\"Undo (Ctrl/Cmd+Z)\"><i class=\"icon-undo\"></i></a>'
     html+='        <a class=\"btn\" data-edit=\"redo\" title=\"Redo (Ctrl/Cmd+Y)\"><i class=\"icon-repeat\"></i></a>'
     html+='      </div>'
     html+='      <input type=\"text\" data-edit=\"inserttext\" id=\"voiceBtn\" x-webkit-speech=\"\">'
     html+='    </div> '
     html+='    <div id=\"editor\" %s>%s</div> '        
     
     return HTMLString(html % (html_params(name=field.name, **kwargs), escape(text_type(field._value()))))
Exemple #9
0
    def render_option(cls, value, label, selected, **kwargs):
        if value is True:
            # Handle the special case of a 'True' value.
            value = text_type(value)

        options = dict(kwargs, value=value)
        if selected:
            options['selected'] = True
        return HTMLString('<option %s>%s</option>' %
            (html_params(**options), escape(text_type(label), quote=False)))
Exemple #10
0
 def __call__(self, field, **kwargs):
     items = []
     for val, label, selected in field.iter_choices():
         args = {
             'id': val,
             'name': field.name,
             'label': escape(label),
             'selected': ' checked' if selected else '',
         }
         items.append(self.template % args)
     return Markup(''.join(items))
Exemple #11
0
    def __call__(self, field, **kwargs):
        kwargs.setdefault('type', 'input')
        # Allow passing title= or alternately use field.description
        title = kwargs.pop('title', field.description or '')
        params = html_params(title=title, **kwargs)

        html = '<div class="form-group has-feedback .has-feedback-left"> ' \
               '<input type="text" class="form-control" placeholder="Search" %s>%s' \
               '<i class="class="glyphicon glyphicon-user form-control-feedback""></i>' \
               '</div>'
        return HTMLString(html % (params, escape(field.label.text)))
Exemple #12
0
 def __call__(self, field, **kwargs):
     items = []
     for val, label, selected in field.iter_choices():
         args = {
             'id': val,
             'name': field.name,
             'label': escape(label),
             'selected': ' checked' if selected else '',
         }
         items.append(self.template % args)
     return HTMLString(''.join(items))
Exemple #13
0
    def render_option(cls, value, label, selected, disabled, **kwargs):
        if value is True:
            # Handle the special case of a 'True' value.
            value = text_type(value)
        options = dict(kwargs, value=value)
        if selected:
            options['selected'] = True

        # if disabled:
        #     options['hidden'] = True

        return Markup('<option %s>%s</option>' %
                      (html_params(**options), escape(label)))
Exemple #14
0
 def __call__(self, field, **kwargs):  # create the widget of the wtforms
     c = kwargs.pop('class', '') or kwargs.pop('class_', '')
     kwargs['class'] = u'%s %s' % ('wangEditor', c)
     kwargs.setdefault('id', field.id)
     if 'required' not in kwargs and 'required' in getattr(
             field, 'flags', []):
         kwargs['required'] = True
     editor_id = field.name + '_editor'
     return HTMLString(
         '<div id={id}></div><input hidden=true %s value="%s"></input>'.
         format(id=editor_id) %
         (html_params(name=field.name, **kwargs),
          escape(text_type(field._value()), quote=False))
     )  # div is the editor, input will get the content from div by onchange callback in js code
Exemple #15
0
 def __call__(self, field, **kwargs):
     kwargs.setdefault('id', field.id)
     return HTMLString('<textarea rows="10" cols="100" '
                       '%s>%s</textarea>' % (
                           html_params(name=field.name, **kwargs),
                           escape(text_type(field._value()))))