/**
 * some function for feedback
 *
 * @category JavaScript
 * @subpackage simple page function
 * @author Louis
 * @version $0.3$
 */

//init customer relationship
var _RC = [
	{id:1,rel:getJs(204)},
	{id:2,rel:getJs(205)},
	{id:3,rel:getJs(206)},
	{id:4,rel:getJs(207)},
	{id:5,rel:getJs(208)},
	{id:6,rel:getJs(209)},
	{id:7,rel:getJs(210)},
	{id:0,rel:getJs(211)}
];

//init supplier relationship
var _RS = [
	{id:8,rel:getJs(212)},
	{id:9,rel:getJs(213)},
	{id:10,rel:getJs(214)},
	{id:11,rel:getJs(215)},
	{id:12,rel:getJs(216)},
	{id:13,rel:getJs(217)},
	{id:14,rel:getJs(218)},
	{id:0,rel:getJs(211)}
];

//for feedback's grade
var grade = 2;

//grade star changed
function Action(o,i)
{
	Holder = getx('gradeImg');
	if(Holder == undefined) return;
	var ImgPath='/images/icon/';
	var Setting=['grade1.gif','grade2.gif','grade3.gif','grade4.gif','grade5.gif'];
	Holder.style.background='url('+ImgPath+Setting[i] + ') no-repeat left center';
	o.onclick = function(){
		Holder.style.background='url('+ImgPath+Setting[i] + ') no-repeat left center';
		getx('grade').value = i+1;
		grade = i;
	}
	o.onmouseout= function(){
		if(grade > 0)
		{
			Holder.style.background='url('+ImgPath+Setting[grade] + ') no-repeat left center';
		}
		else
		{
			Holder.style.background='url('+ImgPath+Setting[0] + ') no-repeat left center';
		}
	}

}

function Leave(response)
{	
	var _box=makex('div',{'id':'FloatWindow'});
	var json=eval('(' + response + ')');
	var _h=addx(_box,makex('h5'));_h.innerHTML=json.Title;
	var _p=addx(_box,makex('p'));_p.innerHTML=json.Question;
	var _form=addx(_box,makex('form',{'method':'post','action':'/feedback/storefeedback'}));
	_form.innerHTML=json.Form;
	FloatBox.draw(_box);
	getx('content').focus();
}

function LeaveR(response)
{	
	var _box=makex('div',{'id':'FloatWindow'});
	var json=eval('(' + response + ')');
	var _h=addx(_box,makex('h5'));_h.innerHTML=json.Title;
	var _p=addx(_box,makex('p'));_p.innerHTML=json.Question;
	var _form=addx(_box,makex('form',{'method':'post','action':'/feedback/storefeedback'}));
	_form.innerHTML=json.Form;
	FloatBox.draw(_box);
	getx('reply').focus();
}


var feedback={
	_setting:{"MenuClass":"VoteMenu","MiniHolder":"MiniMenu","MiniMenuLinks":"MiniMenuLinks"},
	Message: {
		"SellTarget":getJs(219),
		"NetSellTarget":getJs(220),
		"BuyTarget":getJs(221),
		"NetBuyTarget":getJs(222),
		"URL":getJs(223),
		"ValidDate":getJs(224),
		"Relation":getJs(225),
		"SelectAgent":getJs(1858)
	},
	Run:function(om,ol){
    if(om&&getx(om)){
      getx(om).className=this._setting.MenuClass;
      getx(om).onmouseover=function(){
        feedback.draw(this,ol||false);
      };
    }
    return ;
  },RunNoshadow:function(om,ol){
    if(om&&getx(om)){
      getx(om).className=this._setting.MenuClass;
      getx(om).onmouseover=function(){
        feedback.draw2(this,ol||false,true);
      };
    }
    return ;
  },draw:function(o,_link,noshadow){
    var op=o.parentNode;
    op.style.position="relative";
    _holder=addx(op.parentNode,makex("div"));
    _holder.className=this._setting.MiniHolder;
    if(noshadow)
    	var _pop=this.PopWindow(_holder,noshadow);
    else
    	var _pop=this.PopWindow(_holder);
    _pop._core.style.textAlign="right";
    if(_link){
      var _a=addx(_pop._core,makex("a"));
      _a.innerHTML=_link.text;
      _a.href=_link.href;
      _a.onclick=function(){
        gotoUrl(this.href);
        return false;
      };
    }
    if(_pop._core.offsetWidth<o.offsetWidth-12){
      _pop._core.style.width=o.offsetWidth-12+"px";
    }
    _holder.style.top=o.offsetHeight+op.offsetTop+"px";
    _holder.style.paddingLeft=o.offsetLeft+o.offsetWidth-_holder.offsetWidth+"px";
    op.style.position="static";
    o._holder=_holder;
    o.onmouseover=function(){
      cleartimer(this._holder._timer);
      this._holder.style.display="block";
    };
    o.onmouseout=function(){
      cleartimer(this._holder._timer);
      var _holder=this._holder;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
    _pop.onmouseover=function(){
      cleartimer(this.parentNode._timer);
    };
    _pop.onmouseout=function(){
      cleartimer(this.parentNode._timer);
      var _holder=this.parentNode;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
  },draw2:function(o,_link,noshadow){
    var op=o.parentNode;
    o.className = "fromdownlink";
    getx('feedbackfromimg').src = "/images/icon/white_down_arrow.gif";
    op.style.position="relative";
    _holder=addx(op.parentNode,makex("div"));
    _holder.className=this._setting.MiniHolder;
    if(noshadow)
    	var _pop=this.PopWindow(_holder,noshadow);
    else
    	var _pop=this.PopWindow(_holder);
    _pop._core.style.textAlign="right";
    if(_link){
      var _a=addx(_pop._core,makex("a"));
      _a.innerHTML=_link.text;
      _a.href=_link.href;
      _a.onclick=function(){
        gotoUrl(this.href);
        return false;
      };
    }
    if(_pop._core.offsetWidth<o.offsetWidth-12){
      _pop._core.style.width=o.offsetWidth-12+"px";
    }
    _holder.style.top=o.offsetHeight+op.offsetTop-3+"px";
    _holder.style.paddingLeft=o.offsetLeft+o.offsetWidth-_holder.offsetWidth+"px";
    op.style.position="static";
    o._holder=_holder;
    o.onmouseover=function(){
      cleartimer(this._holder._timer);
      o.className = "fromdownlink";
      getx('feedbackfromimg').src = "/images/icon/white_down_arrow.gif";
      this._holder.style.display="block";
    };
    o.onmouseout=function(){
      cleartimer(this._holder._timer);
      o.className = "";
      getx('feedbackfromimg').src = "/images/icon/dark_gray_down_arrow.gif";
      var _holder=this._holder;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
    _pop.onmouseover=function(){
      cleartimer(this.parentNode._timer);
    };
    _pop.onmouseout=function(){
      cleartimer(this.parentNode._timer);
      var _holder=this.parentNode;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
  },PopWindow:function(x,noshadow){
    var _table=makex("table",{"id":"PopWindow"});
    var _tbody=addx(_table,makex("tbody"));
    var _tr=addx(_tbody,makex("tr"));
    var PopArea=addx(_tr,makex("td"));
    if(!noshadow)
    {
    	var _th=addx(_tr,makex("th",{"id":"PopTR"}));
	    var _img=addx(_th,makex("img"));
	    _img.src="/images/tabbar/shadow-tr.gif";
	    var _tr=addx(_tbody,makex("tr"));
	    var _th=addx(_tr,makex("th",{"id":"PopBL"}));
	    addx(_th,makex("div",{"id":"PopB"}));
	    addx(_tr,makex("th",{"id":"PopBR"}));
    }
    addx(x,_table);
    var _div=addx(PopArea,makex("div"));
    _div.className=this._setting.MiniMenuLinks;
    _table._core=_div;
    if(navigator.userAgent.indexOf("MSIE")>=0){
      css.add("table#PopWindow th","filter:alpha(opacity=60);");
    }
    return _table;
  },
  InputTip:function(o,field,defaultMessage)
  {
  	if(defaultMessage)
  	{
  		o.dMsg = defaultMessage;
  		if(o.value == defaultMessage)
  		{
  			o.value = '';
  		}
  	}
  	o.style.color = 'black';
  	o.style.position="relative";
  	if(field == undefined) return;
  	var floatTip = makex("div",{"id":"inputTip"});
  	var outTable = this.drawTable(floatTip);
  	switch (field)
  	{
  		case 'BuyTarget' : 
  			outTable._Core.innerHTML = this.Message.BuyTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'NetBuyTarget' : 
  			outTable._Core.innerHTML = this.Message.NetBuyTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'SellTarget' : 
  			outTable._Core.innerHTML = this.Message.SellTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'NetSellTarget' : 
  			outTable._Core.innerHTML = this.Message.NetSellTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'URL' : 
  			outTable._Core.innerHTML = this.Message.URL;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px';
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'ValidDate' : 
  			outTable._Core.innerHTML = this.Message.ValidDate;
  		    floatTip.style.left = o.offsetLeft+290+ 'px';
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'Relation' : 
  		    outTable._Core.innerHTML = this.Message.Relation;
  			floatTip.style.left = o.offsetLeft+310+ 'px';
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		
  		
  	}
  	addx(o.parentNode,floatTip);
  	o.onblur = function() { 
  		this.parentNode.removeChild(floatTip);
  		if((this.value.trim() == '') && (this.dMsg))
  		{
  			this.style.color = 'gray';
  			this.value = this.dMsg;
  		}
  	};
  	
  },
  InputTip2:function(o,field,defaultMessage,wth)
  {
  	if(getx('inputTip'))
  		getx('inputTip').parentNode.removeChild(getx('inputTip'));
  		
  	if(defaultMessage)
  	{
  		o.dMsg = defaultMessage;
  		if(o.value == defaultMessage)
  		{
  			o.value = '';
  		}
  	}
  	o.style.color = 'black';
  	o.style.position="relative";
  	if(field == undefined) return;
  	var floatTip = makex("div",{"id":"inputTip"});
  	if(wth){floatTip.style.width = wth + 'px';}
  	var outTable = this.drawTable(floatTip);
  	switch (field)
  	{
  		case 'BuyTarget' : 
  			outTable._Core.innerHTML = this.Message.BuyTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'NetBuyTarget' : 
  			outTable._Core.innerHTML = this.Message.NetBuyTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'SellTarget' : 
  			outTable._Core.innerHTML = this.Message.SellTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'NetSellTarget' : 
  			outTable._Core.innerHTML = this.Message.NetSellTarget;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'URL' : 
  			outTable._Core.innerHTML = this.Message.URL;
  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px';
  			floatTip.style.top = o.offsetTop-35 + 'px';
  			break;
  		case 'ValidDate' : 
  			outTable._Core.innerHTML = this.Message.ValidDate;
  		    floatTip.style.left = o.offsetLeft+290+ 'px';
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'Relation' : 
  		    outTable._Core.innerHTML = this.Message.Relation;
  			floatTip.style.left = o.offsetLeft+310+ 'px';
  			floatTip.style.top = o.offsetTop-30 + 'px';
  			break;
  		case 'SelectAgent':
  			outTable._Core.innerHTML = this.Message.SelectAgent;
  			floatTip.style.left = o.offsetLeft+330+ 'px';
  			floatTip.style.top = o.offsetTop-3 + 'px';
  			break;
  		
  	}
  	addx(o.parentNode,floatTip);
  	o.onblur = function() { 
  		this.parentNode.removeChild(floatTip);
  		if((this.value.trim() == '') && (this.dMsg))
  		{
  			this.style.color = 'gray';
  			this.value = this.dMsg;
  		}
  	};
  	
  },
  InputTip3:function(o,field,defaultMessage,wth)
  {
  	if(defaultMessage)
  	{
  		o.dMsg = defaultMessage;
  		if(o.value == defaultMessage)
  		{
  			o.value = '';
  			o.style.color = 'black';
  		}
  	}
  	if(!getx('inputTip'))
  	{ 		
  	
	  	o.style.position="relative";
	  	if(field == undefined) return;
	  	var floatTip = makex("div",{"id":"inputTip"});
	  	if(wth){floatTip.style.width = wth + 'px';}
	  	var outTable = this.drawTable(floatTip);
	  	switch (field)
	  	{
	  		case 'BuyTarget' : 
	  			outTable._Core.innerHTML = this.Message.BuyTarget;
	  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		case 'NetBuyTarget' : 
	  			outTable._Core.innerHTML = this.Message.NetBuyTarget;
	  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		case 'SellTarget' : 
	  			outTable._Core.innerHTML = this.Message.SellTarget;
	  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		case 'NetSellTarget' : 
	  			outTable._Core.innerHTML = this.Message.NetSellTarget;
	  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px'; 
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		case 'URL' : 
	  			outTable._Core.innerHTML = this.Message.URL;
	  			floatTip.style.left = o.offsetLeft+o.offsetWidth+8+ 'px';
	  			floatTip.style.top = o.offsetTop-35 + 'px';
	  			break;
	  		case 'ValidDate' : 
	  			outTable._Core.innerHTML = this.Message.ValidDate;
	  		    floatTip.style.left = o.offsetLeft+290+ 'px';
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		case 'Relation' : 
	  		    outTable._Core.innerHTML = this.Message.Relation;
	  			floatTip.style.left = o.offsetLeft+310+ 'px';
	  			floatTip.style.top = o.offsetTop-30 + 'px';
	  			break;
	  		
	  	}
	  	addx(o.parentNode,floatTip);
  	}
  	o.onblur = function() { 
  		this.parentNode.removeChild(getx('inputTip'));
  		if((this.value.trim() == '') && (this.dMsg))
  		{
  			this.style.color = 'gray';
  			this.value = this.dMsg;
  		}
  	};
  	
  },
  drawTable:function(x)
  {
  	var _table = makex('table');
  	var _tbody = addx(_table,makex("tbody"));
  	var _tr = addx(_tbody,makex("tr"));
  	addx(_tr,makex("td",{"id":"LTcorner"}));
  	var _topB = addx(_tr,makex("td"));
  	_topB.className = "TDB";
  	addx(_tr,makex("td",{"id":"RTcorner"}));
  	var _tr = addx(_tbody,makex("tr"));
  	var _leftB = addx(_tr,makex("td"))
  	_leftB.className = "LRB";
  	var TdCore = addx(_tr,makex("td",{"id":"core"}));
  	var _RightB = addx(_tr,makex("td"));
  	_RightB.className = "LRB";
  	var _tr = addx(_tbody,makex("tr"));
  	addx(_tr,makex("td",{"id":"LDcorner"}));
  	var _downB = addx(_tr,makex("td"));
  	_downB.className = "TDB";
  	addx(_tr,makex("td",{"id":"RDcorner"}));
  	addx(x,_table);
  	var _div = addx(TdCore,makex("div",{"id":"tipContent"}));
  	_table._Core = _div;
  	return _table;
  },
  initSelect:function(TranType,rel2,rel)
  {
	var obSelect = getx('relation');
	var obSelect2 = getx('relation2');
	if(obSelect.style.display == 'none')
	{
		getx('enterRel').style.display = 'none';
		obSelect.style.display = 'block';
	}
	if(obSelect2.style.display == 'none')
	{
		getx('enterRel2').style.display = 'none';
		obSelect2.style.display = 'block';
	}
	obSelect.options.length = 0;
	obSelect2.options.length = 0;
	if(TranType == 'SUPPLIER')
	{
		for(i=0;i<_RS.length;i++)
		{
			var varItem = new Option(_RS[i].rel, _RS[i].id);
			obSelect2.options.add(varItem);
		}
		for(i=0;i<_RC.length;i++)
		{
			var varItem = new Option(_RC[i].rel, _RC[i].id);
			obSelect.options.add(varItem);
		}
	}
	else
	{
		for(i=0;i<_RS.length;i++)
		{
			var varItem = new Option(_RS[i].rel, _RS[i].id);
			obSelect.options.add(varItem);
		}
		for(i=0;i<_RC.length;i++)
		{
			var varItem = new Option(_RC[i].rel, _RC[i].id);
			obSelect2.options.add(varItem);
		}
	}
	this.SelectItemByValue(obSelect2,rel2);
	this.SelectItemByValue(obSelect,rel);
  },
  SelectItemByValue:function(objSelect,itemValue)
  {
  	for (var i = 0; i < objSelect.options.length; i++) 
	{     
		if(itemValue==0)
		{
			break;
		}
        else if (objSelect.options[i].value == itemValue) {        
            objSelect.options[i].selected = true;              
            break;        
        }        
    } 
  }
};

