(function($) {    $.fn.tipsy = function(opts) {        opts = $.extend({fade: false, gravity: 'n'}, opts || {});        var tip = null, cancelHide = false;        this.hover(function() {                        $.data(this, 'cancel.tipsy', true);            var tip = $.data(this, 'active.tipsy');            if (!tip) {                tip = $('<div class="tipsy"><div class="tipsy-inner">' + $(this).attr('title') + '</div></div>');                tip.css({position: 'absolute', zIndex: 100000});                $(this).attr('title', '');                $.data(this, 'active.tipsy', tip);            }                        var pos = $.extend({}, $(this).offset(), {width: this.offsetWidth, height: this.offsetHeight});            tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).appendTo(document.body);            var actualWidth = tip[0].offsetWidth, actualHeight = tip[0].offsetHeight;                        switch (opts.gravity.charAt(0)) {                case 'n':                    tip.css({top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-north');                    break;                case 's':                    tip.css({top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-south');                    break;                case 'e':                    tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}).addClass('tipsy-east');                    break;                case 'w':                    tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}).addClass('tipsy-west');                    break;            }            if (opts.fade) {                tip.css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: 1});            } else {                tip.css({visibility: 'visible'});            }        }, function() {            $.data(this, 'cancel.tipsy', false);            var self = this;            setTimeout(function() {                if ($.data(this, 'cancel.tipsy')) return;                var tip = $.data(self, 'active.tipsy');                if (opts.fade) {                    tip.stop().fadeOut(function() { $(this).remove(); });                } else {                    tip.remove();                }            }, 100);                    });    };})(jQuery);//Cufon.replace('#about-adoy h1, #about-adoy span, #about-adoy ul li'); // replace as necessary/*	$("#loading").ajaxStart(function(){ $(this).show(); }).ajaxStop (function(){ $(this).fadeOut(500); });	$.ajaxSetup({		timeout: 20000, 		async: 'false',		cache: 'true'	});*//*$('#tweet-show').click(function () {	//$('.dropdown-show', this).toggleClass('slide-down'); 	$('#tweet-list').toggle();	return false;});$('#tweet-list a').click(function () {	$('#tweet-list').hide();	return false;});$('body').click(function() {	$('#tweet-list').hide();});$('#show-tweet').click(function(event){	event.stopPropagation();}); *//* $("a.prettyPhoto").prettyPhoto({				animationSpeed: 'normal', 				padding: 40,				opacity: 0,				showTitle: false, 				allowresize: true, 				counter_separator_label: '/', 				theme: 'dark_rounded', 				callback: function(){}			});*///jQuery.noConflict();$(document).ready(function(){ 	$("a[rel='colorbox']").colorbox({transition:"none", width:"95%", height:"95%", opacity:"0.7", current:"Projekt {current} av {total}"});		$('.prettyPhoto').each(function () {	  var $span = $('> span.hover', this).css('opacity', 0);	  $(this).hover(function () {	  	$span.show();	    $span.stop().fadeTo(200, 0.8);	  }, function () {	    $span.stop().fadeTo(700, 0);	  });	});		$('.tipsylink').tipsy({gravity: 'w'}); // n | s | e | w	$("#submit-button").click(function(){		$(".error").hide();		var hasError = false;		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;		var emailFromVal = $("#email").val();		if(emailFromVal == '') {			$("#email").after('<span class="error">Du har inte fyllt i din epostadress.</span>');			hasError = true;		} else if(!emailReg.test(emailFromVal)) {			$("#email").after('<span class="error">Epostadressen innehåller fel :(</span>');			hasError = true;		}				var subjectVal = $("#subject").val();		if(subjectVal == '') {			$("#subject").after('<span class="error">Du har inte fyllt i något ärende.</span>');			hasError = true;		}		var messageVal = $("#message").val();		if(messageVal == '') {			$("#message").after('<span class="error">Du har inte fyllt i något meddelande.</span>');			hasError = true;		}		if(hasError == false) {			$(this).hide();			$("#form-buttons").append('<p>Skickar...</p>');						$.post("/inc/process.php",   				{ email: emailFromVal, subject: subjectVal, message: messageVal, submitted: true },   					function(data){						$("#contactform").slideUp("normal", function() {				   														$("#contactform").before('<h2>Tack!</h2><p>Vi har tagit emot ditt meddelande och svarar så snart vi kan.</p><p>Vänliga hälsningar<br /><strong>Adoy</strong></p>');																	});   					}				 );		}				return false;	});});        	//$('.tumblr-post-date').nyroModal({transition:false,debug:false,bgColor:'transparent',type:'content',minWidth:200,minHeight:200,closeButton:'<a href="#" class="nyroModalClose" id="closeBut" title="St&auml;ng"><strong>St&auml;ng</strong></a>'});	/*		$.Juitter.start({		searchType:"fromUser", // needed, you can use "searchWord", "fromUser", "toUser"		searchObject:"desta", // needed, you can insert a username here or a word to be searched for, if you wish multiple search, separate the words by comma.		live:"live-300", // the number after "live-" indicates the time in seconds to wait before request the Twitter API for updates.		placeHolder:"adoyTweets", // Set a placeholder		loadMSG: "<ul class=\"twittList\"><li><div class=\"twitt-inner\">Laddar tweets...</div></li></ul>", // Loading message, if you want to show an image, fill it with "image/gif" and go to the next variable to set which image you want to use on 		imgName: "loader.gif", // Loading image, to enable it, go to the loadMSG var above and change it to "image/gif"		total: 2, // number of tweets to be show - max 100		readMore: "Visa tweet", // read more message to be show after the tweet content		nameUser:"image", // insert "image" to show avatar of "text" to show the name of the user that sent the tweet 		openExternalLinks:"newWindow", // here you can choose how to open link to external websites, "newWindow" or "sameWindow"		filter:"sex->*BAD word*,porn->*BAD word*"  // insert the words you want to hide from the tweets followed by what you want to show instead example: "sex->censured" or "porn->BLOCKED WORD" you can define as many as you want, if you don't want to replace the word, simply remove it, just add the words you want separated like this "porn,sex,fuck"... Be aware that the tweets will still be showed, only the bad words will be removed	});		$("#aAcademy").click(function(){		$(".jLinks").removeClass("on");		$(this).addClass("on");									   		$.Juitter.start({			searchType:"searchWord",			searchObject:"from%3AAdoyCrew+OR+from%3Aadoyacademy",			total: 8,			placeHolder:"adoyTweets",			live:"live-300" 		});		$(".user-info").remove();	});	$("#aNicklas").click(function(){		$(".jLinks").removeClass("on");		$(this).addClass("on");									   		$.Juitter.start({			searchType:"fromUser",			searchObject:"desta",			placeHolder:"adoyTweets",			live:"live-300"		});		$(".user-info").remove();		$('<div class="user-info"></div>')            .html('<div class="avatar"><img src="http://s3.amazonaws.com/twitter_production/profile_images/69591058/20081228083_normal.png" /></div><div class="text"><p><strong>Nicklas Johansson</strong><br />nicklas.johansson@adoy.se</p></div>')            .prependTo('#twitter');			});	$("#aJocke").click(function(){		$(".jLinks").removeClass("on");		$(this).addClass("on");									   		$.Juitter.start({			searchType:"fromUser",			searchObject:"jowid",			placeHolder:"adoyTweets",			live:"live-300"		});		$(".user-info").remove();		$('<div class="user-info"></div>')            .html('<div class="avatar"><img src="http://s3.amazonaws.com/twitter_production/profile_images/295347791/jocke_normal.png" /></div><div class="text"><p><strong>Joakim Widigs</strong><br />joakim@adoy.se</p></div>')            .prependTo('#twitter');	});*/	/*// Global, flickr$(function() {	$('#flickr').flickr({         	api_key: "a7ebeb905e71342627a102c5a951eb55",    	type: 'search',    	photoset_id: '72157617950280813', //'72157618480706354'    	sort: 'date-posted-desc',    	per_page: 3	}); }); */function linkify(s) {        return s.replace(/[A-Za-z ]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g, function(m) {            return m.link(m);        }).replace(/@[\S]+/g, function(m) {            return m.substr(1);        });    }    function cacheRequest(theURL, divContent){    var divContent = "#" + divContent;    $(divContent).hide();        $(divContent+' .loader').hide();        $.ajax({                 url: theURL,                 type: 'GET',                 dataType: 'xml',                 success: function(xml){                                  var inumber = 1;                     		$(xml).find('item').each(function(){    		var ndId = $(this).find("id").text();       		var ndHeader = $(this).find("header").text();       		var ndSummary = $(this).find("summary").text();       		var ndMedia = $(this).find("type_of_media").text();       		var ndPublished = $(this).find("created_at").text();       		var ndSource = $(this).find("source_name").text();       		var ndImage = $(this).find("image_thumbnail_large").text();       		var url = $(this).find("url").text();       		       		var antal = 0;       		var antal = $(this).find("comment").length;       		       		$('<div class="item" id="item_'+ndId+'"></div>')            	.html('<div class="comment-meta">'+inumber+'</div><h1><a href="'+url+'">'+ndHeader+'</a></h1><span>Skrivet av '+ndSource+', '+ndPublished+'</span><p>'+ndSummary+'</p>')            	.appendTo(divContent+ ' div.load-content');            	            inumber++;    	});    	    	$(divContent).show();                 },                error: function(){                    $(divContent).html("Couldnot retrieve information.");                    $(divContent).show("slow");                }            });            }function utf8_encode ( argString ) {    // http://kevin.vanzonneveld.net    // +   original by: Webtoolkit.info (http://www.webtoolkit.info/)    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)    // +   improved by: sowberry    // +    tweaked by: Jack    // +   bugfixed by: Onno Marsman    // +   improved by: Yves Sucaet    // +   bugfixed by: Onno Marsman    // *     example 1: utf8_encode('Kevin van Zonneveld');    // *     returns 1: 'Kevin van Zonneveld'     var string = (argString+'').replace(/\r\n/g, "\n").replace(/\r/g, "\n");     var utftext = "";    var start, end;    var stringl = 0;     start = end = 0;    stringl = string.length;    for (var n = 0; n < stringl; n++) {        var c1 = string.charCodeAt(n);        var enc = null;         if (c1 < 128) {            end++;        } else if((c1 > 127) && (c1 < 2048)) {            enc = String.fromCharCode((c1 >> 6) | 192) + String.fromCharCode((c1 & 63) | 128);        } else {            enc = String.fromCharCode((c1 >> 12) | 224) + String.fromCharCode(((c1 >> 6) & 63) | 128) + String.fromCharCode((c1 & 63) | 128);        }        if (enc !== null) {            if (end > start) {                utftext += string.substring(start, end);            }            utftext += enc;            start = end = n+1;        }    }     if (end > start) {        utftext += string.substring(start, string.length);    }     return utftext;}function md5(str) {    // http://kevin.vanzonneveld.net    // +   original by: Webtoolkit.info (http://www.webtoolkit.info/)    // + namespaced by: Michael White (http://getsprink.com)    // +    tweaked by: Jack    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)    // +      input by: Brett Zamir (http://brettz9.blogspot.com)    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)    // -    depends on: utf8_encode    // *     example 1: md5('Kevin van Zonneveld');    // *     returns 1: '6e658d4bfcb59cc13f96c14450ac40b9'     var xl;     var rotateLeft = function(lValue, iShiftBits) {        return (lValue<<iShiftBits) | (lValue>>>(32-iShiftBits));    };     var addUnsigned = function(lX,lY) {        var lX4,lY4,lX8,lY8,lResult;        lX8 = (lX & 0x80000000);        lY8 = (lY & 0x80000000);        lX4 = (lX & 0x40000000);        lY4 = (lY & 0x40000000);        lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF);        if (lX4 & lY4) {            return (lResult ^ 0x80000000 ^ lX8 ^ lY8);        }        if (lX4 | lY4) {            if (lResult & 0x40000000) {                return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);            } else {                return (lResult ^ 0x40000000 ^ lX8 ^ lY8);            }        } else {            return (lResult ^ lX8 ^ lY8);        }    };     var _F = function(x,y,z) { return (x & y) | ((~x) & z); };    var _G = function(x,y,z) { return (x & z) | (y & (~z)); };    var _H = function(x,y,z) { return (x ^ y ^ z); };    var _I = function(x,y,z) { return (y ^ (x | (~z))); };     var _FF = function(a,b,c,d,x,s,ac) {        a = addUnsigned(a, addUnsigned(addUnsigned(_F(b, c, d), x), ac));        return addUnsigned(rotateLeft(a, s), b);    };     var _GG = function(a,b,c,d,x,s,ac) {        a = addUnsigned(a, addUnsigned(addUnsigned(_G(b, c, d), x), ac));        return addUnsigned(rotateLeft(a, s), b);    };     var _HH = function(a,b,c,d,x,s,ac) {        a = addUnsigned(a, addUnsigned(addUnsigned(_H(b, c, d), x), ac));        return addUnsigned(rotateLeft(a, s), b);    };     var _II = function(a,b,c,d,x,s,ac) {        a = addUnsigned(a, addUnsigned(addUnsigned(_I(b, c, d), x), ac));        return addUnsigned(rotateLeft(a, s), b);    };     var convertToWordArray = function(str) {        var lWordCount;        var lMessageLength = str.length;        var lNumberOfWords_temp1=lMessageLength + 8;        var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64;        var lNumberOfWords = (lNumberOfWords_temp2+1)*16;        var lWordArray=new Array(lNumberOfWords-1);        var lBytePosition = 0;        var lByteCount = 0;        while ( lByteCount < lMessageLength ) {            lWordCount = (lByteCount-(lByteCount % 4))/4;            lBytePosition = (lByteCount % 4)*8;            lWordArray[lWordCount] = (lWordArray[lWordCount] | (str.charCodeAt(lByteCount)<<lBytePosition));            lByteCount++;        }        lWordCount = (lByteCount-(lByteCount % 4))/4;        lBytePosition = (lByteCount % 4)*8;        lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80<<lBytePosition);        lWordArray[lNumberOfWords-2] = lMessageLength<<3;        lWordArray[lNumberOfWords-1] = lMessageLength>>>29;        return lWordArray;    };     var wordToHex = function(lValue) {        var wordToHexValue="",wordToHexValue_temp="",lByte,lCount;        for (lCount = 0;lCount<=3;lCount++) {            lByte = (lValue>>>(lCount*8)) & 255;            wordToHexValue_temp = "0" + lByte.toString(16);            wordToHexValue = wordToHexValue + wordToHexValue_temp.substr(wordToHexValue_temp.length-2,2);        }        return wordToHexValue;    };     var x=[],        k,AA,BB,CC,DD,a,b,c,d,        S11=7, S12=12, S13=17, S14=22,        S21=5, S22=9 , S23=14, S24=20,        S31=4, S32=11, S33=16, S34=23,        S41=6, S42=10, S43=15, S44=21;     str = this.utf8_encode(str);    x = convertToWordArray(str);    a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;        xl = x.length;    for (k=0;k<xl;k+=16) {        AA=a; BB=b; CC=c; DD=d;        a=_FF(a,b,c,d,x[k+0], S11,0xD76AA478);        d=_FF(d,a,b,c,x[k+1], S12,0xE8C7B756);        c=_FF(c,d,a,b,x[k+2], S13,0x242070DB);        b=_FF(b,c,d,a,x[k+3], S14,0xC1BDCEEE);        a=_FF(a,b,c,d,x[k+4], S11,0xF57C0FAF);        d=_FF(d,a,b,c,x[k+5], S12,0x4787C62A);        c=_FF(c,d,a,b,x[k+6], S13,0xA8304613);        b=_FF(b,c,d,a,x[k+7], S14,0xFD469501);        a=_FF(a,b,c,d,x[k+8], S11,0x698098D8);        d=_FF(d,a,b,c,x[k+9], S12,0x8B44F7AF);        c=_FF(c,d,a,b,x[k+10],S13,0xFFFF5BB1);        b=_FF(b,c,d,a,x[k+11],S14,0x895CD7BE);        a=_FF(a,b,c,d,x[k+12],S11,0x6B901122);        d=_FF(d,a,b,c,x[k+13],S12,0xFD987193);        c=_FF(c,d,a,b,x[k+14],S13,0xA679438E);        b=_FF(b,c,d,a,x[k+15],S14,0x49B40821);        a=_GG(a,b,c,d,x[k+1], S21,0xF61E2562);        d=_GG(d,a,b,c,x[k+6], S22,0xC040B340);        c=_GG(c,d,a,b,x[k+11],S23,0x265E5A51);        b=_GG(b,c,d,a,x[k+0], S24,0xE9B6C7AA);        a=_GG(a,b,c,d,x[k+5], S21,0xD62F105D);        d=_GG(d,a,b,c,x[k+10],S22,0x2441453);        c=_GG(c,d,a,b,x[k+15],S23,0xD8A1E681);        b=_GG(b,c,d,a,x[k+4], S24,0xE7D3FBC8);        a=_GG(a,b,c,d,x[k+9], S21,0x21E1CDE6);        d=_GG(d,a,b,c,x[k+14],S22,0xC33707D6);        c=_GG(c,d,a,b,x[k+3], S23,0xF4D50D87);        b=_GG(b,c,d,a,x[k+8], S24,0x455A14ED);        a=_GG(a,b,c,d,x[k+13],S21,0xA9E3E905);        d=_GG(d,a,b,c,x[k+2], S22,0xFCEFA3F8);        c=_GG(c,d,a,b,x[k+7], S23,0x676F02D9);        b=_GG(b,c,d,a,x[k+12],S24,0x8D2A4C8A);        a=_HH(a,b,c,d,x[k+5], S31,0xFFFA3942);        d=_HH(d,a,b,c,x[k+8], S32,0x8771F681);        c=_HH(c,d,a,b,x[k+11],S33,0x6D9D6122);        b=_HH(b,c,d,a,x[k+14],S34,0xFDE5380C);        a=_HH(a,b,c,d,x[k+1], S31,0xA4BEEA44);        d=_HH(d,a,b,c,x[k+4], S32,0x4BDECFA9);        c=_HH(c,d,a,b,x[k+7], S33,0xF6BB4B60);        b=_HH(b,c,d,a,x[k+10],S34,0xBEBFBC70);        a=_HH(a,b,c,d,x[k+13],S31,0x289B7EC6);        d=_HH(d,a,b,c,x[k+0], S32,0xEAA127FA);        c=_HH(c,d,a,b,x[k+3], S33,0xD4EF3085);        b=_HH(b,c,d,a,x[k+6], S34,0x4881D05);        a=_HH(a,b,c,d,x[k+9], S31,0xD9D4D039);        d=_HH(d,a,b,c,x[k+12],S32,0xE6DB99E5);        c=_HH(c,d,a,b,x[k+15],S33,0x1FA27CF8);        b=_HH(b,c,d,a,x[k+2], S34,0xC4AC5665);        a=_II(a,b,c,d,x[k+0], S41,0xF4292244);        d=_II(d,a,b,c,x[k+7], S42,0x432AFF97);        c=_II(c,d,a,b,x[k+14],S43,0xAB9423A7);        b=_II(b,c,d,a,x[k+5], S44,0xFC93A039);        a=_II(a,b,c,d,x[k+12],S41,0x655B59C3);        d=_II(d,a,b,c,x[k+3], S42,0x8F0CCC92);        c=_II(c,d,a,b,x[k+10],S43,0xFFEFF47D);        b=_II(b,c,d,a,x[k+1], S44,0x85845DD1);        a=_II(a,b,c,d,x[k+8], S41,0x6FA87E4F);        d=_II(d,a,b,c,x[k+15],S42,0xFE2CE6E0);        c=_II(c,d,a,b,x[k+6], S43,0xA3014314);        b=_II(b,c,d,a,x[k+13],S44,0x4E0811A1);        a=_II(a,b,c,d,x[k+4], S41,0xF7537E82);        d=_II(d,a,b,c,x[k+11],S42,0xBD3AF235);        c=_II(c,d,a,b,x[k+2], S43,0x2AD7D2BB);        b=_II(b,c,d,a,x[k+9], S44,0xEB86D391);        a=addUnsigned(a,AA);        b=addUnsigned(b,BB);        c=addUnsigned(c,CC);        d=addUnsigned(d,DD);    }     var temp = wordToHex(a)+wordToHex(b)+wordToHex(c)+wordToHex(d);     return temp.toLowerCase();}