﻿$(function() {
    if ($("#stockcode").length > 0) 
    {
        var text = "股票代码/拼音/中文";
        $.include(["http://www.bestgo.com/js/lib/astock.js",homedir+"/js/SuggestFramework.js"], function() {
            window["stockcode"] = new Suggest("stockcode", text, null, "astock_suggest", StockSuggestConfiguration, null, [200, 800, 0.95, "solid", "#EEE", "#FFF", 3, 3, 0.2, "#000", "#444", "#e5ebfb", false]);
        });
    }
    if ($("div.headtab div.rtab").length > 0) 
    {
        $("div.headtab div.rtab li").mouseover(function() {
            var id = $(this).attr("id");
            $(this).parent("ul").find("li").removeClass("hover");
            $(this).addClass("hover");
            $(this).parents("div.headtab").find("div table").parent("div").hide();
            $(this).parents("div.headtab").find("div." + id + " table").parent("div").show();
        });
    }
    $("#setDefault").click(function() {
        
        return false;
    });
    $("#addFav").click(function() {
        
        return false;
    });
    
});
    $.extend({
        includePath: '',
        include: function(file, callback)
        {
            var ele; 
            var files = typeof file == "string" ? [file] : file;
            var head = $("head");
            for (var i = 0; i < files.length; i++)
            {
                var name = files[i].replace(/^\s|\s$/g, "");
                var att = name.split('.');
                var ext = att[att.length - 1].toLowerCase();
                var isCSS = (ext == "css");
                var tag = isCSS ? "link" : "script";
                var attr = isCSS ? " type='text/css' rel='stylesheet' " : " language='javascript' type='text/javascript' ";
                var link = (isCSS ? "href" : "src") + "='" + $.includePath + name + "'";
                if ($(tag + "[" + link + "]").length == 0) {
                    ele = "<" + tag + attr + link + "></" + tag + ">";
                    head.append(ele);
                }
            }
            if (callback) {
                var s = function() {setTimeout(function() {
                    if(typeof Suggest != "function") {
                        s();
                    }
                    callback();
                }, 200)};
                s();
            }
        }, loading : function(data, css) {
            if ("hide" === data)
            {
                $("#loading").hide();
                return;
            }
            var $$ = $("#loading");
            if ($$.length == 0)
            {
                $$ = $("<div/>", {
                    id : "loading"            
                }).append("<span class='img'></span>").appendTo("body");
            }
            $$.css(css).html(data).show();
        }
    });
/* string */
String.prototype.format = function()
{
   var args = arguments;
   return this.replace(/\{(\d+)\}/g,
       function(m, i)
       {
          return args[i];
       }
   );
}
String.prototype.PadLeft = function(totalWidth, paddingChar)
{
   if ( paddingChar != null )
   {
      return this.PadHelper(totalWidth, paddingChar, false);
   }
   else
   {
      return this.PadHelper(totalWidth, ' ', false);
   }
}
String.prototype.PadRight = function(totalWidth, paddingChar)
{
   if ( paddingChar != null )
   {
      return this.PadHelper(totalWidth, paddingChar, true);
   }
   else
   {
      return this.PadHelper(totalWidth, ' ', true);
   }
}
String.prototype.PadHelper = function(totalWidth, paddingChar, isRightPadded)
{
   if ( this.length < totalWidth)
   {
      var paddingString = [];
      for (i = 1; i <= (totalWidth - this.length); i ++ )
      {
         paddingString.push(paddingChar);
      }
      if ( isRightPadded )
      {
         return (this + paddingString.join(""));
      }
      else
      {
         return (paddingString.join("") + this);
      }
   }
   else
   {
      return this;
   }
}

function DateAdd(interval,number,date){
number = parseInt(number);
if (typeof(date)=="string"){
date = date.split(/\D/);
--date[1];
eval("var date = new Date("+date.join(",")+")");
}
if (typeof(date)=="object"){
	var date = date
}
switch(interval){
case "y": date.setFullYear(date.getFullYear()+number); break;
case "m": date.setMonth(date.getMonth()+number); break;
case "d": date.setDate(date.getDate()-number); break;
case "w": date.setDate(date.getDate()+7*number); break;
case "h": date.setHours(date.getHour()+number); break;
case "n": date.setMinutes(date.getMinutes()+number); break;
case "s": date.setSeconds(date.getSeconds()+number); break;
case "l": date.setMilliseconds(date.getMilliseconds()+number); break;
}
return date;
}
Date.prototype.format = function(format)
{
   var o = {
     "M+" : this.getMonth()+1,
     "d+" : this.getDate(),
     "h+" : this.getHours(),
     "m+" : this.getMinutes(),
     "s+" : this.getSeconds(),
     "q+" : Math.floor((this.getMonth()+3)/3),
     "S" : this.getMilliseconds()
   }
   if(/(y+)/.test(format)) format=format.replace(RegExp.$1,
     (this.getFullYear()+"").substr(4 - RegExp.$1.length));
   for(var k in o)if(new RegExp("("+ k +")").test(format))
     format = format.replace(RegExp.$1,
       RegExp.$1.length==1 ? o[k] : 
         ("00"+ o[k]).substr((""+ o[k]).length));
   return format;
}
Date.prototype.dateDiff = function(interval,objDate){
    if(arguments.length<2||objDate.constructor!=Date) return undefined;
    switch (interval) {
      case "s":return parseInt((objDate-this)/1000);
      case "n":return parseInt((objDate-this)/60000);
      case "h":return parseInt((objDate-this)/3600000);
      case "d":return parseInt((objDate-this)/86400000);
      case "w":return parseInt((objDate-this)/(86400000*7));
      case "m":return (objDate.getMonth()+1)+((objDate.getFullYear()-this.getFullYear())*12)-(this.getMonth()+1);
      case "y":return objDate.getFullYear()-this.getFullYear();
      default:return undefined;
    }
}

