function $(id){return document.getElementById(id);}

loader = '';
function load(show,txt)
{
  if(!loader){loader = $('loader');}

  if(show)
  {
    if(txt.length > 0){loader.innerHTML = txt;}
    else
    {loader.innerHTML = 'Please Wait...';}
    var vscroll = (document.all ? document.documentElement.scrollTop : window.pageYOffset);
    loader.style.top = vscroll + 'px';
    loader.style.display = 'block';
  }
  else
  {
    loader.style.display = 'none';
  }  
}

function isEmail(add){
  if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test(add))
  {return true;}else{return false;}}


function findX(obj){
  var curleft = 0;
  if(obj.offsetParent)
    while(1) 
    {curleft += obj.offsetLeft;
        if(!obj.offsetParent)
          break;
        obj = obj.offsetParent;}
  else if(obj.x)
    curleft += obj.x;
  return curleft;
}

function findY(obj){
  var curtop = 0;
  if(obj.offsetParent)
    while(1)
    {curtop += obj.offsetTop;
      if(!obj.offsetParent)
        break;
      obj = obj.offsetParent;}
  else if(obj.y)
    curtop += obj.y;
  return curtop;
}

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);
    }
}

String.prototype.trim = function(){
a = this.replace(/^\s+/, '');
return a.replace(/\s+$/, '');
};

DDmenu = null;
DDanchor = null;
DDclassName = null;

document.onmousedown = checkDD;

function checkDD(ev)
{
  ev = ev || window.event;
var target = ev.target || ev.srcElement;
// Firefox users .target and IE uses srcElement to locate clicked item

  if(DDmenu)
  {
    if(DDmenu.style.display == 'block')
    {
      try
      {
        if(DDanchor != target && DDanchor != target.parentNode.parentNode)
        {
          if(target != DDmenu && target.parentNode != DDmenu && target.parentNode.parentNode != DDmenu  && target.parentNode.parentNode.parentNode != DDmenu && target.parentNode.parentNode.parentNode.parentNode != DDmenu)
          {
            hideDD();
          }
        }
      }
      catch(err)
      {
        hideDD();
      }
      finally
      {
      }
    }
  }
}



function showDD(menu, anchor, offsetX, offsetxY, className, ID, ID2, ID3)
{
  pass = true;

  var IE6 = false /*@cc_on || @_jscript_version < 5.7 @*/;  // Do not delete, conditional comment
  
  if(DDmenu)
  {
    if(DDmenu.style.display == 'block')
    {
      DDanchor.className = DDclassName;
      DDmenu.style.display = 'none';
      
      if(DDanchor == anchor)
      {
        pass = false;
      }
    }
  }
  
  if(pass)
  {
    DDmenu = menu;
    DDanchor = anchor;
    DDclassName = className;
     
    if(ID)
    {
      if(DDmenu.id != 'DDOptions' && DDmenu.id != 'DDfDel')
      {
        DDmenu = $(DDmenu.id+ "HTML");
        $('folderID').value = ID;
      }
      else
      {
        DDmenu.innerHTML = $(DDmenu.id+ "HTML").innerHTML.replace(/%ID%/g, ID);
      }

      if(ID2)
      {
        if(DDmenu.id != 'DDOptions')
        {
          $('folderTitle').value = ID2;
        }
        else
        {
            DDmenu.innerHTML = DDmenu.innerHTML.replace(/%ID2%/g, ID2);
        }
      }
      if(ID3)
      {
          DDmenu.innerHTML = DDmenu.innerHTML.replace(/%ID3%/g, ID3);
      }
    }
  
    if(DDmenu.style.display == 'block')
    {
      DDanchor.className = DDclassName;
      DDmenu.style.display = 'none';
    }
    else
    { 
      if(IE6 == true && className == 'DD'){offsetX = offsetX + 3};  //IE bug fix
      DDmenu.style.left = (findX(DDanchor) + offsetX) + 'px';
      DDmenu.style.top = (findY(DDanchor) + offsetxY) + 'px';
      DDanchor.className = DDclassName +'on';
      DDmenu.style.display = 'block';
    }
  }
}

function hideDD()
{
  if(DDmenu)
  {
    if(DDmenu.style.display == 'block')
    {
      temp = DDanchor.className;
      temp = temp.replace(/on/,'');
      DDanchor.className = temp;
      DDmenu.style.display = 'none';
    }
  }
}

function closePrompt()
{
  promptBg.style.display = 'none';
  myPrompt.style.display = 'none';
  myPrompt.innerHTML = '';
}

function promptNow(promptHead, promptSub, promptYesType, yesText, noText, promptYes, promptNo)
{
  var _docHeight = Math.max(document.documentElement.clientHeight, document.documentElement.scrollHeight);
  var _docWidth = (document.width !== undefined) ? document.width : document.body.offsetWidth;
  
  if(window.innerHeight > _docHeight){ _docHeight = window.innerHeight;}


  if(!$('promptBg'))
  {
    promptBg = document.createElement('div');
    promptBg.id = 'promptBg';
    promptBg.className = 'promptBg';
    document.getElementsByTagName('body').item(0).appendChild(promptBg);
  }

  promptBg.style.height = _docHeight + 'px';
  promptBg.style.width = _docWidth + 'px';
  promptBg.style.display = 'block';

  if(!$('myPrompt'))
  {
    myPrompt = document.createElement('div');
    document.getElementsByTagName('body').item(0).appendChild(myPrompt);
  }
  myPrompt.innerHTML = '';
  myPrompt.id = 'myPrompt';
  
  if(promptYesType == 'poll' || promptYesType == 'pollStyle' || promptYesType == 'rating')
  {
    myPrompt.className = 'pollPrompt';
  }
  else
  {
    myPrompt.className = 'prompt';
  }
   
  promptHTML = '<h4>'+ promptHead +'</h4><p>'+ promptSub +'</p>';
  promptHTML += '<div>';
  
  if(promptYesType != 'none')
  {
    if(promptYesType == 'url')
    {
      promptHTML += '<input type="button" value="'+ yesText +'" onclick=" window.location = \''+ promptYes +'\';" id="" name="" />';
    }
    else if(promptYesType == 'poll' || promptYesType == 'pollStyle' || promptYesType == 'rating')
    {
      if(promptYesType == 'poll'){ancID = "PDI_container"+ promptYes;}else{ancID = "pollStyleAnc";}
      if(promptYesType == 'rating'){ancID = "pd_rating_holder_" + promptYes;}
      
      promptHTML = '<table border="0" align="center"><tr><td><div id="'+ ancID +'"></div></td></tr><tr><td height="10"></td></tr><tr><td><a href="javascript:closePrompt();"><img src="/images/but_close.gif" width="74" height="26" /></a></td></tr></table><br/>';
    }
    else
    {
      promptHTML += '<input type="button" value="'+ yesText +'" onclick="'+ promptYes +'" id="" name="" />';
    }
  }
  
  if(promptNo)
  {
    promptHTML += '<input type="button" value="'+ noText +'" onclick="'+ promptNo +'" id="" name="" /></div>';
  }
  else if(noText == '#hide#')
  {
    promptHTML += '</div>';
  }
  else
  {
    promptHTML += '<input type="button" value="'+ noText +'" onclick="closePrompt();" id="" name="" /></div>';
  }
  promptHTML += '</div>';
  myPrompt.innerHTML = promptHTML;
  
  var vscroll = (document.all ? document.documentElement.scrollTop : window.pageYOffset);
  var clientHeight = (document.all ? document.documentElement.clientHeight : window.innerHeight);
  
  var h = ((clientHeight/2) - 80);

  if(promptYesType == 'poll' || promptYesType == 'pollStyle' || promptYesType == 'rating')
  {
    myPrompt.style.top =  (80 + vscroll) + "px";
  }
  else
  {
    myPrompt.style.top =  (h + vscroll) + "px";
  }

  myPrompt.style.left = ((_docWidth-420)/2) +"px";
  myPrompt.style.display = 'block';
  
  if(promptYesType == 'poll')
  {
    var s = document.createElement("SCRIPT");
    s.src = "http://s3.polldaddy.com/p/"+ promptYes +".js?d"+ Date();
    var h = document.getElementsByTagName("head").item(0);
    h.appendChild(s);
  }
  else if(promptYesType == 'rating')
  {
    var s = document.createElement("SCRIPT");
    s.src = "/ratings/rating.js?d"+ Date();
    var h = document.getElementsByTagName("head").item(0);
    h.appendChild(s);

	eval( 'PDRTJS_settings_' + promptYes + ' = {"id" : "' + promptYes + '", "unique_id" : "default", "title" : "", "permalink" : "" };' );
	eval( 'PDRTJS_' + promptYes + ' = new PDRTJS_RATING( PDRTJS_settings_' + promptYes + ' );' );
  }
  if(promptYesType == 'pollStyle')
  {
    var s = document.createElement("SCRIPT");
  s.src = "/js/preview-poll-style.js?e=4343";
  var h = document.getElementsByTagName("head").item(0);
  h.appendChild(s);
  }
}



function alertPostContents()
{
if (http_request.readyState == 4)
{
if (http_request.status == 200)
{
    return true;
}
else
{
    alert('Oops! There was a problem with your request, please refresh this page and try again.');
    }
  }
}



function makeRequest(url, params, container, evalCode)
{
  http_request = false;
  if (window.XMLHttpRequest) // Mozilla, Safari,...
  {
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType)
    {
      http_request.overrideMimeType('text/xml');
    }
  }
  else if (window.ActiveXObject)
  { // IE
    try
    {
      http_request = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
      try
      {
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
      }
      catch(e)
      {
      }
    }
  }
  if (!http_request)
  {
    alert('Cannot create XMLHTTP instance');
    return false;
  }
  
http_request.onreadystatechange = function(){
    if (http_request.readyState == 4)
    {
      if (http_request.status == 200)
      {
    result = http_request.responseText;
    if(container)
    {
          container.innerHTML = result;
        }
        eval(evalCode);
  }
  else
  {
        alert(http_request.responseText);
        alert('There was a problem with the request.');
      }
    }
  }

  http_request.open('GET', url + params, true);
http_request.send(null);
}

var noteAnchor = null;

function showNote(id,anchor,title)
{
  if(noteAnchor == anchor)
  {
    hideNote();
  }
  else
  {
    noteAnchor = anchor;
    sn = $('smlNote');
    sn.innerHTML = '<p><span class="noteInfo">'+ title +'</span>'+ $(id).innerHTML +'</p>';
    sn.style.top = findY(anchor) + 16 + 'px';
    sn.style.left = findX(anchor) + 'px';
    sn.style.display = 'block';
  }
}

function hideNote()
{
  sn.style.display = 'none';
  sn.style.top = '-1000px';
  sn.style.left = '-1000px';
  noteAnchor = null; 
}


function submit_login()
{
 loginPass = true;
 
 if(!isEmail($('loginEmail').value))
 {
   $('loginEmailEr').className = 'show';
   loginPass = false;
 }
 else
 {
   $('loginEmailEr').className = 'hide';
 }

 if($('loginPass').value.length == 0)
 {
   $('loginPassEr').className = 'show';
   loginPass = false;
 }
 else
 {
   $('loginPassEr').className = 'hide';
 }

 if(loginPass)
 {
   $('formLogin').submit();
 }
}

function submit_request()
{
  loginPass = true;
  
  if(!isEmail($('loginEmail').value))
  {
    $('loginEmailEr').className = 'show';
    loginPass = false;
  }
  else
  {
    $('loginEmailEr').className = 'hide';
  }

  if(loginPass)
  {
    $('formRequest').submit();
  }
}