/** Handles Forms
 *  
 */
 
$(document).ready(function() {

    /* Header Login */
    $("#preHeader_login").click(function(){
        $("#login").slideToggle("slow");
    });
    $("#header_username").focus(function(){
        $(this).removeClass("fresh").val("");
    });
    $('#header_password').focus(function(){
        $(this).replaceWith("<input type='password' tabindex='1' name='password' value='' id='header_password'/>");
        $('#header_password').focus();
    });

    if (!window.cs) {
        return;
    }

    var forms = window.cs.forms = {
        empty: null
    };

    forms.init = function() {
    };

	forms.textDeal = function(data) {
		$('.jqmClose').click();
		
		if (data)
			phone_number = data['mobile_areaCode']+data['mobile_first']+data['mobile_last'];
		else
			phone_number = null;
			                                                       
		
		var formData = {
			eventID: $('#share_eventID').val(),
			phoneNumber: phone_number
		};
		$.getJSON('/textDeal.json', formData, function(json) {
			if(json.success == true) {
				//cs.lightbox.eventShare({type: 'deal'});
				cs.lightbox.message("A text message has been sent.", "Success");
			} else if(json.noPhone == true) {
				cs.lightbox.phoneNumber();
			} else if(json.noUser == true) {
				cs.lightbox.loginRegister();
			}
		});
	};
	
    forms.doJoin = function(lightboxName, obj) {
        $(obj).removeAttr('onclick');
        var checkedTerms = $('#createAccount_Terms:checked').val() != null ? 1 : 0;
        var myData      = new Object();
        if (lightboxName == 'loginRegister.php') {
            myData.FName        = $('#createAccount_FName').val();
            myData.LName        = $('#createAccount_LName').val();
            myData.password     = $('#createAccount_Password').val();
            myData.email        = $('#createAccount_Email').val();
            myData.zip          = $('#createAccount_Zip').val();
            myData.confPassword = $('#createAccount_ConfPassword').val();
            if ($('#createAccount_captcha').length > 0) {
                myData.captcha = $('#createAccount_captcha').val();
            }
            myData.checkedTerms = checkedTerms;
        } else {
            myData.FName    = $('#join_FName').val();
            myData.LName    = $('#join_LName').val();
            myData.email    = $('#join_email').val();
            myData.password = $('#join_password').val();
            myData.zip      = $('#join_zip').val();
            if ($('#join_captcha').length > 0) {
                myData.captcha = $('#join_captcha').val();
            }
            myData.checkedTerms = $('#join_Terms:checked').val() != null ? 1 : 0;
        }

        myData = $.toJSON(myData);

        var response = $.ajax({
            type: "POST",
            url: "/signup.json",
            data: myData,
            async: false,
            success: function(data, textStatus) {
                var data = $.parseJSON(data);
                if (data.success == true) {
                    loginData = new Object();
                    loginData.email  = data.email;
                    loginData.password = data.password;
                    $.ajax({
                        type: "GET",
                        url: '/login.json?email='+data.email+'&password='+data.password,
                        data: loginData,
                        async: false,
                        success: function(newData, newStatus) {
                            if (lightboxName == 'loginRegister.php') {
                                if ($('#isOnUserPage').val()) {
                                    $('#isVisitorLoggedIn').val(1);
                                    $('.jqmClose').click();
                                    $('#addUserToCrewButton').click();
                                } else if ($('#didVisitorRSVP').val()) {
                                    $('#isVisitorLoggedIn').val(1);
                                    switch (parseInt($('#didVisitorRSVP').val()))
                                    {
                                        case 1:
                                        // RSVP Attending
                                        $('#rsvp_attending').click();
                                        break;

                                        case 2:
                                        // RSVP Not Attending
                                        $('#rsvp_notAttending').click();
                                        break;

                                        case 3:
                                        // RSVP Undecided
                                        $('#rsvp_change').click();
                                        break;
                                    }
                                    location.reload(true);
								} else if($('#share_eventID').val()) {
									window.location.reload();
                                } else {
                                    window.location.reload();
                                }
                            } else {
                                // window.location = "/dashboard";
                                window.location = "/findFriends";
                            }
                        }
                    });
                } else {
                    if (data.errors != undefined) {
                        var error = data.errors.email ? data.errors.email + '::' : '';
                        error +=    data.errors.zip ? data.errors.zip + '::' : '';
                        error +=    data.errors.FName ? data.errors.FName + '::' : '';
                        error +=    data.errors.LName ? data.errors.LName + '::' : '';
                        error +=    data.errors.checkedTerms ? data.errors.checkedTerms + '::' : '';
                        error +=    data.errors.password ? data.errors.password  + '::' : '';
                        error +=    data.errors.captcha ? data.errors.captcha + '::' : '';
                        var lightbox = '/lightbox/'+lightboxName+'?error=' + escape(error) + 
                                        '&email=' + escape(data.email) + 
                                        '&FName=' + escape(data.FName) + 
                                        '&LName=' + escape(data.LName) + 
                                        '&password=' + escape(data.password) + 
                                        '&termsChecked=' + checkedTerms +
                                        '&zip=' + escape(data.zip);
                        var option = {
                            ajax: lightbox
                        };
                        if (lightboxName != 'loginRegister.php') {
                            cs.lightbox.join(option);
                        } else {
                            cs.lightbox.loginRegister(option);
                        }
                    }
                }
            }
        });
    };

    forms.doChangeLocation = function(obj) {
        $(obj).removeAttr('onclick'); // Disables lightbox button to prevent double submit
        var myData = new Object();
        myData.city = $('#changeLocation_city').val();
        myData.state = $('#changeLocation_state').val();
        myData.zip = $('#changeLocation_zip').val();

        myData = $.toJSON(myData);

        var response = $.ajax({
            type: "POST",
            url: "/changeLocation.json",
            data: myData,
            async: false,
            success: function(data, textStatus) {
                var data = $.parseJSON(data);
                if (data.success == true) {
                    window.location.reload();
                } else {
                    if (data.errors != undefined) {
                        $(obj).click(function() {return cs.forms.doChangeLocation(obj);});
                        var error = data.errors.city ? data.errors.city + '::' : '';
                        error +=    data.errors.zip ? data.errors.zip + '::' : '';
                        error +=    data.errors.state ? data.errors.state : '';
                        var lightbox = '/lightbox/changeLocation.php?error=' + escape(error) +
                                                                    '&city=' + escape(data.city) +
                                                                    '&state=' + escape(data.state) +
                                                                    '&zip=' + escape(data.zip);
                        var option = {
                            ajax: lightbox
                        }
                        cs.lightbox.changeLocation(option);
                    }
                }
            }
        });
    };

    forms.doResetPassword = function(obj) {
        $(obj).removeAttr('onclick');
        var myData = new Object();
        myData.email = $('#forgotPassword_email').val();

        myData = $.toJSON(myData);

        var response = $.ajax({
            type: "POST",
            url: "/resetPassword.json",
            data: myData,
            async: false,
            success: function(data, textStatus) {
                var data = $.parseJSON(data);
                if (data.success == true) {
                    $('.jqmClose').click();
                    window.location = '/passwordReset';
                } else {
                    if (((data.errors.email != undefined) && (data.errors.password != undefined))) {
                        $(obj).click(function() {return cs.forms.doResetPassword(obj);});
                    }
                    if (data.errors.email != undefined) {
                        var lightbox = '/lightbox/forgotPassword.php?error=' + escape(data.errors.email) + '&email=' + escape(data.email);
                        var option = {
                            ajax: lightbox
                        };
                        cs.lightbox.forgotPassword(option);
                    }
                    if (data.errors.password != undefined) {
                        var lightbox = '/lightbox/forgotPassword.php?error=' + escape(data.errors.password) + '&email=' + escape(data.email);
                        var option = {
                            ajax: lightbox
                        };
                        cs.lightbox.forgotPassword(option);
                    }
                }
            }
        });
    };
    
    forms.doCreateGathering = function() {
        var myData = new Object();
        myData.userName = $('#startGathering_userName').val();
        myData.gatheringName = $('#startGathering_gatheringName').val();
        myData.email = $('#startGathering_email').val();
        myData.date = $('#startGathering_date').val();
        myData.time = $('#startGathering_time').val();
        myData.location = $('#startGathering_location').val();
        myData.description = $('#startGathering_description').val();
        myData.address = $('#startGathering_address').val();
        myData.city = $('#startGathering_city').val();
        myData.state = $('#startGathering_state').val();
        myData.isManuallyAdded = $('#isManuallyAdded').val();
		myData.eventID = $('#eventID').val();

        myData = $.toJSON(myData);

        var response = $.ajax({
            type: "POST",
            url: "/createGathering.json",
            data: myData,
            async: false,
            success: function(data, textStatus) {
                var data = $.parseJSON(data);
                if (data.success == true) {
                    window.location = "/gathering.php?showInviteLB=1&gatheringID=" + data.gatheringID;
                } else {
                    if (data.errors.gathering != undefined) {
                        var lightbox = '/lightbox/startGathering.php?error=' + escape(data.errors.gathering) + 
                                                                    '&gatheringName=' + escape(data.gatheringName) + 
                                                                    '&date=' + escape(data.date) + 
                                                                    '&time=' + escape(data.time) + 
                                                                    '&location=' + escape(data.location) + 
                                                                    '&address=' + escape(data.address) + 
                                                                    '&city=' + escape(data.city) + 
                                                                    '&state=' + escape(data.state) + 
                                                                    '&description=' + escape(data.description) +
                                                                    '&userName=' + escape(data.userName) +
                                                                    '&isManuallyAdded=' + escape(data.isManuallyAdded) +
																	'&eventID=' + escape(data.eventID) +
                                                                    '&email=' + escape(data.email);
                        var option = {
                            ajax: lightbox
                        };
                        cs.lightbox.startGathering(0, option);
                    } else if (data.errors != undefined) {
                        var error = data.errors.userName ? data.errors.userName + '::' : '';
                        error += data.errors.gatheringName ? data.errors.gatheringName + '::' : '';
                        error += data.errors.email ? data.errors.email + '::' : '';
                        error += data.errors.date ? data.errors.date + '::' : '';
                        error += data.errors.time ? data.errors.time + '::' : '';
                        error += data.errors.location ? data.errors.location + '::' : '';
                        error += data.errors.address ? data.errors.address + '::' : '';
                        error += data.errors.city ? data.errors.city + '::' : '';
                        error += data.errors.state ? data.errors.state + '::' : '';
                        error += data.errors.datetime ? data.errors.datetime : '';
                        var lightbox = '/lightbox/startGathering.php?error=' + escape(error) + 
                                                                    '&gatheringName=' + escape(data.gatheringName) + 
                                                                    '&date=' + escape(data.date) + 
                                                                    '&time=' + escape(data.time) + 
                                                                    '&location=' + escape(data.location) + 
                                                                    '&address=' + escape(data.address) +
                                                                    '&city=' + escape(data.city) +
                                                                    '&state=' + escape(data.state) +
                                                                    '&description=' + escape(data.description) +
                                                                    '&userName=' + escape(data.userName) +
                                                                    '&isManuallyAdded=' + escape(data.isManuallyAdded) +
																	'&eventID=' + escape(data.eventID) +
                                                                    '&email=' + escape(data.email);
                        var option = {
                            ajax: lightbox
                        };
                        cs.lightbox.startGathering(0, option);
                    }
                }
            }
        });
    };
   
    
    forms.doEditGatheringLock = false;
    forms.doEditGathering = function(obj) {
        if (forms.doEditGatheringLock == false) {
            forms.doEditGatheringLock = true;
            $('#editGathering_form_submit').hide().addClass('wait').show();
            $(obj).removeAttr('onclick');
            var myData = new Object();
            myData.userName = $('#editGathering_userName').val();
            myData.gatheringName = $('#editGathering_gatheringName').val();
            myData.email = $('#editGathering_email').val();
            myData.date = $('#editGathering_date').val();
            myData.time = $('#editGathering_time').val();
            myData.location = $('#editGathering_location').val();
            myData.description = $('#editGathering_description').val();
            myData.address = $('#editGathering_address').val();
            myData.city = $('#editGathering_city').val();
            myData.state = $('#editGathering_state').val();
            myData.isManuallyAdded = $('#isManuallyAdded').val();
            myData.gatheringID = $('#editGathering_gatheringID').val();
            myGatheringID = myData.gatheringID;

            myData = $.toJSON(myData);
            
            var response = $.ajax({
                type: "POST",
                url: "/editGathering.json",
                data: myData,
                async: false,
                success: function(data, textStatus) {
                    var data = $.parseJSON(data);
                    if (data.success == true) {
						$('#editGathering_form_submit').removeClass('wait');
                        window.cs.forms.doEditGatheringLock = false;
                        if (data.alert == true) {
                            window.location.reload();
                        }
                    } else {
                        if (data.errors != undefined) {
                            $(obj).click(function() {return cs.forms.doEditGathering(obj);});
                            var error = data.errors.gatheringName ? data.errors.gatheringName + '::' : '';
                            error += data.errors.date ? data.errors.date + '::' : '';
                            error += data.errors.time ? data.errors.time + '::' : '';
                            error += data.errors.location ? data.errors.location + '::' : '';
                            error += data.errors.address ? data.errors.address + '::' : '';
                            error += data.errors.city ? data.errors.city + '::' : '';
                            error += data.errors.state ? data.errors.state + '::' : '';
                            error += data.errors.gathering ? data.errors.gathering + '::' : '';
                            error += data.errors.datetime ? data.errors.datetime : '';
                            var lightbox = '/lightbox/editGathering.php?error=' + escape(error) + 
                                                                       '&gatheringName=' + escape(data.gatheringName) + 
                                                                       '&date=' + escape(data.date) + 
                                                                       '&time=' + escape(data.time) + 
                                                                       '&location=' + escape(data.location) + 
                                                                       '&address=' + escape(data.address) + 
                                                                       '&city=' + escape(data.city) + 
                                                                       '&state=' + escape(data.state) + 
                                                                       '&description=' + escape(data.description) +
                                                                       '&isManuallyAdded=' + escape(data.isManuallyAdded) +
                                                                       '&gatheringID=' + escape(myGatheringID);
                            var option = {
                                ajax: lightbox
                            };
                            window.cs.forms.doEditGatheringLock = false;
							$('#editGathering_form_submit').removeClass('wait');
                            cs.lightbox.editGathering(data.gatheringID, option);
                        }
                    }

                }
            });
        }
    };




    // My Crew - Update Group
    forms.doUpdateGroup = function(groupID) {
        var groupName = $('#group-edit-'+groupID+' .groupName').val();
        $.getJSON('/updateGroupName.json?groupID='+groupID+'&groupName='+escape(groupName),
            function(json){
                if (json.success) {
                    $('#group-'+groupID+' .name').html(groupName);
                } else {
                    cs.lightbox.message(json.message, 'Error Updating Group');
                }
            }
        );
        $('#group-'+groupID).show();
        $('#group-edit-'+groupID).hide();
        return false;        
    };

    forms.doClaimBusiness = function(businessID, obj) {
        if (businessID == -1) {
            // Could not get a businessID, send an error
            cs.lightbox.message('Could not get a business ID for the business.', 'No Business ID');
        } else {
            $(obj).removeAttr('onclick');
            var name = $('#claimBusiness_name').val();
            var email = $('#claimBusiness_email').val();
            var phone = $('#claimBusiness_phone').val();
            $.getJSON('/claimBusiness.json?businessID='+businessID+'&name='+escape(name)+'&email='+escape(email)+'&phone='+escape(phone),
                function(json){
                    if (json.success) {
                        $('#businessClose').click();
                        cs.lightbox.message(json.message, 'Claim Business Successful');
                    } else {
                        if (json.errors != undefined) {
                            $(obj).click(function() {return cs.forms.doClaimBusiness(businessID, obj);});
                            var error = json.errors.name ? json.errors.name + '::' : '';
                            error += json.errors.email ? json.errors.email + '::' : '';
                            error += json.errors.phone ? json.errors.phone : '';
                            var lightbox = '/lightbox/claimBusiness.php?businessID='+businessID+
                                                                      '&errors='+escape(error)+
                                                                      '&name='+escape(json.name)+
                                                                      '&email='+escape(json.email)+
                                                                      '&phone='+escape(json.phone);
                            var option = {ajax: lightbox};
                            cs.lightbox.claimBusiness(businessID, '', option);
                        }
                    }
                }
            );
        }
    }
    
    // Gathering RSVP
    forms.doGatheringRSVP = function(gatheringID, rsvpStatus) {
        
        // Show Loading Icon
        var t = setTimeout("$('.gathering-"+gatheringID+" .loader-dark').show()",100);
        
        myData = new Object();
        myData.gatheringID = gatheringID;
        myData.rsvpStatus = rsvpStatus;
        myData = $.toJSON(myData);
        var result;
        var response = $.ajax({
            type: "POST",
            url: "/gatheringRSVP.json",
            data: myData,
            gatheringID: gatheringID,
            async: false,
            success: function(data, textStatus) {
                clearTimeout(t);
                $('.gathering-'+gatheringID+' .loader-dark').hide();
                var data = $.parseJSON(data);
                if (data.success == true) {
                    result = true;
                } else {
                    cs.lightbox.message(data.message, 'RSVP Error');
                    result = false;
                }
            }
        });
        return result;
    };

    forms.doCreateGroup = function() {
        var myData = new Object();
        myData.groupName = $('#createGroup_groupName').val();
        myData.crewID = $('#createGroup_crewID').val();
        myData.page = $('#createGroup_page').val();

        myData = $.toJSON(myData);
        
        var response = $.ajax({
            type: "POST",
            url: "/createGroup.json",
            data: myData,
            async: false,
            success: function(data, textStatus) {
                var data = $.parseJSON(data);
                // Add group name to drop down list with groupID
                if (data.success == true) {
                    var groupID = data.groupID;
                    var groupName = data.groupName;
                    var page = data.page;
                    var crewID = data.crewID;
                    if (page == 0) {
                        // Add group name to dashboard drop down list with groupID
                        var requestGroupSelect = $('.requestGroupSelect');
                        $('.createGroup', requestGroupSelect).before('<option value='+groupID+'>'+groupName+'</option>');
                        requestGroupSelect.val(groupName);
                        /*
                        $("#requestGroupSelect-"+crewID+" #createGroup-"+crewID).before("<option value="+groupID+">"+groupName+"</option>");
                        $("#requestGroupSelect-"+crewID).val(groupName);
                        */
                        $('#createGroupClose').click();
                    } else {
                        // Add group name to group list in Crew page
                        $("#groupPage_groupsList").append("<li id='group-"+groupID+"' class='group'>\
                                                    <a href='#' class='remove' onclick='return cs.lightbox.removeGroup("+groupID+")'><span class='img_replace'>Remove</span></a>\
                                                    <a href='#' class='edit' onclick='return cs.myCrew.editGroup("+groupID+")'><span class='img_replace'>Edit Group</span></a>\
                                                    <span class='name'>"+groupName+"</span>\
                                                    <div class='clear'></div>\
                                                    <span class='count'><span class='countNumber'>0</span> People</span>\
                                                    <div class='clear'></div>\
                                                </li>\
                                                <li id='group-edit-"+groupID+"' class='' style='display:none;'></li>");
                        $('#group-'+groupID).parent().children('.group').each(function(i){
                           if(i % 2 == 0) {
                                $(this).attr("class","group");
                           } else {
                                $(this).attr("class","group alt");
                           }
                        });
                        $('#groupClick').click();
                        $('#createGroupClose').click();
                        cs.myCrew.editGroup(groupID);
                    }
                }  else {
                    cs.lightbox.createGroup(myData.crewID, myData.page);
                    return cs.lightbox.message(data.errors.groupName, 'Create Group Error');
                    // Create group unsuccessful, return data.errors.groupName
                }
            }
        });
    };

    forms.doAcceptInvite = function(action, inviterID, crewID, groupID, callElement) {
        $.getJSON('/acceptCrewInvite.json?action='+action+'&inviterID='+inviterID+'&crewID='+crewID+'&groupID='+groupID,
            function(json){
                if (json.success == true) {
                    $(callElement).parent().parent().parent().fadeOut();
                    var inviteCount = parseInt($('#requests_InviteCount').html());
                    inviteCount--;
                    $('#requests_InviteCount').html(inviteCount);
                } else {
                    cs.lightbox.message(json.message, 'Accept Invite Error');
                }
            }
        );

    }

    forms.doSendCrewInvite = function(userID) {
        $.getJSON('/sendCrewInvite.json?userID='+userID,
            function(json){
        		if ($('#relevanceResults li#member-'+json.userID+' a.add').length == 1) {
        			$('#relevanceResults li#member-'+json.userID+' a.add').hide();
        			$('#relevanceResults li#member-'+json.userID+' span.crewStatus').empty().append('Already Invited to Crew').show();
        		}
                // cs.lightbox.message(json.message, 'Crew Invite Message');
                $().message(json.message);
            }
        );
    }

    forms.doCancelGathering = function(gatheringID, obj) {
        $(obj).removeAttr('onclick');
        $.getJSON('/cancelGathering.json?gatheringID='+gatheringID,
            function(json){
                if (json.success == true) {
                    window.location = '/dashboard';
                } else {
                    alert(json.message);
                    $(obj).click(function() {return cs.forms.doCancelGathering(gatheringID, obj);});
                }
            }
        );
    }

    forms.doSearch = function(query, obj) {
        $(obj).unbind('submit');
        $(obj).submit(function(){return false;});
        // Show Loading Icon
        var t = setTimeout("$('#dashboardSearch .loader-gray').show()",100);
        
        $.getJSON('/search.json?query='+query,
            function(json) {
                if (json.success == true) {
                    clearTimeout(t);
                    $('#dashboardSearch .loader-gray').hide();
                                    
                    $("#ratingResults").empty();
                    $("#distanceResults").empty();
                    var ratingResultsContent = '';
                    var distanceResultsContent = '';
                    var ratingsIndexes = new Array();
                    var distanceIndexes = new Array();
                    var classIndex = 0;
                    if (json.businessesRating[0] != false) {
                        for (var i in json.businessesRating) {
                            classIndex++;
                            var index = json.businessesRating[i].index;
                            var name = json.businessesRating[i].name;
                            var address = json.businessesRating[i].address;
                            var city = json.businessesRating[i].city;
                            var state = json.businessesRating[i].state;
                            var rating = json.businessesRating[i].rating;
                            var ratingpx = json.businessesRating[i].ratingpx;
                            var latitude = json.businessesRating[i].latitude;
                            var longitude = json.businessesRating[i].longitude;
                            var imageurl = json.businessesRating[i].image;
                            var yelpimage = json.businessesRating[i].yelpimage;
                            var phone = json.businessesRating[i].phone;
                            var zip = json.businessesRating[i].zip;
                            var shortname = name;
                            var thirdClass = classIndex % 3 == 0 ? 'third' : '';
                            if(name.length > 20) shortname = name.substr(0,20) + "&hellip;";
                            var newContent = 
                            "<li class="+thirdClass+">\
                                <div id='map_canvas_rating_" + index + "' class='map_canvas'><a class='listing' href='#' onclick='return cs.search.redirect(\""+escape(address)+"\",\""+escape(name)+"\",\""+rating+"\",\""+phone+"\",\""+escape(city)+"\",\""+escape(state)+"\",\""+zip+"\",\""+latitude+"\",\""+longitude+"\",\""+yelpimage+"\");'><img src='" + imageurl + "'></img></a></div>\
                                <div class='businessMeta'>\
                                    <a class='listing' href='#' onclick='return cs.search.redirect(\""+escape(address)+"\",\""+escape(name)+"\",\""+rating+"\",\""+phone+"\",\""+escape(city)+"\",\""+escape(state)+"\",\""+zip+"\",\""+latitude+"\",\""+longitude+"\",\""+yelpimage+"\");'>" + shortname + "</a>\
                                    <span class='location'>" + city + ", " + state + "</span>\
                                    <div class='starRating'>\
                                        <div class='possible'>\
                                            <div class='actual' style='width: " + ratingpx + "px;'>\
                                                <span class='rating'>" + rating + "</span><span> / 5.0</span>\
                                            </div>\
                                        </div>\
                                    </div>";
                            if ($('#isVisitorLoggedIn').val()) {
                                newContent += "<a href='#' onclick='return cs.lightbox.startGathering(0, {ajax: \"/lightbox/startGathering.php?error=&gatheringName=Lets+go+to+"+escape(name)+"&location="+escape(name)+"&address="+escape(address)+"&city="+escape(city)+"&state="+escape(state)+"\"});' class='newGathering'><span class='img_replace'>New Gathering</span></a>";
                            } else {
                                // User is not logged in, separate lightbox functionality must be implemented
                                newContent += "<a href='#resultsList' onclick='return cs.lightbox.startGathering(-1, {name: '"+escape(name)+"', address: '"+escape(address)+"', city: '"+escape(city)+"', state: '"+escape(state)+"', rating: '"+escape(rating)+"', zip: '"+escape(zip)+"', latitude: '"+escape(latitude)+"', longitude: '"+escape(longitude)+"', imageurl: '"+escape(yelpimage)+"', phone: '"+escape(phone)+"'});' class='newGathering'><span class='img_replace'>New Gathering</span></a>";
                            }
                            newContent += "<div class='clear'></div>\
                                </div>\
                            </li>";
                            ratingResultsContent += newContent;
                            ratingsIndexes[index] = new Array(index, latitude, longitude);
                        }
                    }
                    if (ratingResultsContent == '') {
                        ratingResultsContent = "<ul id='ratingsResults' class=searchResults'>\
                        <p class='noResults'>There are no search results for your query.</p>\
                        <div class='hr'></div>\
                        </ul>";
                    }
                    var classIndex = 0;
                    if (json.businessesDistance[0] != false) {
                        for (var i in json.businessesDistance) {
                            var index = json.businessesDistance[i].index;
                            var name = json.businessesDistance[i].name;
                            var address = json.businessesDistance[i].address;
                            var city = json.businessesDistance[i].city;
                            var state = json.businessesDistance[i].state;
                            var rating = json.businessesDistance[i].rating;
                            var ratingpx = json.businessesDistance[i].ratingpx;
                            var latitude = json.businessesDistance[i].latitude;
                            var longitude = json.businessesDistance[i].longitude;
                            var imageurl = json.businessesDistance[i].image;
                            var yelpimage = json.businessesDistance[i].yelpimage;
                            var phone = json.businessesDistance[i].phone;
                            var zip = json.businessesDistance[i].zip;
                            var thirdClass = classIndex % 3 == 0 ? 'third' : '';
                            var shortname = name;
                            
                            if(name.length > 20) shortname = name.substr(0,20) + "&hellip;";
                                                    
                            var newContent = 
                            "<li class="+thirdClass+">\
                                <div id='map_canvas_distance_" + index + "' class='map_canvas'><img src='" + imageurl + "'></img></div>\
                                <div class='businessMeta'>\
                                    <a class='listing' href='#' onclick='return cs.search.redirect(\""+address+"\",\""+name+"\",\""+rating+"\",\""+phone+"\",\""+city+"\",\""+state+"\",\""+zip+"\",\""+latitude+"\",\""+longitude+"\",\""+yelpimage+"\");'>" + shortname + "</a>\
                                    <span class='location'>" + city + ", " + state + "</span>\
                                    <div class='starRating'>\
                                        <div class='possible'>\
                                            <div class='actual' style='width: " + ratingpx + "px;'>\
                                                <span class='rating'>" + rating + "</span><span> / 5.0</span>\
                                            </div>\
                                        </div>\
                                    </div>";
                            if ($('#isVisitorLoggedIn').val()) {
                                newContent += "<a href='#' onclick='return cs.lightbox.startGathering(0, {ajax: \"/lightbox/startGathering.php?error=&gatheringName=Lets+go+to+"+escape(name)+"&location="+escape(name)+"&address="+escape(address)+"&city="+escape(city)+"&state="+escape(state)+"\"});' class='newGathering'><span class='img_replace'>New Gathering</span></a>";
                            } else {
                                // User is not logged in, so separate lightbox functionality must be performed
                                newContent += "<a href='#resultsList' onclick='return cs.lightbox.startGathering(-1, {name: '"+escape(name)+"', address: '"+escape(address)+"', city: '"+escape(city)+"', state: '"+escape(state)+"', rating: '"+escape(rating)+"', zip: '"+escape(zip)+"', latitude: '"+escape(latitude)+"', longitude: '"+escape(longitude)+"', imageurl: '"+escape(yelpimage)+"', phone: '"+escape(phone)+"'});' class='newGathering'><span class='img_replace'>New Gathering</span></a>";
                            }
                            newContent += "<div class='clear'></div>\
                                </div>\
                            </li>";
                            distanceResultsContent += newContent;
                            distanceIndexes[index] = new Array(index, latitude, longitude);
                        }
                    }
                    if (distanceResultsContent == '') {
                        distanceResultsContent = "<ul id='distanceResults' class='searchResults'>\
                        <p class='noResults'>There are no search results for your query.</p>\
                        <div class='hr'></div>\
                        </div>";
                    }
                    $("#ratingResults").empty();
                    $("#distanceResults").empty();
                    $("#ratingResults").append(ratingResultsContent);
                    $("#distanceResults").append(distanceResultsContent);
                } else {
                    alert(json.message);
                }
                window.location = "#resultsList";                
                $(obj).unbind('submit');
                $(obj).submit(function() {
                    var query = $("#searchBar_input").val();
                    cs.forms.doSearch(query, obj);
                    return false;
                });
                setTimeout(function() {
                    // "Refresh" both tabs to show stars
                    $('#rating').addClass('ui-tabs-hide');
                    $('#distance').removeClass('ui-tabs-hide');
                    $('#distance').addClass('ui-tabs-hide');
                    $('#rating').removeClass('ui-tabs-hide');
                }, 100);

                return json;
            }
        );
    }

    forms.doFindFriends = function(query, obj) {
        $(obj).unbind('submit');
        $(obj).submit(function(){return false;});
        // Show Loading Icon
        var t = setTimeout("$('#dashboardSearch .loader-gray').show()",100);
        
        // $.getJSON('/findFriends.json?query='+query,
        //     function(json) {
        //         if (json.success == true) {
        //             clearTimeout(t);
        //             $('#dashboardSearch .loader-gray').hide();
        //             $("#relevanceResults").empty();
        //             var relevanceResultsContent = '';
        //             var relevanceIndexes = new Array();
        //             var classIndex = 0;
        //             if (json.peopleRelevance[0] != false) {
        //                 for (var i in json.peopleRelevance) {
        //                     classIndex++;
        //                     var index = json.peopleRelevance[i].index;
        //                     var userID = json.peopleRelevance[i].userID;
        //                     var Name = json.peopleRelevance[i].Name;
        //                     // var shortname = json.peopleRelevance[i].shortname;
        //                     var Avatar = json.peopleRelevance[i].Avatar;
        //                     var city = json.peopleRelevance[i].city;
        //                     var state = json.peopleRelevance[i].state;
        //                     var zip = json.peopleRelevance[i].zip;
        //                     var latitude = json.peopleRelevance[i].lat;
        //                     var longitude = json.peopleRelevance[i].long;
        //                     var altClass = classIndex % 2 == 0 ? 'alt' : '';
        //                     if (name.length > 20)   {
        //                         shortname = name.substr(0,20) + "&hellip;";
        //                     } else {
        //                         shortname = name;
        //                     }
        //                     var newContent =
        //                     "<li id='member-" + userID + "' class='member " + altClass + "'>\
        //                         <a href='#' class='add' onclick='return cs.lightbox.addCrew(" + userID + ");'>Add to Crew</a>\
        //                         <a class='image' href='/user/" + userID + "'>";
        //                     if (Avatar != '') {
        //                             newContent += "<img src='" + escape(Avatar) + "' alt='" + Name + "' />";
        //                     }
        //                     newContent += "</a>\
        //                         <span class='name'><a href='/user/" + userID + "'>" + Name + "</a></span>\
        //                         <br/>\
        //                         <span class='location'>" + city + ", " + state + "</span>\
        //                         <div class='clear'></div>\
        //                     </li>";
        //                     relevanceResultsContent += newContent;
        //                     relevanceIndexes[index] = new Array(index, latitude, longitude);
        //                 }
        //             }
        //             if (relevanceResultsContent == '') {
        //                 relevanceResultsContent = "<ul id='relevanceResults' class=searchResults'>\
        //                 <p class='noResults'>There are no search results for your query.</p>\
        //                 <div class='hr'></div>\
        //                 </ul>";
        //             }
        //             $("#relevanceResults").empty().append(relevanceResultsContent);
        //             $("#friendResultsCount").empty().append(classIndex + ' Results');
        //         } else {
        //             alert(json.message);
        //         }
        //         window.location = "#resultsList";
        //         $(obj).unbind('submit');
        //         $(obj).submit(function() {
        //             var query = $("#ffSearchBar_input").val();
        //             cs.forms.doFindFriends(query, obj);
        //             return false;
        //         });
        //         setTimeout(function() {
        //             // "Refresh" both tabs to show stars
        //             $('#relevance').addClass('ui-tabs-hide');
        //             $('#relevance').removeClass('ui-tabs-hide');
        //         }, 100);

        //         return json;
        //     }
        // );
		
		window.location = '/findFriends?query='+query;
    }


});
