﻿$(document).ready(function() {
	$("#menu").tabs("#menu div.detail", {tabs: 'h3 a', effect: 'slide', event: 'click', initialIndex: null});
	$("a#contactForm[rel]").overlay({expose: '#ddd'});
	$("#socialNetworks a[title]").tooltip({ tip: '#tooltip'	});
  	loadScript("http://twitter.com/statuses/user_timeline/zerolinestudio.json?callback=twitterCallback2&count=5", function(){}); 
	Cufon.replace('#menu h2');
	externalLinks();
});

function loadScript(url, callback){
 
    var script = document.createElement("script")
    script.type = "text/javascript";
 
    if (script.readyState){  //IE
        script.onreadystatechange = function(){
            if (script.readyState == "loaded" ||
                    script.readyState == "complete"){
                script.onreadystatechange = null;
                callback();
            }
        };
    } else {  //Others
        script.onload = function(){
            callback();
        };
    }
 
    script.src = url;
    document.getElementsByTagName("head")[0].appendChild(script);
}

function externalLinks() {
    if (!document.getElementsByTagName) return;
    var anchors = document.getElementsByTagName("a");
    for (var i=0; i<anchors.length; i++) {
	var anchor = anchors[i];
	if (anchor.getAttribute("href") &&
	anchor.getAttribute("rel") == "external")
	anchor.target = "_blank";
    }
}

function twitterCallback2(twitters) {
  var statusHTML = [];
  for (var i=0; i<twitters.length; i++){
    var username = twitters[i].user.screen_name;
    var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
      return '<a href="'+url+'">'+url+'</a>';
    }).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
      return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
    });
    statusHTML.push('<li><span>'+status+'</span> <a class="twitterTime" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a></li>');
  }
  document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}

function relative_time(time_value) {
  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  delta = delta + (relative_to.getTimezoneOffset() * 60);

  if (delta < 60) {
    return 'před&nbsp;chvilkou';
  } else if(delta < 120) {
    return 'minutka,&nbsp;dvě';
  } else if(delta < 180) {
    return '2&nbsp;minuty';
  } else if(delta < 240) {
    return '3&nbsp;minuty';
  } else if(delta < 300) {
    return '4&nbsp;minuty';
  } else if(delta < (60*60)) {
    return (parseInt(delta / 60)).toString() + '&nbsp;minut';
  } else if(delta < (120*60)) {
    return 'hodinka,&nbsp;dvě';
  } else if(delta < (180*60)) {
    return '2&nbsp;hodiny';
  } else if(delta < (240*60)) {
    return '3&nbsp;hodiny';
  } else if(delta < (300*60)) {
    return '4&nbsp;hodiny';
  } else if(delta < (24*60*60)) {
    return (parseInt(delta / 3600)).toString() + '&nbsp;hodin';
  } else if(delta < (48*60*60)) {
    return 'den,&nbsp;dva';
  } else if(delta < (72*60*60)) {
    return '2&nbsp;dny';
  } else if(delta < (96*60*60)) {
    return '3&nbsp;dny';
  } else if(delta < (120*60*60)) {
    return '4&nbsp;dny';
  } else {
    return (parseInt(delta / 86400)).toString() + '&nbsp;dnů';
  }
}
