var engine_blog_process = "webcpms/proc_blog.php";
var ajaxLoadTopic,
    ajaxEditTopic,    
    ajaxLoadBlogEntry,
    ajaxEditBlogEntry,
    ajaxSendEntryEMail;



function getTopicRightChecks(type) {
   if (!document.getElementById('EveryVisitor' + type).checked && !document.getElementById('RegisteredVisitors' + type).checked) {
      var rightlist = new Array();
      var i = 0;
      while ( document.getElementById('TopicUserRight' + type + '_' + i) != null ) {
         if (document.getElementById('TopicUserRight' + type + '_' + i).checked) rightlist[rightlist.length] = document.getElementById('UserRightId_' + i).value;
         i++;
      }
      return rightlist.join(",");
   } else if (document.getElementById('RegisteredVisitors' + type).checked) {
      return 0;
   }
   return -1;
}

function saveTopic() {
   var title = checkTitleDescr('Topic', TITLE_ONLY);
   if (title.length == 0) return;

   var created = document.getElementById('Topic_year').value + "-" + makeTwoDigits(document.getElementById('Topic_month_sel').value) + "-" + makeTwoDigits(document.getElementById('Topic_day_sel').value) + " " + makeTwoDigits(document.getElementById('Topic_hour').value) + ":" + makeTwoDigits(document.getElementById('Topic_min').value) + ":00";
   var modify = document.getElementById('TopicModify').value;
   var parent = document.getElementById('TopicParent').value;

   var pts = getPageTitles("Topic");

   var rights = "";

   rights += "&rights_read=" + getTopicRightChecks("Read");
   rights += "&rights_write=" + getTopicRightChecks("Write");
   rights += "&rights_moderate=" + getTopicRightChecks("Moderate");

   if (modify != "" && modify == parent) {
      alert("Invalid parent topic");
      return;
   }

   startIndicator("TopicIndicator", "Saving");
   var cmd = "cmd=cmdSaveTopic&sid=" + document.getElementById('SessionID').value + "&parent=" + parent + (modify == "" ? "" : "&modify=" + modify) + title + pts + "&created=" + created + rights + "&page=" + document.getElementById('page').value;
   load(ajaxEditTopic = GetXmlHttpObject(), engine_blog_process, cmd, updateTopics);
}


function updateTopics() {
   if (ajaxEditTopic.readyState == 4 || ajaxEditTopic.readyState == "complete") {
//      stopIndicator("TopicIndicator");
      location.reload();
   }
}


function resetTopicEditor(need_confirm) {
   if (need_confirm) {
      if (!confirm("Are you sure you want to clear the contents of topic editor?")) return;
   }
   var i;
   setDateValue("Input_Topic_year", "Topic_year", "Topic_month", "Topic_day");
   setTimeValue("Topic_hour", "Topic_min");
   for (i = 0; i < languages.length; i++) {
      document.getElementById('TopicTitle_' + languages[i].descr).value = "";
   }
   wreTopicDescr.setText();
   for (i = 0; i < languages.length; i++) {
      wreTopicDescr.setDocument(languages[i].descr);
   }
   document.getElementById('TopicParent').value = 0;
   document.getElementById('ParentTopicInput').value = "";
   document.getElementById('TopicModify').value = "";
   document.getElementById('EveryVisitorRead').checked = true;
   document.getElementById('EveryVisitorWrite').checked = false;
   document.getElementById('EveryVisitorModerate').checked = false;
   document.getElementById('RegisteredVisitorsRead').checked = false;
   document.getElementById('RegisteredVisitorsWrite').checked = false;
   document.getElementById('RegisteredVisitorsModerate').checked = false;
   i = 0;
   while ( document.getElementById('TopicUserRightRead_' + i) != null ) {
      document.getElementById('TopicUserRightRead_' + i).checked = false;
      document.getElementById('TopicUserRightWrite_' + i).checked = false;
      document.getElementById('TopicUserRightModerate_' + i).checked = false;
      i++;
   }
   resetPageTitleEditor("Topic");
}


function editTopic(name, title, entry_id, topic_id) {
   document.getElementById('WebCPMSTopicEditor').className = "editor_on";
   startIndicator("TopicIndicator", "Loading");
   var cmd = "cmd=cmdLoadTopic&sid=" + document.getElementById('SessionID').value + "&topic=" + topic_id + "&page=" + document.getElementById('page').value;
   load(ajaxLoadTopic = GetXmlHttpObject(), engine_blog_process, cmd, topicLoaded);
}


function checkRightType(userrights, type) {
   if (userrights == null) {
      document.getElementById('EveryVisitor' + type).checked = false;
      document.getElementById('RegisteredVisitors' + type).checked = false;
      checkTopicRights('EveryVisitor' + type, type);
      checkTopicRights('RegisteredVisitors' + type, type);
      return;
   }
   if (userrights.length == 1) {
      if (userrights[0] == -1) {
         document.getElementById('EveryVisitor' + type).checked = true;
         checkTopicRights('EveryVisitor' + type, type);
         return;
      } else if (userrights[0] == 0) {
         document.getElementById('RegisteredVisitors' + type).checked = true;
         checkTopicRights('RegisteredVisitors' + type, type);
         return;
      }
   }
   for (i = 0; i < userrights.length; i++) {
      var j = 0;
      var found = false;
      while ( (chk = document.getElementById('UserRightId_' + j)) != null && !found ) {
         found = (document.getElementById('UserRightId_' + j).value == userrights[i] ? true : false);
         j++;
      }
      document.getElementById('TopicUserRight' + type + '_' + (j - 1)).checked = (found ? true : false);
      checkTopicRights('TopicUserRight' + type + '_' + (j - 1), type);
   }
}

function topicLoaded() {
   if (ajaxLoadTopic.readyState == 4 || ajaxLoadTopic.readyState == "complete") {
      stopIndicator("TopicIndicator");
      var xml_doc = createXmlDoc(ajaxLoadTopic.responseText);
      var topics = xml_doc.getElementsByTagName("topic");
      var id = getElemAttributeValue(topics[0], "id");
      var i;
      for (i = 0; i < topics.length; i++) {
         var lang = getElemAttributeValue(topics[i], "lang");
         var created = findTagByName(topics[i], "created");
         var parent = findTagByName(topics[i], "parent");
         var titles = collectTagsByAttribute(topics[i], "title", "lang");
         var descrs = collectTagsByAttribute(topics[i], "descr", "lang");
         var pageurls = collectTagsByAttribute(topics[i], "pageurl", "lang");
         var rights = findTagByName(topics[i], "rights");
         var elem_right_read = rights.getElementsByTagName("read");
         var elem_right_write = rights.getElementsByTagName("write");
         var elem_right_moderate = rights.getElementsByTagName("moderate");
         var right_read = elem_right_read[0].childNodes[0] ? elem_right_read[0].childNodes[0].nodeValue.split(",") : null;
         var right_write = elem_right_write[0].childNodes[0] ? elem_right_write[0].childNodes[0].nodeValue.split(",") : null;
         var right_moderate = elem_right_moderate[0].childNodes[0] ? elem_right_moderate[0].childNodes[0].nodeValue.split(",") : null;
         if (created) {
            var d = created.childNodes[0].nodeValue.split(" ");
            var date = d[0].split("-");
            var time = d[1].split(":");
            setDateValue("Input_Topic_year", "Topic_year", "Topic_month", "Topic_day", date[0], date[1], date[2]);
            setTimeValue("Topic_hour", "Topic_min", time[0], time[1]);
         }
         var i = 0;
         for (i = 0; i < titles.length; i++) {
            document.getElementById('TopicTitle_' + titles[i][0]).value = unSafeString(titles[i][1]);
         }
         resetPageTitleEditor("Topic");
         for (i = 0; i < pageurls.length; i++) {
            if (pageurls[i][1].length > 0) {
               document.getElementById('TopicPermalink_' + pageurls[i][0]).innerHTML = getWebAddress() + "/" + unSafeString(pageurls[i][1]);
               checkPageTitle("Topic", pageurls[i][0]);
            }
         }
         for (i = 0; i < descrs.length; i++) {
            wreTopicDescr.setDocument(descrs[i][0], unSafeString(descrs[i][1]));
            if (document.getElementById('lang').value == descrs[i][0]) {
               wreTopicDescr.setText(unSafeString(descrs[i][1]));
            }
         }
         setSelectedTopic("Parent", parent.childNodes[0].nodeValue);
         i = 0;
         while ( document.getElementById('TopicUserRightRead_' + i) != null ) {
            document.getElementById('TopicUserRightRead_' + i).checked = false;
            document.getElementById('TopicUserRightWrite_' + i).checked = false;
            document.getElementById('TopicUserRightModerate_' + i).checked = false;
            i++;
         }
         document.getElementById('EveryVisitorRead').checked = false;
         document.getElementById('EveryVisitorWrite').checked = false;
         document.getElementById('EveryVisitorModerate').checked = false;
         document.getElementById('RegisteredVisitorsRead').checked = false;
         document.getElementById('RegisteredVisitorsWrite').checked = false;
         document.getElementById('RegisteredVisitorsModerate').checked = false;
         checkRightType(right_read, 'Read');
         checkRightType(right_write, 'Write');
         checkRightType(right_moderate, 'Moderate');
      }
      document.getElementById('TopicModify').value = id;
   }
}

function deleteTopic(name, title, entry_id, topic_id) {
   var t = decodeURI(title);
   if (!confirm("Do you really want to delete this topic?\n   " + t + "\nAll entries in this topic will also be deleted.\nAll comments placed on this topic entries will be deleted as well.\n\nTHIS CANNOT BE UNDONE!\n\nContinue?")) {
      return;
   }
   startIndicator("TopicIndicator", "Deleting");
   var cmd = "cmd=cmdDeleteTopic&sid=" + document.getElementById('SessionID').value + "&page=" + document.getElementById('page').value + "&topic=" + topic_id;
   load(ajaxEditTopic = GetXmlHttpObject(), engine_blog_process, cmd, updateTopics);
}

function closeTopic(name, title, entry_id, topic_id) {
   startIndicator("TopicIndicator", "Closing");
   var cmd = "cmd=cmdCloseTopic&sid=" + document.getElementById('SessionID').value + "&topic=" + topic_id;
   load(ajaxEditTopic = GetXmlHttpObject(), engine_blog_process, cmd, updateTopics);
}

function reopenTopic(name, title, entry_id, topic_id) {
   startIndicator("TopicIndicator", "Reopening");
   var cmd = "cmd=cmdReopenTopic&sid=" + document.getElementById('SessionID').value + "&topic=" + topic_id;
   load(ajaxEditTopic = GetXmlHttpObject(), engine_blog_process, cmd, updateTopics);
}



function popupTopicHierarchy(prefix, referrer_id) {

   var ref_obj = document.getElementById(referrer_id);
   var host = document.getElementById(prefix + "TopicHost");

   var x = getElementLeft(ref_obj);
   var y = getElementTop(ref_obj);

   var w = ref_obj.offsetWidth;
   if (w < 100) w = 0;

   host.style.position = "absolute";
   host.style.left = x + "px";
   host.style.top = (ref_obj.offsetHeight * 1 + y * 1) + "px";
   host.style.width = w == 0 ? "auto" : w + "px";
   host.style.height = "auto";
   host.style.display = "block";
   host.style.fontSize = "8pt";

   var max_height = 300;

   var list = document.getElementById(prefix + "TopicList");
   if (list.offsetHeight > max_height) {
      list.style.height = max_height + "px";
   }

   showBackground(prefix, host);

}


function hideTopicHierarchy(prefix) {
   var host = document.getElementById(prefix + "TopicHost");
   if (!host) {
      return;
   }
   host.style.display = "none";
   hideBackground(prefix);
}




function setSelectedTopic(prefix, id) {
   document.getElementById("Topic" + prefix).value = id;

   var input = document.getElementById(prefix + 'TopicInput');
   if (input) {
      if (id == 0) {
         input.value = "";
      } else {
         if (document.getElementById(prefix + 'TopicTitle_' + id + "_" + document.getElementById('lang').value)) {
            input.value = document.getElementById(prefix + 'TopicTitle_' + id + "_" + document.getElementById('lang').value).value;
         } else {
            input.value = document.getElementById(prefix + 'TopicTitle_' + id).value;
         }
      }
//      setTopicLanguagesEnabled(prefix, id);
   }
   hideTopicHierarchy(prefix);
}


function setTopicLanguagesEnabled(prefix, id) {
   if (document.getElementById(prefix + 'TopicTitleLangs_' + id)) {
      var langs = document.getElementById(prefix + 'TopicTitleLangs_' + id).value;

//      toggle('TopicParentLanguageError', false);

      var i;
      var isdis = false;
      for (i = 0; i < languages.length; i++) {
         var dis = langs.indexOf(languages[i].descr) == -1 ? true : false;
         document.getElementById('WebCPMSNewsTitle_' + languages[i].descr).disabled = dis;
         isdis |= dis;
      }
      if (isdis) {
//         toggle('TopicParentLanguageError', true);
//         document.getElementById('TopicParentLanguageError').innerHTML = "<b>Warning!</b><br />" + document.getElementById('ParentTopicInput').value + " is not available in all languages. You cannot create a sub-topic in a topic";
      }
   }
}




function editBlogEntry(name, title, entry_id, topic_id) {
   startIndicator("BlogEntryIndicator", "Loading");
   document.getElementById('WebCPMSEntryEditor').className = "editor_on";
   wreWebCPMSNewsDescr.enable('WebCPMSNewsDescr');
   var cmd = "cmd=cmdLoadEntry&sid=" + document.getElementById('SessionID').value + "&page=" + document.getElementById('page').value + "&topic=" + topic_id + "&entry=" + entry_id;
   load(ajaxLoadBlogEntry = GetXmlHttpObject(), engine_blog_process, cmd, entryLoaded);
}

function entryLoaded() {
   if (ajaxLoadBlogEntry.readyState == 4 || ajaxLoadBlogEntry.readyState == "complete") {
      stopIndicator("BlogEntryIndicator");
      var xml_doc = createXmlDoc(ajaxLoadBlogEntry.responseText);
      var entries = xml_doc.getElementsByTagName("entry");
      var id = getElemAttributeValue(entries[0], "id");
      var i;
      for (i = 0; i < entries.length; i++) {
         var topic = getElemAttributeValue(entries[i], "topic");
         var posted = findTagByName(entries[i], "posted");
         var titles = collectTagsByAttribute(entries[i], "title", "lang");
         var descrs = collectTagsByAttribute(entries[i], "descr", "lang");
         var pageurls = collectTagsByAttribute(entries[i], "pageurl", "lang");
         var ref = findTagByName(entries[i], "ref");
         if (posted) {
            var d = posted.childNodes[0].nodeValue.split(" ");
            var date = d[0].split("-");
            var time = d[1].split(":");
            setDateValue("Input_WebCPMSNews_year", "WebCPMSNews_year", "WebCPMSNews_month", "WebCPMSNews_day", date[0], date[1], date[2]);
            setTimeValue("WebCPMSNews_hour", "WebCPMSNews_min", time[0], time[1]);
         }
         for (i = 0; i < titles.length; i++) {
            document.getElementById('WebCPMSNewsTitle_' + titles[i][0]).value = unSafeString(titles[i][1]);
         }
         resetPageTitleEditor("WebCPMSNews");
         for (i = 0; i < pageurls.length; i++) {
            if (pageurls[i][1].length > 0) {
               document.getElementById('WebCPMSNewsPermalink_' + pageurls[i][0]).innerHTML = getWebAddress() + "/" + unSafeString(pageurls[i][1]);
               checkPageTitle("WebCPMSNews", pageurls[i][0]);
            }
         }
         for (i = 0; i < descrs.length; i++) {
            wreWebCPMSNewsDescr.setDocument(descrs[i][0], unSafeString(descrs[i][1]));
            if (document.getElementById('lang').value == descrs[i][0]) {
               wreWebCPMSNewsDescr.setText(unSafeString(descrs[i][1]));
            }
         }
         setSelectedTopic("WebCPMSNewsEntryTopic", topic);
         document.getElementById('WebCPMSNewsEntryTopicCur').value = topic;
         if (ref) document.getElementById('WebCPMSNewsRef').value = ref.childNodes[0].nodeValue;
      }
      document.getElementById('WebCPMSNewsModify').value = id;
   }
}

function deleteBlogEntry(name, title, entry_id, topic_id) {
   if (!confirm("Do you really want to delete this entry?\nAll comments placed on this entry will be deleted as well.\n\nTHIS CANNOT BE UNDONE!\n\nContinue?")) {
      return;
   }
   startIndicator("BlogEntryIndicator", "Deleting");
   var cmd = "cmd=cmdDeleteEntry&sid=" + document.getElementById('SessionID').value + "&page=" + document.getElementById('page').value + "&topic=" + topic_id + "&entry=" + entry_id;
   load(ajaxEditBlogEntry = GetXmlHttpObject(), engine_blog_process, cmd, updateBlogEntries);
}


function resetBlogEntryEditor(need_confirm) {
   if (need_confirm) {
      if (!confirm("Are you sure you want to clear the contents of entry editor?")) return;
   }
   var i;
   toggle("WebCPMSNewsEntryTopicFile", false);
   setDateValue("Input_WebCPMSNews_year", "WebCPMSNews_year", "WebCPMSNews_month", "WebCPMSNews_day");
   setTimeValue("WebCPMSNews_hour", "WebCPMSNews_min");
   setSelectedTopic("WebCPMSNewsEntryTopic", document.getElementById('TopicSelector').value);
   wreWebCPMSNewsDescr.setText();
   for (i = 0; i < languages.length; i++) {
      document.getElementById('WebCPMSNewsTitle_' + languages[i].descr).value = "";
      wreWebCPMSNewsDescr.setDocument(languages[i].descr);
   }
   document.getElementById('WebCPMSNewsModify').value = "";
   document.getElementById('WebCPMSNewsRef').value = "";
   resetPageTitleEditor("WebCPMSNews");
}


function emailBlogEntry(name, title, entry_id, topic_id) {
   var t = decodeURIComponent(title);
   showEMailPanel(name + "NavButton", name, t, "sendEntryEMail", entry_id, topic_id);
}

function printBlogEntry(name, title, entry_id, topic_id) {
   window.open("webcpms/printable.php?page=news&topic=" + topic_id + "&item=" + entry_id + "&lang=" + document.getElementById('lang').value + "&sid=" + document.getElementById('SessionID').value + "&r=" + randCode(), "printable", "width=700,height=400,location=yes,menubar=yes,toolbar=yes,status=yes,resizable=yes,scrollbars=yes");
}


function sendEntryEMail(name, entry_id, topic_id) {
   if (validEMailForm(name, true)) {
      var name_sender = document.getElementById(name + "EMailInputSenderName").value;
      var email_sender = document.getElementById(name + "EMailInputSenderAddr").value;
      var name_recipient = document.getElementById(name + "EMailInputRecipientName").value;
      var email_recipient = document.getElementById(name + "EMailInputRecipientAddr").value;
      startIndicator(name + "Indicator", "Sending", name + "PopupHost");
      var cmd = "cmd=cmdSendEntryEMail&sid=" + document.getElementById('SessionID').value + "&lang=" + document.getElementById('lang').value + "&name=" + name + "&topic=" + topic_id + "&entry=" + entry_id + "&name_sender=" + encodeURIComponent(name_sender) + "&email_sender=" + encodeURIComponent(email_sender) + "&name_recipient=" + encodeURIComponent(name_recipient) + "&email_recipient=" + encodeURIComponent(email_recipient) + "&subject=" + encodeURIComponent(document.getElementById('EMailInputSubject').value) + "&comment=" + encodeURIComponent(document.getElementById('EMailInputComment').value) + "&pagebase=" + getPageBase() + "&page=" + document.getElementById('page').value;
      load(ajaxSendEntryEMail = GetXmlHttpObject(), engine_blog_process, cmd, postedEntryEMail);
   }
}

function postedEntryEMail() {
   if (ajaxSendEntryEMail.readyState == 4 || ajaxSendEntryEMail.readyState == "complete") {
      var res = ajaxSendEntryEMail.responseText;
      var prefix = getProperty("Prefix", res);
      stopIndicator(prefix + "Indicator");
      hideEMailPanel(prefix);
   }
}


function checkTopicRights(chk_id, type) {
   var i = 0;
   var checked = false;
   while ( (chk = document.getElementById('TopicUserRight' + type + '_' + i)) != null ) {
      checked |= chk.checked;
      i++;
   }
   if (chk_id == "EveryVisitor" + type || chk_id == "RegisteredVisitors" + type) {
      if (document.getElementById(chk_id).checked == true) {
         var i = 0;
         while ( (chk = document.getElementById('TopicUserRight' + type + '_' + i)) != null ) {
            chk.checked = false;
            i++;
         }
      } else {
//         if (!checked) {
//            document.getElementById(chk_id).checked = true;
//         }
      }
      if (chk_id == "EveryVisitor" + type) {
         document.getElementById('RegisteredVisitors' + type).checked = false;
      } else {
         document.getElementById('EveryVisitor' + type).checked = false;
      }
   } else if (chk_id.indexOf("TopicUserRight" + type + "_") == 0) {
      if (document.getElementById(chk_id).checked == true) {
         document.getElementById('EveryVisitor' + type).checked = false;
         document.getElementById('RegisteredVisitors' + type).checked = false;
      } else {
//         if (!checked) {
//            document.getElementById('EveryVisitor' + type).checked = true;
//            document.getElementById('RegisteredVisitors' + type).checked = true;
//         }
      }
   }
}



function checkEntryTopic() {
   if (document.getElementById('WebCPMSNewsModify').value > 0) {
      var newtopic = document.getElementById('TopicWebCPMSNewsEntryTopic').value;
      var curtopic = document.getElementById('WebCPMSNewsEntryTopicCur').value;

      toggle("WebCPMSNewsEntryTopicFile", newtopic != curtopic);
   }
}


function saveBlogEntry() {

   var title_descr = checkTitleDescr("WebCPMSNews", true);

   if (title_descr.length == 0) return;

   var pts = getPageTitles("WebCPMSNews");

   startIndicator("BlogEntryIndicator", "Saving");

   var posted = document.getElementById('WebCPMSNews_year').value + "-" + makeTwoDigits(document.getElementById('WebCPMSNews_month_sel').value) + "-" + makeTwoDigits(document.getElementById('WebCPMSNews_day_sel').value) + " " + makeTwoDigits(document.getElementById('WebCPMSNews_hour').value) + ":" + makeTwoDigits(document.getElementById('WebCPMSNews_min').value) + ":00";

   var modify = document.getElementById('WebCPMSNewsEntryTopicFileCopy').checked ? "" : document.getElementById('WebCPMSNewsModify').value;
   var cmd = "cmd=cmdSaveEntry&sid=" + document.getElementById('SessionID').value + "&page=news" + (modify == "" ? "" : "&modify=" + modify) + title_descr + pts + "&topic=" + document.getElementById('TopicWebCPMSNewsEntryTopic').value + "&posted=" + posted;
   load(ajaxEditBlogEntry = GetXmlHttpObject(), engine_blog_process, cmd, updateBlogEntries);
}


function saveBlogComment() {

   var author = document.getElementById('WebCPMSNewsCommentAuthor').value;

   if (author == 0) {
      var host_name = document.getElementById('WebCPMSNewsCommentName');
      var host_email = document.getElementById('WebCPMSNewsCommentEMail');

      var name = "&authorname=";
      var email = "&authoremail=";

      if (host_name && host_email) {
         if (host_name.value == "" || host_email.value == "") {
            alert("Please specify your name and your e-mail address");
            return;
         } else {
            name += host_name.value;
            email += host_email.value;
         }
      }
   } else {
      author = "&author=" + author;
   }

   var captcha = false;
   var captchacode = "";
   if (document.getElementById('WebCPMSNewsCommentCaptchaCode')) {
      if (document.getElementById('WebCPMSNewsCommentCaptchaCode').value.length == 0) {
         alert("Please read the image carefully and enter the letters\ninto the check field labeled 'Letters'");
         return;
      } else {
         captcha = true;
         captchacode = document.getElementById('WebCPMSNewsCommentCaptchaCode').value;
      }
   }


   var comment_lang = document.getElementById('lang').value;
   var d = "";
   try {
      d = wreWebCPMSNewsComment.getText(false, comment_lang);
   } catch (ex) {
      d = stripHTML(document.getElementById('WebCPMSNewsComment').value).replace(/\n/g, "<br />\n");
   }
   if (d == "") {
      alert("You cannot post empty comment");
      return;
   }
   descr = "&descr_" + comment_lang + "=" + encodeURIComponent(d);

   startIndicator("BlogEntryIndicator", "Saving");

   var d = new Date();
   var posted = d.getFullYear() + "-" + makeTwoDigits(d.getMonth() + 1) + "-" + makeTwoDigits(d.getDate()) + " " + makeTwoDigits(d.getHours()) + ":" + makeTwoDigits(d.getMinutes()) + ":00";

   var modify = document.getElementById('WebCPMSNewsCommentModify').value;

   var cmd = "cmd=cmdSaveEntry&sid=" + document.getElementById('SessionID').value + "&page=news" + (modify == "" ? "" : "&modify=" + modify) + descr + "&topic=" + document.getElementById('TopicSelector').value + "&entry=" + document.getElementById('WebCPMSNewsCommentRef').value + "&posted=" + posted + author + name + email + (captcha ? "&captcha=" + captchacode : "") + "&comment=comment";
   load(ajaxEditBlogEntry = GetXmlHttpObject(), engine_blog_process, cmd, updateBlogEntries);
}


function updateBlogEntries() {
   if (ajaxEditBlogEntry.readyState == 4 || ajaxEditBlogEntry.readyState == "complete") {
      stopIndicator("BlogEntryIndicator");
      if (ajaxEditBlogEntry.responseText == "OK") {
         location.reload();
      } else {
         alert("An error has occured: the letter combination and the entered code do not match.\nPlease read the image carefully and enter the code into the check field.");
         reloadCaptcha("WebCPMSNewsComment");
      }
   }
}


function editBlogComment(name, title, entry_id, topic_id) {
   startIndicator("BlogEntryIndicator", "Loading");
   var cmd = "cmd=cmdLoadEntry&sid=" + document.getElementById('SessionID').value + "&topic=" + topic_id + "&entry=" + entry_id + "&comment=true";
   load(ajaxLoadBlogEntry = GetXmlHttpObject(), engine_blog_process, cmd, commentLoaded);
}

function commentLoaded() {
   if (ajaxLoadBlogEntry.readyState == 4 || ajaxLoadBlogEntry.readyState == "complete") {
      stopIndicator("BlogEntryIndicator");
      var xml_doc = createXmlDoc(ajaxLoadBlogEntry.responseText);
      var entries = xml_doc.getElementsByTagName("entry");
      var id = getElemAttributeValue(entries[0], "id");
      var i;
      for (i = 0; i < entries.length; i++) {
         var descr = findTagByName(entries[i], "descr");
         var ref = findTagByName(entries[i], "ref");
         var author = findTagByName(entries[i], "author");
         var authorname = findTagByName(entries[i], "authorname");
         var authoremail = findTagByName(entries[i], "authoremail");
         var descrs = collectTagsByAttribute(entries[i], "descr", "lang");
         for (i = 0; i < descrs.length; i++) {
            wreWebCPMSNewsComment.setDocument(descrs[i][0], unSafeString(descrs[i][1]));
            if (document.getElementById('lang').value == descrs[i][0]) {
               wreWebCPMSNewsComment.setText(unSafeString(descrs[i][1]));
            }
         }
         if (ref) document.getElementById('WebCPMSNewsCommentRef').value = ref.childNodes[0].nodeValue;
         document.getElementById('WebCPMSNewsCommentAuthor').value = author ? author.childNodes[0].nodeValue : 0;
         if (authorname && document.getElementById('WebCPMSNewsCommentName')) document.getElementById('WebCPMSNewsCommentName').value = authorname.childNodes[0].nodeValue;
         if (authoremail && document.getElementById('WebCPMSNewsCommentEMail')) document.getElementById('WebCPMSNewsCommentEMail').value = authoremail.childNodes[0].nodeValue;
      }
      document.getElementById('WebCPMSNewsCommentModify').value = id;
   }
}


function saveNewsSettings() {
   var settings = new Array();
   settings[0] = "news_sidebar_added=" + encodeURIComponent(document.getElementById('Input_SidebarDateTimeFormat').value);
   settings[1] = "news_sidebar_preview=" + encodeURIComponent(document.getElementById('SidebarWordsToDisplay').value);
   settings[2] = "news_sidebar_items=" + encodeURIComponent(document.getElementById('SidebarNumberOfEntries').value);
   settings[3] = "news_headline_added=" + encodeURIComponent(document.getElementById('Input_HeadlineDateTimeFormat').value);
   settings[4] = "news_headline_preview=" + encodeURIComponent(document.getElementById('HeadlineWordsToDisplay').value);
   settings[5] = "news_headline_items=" + encodeURIComponent(document.getElementById('HeadlineNumberOfEntries').value);
   settings[6] = "news_mainpage_added=" + encodeURIComponent(document.getElementById('Input_MainpageDateTimeFormat').value);

   saveSystemSettings(settings, true, "NewsSettingsIndicator");
}

