var $ = jQuery.noConflict();



$(document).ready(function(){

	initMasonry();
	initBlock();

})


function initMasonry(){

	 $('#changing-content-bottom').masonry({

	 	columnWidth: 190, 

  		itemSelector: '.block'

		});

    };
	
	
function initBlock(){
	
	$('#leadcontainer, #hometop-rightcol div.quote, #changing-content div.block, #categories-bottom div.block, #changing-content-bottom div.block').click(function () { 
		var href = $(this).find('a.title').attr('href');
		if (href) window.location.href = href;
    });
	/*$('#leadcontainer, #hometop-rightcol div.quote, #changing-content div.block, #categories-bottom div.block, #changing-content-bottom div.block').hover(function () {
		$(this).css({'cursor' : 'pointer'});
	});*/
	$("#hometop-rightcol div.quote, div#leadcontainer, #changing-content div.block, #categories-bottom div.block, #changing-content-bottom div.block").hover(
	  function () {
	    var bg = $(this).css('backgroundColor');
		var col = (bg.indexOf("rgb") > -1) ? rgbToHex(bg) : bg;
		//alert(col);
		var color = new RGBColor(col);
		if(color.r>17) {
			color.r = color.r-17;
		}

		if(color.g>17) {
			color.g = color.g-17;
		}
		if(color.b>17) {
			color.b = color.b-17;
		}
		bg = 'rgb('+color.r+','+color.g+','+color.b+')';
		bg = rgbToHex(bg);
		var bg = $(this).css('backgroundColor', bg);
	  },
	  function () {
		var bg = $(this).css('backgroundColor');
		var col = (bg.indexOf("rgb") > -1) ? rgbToHex(bg) : bg;
		var color = new RGBColor(col);
		if(color.r>17) {
			color.r = color.r+17;
		}

		if(color.g>17) {
			color.g = color.g+17;
		}
		if(color.b>17) {
			color.b = color.b+17;
		}
		bg = 'rgb('+color.r+','+color.g+','+color.b+')';
		bg = rgbToHex(bg);
		var bg = $(this).css('backgroundColor', bg);
	  }
	);
};

function rgbToHex(rgb) {
	var rgbvals = /rgb\((.+),(.+),(.+)\)/i.exec(rgb); 
	var rval = parseInt(rgbvals[1]);
	if(strlen(rval)==1) rval = '0'+rval;
	var gval = parseInt(rgbvals[2]);
	if(strlen(gval)==1) gval = '0'+gval;
	var bval = parseInt(rgbvals[3]); 
	if(strlen(bval)==1) bval = '0'+bval;
	return '#' + rval.toString(16) + gval.toString(16) + bval.toString(16); 
} 

function strlen (string) {
    // Get string length  
    // 
    // version: 903.3016
    // discuss at: http://phpjs.org/functions/strlen
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Sakimori
    // +      input by: Kirk Strobeck
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfixed by: Onno Marsman
    // +    revised by: Brett Zamir (http://brettz9.blogspot.com)
    // %        note 1: May look like overkill, but in order to be truly faithful to handling all Unicode
    // %        note 1: characters and to this function in PHP which does not count the number of bytes
    // %        note 1: but counts the number of characters, something like this is really necessary.
    // *     example 1: strlen('Kevin van Zonneveld');
    // *     returns 1: 19
    // *     example 2: strlen('A\ud87e\udc04Z');
    // *     returns 2: 3
    var str = string+'';
    var i = 0, chr = '', lgth = 0;

    var getWholeChar = function (str, i) {
        var code = str.charCodeAt(i);
        var next = '', prev = '';
        if (0xD800 <= code && code <= 0xDBFF) { // High surrogate(could change last hex to 0xDB7F to treat high private surrogates as single characters)
            if (str.length <= (i+1))  {
                throw 'High surrogate without following low surrogate';
            }
            next = str.charCodeAt(i+1);
            if (0xDC00 > next || next > 0xDFFF) {
                throw 'High surrogate without following low surrogate';
            }
            return str[i]+str[i+1];
        } else if (0xDC00 <= code && code <= 0xDFFF) { // Low surrogate
            if (i === 0) {
                throw 'Low surrogate without preceding high surrogate';
            }
            prev = str.charCodeAt(i-1);
            if (0xD800 > prev || prev > 0xDBFF) { //(could change last hex to 0xDB7F to treat high private surrogates as single characters)
                throw 'Low surrogate without preceding high surrogate';
            }
            return false; // We can pass over low surrogates now as the second component in a pair which we have already processed
        }
        return str[i];
    };

    for (i=0, lgth=0; i < str.length; i++) {
        if ((chr = getWholeChar(str, i)) === false) {
            continue;
        } // Adapt this line at the top of any loop, passing in the whole string and the current iteration and returning a variable to represent the individual character; purpose is to treat the first part of a surrogate pair as the whole character and then ignore the second part
        lgth++;
    }
    return lgth;
}

/*var color = new RGBColor('darkblue');
if (color.ok) { // 'ok' is true when the parsing was a success
    // alert channels
//    alert(color.r + ', ' + color.g + ', ' + color.b);
    // alert HEX and RGB
  //  alert(color.toHex());
    //alert(color.toRGB());
}*/
