def save_entry(): """Save the entry (ajax)""" user = session["user"] entry_id = request.form["entry_id"] raw_body = request.form["raw_body"] assert user assert entry_id assert isinstance(entry_id, basestring) assert isinstance(raw_body, basestring) entry = Entry(entry_id, user.username) entry.raw_body = raw_body entry = entry.save() return json.dumps(entry.to_json())
def sign_up(): """Register a user""" form = SignupForm() user = None if request.method == "POST" and form.validate(): # Add the user username = request.form["username"] password = request.form["password"] if username and password: if db.get_user(username): # This username already exists flash("This username has already been reserved, please choose another") return render_template("signup.html", form=form, user=None) user = User(username) user.set_password(password) user.save() # Log the user in session["user"] = user # Create a new entry for the user so they have something to look at new_entry = Entry(None, user.username) new_entry.raw_body = """Double-click in this area or use the edit button to edit this entry! Create tags by adding a "#" before a word, like this: #mytag """ new_entry.save() logging.info("User created: {}".format(username)) flash("Successfully registered. Welcome, {}!".format(username)) return redirect(url_for("page")) return render_template("signup.html", form=form, user=user)