Skip to content

Instantly share code, notes, and snippets.

@kara-ryli
kara-ryli / swf-expressInstall.js
Created May 8, 2012 23:03
Adds expressInstall functionality to Y.SWF, using expressInstall.swf from the SWFObject project
/*global YUI*/
/**
* Adds expressInstall functionality to SWF
*
* @module swf-expressinstall
* @requires swf
*/
YUI.add("swf-expressinstall", function (Y) {
"use strict";
var handles = {},
@kara-ryli
kara-ryli / twitter-processentities.js
Created April 6, 2012 20:13
Twitter entity processing made easy.
/*global YUI*/
/**
* Twitter entity processing made easy.
* @module twitter-processentities
*/
YUI.add("twitter-processentities", function (Y) {
"use strict";
var yArrayEach = Y.Array.each,
yLangSub = Y.Lang.sub,
startIndexSort = function (a, b) {
@kara-ryli
kara-ryli / 1.number-to-ord.js
Created April 5, 2012 20:00
Converts an integer into a its proper ordinal ("1st", "2nd", "3rd", "4th")
/*global YUI*/
/**
* Converts an integer into a its proper ordinal ("1st", "2nd", "3rd", "4th")
* @module number-to-ord
*/
YUI.add("number-to-ord", function (Y) {
"use strict";
/**
* Converts an integer into a its proper ordinal ("1st", "2nd", "3rd", "4th")
*
@kara-ryli
kara-ryli / loader-config.html
Created April 5, 2012 02:45
FIXME: Configure loader to work correctly with multiple CDNs and a third-party hosted YUI
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Loader Test</title>
<meta name="generator" content="TextMate http://macromates.com/">
<meta name="author" content="Ryan Cannon">
<script src="http://www.nfl.com/yui/3.4.1/build/yui/yui-min.js"></script>
<script>
var YUI_config = {
@kara-ryli
kara-ryli / arraylist-extras.js
Created March 31, 2012 00:16
Adds common array-extras methods to a class that also mixes ArrayList
/*global YUI*/
/**
* Adds common array-extras methods to a class that also mixes ArrayList
*
* Example usage:
*
* var MyClass = Y.Base.create("myclass", Y.Base, [Y.ArrayList, Y.ArrayListExtras]),
* mc = new MyClass();
*
* mc.add("hi");
@kara-ryli
kara-ryli / twitter-intents-min.js
Created March 24, 2012 00:32
YUI module to handle clicks on Twitter Intents
YUI.add("twitter-intents",function(a){var g=/twitter\.com(\:\d{2,4})?\/intent\/(\w+)/,b=550,h=420,i="scrollbars=yes,resizable=yes,toolbar=no,location=yes,width={w},height={h},top={t},left={l}",e=a.config.win,f=e.screen.width,d=e.screen.height,c=function(k){var j=k.currentTarget.get("href");if(g.test(j)){k.halt();e.open(j,"intent",a.Lang.sub(i,{l:Math.round((f/2)-(b/2)),t:d>h?Math.round((d/2)-(h/2)):0,w:b,h:h}))}};a.namespace("Twitter").handleIntents=function(j){return a.one(j).delegate("click",c,"a")}},"3.4.1",{requires:["event-delegate","node-base"]});
@kara-ryli
kara-ryli / Facebook.js
Created March 16, 2012 18:54
Asynchronously load and initialize Facebook sanely using YUI.
YUI.add("facebook", function (Y) {
"use strict";
var isFunction = Y.Lang.isFunction,
queue = [],
win = Y.config.win,
FB;
function queueInArray(callback) {
queue.push(callback);
}
@kara-ryli
kara-ryli / h5bp.scss
Created January 22, 2012 02:39
The HTML5 Boilerplate CSS file, SCSS edition
@mixin h5bp-normalize(
$selection-color: #FFF,
$selection-bg: #FE57A1,
$text-color: #222,
$link-color: #00e,
$link-visited-color: #551a8b,
$link-hover-color: #06e,
$mark-bg: #ff0,
$mark-color: #000,
$ins-color: #000,
@kara-ryli
kara-ryli / toggle-hex-rgb.rb
Created January 12, 2012 22:47
TextMate Command to toggle hex and RGB color values
#!/usr/bin/env ruby
input = STDIN.read
match = /^\s*rgba?\(\s*(\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})(?:,[\d\.]+)?\s*\)(\s*;?)/.match(input)
if !match.nil? # RGB -> Hex
res = "#"
short_safe = true
matches = [match[1], match[2], match[3]].map do |m|
h = m.to_i.to_s(16)
if h.length == 1
@kara-ryli
kara-ryli / widget-node-builder.js
Created December 7, 2011 20:15
Spun off from widget-functions this is a big time saver when building DOM in Y.Widget
YUI.add("widget-node-builder", function (Y) {
/**
* Extension enabling a Widget to easily build DOM.
*
* @module widget-node-builder
*/
var yNodeCreate = Y.Node.create,
yObjectEach = Y.Object.each,