var curmessusr= '';

var blurmsg= new Array();
var cargoshowel= 0;

var messanger_clients = new Array();

$(document).ready(function(){

    /*
    * messanger manupulation
    */

    curmessusr = getCookie('cargouser');
    cargoshowel = getCookie(curmessusr+'showel');

    $('div.display-tabs').hide();
    $('div.messanger-block ul').hide();
    $('div.messanger-block').hide();

    if(getCookie(curmessusr+'messanger')=='show'){
		$('div.messanger-block').show();
        $('div.display-tabs').show(function(){
            if(getCookie(curmessusr+'showel')!=null){
                var id = getCookie(curmessusr+'showel');
                if (id!=null && id!='') {
                    view_messenger(id);
                }
            }
        });
        $('div.messanger-block .inner').show();
    }

    $('#open-messanger').click(function(){
		$('div.messanger-block').toggle();
		$('div.messanger-block h2').click();
		return false;
	});

    $('#newmessages').live('click', function(){
		$('div.messanger-block').show();
		$('div.messanger-block h2').click();
		return false;
	});

   	$('.hideallmess, div.messanger-block h2').live('click',function(){
        $('div.messanger-block .inner').toggle(500, function(){
			if($('div.messanger-block .inner').is(':visible')){
				/*
				 * set cookie setCookie(name,value,expired);
				 */
				setCookie(curmessusr+'messanger','show','');
			}
			if($('div.messanger-block .inner').is(':hidden')){
				/*
				 * set cookie setCookie(name,value,expired);
				 */
				setCookie(curmessusr+'messanger','hide','');
				$('div.messanger-block').toggle();
			}
		});
        $('div.display-tabs').toggle(500,function(){
            if(getCookie(curmessusr+'showel')!=null){
                var id = getCookie(curmessusr+'showel');
                if (id!=null && id!='') {
                    view_messenger(id);
                }
            }
        });
        return false;
    });

    $('div.open-messanger-tabs a.tab').live('click',function(){
        $('div.open-messanger-tabs a.tab').removeClass('on');
        $(this).addClass('on');
        var id = $(this).attr('href').replace('#messanger-', '');
        if($('#messanger-' + id).is(':visible')){
            $('#messanger-' + id).hide();
            curcargovisiblechat= 0;
            deleteCookie('showel');
            deleteCookie(curmessusr+'showel');
        }
        else{
			curcargovisiblechat= 1;
            view_messenger(id);
        }

        return false;
    });

    $('a.close-tab').live('click',function(){

        var id = $(this).attr('data-close');
        close_messenger(id);

    });

    $('a.popupview').click(function(){
        popupLinkClick(this);
        return false;
    });

    $("a.del").click(
        function(){
            if(confirm(confirmText)){
                $(this).toggleClass("JT_loader");
                $.get(this.href,function(data){
                    var id = $.trim(data);
                    $('tr#pr'+id).remove();
                    $('div.messanger-block ul li.title'+id).remove();
                    close_messenger(id);
                });
            }
            return false;
        }
        );

    $("a.addpartner").live('click',
        function(e){

            if(typeof this.href!='undefined'&& this.href!='' && confirm(confirmTextAddPart.replace('?Cargoagent',this.name))){
                $(this).removeClass('addpartner');
                $(this).addClass('JT_loader');
                $(this).parent().load(this.href);
            }

            if(typeof e.target !='undefined'){
                e.preventDefault();
            }else{
                e.returnValue = false;
            }

            e.cancelBubble = true;
            e.stopPropagation();

            return false;
        }
        );

    $("a.addpartner.tr").click(
        function(e){
            if(this.href && confirm(confirmTextAddPart.replace('?Cargoagent',this.name))){
                $(this).removeClass('addpartner');
                $(this).addClass('JT_loader');
                $(this).parent().load(this.href);
            }

            if(e.target){
                e.preventDefault();
            }else{
                e.returnValue = false;
            }

            e.cancelBubble = true;
            e.stopPropagation();

            return false;
        }
        );

    $("a.addpartners").click(
        function(e){
            $('#JT').remove();
            JT_show(this.href,this.id,this.name);
            if(e.target){
                e.preventDefault();
            }else{
                e.returnValue = false;
            }
            return false;
        }
        );
    $("#langSel").click(
        function(){
            $("div.langSel").toggle();
            return false;
        }
        );

    $("a.note").click(
        function(){
            $('#JT').remove();
            JT_show(this.href,this.id,this.name);
            return false;
        }
        );

    $('a.popup').live('click',
        function(e) {
            if(this.href){
                win_name=window.open(this.href,this.name,'toolbar=no,location=no,scrollbars=yes,resizable=no,width=720,height=550,status=no,left=50,top=50,screenX=50,screenY=50');
                win_name.focus();
                if(e.target){
                    e.preventDefault();
                }else{
                    e.returnValue = false;
                }
            }
            return false;
        }
    );

    $('a.lockoffers').live('click',function(){
        var el = this;
        var o = parseUri.options;
        var url = parseUri(el.href);
        var params = url[o.q.name];

        $(el).addClass('loading');
        $.ajax({
            url: el.href,
            complete: function(xhr, statusText) {
                if(xhr.status==200){
                    if(params.status=='y'){
                        $(el).html($(".block").attr("title"));
                        $(el).removeClass('unlock');
                        $(el).addClass('lock');
                        //$(el).attr($(".block").attr("title"));
                        el.href='requests.php?what=lockoffers&id='+params.id+'&status=n';
                    }
                    else if(params.status=='n'){
                        $(el).html($(".unblock").attr("title"));
                        $(el).removeClass('lock');
                        $(el).addClass('unlock');
                        //$(el).attr($(".unblock").attr("title"));
                        el.href='requests.php?what=lockoffers&id='+params.id+'&status=y';
                    }
                }
                $(el).removeClass('loading');
            }
        });
        return false;
    });

    $('a.lockco.tr').click(function(){
        var el = this;
        var o = parseUri.options;
        var url = parseUri(el.href);
        var params = url[o.q.name];

        $(el).addClass('loading');
        $.ajax({
            url: el.href,
            complete: function(xhr, statusText) {
                if(xhr.status==200){
                    if(params.status=='b'){
                        $(el).addClass("locked");
                        $(el).removeClass("unlocked");
                        el.href='requests.php?what=lockcompany&block_id='+params.block_id+'&status=n';
                    }
                    else if(params.status=='n'){
                        $(el).addClass("unlocked");
                        $(el).removeClass("locked");
                        el.href='requests.php?what=lockcompany&block_id='+params.block_id+'&status=b';
                    }
                }
                $(el).removeClass('loading');
            }
        });

        return false;
    });

    $('a.lockco').live('click',function(){
        var el = this;
        var o = parseUri.options;
        var url = parseUri(el.href);
        var params = url[o.q.name];

        $(el).addClass('loading');
        $.ajax({
            url: el.href,
            complete: function(xhr, statusText) {
                if(xhr.status==200){
                    if(params.status=='b'){
                        $(el).addClass("locked");
                        $(el).removeClass("unlocked");
                        el.href='requests.php?what=lockcompany&block_id='+params.block_id+'&status=n';
                    }
                    else if(params.status=='n'){
                        $(el).addClass("unlocked");
                        $(el).removeClass("locked");
                        el.href='requests.php?what=lockcompany&block_id='+params.block_id+'&status=b';
                    }
                }
                $(el).removeClass('loading');
            }
        });

        return false;
    });

    $('#traficinfo').hide();
    $('#cargoinfo').hide();
    $('div.togglerest').hide();

	$('#trafictitle').toggle(
	  function() {
		$('#trafictitle').css("border-bottom","1px solid #AFC8E6");
		$('#traficinfo').css("display","block");
	  return false;
	  },
	  function() {
		$('#trafictitle').css("border-bottom","none");
		$('#traficinfo').css("display","none");
	  return false;
	  }
	);

	$('#cargotitle').toggle(
	  function() {
		$('#cargotitle').css("border-bottom","1px solid #AFC8E6");
		$('#cargoinfo').css("display","block");
		return false;
	  },
	  function() {
		$('#cargotitle').css("border-bottom","none");
		$('#cargoinfo').css("display","none");
	  return false;
	  }
	);

	$('div.holtoggle h4').toggle(
		function() {
			$(this).css("border-bottom","1px solid #AFC8E6");
			$('div.togglerest').css("display","block");
			return false;
		},
		function() {
			$(this).css("border-bottom","none");
			$('div.togglerest').css("display","none");
			return false;
		}
	);

	$('#tabsContainer').tabs({
		onShow: function(){
			toShow = arguments[1];
			var ti = 1;
			cc = $('div', $('#tabsContainer')).size();
			for (i=0;i < cc;i++){
				$('#imgContainer').removeClass('tab' + (i+1));
			}
			ti = $('div', $('#tabsContainer')).index(toShow);
			$('#imgContainer').toggleClass('tab' + ti);
		}
	});


	$(window).resize(function(){
		if( $(window).innerWidth() < 1000){
			$('body').css("font-size","8pt");
			$('#toolsnav a').css("padding","5px");
			/*
			$('#right').css("width","150px");
			$('#left').css("width","150px");
			$('#center').css("margin","0px 155px");
			*/
		}
		else{
			$('body').css("font-size","10pt");
			$('#toolsnav a').css("padding","5px 10px");
			/*
			$('#right').css("width","170px");
			$('#left').css("width","160px");
			$('#center').css("margin","0 175px 0 165px;");
			*/
		}
	});

    /*
	 *
	 *$('form').submit(function(){
	*$('button').css('display','none');
		*return false;
	*});
	*/

    /*var tel= document.getElementById('msgblocklink-'+cargoshowel);
    if (typeof tel!='undefined'&&tel!=null){
        $('div.messanger-block .inner').show();
        popupLinkClick(document.getElementById('msgblocklink-'+cargoshowel));
    } */
});

function view_messenger(id){

    var $messanger = $('div#messanger-'+id);

    //  console.log($messanger);
    if (typeof $messanger=='undefined'||$messanger==null){
        //recreate div...
        return false;
    }
    var $tab = $('#tab-'+id);

    if (typeof $tab=='undefined'||$tab==null){
        return false;
    }

    var pos = $tab.offset();
    var tw = $tab.width();
    var mw = $messanger.width();

    var l = Math.max(pos.left + tw - mw+9/* - 13*/, 0);
    var b = $('div.open-messanger-tabs').height();
    //alert($(window).height() + ' ' + pos.top + ' ' + pos.left + l + ' ' + b);

    $('.viewmessage').hide();

    $messanger.css({
        left: l + 'px',
        bottom: b + 'px'
    });

    /*
	 * if text in a textarea add button class
	 */

    blurmsg[id]= 0;
    $('#message' + id).live('keyup', function(){
        if(this.value!='' && typeof blurmsg[id]!='undefined' && blurmsg[id]!=1){
            $(this).closest('.viewmessage').find('button').removeClass('blur').addClass('change');
            blurmsg[id]=1;
        }
        else if (this.value=='' && typeof blurmsg[id]!='undefined' && blurmsg[id]!=0){
            $(this).closest('.viewmessage').find('button').removeClass('change').addClass('blur');
            blurmsg[id]=0;
        }
    //alert(blurmsg[id]);
    });

    $('div.open-messanger-tabs a.tab').removeClass('on');
    $('div#tab-' + id +' a.tab').addClass('on');
    setCookie(curmessusr+'showel',id);
    /*
	 * setva se interval za update s novo id, kato se iztriva staria
	 */
    cargoshowel= id;

    $messanger.show(); //tova e izvyn timera, no e dobre da e tuk, zashtoto inache ima shans da zastypi interval sys staria div


	  $('#messanger-'+id+' div.text-message-box').each(function(i,v){
            $(v).scrollTop($(v).find('.chatarea').height());
		});
    if(cargoshowel!=null){
        var visible = cargoshowel;
    //console.log(visible);
    }
    curcargovisiblechat= cargoshowel;
    scrollmess(id);
    updateChat(curcargovisiblechat);
}

function close_messenger(id){

    if (getCookie(curmessusr+'messanger_clients') != null) {
        messanger_clients = getCookie(curmessusr+'messanger_clients').split(',');
    }
    var cookie_ids = removeItem(messanger_clients, id).toString();

    var $parentEl = $('#tab-'+id);
    deleteCookie(curmessusr+'showel');
    $parentEl.fadeOut(700, function(){
        $parentEl.remove();
        setTimeout(function(){
            var messanger_clients = getCookie(curmessusr+'messanger_clients');
            if (messanger_clients != null) {
                var el= $('a.on').attr('href');
                if (typeof el!='undefined'&&el!=null){
                    var tmpid = el.replace('#messanger-', '');
                    view_messenger(tmpid);
                }
            }
        }, 500);
    });

    var $messangerEl = $('div#messanger-' + id);
    $messangerEl.fadeOut(function(){
        $messangerEl.remove();
    });

    if (messanger_clients.length > 0) {
        deleteCookie(curmessusr+'messanger_clients');
        setCookie(curmessusr+'messanger_clients', cookie_ids, '');
    }
    else {
        $('div.display-tabs').fadeOut();
        $('div.open-messanger-tabs').fadeOut();
        deleteCookie(curmessusr+'messanger_clients');
    }

    curcargovisiblechat=-1;

    return false;
}

var originalURL = document.referrer||'Referrer unknown';

function offer(id,element){
    if(element){
        $(element).removeClass('new');
    }
    new_window('offer.php?id='+ id,'offer');
}

function company(id){
    new_window('company.php?cid='+ id,'company');
    return false;
}

function message(id){
    new_window('messanger.php?uid='+ id,'message');
    return false;
}

function new_window(url, win_name){
    win_name=window.open(url,win_name,'toolbar=no,location=no,scrollbars=yes,resizable=no,width=720,height=600,status=no,left=50,top=50,screenX=50,screenY=50');
    win_name.focus()
}

function pic_win(url,wintitle){
    picwin=window.open('image.php?pic='+url+'&name='+wintitle,'picwin','toolbar=no,scrollbars=no,width=620,height=485,left=0,top=0,screenX=0,screenY=0,status=no');
    picwin.focus();
}

function print_window(url){
    printwin=window.open(url,'printwin','toolbar=no,scrollbars=yes,width=800,height=480')
    printwin.focus()
}

function print_page(){
    window.print();
//	window.close();
}

/*
 * URL parser
 */
function parseUri (str) {
    var	o   = parseUri.options,
    m   = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
    uri = {},
    i   = 14;

    while (i--) uri[o.key[i]] = m[i] || "";

    uri[o.q.name] = {};
    uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
        if ($1) uri[o.q.name][$1] = $2;
    });

    return uri;
};

parseUri.options = {
    strictMode: false,
    key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
    q:   {
        name:   "queryKey",
        parser: /(?:^|&)([^&=]*)=?([^&]*)/g
    },
    parser: {
        strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
        loose:  /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
    }
};
/*
 * URL parser
 */

function removeItem(oArray, item) {

    for (i = 0; i < oArray.length; i++) {
        if (oArray[i] == item) {
            oArray.splice(i, 1);
        }
    }
    return oArray;
}

/*
 *  Cookie manipulation
 */
function setCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function deleteCookie(name) {
    setCookie(name,"",-1);
}
/*
 *  Cookie manipulation
 */


