aboutsummaryrefslogtreecommitdiff
path: root/app/views/packages.py
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/packages.py')
-rw-r--r--app/views/packages.py26
1 files changed, 14 insertions, 12 deletions
diff --git a/app/views/packages.py b/app/views/packages.py
index 087a83f..c7af289 100644
--- a/app/views/packages.py
+++ b/app/views/packages.py
@@ -118,18 +118,20 @@ def package_download_page(package):
class PackageForm(FlaskForm):
- name = StringField("Name", [InputRequired(), Length(1, 20), Regexp("^[a-z0-9_]", 0, "Lower case letters (a-z), digits (0-9), and underscores (_) only")])
- title = StringField("Title", [InputRequired(), Length(3, 50)])
- shortDesc = StringField("Short Description", [InputRequired(), Length(1,200)])
- desc = TextAreaField("Long Description", [Optional(), Length(0,10000)])
- type = SelectField("Type", [InputRequired()], choices=PackageType.choices(), coerce=PackageType.coerce, default=PackageType.MOD)
- license = QuerySelectField("License", [InputRequired()], query_factory=lambda: License.query, get_pk=lambda a: a.id, get_label=lambda a: a.name)
- tags = QuerySelectMultipleField('Tags', query_factory=lambda: Tag.query, get_pk=lambda a: a.id, get_label=lambda a: a.title)
- repo = StringField("Repo URL", [Optional(), URL()])
- website = StringField("Website URL", [Optional(), URL()])
- issueTracker = StringField("Issue Tracker URL", [Optional(), URL()])
- forums = IntegerField("Forum Topic ID", [InputRequired(), NumberRange(0,999999)])
- submit = SubmitField("Save")
+ name = StringField("Name", [InputRequired(), Length(1, 20), Regexp("^[a-z0-9_]", 0, "Lower case letters (a-z), digits (0-9), and underscores (_) only")])
+ title = StringField("Title", [InputRequired(), Length(3, 50)])
+ shortDesc = StringField("Short Description", [InputRequired(), Length(1,200)])
+ desc = TextAreaField("Long Description", [Optional(), Length(0,10000)])
+ type = SelectField("Type", [InputRequired()], choices=PackageType.choices(), coerce=PackageType.coerce, default=PackageType.MOD)
+ license = QuerySelectField("License", [InputRequired()], query_factory=lambda: License.query, get_pk=lambda a: a.id, get_label=lambda a: a.name)
+ tags = QuerySelectMultipleField('Tags', query_factory=lambda: Tag.query, get_pk=lambda a: a.id, get_label=lambda a: a.title)
+ harddeps = QuerySelectMultipleField('Dependencies', query_factory=lambda: Package.query, get_pk=lambda a: a.id, get_label=lambda a: a.title + " by " + a.author.display_name)
+ softdeps = QuerySelectMultipleField('Soft Dependencies', query_factory=lambda: Package.query, get_pk=lambda a: a.id, get_label=lambda a: a.title + " by " + a.author.display_name)
+ repo = StringField("Repo URL", [Optional(), URL()])
+ website = StringField("Website URL", [Optional(), URL()])
+ issueTracker = StringField("Issue Tracker URL", [Optional(), URL()])
+ forums = IntegerField("Forum Topic ID", [InputRequired(), NumberRange(0,999999)])
+ submit = SubmitField("Save")
@app.route("/packages/new/", methods=["GET", "POST"])
@app.route("/packages/<author>/<name>/edit/", methods=["GET", "POST"])