Skip to content

Instantly share code, notes, and snippets.

module DelegateError
extend ActiveSupport::Concern
included do
class_variable_set(:@@delegate_error_attrs , [])
after_validation :copy_errors_to_delegated_attribute
end
module ClassMethods
def delegate_errors(s_atr, t_atr)
attrs = delegate_error_attrs + [{source: s_atr, target: t_atr}]
class_variable_set(:@@delegate_error_attrs, attrs)
@jbmyid
jbmyid / typeheadonclick.js
Created July 3, 2015 06:58
Open ng-typeahea on click
.directive('typeaheadClickOpen', function($parse, $timeout) {
var dir;
return dir = {
restrict: 'A',
require: 'ngModel',
link: function($scope, elem, attrs) {
var triggerFunc;
triggerFunc = function(evt) {
var ctrl, prev;
ctrl = elem.controller('ngModel');
window.infyScroll = (el_id, url)->
self = @
@finish = false
@complete = ->
self.inProgress = false
self.nextPage++
@xmlhttp = new sendAjaxRequest("", url, "GET", @complete)
@nextPage = 2
@inProgress = false
@ele = document.getElementById(el_id)
(function() {
var isIE = /msie/gi.test(navigator.userAgent); // http://pipwerks.com/2011/05/18/sniffing-internet-explorer-via-javascript/
this.infiniteScroll = function(options) {
var defaults = {
callback: function() {},
distance: 50
}
// Populate defaults
for (var key in defaults) {
@jbmyid
jbmyid / setup vagrant
Created August 24, 2015 11:43
Setup vagrant
install vagrant
# download box and specify the path for vagrant box
vagrant box add ubuntu/trusty64 ~/Downloads/trusty-server-cloudimg-amd64-vagrant-disk1.box
vagrant init ubuntu/trusty64
vagrant up
[["Afghanistan", "af", "93"], ["Åland Islands", "ax", "358"], ["Albania", "al", "355"], ["Algeria", "dz", "213"], ["American Samoa", "as", "1"], ["Andorra", "ad", "376"], ["Angola", "ao", "244"], ["Anguilla", "ai", "1"], ["Antigua and Barbuda", "ag", "1"], ["Argentina", "ar", "54"], ["Armenia", "am", "374"], ["Aruba", "aw", "297"], ["Ascension Island", "ac", "247"], ["Australia", "au", "61"], ["Austria", "at", "43"], ["Azerbaijan", "az", "994"], ["Bahamas", "bs", "1"], ["Bahrain", "bh", "973"], ["Bangladesh", "bd", "880"], ["Barbados", "bb", "1"], ["Belarus", "by", "375"], ["Belgium", "be", "32"], ["Belize", "bz", "501"], ["Benin", "bj", "229"], ["Bermuda", "bm", "1"], ["Bhutan", "bt", "975"], ["Bolivia", "bo", "591"], ["Bonaire", "bq", "599"], ["Bosnia and Herzegovina", "ba", "387"], ["Botswana", "bw", "267"], ["Brazil", "br", "55"], ["British Virgin Islands", "vg", "1"], ["Brunei", "bn", "673"], ["Bulgaria", "bg", "359"], ["Burkina Faso", "bf", "226"], ["Burundi", "bi", "257"], ["Cambodia", "kh", "855"], ["
@jbmyid
jbmyid / browser-class.js
Created March 7, 2017 06:03 — forked from realdeprez/browser-class.js
adds browser name+version class to html body tag
try{document.getElementsByTagName('body')[0].className+=' '+(/(Firefox|MSIE|Chrome|Safari|Opera)[\/\s](\d+)/).exec(navigator.userAgent).splice(1,2).join('').toLowerCase();}catch(e){}