if (! ("console" in window) || !("firebug" in console)) {
    var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group"
                 , "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"]; 
    window.console = {};
    for (var i = 0; i <names.length; ++i) window.console[names[i]] = function() {};
}

//global functions
var posBanner = 1,
   mediaDiv = $("<div class='media'><a href='#'></a></div>");
   

$(document).ready(function() {					   
			   
    var isIE = $.browser.msie;
    if (!isIE) {
        $('#home-page .banner .list-services li .content').css('background', 'url(common/images/background/bg-box-servicescontent.png) repeat left top');
    }

    $("#crole").change(onSelectChangeRedirectToRoles);

    $('.container-services table p').equalizeCols();
    $('.box-img div p').equalizeCols();
    Cufon.replace('#home-page .banner .list-services>li>a', { fontFamily: 'helvetica-neue-mc', hover: true });
    Cufon.replace('#home-page .banner .list-banner li .content h2', { fontFamily: 'helvetica-neue-mc' });
    Cufon.replace('#home-page .banner-consolidated .list-banner li .content h2', { fontFamily: 'helvetica-neue-mc' });
    Cufon.replace('#home-page .banner-arnold .list-banner li .content h2', { fontFamily: 'helvetica-neue-mc' });
    Cufon.replace('#home-page .banner-total .list-banner li .content h2', { fontFamily: 'helvetica-neue-mc' });


    $('.header .bottom-menu li').stackOrderIEFix();
    $('.header .main-menu li').stackOrderIEFix();
    $('.header .top-menu li#language').stackOrderIEFix();

    $('.main-menu li').hover(
		function() { $(this).addClass('hover'); },
		function() { $(this).removeClass('hover'); }
	);
    $('li#language').hover(
		function() { $(this).addClass('hover'); },
		function() { $(this).removeClass('hover'); }
	);
	
	$('.time-block').hide();
	
	//$(".timeline").accordion(function(){ } );
									  
	
	$('.trigger:first').addClass('active').next().show();
	
	$('.trigger').click(function(){
		if ( $(this).next().is(':hidden') ) {
			$('.trigger').removeClass('active').next().slideUp();
			$(this).toggleClass('active').next().slideDown();
		}
		else {
			$('.trigger').removeClass('active').next().slideUp();	
			//$(this).toggleClass('active');
		}
		return false;
	});
	
    var timerBanner = null;
    if ($('#home-page').length > 0 && $('#home-page ul.list-banner>li').length > 1) {
        timerBanner = setInterval(function() {
            var _list = $('.list-banner-nav li a');
            if (posBanner == _list.length) {
                posBanner = 0;
            }
            /**************/
            var _this = $(_list[posBanner]);
            var _lbanner = $('.list-banner');
            _lbanner.find('li').fadeOut();
            _lbanner.find(_this.attr('href')).fadeIn(4000);

            var _lnav = _this.parents('.list-banner-nav');
            _lnav.find('li.selected').removeClass('selected');
            _this.parents('li').addClass('selected');
            /**************/
            posBanner++;
        },
		13000);
    }

    $('table, table>thead>tr, table>tbody>tr, ul').each(function() {
        var _this = $(this);
        _this.find('>tbody>tr:first-child, >td:first-child, >li:first-child').addClass('first-child');
        _this.find('>tbody>tr:last-child, >th:last-child, >td:last-child, >li:last-child').addClass('last-child');
    });
    $('label.overlabel').overlabel();
    $('.box-img div p').equalizeCols();
    $('.list-services>li>a span').vAlign();
    $('.list-services>li').hover(
		function() {
		    var _this = $(this);
		    var _content = _this.find('.content');
		    if (_content) {
		        var _pos = 0;
		        var _objref = $('.main-menu');
		        var _poscommon = (_this.outerWidth(true) / 2) - (_content.outerWidth() / 2);
		        _pos = _poscommon;
		        /* begin */
		        if (_objref.offset().left > (_this.offset().left - Math.abs(_poscommon))) {
		            _pos = _objref.offset().left - _this.offset().left;
		        }

		        var _thislength = _this.offset().left + _this.outerWidth() + Math.abs(_poscommon);
		        var _objreflength = _objref.offset().left + _objref.outerWidth();
		        if (_thislength > _objreflength) {
		            _pos = _poscommon - (_thislength - _objreflength);
		        }

		        var _arrow = $(_content.find('.arrow'));
		        if (_arrow) {
		            try {
		                _arrow.css('left', Math.abs(_pos) + (_this.outerWidth() / 2) - (parseInt(_arrow.css('width').replace('px', '')) / 2));
		            } catch (error) { }
		        }
		        /* end */
		        _this.addClass('hover');
		        _content.css('left', _pos);
		        _content.show();
		    }
		},
		function() {
		    var _this = $(this);
		    _this.find('.content').hide();
		    _this.removeClass('hover');
		}
	);
    $('.list-banner-nav li a').click(
		function() {
		    var _this = $(this);
		    var _lbanner = $('.list-banner');
		    _lbanner.find('li').hide();
		    _lbanner.find(_this.attr('href')).show();

		    var _lnav = _this.parents('.list-banner-nav');
		    _lnav.find('li.selected').removeClass('selected');
		    _this.parents('li').addClass('selected');

		    clearInterval(timerBanner);
		    return false;
		}
	);
    $('.top-menu li').hover(
		function() {
		    $(this).find('ul.sub-menu').show();
		},
		function() {
		    $(this).find('ul.sub-menu').hide();
		}
	);
    $('.header .bottom-menu li').hover(
    function(){
    $(this).addClass('hover');
    },
    function(){
    $(this).removeClass('hover');
    }
    );
    $('#carousel-lastestnews').jCarouselLite({
        btnNext: ".box-lastest .next",
        btnPrev: ".box-lastest .prev",
        visible: 1,
        scroll: 1,
        speed: 1000
    });
    $('#dialog-leadership, #dialog-timeline').dialog({
        autoOpen: false,
        bgiframe: true,
		resizeable: false,
        width: 570,
        modal: true,
		//position: [auto,100],
		beforeclose: function(event){
			//alert("before close dialog");
			var currTarget = $(event.target);
			//console.debug("event %o  event target %o media div len %d", event, event.target,currTarget.find(".media div").length );
			
			if(currTarget.find(".media div").length > 0){
				var media = currTarget.find("div.media");
				try {
				//	media.find("object")[0].controls.pause();
				}
				catch(e) {
					//console.debug("wmp obj %o", media.find("object")[0]);
				}
				media.remove();
				currTarget.append(mediaDiv.clone());
//				alert("remove media box");
			}
			
		},
		open: function(event){
			//console.log("open event");	
			
		}
        /*buttons: {
        "Close": function() { 
        $(this).dialog("close"); 
        } 
        }*/
    });

    $("#csearch").keydown(function(event) {
        var thisVal = jQuery.trim($("#csearch").val());

        if (event.keyCode == 13 && thisVal != "") {
            event.preventDefault();
            event.stopPropagation();
            $("form").submit(function(event) {
                event.preventDefault();
                event.stopPropagation();
                return false;
            });
            ExecSearch('csearch');
            return false;
        }
        else if (event.keyCode == 13 && thisVal == "")
        {
            event.preventDefault();
            event.stopPropagation();
            return false;
        }
        
    });
	

});
/**/


function closeDialog( cid ){
	var dialogBox = $("#"+cid);
	
	dialogBox.dialog('close');
	return false;		
}
function openDialog( cid ){
	$('#'+cid).dialog('open');
	return false;
}
function openDialogSrc( cid, src ){
	var _objtemp = $('#'+cid);
	//console.log("open dialog");
	//console.debug("cid %s  src %s", cid, src);
	
	if(src.indexOf(".mp4") > 0) {
		//console.debug("src %s", src);
		_objtemp.find('iframe').hide();
		_objtemp.find(".media a").attr('href', src).media({width: 725, height: 550}).end().find(".media").show();
		$('#'+cid).dialog("option","width",745);
	}
	else {
		_objtemp.find(".media").hide();
		_objtemp.find('iframe').attr('src',src).show();
		$('#'+cid).dialog("option", "height","auto").dialog("option", "width", 570);
	}
	
	
	
	// console.debug("window %o", window);
	/*$(window.event).preventDefault();
	$(window.event).stopPropagation();
	*/
	$('#'+cid).dialog('open');
	
	//return false;
}
/**/
(function($){
	$.fn.stackOrderIEFix = function () {
		var zIndexNumber = 800;
		return this.each(function () {
		$(this).css('zIndex', zIndexNumber);
		zIndexNumber -= (zIndexNumber <= 0) ? 0 : 10;
		});
	};
	/* = plug-in : overlabel */
	$.fn.overlabel = function(options){
		var opts = $.extend( {},$.fn.overlabel.defaults, options );
		var selection = this.filter('label[for]').map(function(){
				var label = $(this);
				var id = label.attr('for');
				var field = $('#'+id);
				if(!field) return;
				var o = $.meta ? $.extend( {}, opts, label.data() ) : opts;
				label.addClass(o.label_class);
				var hide_label = function(){ label.css(o.hide_css) };
				var show_label = function(){ this.value || label.css(o.show_css) };
				$(field)
					.parent().addClass(o.wrapper_class).end()
					.focus(hide_label).blur(show_label).each(hide_label).each(show_label);
				return this;
		});
		return opts.filter ? selection : selection.end();
	};
	$.fn.overlabel.defaults = {
		label_class: 'overlabel-apply',
		wrapper_class: 'overlabel-wrapper',
		hide_css: { 'display': 'none' },
		show_css: { 'display': 'block' },
		filter: false
	};
	/********EQUALIZE************/
	$.fn.equalizeCols = function(){
		var height = 0,
			reset = $.browser.msie ? "1%" : "auto";
  
		return this
			.css("height", reset)
			.each(function() {
				height = Math.max(height, $(this).outerHeight(true));
			})
			.css("height", height)
			.each(function() {
				var h = $(this).outerHeight(true);
				if (h > height) {
					$(this).css("height", height - (h - height));
				};
			});	
	};
	// VERTICALLY ALIGN FUNCTION
	$.fn.vAlign = function() {
		return this.each(function(i){
			var ah = $(this).height();
			var ph = $(this).parent().height();
			var mh = (ph - ah) / 2;
			$(this).css('margin-top', mh);
		});
	};

})(jQuery);

