var interCheckWE = null;

window.addEvent('domready', function(){
  var btComm = $('btPostComment');
  if (btComm){
    btComm.addEvent('click', postComment);
  }

  var btEdit = $('btEdit');
  if (btEdit){
    if (isBadBrowser()){
      btEdit.addEvent('click', badBrowserShow);
      var link = btEdit.getElement('a');
      link.removeAttribute('href');
      link.onclick = null;
    }
    else{
      btEdit.addEvent('click', checkEditor);
    };

    $('pst_title').addEvent('click', editMode);
    $('btSaveTitle').addEvent('click', saveTitle);
    $('btCancelTitle').addEvent('click', cancelTitle);
  }
});


function updateTitle(newTitle){
  var pid = $('pst').className;
  var jSonRequest = new Json.Remote('/pst/change_title?r='+$random(0, 100));
  jSonRequest.send({'pid':pid, 'new_title':escape(newTitle)});
}

function editMode(e){
  var newtext = $('inNewText')
  newtext.value = this.getChildren()[0].innerHTML.replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&');
  this.className = "editMode";
  newtext.focus();
  e = new Event(e).stop();
  $('pst_title').removeEvent('click', editMode);
};

function saveTitle(e){
  var val = $('inNewText').value;
  val = val.replace(/"/g,'&#34;').replace(/[<]/g,'&lt;').replace(/[>]/g,'&gt;');
  $$('#pst_title .normal')[0].innerHTML = val;
  updateTitle(val);
  $('pst_title').className="normalMode";
  e = new Event(e).stop();
  $('pst_title').addEvent('click', editMode);
};

function cancelTitle(e){
  $('pst_title').className="normalMode";
  e = new Event(e).stop();
  $('pst_title').addEvent('click', editMode);
};


function postComment(e){
  e = new Event(e).stop();

  var iname = $('comm_name');
  var cname = iname.value.trim();
  iname.value = cname;
  var vname = cname.replace(/"/g, "&#34;");
  vname = escape(vname);
  cname = cname.replace(/</g, "&lt;").replace(/>/g, "&gt;");

  var icomm = $('comm_comm');
  var ccomm = icomm.value.substring(0, 1024).trim();
  icomm.value = ccomm;
  var vcomm = ccomm.replace(/"/g, "&#34;");
  vcomm = escape(vcomm);
  ccomm = ccomm.replace(/</g, "&lt;").replace(/>/g, "&gt;");

  var curl = $('comm_url').value;
  var pid = $('pst').className;
  var err = false;

  if ('' == cname || cname.length < 3){
    iname.className = 'bad';
    setTimeout("$('comm_name').className = '';",500);
    err = true;
  }

  if ('' == ccomm || ccomm.length < 2){
    icomm.className = 'bad';
    setTimeout("$('comm_comm').className = '';",500);
    err = true;
  }
  if (err){
    return false;
  }

  var btComm = $('btPostComment');
  btComm.className = 'mc_button_wait';
  btComm.removeEvent('click', postComment);

  var jSonRequest = new Json.Remote('/pst/comm?r='+$random(0, 100),
      { onComplete: function(rpta){
          if ($defined(rpta.error)){
            if ('monty' == rpta.error){
              window.location = 'http://upload.wikimedia.org/wikipedia/commons/5/52/SpamInACan.jpg';
            };
            return false;
          };

          if ($defined(rpta.cid)){
            var cli = new Element('li');
            cli.id = +'c' + rpta.cid;

            var cdiv = new Element('div');
            cdiv.className = 'comm_identity';
            var cspan1 = new Element('span');
            var ihtml = '<span class="comm_name">';
            ihtml = ihtml + cname;
            ihtml = ihtml + '</span> - <span className="comm_date">';
            ihtml = ihtml + '';
            ihtml = ihtml + '</span>';
            cdiv.innerHTML = ihtml;
            cdiv.injectInside(cli);

            var cdiv2 = new Element('div');
            cdiv2.className = 'comm_content';
            cdiv2.innerHTML = ccomm;
            cdiv2.injectInside(cli);

            cli.injectTop($('comment_list'));
            var look = new Fx.Elements([cdiv, cli], {duration: 1000});
            look.start({
              '0': { 'backgroundColor': ['#FFF191', '#EFEFEF'] },
              '1': { 'backgroundColor': ['#FFF191', '#ffffff'] }
            });

          };
          iname.value = '';
          icomm.value = '';
          btComm.className = 'mc_button';
          btComm.addEvent('click', postComment);
       }
  });
  jSonRequest.send({'pid':pid, 'comm':vcomm, 'name':vname, 'url':curl});
};
