var MONTH_NAMES=new Array('January','February','March','April','May','June','July','August','September','October','November','December','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');var DAY_NAMES=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sun','Mon','Tue','Wed','Thu','Fri','Sat');
function LZ(x){return(x<0||x>9?"":"0")+x}
function formatDate(date,format){format=format+"";var result="";var i_format=0;var c="";var token="";var y=date.getYear()+"";var M=date.getMonth()+1;var d=date.getDate();var E=date.getDay();var H=date.getHours();var m=date.getMinutes();var s=date.getSeconds();var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;var value=new Object();if(y.length < 4){y=""+(y-0+1900);}value["y"]=""+y;value["yyyy"]=y;value["yy"]=y.substring(2,4);value["M"]=M;value["MM"]=LZ(M);value["MMM"]=MONTH_NAMES[M-1];value["NNN"]=MONTH_NAMES[M+11];value["d"]=d;value["dd"]=LZ(d);value["E"]=DAY_NAMES[E+7];value["EE"]=DAY_NAMES[E];value["H"]=H;value["HH"]=LZ(H);if(H==0){value["h"]=12;}else if(H>12){value["h"]=H-12;}else{value["h"]=H;}value["hh"]=LZ(value["h"]);if(H>11){value["K"]=H-12;}else{value["K"]=H;}value["k"]=H+1;value["KK"]=LZ(value["K"]);value["kk"]=LZ(value["k"]);if(H > 11){value["a"]="PM";}else{value["a"]="AM";}value["m"]=m;value["mm"]=LZ(m);value["s"]=s;value["ss"]=LZ(s);while(i_format < format.length){c=format.charAt(i_format);token="";while((format.charAt(i_format)==c) &&(i_format < format.length)){token += format.charAt(i_format++);}if(value[token] != null){result=result + value[token];}else{result=result + token;}}return result;}

function clock(){
    var Time = new Date(new Date() - server_time_diff);
    var Hours   = Time.getHours();
    var Minutes = Time.getMinutes();
    var Seconds = Time.getSeconds();
    Minutes = ( Minutes < 10 ? "0" : '' ) + Minutes;
    Seconds = ( Seconds < 10 ? "0" : '' ) + Seconds;

    var TimeString = Hours + ":" + Minutes + ":" + Seconds;
    
    //document.getElementById("timer").innerHTML = formatDate(Time, 'hh:mm:ss');
    document.getElementById("timer").innerHTML = TimeString;
    //+' ('+Time.toLocaleString()+')';
}

//----------------------- jQuery
$(function() {

   $("#menu").treeview({
		animated: "fast",
		collapsed: true,
		unique: true,
		//persist: "cookie"
		persist: "location"
	});

	var loader = function(status){
      var arrPageScroll = ___getPageScroll();
      var arrPageSizes  = ___getPageSize();
      var $ldr = $('#loader');
      $ldr.css({
         width:  arrPageSizes[0],
         height: arrPageSizes[1]
      });
      (status=='show') ? $ldr.show() : $ldr.hide();
   }

   //------------------ News
   $('.news-line a').bind('click', function() {
      var id = $(this).attr('id');
      var news_id = id.split('-');
      loader('show');
      $.post(
         '/lib/ajax/news_detail.php',
         {
            id:news_id[1]
         },
         function(data){
            loader('hide');
            $('#news_detail').fadeIn();
            $('#news_detail .content').html(data)
         }
      );

      return false;

   });

   $('#news_detail .head').bind('click', function() {
      $('#news_detail').fadeOut();
   });
   
   //------------------ Catalog list (WORK, super stable)
   /*
   $('.catalog_list a').bind('click', function() {
      var arrPageScroll = ___getPageScroll();
      var arrPageSizes  = ___getPageSize();
      $('.white_center').css({
         width:  arrPageSizes[0],
         height: arrPageSizes[1],
      }).fadeIn();
      //alert($('.white_center').css('bottom'));
      var ___top = arrPageScroll[1] + arrPageSizes[3]/20;
      var a_id = $(this).attr('id').split('-');
      $('#agreement').fadeIn().css({top: ___top});
      $('#read_article').attr({href:'/articles/?aid='+a_id[1], target:'_blank'});
      //$('#read_article').attr({onclick: "location.href('/articles/?aid="+a_id[1]+"')"});
   });
   $('.x_agreement').bind('click', function() {
      $('.white_center').fadeOut();
   });   
   $('#read_article').bind('click', function() {
      $('.white_center').fadeOut();
   });
   */
   
   var read_content = function()
   {
      var a_id = this.id.split('-')[1];
      
      loader('show');
      
      var arrPageScroll = ___getPageScroll();
      var arrPageSizes  = ___getPageSize();
      var ___top = arrPageScroll[1] + arrPageSizes[3]/20;
      
      $('.white_center').css({
      width: $(document).width(),
      height: $(document).height()
      }).fadeIn();
      
      $('#agreement').fadeIn().css({top: ___top});
      $('#read_article').attr({href:'/articles/?aid='+a_id, target:'_blank'});
   }


   $('.catalog_list li a').bind('click', function() {
      var a_id = $(this).attr('id').split('-')[1];
      var $preview = $(this).parent().children('div');
      $preview.slideToggle(100);

      $.post('/lib/ajax/get_preview.php', {id:a_id}, function(data) {
         $preview.removeClass('preview-loader');
         $preview.html(data);
         $('.read_content').click(read_content);
      });

      return false;

   });
   
   $('.read_content').click(read_content);

   
   /*
   $('.catalog_list li a').bind('click', function() {
       $(this).parent().children('.article_preview').slideToggle(100);
   });
   */
   
   /*
   $('.catalog_list div a').bind('click', function() {
      loader('show');
      var a_id = $(this).parents('li').children('a').attr('id').split('-');
      var arrPageScroll = ___getPageScroll();
      var arrPageSizes  = ___getPageSize();
      $('.white_center').css({
         width: $(document).width(),
         height: $(document).height()
      }).fadeIn();
      //alert($(document).width()+" "+$(document).height());
      var ___top = arrPageScroll[1] + arrPageSizes[3]/20;
      $('#agreement').fadeIn().css({top: ___top});
      $('#read_article').attr({href:'/articles/?aid='+a_id[1], target:'_blank'});
      
   });
   */

   $('.x_agreement').bind('click', function() {
      $('.white_center').fadeOut();
      $('.catalog_list div').fadeOut();
   });   
   
   $('#read_article').bind('click', function() {
      $('.white_center').fadeOut();
      $('.catalog_list div').fadeOut();
   });
   
   /*
   $('#author_about a').bind('click', function() {
      var id = $(this).attr('id').split('-');
      loader('show');
      $.post(
         '/lib/ajax/author_detail.php',
         {
            id: id[1]
         },
         function(data){
            loader('hide');
            $('#author_detail').fadeIn();
            $('#content').html(data);
         }
      );
      
      $('#x_author_detail').click(function() {
         $('#author_detail').fadeOut();
      });
   });
   */

   
   //------------------ Menu
   /*
   var $tree = $('#menu li a');
   $tree.bind('click', function(event){
      loader('show');
      event.stopPropagation();
      var nextUlNode = $(this).next('ol');
      if (nextUlNode.length){
         nextUlNode.slideToggle();
      }
   });
   
   var expander = function() {
      var wl = window.location.toString();
      if(wl.indexOf('menu=')!==-1){
         wl = wl.substring(wl.indexOf('id')).split('=');
         if (wl[1]){
            var id = wl[1];
            var al = $("#cat-"+id);
            al.parents('ol').show();
            var nextUlNode = al.next('ol');
            if(nextUlNode.length){
                nextUlNode.show();
            }
         }
      }
   }
   
   expander();
   */
   
   
   
   
   // ----------------- Public sort (WORK, not stable)
   /*
   var $last_a = null;
   var $obj = $('.sort table td a');
   $obj.bind('click', function() {
      if($last_a){
         $last_a.css({backgroundColor:'#fff', textDecoration:'underline'});
      }
      if($(this).css('backgroundColor') != '#ebebeb'){
         $(this).css({backgroundColor:'#ebebeb', textDecoration:'none'});
         $last_a = $(this);
      }
      $('#loader').show();
      $.post(
         '/lib/ajax/public_sort.php', 
         {
            sortby: $(this).attr('id')
         }, 
         function(data){
            $('#loader').hide();
            $('#debug').html(data);
         }
      );
   });
   */
   
   //------------------ Catalog (WORK, stable)
   /*
   $('.catalog_chars a').bind('click', function() {
      $('#loader').show();
      $.post(
         '/lib/ajax/catalog_list.php', 
         {
            letter:$(this).html(), 
            id:$('#cat_id').html()
         }, 
         function(data){
            $('#loader').hide();
            $('#debug').html(data);
         }
      );
   });
   */
   
});