Esempio n. 1
0
def save_profile(tserver, match, fact):
    name = match['Person2']
    data = localdata.data or []
    schema = get_schema('person', form=True)
    form = Form(schema)
    try:
        data = [(o['name'], o['value']) for o in data]
        data = form.validate(data)
    except ValidationFailure as e:
        return form.render()
    if data:
        set_data(name, data)
    return 'OK'
Esempio n. 2
0
def edit_profile(tserver, match, fact):
    assertion = '(save-profile %(Person1)s, of %(Person2)s)' % match
    name = match['Person2']
    btn = Button(name='assertion', title='Save', value=assertion)

    data = get_data(name)
    schema = get_schema('person', form=True)
    if data.password:
        schema.get('password').widget = HiddenWidget()
    appstruct = schema.dictify(data)

    form = Form(schema, buttons=(btn,))
    template = get_template('templates/edit.html')
    return template.render(form=form.render(appstruct))