// TODO: Merge functions, so that add clears edits off screen and so on
var Links_oldEditContent;
var Links_oldEditID;
var Links_oldTopicEditContent;
var Links_oldTopicEditID;
var Links_currMenu = "links";

Links_SetCurrMenu();

function Links_SetCurrMenu() {
	var q = window.location.search.substring(1);
	if (q) {
		var params = q.split('&');
		for (var i = 0; i < params.length; i++) {
			var parts = params[i].split('=', 2);
			if (parts[0].match(/^currmenu$/i))
				Links_currMenu = parts[1];
		}
	}
}

function Links_ShowEdit(id)
{
  if (!document.getElementById)
    return;

  var idNum, url, text, descr, type;

  if (id.match("^topic")) {
    // 'topic' prefix indicates we're adding to a topic
    idNum = id.substr(5);
    type  = "add";
    url   = "";
    text  = "";
    descr = "";
  } else {
    // 'link' prefix indicates we're editing a link
    idNum = id.substr(4);
    type  = "edit";
    url   = links[Number(idNum)].URL.replace(/"/,'&quot;');
    text  = links[Number(idNum)].Text.replace(/"/,'&quot;');
    descr = links[Number(idNum)].Descr.replace(/"/,'&quot;');
  }

  // Locate the '<div>' which has an 'id' matching our ID
  var elem = document.getElementById(id);
  if (elem) {

    // Build the new form content for the '<div>' section
    var form = '<form method="post" action="index.asp?CurrMenu=' + Links_currMenu + '&amp;action=savelink">\n';
    form += '<input type="hidden" name="type" value="' + type + '">\n';
    form += '<input type="hidden" name="ID" value="' + idNum + '">\n';
    form += '<table><tr><td>\n';
    form += 'URL&nbsp;Text:</td><td><input type="text" name="LinkText" value="' + text + '">\n';
    form += '</td><td rowspan="3" style=""vertical-align: top"">\n';
    form += 'Description:</td><td rowspan="3"><textarea rows="4" cols="50" name="Description">' + descr + '</textarea>\n';
    form += '</td>\n';
    form += '</tr>\n';
    form += '<tr><td>';
    form += 'URL:</td><td><input type="text" name="URL" value="' + url + '">\n';
    form += '</td></tr>\n';
    form += '<tr><td><input type="submit" value="Save"></td></tr></table>\n';
    form += '</form>\n';

    // If there's already a form on screen, remove it first
    if (Links_oldEditID) {
      var oldElem = document.getElementById(Links_oldEditID);
      if (oldElem)
        oldElem.innerHTML = Links_oldEditContent;
    }

    // Record the data we're replacing, so we can put it back later
    Links_oldEditID = id;
    Links_oldEditContent = elem.innerHTML;

    // If there's already a form on screen, remove it first
    if (Links_oldTopicEditID) {
      var oldElem = document.getElementById("edit" + Links_oldTopicEditID);
      if (oldElem)
        oldElem.innerHTML = Links_oldTopicEditContent;
    }

    // Record the data we're replacing, so we can put it back later
    Links_oldTopicEditID = id;
    Links_oldTopicEditContent = elem.innerHTML;

    // Stuff our content into the '<div>'
    elem.innerHTML = form;
  }
}

function Links_AddTopic()
{
  if (!document.getElementById)
    return;

  var elem = document.getElementById("addtopic");
  if (elem) {
    // Build the new form content for the '<div>' section
    var form = '<form method="post" action="index.asp?CurrMenu=' + Links_currMenu + '&amp;action=addtopic">\n';
    form += 'Topic&nbsp;Name: <input type="text" name="TopicName"><br>\n';
    form += '<input type="submit" value="Save">\n';
    form += '</form>\n';
    elem.innerHTML = form;
  }
}

function Links_EditTopic(id)
{
  if (!document.getElementById)
    return;

  var elem = document.getElementById("edit" + id);
  if (elem) {
    // Build the new form content for the '<div>' section
    var form = '<form method="post" action="index.asp?CurrMenu=' + Links_currMenu + '&amp;action=edittopic">\n';
    form += '<input type="hidden" name="ID" value="' + id + '">\n';
    form += 'Topic&nbsp;Name: <input type="text" name="TopicName" value="' + topics[Number(id)] + '"><br>\n';
    form += '<input type="submit" value="Save">\n';
    form += '</form>\n';
    // If there's already a form on screen, remove it first
    if (Links_oldEditID) {
      var oldElem = document.getElementById(Links_oldEditID);
      if (oldElem)
        oldElem.innerHTML = Links_oldEditContent;
    }

    // Record the data we're replacing, so we can put it back later
    Links_oldEditID = id;
    Links_oldEditContent = elem.innerHTML;

    // If there's already a form on screen, remove it first
    if (Links_oldTopicEditID) {
      var oldElem = document.getElementById("edit" + Links_oldTopicEditID);
      if (oldElem)
        oldElem.innerHTML = Links_oldTopicEditContent;
    }

    // Record the data we're replacing, so we can put it back later
    Links_oldTopicEditID = id;
    Links_oldTopicEditContent = elem.innerHTML;

    elem.innerHTML = form;
  }
}

