custom urls

This commit is contained in:
cube
2026-05-30 01:50:56 +01:00
parent 4c3279ef29
commit bfbe54df03
6 changed files with 40 additions and 24 deletions

View File

@@ -46,8 +46,14 @@ def full_list():
@bp.route('/member/<mid>') @bp.route('/member/<mid>')
def page(mid): def page(mid):
db = get_db() db = get_db()
try:
member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() 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 <br> <a href='/'>Go Home</a>", 404
blog = db.execute("SELECT * FROM blog WHERE member_id=(?) ORDER BY created DESC",(mid,)).fetchall() 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() 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() all_icons = db.execute("SELECT icon_location FROM icons WHERE member_id=(?)",(mid,)).fetchall()
@@ -56,8 +62,6 @@ def page(mid):
blog_public = db.execute("SELECT * FROM blog WHERE member_id=(?) AND public=(?)",(mid,1)).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() 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() groups = db.execute("SELECT * FROM group_members WHERE member_id=(?)",(mid,)).fetchall()
except TypeError:
return "Not Found <br> <a href='/'>Go Home</a>", 404
blog_public_show = False blog_public_show = False
if len(blog_public) > 0: if len(blog_public) > 0:

View File

@@ -83,10 +83,13 @@ def edit(mid):
edit_location = "details" edit_location = "details"
if "custom_url" in request.form: if "custom_url" in request.form:
custom_url = request.form["custom_url"] custom_url = request.form["custom_url"].strip()
try:
db.execute("UPDATE member SET custom_url=(?) WHERE id=(?)",(custom_url, mid)) db.execute("UPDATE member SET custom_url=(?) WHERE id=(?)",(custom_url, mid))
db.commit() db.commit()
except sqlite3.IntegrityError:
pass
edit_location="custom_url" edit_location="custom_url"
@@ -179,7 +182,15 @@ def edit(mid):
edit_location = "sections" edit_location = "sections"
try:
member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone() 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 <br> <a href='/'>Go Home</a>", 404
icons = db.execute("SELECT * FROM icons WHERE member_id=(?)",(mid,)).fetchall() icons = db.execute("SELECT * FROM icons WHERE member_id=(?)",(mid,)).fetchall()
blinkies = db.execute("SELECT * FROM blinkies 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() stamps = db.execute("SELECT * FROM stamps WHERE member_id=(?)",(mid,)).fetchall()

View File

@@ -36,7 +36,7 @@
{{ member[5].replace('\n', '<br>')|safe }} {{ member[5].replace('\n', '<br>')|safe }}
</div> </div>
<br class="clear" /> <br class="clear" />
<div class="heading links"><a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='full') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='full') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='full') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='full') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div> <div class="heading links">{% if member[22] %}<a href="{{ url_for('home.page', mid=member[22]) }}">View Page</a>{%else%}<a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{%endif%}{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='full') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='full') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='full') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='full') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div>
<br class="clear" /> <br class="clear" />
</div> </div>
{% endif %} {% endif %}

View File

@@ -25,7 +25,7 @@
{{ member[5].replace('\n', '<br>')|safe }} {{ member[5].replace('\n', '<br>')|safe }}
</div> </div>
<br class="clear" /> <br class="clear" />
<div class="heading links"><a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='home') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='home') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='home') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='home') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div> <div class="heading links">{% if member[22] %}<a href="{{ url_for('home.page', mid=member[22]) }}">View Page</a>{%else%}<a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{%endif%}{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='home') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='home') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='home') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='home') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div>
<br class="clear" /> <br class="clear" />
</div> </div>

View File

@@ -33,8 +33,7 @@
{{ member[5].replace('\n', '<br>')|safe }} {{ member[5].replace('\n', '<br>')|safe }}
</div> </div>
<br class="clear" /> <br class="clear" />
<div class="heading links"><a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='home') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='home') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='home') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='home') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div> <div class="heading links">{% if member[22] %}<a href="{{ url_for('home.page', mid=member[22]) }}">View Page</a>{%else%}<a href="{{ url_for('home.page', mid=member[0]) }}">View Page</a>{%endif%}{% if g.user %} &#9734 {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='home') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='home') }}">Remove from Front</a>{% endif %} &#9734 <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> &#9734 {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='home') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='home') }}">Unpin from Homepage</a>{% endif %}{% endif %}</div>
<!-- <img src="/geo/dsgame.webp" class="dsgame"> -->
<br class="clear" /> <br class="clear" />
</div> </div>

View File

@@ -6,8 +6,7 @@
{% block content %} {% block content %}
<div class="container"> <div class="container">
{% if member[22] %}<a href="{{ url_for('home.page', mid=member[22]) }}">View {{member[3]|safe}}'s page</a>{%else%}<a href="{{ url_for('home.page', mid=member[0]) }}">View {{member[3]|safe}}'s page</a>{%endif%}
<a href="{{url_for('home.page', mid=member[0])}}">View {{member[3]|safe}}'s page</a>
<br class="clear" /> <br class="clear" />
<div class="heading">Edit Details</div> <div class="heading">Edit Details</div>
@@ -34,10 +33,13 @@
</form> </form>
<div class="heading">Public Page Settings</div> <div class="heading">Public Page Settings</div>
<p>Set a custom URL for your page</p> <p>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.
</p>
{% if member[22] %}{% set customurl = member[22] %}{% else %}{% set customurl = "" %}{% endif %}
<form method="post" id="custom_url"> <form method="post" id="custom_url">
<label for="custom_url">Custom URL</label> <label for="custom_url">Custom URL</label>
<input name="custom_url" id="custom_url" value="{{ member[22] }}" required><br> <input name="custom_url" id="custom_url" value="{{ customurl }}"><br>
<input type="submit" value="Submit"> <input type="submit" value="Submit">
</form> </form>