
//util function to populate inputs with descriptions

function populateElement(selector, defvalue) {
    $(selector).each(function() {
        if($.trim(this.value) == "") {
            this.value = defvalue;
        }
    });
  
    $(selector).focus(function() {
        if(this.value == defvalue) {
            this.value = "";
        }
    });
    
    $(selector).blur(function() {
        if($.trim(this.value) == "") {
            this.value = defvalue;
        }
    });
 }
 
//Do stuff when the page loads
//loadmaps
google.load("maps", "2.x");

//highlight first card
$(document).ready(function () {
    $(".cardCreated").humane_dates();
    $(".cardCreatedSingle").humane_dates();
    $(".followerPostTime").humane_dates_plain();
    $('.usercardBeakBeakHighlight:first').fadeIn('slow');
    $('.usercardImage').hover(

    function () {
        $(this).next('.usercardBeakBeakHover').show();
    },
    function () {
        $(this).next('.usercardBeakBeakHover').hide();
    });
	populateElement('.commentInput', 'Speak your brains!');
    //clear comment form when clicked on but not if the content has changed.
 //   $(".commentInput").focus(

  //  function () {
    //    if ($(this).val() == "Speak your brains! ") $(this).val('');
  //  });
});

//Functions called on page.
//show the card map when given the id and loads the google map object
function showMap(id, lat, long) {
    $('#card-map-' + id).fadeIn('slow');
    $('#cardLocation-on-' + id).show();
    $('#followCardLocation-on-' + id).hide(); //followers view toggle
    $('#followCardLocation-off-' + id).show(); //followers view toggle
    $('.usercardBeakBeakHighlight').fadeOut('fast');
    $('#card-on-' + id).fadeIn('slow');
    var map = new google.maps.Map2(document.getElementById("card-map-" + id));
    map.setCenter(new GLatLng(lat, long), 17);
    var location = new GLatLng(lat, long);
    var marker = new GMarker(location);
    var topRight = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10, 10)); //position nav
    map.addControl(new GSmallMapControl(), topRight);
    map.addOverlay(marker);
    map.checkResize();
}
//hide the card map when given the id
function hideMap(id, lat, long) {
    $('#followCardLocation-on-' + id).show(); //followers view toggle
    $('#followCardLocation-off-' + id).hide(); //followers view toggle
    $('#card-map-' + id).fadeOut('slow');
    $('#cardLocation-on-' + id).hide();
    $('.usercardBeakBeakHighlight').fadeOut('fast');
    $('#card-on-' + id).fadeIn('slow');
}

//load comments via ajax and display after loading
function loadComments(id, numComments) {
    var rand = (Math.floor(Math.random() * 9999));
    $('.usercardBeakBeakHighlight').fadeOut('fast');
    $('#card-on-' + id).fadeIn('slow');
    $('#cardCommentDisplay-' + id).slideUp('fast', function () {
        $('#commentLoading-' + id).show();
    });
    $('#cardCommentDisplay-' + id).load('/usercards/ajaxComments/?rand=' + rand + '&cardId=' + id + '&comments=' + numComments,

    function () {

        $('#cardComments-' + id).fadeOut('fast');
        $('#cardComments-' + id).slideUp('fast');
        $('#cardCommentDisplay-' + id).slideDown('fast', function () {
            $('#commentLoading-' + id).hide();
            $(".commentDate").humane_dates();
        });
        $('#response-' + id).animate({
            opacity: 1.0
        },
        3000).fadeOut();
		noSubmit = 'false';
    });
}

//hide comments
function hideComments(id, numComments) {
    $('#cardComments-' + id).slideDown('fast');
    $('#cardCommentDisplay-' + id).slideUp('fast');
    
}

//submit comment via ajax

function submitComments(id, numComments) {

	if (noSubmit == 'True'){alert('no');}
	
	else {

		var noSubmit = 'True';

    	$('#commentSubmit-' + id).before('<input type="button" id="commentSubmit-' + id + '" value="" class="commentSubmit" />').remove();
    	$('#response-' + id).fadeIn('fast');
    	$('#commentForm-' + id).ajaxSubmit({
        	target: '#response-' + id,
        	success: function () {

            loadComments(id, numComments);
            $('#commentValue-' + id).val('');
            $('#commentSubmit-' + id).before('<input type="submit" id="commentSubmit-' + id + '" value="Say it!" class="commentSubmit"/>').remove();
            //var noSubmit = false;

        	}
    	});

	}
	}

function deleteComment(commentId, id) {

    $('#deleteComment-' + commentId).ajaxSubmit({
        target: '#response-' + id,
        success: function () {
            var numComments = '0';
            loadComments(id, numComments);
      //      $('#commentValue-' + id).val('Speak your brains! ')
      //      $('#commentSubmit-' + id).before('<input type="submit" id="commentSubmit-' + id + '" value="Say it!" class="commentSubmit" onclick="javascript:submitComments(' + id + ', ' + numComments + ');"/>').remove();
        }
    });

}

//start card stream load events
$(window).load(function () {
	var rand = (Math.floor(Math.random() * 9999));
	if (thumbsEnabled =='True'){
	preloadCardQuad(); // preload some cards
  //  $('.rightCardRow').load(thumbsStreamUrl+"?count="+thumbStreamCount, function () {
	$('.rightCardRow').load(thumbsStreamUrl, function () {
        $('.scrollDown').css({'cursor' : 'pointer', 'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/dwn_on.png)'});
        $('#thumb_loading').hide();
        $('.rightCardRow').fadeIn('medium');
        scrollUpClickActive = false;
        scrollDownClickActive = false;
        getMoreActive = false;
        
    });}
 
    

    $('.scrollUp').click(function () {
    	$('.scrollUp').css({'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/up_ac.png)'});
        if (scrollUpClickActive) return false;
        scrollUpClickActive = true;
        if ($('.cardWrapper:first').is(':visible')) {
            scrollUpClickActive = false;
            $('.scrollUp').css({'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/up_dis.png)'});
            return false;
            
        } // check to see if we are on the first card.
        else {
            $('.cardWrapper:visible:first').prevAll(':hidden:first').animate({
                //show the card above the first visible card
                opacity: 'show',
                height: 'show',
                top: 0
            },
            animSpeed, function () {
                $('.cardWrapper:visible:last').animate({
                    //hide the last visible card
                    opacity: 'hide',
                    height: 'hide'
                },
                'fast', function () {
                    //enable the button again
                    scrollUpClickActive = false;
                    $('.scrollUp').css({'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/up_en.png)'});
                });
            });
        }
        return false;
    });

    $('.scrollDown').click(function () {
		$('.scrollUp').css({'cursor' : 'pointer', 'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/up_en.png)'});
		$('.scrollDown').css({'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/dwn_ac.png)'});
        if (scrollDownClickActive) return false;
        scrollDownClickActive = true;

    	var rand = (Math.floor(Math.random() * 9999));
    	$('.cardWrapper:last').after('<div class="cardWrapper"></div>');
    	$('.cardWrapper:last').hide();
    	$('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=1' + rand, function () {
        processEl();
            $('.cardWrapper:visible:last').nextAll(':hidden:first').animate({
                opacity: 'show',
                height: 'show'
            },
               animSpeed, function () {
                $('.cardWrapper:visible:first').animate({
                    opacity: 'hide',
                    height: 'hide',
                    top: -80

                },
                animSpeed, function () {

                    scrollDownClickActive = false;
                   // console.log('hiding');
					$('.scrollDown').css({'background-image' : 'url(http://web-static.ambientindustries.com/site_media/1.0-Assetts/img/cardStream/buttons/dwn_on.png)'});                });

            });

		});
    });
});

// end card stream load events

function preloadCardDouble() {
    var rand = (Math.floor(Math.random() * 9999));
  //  console.log('loading two cards');
    $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
    $('.cardWrapper:last').hide();
    $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=1' + rand, function () {
        $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
        $('.cardWrapper:last').hide();
        $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=1' + rand);
    });
}
function preloadCardSingle() {
    var rand = (Math.floor(Math.random() * 9999));
  //  console.log('loading single card');
    $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
    $('.cardWrapper:last').hide();
    $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=1' + rand, function () {
        processEl();
//        console.log('finished loading single card');
    });

}

function preloadCardQuad() {
    var rand = (Math.floor(Math.random() * 9999));
    $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
    $('.cardWrapper:last').hide();
    $('.cardWrapper:last').load(cardStreamUrl+'?sequence=' + cardStreamSequence + '&r=1' + rand, function () {
        $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
        $('.cardWrapper:last').hide();
        $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=2' + rand, function () {
            $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
            $('.cardWrapper:last').hide();
            $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=3' + rand, function () {
                $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
                $('.cardWrapper:last').hide();
                $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=4' + rand);
            });
        });
    });
    processEl();
}

function processEl() {

    $(".cardCreated").humane_dates();
    $(".cardCreatedSingle").humane_dates();
    $(".followerPostTime").humane_dates_plain();
    $('.usercardBeakBeakHighlight:first').fadeIn('slow');
    $('.usercardImage').hover(
    function () {
        $(this).next('.usercardBeakBeakHover').show();
    },
    function () {
        $(this).next('.usercardBeakBeakHover').hide();
    });

}
function showMore() {

    if (getMoreActive) return false;
    getMoreActive = true;
    if ($('.cardWrapper:last').is(':hidden')) {
        $('.cardWrapper:visible:last').nextAll(':hidden:first').animate({
            opacity: 'show',
            height: 'show'
        },
        animSpeed, function () {
            show2();
        });

    }
    else {
        var rand = (Math.floor(Math.random() * 9999));
        $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
        $('.cardWrapper:last').hide();
        $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=' + rand, function () {
        //    console.log('loading');
            processEl();
            $('.cardWrapper:last').animate({
                opacity: 'show',
                height: 'show'
            },
            'fast', function () {
                show2();
            })
        });

    }

}
function show2() {
    if ($('.cardWrapper:last').is(':hidden')) {
        $('.cardWrapper:visible:last').nextAll(':hidden:first').animate({
            opacity: 'show',
            height: 'show'
        },
        animSpeed, function () {
            show3();
        });

    }
    else {
        var rand = (Math.floor(Math.random() * 9999));
        $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
        $('.cardWrapper:last').hide();
        $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=' + rand, function () {
        //    console.log('loading');
            processEl();
            $('.cardWrapper:last').animate({
                opacity: 'show',
                height: 'show'
            },
            'fast', function () {
                show3();
            })
        });

    }

}
function show3() {
    if ($('.cardWrapper:last').is(':hidden')) {
        $('.cardWrapper:visible:last').nextAll(':hidden:first').animate({
            opacity: 'show',
            height: 'show'
        },
        animSpeed);
        getMoreActive = false;
    }
    else {
        var rand = (Math.floor(Math.random() * 9999));
        $('.cardWrapper:last').after('<div class="cardWrapper"></div>');
        $('.cardWrapper:last').hide();
        $('.cardWrapper:last').load(cardStreamUrl + '?sequence=' + cardStreamSequence + '&r=' + rand, function () {
        //    console.log('loading');
            processEl();
            $('.cardWrapper:last').animate({
                opacity: 'show',
                height: 'show'
            },
            'fast')
        });
        getMoreActive = false;

    }
}

