<style type="text/css">
  div.ke-toolbar{display:none;width:400px;border:none;background:none;padding:0px 0px;}
  span.ke-toolbar-icon{line-height:26px;font-size:14px;padding-left:26px;}
  span.ke-toolbar-icon-url{background-image:url( /images/public_icon.png )}
  div.ke-toolbar .ke-outline{padding:0px 0px;line-height:26px;font-size:14px;}
  span.ke-icon-emoticons{background-position:0px -671px;width:50px;height:26px;}
  span.ke-icon-emoticons:hover{background-position:-79px -671px;width:50px;height:26px;}
  div.ke-toolbar .ke-outline{border:none;}

  div.respond-form .reply_btn{margin-left:565px;margin-top:5px;}
  div.recall_con{width:570px;}
  div.recall_con .reply_btn{margin-left:555px;margin-top:5px;}
</style>
<%= javascript_include_tag "/assets/kindeditor/kindeditor",'/assets/kindeditor/pasteimg'  %>
<div class="dis">
  <div class="msg_box" id='leave-message'>
    <% reply_allow = JournalsForMessage.create_by_user? User.current %>

    <h3><%= l(:label_user_response) %>（<span id="jour_count"><%= @obj_count%></span>）</h3>

    <%= render :partial => 'words/new', :locals => {:user => @user, :sta => @state} %>

  </div>
  <div id="history">
    <%= render :partial => 'history',:locals => { :contest => @contest, :journals => @jour, :state => false} %>
  </div>
  <ul class="wlist"><%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true%></ul>
</div>
<script>
    var W3CDOM = document.createElement && document.getElementsByTagName;

    window.onload = setMaxLength;

    function setMaxLength() {
        if (!W3CDOM) return;
        var textareas = document.getElementsByTagName('textarea');
        for (var i=0;i<textareas.length;i++) {
            var textarea = textareas[i];
            setMaxLengthItem(textareas[i]);
        }
    }
    function setMaxLengthItem(textarea){
        if (textarea.getAttribute('maxlength')) {
            var counter = document.createElement('div');
            counter.className = 'counter';
            var counterClone = counter.cloneNode(true);
            counterClone.innerHTML = '<span>0</span>/'+textarea.getAttribute('maxlength');
            textarea.parentNode.insertBefore(counterClone,textarea.nextSibling);
            textarea.relatedElement = counterClone.getElementsByTagName('span')[0];
            textarea.onkeyup = textarea.onchange = checkMaxLength;
            textarea.onkeyup();
        }
    }

    function checkMaxLength() {
        var maxLength = this.getAttribute('maxlength');
        var currentLength = this.value.length;
        if (currentLength > maxLength)
            this.relatedElement.className = 'toomuch';
        else
            this.relatedElement.className = '';
        this.relatedElement.firstChild.nodeValue = currentLength;
    }

</script>

<div style="display:none;"><a href="#" id="nhjump"></a></div>
<script type="text/javascript">
  $(function(){

    function init_editor(params){
      params.textarea.removeAttr('placeholder');
      var editor = params.kindutil.create(params.textarea, {
        resizeType : 1,minWidth:"1px",width:"100%",height:"150px",
        items:['emoticons'],
        afterChange:function(){//按键事件
          nh_check_field({content:this,contentmsg:params.contentmsg,textarea:params.textarea});
        },
        afterCreate:function(){
          var toolbar = $("div[class='ke-toolbar']",params.div_form);
          $(".ke-outline>.ke-toolbar-icon",toolbar).append('表情');
          params.toolbar_container.append(toolbar);
        }
      }).loadPlugin('paste');
      return editor;
    }

    function nh_check_field(params){
      var result=true;
      if(params.content!=undefined){
        if(params.content.isEmpty()){
          result=false;
        }
        if(params.content.html()!=params.textarea.html() || params.issubmit==true){
          params.textarea.html(params.content.html());
          params.content.sync();
          if(params.content.isEmpty()){
            params.contentmsg.html('内容不能为空');
            params.contentmsg.css({color:'#ff0000'});
          }else{
            params.contentmsg.html('填写正确');
            params.contentmsg.css({color:'#008000'});
          }
          params.contentmsg.show();
        }
      }
      return result;
    }
    function init_form(params){
//      var flag = false;
//      if(params.form.attr('data-remote') != undefined ){
//        flag = true
//      }
//      params.form[0].onsubmit = function(){
//        if(flag){
//          $(this).removeAttr('data-remote');//不这么搞return false没用 花擦花擦
//        }
//        var is_checked = nh_check_field({
//          issubmit:true,
//          content:params.editor,
//          contentmsg:params.contentmsg,
//          textarea:params.textarea
//        });
//        if(is_checked){
//          if(flag){
//            alert('add')
//            $(this).attr('data-remote','true');
//          }
//          alert('ok')
//          return true;
//        }
//        return false;
//      }

      params.form.submit(function(){
        var flag = false;
        if(params.form.attr('data-remote') != undefined ){
          flag = true
        }
        var is_checked = nh_check_field({
          issubmit:true,
          content:params.editor,
          contentmsg:params.contentmsg,
          textarea:params.textarea
        });
        if(is_checked){
          if(flag){
            return true;
          }else{
            $(this)[0].submit();
            return false;
          }
//          return true;      //这个涛哥的firefox不能提交
          //$(this).trigger('submit');  //这个虽然能提交  但是他是个死循环
          //$(this)[0].submit();        //用这个form的data-remote='true'没效果了
          //肿么破阿  我滴个神   实在不行就用$.ajax()算了
        }
        return false;
      });
    }
    function nh_reset_form(params){
      params.form[0].reset();
      params.textarea.empty();
      if(params.editor != undefined){
        params.editor.html(params.textarea.html());
      }
      params.contentmsg.hide();
    }

    KindEditor.ready(function(K){
      $("a[nhname='reply_btn']").live('click',function(){
        var params = {};
        params.kindutil = K;
        if($(this).parent('span')==undefined || $(this).parent('span').length==0){
          params.container = $(this).parent('div').parent('div');
        }else{
          params.container = $(this).parent('span').parent('div').parent('div');
        }
        params.div_form = $(">.respond-form",params.container);
        params.form = $("form",params.div_form);
        params.textarea = $("textarea[name='user_notes']",params.div_form);
        params.contentmsg = $("p[nhname='contentmsg']",params.div_form);
        params.toolbar_container = $("div[nhname='toolbar_container']",params.div_form);
        params.cancel_btn = $("input[nhname='cancel_btn']",params.div_form);
        if(params.textarea.data('init') == undefined){
          params.editor = init_editor(params);
          init_form(params);
          params.cancel_btn.click(function(){
            nh_reset_form(params);
          });
        }
        params.cancel_btn.click();
        toggleAndSettingWordsVal(params.div_form, params.textarea);
        setTimeout(function(){
          if(!params.div_form.is(':hidden')){
            params.textarea.show();
            params.textarea.focus();
            params.textarea.hide();
//            $("#nhjump").attr('href','#'+params.div_form.attr('id'));
//            $("#nhjump")[0].click();
          }
        },300);
        params.textarea.data('init',1);
      });

      $("div[nhname='new_message']").each(function(){
        var params = {};
        params.kindutil = K;
        params.div_form = $(this);
        params.form = $("form",params.div_form);
        if(params.form==undefined || params.form.length==0){
          return;
        }
        params.textarea = $("textarea[nhname='new_message_textarea']",params.div_form);
        params.contentmsg = $("p[nhname='contentmsg']",params.div_form);
        params.toolbar_container = $("div[nhname='toolbar_container']",params.div_form);
        params.cancel_btn = $("#new_message_cancel_btn");
        if(params.textarea.data('init') == undefined){
          params.editor = init_editor(params);
          init_form(params);
          params.cancel_btn.click(function(){
            nh_reset_form(params);
          });
//          $("a[nhname='cancel_btn']",params.div_form).click(function(){
//            nh_reset_form(params);
//          });
          params.textarea.data('init',1);
        }
      });
    });
  });
</script>
