Skip to content

Instantly share code, notes, and snippets.

@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:
@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 / 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 / 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: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]}"
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) };
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,
@ksykulev
ksykulev / p1.rb
Created March 17, 2014 14:38
wildcard problem1
#http://www.trywildcard.com/challenge/problem1
FILE = ARGV[0] #problem1input.txt
NUMBEROFCARDS = ARGV[1].to_i #5
def factorial(n)
( (1..n).reduce(:*) || 1 )
end
columns = []
total = 0
@ksykulev
ksykulev / p2.rb
Created March 17, 2014 14:39
wildcard problem2
#http://www.trywildcard.com/challenge/problem2
GENERATION = [9 , 10, 21, 20, 7, 11, 4, 15, 7, 7, 14, 5, 20, 6, 29, 8, 11, 19, 18, 22, 29, 14, 27, 17, 6, 22, 12, 18, 18, 30]
OVERHEAD = [21, 16, 19, 26, 26, 7, 1, 8, 17, 14, 15, 25, 20, 3, 24, 5, 28, 9, 2, 14, 9, 25, 15, 13, 15, 9, 6, 20, 27, 22]
BUDGET = ARGV[0].to_i #2912
def binary_search_insert(list, obj)
high = list.length
low = 0
mid = 0
direction = -1
@ksykulev
ksykulev / gist:998583603bb8df423f81
Last active August 29, 2015 14:12
handleFindQuery
asyncTest("#handleFindQuery passing in associations", function() {
var name = 'banana',
users = FactoryGuy.buildList('user', 2, 'with_projects', { name: name });
testHelper.handleFindQuery('user', ['name'], users);
store.findQuery('user', {name: name}).then(function (users) {
//TypeError: Cannot read property 'typeKey' of undefined
//at Ember.Object.extend.modelFor (file:///Users/employee/projects/kys-ember-data-factory-guy/bower_components/ember-data/ember-data.js:11437:22)
start();