1 |
|
2 |
# -*- coding utf-8 -*- |
3 |
# classes/views/apps.py |
4 |
|
5 |
|
6 |
from flask import Module, jsonify, request, render_template, redirect, url_for |
7 |
from hashlib import md5 |
8 |
from werkzeug.security import gen_salt |
9 |
|
10 |
from swtstore.classes.models import Client |
11 |
from swtstore.classes.models.um import User |
12 |
|
13 |
|
14 |
app = Module(__name__) |
15 |
|
16 |
@app.route('/', methods=['GET']) |
17 |
# list apps owned by current user |
18 |
def list(): |
19 |
current_user = User.getCurrentUser() |
20 |
if current_user is None: |
21 |
return redirect(url_for('index')) |
22 |
|
23 |
her_apps = Client.getClientsByCreator(current_user.id) |
24 |
print 'her_apps' |
25 |
print her_apps |
26 |
return render_template('list_apps.html', apps=her_apps, |
27 |
user=current_user.to_dict()) |
28 |
|
29 |
|
30 |
@app.route('/register', methods=['GET', 'POST']) |
31 |
def register(): |
32 |
current_user = User.getCurrentUser() |
33 |
if current_user is None: |
34 |
return redirect(url_for('index')) |
35 |
|
36 |
user = current_user.to_dict() |
37 |
|
38 |
if request.method == 'GET': |
39 |
return render_template('register_app.html', user=user) |
40 |
|
41 |
elif request.method == 'POST': |
42 |
if not request.form.get('name'): |
43 |
abort(400) |
44 |
|
45 |
new_app = Client( |
46 |
id = gen_salt(40), |
47 |
client_secret = gen_salt(50), |
48 |
name = request.form.get('name'), |
49 |
description = request.form.get('desc'), |
50 |
user_id = current_user.id, |
51 |
_redirect_uris = request.form.get('redirect_uris'), |
52 |
_default_scopes = request.form.get('scopes'), |
53 |
_is_private = False |
54 |
) |
55 |
new_app.persist() |
56 |
|
57 |
return redirect(url_for('list')) |