var Functions = new Object();
var SpAction  = new Object();

SpAction.loginStatus;
//=====================================================//
SpAction.getLoginStatus = function(handlerFunction){

   var url = "index.php?_spAction=loginStatusAjax" + "&ajaxRequest=1"  + "&showHTML=0";

   var formContent = 'xyz=1';
   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {SpAction.getLoginStatusHandler(handlerFunction);});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
SpAction.getLoginStatusHandler = function(handlerFunction){

   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {
      var responseText = UtilString.trimAll(XMLHTTP.xmlHttpObj.responseText, 1);
      
      SpAction.loginStatus = responseText;
      if (eval(handlerFunction)) {
         return eval(handlerFunction + '()');
      } 
   }
}

//**********************************************************************************//
Functions.changeProductNormalImage = function(imageName, mediaID){
  imgSrc   = "media/product/normal/" + imageName;
  linkTemp = "index.php?_room=media&_spAction=zoomImage&media_id=" + mediaID;
  linkSrc  = "javascript:UtilWindow.openWindow(linkTemp,'1010','800')";
  document.getElementById("productImage").src = imgSrc;
  document.getElementById("largeImage").href  = linkSrc;
}

//**********************************************************************************//
Functions.emailToFriend = function(url){
   var frmObj = document.forms["emailToFriend"];
   frmObj.action = "index.php?_spAction=emailToFriendForm";
   frmObj.target = "emailToFriend";

   w = 450;
   h = 400;
   windowString = "height=" + h + ",width=" + w + ",scrollbars=yes," +
                  "resizable=yes,left=" + (screen.width-w)/2 + ",top=" +
                  (screen.height-h)/2
   wind = window.open( "" , "emailToFriend", windowString);
   frmObj.submit();
}

var Poll = new Object();
//=====================================================//
Poll.submitPollAnswer = function(pollID, pollHistoryID){

   var pollResultObj = document.getElementById("pollResult");
   pollResultObj.innerHTML = "Processing... Please wait";

   var url = "index.php?_spAction=submitPollAnswer" +
             "&poll_id=" + pollID + "&_room=poll" + "&poll_history_id="+ pollHistoryID + "&showHTML=0" ;

   var formContent = 'xyz=1';

   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Poll.submitPollAnswerHandler();});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);

}

//=====================================================//
Poll.submitPollAnswerHandler = function(){

   var pollResultDIVObj = document.getElementById("pollResult");

   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {

      var xmlDoc = XMLHTTP.loadXML(XMLHTTP.xmlHttpObj.responseText);
      var root = xmlDoc.documentElement;

      var errorTag   = xmlDoc.getElementsByTagName("error");
      var errorNo    = errorTag[0].childNodes[0].firstChild.nodeValue;
      var errorText  = errorTag[0].childNodes[1].firstChild.nodeValue;

      if (errorNo == 0){
         //======================================================//
         var headerTag = xmlDoc.getElementsByTagName("header");
         var totalCount   = headerTag[0].childNodes[0].firstChild.nodeValue;
         var displayTitle = headerTag[0].childNodes[1].firstChild.nodeValue;

         //======================================================//
         var rowsTag = xmlDoc.getElementsByTagName("row");
         var htmlText = "";

         for (i = 0; i < rowsTag.length; i++) {

            var rowTag = rowsTag[i];
            var recordId = rowTag.childNodes[0].firstChild.nodeValue;
            var title    = rowTag.childNodes[1].firstChild.nodeValue;
            ansCount     = parseInt(rowTag.childNodes[2].firstChild.nodeValue);
            ansCountPercentage = parseInt((ansCount/totalCount)*100);

            progressBar = '<div style="height:16px;width:100px;float:left;'+
                          'border:1px solid #47924c;text-align:center;">' +
                          ansCountPercentage +
                          '%</div>';

            htmlText += '<div style="height:20px;">' + progressBar + '&nbsp;' + title + '</div>';
         }

         htmlText1 = '<hr><div><b>' + displayTitle + ':</b></div><br>';
         pollResultDIVObj.innerHTML = htmlText1 + htmlText;

      } else {
         htmlText = '<hr><div><b>' + errorText + '</b></div><br>';
         pollResultDIVObj.innerHTML = htmlText;
      }

   }
}

var Comments = new Object();
//=====================================================//
Comments.submitComment = function(){

   var commentFormDIV = document.getElementById("commentForm");

   var commentFormObj = document.getElementById("frmComment");
   var room_name   = commentFormObj.room_name.value;
   var record_id   = commentFormObj.record_id.value;


   var url = "index.php?_spAction=submitComment" + "&_room=comment" + "&showHTML=0";

   var formContent = getFormValues(commentFormObj);

   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Comments.submitCommentHandler(room_name, record_id);});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
Comments.submitCommentHandler = function(room_name, record_id){

   var url = "index.php?_spAction=list" + "&_room=comment" +
             "&room_name="    + room_name   +
             "&record_id="    + record_id   +
             "&ajaxRequest=1" + "&showHTML=0";

   var formContent = 'xyz=1';
   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Comments.submitCommentHandler2();});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
Comments.submitCommentHandler2 = function(room_name, record_id){

   var commentFormDIV = document.getElementById("commentForm");
   commentFormDIV.style.display = "none";

   var commentFormObj = document.getElementById("frmComment");
   commentFormObj.comments.value = "";

   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {

      var responseText = XMLHTTP.xmlHttpObj.responseText;
      var commentListDIV = document.getElementById("commentList");
      commentListDIV.innerHTML = responseText;
   }
}

//=====================================================//
Comments.showCommentForm = function(){
   SpAction.getLoginStatus("Comments.showCommentFormHandler");
}

//=====================================================//
Comments.showCommentFormHandler = function(){
   if (SpAction.loginStatus == 1){
      var commentFormDIV = document.getElementById("commentForm");
      commentFormDIV.style.display = "block";
   } else {
      alert("Sorry. You have to be logged in to make a comment");
      return;
   }
}

//=====================================================//
Comments.hideCommentForm = function(){

   var commentFormDIV = document.getElementById("commentForm");
   commentFormDIV.style.display = "none";
}

var Media = new Object();
//=====================================================//
Media.playMediaByID = function(record_id){

   var url = "index.php?_spAction=playFile" + "&_room=audioVideo" +
             "&key_field=audio_video_id"  +
             "&record_type=attachment"    +
             "&room_name=audioVideo"      +
             "&record_id="                + record_id   +
             "&ajaxRequest=1"             + "&showHTML=0";

   var formContent = 'xyz=1';
   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Media.playMediaByIDHandler();});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
Media.playMediaByIDHandler = function(){


   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {
      var xmlDoc = XMLHTTP.loadXML(XMLHTTP.xmlHttpObj.responseText);
      var root = xmlDoc.documentElement;

      var headerTag   = xmlDoc.getElementsByTagName("header");
      var fileName    = headerTag[0].childNodes[0].firstChild.nodeValue;

      var utilFrame = document.getElementById("utilFrame");
      utilFrame.src = fileName;
   }
}

//=====================================================//
Media.playAlbum= function(record_id){

   var url = "index.php?_spAction=playAlbum" + "&_room=audioVideo" +
             "&record_id="                + record_id   +
             "&ajaxRequest=1"             + "&showHTML=0";
   var formContent = 'xyz=1';
   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Media.playAlbumHandler();});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
Media.playAlbumHandler = function(){

   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {
      var xmlDoc = XMLHTTP.loadXML(XMLHTTP.xmlHttpObj.responseText);
      var root = xmlDoc.documentElement;

      var headerTag   = xmlDoc.getElementsByTagName("header");
      var fileName    = headerTag[0].childNodes[0].firstChild.nodeValue;

      var utilFrame = document.getElementById("utilFrame");
      //alert(utilFrame);
      utilFrame.src = fileName;
   }
}

//=====================================================//
Media.saveMedia= function(roomName, recordType, keyField, record_id){

   var url = "index.php?_spAction=saveMediaAjax" +
             "&_room=media"                 +
             "&room_name="                  + roomName    +
             "&record_type="                + recordType  +
             "&key_field="                  + keyField    +
             "&record_id="                  + record_id   +
             "&ajaxRequest=1"               + "&showHTML=0";


   var formContent = 'xyz=1';
   XMLHTTP.xmlHttpObj = XMLHTTP.getXMLHTTPObject(function () {Media.saveMediaHandler();});
   XMLHTTP.xmlHttpObj.open("POST", url, true);
   XMLHTTP.xmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
   XMLHTTP.xmlHttpObj.send(formContent);
}

//=====================================================//
Media.saveMediaHandler = function(){

   if (XMLHTTP.xmlHttpObj.readyState==4 || XMLHTTP.xmlHttpObj.readyState=="complete") {
      var xmlDoc = XMLHTTP.loadXML(XMLHTTP.xmlHttpObj.responseText);
      var root = xmlDoc.documentElement;

      var errorTag   = xmlDoc.getElementsByTagName("error");
      var errorNo    = errorTag[0].childNodes[0].firstChild.nodeValue;
      var errorText  = errorTag[0].childNodes[1].firstChild.nodeValue;

      if (errorNo == 0){

         var headerTag = xmlDoc.getElementsByTagName("header");
         var media_id  = headerTag[0].childNodes[0].firstChild.nodeValue;

         var utilFrame = document.getElementById("utilFrame");
         utilFrame.src = "index.php?_spAction=saveMedia" + "&_room=media&media_id=" + media_id + "&showHTML=0";
      } else {

         msg = errorText;
         if ( confirm (msg) )
         {
            document.location= "index.php?_room=member&_action=loginForm";
         }
      }
   }
}

//=====================================================//
Media.deleteMedia = function(room, recordType, id){
  url = "index.php?_room=media&_spAction=deleteMedia&room=" + room + "&recordType=" + recordType + "&media_id=" + id ;
  a = window.open(url,"","height=100,width=250,scrollbars=no," +
       "resizable=yes" + ",left=" + (screen.width-250)/2 + ",top=" + (screen.height-100)/2);
}