diff --git a/app/blueprints/packages/packages.py b/app/blueprints/packages/packages.py index 6ecc1cb..89d1efe 100644 --- a/app/blueprints/packages/packages.py +++ b/app/blueprints/packages/packages.py @@ -228,7 +228,7 @@ def makeLabel(obj): class PackageForm(FlaskForm): type = SelectField(lazy_gettext("Type"), [InputRequired()], choices=PackageType.choices(), coerce=PackageType.coerce, default=PackageType.GAME) title = StringField(lazy_gettext("Title (Human-readable)"), [InputRequired(), Length(1, 100)]) - name = StringField(lazy_gettext("Name (Technical)"), [InputRequired(), Length(1, 100), Regexp("^[a-z0-9_\-\.]+$", 0, lazy_gettext("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only"))]) + name = StringField(lazy_gettext("Name (Technical)"), [InputRequired(), Length(1, 100), Regexp("^[a-zA-Z0-9_\-\.]+$", 0, lazy_gettext("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only"))]) short_desc = StringField(lazy_gettext("Short Description (Plaintext)"), [InputRequired(), Length(1,200)]) dev_state = SelectField(lazy_gettext("Maintenance State"), [InputRequired()], choices=PackageDevState.choices(with_none=True), coerce=PackageDevState.coerce) @@ -546,7 +546,7 @@ def audit(package): class PackageAliasForm(FlaskForm): author = StringField(lazy_gettext("Author Name"), [InputRequired(), Length(1, 50)]) name = StringField(lazy_gettext("Name (Technical)"), [InputRequired(), Length(1, 100), - Regexp("^[a-z0-9_\_\.]+$", 0, lazy_gettext("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only"))]) + Regexp("^[a-zA-Z0-9_\-\.]+$", 0, lazy_gettext("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only"))]) submit = SubmitField(lazy_gettext("Save")) diff --git a/app/logic/packages.py b/app/logic/packages.py index aa5d23e..d8343df 100644 --- a/app/logic/packages.py +++ b/app/logic/packages.py @@ -41,7 +41,7 @@ def get_license(name): return license -name_re = re.compile("^[a-z0-9_\-\.]+$") +name_re = re.compile("^[a-zA-Z0-9_\-\.]+$") AnyType = "?" ALLOWED_FIELDS = { diff --git a/app/models/packages.py b/app/models/packages.py index 5158eb0..326a8cf 100644 --- a/app/models/packages.py +++ b/app/models/packages.py @@ -380,7 +380,7 @@ class Package(db.Model): created_at = db.Column(db.DateTime, nullable=False, default=datetime.datetime.utcnow) approved_at = db.Column(db.DateTime, nullable=True, default=None) - name_valid = db.CheckConstraint("name ~* '^[a-z0-9_\-\.]+$'") + name_valid = db.CheckConstraint("name ~* '^[a-zA-Z0-9_\-\.]+$'") search_vector = db.Column(TSVectorType("name", "title", "short_desc", "desc", weights={ "name": "A", "title": "B", "short_desc": "C", "desc": "D" })) diff --git a/app/public/static/opensearch.xml b/app/public/static/opensearch.xml index 5cd8c32..b2ce553 100644 --- a/app/public/static/opensearch.xml +++ b/app/public/static/opensearch.xml @@ -1,9 +1,9 @@ - ContentDB - ContentDB + Okapi + Okapi ContentDB UTF-8 - Search mods, games, and textures for Minetest. - Minetest Tool Game Subgame Search - + Search libre games, tools and mods + Libre Tool Game Subgame Search + diff --git a/app/templates/packages/create_edit.html b/app/templates/packages/create_edit.html index ae2ff0f..8e45308 100644 --- a/app/templates/packages/create_edit.html +++ b/app/templates/packages/create_edit.html @@ -72,7 +72,7 @@ {{ render_field(form.name, class_="pkg_meta col-sm-4", readonly=True, hint=_("Please open a thread to request a name change")) }} {% else %} - {{ render_field(form.name, class_="pkg_meta col-sm-4", pattern="[a-z0-9_\-\.]+", title=_("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only")) }} + {{ render_field(form.name, class_="pkg_meta col-sm-4", pattern="[a-zA-Z0-9_\-\.]+", title=_("Lower case letters (a-z), digits (0-9), and underscores (_), dashes and periods only")) }} {% endif %} {{ render_field(form.short_desc, class_="pkg_meta") }} diff --git a/migrations/versions/6dca6eceb04d_.py b/migrations/versions/6dca6eceb04d_.py index f9a002c..6ea6257 100644 --- a/migrations/versions/6dca6eceb04d_.py +++ b/migrations/versions/6dca6eceb04d_.py @@ -19,7 +19,7 @@ depends_on = None def upgrade(): conn = op.get_bind() sync_trigger(conn, 'package', 'search_vector', ["name", "title", "short_desc", "desc"]) - op.create_check_constraint("name_valid", "package", "name ~* '^[a-z0-9_\-\.]+$'") + op.create_check_constraint("name_valid", "package", "name ~* '^[a-zA-Z0-9_\-\.]+$'") def downgrade():