from mediagoblin import mg_globals
from mediagoblin.tools.pluginapi import get_config, register_template_path, register_routes
from mediagoblin.db.models import MediaEntry
-from mediagoblin.db.util import media_entries_for_tag_slug
+from lp_helper import media_entries_for_tag_slug_case_insensitive
from mediagoblin.tools.pagination import Pagination
from mediagoblin.tools.response import render_to_response
from mediagoblin.tools.licenses import SORTED_LICENSES, SUPPORTED_LICENSES, License
if (tag == None):
cursor = MediaEntry.query
else:
- cursor = media_entries_for_tag_slug(db, tag)
+ cursor = media_entries_for_tag_slug_case_insensitive(db, tag)
return cursor.\
filter((MediaEntry.media_type == type)
--- /dev/null
+# MediaGoblin for LibrePlanet
+#
+# Based on code from MediaGoblin
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2017 Andrew Engelbrecht <andrew@fsf.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+def media_entries_for_tag_slug_case_insensitive(dummy_db, tag_slug):
+ return MediaEntry.query \
+ .join(MediaEntry.tags_helper) \
+ .join(MediaTag.tag_helper) \
+ .filter(
+ (MediaEntry.state == u'processed')
+ & (Tag.slug.lower() == tag_slug.lower()))
+
from mediagoblin import mg_globals
from mediagoblin.db.models import MediaEntry
-from mediagoblin.db.util import media_entries_for_tag_slug
+from lp_helper import media_entries_for_tag_slug_case_insensitive
from mediagoblin.tools.pagination import Pagination
from mediagoblin.tools.response import render_to_response
from mediagoblin.decorators import uses_pagination
if (tag == None):
cursor = MediaEntry.query
else:
- cursor = media_entries_for_tag_slug(request.db, tag)
+ cursor = media_entries_for_tag_slug_case_insensitive(request.db, tag)
cursor = cursor.\
filter((MediaEntry.media_type == media_type)