/********************************
* x3tech CMS - Application - Mod Module - Javascript - Module
* Author        : $Author$
* Rev            : $Rev$
* Last Modified    : $Date$
********************************/

function deleteController(id)
{
    $("#controller_" + id).remove();
}

function renameController(id, added)
{
    var listItem = $("#controller_" + id);
    var name = $.trim(listItem[0].childNodes[0].data);

    listItem.empty();

    var textbox = document.createElement("input");
    textbox.type = "text";
    textbox.value = name;
    textbox.size = 10;
    textbox.id = "controller_text_" + id;

    var saveLink = document.createElement("a");
    saveLink.innerHTML = "Save";
    saveLink.href = "#";;
    if(added)
        saveLink.setAttribute('onclick', 'saveController(' + id + ', true); return false;');
    else
        saveLink.setAttribute('onclick', 'saveController(' + id + '); return false;');

    listItem.append(textbox);
    listItem.append(saveLink);
}

function saveController(id, added)
{
    var listItem = $("#controller_" + id);
    var name = $("#controller_text_" + id)[0].value;

    listItem.empty();

    var editLink = document.createElement("a");
    editLink.innerHTML = "E";
    editLink.href = "#";
    if(added)
        editLink.setAttribute('onclick', 'renameController(' + id + ', true); return false;');
    else
        editLink.setAttribute('onclick', 'renameController(' + id + '); return false;');

    var deleteLink = document.createElement("a");
    deleteLink.innerHTML = "X";
    deleteLink.href = "#";
    deleteLink.setAttribute('onclick', 'deleteController(' + id + '); return false;');

    var controllerName = document.createTextNode(name);

    var hiddenInput = document.createElement("input");
    hiddenInput.type = "hidden";

    if(added)
        hiddenInput.name = "controller_new[]";
    else
        hiddenInput.name = "controller_name_" + id;

    hiddenInput.value = name;

    listItem.append(controllerName);
    listItem.append(document.createTextNode(" "));
    listItem.append(editLink);
    listItem.append(document.createTextNode(" "));
    listItem.append(deleteLink);
    listItem.append(hiddenInput);
}

function addController(id)
{
    var listItem = $("#controller_" + id);
    var name = $("#controller_text_" + id)[0].value;

    listItem.empty();

    var editLink = document.createElement("a");
    editLink.innerHTML = "E";
    editLink.href = "#";
    editLink.setAttribute('onclick', 'renameController(' + id + ', true); return false;');

    var deleteLink = document.createElement("a");
    deleteLink.innerHTML = "X";
    deleteLink.href = "#";
    deleteLink.setAttribute('onclick', 'deleteController(' + id + '); return false;');

    var controllerName = document.createTextNode(name);

    var hiddenInput = document.createElement("input");
    hiddenInput.type = "hidden";
    hiddenInput.name = "controller_new[]";
    hiddenInput.value = name;

    listItem.append(controllerName);
    listItem.append(document.createTextNode(" "));
    listItem.append(editLink);
    listItem.append(document.createTextNode(" "));
    listItem.append(deleteLink);
    listItem.append(hiddenInput);

    var newId = id + 1;

    var newInput = document.createElement("input");
    newInput.type = "text";
    newInput.size = 10;
    newInput.id = "controller_text_" + newId;

    var addLink = document.createElement("a");
    addLink.innerHTML = "Add";
    addLink.setAttribute('onclick', 'addController(' + newId + '); return false;');
    addLink.href = "#";

    var newLi = document.createElement("li");
    newLi.id = "controller_" + newId;
    newLi.appendChild(newInput);
    newLi.appendChild(document.createTextNode(" "));
    newLi.appendChild(addLink);

    listItem[0].parentNode.appendChild(newLi);
}
