var comment_form;

function add_file(obj)
{
  file_form = document.createElement('div');
  file_form.innerHTML = '<input type="file" name="UpFile[]" size="50" />';
  obj.parentNode.appendChild(file_form);
  return false;
}

function add_kw(id, name) {
  exists = document.getElementById('kwi_' + id);
  if (!exists)
  {
    var list = document.getElementById('kw_list');

    //<input type="hidden" name="invisible-password" value="mypassword" />
    var out = document.createElement('input');
    out.setAttribute('type', 'hidden');
    out.setAttribute('name', 'kw_' + id);
    out.setAttribute('id', 'kw_' + id);
    list.appendChild(out);

    var kwi = document.createElement('div');
    kwi.setAttribute('id', 'kwi_' + id);
    kwi.innerHTML = '<a href="javascript:del_kw(' + id + ')">[x]</a> ' + name;
    list.appendChild(kwi);
  }
  return false;
}

function del_kw(item)
{
  kwi = document.getElementById('kwi_' + item);
  out = document.getElementById('kw_' + item);
  kwi.parentNode.removeChild(kwi);
  out.parentNode.removeChild(out);
}

// Нод, где уже показываются комментарии в AJAX режиме
var shown_comments;

    function show_comments(id, is_cuted) {
        if (is_cuted)
          show_full_post(id);

        JsHttpRequest.query(
            '/ajax_backend/show_comments_backend.php', // backend
            {
                'id': id
            },
            function(result, errors) {
            	if (errors)
            		alert(errors);
            	//if (shown_comments)
            	//  shown_comments.innerHTML = '';
                el = document.getElementById("comments_place"+id);
                document.getElementById("comments_place"+id).innerHTML = 
                    result["comments_html"];
                shown_comments = el;
            },
            true  // disable caching
        );
        el = document.getElementById("comments_place"+id);
        // http://www.ajaxload.info/#preview  Roller
        document.getElementById("comments_place"+id).innerHTML = 
          '<div class="post_wait_for_ajax"><img src="/img/wait.gif" width="16" height="16" /> Комментарии загружаются...</div>';


        return false;
    }
    function show_full_post(id) {
        // Before query for cached request
        document.getElementById("post_place"+id).innerHTML +=
          '<div class="post_wait_for_ajax"><img src="/img/wait_white.gif" width="16" height="16" /> Сообщение загружается...</div>';
        JsHttpRequest.query(
            '/ajax_backend/show_full_post_backend.php', // backend
            {
                'id': id
            },
            function(result, errors) {
                //document.getElementById("post_place_debug"+id).innerHTML = errors; 
                document.getElementById("post_place"+id).innerHTML = 
                    result["post_html"];
            },
            false  // do not disable caching
        );
        return false;
    }
    function add_comment(parent_post_id, root_post_id, form_id) {
        var wait, msg;
        JsHttpRequest.query(
            '/ajax_backend/comments_backend.php', // backend
            {
                'parent_post_id': parent_post_id,
                'root_post_id': root_post_id,
                'form': document.getElementById(form_id)
            },
            function(result, errors) {
            	//alert(result['msg']);
            	if (result['success']) {
                  document.getElementById("comments_place"+root_post_id).innerHTML =
                    result["comments_html"];

                  msg = document.createElement('li');
                  msg.setAttribute('id', 'post_form_msg');
                  msg.innerHTML = '<div class="page_success">'+result['success']+'</div>';
                  el = document.getElementById('comment'+result['new_post_id']);
                  if (el)
                    el.parentNode.insertBefore(msg, el);
                }
                if (result['error']) {
                  if (wait) {
                    wait.parentNode.removeChild(wait);
                    wait = null;
                  }
                  if (msg = document.getElementById('post_form_msg')) {
                    msg.parentNode.removeChild(msg);
                    msg = null;
                  }

                  msg = document.createElement('div');
                  msg.setAttribute('class', 'page_error');
                  msg.setAttribute('id', 'post_form_msg');
                  msg.innerHTML = result['error'];
                  el = document.getElementById(form_id);
                  el.parentNode.insertBefore(msg, el);
                }
            },
            false  // do not disable caching
        );

        if (msg = document.getElementById('post_form_msg')) {
          msg.parentNode.removeChild(msg);
          msg = null;
        }

        wait = document.createElement('div');
        wait.setAttribute('class', 'post_wait_for_ajax');
        wait.innerHTML =
          '<img src="/img/wait.gif" width="16" height="16" /> Комментарий добавляется...';
        //list.appendChild(out);
        el = document.getElementById(form_id);
        el.parentNode.insertBefore(wait, el);

        return false;
    }

function comment(obj, root_post_id, parent_post_id, ajax)
{
  //<input type="hidden" name="invisible-password" value="mypassword" />
  //<input type="submit" name="add_post" value="Сделать запись" />

  if (comment_form = document.getElementById('comment_form_answer')) {
    comment_form.parentNode.removeChild(comment_form);
    comment_form = null;
  }
  //if (!comment_form)
  {
    comment_form = document.createElement('div');
    //comment_form.method = 'post';
    comment_form.className = 'comment_form';
    comment_form.setAttribute('id', 'comment_form_answer');

    if (ajax)
      ajax_handler = ' onsubmit="return add_comment(\''+parent_post_id+'\',\''+root_post_id+'\',\'post'+root_post_id+'_commentform\')"';
    else
      ajax_handler = '';
    if (is_anonymous)
      intro = '<table>'+
'<tr><td><label for="nick">Имя:</label></td><td><input type="text" name="nick" id="nick" size="30" value="'+anon_nick+'" /></td><td>(обязательно)</td></tr>'+
'<tr><td><label for="email">Почта:</label></td><td><input type="text" name="email" id="email" size="30" value="'+anon_email+'" /></td><td>(не отображается)<td></tr>'+
'<tr><td><label for="site">Сайт:</label></td><td><input type="text" name="site" id="site" size="30" value="'+anon_site+'" /></td></tr>'+
'<tr><td><label for="text">Текст:</label></td><td></td><td></td></tr>'+
'</table>';
    else
      intro = '<label for="text">Текст:</label>';

    comment_form.innerHTML =
'<ul><li>'+
'<div id="post'+parent_post_id+'_form_success" style="display:none" class="page_success"></div>'+
'<div id="post'+parent_post_id+'_form_error" style="display:none" class="page_error"></div>'+
'<form id="post'+root_post_id+'_commentform" method="post" enctype="multipart/form-data"'+ajax_handler+'>'+
intro+
'<textarea name="text" id="comment_text" rows="6" style="width:98%"></textarea>' +
'<input type="hidden" name="guid" id="guid" value="'+(root_post_id*2)+'" />' +
'<input type="hidden" name="post_id" value="'+parent_post_id+'" /><br />' +
'<input type="checkbox" name="html" id="comment_html" />' +
'<label for="comment_html">Используется HTML</label><br />' +
'<input type="submit" name="add_post" value="Сделать запись" /></form></li></ul>';
  }
  obj.parentNode.parentNode.appendChild(comment_form);
  document.getElementById('comment_text').focus();
  return false;
}

function CheckCommentForm() {
  el = document.getElementById('guid');
  if (el)
    el.value = el.value * 2;

  return true;
}

function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}

window.onload = externalLinks;
