//------------------------------------------------------------------------------------------------------
// configuration file for Edit toolbar creation
//------------------------------------------------------------------------------------------------------

// variables for the used combo boxes
var cmbZoom;
var cmbFormat;
var cmbFont;
var cmbFontSize;
var cmbStyleSheet;
var cmbTextModule;

var btnEdit;
var btnHTML;
var btnPreview;

//------------------------------------------------------------------------------------------------
// create toolbars auto
// Config is:
// T means Toolbar Top
// B means Toolbar Bottom
//
// T-1:2:3:4:5:6:7;T-10:11:12;B-45:46
//
// NEW       1
// OPEN      2
// SAVE      3
// SEARCH    4
// PRINT     5
// SPELL     64
// CUT       6
// COPY      7
// PASTE     8
// PASTEWORD 61
// UNDO      9
// REDO      10
// LINK      11
// ANCHOR    60
// IMAGE     12
// TABLE     13
// RULE      14
// CHAR      15
// DATE      16
// TIME      17
// MARQUEE   62
// PAGEBREAK 57
// ZOOM      18
// REMOVE    37
// SELALL    58

// STYLE     19
// FORMAT    56
// FONT      20
// FONTSIZE  21
// BOLD      22
// ITALIC    23
// UNDERLINE 24
// SUPER     25
// SUB       26
// LEFT      27
// CENTER    28
// RIGHT     29
// BLOCK     30
// ORDERED   31
// UNORDERED 32
// INDENT    33
// OUTDENT   34
// COLOR     35
// BACKCOLOR 36

// FORM      59
// LABEL     38
// BUTTON    39
// INPUT     40
// CHECKBOX  41
// RADIO     42
// COMBO     43
// LIST      44
// AREA      45
// HIDDEN    63
// CONTAINER 46
// SUBPAGE   47
// ABSOLUTE  48
// TMLIST    49
// TMADD     50
// TMNEW     51
// TMREMOVE  52
// EDIT      53
// HTML      54
// PREVIEW   55

// next:65
// HELP      99

//toolbar=
//T0102030405SE06070861SE0910SE11601213141516176257SE1858SE99;
//T195620212223242526SE27282930SE31323334SE3536SE37;
//T59383940414243444563SE4647SE48SE49505152;
//B535455

//?toolbar=T010203040564SE06070861SE0910SE11601213141516176257SE1858SE99;T195620212223242526SE27282930SE31323334SE3536SE37;T59383940414243444563SE4647SE48SE49505152;B535455
//------------------------------------------------------------------------------------------------
function CreateToolbarsAuto(config,idTop,idBottom)
{
  var objToolbarsTop = null;
  var objToolbarsBottom = null;
  var hasTop = false;
  var hasBottom = false;
  var hasFont = false;
  var hasFontSize = false;
  var hasZoom = false;
  var hasTM = false;
  var hasEdit = false;
  var hasFormat = false;
  var hasButton = false;

  var aToolbars = config.split(";");

  for(var i=0;i<aToolbars.length;i++) {
    var where = aToolbars[i].substring(0,1);
    if(where == "T") {
      if(objToolbarsTop == null) {
        objToolbarsTop = new Toolbars(idTop);
        objToolbarsTop.backcolor = globalToolbarColor;
        hasTop = true;
      }
      currentToolbar = objToolbarsTop;
    } else if( where == "B")  {
      if(objToolbarsBottom == null) {
        objToolbarsBottom = new Toolbars(idBottom);
        objToolbarsBottom.backcolor = globalToolbarColor;
        hasBottom = true;
      }
      currentToolbar = objToolbarsBottom;
    } else {
      alert("Unknown toolbar key: " + where)
      return;
    }
    var buttons = aToolbars[i].substring(1,aToolbars[i].length);
    var aItems = new Array(buttons.length/2);
    for(var k=0;k<aItems.length;k++) {
      aItems[k] = buttons.substring(k*2,(k*2) +2);
    }
    var objToolbar = new Toolbar();
    objToolbar.design = design;
    objToolbar.border = globalToolbarBorder;
    objToolbar.add(new Separator("design/image/" + design + "/tbbegin.gif"));
    hasButton = false;
    for(var j=0;j<aItems.length;j++) {
      if(aItems[j] == "20")
        hasFont = true
      if(aItems[j] == "21")
        hasFontSize = true
      if(aItems[j] == "18")
        hasZoom = true
      if(aItems[j] == "49")
        hasTM = true
      if(aItems[j] == "53")
        hasEdit = true
      if(aItems[j] == "56")
        hasFormat = true
      if(addItem(objToolbar,aItems[j]))
        hasButton = true;
    }
    if(design =="Office2003")
      objToolbar.add(new Separator("design/image/" + design + "/tbend.gif"));
    if(hasButton)
      currentToolbar.add(objToolbar);
  }
  if(hasTop)
    objToolbarsTop.create();
  if(hasBottom)
    objToolbarsBottom.create();

  if(hasEdit){
    btnEdit.setStatus(true);
  }

  if(hasFormat) {
    cmbFormat.add("Normal","NORMAL");
    cmbFormat.add("Heading 1","<h1>");
    cmbFormat.add("Heading 2","<h2>");
    cmbFormat.add("Heading 3","<h3>");
    cmbFormat.add("Heading 4","<h4>");
    cmbFormat.add("Heading 5","<h5>");
    cmbFormat.add("Heading 6","<h6>");
    cmbFormat.add("Address","<address>");
    cmbFormat.add("Directory List","<dir>");
    cmbFormat.add("Formatted","<pre>");
    cmbFormat.add("Menu List","<menu>");
  }

  if(hasFont) {
    // now add the fonts
    cmbFont.add("Arial","Arial");
    cmbFont.add("Courier","Courier");
    cmbFont.add("Courier New","Courier New");
    cmbFont.add("Tahoma","Tahoma");
    cmbFont.add("Times New Roman","Times New Roman");
    cmbFont.add("Verdana","Verdana");
  }

  if(hasFontSize) {
    // now add the font size
    cmbFontSize.add("8","1");
    cmbFontSize.add("10","2");
    cmbFontSize.add("12","3");
    cmbFontSize.add("14","4");
    cmbFontSize.add("18","5");
    cmbFontSize.add("24","6");
    cmbFontSize.add("36","7");
  }

  if(hasZoom) {
    // not available in IE5
    if(!browser.ie5 && !browser.ns6) {
      // now add the zoom values
      cmbZoom.add("10%","10%");
      cmbZoom.add("50%","50%");
      cmbZoom.add("100%","100%");
      cmbZoom.add("150%","150%");
      cmbZoom.add("200%","200%");
      cmbZoom.setSelected("100%");
    }
  }

  if(hasTM) {
    // read available text modules from server
    if(!browser.ns6)
      editGetTextModule(cmbTextModule.id);
  }

  return objToolbarsTop;
}

function addItem(objToolbar, item)
{
    if(item == "SE") {
      objToolbar.add(new Separator("design/image/" + design + "/separator.gif"));
      return false;
    }
    if(item == "01") {
      objToolbar.add(new Button("","","design/image/" + design + "/neu.gif","editNew()",getLanguageString(language,101),design,""));
      return true;
    }
    if(item == "02") {
      objToolbar.add(new Button("","","design/image/" + design + "/open.gif","editOpen(1)",getLanguageString(language,102),design,""));
      return true;
    }
    if(item == "03") {
      objToolbar.add(new Button("","","design/image/" + design + "/save.gif","__saveCommon()",getLanguageString(language,118),design,""));
      return true;
    }
    if(item == "04" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/search.gif","editSearch()",getLanguageString(language,113),design,""));
      return true;
    }
    if(item == "05" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/print.gif","editPrint()",getLanguageString(language,103),design,""));
      return true;
    }
    if(item == "06") {
      objToolbar.add(new Button("","","design/image/" + design + "/cut.gif","editCut()",getLanguageString(language,104),design,""));
      return true;
    }
    if(item == "07") {
      objToolbar.add(new Button("","","design/image/" + design + "/copy.gif","editCopy()",getLanguageString(language,105),design,""));
      return true;
    }
    if(item == "08") {
      objToolbar.add(new Button("","","design/image/" + design + "/paste.gif","editPaste()",getLanguageString(language,106),design,""));
      return true;
    }
    if(item == "09") {
      objToolbar.add(new Button("","","design/image/" + design + "/undo.gif","editUndo()",getLanguageString(language,107),design,""));
      return true;
    }
    if(item == "10") {
      objToolbar.add(new Button("","","design/image/" + design + "/redo.gif","editRedo()",getLanguageString(language,108),design,""));
      return true;
    }
    if(item == "11") {
      objToolbar.add(new Button("","","design/image/" + design + "/link.gif","editLink()",getLanguageString(language,109),design,""));
      return true;
    }
    if(item == "12") {
      var objImage = new MenuButton("menu_image.html","design/image/" + design + "/image.gif","__onMenuImageClicked",getLanguageString(language,110),design,"");
      objImage.width = "150";
      if(browser.ns6)
        objImage.height = "70";
      else
        objImage.height = "93";
      objToolbar.add(objImage);
      return true;
    }
    if(item == "13") {
      objToolbar.add(new TableButton("design/image/" + design + "/table.gif","__onCreateTable",getLanguageString(language,111),design,""));
      return true;
    }
    if(item == "14") {
      objToolbar.add(new Button("","","design/image/" + design + "/rule.gif","editInsertObject('RULE')",getLanguageString(language,112),design,""));
      return true;
    }
    if(item == "15" && !browser.ns6) {
      var objChar = new MenuButton("char.html","design/image/" + design + "/char.gif","__onMenuCharClicked",getLanguageString(language,115),design,"");
      objChar.width = "78";
      objChar.height = "90";
      objToolbar.add(objChar);
      return true;
    }
    if(item == "16") {
      objToolbar.add(new Button("","","design/image/" + design + "/date.gif","__onInsertDate()",getLanguageString(language,116),design,""));
      return true;
    }
    if(item == "17") {
      objToolbar.add(new Button("","","design/image/" + design + "/time.gif","__onInsertTime()",getLanguageString(language,117),design,""));
      return true;
    }
    if(item == "18") {
      if(!browser.ie5 && !browser.ns6) {
        cmbZoom = new Combo("changeZoom()");
        objToolbar.add(cmbZoom);
        return true;
      }
    }
    if(item == "99") {
      objToolbar.add(new Button("","","design/image/" + design + "/help.gif","__help()",getLanguageString(language,114),design,""));
      return true;
    }

    if(item == "19" && !browser.ns6) {
      cmbStyleSheet = new Combo("__changeStyle()");
      objToolbar.add(cmbStyleSheet);
      // stylesheets are filled dynamicly
      editSetStyleSheetObject(cmbStyleSheet.id);
      return true;
    }
    if(item == "56") {
      cmbFormat = new Combo("__changeFormat()");
      objToolbar.add(cmbFormat);
      return true;
    }
    if(item == "20") {
      cmbFont = new Combo("__changeFont()");
      objToolbar.add(cmbFont);
      return true;
    }
    if(item == "21") {
      cmbFontSize = new Combo("__changeFontSize()");
      objToolbar.add(cmbFontSize);
      return true;
    }
    if(item == "22") {
      objToolbar.add(new Button("","","design/image/" + design + "/bold.gif","editBold()",getLanguageString(language,201),design,"BOLD"));
      return true;
    }
    if(item == "23") {
      objToolbar.add(new Button("","","design/image/" + design + "/italic.gif","editItalic()",getLanguageString(language,202),design,"ITALIC"));
      return true;
    }
    if(item == "24") {
      objToolbar.add(new Button("","","design/image/" + design + "/underline.gif","editUnderline()",getLanguageString(language,203),design,"UNDERLINE"));
      return true;
    }
    if(item == "25") {
      objToolbar.add(new Button("","","design/image/" + design + "/superscript.gif","editSuperscript()",getLanguageString(language,204),design,"SUPERSCRIPT"));
      return true;
    }
    if(item == "26") {
      objToolbar.add(new Button("","","design/image/" + design + "/subscript.gif","editSubscript()",getLanguageString(language,205),design,"SUBSCRIPT"));
      return true;
    }
    if(item == "27") {
      objToolbar.add(new Button("","","design/image/" + design + "/left.gif","editJustifyLeft()",getLanguageString(language,206),design,"JUSTIFYLEFT"));
      return true;
    }
    if(item == "28") {
      objToolbar.add(new Button("","","design/image/" + design + "/center.gif","editJustifyCenter()",getLanguageString(language,207),design,"JUSTIFYCENTER"));
      return true;
    }
    if(item == "29") {
      objToolbar.add(new Button("","","design/image/" + design + "/right.gif","editJustifyRight()",getLanguageString(language,208),design,"JUSTIFYRIGHT"));
      return true;
    }
    if(item == "30") {
      objToolbar.add(new Button("","","design/image/" + design + "/block.gif","editJustifyFull()",getLanguageString(language,209),design,"JUSTIFYFULL"));
      return true;
    }
    if(item == "31") {
      objToolbar.add(new Button("","","design/image/" + design + "/orderedlist.gif","editOrderedList()",getLanguageString(language,210),design,"INSERTORDEREDLIST"));
      return true;
    }
    if(item == "32") {
      objToolbar.add(new Button("","","design/image/" + design + "/unorderedlist.gif","editUnorderedList()",getLanguageString(language,211),design,"INSERTUNORDEREDLIST"));
      return true;
    }
    if(item == "33") {
      objToolbar.add(new Button("","","design/image/" + design + "/indent.gif","editIndent()",getLanguageString(language,212),design,"INDENT"));
      return true;
    }
    if(item == "34") {
      objToolbar.add(new Button("","","design/image/" + design + "/outdent.gif","editOutdent()",getLanguageString(language,213),design,"OUTDENT"));
      return true;
    }
    if(item == "35") {
      objToolbar.add(new ColorSelector("design/image/" + design + "/color.gif","design/image/colorselect.gif","__onSetTextColor",getLanguageString(language,215),getLanguageString(language,217),design,""));
      return true;
    }
    if(item == "36") {
      objToolbar.add(new ColorSelector("design/image/" + design + "/backcolor.gif","design/image/colorselect.gif","__onSetBackgroundColor",getLanguageString(language,216),getLanguageString(language,218),design,""));
      return true;
    }
    if(item == "37") {
      var objClean = new MenuButton("menu_clean.html","design/image/" + design + "/remove.gif","__onMenuCleanClicked",getLanguageString(language,214),design,"");
      objClean.width = "150";
      objClean.height = "93";
      objToolbar.add(objClean);
      return true;
    }
    if(item == "38" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/label.gif","editInsertObject('LABEL')",getLanguageString(language,301),design,""));
      return true;
    }
    if(item == "39" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/button.gif","editInsertObject('BUTTON')",getLanguageString(language,302),design,""));
      return true;
    }
    if(item == "40" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/input.gif","editInsertObject('INPUT')",getLanguageString(language,303),design,""));
      return true;
    }
    if(item == "41" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/checkbox.gif","editInsertObject('CHECK')",getLanguageString(language,304),design,""));
      return true;
    }
    if(item == "42" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/radio.gif","editInsertObject('OPTION')",getLanguageString(language,305),design,""));
      return true;
    }
    if(item == "43" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/combobox.gif","editInsertObject('COMBO')",getLanguageString(language,306),design,""));
      return true;
    }
    if(item == "44" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/listbox.gif","editInsertObject('LISTBOX')",getLanguageString(language,307),design,""));
      return true;
    }
    if(item == "45" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/textarea.gif","editInsertObject('AREA')",getLanguageString(language,308),design,""));
      return true;
    }
    if(item == "46" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/div.gif","editInsertObject('DIV')",getLanguageString(language,310),design,""));
      return true;
    }
    if(item == "47" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/iframe.gif","editInsertObject('IFRAME')",getLanguageString(language,309),design,""));
      return true;
    }
    if(item == "48") {
      if(!browser.ie5 && !browser.ns6) {
        objToolbar.add(new Button("","","design/image/" + design + "/position.gif","editAbsolute()",getLanguageString(language,311),design,""));
        return true;
      }
    }
    if(item == "49" && !browser.ns6) {
      cmbTextModule = new Combo("");
      objToolbar.add(cmbTextModule);
      return true;
    }
    if(item == "50" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/tm_add.gif","editInsertTextModule('" + cmbTextModule.id + "')",getLanguageString(language,312),design,""));
      return true;
    }
    if(item == "51" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/tm_create.gif","editSetTextModule('" + cmbTextModule.id + "')",getLanguageString(language,313),design,""));
      return true;
    }
    if(item == "52" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/tm_remove.gif","editRemoveTextModule('" + cmbTextModule.id + "')",getLanguageString(language,314),design,""));
      return true;
    }

    if(item == "53") {
      objToolbar.action = "__onButtonClick";
      btnEdit = new Button(getLanguageString(language,401),"","design/image/" + design + "/edit.gif","setMode('EDIT')",getLanguageString(language,401),design,"EDIT");
      objToolbar.add(btnEdit);
      return true;
    }
    if(item == "54") {
      btnHTML = new Button(getLanguageString(language,402),"","design/image/" + design + "/html.gif","setMode('HTML')",getLanguageString(language,402),design,"HTML");
      objToolbar.add(btnHTML);
      return true;
    }
    if(item == "55") {
      btnPreview = new Button(getLanguageString(language,403),"","design/image/" + design + "/preview.gif","setMode('PREVIEW')",getLanguageString(language,403),design,"PREVIEW");
      objToolbar.add(btnPreview);
      return true;
    }

    if(item == "57" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/pagebreak.gif","editInsertObject('PAGEBREAK')",getLanguageString(language,404),design,""));
      return true;
    }
    if(item == "58" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/selectall.gif","editSelectAll()",getLanguageString(language,405),design,""));
      return true;
    }
    if(item == "59" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/form.gif","editInsertObject('FORM')",getLanguageString(language,406),design,""));
      return true;
    }
    if(item == "60" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/anchor.gif","editInsertObject('ANCHOR')",getLanguageString(language,407),design,""));
      return true;
    }
    if(item == "61" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/pasteword.gif","editPasteWord()",getLanguageString(language,408),design,""));
      return true;
    }
    if(item == "62" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/marquee.gif","editInsertObject('MARQUEE')",getLanguageString(language,409),design,""));
      return true;
    }
    if(item == "63" && !browser.ns6) {
      objToolbar.add(new Button("","","design/image/" + design + "/hidden.gif","editInsertObject('HIDDEN')",getLanguageString(language,410),design,""));
      return true;
    }
    if(item == "64") {
      objToolbar.add(new Button("","","design/image/" + design + "/spell.gif","onSpell()",getLanguageString(language,411),design,""));
      return true;
    }
}

//--------------------------------------------------------------------------------------------------------------------
// react on combo changes
//--------------------------------------------------------------------------------------------------------------------
function __onInsertDate()
{
  var curdate = new Date();
  var date = "";

  if(language=="DE")
   date = curdate.getDate() + "." + (parseInt(curdate.getMonth()) + 1) + "." + curdate.getFullYear();
  else
   date = (parseInt(curdate.getMonth()) + 1) + "/" + curdate.getDate() + "/" + curdate.getFullYear();

  editInsertHtml(date);
}

function __onInsertTime()
{
  var curdate = new Date();
  var date = curdate.getHours() + ":" + curdate.getMinutes() + ":" + curdate.getSeconds();
  editInsertHtml(date);
}

function __changeFormat()
{
  var value = cmbFormat.getSelected();
  if (value == 'NORMAL') {
    editFormat('Normal');
    editRemoveFormat();
  } else {
    editFormat(value);
  }
}

function __changeFont()
{
  editFont(cmbFont.getSelected());
}

function __changeFontSize()
{
  editFontSize(cmbFontSize.getSelected());
}

function __changeZoom()
{
  editZoom(cmbZoom.getSelected());
}

function __changeStyle()
{
  editSetStyle(cmbStyleSheet.getSelected());
}


//--------------------------------------------------------------------------------------------------------------------
// these functions are called after click on a button
//--------------------------------------------------------------------------------------------------------------------
function __onCreateTable(row, col)
{
  editCreateTable(row,col);
}

// click on mode buttons
// we set the pressed state
function __onButtonClick(tag)
{
  if(tag=="EDIT") {
    btnEdit.setStatus(true);
    btnHTML.setStatus(false);
    btnPreview.setStatus(false);
  }
  if(tag=="HTML") {
    btnEdit.setStatus(false);
    btnHTML.setStatus(true);
    btnPreview.setStatus(false);
  }
  if(tag=="PREVIEW") {
    btnEdit.setStatus(false);
    btnHTML.setStatus(false);
    btnPreview.setStatus(true);
  }
}

// if a text color is set
function __onSetTextColor(color)
{
  editColor(color)
}

// if a text backgroundcolor is set
function __onSetBackgroundColor(color)
{
  editBackColor(color);
}

// if the image menu is clicked
function __onMenuImageClicked(tag)
{
  if(tag == "LOCAL")
    editInsertObject('IMAGE');

  if(tag == "WEB")
    editInsertObject('IMAGEWEB');

  if(tag == "SERVER")
    editOpen(3);

  if(tag == "UPLOAD")
    editUpload();
}

// if the image menu is clicked
function __onMenuCleanClicked(tag)
{
  if(tag == "STYLE")
    editClean(0);

  if(tag == "FORMAT")
    editClean(1);

  if(tag == "TAG")
    editClean(2);

  if(tag == "ALL")
    editClean(3);
}

// if one of the special character button is clicked
function __onMenuCharClicked(tag)
{
  editInsertHtml(tag);
}

function __saveCommon()
{
  editSave();

  // do some internal things...
  // after saving, the loaded page is displayed without Edit
  // this is part of integration mode (see integration sample)
  if(__mode == "I") {
    document.location.href = __currentURL;
  }
}

// help function
function __help()
{
  NewWindow("manual.pdf","Help",50,50,700, 600,true,true);
}


