From a52eb3ddc236dbaa596a9279110db88ed6986ffa Mon Sep 17 00:00:00 2001 From: albert Date: Sun, 17 Mar 2013 23:13:47 -0400 Subject: [PATCH] fixes #848 --- app/logical/anonymous_user.rb | 4 ++++ app/models/user.rb | 2 +- app/presenters/post_presenter.rb | 2 +- app/views/posts/partials/show/_nav_links.html.erb | 2 +- app/views/users/edit.html.erb | 1 + ...130318030619_add_enable_post_seq_navigation_to_users.rb | 6 ++++++ db/structure.sql | 7 +++++-- 7 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 db/migrate/20130318030619_add_enable_post_seq_navigation_to_users.rb diff --git a/app/logical/anonymous_user.rb b/app/logical/anonymous_user.rb index 3e446ad4e..80f764062 100644 --- a/app/logical/anonymous_user.rb +++ b/app/logical/anonymous_user.rb @@ -161,6 +161,10 @@ class AnonymousUser false end + def enable_sequential_post_navigation + true + end + %w(member banned privileged builder platinum contributor janitor moderator admin).each do |name| define_method("is_#{name}?") do false diff --git a/app/models/user.rb b/app/models/user.rb index 4f291457d..c8e953145 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -17,7 +17,7 @@ class User < ActiveRecord::Base end attr_accessor :password, :old_password - attr_accessible :enable_privacy_mode, :enable_post_navigation, :new_post_navigation_layout, :password, :old_password, :password_confirmation, :password_hash, :email, :last_logged_in_at, :last_forum_read_at, :has_mail, :receive_email_notifications, :comment_threshold, :always_resize_images, :favorite_tags, :blacklisted_tags, :name, :ip_addr, :time_zone, :default_image_size, :as => [:moderator, :janitor, :contributor, :privileged, :member, :anonymous, :default, :builder, :admin] + attr_accessible :enable_privacy_mode, :enable_post_navigation, :new_post_navigation_layout, :password, :old_password, :password_confirmation, :password_hash, :email, :last_logged_in_at, :last_forum_read_at, :has_mail, :receive_email_notifications, :comment_threshold, :always_resize_images, :favorite_tags, :blacklisted_tags, :name, :ip_addr, :time_zone, :default_image_size, :enable_sequential_post_navigation, :as => [:moderator, :janitor, :contributor, :privileged, :member, :anonymous, :default, :builder, :admin] attr_accessible :level, :as => :admin validates_length_of :name, :within => 2..100, :on => :create validates_format_of :name, :with => /\A[^\s:]+\Z/, :on => :create, :message => "cannot have whitespace or colons" diff --git a/app/presenters/post_presenter.rb b/app/presenters/post_presenter.rb index 550e8f2fb..dc51bc6b4 100644 --- a/app/presenters/post_presenter.rb +++ b/app/presenters/post_presenter.rb @@ -86,7 +86,7 @@ class PostPresenter < Presenter end def has_nav_links?(template) - (template.params[:tags].present? && template.params[:tags] !~ /order:/) || @post.pools.active.any? + (CurrentUser.user.enable_sequential_post_navigation && template.params[:tags].present? && template.params[:tags] !~ /order:/) || @post.pools.active.any? end def post_footer_for_pool_html(template) diff --git a/app/views/posts/partials/show/_nav_links.html.erb b/app/views/posts/partials/show/_nav_links.html.erb index d2e324de3..12cea89dc 100644 --- a/app/views/posts/partials/show/_nav_links.html.erb +++ b/app/views/posts/partials/show/_nav_links.html.erb @@ -1,6 +1,6 @@ <% if (position == "bottom" && CurrentUser.user.new_post_navigation_layout) || (position == "top" && !CurrentUser.user.new_post_navigation_layout) %>