def edit(username): """ Edit a smiley's data """ person = PeopleModel.get_by_key_name(username.lower()) if person and person.password: if 'username' in session and session['username'] == username: form = EditForm() if form.validate_on_submit(): if form.delete.data: person.delete() return redirect(url_for('home')) else: updated_person = PeopleModel( key_name = person.name, name = person.name, startdate = form.startdate.data, enddate = form.enddate.data, password = person.password ) updated_person.put() return redirect(url_for('home') + person.name.encode("utf-8")) startdate = person.startdate enddate = person.enddate return render_template('edit.html', name=username, form=form, startdate=startdate, enddate=enddate) else: return redirect(url_for('home')+username+'/auth') else: abort(404)
def new_smiley(): """ Input info for new user """ in_use = [] people = PeopleModel.all() for person in people: in_use.append(person.name) reservered = [u'new', u'debug', u'debug-people', u'home', u'about'] form = PeopleForm() if form.validate_on_submit(): person = PeopleModel( key_name = form.name.data.lower(), name = form.name.data.lower(), startdate = form.startdate.data, enddate = form.enddate.data, password = generate_password_hash(form.password.data) ) person.name = slugify(person.name) if form.password.data == "": person.password = "" if unicode(person.name) not in in_use and (unicode(person.name) not in reservered): try: person.put() flash(unicode(person.name), 'success') mail.send_mail(sender="Neuer Nutzer! <*****@*****.**>",\ to = "<*****@*****.**>", subject="Neuer Benutzer!", body=person.name) return redirect(url_for('home') + person.name.encode("utf-8")) except CapabilityDisabledError: flash(u'App Engine Datastore is currently in read-only mode.', 'failure') return redirect(url_for('list_examples')) else: flash(u'Der Name ist leider schon reserviert, probiere doch einfach einen anderen') return redirect(url_for('new_smiley')) return render_template('setup.html', form=form)