diff options
author | Ben Sturmfels <ben@sturm.com.au> | 2021-09-23 21:38:42 +1000 |
---|---|---|
committer | Ben Sturmfels <ben@sturm.com.au> | 2021-09-23 21:38:42 +1000 |
commit | 78d8efed7fc84eefa687a08fa06c6604e4c52042 (patch) | |
tree | 086ba50975e73d84adea4bbf0166cf6b0d59363d | |
parent | 5bda90f8219a2b03d18f4762a2fd7e77ab91007c (diff) | |
download | mediagoblin-78d8efed7fc84eefa687a08fa06c6604e4c52042.tar.lz mediagoblin-78d8efed7fc84eefa687a08fa06c6604e4c52042.tar.xz mediagoblin-78d8efed7fc84eefa687a08fa06c6604e4c52042.zip |
Fix some unused imports and local variables.
27 files changed, 63 insertions, 94 deletions
diff --git a/mediagoblin/api/views.py b/mediagoblin/api/views.py index f5e13147..f682e02b 100644 --- a/mediagoblin/api/views.py +++ b/mediagoblin/api/views.py @@ -20,13 +20,14 @@ import mimetypes from werkzeug.datastructures import FileStorage -from mediagoblin.decorators import oauth_required, require_active_login +from mediagoblin.decorators import oauth_required from mediagoblin.api.decorators import user_has_privilege -from mediagoblin.db.models import User, LocalUser, MediaEntry, Comment, TextComment, Activity +from mediagoblin.db.models import ( + LocalUser, MediaEntry, TextComment, Activity, Location) from mediagoblin.tools.federation import create_activity, create_generator from mediagoblin.tools.routing import extract_url_arguments -from mediagoblin.tools.response import redirect, json_response, json_error, \ - render_404, render_to_response +from mediagoblin.tools.response import ( + redirect, json_response, json_error, render_to_response) from mediagoblin.meddleware.csrf import csrf_exempt from mediagoblin.submit.lib import new_upload_entry, api_upload_request, \ api_add_to_feed diff --git a/mediagoblin/app.py b/mediagoblin/app.py index eae2c5cc..87e11be6 100644 --- a/mediagoblin/app.py +++ b/mediagoblin/app.py @@ -30,7 +30,6 @@ try: except ImportError: from werkzeug.wsgi import SharedDataMiddleware from mediagoblin import meddleware, __version__ -from mediagoblin.db.util import check_db_up_to_date from mediagoblin.tools import common, session, translate, template from mediagoblin.tools.response import render_http_exception from mediagoblin.tools.theme import register_themes diff --git a/mediagoblin/db/migration_tools.py b/mediagoblin/db/migration_tools.py index 149aab4d..32e09797 100644 --- a/mediagoblin/db/migration_tools.py +++ b/mediagoblin/db/migration_tools.py @@ -19,11 +19,8 @@ import logging import os import pkg_resources -from alembic import command from alembic.config import Config -from alembic.migration import MigrationContext -from mediagoblin.db.base import Base from mediagoblin.tools.common import simple_printer from sqlalchemy import Table from sqlalchemy.sql import select diff --git a/mediagoblin/db/migrations.py b/mediagoblin/db/migrations.py index f00c8019..ee49250a 100644 --- a/mediagoblin/db/migrations.py +++ b/mediagoblin/db/migrations.py @@ -31,7 +31,7 @@ import pytz import dateutil.tz from sqlalchemy import (MetaData, Table, Column, Boolean, SmallInteger, Integer, Unicode, UnicodeText, DateTime, - ForeignKey, Date, Index) + ForeignKey, Date) from sqlalchemy.exc import ProgrammingError from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.sql import and_ @@ -42,10 +42,8 @@ from mediagoblin.tools import crypto from mediagoblin.db.extratypes import JSONEncoded, MutationDict from mediagoblin.db.migration_tools import ( RegisterMigration, inspect_table, replace_table_hack, model_iteration_hack) -from mediagoblin.db.models import (MediaEntry, Collection, Comment, User, - Privilege, Generator, LocalUser, Location, - Client, RequestToken, AccessToken) -from mediagoblin.db.extratypes import JSONEncoded, MutationDict +from mediagoblin.db.models import ( + MediaEntry, Collection, Comment, User, Privilege, LocalUser, Location) MIGRATIONS = {} diff --git a/mediagoblin/db/migrations/env.py b/mediagoblin/db/migrations/env.py index 48b32ad6..5019c60f 100644 --- a/mediagoblin/db/migrations/env.py +++ b/mediagoblin/db/migrations/env.py @@ -1,5 +1,4 @@ from alembic import context -from sqlalchemy import engine_from_config, pool from logging.config import fileConfig # this is the Alembic Config object, which provides diff --git a/mediagoblin/db/models.py b/mediagoblin/db/models.py index e65690fe..e4ac8143 100644 --- a/mediagoblin/db/models.py +++ b/mediagoblin/db/models.py @@ -22,11 +22,10 @@ TODO: indexes on foreignkeys, where useful. import logging import datetime -from sqlalchemy import Column, Integer, Unicode, UnicodeText, DateTime, \ - Boolean, ForeignKey, UniqueConstraint, PrimaryKeyConstraint, \ - SmallInteger, Date, types, Float -from sqlalchemy.orm import relationship, backref, with_polymorphic, validates, \ - class_mapper +from sqlalchemy import ( + Column, Integer, Unicode, UnicodeText, DateTime, Boolean, ForeignKey, + UniqueConstraint, PrimaryKeyConstraint, SmallInteger, Date, Float) +from sqlalchemy.orm import relationship, backref, class_mapper from sqlalchemy.orm.collections import attribute_mapped_collection from sqlalchemy.sql import and_ from sqlalchemy.sql.expression import desc @@ -35,7 +34,7 @@ from sqlalchemy.util import memoized_property from mediagoblin.db.extratypes import (PathTupleWithSlashes, JSONEncoded, MutationDict) -from mediagoblin.db.base import Base, DictReadAttrProxy, FakeCursor +from mediagoblin.db.base import Base, DictReadAttrProxy from mediagoblin.db.mixin import UserMixin, MediaEntryMixin, \ CollectionMixin, CollectionItemMixin, ActivityMixin, TextCommentMixin, \ CommentingMixin @@ -49,6 +48,7 @@ from pytz import UTC _log = logging.getLogger(__name__) + class GenericModelReference(Base): """ Represents a relationship to any model that is defined with a integer pk diff --git a/mediagoblin/decorators.py b/mediagoblin/decorators.py index 4fc510ff..dd03d61f 100644 --- a/mediagoblin/decorators.py +++ b/mediagoblin/decorators.py @@ -23,8 +23,8 @@ from urllib.parse import urljoin from mediagoblin import mg_globals as mgg from mediagoblin import messages -from mediagoblin.db.models import MediaEntry, LocalUser, TextComment, \ - AccessToken, Comment +from mediagoblin.db.models import ( + MediaEntry, LocalUser, AccessToken, Comment) from mediagoblin.tools.response import ( redirect, render_404, render_user_banned, json_response) diff --git a/mediagoblin/edit/views.py b/mediagoblin/edit/views.py index 5b9dc7b2..9d9f03a9 100644 --- a/mediagoblin/edit/views.py +++ b/mediagoblin/edit/views.py @@ -16,10 +16,8 @@ from datetime import datetime from itsdangerous import BadSignature -from pyld import jsonld from werkzeug.exceptions import Forbidden from werkzeug.utils import secure_filename -from jsonschema import ValidationError, Draft4Validator from mediagoblin import messages from mediagoblin import mg_globals @@ -31,10 +29,9 @@ from mediagoblin.edit.lib import may_edit_media from mediagoblin.decorators import (require_active_login, active_user_from_url, get_media_entry_by_id, user_may_alter_collection, get_user_collection, user_has_privilege, - user_not_banned, user_may_delete_media) + user_not_banned) from mediagoblin.tools.crypto import get_timed_signer_url -from mediagoblin.tools.metadata import (compact_and_validate, DEFAULT_CHECKER, - DEFAULT_SCHEMA) +from mediagoblin.tools.metadata import compact_and_validate from mediagoblin.tools.mail import email_debug_message from mediagoblin.tools.response import (render_to_response, redirect, redirect_obj, render_404) @@ -44,7 +41,7 @@ from mediagoblin.tools.text import ( convert_to_tag_list_of_dicts, media_tags_as_string) from mediagoblin.tools.url import slugify from mediagoblin.db.util import check_media_slug_used, check_collection_slug_used -from mediagoblin.db.models import User, LocalUser, Client, AccessToken, Location +from mediagoblin.db.models import User, LocalUser, AccessToken, Location import mimetypes @@ -67,7 +64,7 @@ def edit_media(request, media): license=media.license) form = forms.EditForm( - request.method=='POST' and request.form or None, + request.method == 'POST' and request.form or None, **defaults) if request.method == 'POST' and form.validate(): diff --git a/mediagoblin/gmg_commands/addmedia.py b/mediagoblin/gmg_commands/addmedia.py index f8bd1715..57c24232 100644 --- a/mediagoblin/gmg_commands/addmedia.py +++ b/mediagoblin/gmg_commands/addmedia.py @@ -20,8 +20,7 @@ import os from mediagoblin.db.models import LocalUser from mediagoblin.gmg_commands import util as commands_util from mediagoblin.submit.lib import ( - submit_media, get_upload_file_limits, - FileUploadLimit, UserUploadLimit, UserPastUploadLimit) + submit_media, FileUploadLimit, UserUploadLimit, UserPastUploadLimit) from mediagoblin import mg_globals diff --git a/mediagoblin/gmg_commands/assetlink.py b/mediagoblin/gmg_commands/assetlink.py index 2f54808e..8cba19f6 100644 --- a/mediagoblin/gmg_commands/assetlink.py +++ b/mediagoblin/gmg_commands/assetlink.py @@ -17,9 +17,7 @@ import os from mediagoblin import mg_globals -from mediagoblin.init import setup_global_and_app_config from mediagoblin.gmg_commands import util as commands_util -from mediagoblin.tools.theme import register_themes from mediagoblin.tools.translate import pass_to_ugettext as _ from mediagoblin.tools.common import simple_printer from mediagoblin.tools import pluginapi diff --git a/mediagoblin/gmg_commands/dbupdate.py b/mediagoblin/gmg_commands/dbupdate.py index c802b374..fc506ee5 100644 --- a/mediagoblin/gmg_commands/dbupdate.py +++ b/mediagoblin/gmg_commands/dbupdate.py @@ -117,9 +117,9 @@ def run_foundations(db, global_config): foundations = import_component( f'{plugin}.models:FOUNDATIONS') all_foundations.append((plugin, foundations)) - except ImportError as exc: + except ImportError: continue - except AttributeError as exc: + except AttributeError: continue for name, foundations in all_foundations: diff --git a/mediagoblin/gmg_commands/reprocess.py b/mediagoblin/gmg_commands/reprocess.py index b2ed62fe..0c1b03e1 100644 --- a/mediagoblin/gmg_commands/reprocess.py +++ b/mediagoblin/gmg_commands/reprocess.py @@ -22,8 +22,6 @@ from mediagoblin import mg_globals from mediagoblin.db.models import MediaEntry from mediagoblin.gmg_commands import util as commands_util from mediagoblin.submit.lib import run_process_media -from mediagoblin.tools.translate import lazy_pass_to_ugettext as _ -from mediagoblin.tools.pluginapi import hook_handle from mediagoblin.processing import ( ProcessorDoesNotExist, ProcessorNotEligible, get_entry_and_processing_manager, get_processing_manager_for_type, diff --git a/mediagoblin/media_types/blog/views.py b/mediagoblin/media_types/blog/views.py index b9ddbe6e..0e1a1a67 100644 --- a/mediagoblin/media_types/blog/views.py +++ b/mediagoblin/media_types/blog/views.py @@ -15,38 +15,33 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. import logging -_log = logging.getLogger(__name__) - -from datetime import datetime -from werkzeug.exceptions import Forbidden from mediagoblin.tools import pluginapi from mediagoblin import messages, mg_globals from mediagoblin.media_types.blog import forms as blog_forms -from mediagoblin.media_types.blog.models import Blog, BlogPostData +from mediagoblin.media_types.blog.models import Blog from mediagoblin.media_types.blog.lib import ( - may_edit_blogpost, set_blogpost_state, get_all_blogposts_of_blog, - get_blog_by_slug) + may_edit_blogpost, set_blogpost_state, get_blog_by_slug) -from mediagoblin.decorators import (require_active_login, active_user_from_url, - get_media_entry_by_id, user_may_alter_collection, - get_user_collection, uses_pagination) +from mediagoblin.decorators import ( + require_active_login, active_user_from_url, get_media_entry_by_id, + uses_pagination) from mediagoblin.tools.pagination import Pagination from mediagoblin.tools.response import (render_to_response, redirect, render_404) from mediagoblin.tools.translate import pass_to_ugettext as _ -from mediagoblin.tools.template import render_template from mediagoblin.tools.text import ( - convert_to_tag_list_of_dicts, media_tags_as_string, clean_html, + convert_to_tag_list_of_dicts, media_tags_as_string, cleaned_markdown_conversion) -from mediagoblin.db.util import check_media_slug_used, check_collection_slug_used -from mediagoblin.db.models import User, Collection, MediaEntry, LocalUser +from mediagoblin.db.models import MediaEntry, LocalUser from mediagoblin.notifications import add_comment_subscription +_log = logging.getLogger(__name__) + @require_active_login def blog_edit(request): diff --git a/mediagoblin/media_types/video/transcoders.py b/mediagoblin/media_types/video/transcoders.py index 2d03bf4c..d2b19787 100644 --- a/mediagoblin/media_types/video/transcoders.py +++ b/mediagoblin/media_types/video/transcoders.py @@ -20,9 +20,7 @@ import sys import logging import multiprocessing -from mediagoblin import mg_globals as mgg from mediagoblin.media_types.tools import discover -from mediagoblin.tools.translate import lazy_pass_to_ugettext as _ from .util import ACCEPTED_RESOLUTIONS #os.environ['GST_DEBUG'] = '4,python:4' diff --git a/mediagoblin/moderation/views.py b/mediagoblin/moderation/views.py index 90a7e95f..fe360d23 100644 --- a/mediagoblin/moderation/views.py +++ b/mediagoblin/moderation/views.py @@ -84,8 +84,6 @@ def moderation_users_detail(request): ).first() active_reports = user.reports_filed_on.filter( Report.resolved==None).limit(5) - closed_reports = user.reports_filed_on.filter( - Report.resolved!=None).all() privileges = Privilege.query user_banned = UserBan.query.get(user.id) ban_form = moderation_forms.BanForm() @@ -93,11 +91,11 @@ def moderation_users_detail(request): return render_to_response( request, 'mediagoblin/moderation/user.html', - {'user':user, + {'user': user, 'privileges': privileges, - 'reports':active_reports, - 'user_banned':user_banned, - 'ban_form':ban_form}) + 'reports': active_reports, + 'user_banned': user_banned, + 'ban_form': ban_form}) @require_admin_or_moderator_login @allow_reporting diff --git a/mediagoblin/plugins/api/tools.py b/mediagoblin/plugins/api/tools.py index 79c63435..31115119 100644 --- a/mediagoblin/plugins/api/tools.py +++ b/mediagoblin/plugins/api/tools.py @@ -15,11 +15,9 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. import logging -import json from functools import wraps from werkzeug.exceptions import Forbidden -from werkzeug.wrappers import Response from urllib.parse import urljoin @@ -48,10 +46,11 @@ class Auth: method. ''' def trigger(self, request): - raise NotImplemented() + raise NotImplementedError() def __call__(self, request, *args, **kw): - raise NotImplemented() + raise NotImplementedError() + def get_entry_serializable(entry, urlgen): ''' diff --git a/mediagoblin/plugins/api/views.py b/mediagoblin/plugins/api/views.py index 85254a8c..9da2e977 100644 --- a/mediagoblin/plugins/api/views.py +++ b/mediagoblin/plugins/api/views.py @@ -26,9 +26,9 @@ from mediagoblin.decorators import require_active_login from mediagoblin.meddleware.csrf import csrf_exempt from mediagoblin.media_types import FileTypeNotSupported from mediagoblin.plugins.api.tools import api_auth, get_entry_serializable -from mediagoblin.submit.lib import \ - check_file_field, submit_media, get_upload_file_limits, \ - FileUploadLimit, UserUploadLimit, UserPastUploadLimit +from mediagoblin.submit.lib import ( + check_file_field, submit_media, FileUploadLimit, UserUploadLimit, + UserPastUploadLimit) _log = logging.getLogger(__name__) diff --git a/mediagoblin/plugins/archivalook/tools.py b/mediagoblin/plugins/archivalook/tools.py index a7d3e1f4..a9ea7846 100644 --- a/mediagoblin/plugins/archivalook/tools.py +++ b/mediagoblin/plugins/archivalook/tools.py @@ -13,10 +13,10 @@ # # 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/>. -from mediagoblin.db.models import MediaEntry, User, LocalUser +from mediagoblin.db.models import MediaEntry, LocalUser from mediagoblin.plugins.archivalook.models import FeaturedMedia from mediagoblin.tools.translate import lazy_pass_to_ugettext as _ -from mediagoblin.plugins.archivalook.models import FeaturedMedia + def get_media_entry_from_uploader_slug(uploader_username, slug): """ diff --git a/mediagoblin/plugins/archivalook/views.py b/mediagoblin/plugins/archivalook/views.py index ca832a5c..f64ea7f0 100644 --- a/mediagoblin/plugins/archivalook/views.py +++ b/mediagoblin/plugins/archivalook/views.py @@ -31,7 +31,7 @@ from mediagoblin.plugins.archivalook.models import FeaturedMedia from mediagoblin.plugins.archivalook.utils import feature_template from mediagoblin.plugins.archivalook.tools import (promote_feature, demote_feature) -from mediagoblin.tools.translate import lazy_pass_to_ugettext as _ + @user_not_banned def root_view(request): @@ -126,7 +126,7 @@ def feature_media(request, media, **kwargs): already_featured_media_ids = [f.media_entry.id for f in FeaturedMedia.query.all()] if not media.id in already_featured_media_ids: - new_feature = automatically_add_new_feature(media) + automatically_add_new_feature(media) return redirect( request, 'index') diff --git a/mediagoblin/plugins/ldap/views.py b/mediagoblin/plugins/ldap/views.py index 94af5465..f24c55d0 100644 --- a/mediagoblin/plugins/ldap/views.py +++ b/mediagoblin/plugins/ldap/views.py @@ -16,7 +16,7 @@ from mediagoblin import mg_globals, messages from mediagoblin.auth.tools import register_user -from mediagoblin.db.models import User, LocalUser +from mediagoblin.db.models import LocalUser from mediagoblin.decorators import allow_registration, auth_enabled from mediagoblin.plugins.ldap import forms from mediagoblin.plugins.ldap.tools import LDAP diff --git a/mediagoblin/plugins/openid/__init__.py b/mediagoblin/plugins/openid/__init__.py index b26087a2..5566c0ce 100644 --- a/mediagoblin/plugins/openid/__init__.py +++ b/mediagoblin/plugins/openid/__init__.py @@ -13,8 +13,8 @@ # # 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/>. + import os -import uuid from sqlalchemy import or_ diff --git a/mediagoblin/plugins/piwigo/views.py b/mediagoblin/plugins/piwigo/views.py index 5294a386..d94e197d 100644 --- a/mediagoblin/plugins/piwigo/views.py +++ b/mediagoblin/plugins/piwigo/views.py @@ -24,10 +24,9 @@ from mediagoblin.tools.translate import pass_to_ugettext as _ from mediagoblin.meddleware.csrf import csrf_exempt from mediagoblin.auth.tools import check_login_simple from mediagoblin.submit.lib import \ - submit_media, check_file_field, get_upload_file_limits, \ + submit_media, check_file_field, \ FileUploadLimit, UserUploadLimit, UserPastUploadLimit - from mediagoblin.user_pages.lib import add_media_to_collection from mediagoblin.db.models import Collection diff --git a/mediagoblin/plugins/subtitles/models.py b/mediagoblin/plugins/subtitles/models.py index f71fb173..eb78147c 100644 --- a/mediagoblin/plugins/subtitles/models.py +++ b/mediagoblin/plugins/subtitles/models.py @@ -13,11 +13,12 @@ # # 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/>. + from sqlalchemy import Column, Integer, Unicode, ForeignKey from sqlalchemy.orm import relationship -from mediagoblin.db.models import User -from mediagoblin.db.base import Base,MediaEntry +from mediagoblin.db.base import Base, MediaEntry + class MediaSubtitleFile(Base): __tablename__ = "core__subtitle_files" diff --git a/mediagoblin/plugins/subtitles/views.py b/mediagoblin/plugins/subtitles/views.py index 75090ea0..9b05e535 100644 --- a/mediagoblin/plugins/subtitles/views.py +++ b/mediagoblin/plugins/subtitles/views.py @@ -16,24 +16,20 @@ from datetime import datetime -from itsdangerous import BadSignature -from werkzeug.exceptions import Forbidden from werkzeug.utils import secure_filename from mediagoblin import messages from mediagoblin import mg_globals from mediagoblin.plugins.subtitles import forms -from mediagoblin.decorators import (require_active_login, active_user_from_url, +from mediagoblin.decorators import (require_active_login, get_media_entry_by_id, user_may_delete_media) -from mediagoblin.tools.metadata import (compact_and_validate, DEFAULT_CHECKER, - DEFAULT_SCHEMA) from mediagoblin.tools.response import (render_to_response, - redirect, redirect_obj, render_404) + redirect) import mimetypes -from mediagoblin.plugins.subtitles.tools import open_subtitle,save_subtitle +from mediagoblin.plugins.subtitles.tools import open_subtitle, save_subtitle UNSAFE_MIMETYPES = [ 'text/html', diff --git a/mediagoblin/submit/views.py b/mediagoblin/submit/views.py index 6446edd3..b64583bc 100644 --- a/mediagoblin/submit/views.py +++ b/mediagoblin/submit/views.py @@ -109,7 +109,7 @@ def submit_start(request): user=request.user.username) except FileTypeNotSupported as e: submit_form.file.errors.append(e) - except Exception as e: + except Exception: raise return render_to_response( diff --git a/mediagoblin/tools/pluginapi.py b/mediagoblin/tools/pluginapi.py index 9f74b252..1f1d9bbd 100644 --- a/mediagoblin/tools/pluginapi.py +++ b/mediagoblin/tools/pluginapi.py @@ -58,8 +58,6 @@ Lifecycle import logging -from functools import wraps - from mediagoblin import mg_globals diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py index f50d52f1..4df536cb 100644 --- a/mediagoblin/user_pages/views.py +++ b/mediagoblin/user_pages/views.py @@ -19,9 +19,8 @@ import datetime import json from mediagoblin import messages, mg_globals -from mediagoblin.db.models import (MediaEntry, MediaTag, Collection, Comment, - CollectionItem, LocalUser, Activity, \ - GenericModelReference) +from mediagoblin.db.models import (MediaEntry, MediaTag, Collection, + CollectionItem, LocalUser, Activity) from mediagoblin.plugins.api.tools import get_media_file_paths from mediagoblin.tools.response import render_to_response, render_404, \ redirect, redirect_obj @@ -31,8 +30,8 @@ from mediagoblin.tools.pagination import Pagination from mediagoblin.tools.federation import create_activity from mediagoblin.tools.feeds import AtomFeedWithLinks from mediagoblin.user_pages import forms as user_forms -from mediagoblin.user_pages.lib import (send_comment_email, - add_media_to_collection, build_report_object) +from mediagoblin.user_pages.lib import ( + add_media_to_collection, build_report_object) from mediagoblin.notifications import trigger_notification, \ add_comment_subscription, mark_comment_notification_seen from mediagoblin.tools.pluginapi import hook_transform @@ -50,6 +49,7 @@ from werkzeug.wrappers import Response _log = logging.getLogger(__name__) _log.setLevel(logging.DEBUG) + @user_not_banned @uses_pagination def user_home(request, page): @@ -64,7 +64,7 @@ def user_home(request, page): {'user': user}) cursor = MediaEntry.query.\ - filter_by(actor = user.id).order_by(MediaEntry.created.desc()) + filter_by(actor=user.id).order_by(MediaEntry.created.desc()) pagination = Pagination(page, cursor) media_entries = pagination() @@ -438,7 +438,6 @@ def collection_item_confirm_remove(request, collection_item): form = user_forms.ConfirmCollectionItemRemoveForm(request.form) if request.method == 'POST' and form.validate(): - username = collection_item.in_collection.get_actor.username collection = collection_item.in_collection if form.confirm.data is True: @@ -639,7 +638,7 @@ def collection_atom_feed(request): 'rel': 'hub', 'href': push_url}) - feed = AtomFeed( + feed = AtomFeedWithLinks( "MediaGoblin: Feed for %s's collection %s" % (request.matchdict['user'], collection.title), feed_url=request.url, |