var isExtended = 0;
var height = 350;
var width = 200;
var link_height_offset = 25;
var slideDuration = 250;
var opacityDuration = 1500;
var timerID1 = -1111;
var timerID2 = -1111;

var bumpinLinkDivOriginalHeight = 0;

var cssFiles = ["http://www.bumpin.com/new_web_widget/side_bar/bumpinSidechatWidget.css"];
var jsFiles = ["http://www.bumpin.com/web_widget/users/bar/notifications-min.js"];

loadScriptStyleFiles(jsFiles,cssFiles);

//***************  BEGIN :: JQuery FlipV plugin specific code  ************************//
function loadBumpin_cvi_text_lib_js(){
	jQuery.getScript("http://www.bumpin.com/new_web_widget/side_bar/cvi_text_lib.js");
}
function loadBumpin_jquery_flipv_js(){
	if (typeof set_textRenderContext == 'function') {
		jQuery.getScript("http://www.bumpin.com/new_web_widget/side_bar/jquery.flipv.js",
					function(){
						//code to be executed immediately after script loads
						jQuery('.flipv').flipv();
						bumpinLinkDivOriginalHeight = jQuery("#bumpin-link-div").height();
					}
		);
	}
	else{
		setTimeout(loadBumpin_jquery_flipv_js,500);
	}
}
function loadBumpin_jquery_flipv_plugin(){
	if(window.jQuery) {
		loadBumpin_cvi_text_lib_js();
		loadBumpin_jquery_flipv_js();		
	}
	else{
		//alert("jquery not loaded yet");
		setTimeout(loadBumpin_jquery_flipv_plugin,500);
	}
}
//load jquery flipv plugin files
loadBumpin_jquery_flipv_plugin();
//***************  END :: JQuery FlipV plugin specific code  ***********************//

function extendContract(){
	if(isExtended == 0){
		// bumpin is closed, now open it
		jQuery('#bumpin-sideBarContentsInner').css("padding-left","0px");
		
		bumpinSideBarSlide(0, height, 1, width);		
		//bumpinSideBarOpacity(0, 1);
		isExtended = 1;
		// make expand tab arrow image face left (inwards)
		jQuery("#bumpin-sideBarTab").css("background-image","url(http://www.bumpin.com/new_web_widget/side_bar/slide-button-active.png)");
		
		jQuery("#bumpin-link-div").css({'margin-top':0+'px','margin-left':0+'px'});
		jQuery("#bumpin-link-div").height((height-2)+'px');
		jQuery("#bumpin-sideBar").width((parseInt(width)+60)+'px');
	}
	else{
		// bumpin is open, now close it
		jQuery('#bumpin-sideBarContentsInner').css("padding-left","20px");
		
		bumpinSideBarSlide(height, 0+1, width, 1);
		//bumpinSideBarOpacity(1, 0);
		
		isExtended = 0;
		// make expand tab arrow image face right (outwards)
		jQuery("#bumpin-sideBarTab").css("background-image","url(http://www.bumpin.com/new_web_widget/side_bar/slide-button.png)");
		
		jQuery("#bumpin-link-div").css({"margin-top":136+'px',"margin-left":-28+'px'});
		jQuery("#bumpin-link-div").height(bumpinLinkDivOriginalHeight+'px');
		jQuery("#bumpin-sideBar").width(31 + 'px');
	}
}

function bumpinSideBarSlide(fromHeight, toHeight, fromWidth, toWidth) {
	jQuery("#bumpin-sideBarContents").css({'height': toHeight + 'px', 'width': toWidth + 'px'});
	//jQuery("#bumpin-sideBarContents").animate( { 'height': toHeight, 'width': toWidth }, { 'queue': false, 'duration': slideDuration }, "linear" );
}

//function bumpinSideBarOpacity(from, to){
	//jQuery("#bumpin-sideBarContents").animate( { 'opacity': to }, opacityDuration, "linear" );
//}


function loadOldBumpinSideBarWidget(args)
{
	loadNewBumpinSideBarWidgetBeforeWork(args);
	loadOldBumpinWidget(args);   
}

///////////// To load new refactored web widget //////////////////////////////////
function loadNewBumpinSideBarWidget(args)
{
	loadNewBumpinSideBarWidgetBeforeWork(args);
	loadNewBumpinWidget(args);
}
function loadNewBumpinSideBarWidgetWithoutPeopleList(args)
{
	loadNewBumpinSideBarWidgetBeforeWork(args);
	loadNewBumpinWidgetWithoutPeopleList(args);
}
function loadNewBumpinSideBarJSWidget(args)
{
	loadNewBumpinSideBarWidgetBeforeWork(args);

	//for js widget only
	//height = parseInt(height) + 8;

	loadNewBumpinJSWidgetWithoutPeoplelist(args);
}
function loadNewBumpinSideBarTagboardWidget(args)
{
	loadNewBumpinSideBarWidgetBeforeWork(args);

	//for js widget only
	//height = parseInt(height) + 8;

	loadNewBumpinTagBoardWidgetWithoutPeoplelist(args);
}


function loadNewBumpinSideBarWidgetBeforeWork(args)
{
   var bumpin_width = typeof args.width != 'undefined' ? args.width:"200";
   var bumpin_height = typeof args.height != 'undefined' ? args.height:"350";   
   
   height = bumpin_height;
   width = bumpin_width;
   jQuery('#bumpin-sideBarTab').click( function(){ 
		extendContract(); 
		bumpin_clear_notification();
		return false; 
	});	
	
	var bumpin_policy = ((typeof args.bumpin_policy != 'undefined') && (args.bumpin_policy != '')) ? args.bumpin_policy:"page";
	var bumpin_url = typeof args.bumpin_url != 'undefined' ? args.bumpin_url:"";

	get_clean_url_for_bumpin(bumpin_policy,bumpin_url);
	get_bumpin_count();
}
/////////////////////////////////////////////////////////////////////////////////////

function get_clean_url_for_bumpin(bumpin_policy,bumpin_url)
{
	url_bumpin = window.location.href;
	if (url_bumpin == null || url_bumpin == ""){ 
	    url_bumpin = document.location.href;
	}

	url_bumpin = url_bumpin.split("?")[0].split("#")[0]
	if (url_bumpin[url_bumpin.length - 1] == "/"){
    	url_bumpin = url_bumpin.substring(0,url_bumpin.length-1);
	}

	url_bumpin = remove_www_from_url(url_bumpin);  

	if( bumpin_policy == 'domain' ){
    	if( bumpin_url != '' ){ 
			// strip ? or # with parameters from bumpin_url if any
			bumpin_url = bumpin_url.split("?")[0].split("#")[0]
			if (bumpin_url[bumpin_url.length - 1] == "/"){
		    	bumpin_url = bumpin_url.substring(0,bumpin_url.length-1);
			}
			// remove 'www.' from bumpin_url if it exists
			bumpin_url = remove_www_from_url(bumpin_url);
			// make sure http:// or https:// is present in the bumpin_url
			if( bumpin_url.indexOf('http://') == -1 && bumpin_url.indexOf('https://') == -1 ){
				bumpin_url = 'http://' + bumpin_url;
			}

			url_bumpin = bumpin_url;
		}
		else{			
			server_name = url_bumpin.split('://')[1].split('/')[0];
			url_bumpin = url_bumpin.split('://')[0] + '://' + server_name;
		}
	}
     
}

function remove_www_from_url(page_url){
	var www_index = page_url.indexOf('www.');
	if( www_index != -1 && www_index < 10 ){
		page_url = page_url.split('www.')[0] + page_url.split('www.')[1];
	}
	return page_url;
}

function bumpin_notification() 
{
	if(isExtended == 0)
	{
		jQuery("#bumpin-sideBarTab").css("background-color","#FFC04D");
		//--setToOrange();
	}
}

function bumpin_clear_notification()
{	
	jQuery("#bumpin-sideBarTab").css("background-color","#e1e1e1");
	//stop the blinker timers
	//--clearTimeout(timerID1); 
	//--clearTimeout(timerID2); 
}

/*function setToOrange()
{
	jQuery("#bumpin-sideBarTab").css("background-color","orange");
	timerID1 = setTimeout( "setToNormal()", 800 );
}
*/
/*function setToNormal()
{
	jQuery("#bumpin-sideBarTab").css("background-color","#e1e1e1");
	timerID2 = setTimeout( "setToOrange()", 800 );	
}
*/
function get_bumpin_count(){
	jQuery.getJSON("http://site.bumpin.com/hotspot/get_bumpin_count?callback=?",{'url':url_bumpin},bumpin_count_response_handler);
	jQuery("#bumpin-count").hide("3000");
}

function bumpin_count_response_handler(data){
    url_bumpin_count = data;
	if(parseInt(url_bumpin_count)==0){
		url_bumpin_count = 1;
	}
    jQuery("#bumpin-count").html("" + url_bumpin_count);
	setTimeout("get_bumpin_count()",30000);
    jQuery("#bumpin-count").show("3000");
}

function loadScriptStyleFiles(js_files,css_files)
{
	for (i=0; i<js_files.length; i++){
	  loadjscssfile(js_files[i], "js");
	}
	for (j=0; j<css_files.length;j++){
	  loadjscssfile(css_files[j],"css");
	}
}

function loadjscssfile(filename, filetype){
	if (filetype=="js"){ 
		var fileref=document.createElement('script')
		fileref.setAttribute("type","text/javascript")
		fileref.setAttribute("src", filename)
	}
	else if (filetype=="css"){
		var fileref=document.createElement("link")
		fileref.setAttribute("rel", "stylesheet")
		fileref.setAttribute("type", "text/css")
		fileref.setAttribute("href", filename)
	}
	if (typeof fileref!="undefined")
		document.getElementsByTagName("head")[0].appendChild(fileref)
}

