﻿var ServerSeconds;
var highlyDay = 7;
var timeURL = "/663.htm";
var _announcements_char_num = 30;
var _download_char_num = 5;
var _faq_char_num = 5;
var _announcements_row_num = 10;
var _download_row_num = 8;
var _faq_row_num = 5;
var _annoucements_width = 425;
var _download_width = 140;
var _faq_width = 140;
var _annoucements_max_num = 33;
var _download_max_num = 6;
var _fax_max_num = 6;
var _cut_char_num = 2;
var _faq_config = 16;
var _download_config = 16;
var _ann_config = 28;
var TW;

function inint(){
    
    
    secondsFromServer = parseInt($j.trim(getCurrentTime(timeURL)));
    secondFromCurrentPage = parseInt($j.trim($j("#hide").val()));
    if((secondsFromServer-secondFromCurrentPage)>0){
        
        ServerSeconds = secondsFromServer;
    }else{
        
        ServerSeconds = secondFromCurrentPage;
    }
    
    
    sortAllTable();
}
//sequence for Array function
function sortByForTable(pre,aft){
    if($j.browser.mozilla){
        return $j(aft).attr('value')-$j(pre).attr('value');
     }
     return aft.value-pre.value;
}
// add data in table
function dataSort(param ,idString){
    
    var rows=document.getElementById(idString).rows;
    var rowsArray=new Array();
    var tempLength = getTypePara(param);
    var rowsLength = rows.length;
    TW = 0;
    var cofig = getConfig(param);
    
    for(var i=0;i<(rowsLength - 1);i++){
        rowsArray.push(rows[i]);
    }
    
    
    var bottomTr = rows[rowsLength-1];
    rowsArray.sort(sortByForTable);
    
    $j('#'+idString).empty();
    
    //if(param == 0 || param == 2)    return;
    
    if(rowsArray.length > tempLength){
        
        for(var i = 0 ; i < tempLength ; i++){
            appendData(i, idString, rowsArray, param,(tempLength - 1),cofig);
            
        }
    }else{
        
        for(var i = 0 ; i < (rowsLength - 1) ; i++){
            appendData(i, idString, rowsArray, param,(rowsLength - 2),cofig);
            
        }
    }
    
    
    $j('#'+idString).append(bottomTr);
}
function sortAllTable(){
    var tables=$j("[sort='sort']");
    $j.each(tables,function(i,n){
        var eachId='sortTable'+i;
        $j(n).attr('id',eachId);
        
        dataSort(i, eachId);
    });
}
function reqPageForHt(url, success, error) {
    
    var CallParams = {};
    CallParams.type = "GET";
    CallParams.url = url;
    CallParams.success = success;
    if (error) {
        CallParams.error = error;
    }
    
    $j.ajax(CallParams);
}
/*****************************************************/
function getCurrentTime(URL){
    
  
    var servceTime="";
    $j.ajaxSetup({async: false});
    
    reqPageForHt(URL,
    function(data){
        var obj = $j(data).find('input');
        servceTime = $j(obj[0]).val();
        //process returen data page
   },
   function(request,settings,thrownError){
   }
  );
  
  $j.ajaxSetup({async: true});
  
  return servceTime;
}
function getTypePara(i){
    switch(i){
        case 0:
            return _download_row_num;
            break;
        case 1:
            return _announcements_row_num;
            break;
        case 2:
            return _faq_row_num;
            break;
    }
}
function appendData(i, _id, dataArray,num,lastIndex,c){
    
    var tdDomArray = $j(dataArray[i]).find("td");
    var anchor;
    var eachWidth = 0;
    var charNum = getShowCharNum(num);
    
    
    
    if(num == 1){
        anchor = $j(tdDomArray[2]).find("a").eq(0);
    }else if(num == 0 || num == 2){
        anchor = $j(tdDomArray[3]).find("a").eq(0);
        if(i == lastIndex){
            $j(tdDomArray[3]).css("border-bottom","");
            var dateTd = $j(tdDomArray[3]).prev();
            $j(dateTd).css("border-bottom","");
            $j(dateTd).prev().css("border-bottom","");
        }
    }
    
    var title = $j(anchor).text();
    var titleLength = title.length;
    
    if((ServerSeconds-parseInt($j.trim($j(dataArray[i]).attr("value"))))<highlyDay*86400000){
        eachWidth = 25;
        charNum =charNum - 2;
        
    }
    $j('#'+_id).append(dataArray[i]);
    
    
    
    if($j(anchor).text().length > charNum){
        
        if(num == 0 || num == 2){
            isExceedCharsLength(anchor,charNum,eachWidth,title,titleLength,c);
        }else if(num == 1){
            isExceedCharsLength(anchor,charNum,eachWidth,title,titleLength,c);
        }
    }else{
        if(eachWidth != 0){
            $j(anchor).append(showNew);
        }
    }
}
//add for characters limited
function isExceedCharsLength(a,startWord,nw,title,titleLength,c){
	var tdMaxLength = $j(a).parent().attr("width");
	//alert(tdMaxLength);
    var isOut = true;
    $j(a).text(title.substring(0,startWord) + "...");
    $j(a).append(new_img);
    var f_w = $j(a).width();
    var last_w = 0;
    var s_w = 0;
    
    var new_img = "";
    
    if(nw != 0){
        new_img = showNew;
    }
    
    for(var i = (startWord + 1) ; i < (titleLength + 1) ; i++){
        $j(a).text(title.substring(0,i) + "...");
        $j(a).append(new_img);
        s_w = $j(a).width();
        if(f_w > s_w || s_w > tdMaxLength){
           $j(a).text(title.substring(0,i-1) + "...");
           $j(a).append(new_img);
           isOut = false;
           break;
        }else{
            f_w = s_w;
        }
    }
    
    if(isOut){
        $j(a).text(title);
        if(nw != 0){
            $j(a).append(new_img);
        }
    }
    
}
function getShowcharNum(params){
    
    switch(params){
        case 0:
            return _download_char_num;
            break;
        case 1:
            return _announcements_char_num;
            break;
        case 2:
            return _faq_char_num;
            break;
    }
}
function getWidth(id){
    switch(id){
        case 0:
            return _download_width;
            breeak;
        case 1:
            return _annoucements_width;
            breeak;
        case 2:
            return _faq_width;
            breeak;
    }
}
function getShowCharNum(id){
    switch(id){
        case 0:
            return _download_max_num;
            breeak;
        case 1:
            return _annoucements_max_num;
            breeak;
        case 2:
            return _fax_max_num;
            breeak;
    }
}
function getConfig(id){
    switch(id){
        case 0:
            return _download_config;
            breeak;
        case 1:
            return _ann_config;
            breeak;
        case 2:
            return _faq_config;
            breeak;
    }
}
