Skip to content

Instantly share code, notes, and snippets.

module OrderedSelect
extend ActiveSupport::Concern
included do
def self.ordered_list(ids)
ids_list = ids.to_s.split(',').select(&:present?)
self.where(id: ids_list).order(ids_list.reverse.map { |id| "#{self.table_name}.id = #{id}" }.join(", "))
end
def self.unordered_list(ids)
class Reception < ActiveRecord::Base
STATES = ['processing', 'refused', 'finished']
belongs_to :user
has_many :comments, as: :commentable, dependent: :destroy
has_many :reception_items, inverse_of: :reception, dependent: :destroy
accepts_nested_attributes_for :reception_items
# TODO: remove this when reception form will be finished
attr_accessor :name
class DesignersController < ApplicationController
include PublicHelper
include SizeChange
load_and_authorize_resource
before_action :load_size
def index
@designers = @designers.main.visible.includes(:favorites).order('LOWER(title) ASC')
end
@oleglukashev
oleglukashev / gist:f33196c9e24b08f072fb
Created December 1, 2014 14:17
check mobile by css
$screen-xs-min: 480px; // Tiny screen / phone
$screen-sm-min: 768px; // Small screen / tablet
$screen-md-min: 992px; // Medium screen / desktop
$screen-lg-min: 1200px; // Large screen / wide desktop
// So media queries don't overlap when required, provide a maximum
$screen-xs-max: ($screen-sm-min - 1);
$screen-sm-max: ($screen-md-min - 1);
$screen-md-max: ($screen-lg-min - 1);
CSS:
1) css3 arrow http://cssarrowplease.com/
@oleglukashev
oleglukashev / gist:e8e2b0bb6d241f7a35f6
Created October 11, 2014 07:42
Animate window scroll
$("html, body").animate({ scrollTop: %%% });