def update_callback(self, ids): failed_feeds = [] feeds = Feed.query.filter(Feed.id.in_(ids)).all() app.logger.info(u"Admin Updating Callback URL for Feeds: {0}".format(u", ".join(map(str, feeds)))) for feed in feeds: if feed.status != STATUS.UNSUBSCRIBED: try: result = subscriber.unsubscribe(feed.topic) if result[0] in [200, 202, 204]: feed.callback_url = get_public_url(feed) result = subscriber.subscribe(feed.topic, find_feed=False) flash_status(result) db.session.add(feed) else: failed_feeds.append(feed) except Exception as e: app.logger.error(str(e)) flash(str(e), ALERT.ERROR) else: feed.callback_url = get_public_url(feed) db.session.add(feed) db.session.commit() if failed_feeds: flash(u"Callback URL Update failed for: {0}".format(u", ".join(map(str, failed_feeds)))) return redirect(url_for("feedview.index_view"))
def unsubscribe(self, ids): feeds = Feed.query.filter(Feed.id.in_(ids)).all() app.logger.info(u"Admin Unsubscribing from Feeds: {0}".format(u", ".join(map(str, feeds)))) for feed in feeds: try: result = subscriber.unsubscribe(feed.topic) flash_status(result) except Exception as e: app.logger.error(str(e)) flash(str(e), ALERT.ERROR) return redirect(url_for("feedview.index_view"))