Skip to content

Instantly share code, notes, and snippets.

@ksykulev
ksykulev / template tree digest.rb
Created October 25, 2018 16:39
get template tree digest for fragment cache key (rails 5)
#https://api.rubyonrails.org/classes/ActionView/Helpers/CacheHelper.html#method-i-cache
ActionView::Digestor.digest(name: 'blog/show', finder: ActionController::Base.new.lookup_context)
# npm post install script to browserify redux instead of using webpack
# https://github.com/reactjs/redux/
# setup dependencies
$ npm install browserify --save-dev
$ npm install browserify-incremental --save-dev
$ npm install babelify --save-dev
$ npm install babel-preset-stage-2 --save-dev
$ npm install babel-preset-es2015 --save-dev
$ npm install babel-preset-react --save-dev
diff --git a/chosen.ajaxaddition.jquery.js b/chosen.ajaxaddition.jquery.js
index c60ccfd..691cdac 100644
--- a/chosen.ajaxaddition.jquery.js
+++ b/chosen.ajaxaddition.jquery.js
@@ -41,7 +41,8 @@
selected, valuesArray, valuesHash = {},
requestQueueLength = requestQueue.length,
old = false,
- keep = false;
+ keep = false,
it("should allow the last character to be deleted", function(){
var chosen,
input,
key,
returnQuery,
clock = sinon.useFakeTimers(),
xhr = sinon.useFakeXMLHttpRequest(),
requests = [];
xhr.onCreate = function (xhr) { requests.push(xhr) };
@ksykulev
ksykulev / gist:4608420
Last active December 11, 2015 13:38
Delimited String to Array
#!/bin/bash
str="a@b.com;b@c.com;d@e.com"
delimiter=";"
declare -a arr
arr=(`echo ${str//$delimiter/ }`)
#get "keys" - ${!arr[@]}
for i in "${!arr[@]}"; do
printf "%s\t%s\n" "$i" "${arr[$i]}"
@ksykulev
ksykulev / gist:4046807
Created November 9, 2012 16:52
Create an absolutely positioned div that auto overflows if screen gets smaller but doesn't expand past the height of the content
<!DOCTYPE html>
<html>
<head>
<style>
html, body { margin:0px;padding:0px;height:100%;width:100%; }
#left-side { float:left;background-color:#E5EBF2;width:25%;border-right: 1px solid #B4B4B4;height:100%; }
#right-side { float:left;position:relative;height:100%;width:70%; }
#floater { background-color:lightgray;position:absolute;padding:5px;width:365px;top:20px;left:-15px;-moz-box-shadow: 0 4px 8px rgba(0,0,0,0.6);-webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.6);-o-box-shadow: 0 4px 8px rgba(0,0,0,0.6);box-shadow: 0 4px 8px rgba(0,0,0,0.6); }
/*the `magic`*/
#floater { overflow-y:auto;height:auto;max-height:90%; }
@ksykulev
ksykulev / gist:2920501
Created June 12, 2012 22:24
Date Beginning and end of month
function beginningOfMonth(date){
if(typeof date === 'undefined'){
date = new Date();
}
date.setMilliseconds(0);
date.setSeconds(0);
date.setMinutes(0);
date.setHours(0);
date.setDate(1);
return new Date(date);
@ksykulev
ksykulev / imagesLoaded.js
Created August 25, 2011 05:33 — forked from paulirish/README.md
imagesLoaded() jquery plugin - adding unbind for load event
// $('img.photo',this).imagesLoaded(myFunction)
// execute a callback when all images have loaded.
// needed because .load() doesn't work on cached images
// mit license. paul irish. 2010.
// webkit fix from Oren Solomianik. thx!
// callback function is passed the last image to load
// as an argument, and the collection as `this`
@ksykulev
ksykulev / nodes_by_depth.rb
Created May 14, 2011 20:55
Directory of files by level
# The goal is to traverse a tree and return an array A[0...h], where h is the height
# of the tree and A[i] is an array of items at height i.
# example:
# tree ->
# 0
# 1 2
# 3 4 5 6
# 7 8 9 10 11 12 13 14
#
# should give you:
//routes/ppm
export default Ember.Route.extend({
actions: {
openModal: function() {
this.render('ingredientSelect', {
into: 'ppm',
outlet: 'modal'
});
},
closeModal: function() {