﻿
function addComment( btn ){

    var form = getAncestorWithClassName( btn, "axefForm" );

    var 
      params = new Object();
      params["prod_id"] = form.getElementsByClassName("axefField")[1].value;
      params["contents"] = form.getElementsByClassName("axefField")[0].value
    
    if( params["contents"].trim() == "" ){
        alert( "請填寫迴響內容再送出。" );
    } else {
        new Ajax.Request('./x-comment-new.php', {
          method: 'post',
          parameters: params,
          onSuccess: function(transport) {
            if( transport.responseText != 0){
                alert("很抱歉，系統無法儲存您的更新，請稍後再試。\n ERR#" + transport.responseText );
            } else {
                window.location.reload();
            }   
          }
        });
    }
}

function deleteComment(btn){
    
    var entry = getAncestorWithClassName( btn, "axefEntry" );

    var 
      params = new Object();
      params["id"] = entry.id;

    _send_request( './x-comment-delete.php', params, null );  
    
}


function setReview( btn ){

    var entry = getAncestorWithClassName( btn, "axefEntry" );

    var params = new Object();
        params["id"] = entry.id;
        params["is_review"] = "on";
     
      _send_request( './x-comment-set-review.php', params, function (){ window.location.reload() } );  
}

function unsetReview( btn ){

    var entry = getAncestorWithClassName( btn, "axefEntry" );
    
    var params = new Object();
        params["id"] = entry.id;
    
      _send_request( './x-comment-set-review.php', params, function (){ window.location.reload() } );  
}

function editComment(btn){

    var entry = getAncestorWithClassName( btn, "axefEntry" );
    
    var target;
    try{
        target = entry.getElementsByClassName( "axefContents" )[0];
    } catch(e) {
        return 0;
    }

    var btn_list = Element.getElementsByClassName( entry, 'btnEdit');
    
    for( var i=0; i<btn_list.length; i++ ){
        btn_list[i].setStyle( {display: 'none'} );
    }
        
    var height = Math.min( 250, target.getHeight() ) + 60;

	window.status = target.getHeight() + "/" + height ;
    
    target.update(
        "<textarea class='textEdit' style='height:" + height + "px;width:600px;'></textarea>" +
        "<input class='btnSave' type='button' value='確認更新'/>");
    
    var textArea = target.getElementsByClassName('textEdit')[0];
    
    var params = new Object();
        params["id"] = entry.id;
        params["original"] = "on";

    _send_request( './x-comment-get.php', params, function ( transport ){

        var contents = transport.responseText;
        textArea.value = contents;
		textArea.setAttribute('old', contents);
    } )
    
    var btnSave = target.getElementsByClassName('btnSave')[0];

   	Event.observe(textArea, 'blur', confirmSave, false);

    editmode = true;
   	textArea.focus();
}

function confirmSave( evt ){

    Event.stop(evt);
        
    var target = Event.element(evt);

    if( ! getAncestorWithClassName( target, "chkIsReview") ){
    
        var form = getAncestorWithClassName( target, "axefEntry" );
        
   	    Event.stopObserving( target, 'blur');
       	
        var val = "" + target.value;
        var msgContainer = target.parentNode;
        
        if( window.confirm("請確認儲存對文章的編輯") ){

            var params = new Object();
                params["id"] = form.id;
                params["contents"] = target.value;
                
            _send_request( './x-comment-edit.php', params, _callback );
                          
        } else {
            msgContainer.update( target.getAttribute('old') );
        }
        
        var btn_list = Element.getElementsByClassName( form, 'btnEdit');
        
        for( var i=0; i<btn_list.length; i++ ){
            btn_list[i].setStyle( {display: 'inline'} );
        }
        
        return false;
    }
    
    function _callback( transport ) {
        var params = new Object();
        params["id"] = form.id;
        _send_request( './x-comment-get.php', params, function ( transport ){
            msgContainer.update( transport.responseText );
        } );
    }
}

/*
function do_collection_new(){

    var params = new Object();
        params["prod_id"] = $("frm_prod_id").value;
        params["star_count"] = $("frm_star_count").value;
        params["use_status"] = _get_use_status( $("use_status_list") );
        params["tags"] = $("frm_tags").value;
        params["group_ids"] = $("frm_group_ids").value;
        params["comment"] = $("frm_comment").value;

        if( $("frm_is_review").checked ) params["is_review"] = "on";
        
    new Ajax.Request('./x-collection-new.php', {
      method: 'post',
      parameters: params,
      onSuccess: function(transport) {
        if( transport.responseText != 0){
            alert("很抱歉，系統無法儲存您的更新，請稍後再試。\n ERR#" + transport.responseText );
        } else {
            window.location.reload();
        }   
      }
    });
}

function do_collection_edit(){

    var params = new Object();
        params["prod_id"] = $("frm_prod_id").value;
        params["star_count"] = $("frm_star_count").value;
        params["use_status"] = _get_use_status( $("use_status_list") );
        params["tags"] = $("frm_tags").value;
        params["group_ids"] = $("frm_group_ids").value;
    
    new Ajax.Request('./x-collection-edit.php', {
      method: 'post',
      parameters: params,
      onSuccess: function(transport) {
        if( transport.responseText != 0){
            alert("很抱歉，系統無法儲存您的更新，請稍後再試。\n ERR#" + transport.responseText );
        } else {
            window.location.reload();
        }   
      }
    });
}
*/
function do_collection_delete( product_id ){

    var 
      params = new Object();
      params["id"] = product_id;
  
    new Ajax.Request('./x-collection-delete.php', {
      method: 'post',
      parameters: params,
      onSuccess: function(transport) {
        var result = transport.responseText.split("/");
        if( result[0] == 0 ){
            window.location.reload();
        } else {
            alert('無法刪除，請聯絡系統管理員。\n(錯誤代碼 #' + result[0] + ')');
        }

      }
    });
}

function _get_use_status( node ){

    var list = node.getElementsByClassName("radio");
    
    for( var i=0; i< list.length; i++ ){
        if( list[i].checked ) return list[i].value;
    }
    return null;
}



function doRecommend( commentId, evtTarget ){

    if( evtTarget.className == "btn" ){
        evtTarget.className = "disabled";

        var 
          params = new Object();
          params["id"] = commentId;
      
        new Ajax.Request('./x-comment-recommend.php', {
          method: 'post',
          asynchronous: false,
          parameters: params,
          onSuccess: function(transport) {
            var target = $('recomm' + params.id );
            target.update( transport.responseText );
          }
        });
    } 
}
