﻿var AjaxBehaviour = function(){};
AjaxBehaviour.prototype.callback = function(rText, rXML, rStatus){};

//###################################

var publishBehaviour = function(){
};

YAHOO.extend(publishBehaviour, AjaxBehaviour );

publishBehaviour.prototype.callback = function(rText, rXml, rStatus){
  var result =  rXml.getElementsByTagName('boolean')[0].firstChild.nodeValue;
  if(result == "true"){
    var publishedArea = document.getElementById("published")
    publishedArea.innerHTML = "Published Successfully to:   "
    document.getElementById("info").style.background='black';
    document.getElementById("info").style.color='white';
  }
}

//###################################

var saveFormBehaviour = function(){};

YAHOO.extend(saveFormBehaviour, AjaxBehaviour );
//#################################

var imageFormBehaviour = function(){};

YAHOO.extend(imageFormBehaviour, AjaxBehaviour );

imageFormBehaviour.prototype.callback = function(rText, rXML, rStatus){
   var newComponent = document.createElement('div');
   newComponent.innerHTML = rText;
   document.getElementById("uploadImages").appendChild(newComponent);
};

//#################################

var fileUploadBehaviour = function(){};

YAHOO.extend(fileUploadBehaviour, AjaxBehaviour );

fileUploadBehaviour.upload = function(response){
   document.getElementById(id).innerHTML = "";
   root = contentProcessor.uploadedXml.getElementsByTagName("imageLib")[0];
   firstTag =  response.selectSingleNode("image");
   root.appendChild(firstTag);
   contentProcessor.placeContent(contentProcessor.uploadedXml, contentProcessor.xmlTransform, "viewuploaded");
   
   document.getElementById("uploadHeader").style.visibility = "visible";
   
   var imageList  = document.getElementById("viewuploaded").getElementsByTagName("img");
   for (i=0; i < imageList.length; i++){
     imageList[i].onclick = function(){
        var imageform = opener.formManager.imageForm.theForm; 
        var lookingFor = opener.formManager.imageForm.lookingFor;
        imageform.elements[lookingFor].value = this.name;
        imageform.elements[lookingFor].onchange();
        imageform.imageurl.value  = document.getElementById(this.name+"_url").value;
        imageform.imageurl.onchange();
	    window.close();
	  }
   }
   formManager.loadAlphaList();
};

//#################################

var AlphaListBehaviour = function(){};

YAHOO.extend(AlphaListBehaviour, AjaxBehaviour );

AlphaListBehaviour.prototype.callback = function(rText ,rXML, rStatus){
    contentProcessor.placeContent(rXML, contentProcessor.alphaTransform, "alphaList");
};

//#################################

var displayLetterBehaviour = function(){};

YAHOO.extend(displayLetterBehaviour, AjaxBehaviour );

displayLetterBehaviour.prototype.callback = function(rText, rXml, rStatus){
   contentProcessor.placeContent(rXml, contentProcessor.xmlTransform, "viewImages");
   var imageList  = document.getElementById("viewImages").getElementsByTagName("img");
   for (i=0; i < imageList.length; i++){
      imageList[i].onclick = function(){
        var imageform = opener.formManager.imageForm.theForm;
        var lookingFor = opener.formManager.imageForm.lookingFor;
        imageform.elements[lookingFor].value = this.name;
        imageform.elements[lookingFor].onchange();
        var test = document.getElementById(this.name+"_url").value;;
        imageform.elements["imageurl"].value  = test;
        imageform.elements["imageurl"].onchange();
	    window.close();
	    }
   }
};


//###################################

var deleteImageBehaviour = function(){};

YAHOO.extend(deleteImageBehaviour, AjaxBehaviour );

deleteImageBehaviour.prototype.callback = function(rText, rXml, rStatus){
  
};

//####################################

var checkSiteNameBehaviour = function(){};

YAHOO.extend(checkSiteNameBehaviour, AjaxBehaviour );

checkSiteNameBehaviour.prototype.callback = function(rText, rXml, rStatus){
   var result =  rXml.getElementsByTagName('boolean')[0].firstChild.nodeValue;
   var errorArea = document.getElementById("error");
   var submitButton = document.getElementById("submit")
   if (result=="true"){
     errorArea.style.color = "red";
     errorArea.innerHTML = "<b>There is already a site with this name!</b>";
     submitButton.disabled = true;
   }else{
     submitButton.disabled = false;
     errorArea.innerHTML = "";
   }
};

//#####################################


var siteCreationBehaviour = function(){};

YAHOO.extend(siteCreationBehaviour, AjaxBehaviour );

siteCreationBehaviour.prototype.callback = function(rText, rXml, rStatus){
  var result =  rXml.getElementsByTagName('int')[0].firstChild.nodeValue;
  var errorArea = document.getElementById("error");
  var urlArea = document.getElementById("url");
  if (result==0){
     errorArea.style.color = "red";
     errorArea.innerHTML = "<b>An error has occured!</b>";
  }else{
    errorArea.innerHTML = "";
    
    var sitename = document.getElementById("sitename").value;
      document.cookie = "site="+escape(result)+";";
      document.cookie = "sitename="+escape(sitename)+";";
      document.cookie = "uri=module";    
      var urlString = "/modules/editor.aspx?project="+utils.getCookie('project')+"&site="+ result + "&uri=module" 
      //urlArea.innerHTML = "Click <a href='" + urlString + "'>here</a> to edit your site";
      window.location= urlString;
  }
};


//#######################################

var getSitesBehaviour = function(category){
  this.category = category;
};

YAHOO.extend(getSitesBehaviour, AjaxBehaviour );

getSitesBehaviour.prototype.callback = function(rText, rXml, rStatus){
  var selectArea = document.getElementById(this.category);
if(window.ActiveXObject){
  result = rXml.xml;
}else{
  var result = (new XMLSerializer()).serializeToString(rXml);
}
  selectArea.innerHTML = result;
};


//##########################


var fupload = function(args){
  this.argument = args;
}
	  
	  
fupload.prototype.upload = function(response){
       root = contentProcessor.uploadedXml.getElementsByTagName("imageLib")[0];
       var xmldoc = response.responseXML;
       firstTag =  xmldoc.getElementsByTagName('image').item(0);
       root.appendChild(firstTag);
       contentProcessor.placeContent(contentProcessor.uploadedXml, contentProcessor.xmlTransform, "viewuploaded");
       document.getElementById("uploadHeader").style.visibility = "visible";
       document.getElementById(this.argument).innerHTML = "";
       var imageList  = document.getElementById("viewuploaded").getElementsByTagName("img");
       for (i=0; i < imageList.length; i++){
         imageList[i].onclick = function(){
            var imageform = opener.formManager.imageForm.theForm; 
            var lookingFor = opener.formManager.imageForm.lookingFor;
            imageform.elements[lookingFor].value = this.name;
            imageform.elements[lookingFor].onchange();
            imageform.imageurl.value  = document.getElementById(this.name+"_url").value;
            imageform.imageurl.onchange();
	        window.close();
	     }
       }
       formManager.loadAlphaList();
};     
