function JSBaseMessages () {
  this.addLinkTitle = "Toevoegen";

  this.deleteLinkTitle = "Verwijder";

  this.editLinkTitle = "Bewerken";

  this.changePasswordLinkTitle = "Wijzig wachtwoord";

  this.sortLinkTitle = "Soort";

  this.printLinkTitle = "Print";
  this.emailLinkTitle = "Stuur e-mail";

  this.archiveLinkTitle = "Archief";
  this.archiveLinkCaption = "Archief";

  this.activeLinkTitle = "Actieve";
  this.activeLinkCaption = "Actieve";

  this.addWordLinkTitle = "Add with Word";
  this.editWordLinkTitle = "Edit with Word";
}

var BaseMessages = new JSBaseMessages();

function changeLinksProperties( containerId ) {

  var buttonsPlace = Global.getObject('adminButtonsPlace');

  if (Browser.mozilla ) {
          var confirmMessage = "Weet u zeker dat u dit wilt verwijderen?"
          var confirmFunction = "onclick='return confirm("+"&apos;"+confirmMessage+"&apos;"+")'";
        }else{confirmFunction = "";}

  var imgSize = "width='12' height='13'";
  var imgOnError = "onerror='this.style.visibility=\"hidden\";this.parentNode.innerHTML=this.alt'";
  var myArray = [
    {
      className: "comAddURL",
      title: BaseMessages.addLinkTitle,
      innerHTML: "&nbsp;<img src='/images/beheer_nieuw.gif' alt='"+BaseMessages.addLinkTitle+"' " + imgSize + imgOnError + " />" 
    },{
      className: "comDeleteURL",
      title: BaseMessages.deleteLinkTitle,
      innerHTML: "&nbsp;<img src='/images/beheer_verwijder.gif' alt='"+BaseMessages.deleteLinkTitle+"' " + imgSize + imgOnError + "  />" + "<small>" + "[verwijder]" + "</small>",
      //innerHTML: "&nbsp;<img src='/images/beheer_verwijder.gif' alt='"+BaseMessages.deleteLinkTitle+"' " + imgSize + imgOnError + confirmFunction +"  />",
      onclick: function() {
        if(!window.confirm( "Weet u zeker dat u dit wilt verwijderen?" ) ) {
          return false;
        }
     }
    },{
      className: "comEditURL",
      title: BaseMessages.editLinkTitle,
      innerHTML: "&nbsp;<img src='/images/beheer_wijzig.gif' alt='"+BaseMessages.editLinkTitle+"' " + imgSize + imgOnError + " />" + "<small>" + "[bewerk]" + "</small>"
    },{
      className: "ChangePasswordURL",
      title: BaseMessages.changePasswordLinkTitle,
      innerHTML: "<img src='/images/change-password.gif' alt='"+BaseMessages.changePasswordLinkTitle+"' " + imgSize + imgOnError + " />"
    },{
      className: "comPrintURL",
      title: BaseMessages.printLinkTitle,
      target: "_blank",
      innerHTML: "<img src='/images/icon-print.gif' alt='"+BaseMessages.printLinkTitle+"' " + imgOnError + " />"
    },{
      className: "comSortURL",
      title: BaseMessages.sortLinkTitle,
      innerHTML: "<img src='/images/icon-sort.gif' alt='"+BaseMessages.sortLinkTitle+"' " + imgOnError + " />"
    },{
      className: "comEmailURL",
      title: BaseMessages.emailLinkTitle,
      innerHTML: "<img src='/images/icon-mail.gif' alt='"+BaseMessages.emailLinkTitle+"' " + imgOnError + " />",
      onclick: function() {
        window.open(this.href, 'sendURLLinkNM', 'toolbar=0, width=380, height=500, scrollbars=no'); 
        return false;
      }
    },{
      className: "comArchiveURL",
      title: BaseMessages.archiveLinkTitle,
      innerHTML: BaseMessages.archiveLinkCaption
    },{
      className: "comActiveURL",
      title: BaseMessages.activeLinkTitle,
      innerHTML: BaseMessages.activeLinkCaption
    },{
      className: "comAddWord",
      title: BaseMessages.addWordLinkTitle,
      innerHTML: "<img src='/images/add-word.gif' alt='"+BaseMessages.addWordLinkTitle+"' " + imgSize + imgOnError + " />"
    },{
      className: "comEditWord",
      title: BaseMessages.editWordLinkTitle,
      innerHTML: "<img src='/images/edit-word.gif' alt='"+BaseMessages.editWordLinkTitle+"' " + imgSize + imgOnError + " />"
    }
  ];

        var container = document.getElementById( containerId );
        var buttons = [];
        if ( container ) {
                var links = document.getElementsByTagName('A');
                for ( var i = 0; i < links.length; i++ ) {
      //for nedstat softclick
      var domain = "pvda.nl";
      if((StringUtils.hasPrefix('http://',links[i]) || StringUtils.hasPrefix( 'www.',links[i]) || StringUtils.hasPrefix('mms://',links[i]) || StringUtils.hasPrefix('https://',links[i])) 
&&  (StringUtils.hasPrefix('http://www.'+domain,links[i]) || StringUtils.hasPrefix('http://'+domain,links[i]) ||  StringUtils.hasPrefix(domain,links[i]) || StringUtils.hasPrefix('www.'+domain,links[i]))){
        if(links[i].getAttribute("onclick") == 'undefined' || links[i].getAttribute("onclick") == null || links[i].getAttribute("onclick") == ''){
        var tellernaam;
        if(document.getElementById("pageTitle") != 'undefined' && document.getElementById("pageTitle") != "" && document.getElementById("pageTitle") != null){
            tellernaam = document.getElementById("pageTitle").innerHTML;
        }else{
            tellernaam = document.domain;
            tellernaam = tellernaam.substring(0,tellernaam.indexOf("."));				
        }
                if(tellernaam != 'undefined' && tellernaam != '' && tellernaam != null){
                       if(links[i].getAttribute("title") != 'undefined' && links[i].getAttribute("title") != '' && links[i].getAttribute("title") != null){
                               tellernaam ="wizard_"+replaceIllegalChars( tellernaam) + "."+replaceIllegalChars(links[i].getAttribute("title"));
                       }else{
                               tellernaam ="wizard_"+replaceIllegalChars(tellernaam) + "."+replaceIllegalChars(links[i].innerHTML);
                       }
                       //EventManager.addEvent( links[i], "onclick", "ns_softclick(this, '', '" + tellernaam + "', 'clickout');return false" );
                       links[i].onclick = new Function("ns_softclick(this, '', '" + tellernaam + "', 'clickin'); return false"); 
                       //links[i].setAttribute("onclick", "ns_softclick(this, '', '" + tellernaam + "', 'clickin');return false");
                }
        }
      }
                        for ( var a = 0; a < myArray.length; a++ ) {
                                if ( links[i].className == myArray[a].className ) {
                                        var position = links[i].getAttribute('position');
                                        if (position!='undefined') {
                                                buttons[position] = links[i];
                                        }
                                        for ( var b in myArray[a] ) {
                                                if ( b=="innerHTML") {
                                                        var linkText = links[i].innerHTML;
                                                        var hasHtml = (linkText) ? true : false;
                                                        //if (Browser.mozilla ) {
                                                        //      links[i].innerHTML = myArray[a][b] + linkText;
                                                        //} else {
                                                                if(hasHtml) {
                                                                        links[i].innerHTML = myArray[a][b] + linkText;
                                                                        try{
                                                                                        links[i].getElementsByTagName("SMALL")[0].style.display="none";
                                                                        }catch(ex){
                                                                                //alert(ex.message);
                                                                        }
                                                                }else{
                                                                        links[i].innerHTML = myArray[a][b];
                                                                }
                                                        //}
                                                }else{
                                                        links[i].setAttribute( b, myArray[a][b] );
                                                }
                                        }
                                        if( Browser.mozilla && links[i].className == "comDeleteURL"){                                     
                                          links[i].onclick=function(){
                                                                return spConfirm();
                                                            };

                                        }

                                }
                        }
                }
             refreshRTF();
        }
        if (buttons) {
                for (i=1; i<buttons.length; i++) {
                        if (buttons[i]!=undefined) {
                                buttonsPlace.appendChild (buttons[i])
                        }
                }
        }
}

var searchStringDefaultValue = "search";
var searchStringValue = "";

function spConfirm(){  
  return  (confirm("Weet u zeker dat u dit wilt verwijderen?"));
}

function doSearchInit(inputName, formName) {
  var input = FormManager.getInput(inputName, formName);    
  if(input.focused) {
    return;
  }
  if (searchStringValue == "") {
    searchStringValue = searchStringDefaultValue;
    input.changed = false;
  } else {
    input.changed = true;
  }
  input.value = searchStringValue;
}

function doSearchFocus(inputName, formName) {
  var input = FormManager.getInput(inputName, formName);
  if (!input.changed) {
    input.value = "";
  };
  input.focused = true;
}

function doSearchBlur(inputName, formName) {
  var input = FormManager.getInput(inputName, formName);    
  if (input.value == "") {
    input.value = searchStringDefaultValue;
    input.changed = false;
  }
  input.focused = false;
}

function doSearchChange(inputName, formName) {
  var input = FormManager.getInput(inputName, formName);
  input.changed = true;
}

function doSearchSubmit(inputName, formName) {
  var input = FormManager.getInput(inputName, formName);    
  var result = (input.changed && input.value != "");

  if (!result) {
    input.focus();
  }
  return result;
}

function installSearchBox(inputName, formName) {
  var form = FormManager.getForm(formName);
  var input = FormManager.getInput(inputName, formName);

  form.onsubmit = new Function("return doSearchSubmit('" + inputName + "', '" + formName + "')");

  EventManager.addEvent(input, "onfocus",  "doSearchFocus('" + inputName + "', '" + formName + "')");
  EventManager.addEvent(input, "onblur",   "doSearchBlur('" + inputName + "', '" + formName + "')");
  EventManager.addEvent(input, "onkeypress", "doSearchChange('" + inputName + "', '" + formName + "')");

  WindowManager.addOnLoadFunction("doSearchInit('" + inputName + "', '" + formName + "');");  
}

function replaceIllegalChars(str) {
    str = str.replace(/^\s*/, '').replace(/\s*$/, '');
    str = str.replace(/\s+/g, '_')
    str = str.toLowerCase();
    str = HtmlProcessor.encodeHTML(str);

    str = str.replace(/&nbsp;/g,"");
    str = str.replace(/&#234;/g,"e");
    str = str.replace(/&#201;/g,"e");
    str = str.replace(/&#233;/g,"e");
    str = str.replace(/&#235;/g,"e");
    str = str.replace(/&#232;/g,"e");
    str = str.replace(/&euml;/g,"e");

    str = str.replace(/&#228;/g,"a");
    str = str.replace(/&#226;/g,"a");
    str = str.replace(/&#224;/g,"a");
    str = str.replace(/&#196;/g,"a");

    str = str.replace(/&#252;/g,"u");
    str = str.replace(/&#250;/g,"u");
    str = str.replace(/&#251;/g,"u");
    str = str.replace(/&#249;/g,"u");
    str = str.replace(/&#220;/g,"u");

    str = str.replace(/&#239;/g,"i");
    str = str.replace(/&#238;/g,"i");
    str = str.replace(/&#236;/g,"i");
    str = str.replace(/&#237;/g,"i");

    str = str.replace(/&#243;/g,"o");
    str = str.replace(/&#246;/g,"o");
    str = str.replace(/&#242;/g,"o");
    str = str.replace(/&#214;/g,"o");

    str = str.replace(/&#35;/g,"");
    str = str.replace(/&#36;/g,"");
    str = str.replace(/&#37;/g,"");
    str = str.replace(/&amp;/g,"");
    str = str.replace(/&#39;/g,"");
    str = str.replace(/\./g,"_");
    str = HtmlProcessor.decodeHTML(str);
    //str = str.replace("", "e");
    str = str.replace(/[^a-z0-9_-]/gi, "");
    return str;
}

function bannerOnClick(linkName, url, target){
         var domain = "pvda.nl";
         if(linkName == ''){
                linkName = 'banner';
         }
 if((StringUtils.hasPrefix('http://',url) || StringUtils.hasPrefix( 'www.',url) || StringUtils.hasPrefix('mms://',url) || StringUtils.hasPrefix('https://',url)) 
&&  (StringUtils.hasPrefix('http://www.'+domain,url) || StringUtils.hasPrefix('http://'+domain,url) ||  StringUtils.hasPrefix(domain,url) || StringUtils.hasPrefix('www.'+domain,url))){
//         if(url.indexOf(domain) != -1){
                 var a = document.createElement("A");
                 a.setAttribute("href", url);
                 a.setAttribute("target", target);
                 a.innerHTML = linkName;
								 var tellernaam;
								 if(document.getElementById("pageTitle") != 'undefined' && document.getElementById("pageTitle") != "" && document.getElementById("pageTitle") != null){
								    tellernaam = document.getElementById("pageTitle").innerHTML;
								 }else{
								    tellernaam = document.domain;
										tellernaam = tellernaam.substring(0,tellernaam.indexOf("."));				
								 }
                 if(tellernaam != 'undefined' && tellernaam != '' && tellernaam != null){
								 				 tellernaam = "wizard_" + replaceIllegalChars(tellernaam) + "."+replaceIllegalChars(linkName);
                         tellernaam = tellernaam + "."+replaceIllegalChars(linkName);
                         ns_softclick(a, url, tellernaam, 'clickin', '');
                         return false;
                 }
         }else{
                window.open(url, target,'');
         }
         
}



function refreshRTF(){
   try{
      if(Browser.firefox && RTF && RTF.RTFArray){
        for(var i = 0; i < RTF.RTFArray.length; i++){
          var rtfO = RTF.RTFArray[i];
          rtfO.switchMode();
        }
      }
   }catch(e){
            //do nothing
   }
}
