function initMCE() {
tinyMCE.init({ 
// General options 
mode : "textareas", 
theme : "advanced",
plugins: "save,paste,searchreplace",

// Theme options 
theme_advanced_buttons1 : "save,cancel,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect", 
theme_advanced_buttons2 : "cut,copy,pastetext,|,search,replace,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,help,code,|,forecolor,backcolor",
theme_advanced_disable : "visualaid",

theme_advanced_toolbar_align : "left",

save_onsavecallback : "saveEdit",
save_oncancelcallback : "saveCancel",
content_css : "camct.css"
    }); 
}

var ignoreClick = false;

function saveCancel() {
    toggleEditor(lastEditChunk);
    var lastPage = document.getElementById(lastPageID);
    lastPage.innerHTML = revertHtml;

    addClickEvent(lastPage, lastPage.id);

    ignoreClick = true;
    
    dirty = false;
    return false;
}

function saveEdit() {
    var editChunk = document.getElementById(lastEditChunk);
    var page = document.getElementById("edit");

    var lastPage = document.getElementById("pageID");

    lastPage.value = lastPageID;    

    page.value = editChunk.value;
    
    document.forms[0].submit();
}

function addClickEvent(name,id) {
    name.onclick = (function(id) { return function() { editChunk(id); } })(id);        
}

// add edit link to all ID edit* tags
function addEditLinks() {

    initMCE();
    
    var doc = document.getElementsByTagName('div');
    for (var i = 0; i < doc.length; i++) {
        var ele = doc[i];

        if (ele.id.indexOf("editor") != -1) {

            var name = document.getElementById(ele.id);
            name.setAttribute("class", "editBox");
            name.setAttribute("className", "editBox");
            //name.setAttribute('onclick', 'editChunk(\'' + ele.id + '\')');
            var id=ele.id;
            addClickEvent(name, id);
        }
    }
}

var lastEditChunk;
var lastPageID;
var dirty = false;
var revertHtml;

function editChunk(eleID) {

    if (ignoreClick) {
        ignoreClick = false;
        return;
    }

/*   if (dirty) {
        alert("You must cancel all other edits before editing a new chunk.");
        return;
    }*/

    dirty = true;
    
    lastPageID = eleID;

    var chunk = document.getElementById(eleID);
    chunk.onclick = null;
    var editArea = document.createElement("textarea");

    var txt = chunk.innerHTML;

    revertHtml = txt;

    var lnk = new RegExp("<DIV class=editLink.*?edit</DIV>")
    var lnk2 = new RegExp("<div class=editLink.*?edit</div>")
    var lnk3 = new RegExp("<div class=\"editLink\".*?edit</div>")

    txt = txt.replace(lnk, "");
    txt = txt.replace(lnk2, "");
    txt = txt.replace(lnk3, "");
    
    editArea.id = "txt" + eleID;
    editArea.value = txt;
    editArea.style.width = "100%";
    editArea.style.height = "300px";
    
    chunk.innerHTML = "";
    chunk.appendChild(editArea);

    toggleEditor(editArea.id);

    lastEditChunk = editArea.id;

}

function toggleEditor(id) {   

    if (!tinyMCE.get(id))
        tinyMCE.execCommand('mceAddControl', false, id);
    else
        tinyMCE.execCommand('mceRemoveControl', false, id);
} 
document.write('<script  ><\/script>');