/* variables for getting current mouse x,y coords */
var px = 0;
var py = 0;
var userid = 0;
var username = "";
var isadmin = false; //EIP-ADDED
var templateEdit = false; //EIP-ADDED
//font size vars
var fontsize = 'NORMAL'; //NORMAL,LARGER, SMALLER
var COOKIE_NAME = "Simple-Fontresizer-CSUC"; //Maybe give this the name of your site.
var contentresize = "#ctl00_cph_Breadcrumbs_pCrumbs *, #ctl00_cph_Mainbody_ctl00_bodycontents * "; //content IDs, classes to rezise
//rotator functions
var cur = 2;
var total;
var ctime;
var binc = true;

/*  THIS FUNCTION EXECUTES AFTER THE DOM IS READY, BUT BEFORE THE PAGE RENDERS...  */
$(document).ready(function () {

    $("#ctl00_RotatorWrap").load('/scripts/widgets/rotator/gethtml.aspx', function () {
        total = $(".panel").length;
        ctime = setTimeout(rotateDiv, 6000);
        highlightControlDiv(1);
    });

    $("#stockticker").load('/stocks.htm', function () {
    });

    // Track mousemouse co-ords for login box popup
    $(document).mousemove(function (e) {
        px = e.pageX;
        py = e.pageY;
    });

    /* SEARCH FUNCTIONS */
    $('#searchkeybtn').click(function (e) {
        window.location = '?Content=Search+' + $('#searchkey').val();
    });

    $('#searchkey').keydown(function (e) {
        //alert(e.keyCode);
        if (e.keyCode == 13) {
            window.location = '?Content=Search+' + $('#searchkey').val();
            return false;
        }
    });

    $("#searchkeybtn").bind('click', function (e) { window.location = '?Content=Search+' + $('#searchkey').val(); });

    $("#searchkey").bind('focus', function () {
        if ($('#searchkey').val() == 'Search...') {
            $('#searchkey').val("");
            $('#searchkey').css({ 'color': '#000000' });
        }
    });
    $("#searchkey").bind('blur', function () {
        if ($('#searchkey').val() == '') {
            $('#searchkey').css({ 'color': '#666666' });
            $('#searchkey').val("Search...");
        }
    });
    $("#txtname").bind('focus', function () {
        if ($('#txtname').val() == 'Name') {
            $('#txtname').val("");
            $('#txtname').css({ 'color': '#000000' });
        }
    });
    $("#txtname").bind('blur', function () {
        if ($('#txtname').val() == '') {
            $('#txtname').css({ 'color': '#666666' });
            $('#txtname').val("Name");
        }
    });
    $("#txtemail").bind('focus', function () {
        if ($('#txtemail').val() == 'Email') {
            $('#txtemail').val("");
            $('#txtemail').css({ 'color': '#000000' });
        }
    });
    $("#txtemail").bind('blur', function () {
        if ($('#txtemail').val() == '') {
            $('#txtemail').css({ 'color': '#666666' });
            $('#txtemail').val("Email");
        }
    });
    $('#signup #btnsignup').keyup(function (e) {
        if (e.keyCode == 13) {
            window.location = '?Content=Newsletter+' + $('#signup #txtemail').val();
        }
    });
    $('#signup #btnsignup').click(function () {
        /*alert($('#signup #txtemail').val());
        alert($('#signup #txtname').val());*/
        window.location = '?Content=Newsletter+' + $('#signup #txtemail').val() + "," + $('#signup #txtname').val();
        return false;
        /*window.location = '?Content=Newsletter+' + $('#signup #txtemail').val() + "," + $('#signup #txtname').val();*/
    });

    setHover(".hover");

    /* Setup the login box popup click function*/
    $("#loginlink").click(function (e) {
        $("#voice-login").remove();
        $("body").append("<div id='voice-login'><div><img src='App_Themes/default/img/triware.png' alt='Triware CMS' /><br />Website Login<div id='loginmsg'>&nbsp;</div><div class='floatleft'>Username: </div><div class='shortboxdiv floatright'><input style='width:150px;' type='text' id='username' /></div><div class='floatleft'>Password:</div><div class='floatright'><input style='width:150px;' type='password' id='password' /></div><div class='floatright hover'><input class='button' type='button' value='Submit' onclick='doLogin();' />&nbsp;&nbsp;<input class='button' type='button' value='Cancel' onclick='hideLogin();'  /></div></div>");
        $('#voice-login').css({ left: e.pageX - 255, top: e.pageY - 210 });
        $("#username").val('');
        $("#password").val('');
        $("#voice-login").fadeIn(1500);
        $("#username").focus();
        $("#password").keyup(function (event) {
            if (event.keyCode == 13) { doLogin(); }
        });
        $("#username").keyup(function (event) {
            if (event.keyCode == 13) { doLogin(); }
        });
    });

    $(".counter").click(function () { window.location = "?Content=Residents/Recycling"; }).css({ 'cursor': 'pointer' });
    $(".extlink").each(function () { $(this).attr("target", "_blank"); });

    $(".overlay").each(function () {
        var id = $(this).attr("id");
        $(this).attr("href", "javascript:;");
        $(this).mousedown(function () {
            $(".content").append("<div class='ol-body'><div class='ol-left'></div><div class='ol-right'><img src='images/ol-close.jpg' alt='Close' /><h3></h3><p>Loading...</p></div></div>");
            $.getJSON('scripts/admin/overlay/getjson.aspx', { "uid": id }, function (data) {
                $(".ol-body .ol-left").html("<img src='" + data.image + "' alt='" + data.title + "' />");
                $(".ol-body .ol-right h3").html(data.title);
                $(".ol-body .ol-right p").html(data.desc);
                $(".ol-body .ol-right img").click(function () { $(".ol-body").remove(); });
                $(".ol-body").css({ "position": "fixed", "top": "45%", "left": "25%", "display": "block" });
            });

        });
    });

    setHover(".hover");

    $().piroBox({
        my_speed: 300, //animation speed
        bg_alpha: 0.5, //background opacity
        radius: 4, //caption rounded corner
        scrollImage: false, // true == image follows the page _|_ false == image remains in the same open position
        // in some cases of very large images or long description could be useful.
        slideShow: 'true', // true == slideshow on, false == slideshow off
        slideSpeed: 3, //slideshow
        pirobox_next: 'piro_next', // Nav buttons -> piro_next == inside piroBox , piro_next_out == outside piroBox
        pirobox_prev: 'piro_prev', // Nav buttons -> piro_prev == inside piroBox , piro_prev_out == outside piroBox
        close_all: '.piro_close' // add class .piro_overlay(with comma)if you want overlay click close piroBox
    });

    //    $("a.over").fancybox({
    //        'hideOnContentClick': true,
    //        'overlayShow': true
    //    });
    //    $("a.over-flash").fancybox({
    //        'autoDimensions': false,
    //        'width': 922,
    //        'height': 447,
    //        'hideOnContentClick': false,
    //        'overlayShow': false
    //    });

});
/* AJAX ROTATOR */

function admin() { //rotator functions
    $("#panel-wrap").toggle();
    $("#admin-wrap").toggle();

}
function rotateTo(id) { //rotator functions
    cur = id;
    clearTimeout(ctime);
    rotateDiv(cur);
}
function highlightControlDiv(id) {   //rotator functions
    $("#panels-control div").css({ 'color': '#fff' });
    $("#ctrl-" + id).css({ 'color': '#1e2e61' });
}
function rotateDiv() {    //rotator functions
    //alert(cur);
    if ($("#panel-" + cur).html() == "") {
    } else {
        $(".panel").fadeOut(1000);
        $("#panel-" + cur).fadeIn(1000);
    }
    //highlightControlDiv(cur);
    if (binc) cur++;
    if (cur > total) cur = 1;
    ctime = setTimeout(rotateDiv, 7000);
}
function rotateDivRight() {    //rotator functions
    //cur = cur + 1;
    if (cur > total) { cur = 1; }
    clearTimeout(ctime);
    rotateDiv();
}
function rotateDivLeft() {    //rotator functions
    //cur = cur -2;
    if (cur == 1) {
        cur = total - 1;
    } else if (cur == 2) {
        cur = total;
    } else { cur = cur - 2; }


    clearTimeout(ctime);
    rotateDiv();

}

function doLoadingIcon() {
    if ($(".buttonloading").html() != null)
        $(".buttonloading").append("<img src='/images/loading/loading51.gif' />");
}



/*   put link like cursor behavor on all elements with class passed as argument  */
function setHover(div) {
    $(div).hover(function () { $(div).css({ cursor: "pointer" }); },
      	function () { $(div).css({ cursor: "default" }); });
}

/* login script */
function doLogin() {

    $.post('scripts/processlogin.aspx', {
        u: $("#username").val(),
        p: hex_sha256(hex_sha256($("#password").val()))
    }, function (msg) {
        $("#loginmsg").html("Login: " + msg);
        if (Left(msg, 10) == "Successful") {
            hideLogin();
            setTimeout('rload()', 1000);
        }
    });
}

function Left(str, n) {
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else
        return String(str).substring(0, n);
}

function Right(str, n) {
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else {
        var iLen = String(str).length;
        return String(str).substring(iLen, iLen - n);
    }
}

/* hides login form  */
function hideLogin() { $("#voice-login").fadeOut(1000); }

/* logs user out of the cms  */
function doLogout() {
    $.post('scripts/logout.aspx', {}, function (msg) { window.location.reload(true); });
}

/* reloads current page  */
function rload() { window.location.reload(true); };

function encodeRE(s) { return s.replace(/[.*+?^${}()|[\]\/\\]/g, '\\$0'); }

function doMetaUpdate(urltxt) {
    $.wordStats.computeTopWords(count, $('.mainbody'));

    for (var i = 0; i <= 20; i++) {
        words = words + $.wordStats.topWords[i];
    }
    $.wordStats.clear(); //release memory
    $.post('scripts/meta.asp', {
        metakey: words,
        content: $(".mainbody").html(),
        url: urltxt
    }); //,function(data){alert(data);}	
}
