/* CREATE TABS FUNCTIONS *****************/
function createTabs(id) {
  createRequest();
  var url = "getTabs.php?id="+escape(id);
  request.open("GET", url, true);
  request.onreadystatechange = updateTabs;
  request.send("");
}

function createDefaultTabs() {
  var menuParent = document.getElementById(menuTabsParentId);
  var menuTabs = document.createElement('DIV');
  menuTabs.id = 'tabsContainer';
  menuParent.appendChild(menuTabs);

  var menuList = document.createElement('UL');
  menuList.id = 'tabs';
  menuList.className= 'tabs';
  menuTabs.appendChild(menuList);
  var menuItems = document.createElement('LI');
  menuItems.id = '1';
  menuItems.className = 'selected';
  menuItems.innerHTML = '<a class="current" href="">Home</a>';
  menuList.appendChild(menuItems);
}

function updateTabs() {
  if( request.readyState == 4 ) {
    document.getElementById(menuTabsParentId).innerHTML = "";
    if( request.status == 200 ) {
      var response = request.responseXML.documentElement;
      var tabs = response.getElementsByTagName('tab');

      if( tabs.length == 0 ) {
      } else {
        var menuParent = document.getElementById(menuTabsParentId);
        var menuTabs = document.createElement('DIV');
        menuTabs.id = 'tabsContainer';
        menuParent.appendChild(menuTabs);

        var menuList = document.createElement('UL');
        menuList.id = 'tabs';
        menuList.className= 'tabs';
        menuTabs.appendChild(menuList);

        var menuItems = "";
        var menuSpan = "";
        tabCounter = 1;
        for( var i = 0; i<tabs.length; i++) {
          var id = response.getElementsByTagName('id')[i].firstChild.data;
          var name = response.getElementsByTagName('name')[i].firstChild.data;
          var last_viewed = response.getElementsByTagName('last_viewed')[i].firstChild.data;

          if( last_viewed == 'Y' ) {
            menuItems = document.createElement('LI');
            menuItems.id = tabCounter;
            menuItems.className = 'selected';
            menuItems.innerHTML = '<a href="#" onclick="edit_tab('+menuItems.id+', \''+name+'\')">'+name+'</a>';
            menuList.appendChild(menuItems);
          } else {
            menuItems = document.createElement('LI');
            menuItems.id = tabCounter;
            menuItems.className = 'tabs';
            menuItems.innerHTML = '<a href="#" onclick="last_viewed('+menuItems.id+')">'+name+'</a>';
            menuList.appendChild(menuItems);
          }
          tabCounter++;
        }
        if( tabCounter < 9 ) {
          menuItems = document.createElement('LI');
          menuItems.id = 'insertTab';
          menuItems.className = 'insert';
          menuItems.innerHTML = '<input id="tabName" name="tabName" type="text"><a href="#" onclick="insert(tabCounter)"><img class="image_spacer" src="http://www.catholic.org/images/mycol/small_add.gif" alt="Add Tab" title="Add Tab" />Add</a><a href="#" onclick="close_box(\'insertTab\')"><img class="image_spacer" src="http://www.catholic.org/images/mycol/small_close.gif" alt="Cancel" title="Cancel" />Cancel</a>';

          menuList.appendChild(menuItems);

          menuItems = document.createElement('SPAN');
          menuItems.className = 'addSpan';
          menuItems.innerHTML = '<img class="image_spacer" src="http://www.catholic.org/images/mycol/small_add.gif" /><a href="#" onclick="add_tab()">Add A Tab</a>';
          menuList.appendChild(menuItems);
        }
        menuItems = document.createElement('SPAN');
        menuItems.className = 'addSpan';
        menuItems.innerHTML = '<img class="image_spacer" src="http://www.catholic.org/images/mycol/small_add.gif" /><a href="http://www.catholic.org/mycol/addcontent.php?cat=Popular&num=24">Add Content</a>';
        menuList.appendChild(menuItems);
      }
      initDragableBoxesScript();
    }
  }
}

/* UTILITY FUNCTIONS *********************/
function close_box(elementId) {
  document.getElementById(elementId).style.display="none";
}
function hide_box(elementId) {
  document.getElementById(elementId).style.visibility="hidden";
}

/* LAST VIEWED FUNCTIONS *****************/
function last_viewed(elementID) {
  createRequest();

  var url = "lastViewed.php?id="+escape(userID)+"&tab="+escape(elementID);
  request.open("GET", url, true);
  request.onreadystatechange = update_last_viewed;
  request.send("");
}

function update_last_viewed(){
  if( request.readyState == 4 ) {
    if( request.status == 200 ) {
      window.location.reload(true);
      createTabs(userID);
    }
  }
}

/* EDIT/DELETE TAB FUNCTIONS *************/
function edit_tab(elementID, name) {
  document.getElementById(elementID).innerHTML='<input value="'+name+'" onfocus="this.select()" id="editTab" name="editTab" type="text" style="border: 1px solid #D5D5D%;border-collapse: collapse;border-spacing: 0;font-size: x-small;text-align:center;height: 12px;margin:0;padding:0;">&nbsp;<a href="#" onclick="rename_tab('+elementID+')"><img style="width:14px;height:14px" src="http://www.catholic.org/images/mycol/tab_edit.gif" alt="Rename Tab" title="Rename Tab" />Rename</a>&nbsp;&nbsp;<a href="#" onclick="delete_tab('+elementID+')"><img style="width:14px;height:14px" src="http://www.catholic.org/images/mycol/tab_delete.gif" alt="Delete Tab" title="Delete Tab" />Delete</a>&nbsp;&nbsp;<a href="#" onclick="cancel()"><img style="valign:middle;" src="http://www.catholic.org/images/mycol/small_close.gif" alt="Cancel" title="Cancel" />Cancel</a>';

  //document.getElementById(elementID).innerHTML='<input value="'+name+'" onfocus="this.select()" id="editTab" name="editTab" type="text" style="border: 1px solid #D5D5D%;border-collapse: collapse;border-spacing: 0;font-size: x-small;text-align:center;height: 12px;margin:0;padding:0;">&nbsp;<a href="javascript:window.rename_tab('+elementID+')">Rename</a>&nbsp;<a href="javascript:window.delete_tab('+elementID+')">Delete</a>';

  //document.getElementById(elementID).innerHTML='<input value="'+name+'" onfocus="this.select()" id="editTab" name="editTab" type="text" style="border: 1px solid #D5D5D%;border-collapse: collapse;border-spacing: 0;font-size: x-small;text-align:center;height: 12px;margin:0;padding:0;">&nbsp;<a href="javascript:window.rename_tab('+elementID+')"><img src="http://www.catholic.org/images/mycol/tab_edit.gif" alt="Rename Tab" title="Rename Tab" /></a>&nbsp;<a href="javascript:window.delete_tab('+elementID+')"><img src="http://www.catholic.org/images/mycol/tab_delete.gif" alt="Delete Tab" title="Delete Tab" /></a>';

  //document.getElementById(elementID).innerHTML='<input value="'+name+'" onfocus="this.select()" id="editTab" name="editTab" type="text" style="border: 1px solid #7AA5D6;border-collapse: collapse;border-spacing: 0;font-size: x-small;text-align:center;height: 10pt;line-height: 8pt;margin:0 2px;padding: 0 0 0 0;width:100px;z-index: 1;"><a style="font: small Verdana, Sans-Serif;padding:3px 0.5em;background:transparent;text-decoration:underline;" href="javascript:window.rename_tab('+elementID+')"><img src="http://www.catholic.org/images/mycol/tab_edit.gif" alt="Rename Tab" title="Rename Tab" /></a><a style="font: small Verdana, Sans-Serif;padding:3px 0.5em;background:transparent;text-decoration:underline;" href="javascript:window.delete_tab('+elementID+')"><img src="http://www.catholic.org/images/mycol/tab_delete.gif" alt="Delete Tab" title="Delete Tab" /></a>';
  
  document.getElementById('editTab').focus();
}

function rename_tab(elementID) {
  createRequest();

  var name = document.getElementById('editTab').value;
  var url = "renameTab.php?id="+escape(userID)+"&tabid="+escape(elementID)+"&name="+escape(name);

  request.open("GET", url, true);
  request.onreadystatechange = update_rename;
  request.send("");
}

function update_rename() {
  if( request.readyState == 4 ) {
    if( request.status == 200 ) {
      window.location.reload(true);
    }
  }
}

function delete_tab(elementID) {
  var delete_this = confirm("Do you really want to delete this tab?");

  if( delete_this == true){
    createRequest();
    var url = "deleteTab.php?id="+escape(userID)+"&tabid="+escape(elementID);
    request.open("GET", url, true);
    request.onreadystatechange = update_delete;
    request.send("");
  }
}

function update_delete() {
  if( request.readyState == 4 ) {
    if( request.status == 200 ) {
      window.location.reload(true);
    }
  }
}

/* ADD TAB FUNCTIONS *********************/
function add_tab() {
  document.getElementById('insertTab').style.display="inline";
  document.getElementById('tabName').focus();    
}

function insert(elementID) {
  createRequest();

  var name = document.getElementById('tabName').value;
  var url = "insertTab.php?id="+escape(userID)+"&tabid="+escape(elementID)+"&name="+escape(name);

  request.open("GET", url, true);
  request.onreadystatechange = update_insert;
  request.send("");
}

function insertDefaultTab() {
  createRequest();
  var name = 'Home';
  var elementID = '1';
  var url = "insertTab.php?id="+escape(userID)+"&tabid="+escape(elementID)+"&name="+escape(name);

  request.open("GET", url, true);
  request.onreadystatechange = update_insert;
  request.send("");
}

function update_insert() {
  if( request.readyState == 4 ) {
    if( request.status == 200 ) {
      window.location.reload(true);
    }
  }
}

function cancel() {
  window.location.reload(true);
}
