diff --git a/apps/profile/views.py b/apps/profile/views.py index 8ff2f9862..a4126e6ad 100644 --- a/apps/profile/views.py +++ b/apps/profile/views.py @@ -25,6 +25,7 @@ def set_preference(request): preferences = json.decode(request.user.profile.preferences) for preference_name, preference_value in new_preferences.items(): + if preference_value in ['true','false']: preference_value = True if preference_value == 'true' else False if preference_name in SINGLE_FIELD_PREFS: setattr(request.user.profile, preference_name, preference_value) elif preference_name in SPECIAL_PREFERENCES: diff --git a/media/js/newsblur/reader.js b/media/js/newsblur/reader.js index 884ac0a46..a1d958da3 100644 --- a/media/js/newsblur/reader.js +++ b/media/js/newsblur/reader.js @@ -3111,9 +3111,24 @@ }, open_tutorial_modal: function() { + this.model.preference('tutorial_finished', false); NEWSBLUR.tutorial = new NEWSBLUR.ReaderTutorial(); }, + hide_tutorial: function() { + var $tutorial = $('.NB-module-tutorial'); + + this.model.preference('tutorial_finished', true); + $tutorial.animate({ + 'opacity': 0 + }, { + 'duration': 500, + 'complete': function() { + $tutorial.slideUp(350); + } + }); + }, + // ========================== // = Story Pane - Feed View = // ========================== @@ -5529,6 +5544,12 @@ self.open_tutorial_modal(); } }); + $.targetIs(e, { tagSelector: '.NB-module-tutorial-hide' }, function($t, $p){ + e.preventDefault(); + if (!$t.hasClass('NB-disabled')) { + self.hide_tutorial(); + } + }); $.targetIs(e, { tagSelector: '.NB-menu-manage-story-unread' }, function($t, $p){ e.preventDefault(); diff --git a/media/js/newsblur/reader_tutorial.js b/media/js/newsblur/reader_tutorial.js index 7cd9d2674..de8c4e009 100644 --- a/media/js/newsblur/reader_tutorial.js +++ b/media/js/newsblur/reader_tutorial.js @@ -88,6 +88,13 @@ _.extend(NEWSBLUR.ReaderTutorial.prototype, { ])); }, + close: function() { + _.delay(function() { + NEWSBLUR.reader.hide_tutorial(); + }, 500); + NEWSBLUR.Modal.prototype.close.call(this); + }, + // =========== // = Actions = // =========== diff --git a/templates/base.html b/templates/base.html index fdddd16b8..939e7c287 100644 --- a/templates/base.html +++ b/templates/base.html @@ -25,6 +25,7 @@ 'unread_view' : 0, 'lock_mouse_indicator' : 0, 'feed_pane_size' : {{ user_profile.feed_pane_size }}, + 'tutorial_finished' : {{ user_profile.tutorial_finished|yesno:"true,false" }}, 'story_titles_pane_size' : 168, 'new_window' : 1, 'default_view' : 'page', diff --git a/templates/reader/feeds.xhtml b/templates/reader/feeds.xhtml index 821d00e40..e81c5545d 100644 --- a/templates/reader/feeds.xhtml +++ b/templates/reader/feeds.xhtml @@ -323,30 +323,32 @@ $(document).ready(function() { -