Esempio n. 1
0
def object_edit(model_slug, model_key=None, **attrs):
    if model_slug not in models:
        abort(404)
    model = models[model_slug]
    sk = attrdict()
    if model_key:
        try:
            data = model.q.get_by(id=model_key)
        except NoData:
            abort(404)
    else:
        data = model
        sk.session = db

    if model_key:
        obj = model.q.get_by(id=int(model_key))
    else:
        obj = None

    fields = FieldSet(data, **sk)
    _fixup_fs(fields, model_key, attrs)

    if request.method == 'POST':
        fields.rebind(data=request.form)
        if fields.validate():
            fields.sync()
            next_url = url_for('_admin.object_list', model_slug=model_slug)
            return redirect(next_url)
    context = {
        'model_slug': model_slug,
        'model': model,
        'fields': fields,
    }
    template_name = '_admin/edit.html' if model_key else '_admin/new.html'
    return render_template(template_name, **context)
Esempio n. 2
0
def task_add():
    """Add a new task command to be executed, added by only Supreme Admin by careful planning"""
    task = Task()
    fs = FieldSet(task)

    stage_options = [('', ''), ('Deployment', 'Deployment'),
                     ('Maintenance', 'Maintenance'), ('General', 'General')]
    fs.configure(options=[
        fs.name.label('Task Name'),
        fs.cmd.label('Command'),
        fs.params.label('Parameters'),
        fs.stage.dropdown(stage_options)
    ])

    if request.method == 'POST':
        fs.rebind(data=request.form)
        if fs.validate():
            fs.sync()
            db.session.add(task)
            db.session.commit()
            flash('Task successfully added!')

    fs.rebind(model=Task)

    return render_template('tasks/task_add.html', form=fs)
Esempio n. 3
0
                    ' checked="checked"' if self._is_checked(functionality.id) else "",
                    functionality.value)
            i += 1
        result += '</ul></li>'
        return result

##############################################################################
# FIELDS defs
#
# DefaultBasemap, Layer, LayerGroup, Mandant, Printtemplates, RestrictionArea,
# Role, Title, User
#
##############################################################################

# Layer
Layer = FieldSet(models.Layer)
Layer.order.set(metadata=dict(mandatory='')).required()
Layer.layerType.set(
    renderer=fields.SelectFieldRenderer,
    options=["internal WMS", "external WMS", "WMTS", "no 2D"])
Layer.imageType.set(
    renderer=fields.SelectFieldRenderer,
    options=["image/jpeg", "image/png"])
Layer.restrictionareas.set(renderer=fields.CheckBoxSet)
Layer.parents.set(readonly=True)

# LayerGroup
LayerGroup = FieldSet(models.LayerGroup)
LayerGroup.order.set(metadata=dict(mandatory='')).required()
LayerGroup.children.set(renderer=TreeItemCheckBoxTreeSet)
LayerGroup.parents.set(readonly=True)
Esempio n. 4
0
image_type_options = [
    ("image/jpeg", _("image/jpeg")),
    ("image/png", _("image/png"))
]
time_options = [
    ("disabled", _("disabled")),
    ("value", _("value")),
    ("range", _("range")),
]
time_widget_options = [
    ("slider", _("slider")),
    ("datepicker", _("datepicker")),
]

# Layer V1
LayerV1 = FieldSet(models.LayerV1)
LayerV1.configure(exclude=[LayerV1.parents_relation])
LayerV1.layer_type.set(
    renderer=SelectFieldRenderer,
    options=[
        ("internal WMS", _("internal WMS")),
        ("external WMS", _("external WMS")),
        ("WMTS", _("WMTS")),
        ("no 2D", _("no 2D")),
    ])
LayerV1.image_type.set(
    renderer=SelectFieldRenderer,
    options=image_type_options
)
LayerV1.time_mode.set(
    renderer=SelectFieldRenderer,
Esempio n. 5
0
# -*- coding: utf-8 -*-
from pyramid_formalchemy.utils import TemplateEngine
from pyramidapp import models
from formalchemy import Grid, FieldSet
from formalchemy import fields
from formalchemy import config

config.engine = TemplateEngine()

FieldSet.default_renderers['dropdown'] = fields.SelectFieldRenderer

MyModel = FieldSet(models.MyModel)

GridMyModel = Grid(models.MyModel)
GridMyModelReadOnly = Grid(models.MyModel)
GridMyModelReadOnly.configure(readonly=True)

FooEdit = FieldSet(models.Foo)
FooEdit.configure()
Esempio n. 6
0
    ("datepicker", _("datepicker")),
]
ogcserver_type_options = [
    (models.OGCSERVER_TYPE_MAPSERVER, _("MapServer")),
    (models.OGCSERVER_TYPE_QGISSERVER, _("QGISserver")),
    (models.OGCSERVER_TYPE_GEOSERVER, _("GeoServer")),
    (models.OGCSERVER_TYPE_OTHER, _("Other")),
]
ogcserver_auth_options = [
    (models.OGCSERVER_AUTH_NOAUTH, _("No auth")),
    (models.OGCSERVER_AUTH_STANDARD, _("Standard auth")),
    (models.OGCSERVER_AUTH_GEOSERVER, _("GeoServer auth")),
]

# Layer V1
LayerV1 = FieldSet(models.LayerV1)
LayerV1.configure(exclude=[LayerV1.parents_relation])
LayerV1.layer_type.set(renderer=SelectFieldRenderer,
                       options=[
                           ("internal WMS", _("internal WMS")),
                           ("external WMS", _("external WMS")),
                           ("WMTS", _("WMTS")),
                           ("no 2D", _("no 2D")),
                       ])
LayerV1.image_type.set(renderer=SelectFieldRenderer,
                       options=image_type_options)
LayerV1.time_mode.set(
    renderer=SelectFieldRenderer,
    options=time_options,
)
LayerV1.time_widget.set(