fix #16
This commit is contained in:
@@ -39,7 +39,7 @@ def create_app():
|
||||
app.register_blueprint(blog.bp)
|
||||
|
||||
@app.context_processor
|
||||
def utility_processor():
|
||||
def utility_processor():
|
||||
def get_themes():
|
||||
themes = os.listdir(app.config["THEMES_FOLDER"])
|
||||
return themes
|
||||
|
||||
@@ -5,7 +5,7 @@ from werkzeug.exceptions import abort
|
||||
|
||||
from myriad.auth import login_required
|
||||
from myriad.db import get_db
|
||||
from myriad.utilities import get_pages
|
||||
from myriad.utilities import get_pages, error404
|
||||
|
||||
bp = Blueprint('home', __name__)
|
||||
|
||||
@@ -57,7 +57,7 @@ def page(mid):
|
||||
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
|
||||
return error404()
|
||||
|
||||
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()
|
||||
@@ -72,6 +72,17 @@ def page(mid):
|
||||
if len(blog_public) > 0:
|
||||
blog_public_show = True
|
||||
|
||||
profile_public = member[9]
|
||||
if not g.user and profile_public == 0:
|
||||
return error404()
|
||||
|
||||
page_public = member[21]
|
||||
if page_public == 2:
|
||||
return error404()
|
||||
elif not g.user and page_public == 0:
|
||||
return error404()
|
||||
|
||||
|
||||
return render_template('page.html', member=member, blog=blog, icon=icon, all_icons=all_icons, blinkies=blinkies, stamps=stamps, blog_public_show=blog_public_show, sections=sections, groups=groups)
|
||||
|
||||
@bp.route("/groups")
|
||||
@@ -102,7 +113,7 @@ def group_page(gid):
|
||||
m = db.execute("SELECT * FROM member WHERE id=(?)",(member[2],)).fetchone()
|
||||
members.append(m)
|
||||
except TypeError:
|
||||
return "Not Found <br> <a href='/'>Go Home</a>", 404
|
||||
return error404()
|
||||
return render_template('group_page.html', group=group, members=members)
|
||||
|
||||
@bp.route("/page/<pid>")
|
||||
@@ -111,7 +122,7 @@ def custom_page(pid):
|
||||
try:
|
||||
page = db.execute("SELECT * FROM pages WHERE id=(?)",(pid,)).fetchone()
|
||||
except TypeError:
|
||||
return "Not Found <br> <a href='/'>Go Home</a>", 404
|
||||
return error404()
|
||||
return render_template('custom_page.html', page=page)
|
||||
|
||||
@bp.route("/page")
|
||||
|
||||
@@ -82,6 +82,14 @@ def edit(mid):
|
||||
|
||||
edit_location = "details"
|
||||
|
||||
if "enable_page" in request.form:
|
||||
page_public = request.form["enable_page"]
|
||||
|
||||
db.execute("UPDATE member SET public_page=(?) WHERE id=(?)",(page_public, mid))
|
||||
db.commit()
|
||||
|
||||
edit_location="enable_page"
|
||||
|
||||
if "custom_url" in request.form:
|
||||
custom_url = request.form["custom_url"].strip()
|
||||
|
||||
|
||||
@@ -46,7 +46,14 @@
|
||||
{% if pins %}
|
||||
<div class="heading">Pinned</div>
|
||||
{% for pin in pins %}
|
||||
<div class="navitem">> {% if pin[22] %}<a href="{{ url_for('home.page', mid=pin[22]) }}">{{ pin[3]|safe }}</a>{%else%}<a href="{{ url_for('home.page', mid=pin[0]) }}">{{ pin[3]|safe }}</a>{%endif%}</div>
|
||||
{% if pin[21] == 2 %}
|
||||
{% set view_page = False %}
|
||||
{% elif not g.user and pin[21] == 0 %}
|
||||
{% set view_page = False %}
|
||||
{% else %}
|
||||
{% set view_page = True %}
|
||||
{% endif %}
|
||||
{% if view_page %}<div class="navitem">> {% if pin[22] %}<a href="{{ url_for('home.page', mid=pin[22]) }}">{{ pin[3]|safe }}</a>{%else%}<a href="{{ url_for('home.page', mid=pin[0]) }}">{{ pin[3]|safe }}</a>{%endif%}</div>{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
@@ -22,8 +22,20 @@
|
||||
{% for member in memberlist %}
|
||||
|
||||
{% if not g.user and member[9]==0 %}
|
||||
|
||||
{% else %}
|
||||
|
||||
{% if member[21] == 2 %}
|
||||
{% set view_page = False %}
|
||||
{% elif not g.user and member[21] == 0 %}
|
||||
{% set view_page = False %}
|
||||
{% else %}
|
||||
{% set view_page = True %}
|
||||
{% endif %}
|
||||
|
||||
{% if not g.user and not view_page %}
|
||||
{% set hide_links = True %}
|
||||
{% endif %}
|
||||
|
||||
<div class="profile {{member[10]}}" id="m{{ member[0] }}">
|
||||
<div class="heading">{% if member[9]==0 %}<img class="minilock" src="{{ url_for('static', filename='lock.png') }}">{% endif %}<b>{{ member[3]|safe }}</b> {{ member[4]|safe }}</div>
|
||||
{% set icon = get_member_icon(member[0]) %}
|
||||
@@ -36,7 +48,7 @@
|
||||
{{ member[5].replace('\n', '<br>')|safe }}
|
||||
</div>
|
||||
<br class="clear" />
|
||||
<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 %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>
|
||||
{% if not hide_links %}<div class="heading links">{% if view_page %}{% 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 %}{% endif %}{% if g.user %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>{% endif %}
|
||||
<br class="clear" />
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
@@ -16,6 +16,18 @@
|
||||
{% if not g.user and member[9]==0 %}
|
||||
{% else %}
|
||||
|
||||
{% if member[21] == 2 %}
|
||||
{% set view_page = False %}
|
||||
{% elif not g.user and member[21] == 0 %}
|
||||
{% set view_page = False %}
|
||||
{% else %}
|
||||
{% set view_page = True %}
|
||||
{% endif %}
|
||||
|
||||
{% if not g.user and not view_page %}
|
||||
{% set hide_links = True %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
<div class="profile {{member[10]}}" id="m{{ member[0] }}">
|
||||
<div class="heading">{% if member[9]==0 %}<img class="minilock" src="{{ url_for('static', filename='lock.png') }}">{% endif %}<b>{{ member[3]|safe }}</b> {{ member[4]|safe }}</div>
|
||||
@@ -25,7 +37,7 @@
|
||||
{{ member[5].replace('\n', '<br>')|safe }}
|
||||
</div>
|
||||
<br class="clear" />
|
||||
<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 %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>
|
||||
{% if not hide_links %}<div class="heading links">{% if view_page %}{% 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 %}{% endif %}{% if g.user %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>{% endif %}
|
||||
<br class="clear" />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
{% for group in groups %}
|
||||
{% if not g.user and group[3]==0 %}
|
||||
|
||||
{% else %}
|
||||
<div class="heading big"><a href="{{ url_for('home.group_page', gid=group[0]) }}">{{group[1]}}</a></div>
|
||||
<div class="maintext">
|
||||
@@ -14,7 +15,16 @@
|
||||
{% for member in group_members[group[0]] %}
|
||||
{% if not g.user and member[9]==0 %}
|
||||
{% else %}
|
||||
✰ <a href="{{ url_for('home.page', mid=member[0]) }}">{{ member[3]|safe }}</a> <br>
|
||||
|
||||
{% if member[21] == 2 %}
|
||||
{% set view_page = False %}
|
||||
{% elif not g.user and member[21] == 0 %}
|
||||
{% set view_page = False %}
|
||||
{% else %}
|
||||
{% set view_page = True %}
|
||||
{% endif %}
|
||||
|
||||
✰ {% if view_page %}<a href="{{ url_for('home.page', mid=member[0]) }}">{% endif %}{{ member[3]|safe }}{% if view_page %}</a>{% endif %} <br>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
@@ -6,7 +6,20 @@
|
||||
|
||||
<div id="frontbanner" class="heading">
|
||||
{% if front_list|length > 0 %}
|
||||
<b>currently fronting: </b> {% for member in front_list %}{% if member[22] %}<a href="{{ url_for('home.page', mid=member[22]) }}">{{ member[3]|safe }}</a>{%else%}<a href="{{ url_for('home.page', mid=member[0]) }}">{{ member[3]|safe }}</a>{%endif%} {% if front_list.index(member) != front_list|length -1 %}& {% endif %}{% endfor %}
|
||||
<b>currently fronting: </b>
|
||||
{% for member in front_list %}
|
||||
{% if member[21] == 2 %}
|
||||
{% set a_tags = False %}
|
||||
{% elif not g.user and member[21] == 0 %}
|
||||
{% set a_tags = False %}
|
||||
{% else %}
|
||||
{% set a_tags = True %}
|
||||
{% endif %}
|
||||
{% if member[22] %}
|
||||
{% if a_tags %}<a href="{{ url_for('home.page', mid=member[22]) }}">{% endif %}{{ member[3]|safe }}{% if a_tags %}</a>{% endif %}
|
||||
{%else%}{% if a_tags %}<a href="{{ url_for('home.page', mid=member[0]) }}">{% endif %}{{ member[3]|safe }}{% if a_tags %}</a>{% endif %}
|
||||
{%endif%}
|
||||
{% if front_list.index(member) != front_list|length -1 %}& {% endif %}{% endfor %}
|
||||
{% else %}
|
||||
<i><sub>There are currently no members listed as fronting</sub></i>
|
||||
{% endif %}
|
||||
@@ -20,6 +33,18 @@
|
||||
{% if not g.user and member[9]==0 %}
|
||||
{% else %}
|
||||
|
||||
{% if member[21] == 2 %}
|
||||
{% set view_page = False %}
|
||||
{% elif not g.user and member[21] == 0 %}
|
||||
{% set view_page = False %}
|
||||
{% else %}
|
||||
{% set view_page = True %}
|
||||
{% endif %}
|
||||
|
||||
{% if not g.user and not view_page %}
|
||||
{% set hide_links = True %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
<div class="profile {{member[10]}}" id="m{{ member[0] }}">
|
||||
<div class="heading">{% if member[9]==0 %}<img class="minilock" src="{{ url_for('static', filename='lock.png') }}">{% endif %}<b>{{ member[3]|safe }}</b> {{ member[4]|safe }}</div>
|
||||
@@ -33,7 +58,7 @@
|
||||
{{ member[5].replace('\n', '<br>')|safe }}
|
||||
</div>
|
||||
<br class="clear" />
|
||||
<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 %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>
|
||||
{% if not hide_links %}<div class="heading links">{% if view_page %}{% 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 %}{% endif %}{% if g.user %} ☆ {% 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 %} ☆ <a href="{{ url_for('manage.edit', mid=member[0]) }}">Edit</a> ☆ {% 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>{% endif %}
|
||||
<br class="clear" />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
<option value="{{theme_name}}" {% if theme_name==member[10] %}selected{% endif %}>{{theme_name}}</option>
|
||||
{% endfor %}
|
||||
</select><br><br>
|
||||
<p>Public: this member's profile will be visible in lists to anyone with access to the site</p>
|
||||
<p>Private: this member's profile will be hidden, only visible to logged in users</p>
|
||||
<input type="radio" id="public" name="privacy" value=1 {% if member[9]==1 %}checked{% endif %}>
|
||||
<label for="public">Public</label><br>
|
||||
<input type="radio" id="private" name="privacy" value=0 {% if member[9]==0 %}checked{% endif %}>
|
||||
@@ -33,6 +35,25 @@
|
||||
</form>
|
||||
|
||||
<div class="heading">Public Page Settings</div>
|
||||
|
||||
<p>Enable public page for this member? These settings are non-destructive and can be reverted at any time.</p>
|
||||
<p>Public: member's customizable page can be viewed by anyone with access to the site</p>
|
||||
<p>Private: member's page is viewable by users logged in to the site</p>
|
||||
<p>Disabled: a custom page is not enabled for this member</p>
|
||||
|
||||
{% set public_page = member[21] %}
|
||||
<form method="post" id="enable_page">
|
||||
<input type="radio" id="page_public" name="enable_page" value=1 {% if public_page == 1 %}checked{% endif %}>
|
||||
<label for="page_public">Public</label><br>
|
||||
<input type="radio" id="page_private" name="enable_page" value=0 {% if public_page == 0 %}checked{% endif %}>
|
||||
<label for="page_private">Private</label><br>
|
||||
<input type="radio" id="page_disabled" name="enable_page" value=2 {% if public_page == 2 %}checked{% endif %}>
|
||||
<label for="page_disabled">Disabled</label><br>
|
||||
<input type="submit" value="Submit">
|
||||
</form>
|
||||
|
||||
<hr>
|
||||
|
||||
<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>
|
||||
|
||||
@@ -7,10 +7,6 @@
|
||||
|
||||
<div class="container {{member[10]}}">
|
||||
|
||||
{% if not g.user and member[9]==0 %}
|
||||
permission denied
|
||||
{% else %}
|
||||
|
||||
{% if g.user %}
|
||||
<a href="{{url_for('manage.edit', mid=member[0])}}">Edit member</a> ☆ {% if member[8]==0 %}<a href="{{ url_for('manage.add_to_front', mid=member[0],location='mid') }}">Add to Front</a>{% else %}<a href="{{ url_for('manage.remove_front', mid=member[0],location='mid') }}">Remove from Front</a>{% endif %} ☆ {% if member[7]==0 %}<a href="{{ url_for('manage.add_to_home', mid=member[0],location='mid') }}">Pin to Homepage</a>{% else %}<a href="{{ url_for('manage.remove_home', mid=member[0],location='mid') }}">Unpin from Homepage</a>{% endif %}
|
||||
<br class="clear" />
|
||||
@@ -105,9 +101,6 @@
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,6 +1,9 @@
|
||||
import datetime, re
|
||||
from myriad.db import get_db
|
||||
|
||||
def error404():
|
||||
return "Not Found <br> <a href='#' onclick='history.back()'>Go Back</a>", 404
|
||||
|
||||
def server_time():
|
||||
raw = datetime.datetime.now()
|
||||
real = raw.strftime("%d/%m/%Y, %H:%M:%S")
|
||||
|
||||
Reference in New Issue
Block a user