if(typeof(console)!="undefined"){console;}
$(document).ready(mnu);
function mnu()
{
  $("#priNav ul li:not(#sk)").each(function(i){ $(this).click(function(i){ $("#priNav ul ul").hide(); $(this).children().slideDown(); $("#priNav ul li").removeClass("actv");  $(this).addClass("actv"); } ) } );
}
var badSub = function(jqi)
{
  var i = 0;
  var prefix = jqi.attr("id").substring(0, jqi.attr("id").indexOf("box"));
  jqi.addClass(prefix+"warning");
  var intvl = setInterval(function()
  {
    jqi.toggleClass(prefix+"warning");
    if(i++ > 1){clearInterval(intvl); jqi.removeClass(prefix+"warning"); }
  }, 100);
}
function notify(msg,buttonTxt,clickAction)
{
  var btnObj = {};
  var loaded = function(){};
  if( typeof(buttonTxt)=="string" ){ btnObj[buttonTxt]=true; }
  if( typeof(msg)=="function" ){ loaded = msg }
  if( typeof(clickAction)!="function" ){ clickAction = function(){return true;} }
  return $.prompt( ((typeof(msg)=="string")?msg:"Loading..."),
  {
    "overlayspeed":"fast",
    "buttons":btnObj,
    "loaded":function(){loaded.call(this)},
    "submit":clickAction
  });
}
function skn()
{
  var jqi = notify
  (
    function(){ $(".jqimessage",jqi).load("/embed/skin.jsp",{"destination":document.location}) },
    "cancel"
  );
}
function rsndPw()
{
  $.prompt.setStateDefaults({overlayspeed:"fast"});

  $.get("/user/passForgotForm.jsp", function(d,s)
  {
    var jqi = $.prompt(
    {
      req:
      {
        html:d,
        buttons:{"Resend":true,"Cancel":false},
        submit: function(v,m)
        {
          if(v != true)
          {
            return true;
          }
          var fld = $(".creds input",m);

          if(fld.val() == ""){ fld.css("border","solid #f00 1px"); badSub(jqi); return false; }

          $.post("/servlet/SendPassword",{userName:fld.val(),email:fld.val()}, function(d,s)
          {
            if(typeof(d.success)!="undefined")
            {
              if(!d.success)
              {
                $(".msg",m).text(d.error);
                badSub(jqi);
              }
              else
              {
                $.prompt.goToState("done");
              }
            }
          }, "json");
          return false;
        }
      },
      done:
      {
        html:"<h1>YGM!</h1><p>Password resent. Check your inbox</p>",
        buttons:{"OK, Go away now":true}
      },
      load:
      {
        html:"Checking..."
      }
    });
    $.prompt.setStateDefaults({overlayspeed:"fast"});
    {$(".frmFld",$.prompt.getCurrentState()).keypress( function(e){ if(e.which==13){$(".jqibuttons [value=true]", $.prompt.getCurrentState()).click(); return false;} } )}

  });
}
function lgIn(domain)
{
  var jqi;
  var doSub = function(v,m)
  {
    var valid = true;
    if(v != true)
    {
      if( v == "resend" )
      {
        jqi.remove();
        rsndPw();
      }
      return true;
    }
    var fld = $(":text, :password",m);
    fld.each( function(){ if($(this).val() == ""){ $(this).css("border","solid #f00 1px"); valid = false; } } )
    if(!valid){ badSub(jqi); return false; }
    $.post("/servlet/Login",{remember:$("[name=remember]",m).val(),username:$("[name=username]",m).val(),password:$("[name=password]",m).val()}, function(d,s)
    {
      if(typeof(d.success)!="undefined")
      {
        if(!d.success)
        {
          $(".msg",m).text(d.error);
          badSub(jqi);
          return false;
        }
        else
        {
          jqi.remove();
          var dlh = document.location.href;
          var rfrsh = function()
          {
            var dlh = document.location.href;
            document.location.href = dlh + (dlh.indexOf("?")>0?"&":"?")+"authd=t";
          }
          notify("<h1>Jolly Good!</h1><p>You're all signed-in and ready to rumble.</p><p>To ensure all member-specific features are enabled this page will refresh in just a tick. If it doesn't, you can click that terse little button down there.","Get On With It, Doofus", rfrsh );
          window.setTimeout(rfrsh,5000);
        }

      }
    }, "json")
  }
  jqi = $.prompt( "<div class=\"lgn\">"+$("#lgn").html()+"</div>",
  {
    overlayspeed:"fast",
    buttons:{"Sign-in":true,"Cancel":false,"Forgotten Password":"resend"},
    loaded:function()
    {
      $(".lgn #lgIn_un",jqi).select().keypress( function(e){if(e.keyCode==9||e.keyCode==13){$(".lgn #lgIn_pw",jqi).select(); return false;}} );
      $(".lgn #lgIn_pw",jqi).keypress( function(e){if(e.keyCode==9){$(".lgn #lgIn_rmbr",jqi).focus(); return false;}if(e.keyCode==13){$(".jqibuttons [value=true]").click(); return false;}} )
      $(".lgn #lgIn_rmbr",jqi).keypress( function(e){if(e.keyCode==9){$(".jqibuttons [value=true]",jqi).focus(); return false;}} )
    },
    submit:doSub
  });
}


Spng = {
  reveal: {
    checkBounds: null,
    checkPointer: function(ev)
    {
      if( Spng.reveal.checkBounds == null )
      {
        return;
      }

      var body = $("body");

      if( !Spng.reveal.checkBounds.pointInBounds( new Dimension( ev.pageX + body.scrollLeft(), ev.pageY + body.scrollTop() ) ) )
      {
        Spng.reveal.imgHide();
      }
    },

    imgReveal: function( img )
    {
      var clipBound, prvwBound, imgUri;

      img = $(img);

      if( $("#imgPrvwLink").length == 0 ){$("body").append("<a href=\"#\" id=\"imgPrvwLink\"><span id=\"imgPrvw\"><img id=\"imgPrvwAsset\"></span></a>")}

      $("#imgPrvw").stop();
      $("#imgPrvwLink").attr("href",  $( "a."+ img.attr("id").split(".")[1] ).attr("href") );	// set preview image href

      imgUri = img.css("backgroundImage").replace(/(^url\(|\)$)/g,"");

      $("#imgPrvwAsset").attr("src",imgUri);
      $("#imgPrvw").removeAttr("style","").css("backgroundImage","url(" + imgUri + ")");

      srcBound = Boundry.fromElem( img );

      Spng.reveal.checkBounds = srcBound;  // set mouseout hot spot

      prvwBound = Boundry.fromElem( "#imgPrvwAsset" );
      prvwBound.moveTo( srcBound.center() ).setLayer("#imgPrvw");

      clipBound = new Boundry( (prvwBound.dimension.height/2)-(srcBound.dimension.height/2),(prvwBound.dimension.width/2)-(srcBound.dimension.width/2), srcBound.dimension.width, srcBound.dimension.height );

      clipBound.setElemClip("#imgPrvw");

      $("#imgPrvw").show();

      $("#imgPrvw").animate({"clip":"rect(auto auto auto auto)"},300);
    },

    imgHide: function()
    {
      $("#imgPrvw").hide();
      Spng.reveal.checkBounds = null;
    },

    init: function()
    {
      $(document).bind("mousemove", Spng.reveal.checkPointer);
    }
  }
}


$(document).ready(Spng.reveal.init);
