Improve readability

This commit is contained in:
Artur Beljajev 2019-11-02 17:04:14 +02:00
parent aea4bf974a
commit 67a90c2ef1
9 changed files with 9 additions and 9 deletions

View file

@ -0,0 +1,14 @@
module Builder
class XmlMarkup
def epp_head
instruct!
epp(
'xmlns' => 'https://epp.tld.ee/schema/epp-ee-1.0.xsd',
'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
'xsi:schemaLocation' => 'lib/schemas/epp-ee-1.0.xsd'
) do
yield
end
end
end
end

View file

@ -0,0 +1,11 @@
# Don't raise error when nil
# http://stackoverflow.com/questions/9467034/rails-i18n-how-to-handle-case-of-a-nil-date-being-passed-ie-lnil
module I18n
class << self
alias_method :original_localize, :localize
def localize(object, options = {})
object.present? ? original_localize(object, options) : ''
end
end
end

View file

@ -0,0 +1,16 @@
# Store console and rake changes in versions
if defined?(::Rails::Console)
PaperTrail.whodunnit = "console-#{`whoami`.strip}"
elsif File.basename($PROGRAM_NAME) == 'rake'
# rake username does not work when spring enabled
PaperTrail.whodunnit = "rake-#{`whoami`.strip} #{ARGV.join ' '}"
end
class PaperSession
class << self
attr_writer :session
def session
@session ||= Time.zone.now.to_s(:db)
end
end
end

View file

@ -0,0 +1,40 @@
# A custom initializer that enables sorting via custom scopes in Ransack (like the same feature in MetaSearch)
module Ransack
module Adapters
module ActiveRecord
class Context < ::Ransack::Context
# Allows for sorting by custom scopes
#
#
# Define your custom scopes in your model, e. g. sort_by_title_asc and sort_by_title_desc
# (The scopes would sort by some calculated column or a column added via some crazy join, etc.)
#
# In your sort links refer to the scopes like to standard fields, e. g.
# <%= sort_link(@q, :title, 'Crazy calculated title') %>
def evaluate(search, opts = {})
viz = Visitor.new
relation = @object.where(viz.accept(search.base))
if search.sorts.any?
custom_scopes = search.sorts.select do |s|
custom_scope_name = :"sort_by_#{s.name}_#{s.dir}"
relation.respond_to?(custom_scope_name)
end
attribute_scopes = search.sorts - custom_scopes
relation = relation.except(:order)
custom_scopes.each do |s|
custom_scope_name = :"sort_by_#{s.name}_#{s.dir}"
relation = relation.public_send(custom_scope_name)
end
relation = relation.reorder(viz.accept(attribute_scopes)) if attribute_scopes.any?
end
opts[:distinct] ? relation.distinct : relation
end
end
end
end
end