


var admob_vars = {
pubid: 'a14d49e560d53be', // MobiNow publisher id
//pubid: 'a14d142d4788a46', // Ixonos test publisher id
bgcolor: '804296', // background color (hex)
text: 'FFFFFF', // font-color (hex)
ama: false, // set to true and retain comma for the AdMob Adaptive Ad Unit, a special ad type designed for PC sites accessed from the iPhone.  More info: http://developer.admob.com/wiki/IPhone#Web_Integration
test: false,//true, // test mode, set to false to receive live ads
};

server = 
{

	//"serverIp":"https://www.funsexycool.com/mobileFSC/",
	//"serverIp":"http://www.funkysexycool.com/mobileFSC/",
	//"serverIp":"http://192.168.81.24/XMobileFSC/",
	"serverIp":"http://66.111.11.249:8080/XMobileFSC/",
	//"serverIp":"http://66.111.11.249/mobileFSC/",
};

loginUser = 
{
	"memberId":"memberId",
	"memberAge":"memberAge",
	"memberGender":"memberGender",
	"memberName":"memberName",
	"memberEmail":"memberEmail",
	"memberPassword":"memberPassword",
	"memberCountryId":"memberCountryId",
	"rgCountryId" : "rgCountryId",
	"imperial" : "imperial",
	"startFlirtYesOrNo" : "startFlirtYesOrNo",
	"countriesList" : "countriesList",
	"returnFromFaceBook" : "returnFromFaceBook",
	"FBLoadIndex" : "FBLoadIndex",
	"internationJs" : "internationJs",
	"hasEnteredFB" : "hasEnteredFB",
	"loginUserStatus":"loginUserStatus",
};
international=
{
	"hasReaded":"hasReaded",
};

facebook=
{
	"ajaxHead" : "ajaxHead",
};

twitter=
{
	"twAjaxHead":"twAjaxHead",
	"signature":"signature",
	"timeStamp":"timeStamp",
	"nonce":"nonce",
	"appkeys":"appkeyy",
};


inboxRecord=
{
	"friendId":"inboxFriendId",
	"messageId":"messageId",
	"friendName":"inboxFriendName",
};
viewMessage = 
{
	"friendId":"viewMessageFriendId",
	"friendName":"viewMessageFriendName",
	"previousPage":"viewMessagePreviousPage",
	"previousPageDeviceReadyFunc":"viewMessagePreviousPageDeviceReadyFunc",
};
enterFriends = {
	"toFriendsPage":"toFriendsPage",
	"previousPage":"friendsPreviousPage",
};

profileNextMember = {
	"nextMemberCount":"nextMemberCount",
	"memberToShowId":"profileMemberToShowId",
	"profileBackToPage":"profileBackToPage",
	"memberListPageNumber":"memberListPageNumber",
	"profileIsClickButton":"profileIsClickButton",
	"previousPageDeviceReadyFunc":"prefilePrePgDeviceReadyFunc",
	"profileIsEnterProfile":"profileIsEnterProfile",
	"distance":"distance",
	"isImperiral":"isImperiral",
	"nearMe":"nearMe",
	"homeProfile":"homeProfile"
};

AirMailApid = {
	"AirMailApids":"AirMailApids",
	"AirMailAppId":"AirMailAppId",
	"AirMailNextPage":"AirMailNextPage",
};

browseSettingsPage = {
	"browseSettingsBackPage":"browseSettingsBackPage",
	"browseSettingsBackType":"browseSettingsBackType",
	"browseSettingsType":"browseSettingsType",
	"browseSettingsName":"browseSettingsName",
	"browseSettingsValue":"browseSettingsValue",
	"browseSettingsBackPageDeviceReadyFunc":"browseSettingsBackPageDeviceReadyFunc",
};

contactUsPage = {
	"previousPage":"contactUsPrePg",
	"previousPageDeviceReadyFunc":"contactUsPrePgDeviceReadyFunc",
};

servicesPage = {
	"previousPage":"servicesPrePg",
	"previousPageDeviceReadyFunc":"servicesPrePgDeviceReadyFunc",
};


showGBsPage = {
	"previousPage" : "previousPage",
	"previousPageDeviceReadyFunc":"showGBsPagePrePgDeviceReadyFunc",
};

filirtForMeType = {
	"filirtForMeVoteType":"filirtForMeVoteType",
};

notificationInfo = {
	"deviceToken":"deviceToken",
};

profileFSC = {
	"profileIsFSC":"profileIsFSC",
	"FSCmemberToShowId":"FSCmemberToShowId",
	"FSCvoteType":"FSCvoteType",
};

point = {
	"addPointsNum" : "addPointsNum"
};

uploadPhoto = {
	"uploadPhotoPrePage" : "uploadPhotoPrePage",
	"previousPageDeviceReadyFunc":"uploadPhotoPrePgDeviceReadyFunc",
};

admobTag = {
	"admobment":"admobment",
};

favourite = {
	"currentPage":"currentPage",
};

ProfileAlbum = {
	"ProfileAlbumUserName":"ProfileAlbumUserName",
	"ProfileAlbumUserID":"ProfileAlbumUserID",
};
buyPointsPage = {
	"previousPage":"buyPointsPreviousPage",
	"previousPageDeviceReadyFunc":"buyPointsPrePgDeviceReadyFunc",
};

signUpExtraPage = {
	"extraBirthday" : "extraBirthday",
	"extraDay" : "extraDay",
	"extraMonth" : "extraMonth",
	"extraYear" : "extraYear",
	"extraZipCode" : "extraZipCode",
};


inviteFriends = 
{
	"msgList":"inviteFriendsMsgList"	
};
var com = function(){};

com.ixonos = function(){};

com.ixonos.fsc=function(){};

//true: we can enter the profile through the header image
var isPhotoRespond = true;


var touchEnvent = "touchend";


var fscTimeout = 30000;

var fscIsLoadingPage = false;

var fscIsMorePage = false;


//when current page has bottom bar , we should refresh the bottom bar
var fscHasBottomBar = false;

var b64pad  = ""; /* base-64 pad character. "=" for strict RFC compliance   */
var chrsz   = 8;  /* bits per input character. 8 - ASCII; 16 - Unicode      */

function log(context)
{
	alert(context);
}

com.ixonos.fsc.addAdmob = function(WhichPage)
{

	window.localStorage.setItem(admobTag.admobment, "No");
	 $.getScript('http://mmv.admob.com/static/iphone/iadmob.js', function(){
	 var ad = _admob.fetchAd(document.getElementById('admob_ad_top' + WhichPage));
	 $(document.getElementsByTagName("iframe")[0].contentWindow.document).bind("touchmove",function(event){
																						   event.preventDefault();
																						   event.stopPropagation();
																						   });

	 listenToLoad = function(){
				 if(ad.adEl.height != 48)
				 {
					window.setTimeout(listenToLoad, 50);
				 }
				 else
				 {
					if(WhichPage == "FFM"){
						$('.flirtForMeContentItems').append('<div id = "AdmobException"></div>');
						$('#AdmobException').remove();
					}
					else if(WhichPage == "Home"){
						$('.UploadPhotoItem').append('<div id = "AdmobException"></div>');
						$('#AdmobException').remove();
					}
					else if(WhichPage == "Browse"){
						$('.items').append('<div id = "AdmobException"></div>');
						$('#AdmobException').remove();
					}
					else if(WhichPage == "Profile"){
						$('.profileItem6ContentItem').append('<div id = "AdmobException"></div>');
						$('#AdmobException').remove();
					}
					
				 }
	 }
				 
	window.setTimeout(listenToLoad, 50);
				});
	$.getScript('http://mmv.admob.com/static/iphone/iadmob.js', function(){
				_admob.fetchAd(document.getElementById('admob_ad_bottom'));
				});
				
};


//stop touch move
com.ixonos.fsc.stopTouchMove = function(event)
{
	event.preventDefault();	
};


com.ixonos.fsc.recoverDefaultEvent = function(event)
{
	event.stopPropagation();
};


com.ixonos.fsc.initTouchScroll = function(selector)
{
	var activeScreen = document.querySelector(selector);
	(new TouchScroll(activeScreen, {elastic:true})).setupScroller(true);	
};


//the html string of bottom bar
com.ixonos.fsc.getBttomBarFrom = function(page)
{
	var bottomBarValue='';
	bottomBarValue ='<div class="bottom">';
	if(page == "Home")
	{
		bottomBarValue += 	'<div class="bottomItem homeItemOn">'+public.bottomHomeText+'</div>';
	}
	else
	{
		bottomBarValue += 	'<div class="bottomItem homeItemOff">'+public.bottomHomeText+'</div>';
	}
	
	if(page=="Browse")
	{
		bottomBarValue += 	' <div class="bottomItem browseItemOn">'+public.bottomBrowseText+'</div>';	
	}
	else
	{
		bottomBarValue += 	' <div class="bottomItem browseItemOff">'+public.bottomBrowseText+'</div>';	
	}
	if(page=="Inbox")
	{
		bottomBarValue += 	' <div class="bottomItem inboxItemOn">'+public.bottomInboxText+'</div>';	
	}
	else
	{
		bottomBarValue += 	' <div class="bottomItem inboxItemOff">'+public.bottomInboxText+'</div>';	
	}	
	if(page=="More")
	{
		bottomBarValue += 	' <div class="bottomItem moreItemOn">'+public.bottomMoreText+'</div>';	
	}
	else
	{
		bottomBarValue += 	' <div class="bottomItem moreItemOff">'+public.bottomMoreText+'</div>';	
	}	
	bottomBarValue += '</div>';
	
	if(page=="Flirts")
	{
		bottomBarValue += 	' <div class="bottomItem flirtsItemOn">'+public.bottomFlirtsText+'</div>';	
	}
	else
	{
		bottomBarValue += 	' <div class="bottomItem flirtsItemOff">'+public.bottomFlirtsText+'</div>';	
	}	
	bottomBarValue += '<div class="numIcon filrtsItemNum"></div>';
	bottomBarValue += '<div class="numIcon inboxItemNum"></div>';
	bottomBarValue += '<div class="numIcon moreItemNum"></div>';
	
	return bottomBarValue;
};



/**
 * init bottom bar  
 */
com.ixonos.fsc.initBottomBar = function(page)
{	
	fscHasBottomBar = true;
	
	$(".bottomBar").append(com.ixonos.fsc.getBttomBarFrom(page));
	$(".numIcon").hide();
	if(page != "changeNumPage" && page!="Flirts")
	{
		com.ixonos.fsc.initBottomUnreadNums();
	}

	
	$(".homeItemOff").unbind();
	$(".browseItemOff").unbind();
	$(".inboxItemOff").unbind();
	$(".moreItemOff").unbind();
	$(".flirtsItemOff").unbind();

	$(".homeItemOff").bind(touchEnvent,function()
	{
		loadPage("html/home.html","com.ixonos.home.onDeviceReady");
						   
	});
	
	$(".browseItemOff").bind(touchEnvent,function()
	{
		loadPage("html/browseMembers.html","com.ixonos.browseMembers.onDeviceReady");
	});
	
	$(".inboxItemOff").bind(touchEnvent,function()
	{
		loadPage("html/inbox.html","com.ixonos.inbox.onDeviceReady");

	});
	
	$(".moreItemOff").bind(touchEnvent,function()
	{
		loadPage("html/more.html","com.ixonos.more.onDeviceReady");

	});
	
	$(".flirtsItemOff").bind(touchEnvent,function()
	{
		window.localStorage.setItem(filirtForMeType.filirtForMeVoteType,0);					 
		loadPage("html/flirtForMe.html","com.ixonos.flirtForMe.onDeviceReady");							 
	});
};

/*record number of every item*/
var fscGiftNum = 0;
var fscWinkNum = 0;
var fscFavouriteNum = 0;
var fscMorePageNum = 0;
var fscInboxPageNum = 0;
var fscFlirtsNum = 0;

var fscGetingUnreadNum = false;
com.ixonos.fsc.initBottomUnreadNums = function(fromIndex)
{
	com.ixonos.fsc.setNumInDiv();
	com.ixonos.fsc.getUnreadNums(fromIndex);
};


com.ixonos.fsc.getUnreadNums = function(fromIndex)
{
	fscGetingUnreadNum = true;			  

	var memberId = window.localStorage.getItem(loginUser.memberId);		
	var url = server.serverIp + "rest/flirtServer/getCountsPns?memberId=" + memberId;
	console.log("url is : " + url);
	
	$.ajaxSetup({timeout:parseInt(fscTimeout),"error":function()
				{
					com.ixonos.fsc.resetBottomBarNum(fromIndex);					
				}});
	
	$.getJSON(url,
			  function(string)
			  {
				if(string.status == 1)
				{
					fscGiftNum = string.gift;
					fscWinkNum = string.wink;
					fscFavouriteNum = string.favourite;
					fscMorePageNum = fscGiftNum+fscWinkNum+fscFavouriteNum;
					fscInboxPageNum = string.message;
					fscFlirtsNum = string.flirt;
					com.ixonos.fsc.setNumInDiv();
					com.ixonos.fsc.resetBottomBarNum(fromIndex);
				}
			  });			  
};

com.ixonos.fsc.setNumInDiv = function()
{
	if(fscIsMorePage)
	{
		com.ixonos.fsc.changDivContent(".moreWinksNum",fscWinkNum);
		com.ixonos.fsc.changDivContent(".moreGiftsNum",fscGiftNum);
		com.ixonos.fsc.changDivContent(".moreFavoriteNum",fscFavouriteNum);		
	}
	com.ixonos.fsc.changDivContent(".moreItemNum",fscMorePageNum);
	com.ixonos.fsc.changDivContent(".inboxItemNum",fscInboxPageNum);
	com.ixonos.fsc.changDivContent(".filrtsItemNum",fscFlirtsNum);
	
}

com.ixonos.fsc.changDivContent = function(changeDivName,divContent)
{
	if(divContent == 0 || divContent == '')
	{
		$(changeDivName).html(0);
		$(changeDivName).hide();
	}
	else
	{
		var changeDivNameId = setInterval(function()
										  {
												$(changeDivName).html(divContent);
												if($(changeDivName).html() != '')
												{
													$(changeDivName).show();
													clearInterval(changeDivNameId);
												}
										  },10);
	}
}

//when we enter the program after click the home button, we should refresh the current page
com.ixonos.fsc.refreshBottomBar = function()
{
//	if(buyPointsReturnFsc)
//	{
//		return;
//	}
	if(fscHasBottomBar)
	{	
		if(!fscGetingUnreadNum)
		{
			loadLoadingPage();
			com.ixonos.fsc.initBottomUnreadNums(true);
		}
	}
};

com.ixonos.fsc.resetBottomBarNum = function(fromIndex)
{
	if(fromIndex)
	{
		com.ixonos.fsc.removeLoadPage();
	}
	
	fscGetingUnreadNum = false;

};

/**
 * change the source string to upper 
 */
com.ixonos.fsc.toSupperStr = function(sourceStr)
{
	var ar = sourceStr.split('');
	var returnStr = "";
	for(var i = 0; i < ar.length; i++)
	{
		returnStr += ar[i].toUpperCase();		
	}		

	return returnStr; 
};

/**
 * get the points number from server
 */
com.ixonos.fsc.setPointsNum = function()
{

	var memberId = window.localStorage.getItem(loginUser.memberId);	
	var points = window.localStorage.getItem(buyPoints.currentMemberPoints);
	if(points != null && points != '')
	{
		var setPointsId = setInterval(function()
									  {
										$(".pointsNum").html(points);
										if($(".pointsNum").html() != '')
										{
											clearInterval(setPointsId);
										}
									  },2);
	}
	var url = server.serverIp + "rest/homeServer/points?memberId=" + memberId ;
	$.getJSON(url,
			  function(string)
			  {
  			  if(typeof string == "undefined")
			  {
			  //com.ixonos.fsc.serverErrorAlert();
			  }
			  else
			  {
			  
				if(string.status == 1)
				{
				var setPointsServerReturnId = setInterval(function()
											{
											   $(".pointsNum").html(string.points);
											   if($(".pointsNum").html() != '')
											   {
											      clearInterval(setPointsServerReturnId);
											   }
											},2);
				
					window.localStorage.setItem(buyPoints.currentMemberPoints, string.points);
				}
			  }
			});	
};


com.ixonos.fsc.moveToOriginal = function(event)
{
	window.scrollTo(0,0);
};


/* stop the input box moving ------- begin */
com.ixonos.fsc.addCover = function(cover, element)
{
	cover.addEventListener( 'click', function() { com.ixonos.fsc.hideLayover ( cover, element ) }, false );
	element.addEventListener( 'focus', function() { com.ixonos.fsc.hideLayover ( cover, element ) }, true );
	
};

com.ixonos.fsc.hideLayover = function( layoverElement, inputElement ) 
{
	layoverElement.style.display = "none";
	inputElement.focus();
	inputElement.addEventListener( 'blur', function() { com.ixonos.fsc.showLayover( layoverElement ) }, false );	
};

com.ixonos.fsc.showLayover = function( layoverElement ) {
	layoverElement.style.display = "block";
	
};

/* stop the input box moving ------- end */

com.ixonos.fsc.loginOut = function()
{
	com.ixonos.fsc.loadPage("morePage",1);
	$("body").unbind("ajaxSend");
	
	var memberId = window.localStorage.getItem(loginUser.memberId);	
	var deviceToken = window.localStorage.getItem(notificationInfo.deviceToken);
	var countryList = window.localStorage.getItem(loginUser.countriesList);
	var data = window.localStorage.getItem(loginUser.internationJs);
	
	window.localStorage.clear();
	
	window.localStorage.setItem(notificationInfo.deviceToken,deviceToken);
	log("setted 597. fsc.js");
	window.localStorage.setItem(loginUser.countriesList, countryList);	
	window.localStorage.setItem(loginUser.internationJs, data);

	window.localStorage.setItem(international.hasReaded, "Yes");	
	window.localStorage.setItem(loginUser.returnFromFaceBook, "FALSE");
	window.localStorage.setItem(loginUser.loginUserStatus,"NO");

	fscGiftNum = 0;
	fscWinkNum = 0;
	fscFavouriteNum = 0;
	fscMorePageNum = 0;
	fscInboxPageNum = 0;
	fscFlirtsNum = 0;
	//location.href="../index.html";	
	
	$.ajaxSetup({timeout:parseInt(fscTimeout),"error":function()
		{
			com.ixonos.fsc.removeLoadPage();
			loadPage("login.html","com.ixonos.login.onDeviceReady");
		}});

	var url = server.serverIp + "rest/loginServer/loginOut?currentMemberId=" + memberId;
	$.getJSON(url,
			  function(string)
			  {
				com.ixonos.fsc.removeLoadPage();
				loadPage("login.html","com.ixonos.login.onDeviceReady");
			  });	
};


/******** get country picture  ***********/
com.ixonos.fsc.getCountryIcon = function( countryPic)
{
	return server.serverIp + "images/flags/48/" + countryPic + ".png";
}

/******* add load page and remove load page ***********/
com.ixonos.fsc.loadPage = function(selector, pageNumber, pageName)
{
	if(typeof pageNumber == undefined || pageNumber == '')
	{
		pageNumber = 1;
	}

	fscIsLoadingPage = true;
	var html = '';
	html += '<div class="loadingPage">';
	html +=		'<div class = "loadingMessage"><div class="loadingPic"><img class="loadingPageGif" src=""/></div></div>';
	html += '</div>';
	$("body #" + selector).append(html);
	$(".loadingPageGif")[0].src="";
	$(".loadingPageGif")[0].src="img/backupIcons/Public/loading.gif";

	$.ajaxSetup({timeout:parseInt(fscTimeout)* parseInt(pageNumber),"error":function()
				{
					if(fscIsLoadingPage)
					{
					//console.log("llllllllllllllllllll selector is : " +selector);
				        if(selector == "register")
				        {
				          $('#rgJoinFree').attr('disabled', '');
				        }   
						com.ixonos.fsc.removeLoadPage();	
						com.ixonos.fsc.alert(public.serverUnavailableText,function(){}, public.serverErrorText);
					}
				}});
	
//	setTimeout(function()
//	{
//		if(fscIsLoadingPage)
//		{
//			com.ixonos.fsc.removeLoadPage();	
//			com.ixonos.fsc.alert(public.serverUnavailableText,function(){}, public.serverErrorText);
//			   
//		}
//	},parseInt(fscTimeout)* parseInt(pageNumber));
//	
};

com.ixonos.fsc.removeLoadPage = function()
{
	fscIsLoadingPage = false;
	$(".loadingPage").remove();	
	
};

/************ alert function  *********/
com.ixonos.fsc.alert = function(message, alertCallback, title, buttonName)
{
	
	navigator.notification.alert(message, alertCallback, title, buttonName);
};

com.ixonos.fsc.serverErrorAlert = function()
{
	navigator.notification.alert(public.serverExceptionText, function(){}, public.errorTitleText);
};



/********* get the gps location  ********/
com.ixonos.fsc.getPosition = function()
{
	window.localStorage.setItem("currentLatitude", -1000);	
	window.localStorage.setItem("currentLongitude", -1000);
	
	var win = function(position)
	{
		window.localStorage.setItem("currentLatitude", position.coords.latitude);	
		window.localStorage.setItem("currentLongitude", position.coords.longitude);	
	};
	
	var fail = function(e)
	{	
		//alert(e);
	};
	navigator.geolocation.getCurrentPosition(win, fail);
};


//add by jk
com.ixonos.fsc.cutText = function(txt, len)
{
	var temp = "";	
	if(typeof txt == "undefined")
	{
		return temp;
	}
	
	temp = txt;
	if(temp.length > len)
	{
		temp = temp.substr(0, len-2) + '...';
	}
	return temp;
}

com.ixonos.fsc.addAjaxSend = function()//function testAjaxSend()
{
	//window.localStorage.setItem(loginUser.returnFromFaceBook, "TRUE");
	var username = window.localStorage.getItem(loginUser.memberName);//"pgh-panda";
	var userEmail = window.localStorage.getItem(loginUser.memberEmail);
	var password = 	window.localStorage.getItem(loginUser.memberPassword);//"123456";
	var countryId = window.localStorage.getItem(loginUser.memberCountryId);//"1";
	var isFaceBook = window.localStorage.getItem(facebook.ajaxHead);
	var isTwitter = window.localStorage.getItem(twitter.twAjaxHead);
	var AppKey = window.localStorage.getItem(twitter.appkeys);
	
	$("body").ajaxSend(function(evt,xhr,settings)
					   {
							if(typeof userEmail != "undefined" && userEmail != null && userEmail != '' )
							{					   
								if(isFaceBook == "TRUE"){
									xhr.setRequestHeader("X-FSC-Auth", userEmail + ","+password + ","+countryId+ ","+ "F" + "," + AppKey);
									//xhr.setRequestHeader("X-FSC-Auth", userEmail + ","+password + ","+countryId+ ","+ "from" + "," + "F");
								}
								else if(isTwitter == "TRUE"){
									xhr.setRequestHeader("X-FSC-Auth", userEmail + ","+password + ","+countryId+ ","+ "T" + "," + AppKey);
									//xhr.setRequestHeader("X-FSC-Auth", userEmail + ","+password + ","+countryId+ ","+ "from" + "," + "T");
								}
								else{
									xhr.setRequestHeader("X-FSC-Auth", userEmail + ","+password+","+countryId);
								}
							}
					   });	
};

com.ixonos.fsc.requestHeaderError = function()
{
	navigator.notification.alert("Request header Error", function(){}, public.errorTitleText);
};

com.ixonos.fsc.getBadgeNumber = function(){
	return 0;
}

com.ixonos.fsc.getDeviceToken = function(devToken){
	window.localStorage.setItem(notificationInfo.deviceToken,devToken);
};

com.ixonos.fsc.getSentTime = function(sentMinutes){
	if(sentMinutes < 60){
		if(sentMinutes == 1 || sentMinutes == 0){
			return (1 + sentTime.sentTimeMinute);
		}
		
		return (sentMinutes + sentTime.sentTimeMinutes);
	}
	
	var timeHours = sentMinutes/60;
	
	if(timeHours < 24){
		if(parseInt(timeHours) == 1){
			return (parseInt(timeHours) + sentTime.sentTimeHour);
		}
		
		return (parseInt(timeHours) + sentTime.sentTimeHours);
	}
	else if(timeHours >= 24 && timeHours < 168){
		var timeDays = parseInt(timeHours/24);
		
		if(timeDays == 1){
			return (timeDays + sentTime.sentTimeDay);
		}
		
		return (timeDays + sentTime.sentTimeDays);
	}
	else if(timeHours >= 168 && timeHours < 720){
		var timeWeeks = parseInt(timeHours/168);
		
		if(timeWeeks == 1){
			return (timeWeeks + sentTime.sentTimeWeek);
		}
		
		return (timeWeeks + sentTime.sentTimeWeeks);
	}
	else if(timeHours >= 720 && timeHours < 8640){
		var timeMonths = parseInt(timeHours/720);
		
		if(timeMonths == 1){
			return (timeMonths + sentTime.sentTimeMonth);
		}
		
		return (timeMonths + sentTime.sentTimeMonths);
	}
	else if(timeHours >= 8640 && timeHours < 864000){
		var timeYears = parseInt(timeHours/8640);
		
		if(timeYears == 1){
			return (timeYears + sentTime.sentTimeYear);
		}
		
		return (timeYears + sentTime.sentTimeYears);
	}
	else
	{
		return (sentTime.sentTimeSYears);
	}
};



com.ixonos.fsc.setGender = function(genderValue)
{
	  url = server.serverIp + "rest/browseServer/updateGender";
	  var memId = window.localStorage.getItem(loginUser.memberId);
	  
	  $.post(url, {currentMemberId:memId, gender:genderValue},
		function(data)
		{
			 if (data.status == 1)
			 {
			 
			 }
			 else if (data.status == 2)
			 {
			 com.ixonos.fsc.serverErrorAlert();
			 }					 
			 else if(data.status == 5)
			 {
			 com.ixonos.fsc.alert(browseMembers.updateBasicBrowseSet5, function(){}, public.errorTitleText);	
			 //return;
			 }
			 else if(data.status == -100)
			 {
			 com.ixonos.fsc.requestHeaderError();
			 }
			 else
			 {
			 com.ixonos.fsc.serverErrorAlert();
			 
			 }
		},
		"json"
		);
};

com.ixonos.fsc.LoginByFaceBook = function(code)
{
    //window.localStorage.setItem(loginUser.FBLoadIndex, "TRUE");	
	window.localStorage.setItem(loginUser.returnFromFaceBook, "TRUE");

	//var my_secret         = "ad37d3c02a60cf212ef0735777fe3919",
	//my_client_id  = "148769898520160",
	var my_secret         = "9bb4aba6f0be697f1a655808ac454583",
	my_client_id  = "201409693215661",
	my_redirect_uri   = "http://www.facebook.com/connect/login_success.html"
	
	var accessTokenUrl = "https://graph.facebook.com/oauth/access_token?client_id=";
	accessTokenUrl += my_client_id;
	accessTokenUrl += "&client_secret=" + my_secret;
	accessTokenUrl += "&redirect_uri=" + my_redirect_uri;
	accessTokenUrl += "&code=" + code;

	$.post(accessTokenUrl,function(string){		   

		   accessTokenStartIndex = string.indexOf("=");
		   accessTokenEndIndex = string.indexOf("&");
		   
		   accessToken = string.substring(accessTokenStartIndex + 1, accessTokenEndIndex);
		   window.localStorage.setItem(twitter.appkeys, accessToken);
		   
		   var url = "https://graph.facebook.com/me?access_token=";
		   url += accessToken;
		   
		   $.getJSON(url,function(string){

					 window.localStorage.setItem(loginUser.memberEmail, string.email);
					 
					 if(string.gender == "female")
					 {
					 gender = "F"; 
					 }
					 else{
					 gender = "M";
					 }
					 
					 birthday = string.birthday;
					 month = birthday.substring(0, 2);
					 day = birthday.substring(3, 5);
					 year = birthday.substring(6, 10);
					 picurl = "http://graph.facebook.com/" + string.id + "/picture?type=large";
					 
					 if((typeof string.locale != "undefined") && (string.locale != null) && (string.locale != ""))
						window.localStorage.setItem(loginUser.rgCountryId, string.locale);
					 
					 window.localStorage.setItem(facebook.ajaxHead, "TRUE");
					 com.ixonos.fsc.loginByOthers(string.first_name, string.last_name, string.email, gender, accessToken, "facebook", day, month, year, "", picurl);
					 });
		   
		   });
};

com.ixonos.fsc.loginByOthers = function(first_name, last_name, email, gender, accessToken, which, day, month, year, zipcode, picurl){
	var countryIdStr = window.localStorage.getItem(loginUser.rgCountryId);
	var latitude = window.localStorage.getItem("currentLatitude");	
	var longitude = window.localStorage.getItem("currentLongitude");
	//var devToken = window.localStorage.getItem(notificationInfo.deviceToken);
	
	var urlLogin = server.serverIp + "rest/loginServer/loginByOther";
	var apid = "0123456789abcde";

	$.getJSON(urlLogin,{memberInfo:first_name, lastName: last_name, countryId:countryIdStr, longitude:longitude, latitude:latitude, deviceId:apid, gender:gender, email:email, appKey: accessToken,
			  day: day, month: month, year: year, ZIPCode: zipcode, picUrl: picurl, phoneType:1}, 
			  function(string)
			  {
				  if(typeof string.status == 'undefined')
				  {
					com.ixonos.fsc.serverErrorAlert();
				  }
				  else{
					  if((string.status == 1) || (string.status == 7))
					  {
					  window.localStorage.setItem("selfPicpath", string.selfPicpath); 
					  window.localStorage.setItem(loginUser.memberId, string.id); 
					  window.localStorage.setItem(loginUser.memberAge, string.age); 
					  window.localStorage.setItem(loginUser.memberGender, string.gender); 
					  window.localStorage.setItem(loginUser.memberName, string.memberInfo);
					  window.localStorage.setItem(loginUser.memberPassword, string.password);
					  
					  window.localStorage.setItem(loginUser.memberCountryId, string.countryId);
					  window.localStorage.setItem(profileFSC.profileIsFSC, "No");
					  window.localStorage.setItem(profileNextMember.nextMemberCount,0);
					  window.localStorage.setItem(profileNextMember.profileIsEnterProfile,"NO");
					  window.localStorage.setItem(loginUser.loginUserStatus,"YES");
					  window.localStorage.setItem(profileNextMember.memberListPageNumber,1);
					  window.localStorage.setItem(buyPointsPage.previousPage,"html/more.html");
					  window.localStorage.setItem(buyPointsPage.previousPageDeviceReadyFunc,"com.ixonos.more.onDeviceReady");
					  
					  window.localStorage.setItem(uploadPhoto.uploadPhotoPrePage, "html/home.html"); 		
					  window.localStorage.setItem(loginUser.imperial,string.isImperial);
					  window.localStorage.setItem(AirMailApid.AirMailApids, "Yes");
				      window.localStorage.setItem(AirMailApid.AirMailAppId, "null");
					  
					  com.ixonos.fsc.addAjaxSend(); 
					  
					  var isInstalledAM = window.goToIndex.isAppInstalled("com.urbanairship.airmail");
	
					//  com.ixonos.fsc.removeLoadPage();
					  setTimeout(function(){
					  			window.localStorage.setItem(loginUser.FBLoadIndex, "FALSE");
								 if(string.isNewMember == "T")
								 {
									if(which == "facebook"){
										if(isInstalledAM){
											loadPage("html/startFlirt.html","com.ixonos.startFlirt.onDeviceReady");
										}
										else{
											window.localStorage.setItem(AirMailApid.AirMailNextPage, "facebook");
				  							loadPage("html/AirMail.html","com.ixonos.AirMail.onDeviceReady");
										}
									}
									else if(which == "twitter"){
										window.localStorage.setItem(loginUser.startFlirtYesOrNo,"Yes");
										
										if(isInstalledAM){
											loadPage("html/signUpExtraInfo.html","com.ixonos.signUpExtra.onDeviceReady");
										}
										else{
											window.localStorage.setItem(AirMailApid.AirMailNextPage, "twitter");
				  							loadPage("html/AirMail.html","com.ixonos.AirMail.onDeviceReady");
										}
									}
									else
									{
										if(isInstalledAM){
											loadPage("html/home.html","com.ixonos.home.onDeviceReady");
										}
										else{
											window.localStorage.setItem(AirMailApid.AirMailNextPage, "newMember");
				  							loadPage("html/AirMail.html","com.ixonos.AirMail.onDeviceReady");
										}
									}
								 }
								 else
								 {
								 	if(isInstalledAM){
								 		loadPage("html/home.html","com.ixonos.home.onDeviceReady");
								 	}
								 	else{
								 		window.localStorage.setItem(AirMailApid.AirMailNextPage, "normalMember");
				  						loadPage("html/AirMail.html","com.ixonos.AirMail.onDeviceReady");
								 	}
								 }
							},100);
					  }
				  }
			  
				  com.ixonos.fsc.removeLoadPage();
			  });
} 

com.ixonos.fsc.getTimestamp = function(){
	var t = (new Date()).getTime();
	return Math.floor(t / 1000);
};

com.ixonos.fsc.getNonce = function(length){
	var baseChars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
	
	var nonce = "";
	for (var i = 0; i < length; ++i) {
		var rnum = Math.floor(Math.random() * baseChars.length);
		nonce += baseChars.substring(rnum, rnum+1);
	}
	
	return nonce;
};

com.ixonos.fsc.getSignature = function(key, basestring){
	b64pad = '=';
	chrsz   = 8;
	var signature = com.ixonos.fsc.binb2b64(com.ixonos.fsc.core_hmac_sha1(key, basestring));
	signature = com.ixonos.fsc.percentEncode(signature);

	return signature;
}

/*
 * Convert an array of big-endian words to a base-64 string
 */
com.ixonos.fsc.binb2b64 = function(binarray)
{
	var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
	var str = "";
	for(var i = 0; i < binarray.length * 4; i += 3)
	{
		var triplet = (((binarray[i   >> 2] >> 8 * (3 -  i   %4)) & 0xFF) << 16)
		| (((binarray[i+1 >> 2] >> 8 * (3 - (i+1)%4)) & 0xFF) << 8 )
		|  ((binarray[i+2 >> 2] >> 8 * (3 - (i+2)%4)) & 0xFF);
		for(var j = 0; j < 4; j++)
		{
			if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
			else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
		}
	}
	
	return str;
};

/*
 * Calculate the HMAC-SHA1 of a key and some data
 */
com.ixonos.fsc.core_hmac_sha1 = function(key, data)
{
	var bkey = com.ixonos.fsc.str2binb(key);
	if(bkey.length > 16) bkey = com.ixonos.fsc.core_sha1(bkey, key.length * chrsz);
	
	var ipad = Array(16), opad = Array(16);
	for(var i = 0; i < 16; i++)
	{
		ipad[i] = bkey[i] ^ 0x36363636;
		opad[i] = bkey[i] ^ 0x5C5C5C5C;
	}
	
	var hash = com.ixonos.fsc.core_sha1(ipad.concat(com.ixonos.fsc.str2binb(data)), 512 + data.length * chrsz);

	return com.ixonos.fsc.core_sha1(opad.concat(hash), 512 + 160);
};

/*
 * Convert an 8-bit or 16-bit string to an array of big-endian words
 * In 8-bit function, characters >255 have their hi-byte silently ignored.
 */
com.ixonos.fsc.str2binb = function(str)
{
	var bin = Array();
	var mask = (1 << chrsz) - 1;
	for(var i = 0; i < str.length * chrsz; i += chrsz)
		bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (32 - chrsz - i%32);
	return bin;
};


/*
 * Calculate the SHA-1 of an array of big-endian words, and a bit length
 */
com.ixonos.fsc.core_sha1 = function(x, len)
{
	/* append padding */
	x[len >> 5] |= 0x80 << (24 - len % 32);
	x[((len + 64 >> 9) << 4) + 15] = len;
	
	var w = Array(80);
	var a =  1732584193;
	var b = -271733879;
	var c = -1732584194;
	var d =  271733878;
	var e = -1009589776;
	
	for(var i = 0; i < x.length; i += 16)
	{
		var olda = a;
		var oldb = b;
		var oldc = c;
		var oldd = d;
		var olde = e;
		
		for(var j = 0; j < 80; j++)
		{
			if(j < 16) w[j] = x[i + j];
			else w[j] = com.ixonos.fsc.rol(w[j-3] ^ w[j-8] ^ w[j-14] ^ w[j-16], 1);
			var t = com.ixonos.fsc.safe_add(com.ixonos.fsc.safe_add(com.ixonos.fsc.rol(a, 5), com.ixonos.fsc.sha1_kt4(j, b, c, d)),
											com.ixonos.fsc.safe_add(com.ixonos.fsc.safe_add(e, w[j]), com.ixonos.fsc.sha1_kt(j)));
			e = d;
			d = c;
			c = com.ixonos.fsc.rol(b, 30);
			b = a;
			a = t;
		}
		
		a = com.ixonos.fsc.safe_add(a, olda);
		b = com.ixonos.fsc.safe_add(b, oldb);
		c = com.ixonos.fsc.safe_add(c, oldc);
		d = com.ixonos.fsc.safe_add(d, oldd);
		e = com.ixonos.fsc.safe_add(e, olde);
	}
	return Array(a, b, c, d, e);
	
};

/*
 * Bitwise rotate a 32-bit number to the left.
 */
com.ixonos.fsc.rol = function(num, cnt)
{
	return (num << cnt) | (num >>> (32 - cnt));
};


/*
 * Add integers, wrapping at 2^32. This uses 16-bit operations internally
 * to work around bugs in some JS interpreters.
 */
com.ixonos.fsc.safe_add = function(x, y)
{
	var lsw = (x & 0xFFFF) + (y & 0xFFFF);
	var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
	return (msw << 16) | (lsw & 0xFFFF);
};

/*
 * Perform the appropriate triplet combination function for the current
 * iteration
 */
com.ixonos.fsc.sha1_kt4 = function(t, b, c, d)
{
	if(t < 20) return (b & c) | ((~b) & d);
	if(t < 40) return b ^ c ^ d;
	if(t < 60) return (b & c) | (b & d) | (c & d);
	return b ^ c ^ d;
};

/*
 * Determine the appropriate additive constant for the current iteration
 */
com.ixonos.fsc.sha1_kt = function(t)
{
	return (t < 20) ?  1518500249 : (t < 40) ?  1859775393 :
	(t < 60) ? -1894007588 : -899497514;
};

com.ixonos.fsc.formEncode = function(request_method, request_url, consumer_key, nonce, signature_method, timestamp, version)
{
	var baseString = "";
	
	if (request_method == null){
		request_method = "";
	}
	
	if (request_url == null){
		request_url = "";
	}
	
	if (consumer_key == null){
		consumer_key = "";
	}
	
	if (nonce == null){
		nonce = "";
	}
	
	if (signature_method == null){
		signature_method = "";
	}
	
	if (timestamp == null){
		timestamp = "";
	}
	
	if (version == null){
		version = "";
	}
	
	var urlParameter = com.ixonos.fsc.percentEncode("oauth_consumer_key")+'='+ com.ixonos.fsc.percentEncode(consumer_key)
	+'&'+com.ixonos.fsc.percentEncode("oauth_nonce")+'='+ com.ixonos.fsc.percentEncode(nonce)
	+'&'+com.ixonos.fsc.percentEncode("oauth_signature_method")+'='+ com.ixonos.fsc.percentEncode(signature_method)
	+'&'+com.ixonos.fsc.percentEncode("oauth_timestamp")+'='+ com.ixonos.fsc.percentEncode(timestamp)
	+'&'+com.ixonos.fsc.percentEncode("oauth_version")+'='+ com.ixonos.fsc.percentEncode(version);
	
	baseString = com.ixonos.fsc.percentEncode(request_method)
	+'&'+com.ixonos.fsc.percentEncode(request_url)
	+'&'+com.ixonos.fsc.percentEncode(urlParameter);
	
	return baseString;
};

com.ixonos.fsc.LoginByTwitter = function(token, verifier){
//	alert(token);
//	alert(verifier);
	window.localStorage.setItem(loginUser.FBLoadIndex, "TRUE");	
	var timeStamp = window.localStorage.getItem(twitter.timeStamp);	
	var nonce = window.localStorage.getItem(twitter.nonce);						   
	var signature = window.localStorage.getItem(twitter.signature);
	var accessURL = "https://api.twitter.com/oauth/access_token?";
	
	accessURL += "oauth_consumer_key="+"wPWCp3JSLFaA9JzOjTfvWA";
	accessURL += "&oauth_token="+token;
	accessURL += "&oauth_verifier="+verifier;
	accessURL += "&oauth_signature_method=HMAC-SHA1";
	accessURL += "&oauth_signature="+signature;
	accessURL += "&oauth_timestamp="+timeStamp;
	accessURL += "&oauth_nonce="+nonce;
	accessURL += "&oauth_version=1.0a";
	
	$.get(accessURL,
		  function(string){
		  var result = string.split("&");
		  var token = result[0].split("=");
		  var accessToken = token[1];
		  
		  window.localStorage.setItem(twitter.appkeys, accessToken);
//		  var secret = result[1].split("=");
//		  var accessSecret = secret[1];
		  
		  var twitterScreenName = result[3].split("=");
		  var twitterUserName = twitterScreenName[1];
		  
		  var twitterEmail = twitterUserName + "@defaultFunkySexyCool.com";
		  window.localStorage.setItem(loginUser.memberEmail, twitterEmail);
		  window.localStorage.setItem(twitter.twAjaxHead, "TRUE");

		  com.ixonos.fsc.loginByOthers(twitterUserName, "", twitterEmail, "M", accessToken, "twitter", "", "", "", "", "");
	});
}

com.ixonos.fsc.setOnline = function(){
	var isLogin = window.localStorage.getItem(loginUser.loginUserStatus);
	
	if(isLogin != "YES"){
		return;
	}
	
	var homeCurrentMemberId = window.localStorage.getItem(loginUser.memberId); 
	
	var url = server.serverIp + "rest/loginServer/setOnline?currentMemberId=" + homeCurrentMemberId;
	
	$.getJSON(url,
			  function(string){
			  
			  if(typeof string == 'undefined'){
				com.ixonos.fsc.serverErrorAlert();
			  }
			  else{
				var currentStatus = string.status;
				if(currentStatus == 1){}
				else if(currentStatus == 2){
				  com.ixonos.fsc.serverErrorAlert();
				}
				else if(currentStatus == -100){
				  com.ixonos.fsc.requestHeaderError();
				}
				else{
				  com.ixonos.fsc.serverErrorAlert();
				}
			  }
	});
}

com.ixonos.fsc.percentEncode = function(s)
{
	if (s == null) {
		return "";
	}
	if (s instanceof Array) {
		var e = "";
		for (var i = 0; i < s.length; ++s) {
			if (e != "") e += '&';
			e += OAuth.percentEncode(s[i]);
		}
		return e;
	}
	s = encodeURIComponent(s);
	
	s = s.replace(/\!/g, "%21");
	s = s.replace(/\*/g, "%2A");
	s = s.replace(/\'/g, "%27");
				  s = s.replace(/\(/g, "%28");
				  s = s.replace(/\)/g, "%29");
				  
				  return s;
};
				


com.ixonos.fsc.CannotConnectBilling = function()
{
	navigator.notification.alert(inviteFriends.CannotConnectBilling, function(){}, public.errTitle);    
};


com.ixonos.fsc.NotSupportBilling = function()
{
	navigator.notification.alert(inviteFriends.NotSupportBilling, function(){}, public.errTitle);
};
