From 54ca90a381b73269a99828930928339f4f95f314 Mon Sep 17 00:00:00 2001 From: Toks Date: Tue, 14 May 2013 08:48:45 -0400 Subject: [PATCH 01/34] don't scroll back up to offscreen textarea --- app/assets/javascripts/related_tag.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/related_tag.js b/app/assets/javascripts/related_tag.js index 645184b74..77d14a0ae 100644 --- a/app/assets/javascripts/related_tag.js +++ b/app/assets/javascripts/related_tag.js @@ -226,7 +226,10 @@ Danbooru.RelatedTag.process_artist(Danbooru.RelatedTag.recent_artist); } - $field.focus(); + if ($(window).scrollTop() <= $field.offset().top) { + $field.focus(); + } + e.preventDefault(); } From 968c1d14f687efe50e4257b8ed9e546c6dfd727c Mon Sep 17 00:00:00 2001 From: Toks Date: Tue, 14 May 2013 08:53:50 -0400 Subject: [PATCH 02/34] better fix for not scrolling textarea --- app/assets/javascripts/related_tag.js | 4 +--- app/assets/javascripts/utility.js | 7 +++++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/related_tag.js b/app/assets/javascripts/related_tag.js index 77d14a0ae..44037b555 100644 --- a/app/assets/javascripts/related_tag.js +++ b/app/assets/javascripts/related_tag.js @@ -226,9 +226,7 @@ Danbooru.RelatedTag.process_artist(Danbooru.RelatedTag.recent_artist); } - if ($(window).scrollTop() <= $field.offset().top) { - $field.focus(); - } + $field.focusWithoutScroll(); e.preventDefault(); } diff --git a/app/assets/javascripts/utility.js b/app/assets/javascripts/utility.js index 42251bab7..48b3c0119 100644 --- a/app/assets/javascripts/utility.js +++ b/app/assets/javascripts/utility.js @@ -103,4 +103,11 @@ this.selectRange(this.val().length, this.val().length); return this; } + + $.fn.focusWithoutScroll = function(){ + var x = window.scrollX; + var y = window.scrollY; + this.focus(); + window.scrollTo(x, y); + }; })(); From f0af0bf5d1321678bf16e73a120ad2be23036aaf Mon Sep 17 00:00:00 2001 From: Toks Date: Tue, 14 May 2013 09:33:53 -0400 Subject: [PATCH 03/34] fixes #1612 --- app/logical/post_sets/favorite.rb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/logical/post_sets/favorite.rb b/app/logical/post_sets/favorite.rb index f5bae6a00..b0d051260 100644 --- a/app/logical/post_sets/favorite.rb +++ b/app/logical/post_sets/favorite.rb @@ -6,10 +6,6 @@ module PostSets @params = params @user = ::User.find(user_id) @favorites = ::Favorite.for_user(user.id).paginate(page, :limit => limit).order("favorites.id desc") - - if CurrentUser.user.hide_deleted_posts? - @favorites = @favorites.where("is_deleted = false") - end end def limit From 6ca588f2e0de0d4fd6f5cc1bffacabb9033d2d90 Mon Sep 17 00:00:00 2001 From: Toks Date: Tue, 14 May 2013 12:02:35 -0400 Subject: [PATCH 04/34] fixes #1549 --- app/models/upload.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/upload.rb b/app/models/upload.rb index fbfae20ef..cac56aca2 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -192,9 +192,9 @@ class Upload < ActiveRecord::Base self.tag_string = "#{tag_string} lowres".strip end - if image_width >= 1024 && image_width.to_f / image_height >= 3 + if image_width >= 1024 && image_width.to_f / image_height >= 4 self.tag_string = "#{tag_string} wide_image".strip - elsif image_height >= 1024 && image_height.to_f / image_width >= 3 + elsif image_height >= 1024 && image_height.to_f / image_width >= 4 self.tag_string = "#{tag_string} tall_image".strip end end From 9ccf1e0f8fb3bb0dedc2d8645b89f611b39aaece Mon Sep 17 00:00:00 2001 From: Toks Date: Wed, 15 May 2013 01:01:19 -0400 Subject: [PATCH 05/34] add limit parameter to everything --- app/controllers/artist_versions_controller.rb | 2 +- app/controllers/artists_controller.rb | 2 +- app/controllers/bans_controller.rb | 2 +- app/controllers/comments_controller.rb | 2 +- app/controllers/delayed_jobs_controller.rb | 2 +- app/controllers/dmails_controller.rb | 2 +- app/controllers/forum_posts_controller.rb | 2 +- app/controllers/forum_topics_controller.rb | 2 +- app/controllers/ip_bans_controller.rb | 2 +- app/controllers/janitor_trials_controller.rb | 2 +- app/controllers/mod_actions_controller.rb | 2 +- app/controllers/news_updates_controller.rb | 2 +- app/controllers/note_versions_controller.rb | 2 +- app/controllers/pool_versions_controller.rb | 2 +- app/controllers/pools_controller.rb | 2 +- app/controllers/post_appeals_controller.rb | 2 +- app/controllers/post_flags_controller.rb | 2 +- app/controllers/post_versions_controller.rb | 2 +- app/controllers/tag_aliases_controller.rb | 2 +- app/controllers/tag_implications_controller.rb | 2 +- app/controllers/tag_subscriptions_controller.rb | 2 +- app/controllers/tags_controller.rb | 2 +- app/controllers/uploads_controller.rb | 2 +- app/controllers/user_feedbacks_controller.rb | 2 +- app/controllers/user_name_change_requests_controller.rb | 2 +- app/controllers/users_controller.rb | 2 +- app/controllers/wiki_page_versions_controller.rb | 2 +- app/controllers/wiki_pages_controller.rb | 2 +- 28 files changed, 28 insertions(+), 28 deletions(-) diff --git a/app/controllers/artist_versions_controller.rb b/app/controllers/artist_versions_controller.rb index b4f42e1a0..914f9f79b 100644 --- a/app/controllers/artist_versions_controller.rb +++ b/app/controllers/artist_versions_controller.rb @@ -2,7 +2,7 @@ class ArtistVersionsController < ApplicationController respond_to :html, :xml, :json def index - @artist_versions = ArtistVersion.search(params[:search]).order("id desc").paginate(params[:page], :search_count => params[:search]) + @artist_versions = ArtistVersion.search(params[:search]).order("id desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@artist_versions) do |format| format.xml do render :xml => @artist_versions.to_xml(:root => "artist-versions") diff --git a/app/controllers/artists_controller.rb b/app/controllers/artists_controller.rb index f6fcc5e15..24269e01b 100644 --- a/app/controllers/artists_controller.rb +++ b/app/controllers/artists_controller.rb @@ -32,7 +32,7 @@ class ArtistsController < ApplicationController end def index - @artists = Artist.search(params[:search] || params).order("id desc").paginate(params[:page]) + @artists = Artist.search(params[:search] || params).order("id desc").paginate(params[:page], :limit => params[:limit]) respond_with(@artists) do |format| format.xml do render :xml => @artists.to_xml(:include => [:urls], :root => "artists") diff --git a/app/controllers/bans_controller.rb b/app/controllers/bans_controller.rb index d31787883..efd5419a1 100644 --- a/app/controllers/bans_controller.rb +++ b/app/controllers/bans_controller.rb @@ -11,7 +11,7 @@ class BansController < ApplicationController def index @search = Ban.search(params[:search]).order("id desc") - @bans = @search.paginate(params[:page]) + @bans = @search.paginate(params[:page], :limit => params[:limit]) end def show diff --git a/app/controllers/comments_controller.rb b/app/controllers/comments_controller.rb index a46c85ae6..6f64a7e3c 100644 --- a/app/controllers/comments_controller.rb +++ b/app/controllers/comments_controller.rb @@ -83,7 +83,7 @@ private end def index_by_comment - @comments = Comment.search(params[:search]).order("comments.id DESC").paginate(params[:page], :search_count => params[:search]) + @comments = Comment.search(params[:search]).order("comments.id DESC").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@comments) do |format| format.html {render :action => "index_by_comment"} format.xml do diff --git a/app/controllers/delayed_jobs_controller.rb b/app/controllers/delayed_jobs_controller.rb index 90d6f03c3..5897ac68b 100644 --- a/app/controllers/delayed_jobs_controller.rb +++ b/app/controllers/delayed_jobs_controller.rb @@ -1,5 +1,5 @@ class DelayedJobsController < ApplicationController def index - @delayed_jobs = Delayed::Job.order("created_at desc").paginate(params[:page]) + @delayed_jobs = Delayed::Job.order("created_at desc").paginate(params[:page], :limit => params[:limit]) end end diff --git a/app/controllers/dmails_controller.rb b/app/controllers/dmails_controller.rb index 30759c3c5..19231a5af 100644 --- a/app/controllers/dmails_controller.rb +++ b/app/controllers/dmails_controller.rb @@ -16,7 +16,7 @@ class DmailsController < ApplicationController def index cookies[:dmail_folder] = params[:folder] @search = Dmail.visible.search(params[:search]) - @dmails = @search.order("dmails.created_at desc").paginate(params[:page]) + @dmails = @search.order("dmails.created_at desc").paginate(params[:page], :limit => params[:limit]) respond_with(@dmails) do |format| format.xml do render :xml => @dmails.to_xml(:root => "dmails") diff --git a/app/controllers/forum_posts_controller.rb b/app/controllers/forum_posts_controller.rb index a53a72a20..65e571ff4 100644 --- a/app/controllers/forum_posts_controller.rb +++ b/app/controllers/forum_posts_controller.rb @@ -21,7 +21,7 @@ class ForumPostsController < ApplicationController else @search = ForumPost.active.search(params[:search]) end - @forum_posts = @search.order("forum_posts.id DESC").paginate(params[:page], :search_count => params[:search]) + @forum_posts = @search.order("forum_posts.id DESC").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@forum_posts) do |format| format.xml do render :xml => @forum_posts.to_xml(:root => "forum-posts") diff --git a/app/controllers/forum_topics_controller.rb b/app/controllers/forum_topics_controller.rb index 956db790f..0ff5a0c4c 100644 --- a/app/controllers/forum_topics_controller.rb +++ b/app/controllers/forum_topics_controller.rb @@ -19,7 +19,7 @@ class ForumTopicsController < ApplicationController def index @search = ForumTopic.active.search(params[:search]) - @forum_topics = @search.order("is_sticky DESC, updated_at DESC").paginate(params[:page], :search_count => params[:search]) + @forum_topics = @search.order("is_sticky DESC, updated_at DESC").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@forum_topics) do |format| format.xml do render :xml => @forum_topics.to_xml(:root => "forum-topics") diff --git a/app/controllers/ip_bans_controller.rb b/app/controllers/ip_bans_controller.rb index 9873ee26f..e28b006c3 100644 --- a/app/controllers/ip_bans_controller.rb +++ b/app/controllers/ip_bans_controller.rb @@ -17,7 +17,7 @@ class IpBansController < ApplicationController def index @search = IpBan.search(params[:search]) - @ip_bans = @search.order("id desc").paginate(params[:page]) + @ip_bans = @search.order("id desc").paginate(params[:page], :limit => params[:limit]) end def destroy diff --git a/app/controllers/janitor_trials_controller.rb b/app/controllers/janitor_trials_controller.rb index d2f35e324..21fa74fd0 100644 --- a/app/controllers/janitor_trials_controller.rb +++ b/app/controllers/janitor_trials_controller.rb @@ -14,7 +14,7 @@ class JanitorTrialsController < ApplicationController def index @search = JanitorTrial.search(params[:search]) - @janitor_trials = @search.order("id desc").paginate(params[:page]) + @janitor_trials = @search.order("id desc").paginate(params[:page], :limit => params[:limit]) respond_with(@janitor_trials) end diff --git a/app/controllers/mod_actions_controller.rb b/app/controllers/mod_actions_controller.rb index 4197e2718..0533d7e34 100644 --- a/app/controllers/mod_actions_controller.rb +++ b/app/controllers/mod_actions_controller.rb @@ -1,5 +1,5 @@ class ModActionsController < ApplicationController def index - @mod_actions = ModAction.search(params[:search]).order("id desc").paginate(params[:page]) + @mod_actions = ModAction.search(params[:search]).order("id desc").paginate(params[:page], :limit => params[:limit]) end end diff --git a/app/controllers/news_updates_controller.rb b/app/controllers/news_updates_controller.rb index 784186b02..f9a85fb30 100644 --- a/app/controllers/news_updates_controller.rb +++ b/app/controllers/news_updates_controller.rb @@ -3,7 +3,7 @@ class NewsUpdatesController < ApplicationController respond_to :html def index - @news_updates = NewsUpdate.order("id desc").paginate(params[:page]) + @news_updates = NewsUpdate.order("id desc").paginate(params[:page], :limit => params[:limit]) respond_with(@news_updates) end diff --git a/app/controllers/note_versions_controller.rb b/app/controllers/note_versions_controller.rb index be3ef428f..cfc9c8414 100644 --- a/app/controllers/note_versions_controller.rb +++ b/app/controllers/note_versions_controller.rb @@ -3,7 +3,7 @@ class NoteVersionsController < ApplicationController before_filter :member_only, :except => [:index, :show] def index - @note_versions = NoteVersion.search(params[:search]).order("note_versions.id desc").paginate(params[:page]) + @note_versions = NoteVersion.search(params[:search]).order("note_versions.id desc").paginate(params[:page], :limit => params[:limit]) respond_with(@note_versions) do |format| format.xml do render :xml => @note_versions.to_xml(:root => "note-versions") diff --git a/app/controllers/pool_versions_controller.rb b/app/controllers/pool_versions_controller.rb index 332d90edf..e89296fdc 100644 --- a/app/controllers/pool_versions_controller.rb +++ b/app/controllers/pool_versions_controller.rb @@ -6,7 +6,7 @@ class PoolVersionsController < ApplicationController @pool = Pool.find(params[:search][:pool_id]) end - @pool_versions = PoolVersion.search(params[:search]).order("updated_at desc").paginate(params[:page], :search_count => params[:search]) + @pool_versions = PoolVersion.search(params[:search]).order("updated_at desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@pool_versions) do |format| format.xml do render :xml => @pool_versions.to_xml(:root => "pool-versions") diff --git a/app/controllers/pools_controller.rb b/app/controllers/pools_controller.rb index 7c3aeb6e5..2fbc70ca9 100644 --- a/app/controllers/pools_controller.rb +++ b/app/controllers/pools_controller.rb @@ -15,7 +15,7 @@ class PoolsController < ApplicationController end def index - @pools = Pool.active.search(params[:search]).order("updated_at desc").paginate(params[:page], :search_count => params[:search]) + @pools = Pool.active.search(params[:search]).order("updated_at desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@pools) do |format| format.xml do render :xml => @pools.to_xml(:root => "pools") diff --git a/app/controllers/post_appeals_controller.rb b/app/controllers/post_appeals_controller.rb index ddf1fc646..7ed567cf3 100644 --- a/app/controllers/post_appeals_controller.rb +++ b/app/controllers/post_appeals_controller.rb @@ -10,7 +10,7 @@ class PostAppealsController < ApplicationController def index @search = PostAppeal.order("id desc").search(params[:search]) - @post_appeals = @search.paginate(params[:page]) + @post_appeals = @search.paginate(params[:page], :limit => params[:limit]) respond_with(@post_appeals) do |format| format.xml do render :xml => @post_appeals.to_xml(:root => "post-appeals") diff --git a/app/controllers/post_flags_controller.rb b/app/controllers/post_flags_controller.rb index b7738bc74..709212a12 100644 --- a/app/controllers/post_flags_controller.rb +++ b/app/controllers/post_flags_controller.rb @@ -10,7 +10,7 @@ class PostFlagsController < ApplicationController def index @search = PostFlag.order("id desc").search(params[:search]) - @post_flags = @search.paginate(params[:page]) + @post_flags = @search.paginate(params[:page], :limit => params[:limit]) respond_with(@post_flags) do |format| format.xml do render :xml => @post_flags.to_xml(:root => "post-flags") diff --git a/app/controllers/post_versions_controller.rb b/app/controllers/post_versions_controller.rb index e87cd1b04..89a606214 100644 --- a/app/controllers/post_versions_controller.rb +++ b/app/controllers/post_versions_controller.rb @@ -3,7 +3,7 @@ class PostVersionsController < ApplicationController rescue_from ActiveRecord::StatementInvalid, :with => :rescue_exception def index - @post_versions = PostVersion.search(params[:search]).order("updated_at desc").paginate(params[:page], :search_count => params[:search]) + @post_versions = PostVersion.search(params[:search]).order("updated_at desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@post_versions) do |format| format.xml do render :xml => @post_versions.to_xml(:root => "post-versions") diff --git a/app/controllers/tag_aliases_controller.rb b/app/controllers/tag_aliases_controller.rb index 7f66b7d88..735f41ead 100644 --- a/app/controllers/tag_aliases_controller.rb +++ b/app/controllers/tag_aliases_controller.rb @@ -17,7 +17,7 @@ class TagAliasesController < ApplicationController def index @search = TagAlias.search(params[:search]) - @tag_aliases = @search.order("(case status when 'pending' then 0 when 'queued' then 1 else 2 end), antecedent_name, consequent_name").paginate(params[:page]) + @tag_aliases = @search.order("(case status when 'pending' then 0 when 'queued' then 1 else 2 end), antecedent_name, consequent_name").paginate(params[:page], :limit => params[:limit]) respond_with(@tag_aliases) do |format| format.xml do render :xml => @tag_aliases.to_xml(:root => "tag-aliases") diff --git a/app/controllers/tag_implications_controller.rb b/app/controllers/tag_implications_controller.rb index d60d9d7b7..49079634a 100644 --- a/app/controllers/tag_implications_controller.rb +++ b/app/controllers/tag_implications_controller.rb @@ -9,7 +9,7 @@ class TagImplicationsController < ApplicationController def index @search = TagImplication.search(params[:search]) - @tag_implications = @search.order("(case status when 'pending' then 0 when 'queued' then 1 else 2 end), antecedent_name, consequent_name").paginate(params[:page]) + @tag_implications = @search.order("(case status when 'pending' then 0 when 'queued' then 1 else 2 end), antecedent_name, consequent_name").paginate(params[:page], :limit => params[:limit]) respond_with(@tag_implications) do |format| format.xml do render :xml => @tag_implications.to_xml(:root => "tag-implications") diff --git a/app/controllers/tag_subscriptions_controller.rb b/app/controllers/tag_subscriptions_controller.rb index b1023451f..2eaa73e06 100644 --- a/app/controllers/tag_subscriptions_controller.rb +++ b/app/controllers/tag_subscriptions_controller.rb @@ -17,7 +17,7 @@ class TagSubscriptionsController < ApplicationController def index @user = CurrentUser.user @search = TagSubscription.owned_by(@user).order("name").search(params[:search]) - @tag_subscriptions = @search.paginate(params[:page]) + @tag_subscriptions = @search.paginate(params[:page], :limit => params[:limit]) respond_with(@tag_subscriptions) end diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 32f0bbaed..3a5c50838 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -9,7 +9,7 @@ class TagsController < ApplicationController end def index - @tags = Tag.search(params[:search]).paginate(params[:page], :search_count => params[:search]) + @tags = Tag.search(params[:search]).paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@tags) do |format| format.xml do render :xml => @tags.to_xml(:root => "tags") diff --git a/app/controllers/uploads_controller.rb b/app/controllers/uploads_controller.rb index 0b4f5ac3e..6f9716922 100644 --- a/app/controllers/uploads_controller.rb +++ b/app/controllers/uploads_controller.rb @@ -18,7 +18,7 @@ class UploadsController < ApplicationController def index @search = Upload.search(params[:search]) - @uploads = @search.order("id desc").paginate(params[:page]) + @uploads = @search.order("id desc").paginate(params[:page], :limit => params[:limit]) respond_with(@uploads) do |format| format.xml do render :xml => @uploads.to_xml(:root => "uploads") diff --git a/app/controllers/user_feedbacks_controller.rb b/app/controllers/user_feedbacks_controller.rb index e08ab3e03..4283faf7d 100644 --- a/app/controllers/user_feedbacks_controller.rb +++ b/app/controllers/user_feedbacks_controller.rb @@ -21,7 +21,7 @@ class UserFeedbacksController < ApplicationController def index @search = UserFeedback.search(params[:search]) - @user_feedbacks = @search.paginate(params[:page]).order("created_at desc") + @user_feedbacks = @search.paginate(params[:page], :limit => params[:limit]).order("created_at desc") respond_with(@user_feedbacks) do |format| format.xml do render :xml => @user_feedbacks.to_xml(:root => "user-feedbacks") diff --git a/app/controllers/user_name_change_requests_controller.rb b/app/controllers/user_name_change_requests_controller.rb index 4563f3000..2d9ff126a 100644 --- a/app/controllers/user_name_change_requests_controller.rb +++ b/app/controllers/user_name_change_requests_controller.rb @@ -28,7 +28,7 @@ class UserNameChangeRequestsController < ApplicationController end def index - @change_requests = UserNameChangeRequest.order("id desc").paginate(params[:page]) + @change_requests = UserNameChangeRequest.order("id desc").paginate(params[:page], :limit => params[:limit]) end def approve diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 31219a2a6..4bc03021b 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -19,7 +19,7 @@ class UsersController < ApplicationController @user = User.find_by_name(params[:name]) redirect_to user_path(@user) else - @users = User.search(params[:search]).order("users.id desc").paginate(params[:page], :search_count => params[:search]) + @users = User.search(params[:search]).order("users.id desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@users) do |format| format.xml do render :xml => @users.to_xml(:root => "users") diff --git a/app/controllers/wiki_page_versions_controller.rb b/app/controllers/wiki_page_versions_controller.rb index 685be53a1..b5fb6221a 100644 --- a/app/controllers/wiki_page_versions_controller.rb +++ b/app/controllers/wiki_page_versions_controller.rb @@ -2,7 +2,7 @@ class WikiPageVersionsController < ApplicationController respond_to :html, :xml, :json def index - @wiki_page_versions = WikiPageVersion.search(params[:search]).order("id desc").paginate(params[:page], :search_count => params[:search]) + @wiki_page_versions = WikiPageVersion.search(params[:search]).order("id desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@wiki_page_versions) do |format| format.xml do render :xml => @wiki_page_versions.to_xml(:root => "wiki-page-versions") diff --git a/app/controllers/wiki_pages_controller.rb b/app/controllers/wiki_pages_controller.rb index a3ca8ee28..153b5f8ad 100644 --- a/app/controllers/wiki_pages_controller.rb +++ b/app/controllers/wiki_pages_controller.rb @@ -17,7 +17,7 @@ class WikiPagesController < ApplicationController end def index - @wiki_pages = WikiPage.search(params[:search]).order("updated_at desc").paginate(params[:page], :search_count => params[:search]) + @wiki_pages = WikiPage.search(params[:search]).order("updated_at desc").paginate(params[:page], :limit => params[:limit], :search_count => params[:search]) respond_with(@wiki_pages) do |format| format.html do if @wiki_pages.count == 1 && (params[:page].nil? || params[:page].to_i == 1) From dcfeb1edad1867873aa3e3a7da2707a1496f1413 Mon Sep 17 00:00:00 2001 From: Toks Date: Wed, 15 May 2013 16:52:44 -0400 Subject: [PATCH 06/34] fix xml --- app/controllers/posts_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 2c46e52d8..e63f79466 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -14,7 +14,7 @@ class PostsController < ApplicationController format.atom format.xml do render :xml => @posts.to_xml(:root => "posts") {|builder| - builder.tag!(:total_count, @posts.total_count) + builder.tag!("total-count", @posts.total_count) } end end From 5727cd11efbadb74843d6993596b68e9b29093f8 Mon Sep 17 00:00:00 2001 From: Toks Date: Thu, 16 May 2013 09:01:31 -0400 Subject: [PATCH 07/34] fixes #1627 --- app/assets/javascripts/posts.js | 10 ++++++++-- app/assets/javascripts/tag_script.js | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/posts.js b/app/assets/javascripts/posts.js index fef5bd3bb..eca56795b 100644 --- a/app/assets/javascripts/posts.js +++ b/app/assets/javascripts/posts.js @@ -203,6 +203,12 @@ $img.attr("title", $post.attr("data-tags") + " user:" + $post.attr("data-uploader") + " rating:" + $post.data("rating") + " score:" + $post.data("score")); } + Danbooru.Post.update_title_with_data = function(post_data) { + var $post = $("#post_" + post_data.id); + $post.attr("data-tags", post_data.tag_string); + Danbooru.Post.initialize_title_for($post); + } + Danbooru.Post.initialize_preview_borders_for = function(post) { var $post = $(post); var $img = $post.find("img"); @@ -354,7 +360,7 @@ }); } - Danbooru.Post.update = function(post_id, params) { + Danbooru.Post.update = function(post_id, params, callback) { Danbooru.Post.notice_update("inc"); $.ajax({ @@ -371,7 +377,7 @@ Danbooru.notice("Error: " + data.reason); $("#post_" + data.id).effect("shake", {"distance": 20}, "fast"); } - }); + }).success(callback); } Danbooru.Post.approve = function(post_id) { diff --git a/app/assets/javascripts/tag_script.js b/app/assets/javascripts/tag_script.js index 94d9279a4..3e9a18060 100644 --- a/app/assets/javascripts/tag_script.js +++ b/app/assets/javascripts/tag_script.js @@ -52,6 +52,6 @@ $post.data("tags", Danbooru.TagScript.process(array, x).join(" ")); }); - Danbooru.Post.update(post_id, {"post[old_tag_string]": old_tags, "post[tag_string]": $post.data("tags")}); + Danbooru.Post.update(post_id, {"post[old_tag_string]": old_tags, "post[tag_string]": $post.data("tags")}, Danbooru.Post.update_title_with_data); } })(); From e1a047fd488c93f6296f902743b75dfe7aa7f07a Mon Sep 17 00:00:00 2001 From: Toks Date: Thu, 16 May 2013 09:10:17 -0400 Subject: [PATCH 08/34] Revert "better fix for not scrolling textarea" Focusing an offscreen textarea might be bad for usability. --- app/assets/javascripts/related_tag.js | 4 +++- app/assets/javascripts/utility.js | 7 ------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/app/assets/javascripts/related_tag.js b/app/assets/javascripts/related_tag.js index 44037b555..77d14a0ae 100644 --- a/app/assets/javascripts/related_tag.js +++ b/app/assets/javascripts/related_tag.js @@ -226,7 +226,9 @@ Danbooru.RelatedTag.process_artist(Danbooru.RelatedTag.recent_artist); } - $field.focusWithoutScroll(); + if ($(window).scrollTop() <= $field.offset().top) { + $field.focus(); + } e.preventDefault(); } diff --git a/app/assets/javascripts/utility.js b/app/assets/javascripts/utility.js index 48b3c0119..42251bab7 100644 --- a/app/assets/javascripts/utility.js +++ b/app/assets/javascripts/utility.js @@ -103,11 +103,4 @@ this.selectRange(this.val().length, this.val().length); return this; } - - $.fn.focusWithoutScroll = function(){ - var x = window.scrollX; - var y = window.scrollY; - this.focus(); - window.scrollTo(x, y); - }; })(); From 69d500e9f53f77ceba82e4898241a4d8ae1311eb Mon Sep 17 00:00:00 2001 From: Toks Date: Thu, 16 May 2013 09:49:24 -0400 Subject: [PATCH 09/34] fixes #1626 --- app/models/post.rb | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index 1ef54ddf6..5640f634c 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -872,15 +872,7 @@ class Post < ActiveRecord::Base def create_version return if disable_versioning - if created_at == updated_at - CurrentUser.increment!(:post_update_count) - versions.create( - :rating => rating, - :source => source, - :tags => tag_string, - :parent_id => parent_id - ) - elsif rating_changed? || source_changed? || parent_id_changed? || tag_string_changed? + if new_record? || rating_changed? || source_changed? || parent_id_changed? || tag_string_changed? CurrentUser.increment!(:post_update_count) versions.create( :rating => rating, From 6a6d0646bf3e561c370ef47afe5b055420796be4 Mon Sep 17 00:00:00 2001 From: Lightforger Date: Thu, 16 May 2013 20:41:59 +0300 Subject: [PATCH 10/34] fixes #1623 Display:none denies access to data such as ".left" --- app/assets/javascripts/notes.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/notes.js b/app/assets/javascripts/notes.js index 07af4ca0a..6eb2232a5 100644 --- a/app/assets/javascripts/notes.js +++ b/app/assets/javascripts/notes.js @@ -126,9 +126,15 @@ Danbooru.Note = { if ((new Date).getTime() < Danbooru.Note.ignore_click_until) { return; } - var is_hidden = document.getElementById('note-container').style.display == 'none'; - // Why does toggle() not work here? - $("#note-container").toggle(is_hidden); + var $note_container = $("#note-container"); + var is_hidden = ($note_container.css('visibility') === 'hidden'); + + if (is_hidden) { + $note_container.css('visibility', 'visible'); + } + else { + $note_container.css('visibility', 'hidden'); + } } }, @@ -473,7 +479,7 @@ Danbooru.Note = { Danbooru.Note.new(e.pageX - offset.left, e.pageY - offset.top); } Danbooru.Note.TranslationMode.stop(); - $("#note-container").show(); + $("#note-container").css(visibility, 'visible'); e.stopPropagation(); e.preventDefault(); From 55ceb192440d8c74e749561e7a3b25dc6711acd5 Mon Sep 17 00:00:00 2001 From: Lightforger Date: Thu, 16 May 2013 20:53:01 +0300 Subject: [PATCH 11/34] forgot quotes --- app/assets/javascripts/notes.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/assets/javascripts/notes.js b/app/assets/javascripts/notes.js index 6eb2232a5..841f220b4 100644 --- a/app/assets/javascripts/notes.js +++ b/app/assets/javascripts/notes.js @@ -479,7 +479,7 @@ Danbooru.Note = { Danbooru.Note.new(e.pageX - offset.left, e.pageY - offset.top); } Danbooru.Note.TranslationMode.stop(); - $("#note-container").css(visibility, 'visible'); + $("#note-container").css('visibility', 'visible'); e.stopPropagation(); e.preventDefault(); From 680c1c7a1ca9fec112c1b346be5085cf90d880b6 Mon Sep 17 00:00:00 2001 From: Toks Date: Thu, 16 May 2013 14:05:47 -0400 Subject: [PATCH 12/34] focus reltag text area when partially on screen as well --- app/assets/javascripts/related_tag.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/assets/javascripts/related_tag.js b/app/assets/javascripts/related_tag.js index 77d14a0ae..fe1f0c4e2 100644 --- a/app/assets/javascripts/related_tag.js +++ b/app/assets/javascripts/related_tag.js @@ -226,7 +226,7 @@ Danbooru.RelatedTag.process_artist(Danbooru.RelatedTag.recent_artist); } - if ($(window).scrollTop() <= $field.offset().top) { + if ($(window).scrollTop() <= $field.offset().top + $field.outerHeight()) { $field.focus(); } From cac44403e2f48ecfa0fd46c7635475d5f6d07883 Mon Sep 17 00:00:00 2001 From: Toks Date: Thu, 16 May 2013 22:01:08 -0400 Subject: [PATCH 13/34] wiki title consistency --- app/views/wiki_pages/show_or_new.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/wiki_pages/show_or_new.html.erb b/app/views/wiki_pages/show_or_new.html.erb index c75c45a95..e17483f89 100644 --- a/app/views/wiki_pages/show_or_new.html.erb +++ b/app/views/wiki_pages/show_or_new.html.erb @@ -3,7 +3,7 @@ <%= render "sidebar" %>
-

<%= params[:title] %>

+

<%= @wiki_page.pretty_title %>

This wiki page does not exist. <%= link_to "Create new wiki page", new_wiki_page_path(:wiki_page => {:title => params[:title]}) %>.

From bbf2181f4dd2fafd47b1dbc3958d189cf1825d33 Mon Sep 17 00:00:00 2001 From: Toks Date: Fri, 17 May 2013 10:17:16 -0400 Subject: [PATCH 14/34] fixes #1631 --- app/models/pool.rb | 7 ++++++- app/views/pools/_search.html.erb | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/models/pool.rb b/app/models/pool.rb index 42574de2f..5594db3d7 100644 --- a/app/models/pool.rb +++ b/app/models/pool.rb @@ -49,8 +49,13 @@ class Pool < ActiveRecord::Base q = q.where("is_active = false") end - if params[:sort] == "name" + case params[:sort] + when "name" q = q.order("name") + when "created_at" + q = q.order("created_at desc") + when "post_count" + q = q.order("post_count desc") else q = q.order("updated_at desc") end diff --git a/app/views/pools/_search.html.erb b/app/views/pools/_search.html.erb index f0f2f0ccf..768be1448 100644 --- a/app/views/pools/_search.html.erb +++ b/app/views/pools/_search.html.erb @@ -32,7 +32,7 @@