diff --git a/myriad/home.py b/myriad/home.py index 70302a9..feb488a 100644 --- a/myriad/home.py +++ b/myriad/home.py @@ -46,18 +46,22 @@ def full_list(): @bp.route('/member/') def page(mid): db = get_db() - try: - member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() - blog = db.execute("SELECT * FROM blog WHERE member_id=(?) ORDER BY created DESC",(mid,)).fetchall() - icon = db.execute("SELECT icon_location FROM icons WHERE id=(?)",(member[6],)).fetchone() - all_icons = db.execute("SELECT icon_location FROM icons WHERE member_id=(?)",(mid,)).fetchall() - blinkies = db.execute("SELECT blinkie_location FROM blinkies WHERE member_id=(?)",(mid,)).fetchall() - stamps = db.execute("SELECT stamp_location FROM stamps WHERE member_id=(?)",(mid,)).fetchall() - blog_public = db.execute("SELECT * FROM blog WHERE member_id=(?) AND public=(?)",(mid,1)).fetchall() - sections = db.execute("SELECT * FROM sections WHERE member_id=(?) ORDER BY position ASC",(mid,)).fetchall() - groups = db.execute("SELECT * FROM group_members WHERE member_id=(?)",(mid,)).fetchall() - except TypeError: - return "Not Found
Go Home", 404 + + member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() + if not member: + member = db.execute("SELECT * FROM member WHERE custom_url=(?)",(mid,)).fetchone() + mid = member[0] + if not member: + return "Not Found
Go Home", 404 + + blog = db.execute("SELECT * FROM blog WHERE member_id=(?) ORDER BY created DESC",(mid,)).fetchall() + icon = db.execute("SELECT icon_location FROM icons WHERE id=(?)",(member[6],)).fetchone() + all_icons = db.execute("SELECT icon_location FROM icons WHERE member_id=(?)",(mid,)).fetchall() + blinkies = db.execute("SELECT blinkie_location FROM blinkies WHERE member_id=(?)",(mid,)).fetchall() + stamps = db.execute("SELECT stamp_location FROM stamps WHERE member_id=(?)",(mid,)).fetchall() + blog_public = db.execute("SELECT * FROM blog WHERE member_id=(?) AND public=(?)",(mid,1)).fetchall() + sections = db.execute("SELECT * FROM sections WHERE member_id=(?) ORDER BY position ASC",(mid,)).fetchall() + groups = db.execute("SELECT * FROM group_members WHERE member_id=(?)",(mid,)).fetchall() blog_public_show = False if len(blog_public) > 0: diff --git a/myriad/manage.py b/myriad/manage.py index 95ab35c..79c0b73 100644 --- a/myriad/manage.py +++ b/myriad/manage.py @@ -83,10 +83,13 @@ def edit(mid): edit_location = "details" if "custom_url" in request.form: - custom_url = request.form["custom_url"] + custom_url = request.form["custom_url"].strip() - db.execute("UPDATE member SET custom_url=(?) WHERE id=(?)",(custom_url, mid)) - db.commit() + try: + db.execute("UPDATE member SET custom_url=(?) WHERE id=(?)",(custom_url, mid)) + db.commit() + except sqlite3.IntegrityError: + pass edit_location="custom_url" @@ -179,7 +182,15 @@ def edit(mid): edit_location = "sections" - member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() + try: + member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() + except: + try: + member = db.execute("SELECT * FROM member WHERE custom_url=(?)",(mid,)).fetchone() + except: + return "Not Found
Go Home", 404 + + icons = db.execute("SELECT * FROM icons WHERE member_id=(?)",(mid,)).fetchall() blinkies = db.execute("SELECT * FROM blinkies WHERE member_id=(?)",(mid,)).fetchall() stamps = db.execute("SELECT * FROM stamps WHERE member_id=(?)",(mid,)).fetchall() diff --git a/myriad/templates/full.html b/myriad/templates/full.html index d068b1d..34bcfa0 100644 --- a/myriad/templates/full.html +++ b/myriad/templates/full.html @@ -36,7 +36,7 @@ {{ member[5].replace('\n', '
')|safe }}
- +
{% endif %} diff --git a/myriad/templates/group_page.html b/myriad/templates/group_page.html index 66a6cdb..e79a91d 100644 --- a/myriad/templates/group_page.html +++ b/myriad/templates/group_page.html @@ -25,7 +25,7 @@ {{ member[5].replace('\n', '
')|safe }}
- +
diff --git a/myriad/templates/index.html b/myriad/templates/index.html index 81aba76..54b5ca6 100644 --- a/myriad/templates/index.html +++ b/myriad/templates/index.html @@ -33,8 +33,7 @@ {{ member[5].replace('\n', '
')|safe }}
- - +
diff --git a/myriad/templates/manage/edit.html b/myriad/templates/manage/edit.html index a1c4bbf..6163498 100644 --- a/myriad/templates/manage/edit.html +++ b/myriad/templates/manage/edit.html @@ -6,8 +6,7 @@ {% block content %}
- - View {{member[3]|safe}}'s page + {% if member[22] %}View {{member[3]|safe}}'s page{%else%}View {{member[3]|safe}}'s page{%endif%}
Edit Details
@@ -34,10 +33,13 @@
Public Page Settings
-

Set a custom URL for your page

+

Set a custom URL for your page. This has to be unique. Trying to set a custom URL that is already in use + won't work. +

+ {% if member[22] %}{% set customurl = member[22] %}{% else %}{% set customurl = "" %}{% endif %}
-
+