var reviewList = $Class({
    $init:function()
    {
        this.browseList = $('reviewList');
        var sReadDoc = this._getCookie('READDOC');
        var sDocId = this._getCookie('READDOCID');
        
        this.aReadDoc = sReadDoc ? sReadDoc.split('|') : [];
	this.aDocId = sDocId ? sDocId.split('|') : [];
        this.url = "/qna/question/";
        
        this._addReviewList();
    },
    _getCookie : function(sName) 
    {
    	var ca = document.cookie.split(/\s*;\s*/);
    	var re = new RegExp("^(\\s*"+sName+"\\s*=)");
    	
    	for(var i=0; i < ca.length; i++) {
    		if (re.test(ca[i])) return decodeURIComponent(ca[i].substr(RegExp.$1.length));
    	}
    	
    	return null;
    },
    _addReviewList : function()
    {
        var owner = this;
        var li, a;
        owner.browseList.innerHTML = "";
        $A(owner.aReadDoc).forEach(function(v, i){
            if(v=="") return;
            li = document.createElement("li");
            a  = document.createElement("a");
            a.innerHTML = v;
            a.className = "tc_link";
            a.setAttribute("href", owner.url + owner.aDocId[i]);
            li.appendChild(a);
            owner.browseList.appendChild(li);
        });
        $A($$("a", owner.browseList)).forEach(function(v){
            owner._ellipsis(v);
        });
    },
    _ellipsis : function(el, lineNum, stringTail)
    {
        stringTail = stringTail || "...";
        lineNum = lineNum || 1;
    	var txt   = el.innerText ? el.innerText : el.textContent;
    	var len   = txt.length;
    	var cur_h = el.offsetHeight;
    	var i     = 0;
    	var tempChar = "A";
    	while(--lineNum != 0)
    	{
    	    tempChar += "<br/>A"
    	}
    	
    	el.innerHTML = tempChar;
    	var h     = el.offsetHeight;
    
      	if (cur_h < h * 1.5) 
      	{
      	    el.innerHTML = txt;
      	    return;
      	}
      	    
    	cur_h = h;
    	while(cur_h < h * 1.5) 
    	{
    		i += Math.max(Math.ceil((len - i)/2), 1);
    		el.innerHTML = txt.substring(0, i) + stringTail;
    	    cur_h = el.offsetHeight;
    	}
    
    	while(cur_h > h * 1.5) {
    		i--;
    		el.innerHTML = txt.substring(0, i) + stringTail;
    	    cur_h = el.offsetHeight;
    	}
    }
});



