+++ /dev/null
-{% extends "base.html" %}
-
-{% block title %}
- {{ package.title or "Create Package" }}
-{% endblock %}
-
-{% block content %}
- {% from "macros/forms.html" import render_field, render_submit_field %}
- <form method="POST" action="">
- {{ form.hidden_tag() }}
-
- {{ render_field(form.name) }}
- {{ render_field(form.title) }}
- {{ render_field(form.shortDesc) }}
- {{ render_field(form.desc) }}
- {{ render_field(form.type) }}
- {{ render_field(form.repo) }}
- {{ render_field(form.website) }}
- {{ render_field(form.issueTracker) }}
- {{ render_field(form.forums) }}
- {{ render_submit_field(form.submit) }}
- <input type="submit" value="Go">
- </form>
-{% endblock %}
+++ /dev/null
-{% extends "base.html" %}
-
-{% block title %}
- {{ package.title }}
-{% endblock %}
-
-{% block content %}
- {% if not package.approved %}
- <div class="box box_grey alert alert-warning">
- <span class="icon_message"></span>
- This package needs to be approved before it can be found.
- {% if package.checkPerm(current_user, "APPROVE_NEW") %}
- <a href="{{ package.getApproveURL() }}">Approve</a>
- {% endif %}
- <div style="clear: both;"></div>
- </div>
- {% endif %}
-
- <h1>{{ package.title }} by {{ package.author.display_name }}</h1>
-
- <aside class="asideright box box_grey">
- <table>
- <tr>
- <td>Name</td>
- <td>{{ package.name }}</td>
- </tr>
- <tr>
- <td>Author</td>
- <td>
- <a href="{{ url_for('user_profile_page', username=package.author.username) }}">
- {{ package.author.display_name }}
- </a>
- </td>
- </tr>
- <tr>
- <td>Type</td>
- <td>{{ package.type.value }}</td>
- </tr>
- </table>
-
- <ul class="buttonset linedbuttonset">
- {% if package.repo %}<li><a href="{{ package.repo }}">View Source</a></li>{% endif %}
- {% if package.forums %}<li><a href="https://forum.minetest.net/viewtopic.php?t={{ package.forums }}">Forums</a></li>{% endif %}
- {% if package.issueTracker %}<li><a href="{{ package.issueTracker }}">Issue Tracker</a></li>{% endif %}
- {% if package.website %}<li><a href="{{ package.website }}">Website</a></li>{% endif %}
- {% if package.checkPerm(current_user, "EDIT_PACKAGE") %}
- <li><a href="{{ package.getEditURL() }}">Edit</a></li>
- {% elif current_user.is_authenticated %}
- <li><a href="">Suggest Change</a></li>
- {% endif %}
- {% if package.checkPerm(current_user, "MAKE_RELEASE") %}
- <li><a href="{{ package.getCreateReleaseURL() }}">Create Release</a></li>
- {% endif %}
- </ul>
- </aside>
-
- <p class="package-short-large">{{ package.shortDesc }}</p>
-
- {{ package.desc | markdown }}
-
- <h3>Releases</h3>
-
- <ul>
- {% for rel in releases %}
- <li>
- {% if not rel.approved %}<i>{% endif %}
-
- <a href="{{ rel.url }}">{{ rel.title }}</a>,
- created {{ rel.releaseDate }}.
- {% if not rel.approved %}
- Waiting for approval.
- {% endif %}
-
- {% if package.checkPerm(current_user, "MAKE_RELEASE") or package.checkPerm(current_user, "APPROVE_RELEASE") %}
- <a href="{{ rel.getEditURL() }}">Edit
- {% if not rel.approved and package.checkPerm(current_user, "APPROVE_RELEASE") %}
- / Approve
- {% endif %}
- </a>
- {% endif %}
-
- {% if not rel.approved %}</i>{% endif %}
- </li>
- {% else %}
- <li>No releases available.</li>
- {% endfor %}
- </ul>
-{% endblock %}
+++ /dev/null
-{% extends "base.html" %}
-
-{% block title %}
- Create a release | {{ package.title }}
-{% endblock %}
-
-{% block content %}
- {% from "macros/forms.html" import render_field, render_submit_field %}
- <form method="POST" action="">
- {{ form.hidden_tag() }}
-
- {% if package.checkPerm(current_user, "MAKE_RELEASE") %}
- {{ render_field(form.title) }}
- {% else %}
- Title: {{ release.title }}
- {% endif %}
-
- {% if package.checkPerm(current_user, "CHANGE_RELEASE_URL") %}
- {{ render_field(form.url) }}
- {% else %}
- Url: <a href="{{ release.url }}">{{ release.url }}</a><br />
- {% endif %}
-
- {% if package.checkPerm(current_user, "APPROVE_RELEASE") %}
- {{ render_field(form.approved) }}
- {% else %}
- Approved: {{ release.approved }}
- {% endif %}
-
- {{ render_submit_field(form.submit) }}
- <input type="submit" value="Go">
- </form>
-
- {% if package.checkPerm(current_user, "APPROVE_RELEASE") %}
- <div class="box box_grey">
- <h2>Approval Checklist</h2>
- <ul>
- <li>Link leads to a valid download, ie: is a zip file which
- has either init.lua or modpack.txt if a mod, mods/ if a game, or textures if a texture pack.
- It's okay if they're inside an immediate folder, like so:
-
-<pre>
-example.zip/
-└── example
- └── init.lua
-</pre>
- </li>
- <li>There's no obfuscated code.</li>
- </ul>
- </div>
- {% endif %}
-{% endblock %}
+++ /dev/null
-{% extends "base.html" %}
-
-{% block title %}
- Create a release | {{ package.title }}
-{% endblock %}
-
-{% block content %}
- {% from "macros/forms.html" import render_field, render_submit_field %}
- <form method="POST" action="">
- {{ form.hidden_tag() }}
-
- {{ render_field(form.title) }}
- {{ render_field(form.uploadOpt) }}
- {{ render_field(form.vcsLabel) }}
- {{ render_field(form.fileUpload) }}
- {{ render_submit_field(form.submit) }}
- <input type="submit" value="Go">
- </form>
-{% endblock %}
+++ /dev/null
-{% extends "base.html" %}
-
-{% block title %}
-{{ title }}
-{% endblock %}
-
-{% block content %}
- <form method="get" action="">
- <input type="text" name="q" value="{{ query or ''}}" />
- <input type="submit" value="Search" />
- </form>
-
- <ul>
- {% for p in packages %}
- <li><a href="{{ p.getDetailsURL() }}">
- {{ p.title }} by {{ p.author.display_name }}
- </a></li>
- {% else %}
- <li><i>No packages available</i></ul>
- {% endfor %}
- </ul>
-{% endblock %}
--- /dev/null
+{% extends "base.html" %}
+
+{% block title %}
+ {{ package.title or "Create Package" }}
+{% endblock %}
+
+{% block content %}
+ {% from "macros/forms.html" import render_field, render_submit_field %}
+ <form method="POST" action="">
+ {{ form.hidden_tag() }}
+
+ {{ render_field(form.name) }}
+ {{ render_field(form.title) }}
+ {{ render_field(form.shortDesc) }}
+ {{ render_field(form.desc) }}
+ {{ render_field(form.type) }}
+ {{ render_field(form.repo) }}
+ {{ render_field(form.website) }}
+ {{ render_field(form.issueTracker) }}
+ {{ render_field(form.forums) }}
+ {{ render_submit_field(form.submit) }}
+ <input type="submit" value="Go">
+ </form>
+{% endblock %}
--- /dev/null
+{% extends "base.html" %}
+
+{% block title %}
+{{ title }}
+{% endblock %}
+
+{% block content %}
+ <form method="get" action="">
+ <input type="text" name="q" value="{{ query or ''}}" />
+ <input type="submit" value="Search" />
+ </form>
+
+ <ul>
+ {% for p in packages %}
+ <li><a href="{{ p.getDetailsURL() }}">
+ {{ p.title }} by {{ p.author.display_name }}
+ </a></li>
+ {% else %}
+ <li><i>No packages available</i></ul>
+ {% endfor %}
+ </ul>
+{% endblock %}
--- /dev/null
+{% extends "base.html" %}
+
+{% block title %}
+ Create a release | {{ package.title }}
+{% endblock %}
+
+{% block content %}
+ {% from "macros/forms.html" import render_field, render_submit_field %}
+ <form method="POST" action="">
+ {{ form.hidden_tag() }}
+
+ {% if package.checkPerm(current_user, "MAKE_RELEASE") %}
+ {{ render_field(form.title) }}
+ {% else %}
+ Title: {{ release.title }}
+ {% endif %}
+
+ {% if package.checkPerm(current_user, "CHANGE_RELEASE_URL") %}
+ {{ render_field(form.url) }}
+ {% else %}
+ Url: <a href="{{ release.url }}">{{ release.url }}</a><br />
+ {% endif %}
+
+ {% if package.checkPerm(current_user, "APPROVE_RELEASE") %}
+ {{ render_field(form.approved) }}
+ {% else %}
+ Approved: {{ release.approved }}
+ {% endif %}
+
+ {{ render_submit_field(form.submit) }}
+ <input type="submit" value="Go">
+ </form>
+
+ {% if package.checkPerm(current_user, "APPROVE_RELEASE") %}
+ <div class="box box_grey">
+ <h2>Approval Checklist</h2>
+ <ul>
+ <li>Link leads to a valid download, ie: is a zip file which
+ has either init.lua or modpack.txt if a mod, mods/ if a game, or textures if a texture pack.
+ It's okay if they're inside an immediate folder, like so:
+
+<pre>
+example.zip/
+└── example
+ └── init.lua
+</pre>
+ </li>
+ <li>There's no obfuscated code.</li>
+ </ul>
+ </div>
+ {% endif %}
+{% endblock %}
--- /dev/null
+{% extends "base.html" %}
+
+{% block title %}
+ Create a release | {{ package.title }}
+{% endblock %}
+
+{% block content %}
+ {% from "macros/forms.html" import render_field, render_submit_field %}
+ <form method="POST" action="">
+ {{ form.hidden_tag() }}
+
+ {{ render_field(form.title) }}
+ {{ render_field(form.uploadOpt) }}
+ {{ render_field(form.vcsLabel) }}
+ {{ render_field(form.fileUpload) }}
+ {{ render_submit_field(form.submit) }}
+ <input type="submit" value="Go">
+ </form>
+{% endblock %}
--- /dev/null
+{% extends "base.html" %}
+
+{% block title %}
+ {{ package.title }}
+{% endblock %}
+
+{% block content %}
+ {% if not package.approved %}
+ <div class="box box_grey alert alert-warning">
+ <span class="icon_message"></span>
+ This package needs to be approved before it can be found.
+ {% if package.checkPerm(current_user, "APPROVE_NEW") %}
+ <a href="{{ package.getApproveURL() }}">Approve</a>
+ {% endif %}
+ <div style="clear: both;"></div>
+ </div>
+ {% endif %}
+
+ <h1>{{ package.title }} by {{ package.author.display_name }}</h1>
+
+ <aside class="asideright box box_grey">
+ <table>
+ <tr>
+ <td>Name</td>
+ <td>{{ package.name }}</td>
+ </tr>
+ <tr>
+ <td>Author</td>
+ <td>
+ <a href="{{ url_for('user_profile_page', username=package.author.username) }}">
+ {{ package.author.display_name }}
+ </a>
+ </td>
+ </tr>
+ <tr>
+ <td>Type</td>
+ <td>{{ package.type.value }}</td>
+ </tr>
+ </table>
+
+ <ul class="buttonset linedbuttonset">
+ {% if package.repo %}<li><a href="{{ package.repo }}">View Source</a></li>{% endif %}
+ {% if package.forums %}<li><a href="https://forum.minetest.net/viewtopic.php?t={{ package.forums }}">Forums</a></li>{% endif %}
+ {% if package.issueTracker %}<li><a href="{{ package.issueTracker }}">Issue Tracker</a></li>{% endif %}
+ {% if package.website %}<li><a href="{{ package.website }}">Website</a></li>{% endif %}
+ {% if package.checkPerm(current_user, "EDIT_PACKAGE") %}
+ <li><a href="{{ package.getEditURL() }}">Edit</a></li>
+ {% elif current_user.is_authenticated %}
+ <li><a href="">Suggest Change</a></li>
+ {% endif %}
+ {% if package.checkPerm(current_user, "MAKE_RELEASE") %}
+ <li><a href="{{ package.getCreateReleaseURL() }}">Create Release</a></li>
+ {% endif %}
+ </ul>
+ </aside>
+
+ <p class="package-short-large">{{ package.shortDesc }}</p>
+
+ {{ package.desc | markdown }}
+
+ <h3>Releases</h3>
+
+ <ul>
+ {% for rel in releases %}
+ <li>
+ {% if not rel.approved %}<i>{% endif %}
+
+ <a href="{{ rel.url }}">{{ rel.title }}</a>,
+ created {{ rel.releaseDate }}.
+ {% if not rel.approved %}
+ Waiting for approval.
+ {% endif %}
+
+ {% if package.checkPerm(current_user, "MAKE_RELEASE") or package.checkPerm(current_user, "APPROVE_RELEASE") %}
+ <a href="{{ rel.getEditURL() }}">Edit
+ {% if not rel.approved and package.checkPerm(current_user, "APPROVE_RELEASE") %}
+ / Approve
+ {% endif %}
+ </a>
+ {% endif %}
+
+ {% if not rel.approved %}</i>{% endif %}
+ </li>
+ {% else %}
+ <li>No releases available.</li>
+ {% endfor %}
+ </ul>
+{% endblock %}
if search is not None:
query = query.filter(Package.title.contains(search))
- return render_template("packages.html", title=title, packages=query.all(), query=search)
+ return render_template("packages/list.html", title=title, packages=query.all(), query=search)
@app.route("/packages/")
def packages_page():
package = getPageByInfo(type, author, name)
releases = getReleases(package)
- return render_template("package_details.html", package=package, releases=releases)
+ return render_template("packages/view.html", package=package, releases=releases)
class PackageForm(FlaskForm):
db.session.commit() # save
return redirect(package.getDetailsURL()) # redirect
- return render_template("package_create_edit.html", package=package, form=form)
+ return render_template("packages/create_edit.html", package=package, form=form)
@app.route("/<type>s/<author>/<name>/approve/")
@login_required
else:
raise Exception("Unimplemented option = file upload")
- return render_template("package_release_new.html", package=package, form=form)
+ return render_template("packages/release_new.html", package=package, form=form)
@app.route("/<type>s/<author>/<name>/releases/<id>/", methods=["GET", "POST"])
@login_required
db.session.commit()
return redirect(package.getDetailsURL())
- return render_template("package_release_edit.html", package=package, release=release, form=form)
+ return render_template("packages/release_edit.html", package=package, release=release, form=form)