Being much more aggressive about certain sites trying to take over the iframe. Blocking nytimes.com, twitter.com, and stackoverflow.com from even allowing an Original view.

This commit is contained in:
Samuel Clay 2012-05-07 16:26:31 -07:00
parent f683d9bd26
commit 1bb442a9d0
3 changed files with 33 additions and 2 deletions

View file

@ -32,6 +32,12 @@ from utils.diff import HTMLDiff
ENTRY_NEW, ENTRY_UPDATED, ENTRY_SAME, ENTRY_ERR = range(4)
BROKEN_PAGE_URLS = [
'nytimes.com',
'stackoverflow.com',
'twitter.com',
]
class Feed(models.Model):
feed_address = models.URLField(max_length=255, db_index=True)
feed_address_locked = models.NullBooleanField(default=False, blank=True, null=True)
@ -111,6 +117,11 @@ class Feed(models.Model):
feed['exception_type'] = None
feed['exception_code'] = self.exception_code
for broken_page in BROKEN_PAGE_URLS:
if broken_page in self.feed_link:
feed['disabled_page'] = True
break
if full:
feed['feed_tags'] = json.decode(self.data.popular_tags) if self.data.popular_tags else []
feed['feed_authors'] = json.decode(self.data.popular_authors) if self.data.popular_authors else []

View file

@ -2491,12 +2491,18 @@ background: transparent;
.NB-taskbar .task_button.task_view_page.NB-exception-page .NB-task-image {
background-image: url('/media/embed/icons/silk/exclamation.png');
}
.NB-taskbar .task_button.task_view_page.NB-disabled-page .NB-task-image {
background-image: url('/media/embed/icons/silk/error.png');
}
.NB-taskbar .task_button.task_view_feed .NB-task-image {
background: transparent url('/media/embed/icons/silk/application_view_list.png') no-repeat 0 0;
}
.NB-taskbar .task_button.task_view_story .NB-task-image {
background: transparent url('/media/embed/icons/silk/application_view_gallery.png') no-repeat 0 0;
}
.NB-taskbar .task_button.task_view_story.NB-disabled-page .NB-task-image {
background-image: url('/media/embed/icons/silk/error.png');
}
.NB-taskbar .task_button.task_story_next_positive .NB-task-image {
background: transparent url('/media/embed/icons/silk/bullet_green.png') no-repeat 0 0;
}

View file

@ -1753,6 +1753,7 @@
$('.NB-selected', this.$s.$feed_list).removeClass('NB-selected');
this.$s.$body.removeClass('NB-view-river');
$('.task_view_page', this.$s.$taskbar).removeClass('NB-disabled');
$('.task_view_story', this.$s.$taskbar).removeClass('NB-disabled');
$('.task_view_page', this.$s.$taskbar).removeClass('NB-task-return');
this.hide_content_pane_feed_counter();
// $('.feed_counts_floater').remove();
@ -1913,8 +1914,20 @@
view = 'feed';
}
$('.task_view_page').addClass('NB-exception-page');
} else if (feed && feed.disabled_page) {
if (view == 'page') {
view = 'feed';
}
$('.task_view_page').addClass('NB-disabled-page')
.addClass('NB-disabled');
$('.task_view_story').addClass('NB-disabled-page')
.addClass('NB-disabled');
} else {
$('.task_view_page').removeClass('NB-exception-page');
$('.task_view_page').removeClass('NB-disabled-page')
.removeClass('NB-disabled')
.removeClass('NB-exception-page');
$('.task_view_story').removeClass('NB-disabled-page')
.removeClass('NB-disabled');
}
this.story_view = view;
@ -3079,7 +3092,6 @@
unload_feed_iframe: function() {
var $feed_iframe = this.$s.$feed_iframe;
var $taskbar_view_page = $('.NB-taskbar .task_view_page');
$taskbar_view_page.removeClass('NB-disabled');
$taskbar_view_page.removeClass('NB-task-return');
this.flags['iframe_view_loaded'] = false;
@ -4023,6 +4035,8 @@
if (view == 'page' && feed && feed.has_exception && feed.exception_type == 'page') {
this.open_feed_exception_modal(this.active_feed);
return;
} else if (_.contains(['page', 'story'], view) && feed && feed.disabled_page) {
view = 'feed';
} else if ($('.task_button_view.task_view_'+view).hasClass('NB-disabled')) {
return;
}