function friends_selectAddressBook(characterId) {
    //alert("in onTabClick " + tabId );
    var xmlHttp = appmain_getXmlHttp();
    var url = _LGP_BASE_URL + "friends.php?op=addressbook&id="+characterId;
    xmlHttp.open("GET",url,true);
    xmlHttp.onreadystatechange=function() {
        if(xmlHttp.readyState == 4) {
            var json = eval('(' + xmlHttp.responseText + ')');
            var isInMaint = appmain_checkMaint(json);
            if(isInMaint == false) {
                document.getElementById("gt-body").innerHTML = json.html;
            }
        }
    };  
    xmlHttp.send(null);
}

function friends_findOnline(characterId, errorMessage) {
    _SEND_PLANT_SELECTED_PLANT = characterId;
    var xmlHttp = appmain_getXmlHttp();
    var url = _LGP_BASE_URL + "friends.php?op=find&id=" + characterId;
    errorMessage+='';
    if(errorMessage.length > 1) {
        url += "&error="+escape(errorMessage);
    }
    xmlHttp.open("GET",url,true);
    xmlHttp.onreadystatechange=function() {
        if(xmlHttp.readyState == 4) {
            var json = eval('(' + xmlHttp.responseText + ')');
            var redirected = appmain_redirectIfRequired(json, "flow/find", true /*checkLoggedIn*/, true /*redirectToRegister */);
            if(redirected == false) {
                document.getElementById("gt-body").innerHTML = json.html;
            }
        }
    };
    xmlHttp.send(null);
}

function friends_findOnlineSubmitted() {
    var findFriends = serializeForm(document.getElementById("findFriends"));
    var xmlHttp = appmain_getXmlHttp();
    var url = _LGP_BASE_URL + "friends.php"
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlHttp.onreadystatechange=function() {
        if(xmlHttp.readyState == 4) {
            var json = eval('(' + xmlHttp.responseText + ')');
            var redirected = appmain_redirectIfRequired(json, "flow/select");
            if(redirected == false) {
                document.getElementById("gt-body").innerHTML = json.html;
            }
        }
    };
    xmlHttp.send("op=process&findfriends=" + findFriends);
}

function friends_selectFriendsSubmitted() {
    // alert('calling select friends');
    var selectFriends = serializeForm(document.getElementById("selectFriends"));
    var xmlHttp = appmain_getXmlHttp();
    var url = _LGP_BASE_URL + "friends.php"
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlHttp.onreadystatechange=function() {
        if(xmlHttp.readyState == 4) {
            var json = eval('(' + xmlHttp.responseText + ')');
            var redirected = appmain_redirectIfRequired(json, "flow/complete");
            if(redirected == false) {
                if(json.success == true) {
                    appmain_refreshHeader();
                    greenpatch_default();
                    // appmain_showMessage("Message sent successfully! Thank you for spreading the Green message");
                    appmain_showMessage("Thanks for sending a plant to your friends and helping make the world a greener place!");
                }
                else {
                    friends_selectAddressBook(json.character_id);
                    appmain_showMessage("Sorry! You've exceeded the daily limit. Please unselect a few or try again tomorrow!"); 
                }
            }
        }
    };
    xmlHttp.send("op=select&selectfriends=" + selectFriends);
}

function popUp(URL) {
    day = new Date();
    id = day.getTime();
    eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=0,width=800,height=800');");
    eval("page"+ id).moveTo(100,100);
}


function $(element){
    if(arguments.length>1){
        for(var i=0,elements=[],length=arguments.length;i<length;i++)
            elements.push($(arguments[i]));
            return elements;
    }
    //if(Object.isString(element))
    if(typeof object=="string")
        element=document.getElementById(element);
    return element;
}

function get_event(ev) {
  return ev || window.event;
}

function get_event_target(ev) {
  return(ev=get_event(ev)) && (ev['target'] || e['srcElement']);
}

function check_domain(event) {
  target = get_event_target(event);
  if (target.value == 'other.com') {
    $('email_not_supported').show();
    $('Find').hide();
  } else {
    $('email_not_supported').hide();
    $('Find').show();
  }
}

function change_email_image(event) {
    target = get_event_target(event);
    image_name = target.value;
    parts = image_name.split(".");
    image_name=parts[0]+".png";
    if(image_name.length > 1) {
        document.getElementById('email_image').innerHTML = "Check your  <img src='img/"+image_name+"'>  address book:";
    }
    else {
        document.getElementById('email_image').innerHTML = "";
    }
}


//
//
///**
// * Request for friend information
// */
//function loadFriends() { 
//	//alert("in loadFrineds");
//	var os = opensocial.Container.get();
//	var req = opensocial.newDataRequest(); 
//	req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.VIEWER), 'viewer');
//	req.add(req.newFetchPeopleRequest(opensocial.DataRequest.Group.VIEWER_FRIENDS), 'viewerFriends');
//	req.send(onLoadFriends); 
//	//alert('out loadfriends');
//}
//
///**
// * Parses the response to the friend information request and generates
// * html to list the friends by their display name.
// *
// * @param {Object} dataResponse Friend information that was requested.
// */
//function onLoadFriends(dataResponse) {
//
//    if (dataResponse.hadError() == true) {
//        if(_USER_TYPE == 6) {
//            var html = generateCanvasForNonUser();
//	        document.write(html);
//		    gadgets.window.adjustHeight();
//        }
//        return;
//    }
//
//	//alert (" in onLoadFriends");
//	_VIEWER = dataResponse.get('viewer').getData();
//	_VIEWER_FRIENDS = dataResponse.get('viewerFriends').getData();
//
//	_VIEWER_FRIENDS.each(
//		function(person) {
//			_VIEWER_FRIENDS_ARR.push(person);
//		});
//
//	var os = opensocial.Container.get();
//	var req = opensocial.newDataRequest(); 
//	var filterParam = {};
//	filterParam[opensocial.DataRequest.PeopleRequestFields.FILTER] = opensocial.DataRequest.FilterType.HAS_APP;
//	req.add(req.newFetchPeopleRequest (opensocial.DataRequest.Group.VIEWER_FRIENDS, filterParam), 'viewerFriendsWithApp' );
//
//	req.send(onLoadFriendsWithApp); 
//
//	// Go back to app-main so that it can do something meaningful
//	onFriendsInitializeComplete();
//}
//
//function onLoadFriendsWithApp(dataResponse) {
//	//alert('in onLoadFriendsWithApp');
//    var friends= dataResponse.get('viewerFriendsWithApp').getData();
//	friends.each(
//		function(person) {
//	        _VIEWER_FRIENDS_WITHAPP.push(person);
//		});
//}
//
//
//function generateSelectFriends() {
//	var html = '<TABLE  border="0" cellpadding="5" cellspacing="5" width="100%" align="center"';
//	//	    html += '<TR  border="0" cellpadding="5" cellspacing="5" width="100%" align="left"';
//	//		html += '<TD>';
//	//		html += '  <LABEL style="font-size:18; font-weigth:bold; ">Select Friends</LABEL>          ';
//	//		html += '</TD>';
//	//	    html += '</TR>';
//	html += '<TR  border="0" cellpadding="2" cellspacing="2" width="100%" align="left"';
//	html += '<TD>';
//	html += '<div class="friends-box" id="outFriends">         ';
//	html += '   Friends to select                              ';
//	html += '</div>                                            ';
//	html += '</TD>';
//	html += '</TR>';
//	html += '<TR  border="0" cellpadding="2" cellspacing="2" width="100%" align="left"';
//	html += '<TD>';
//	html += '<div class="friends-box" id="inFriends">          ';
//	html += '      Selected friends                            ';
//	html += '</div>                                            ';
//	html += '</TD>';
//	html += '</TR>';
//	html += '<TR  border="0" cellpadding="5" cellspacing="5" width="100%" align="left"';
//	html += '<TD>';
//	html += '<input id="send" class="friendspagebutton" type="button" ';
//	if(_USER_TYPE == 6) {
//		html += ' value="Send ' + _SELECTED_PLANT_DISPLAY_NAME + ' Plant *" ';
//	}
//	else {
//		html += ' value="Send ' + _SELECTED_PLANT_DISPLAY_NAME + ' Plant" ';
//	}
//	html += '       name="send" onclick="onSelectFriends();"/> ';
//	html += '</TD>';
//	html += '</TR>';
//	html += '<TR  border="0" cellpadding="5" cellspacing="5" width="100%" align="left"';
//	html += '<TD>';
//	if(_USER_TYPE == 6) {
//		html += '<LABEL style="font-size:11;">* Post personalized message or comment</LABEL>';
//	}
//	html += '</TD>';
//	html += '</TR>';
//	html += '</TABLE>';
//
//	return html;
//}
//
//
//function generateSelectFriendsPage(plantName) {
//
//	var sendPlantUrl = _BASE_URL + "os/greentrees/send-plant.php";
//	sendPlantUrl += "?userId=" + _VIEWER.getId();
//	sendPlantUrl += "&userType=" + _USER_TYPE;
//	sendPlantUrl += "&op=getPlantToSend";
//	sendPlantUrl += "&plantName=" + plantName;
//	sendPlantUrl += "&uq=" + (new Date().getUTCMilliseconds());
//
//	var params = {};
//	params[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.GET;
//	params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.JSON;
//	gadgets.io.makeRequest(sendPlantUrl, onGetPlantToSendRequestComplete, params);
//}
//
//function onGetPlantToSendRequestComplete(obj) {
//    if(checkMaintenanceMode(obj) == true) {
//        return;
//    }
//
//	var json = obj.data;
//	_INVITE_SEQUENCE = json.inviteSequence;
//	_INVITE_COUNT = json.inviteCount;
//	_SELECTED_PLANT_DISPLAY_NAME = json.plantDisplayName;
//	_SELECTED_PLANT_URL = json.plantUrl;
//
//	//alert ("invite count = " + _INVITE_COUNT);
//	
//	var html = '<div class="plantsToSendBoxMessage">';
//	html += '<LABEL>';
//	html += 'Great! Now select your special friends who get to grow a ' + _SELECTED_PLANT_DISPLAY_NAME + ' plant in their (Lil) Green Patch!';
//	html += '</LABEL> <BR><BR>';
//	html += '</div>';
//	html += '<div class="plantsToSendBoxMessage" >';
//	html += '<TABLE  border="0" cellpadding="5" cellspacing="5" width="90%" align="center"';
//	html += '  <TR border="0" cellpadding="5" cellspacing="5" width="100%" align="center">'; 
//	html += '  <div style="align:center;">';
//	html += '    <TD border="0" cellpadding="5" cellspacing="5" width="40%" align="center">';
//	html  +=        json.html; // obj.text;
//	html += '    </TD>';
//	html += '  </div>';
//	html += '  <div style="align:center;">';
//	html += '    <TD border="0" cellpadding="5" cellspacing="5" width="60%" align="center">';
//	html +=        generateSelectFriends();
//	html += '    </TD>';
//	html += '  <div>';
//	html += '</TR>';
//	html += '</TABLE>';
//    html += '<div id="inviteLimitMsg" style="visibility:hidden;">';
//	html += '</div>';
//	html += '</div>';
//
//	//alert ("before setting inner html");
//	document.getElementById('gt-body').innerHTML = html;
//	gadgets.window.adjustHeight();
//	//alert ("after setting inner html");
//
//	populateFriendsInSelectFriends();
//}
//
//function generateDailyLimitExceededMessage() {
//	var html = '';
//	//var $rem = _FRIENDS_SELECTED_FRIENDS.length - (_DAILY_INVITE_LIMIT - $_INVITE_COUNT);
//	
//	html += '<LABEL>Oops! You can send only ' + _DAILY_INVITE_LIMIT + ' plants in a day. (You already have sent  ' + _INVITE_COUNT + ' plants today.) </LABEL>';
//	html += '<BR/>';
//	html += '<input id="dailyMsg" class="friendspagebutton" type="button" value="Ok" ';
//	html += '       name="send" onclick="onDailyLimitOkClicked();"/> ';
//	return html;
//}
//
//function onDailyLimitOkClicked() {
//	document.getElementById('inviteLimitMsg').style.visibility= 'hidden';
//}
//
//function onSelectFriends() {
//
//	//		alert ('onSelectFriends');
//
//	if(_FRIENDS_SELECTED_FRIENDS.length <= 0) {
//		alert("Select at least one friend.");
//		return;
//	}
//
//	//alert("selected friends = " + _FRIENDS_SELECTED_FRIENDS.length + "  invite count = " +_INVITE_COUNT + " daily limit = " + _DAILY_INVITE_LIMIT);
//	var tobeCount = ((_FRIENDS_SELECTED_FRIENDS.length * 1) + (_INVITE_COUNT * 1));
//
//	if ( tobeCount > _DAILY_INVITE_LIMIT) {
//		
//		//alert ("is " + tobeCount  + " greater than " + _DAILY_INVITE_LIMIT);  
//		var html = generateDailyLimitExceededMessage();
//		document.getElementById('inviteLimitMsg').innerHTML = html;
//		document.getElementById('inviteLimitMsg').style.visibility= 'visible';	
//		gadgets.window.adjustHeight();
//		return;
//	}
//
//	var sendPlantUrl = _BASE_URL + "os/greentrees/send-plant.php";
//	sendPlantUrl += "?userId=" + _VIEWER.getId();
//	sendPlantUrl += "&userType=" + _USER_TYPE;
//	sendPlantUrl += "&op=addInvitations";
//	sendPlantUrl += "&plantName=" + _SELECTED_PLANT;
//	sendPlantUrl += "&inviteSequence=" + _INVITE_SEQUENCE;
//	sendPlantUrl += "&uq=" + (new Date().getUTCMilliseconds());
//	sendPlantUrl += '&friendIds=';
//
//	for(var i=0; i < _FRIENDS_SELECTED_FRIENDS.length; i++) {
//
//		var person = _FRIENDS_SELECTED_FRIENDS[i];
//		sendPlantUrl += person.getId();
//
//		if(i != (_FRIENDS_SELECTED_FRIENDS.length -1)) {
//			sendPlantUrl += ":";
//		}
//	} 
//
//	//alert(sendPlantUrl);
//
//	// Perform actual send plant back on the server using PHP
//	var params = {};
//	params[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.GET;
//	params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.JSON;
//	gadgets.io.makeRequest(sendPlantUrl, onAddInvitationsRequestComplete, params);
//
//	//alert('calling notify on respective network');
//	networkBasedNotifyOnSendPlant();
//}
//
//function onAddInvitationsRequestComplete(obj) {
//    if(checkMaintenanceMode(obj) == true) {
//        return;
//    }
//    updateSqft(-1);
//	document.getElementById('gt-body').innerHTML = obj.data.html;
//	gadgets.window.adjustHeight();
//	onTabClick(1);
//}
//
//
//function getPerson(id) {
//
//	//alert("id = " + id + " _VIEWER = " + _VIEWER.getId());
//	if(_VIEWER.getId() == id) {
//		return _VIEWER;
//	}
//    var ret = null;
//	_VIEWER_FRIENDS.each(
//		function(person) {
//            if (ret == null) {
//			    if(person.getId() == id) {
//				    ret = person;
//			    }
//            }
//		}
//	);
//	
//	return ret;
//}
//
//function getFriendsNeedingHelp(max) {
//    var friends = new Array();
//
//    if(_VIEWER_FRIENDS_ARR.length == 0) {
//        friends;
//    }
//
//    if(_VIEWER_FRIENDS_IDS_ARR == null) {
//        _VIEWER_FRIENDS_IDS_ARR = new Array();
//        for (var i=0; i < _VIEWER_FRIENDS_ARR.length; i ++) {
//            _VIEWER_FRIENDS_IDS_ARR.push(_VIEWER_FRIENDS_ARR[i].getId());
//        }
//    }
//
//    _VIEWER_FRIENDS_IDS_ARR.shuffle();
//
//    for (var i = 0; (i < max || i < _VIEWER_FRIENDS_IDS_ARR.length); i++) {
//        friends.push( _VIEWER_FRIENDS_IDS_ARR[i]);
//    } 
//
//    return friends;
//}
//
//
//function getFriendsImageHtml(friendId) {
//    var html = "";
//    html += ' <a href="javascript: visitFriendsPatchClicked(' + friendId + ');" >';
//    html += '  <img width="45px" height="45px" src="<gt:image>' + friendId + '</gt:image>" alt="<gt:firstname>' + friendId + '</gt:firstname>"/>';
//    html += ' </a>';
//    return html;
//}
//
//function getFriendsNameHtml(friendId) {
//    var html = "";
//    html += ' <a href="javascript: visitFriendsPatchClicked(' + friendId + ');" >';
//    html += '  <gt:firstname>' + friendId + '</gt:firstname>';
//    html += ' </a>';
//    return html;
//}
