﻿function GetIeVersion()
{
    var reg = new RegExp("MSIE ([^;]*);", "i");
    if (reg.test(navigator.appVersion)) return parseInt(RegExp.$1);
    return 0;
}

function setCookie(name, value, expires, path, domain, secure){
	var strCookie = name + "=" + value;
	if (expires){
		var dtmNow = new Date();
		dtmNow.setTime(dtmNow.getTime() + expires*24*60*60*1000);
		strCookie += "; expires=" + dtmNow.toGMTString();
	}
	strCookie +=  (path) ? "; path=" + path : "";
	strCookie +=  (domain) ? "; domain=" + domain : "";
	strCookie +=  (secure) ? "; secure" : "";
	document.cookie = strCookie;
}


function UseVistaInIE6(obj)
{
	var s = obj.button ? "_BY_BUTTON" : "";
	obj.sides[0].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/LEFT_TOP.png', sizingMethod='scale');background-image:url('images/vista/LEFT_TOP.png') !important;background-image:none;";
	obj.sides[1].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/TOP.png', sizingMethod='scale');background-image:url('images/vista/TOP.png') !important;background-image:none;";
	obj.sides[2].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/RIGHT_TOP.png', sizingMethod='scale');background-image:url('images/vista/RIGHT_TOP.png') !important;background-image:none;";
	obj.sides[3].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/RIGHT.png', sizingMethod='scale');background-image:url('images/vista/RIGHT.png') !important;background-image:none;";
	obj.sides[4].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/RIGHT_BOTTOM.png', sizingMethod='scale');background-image:url('images/vista/RIGHT_BOTTOM.png') !important;background-image:none;";
	obj.sides[5].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/BOTTOM" + s + ".png', sizingMethod='scale');background-image:url('images/vista/BOTTOM.png') !important;background-image:none;";
	obj.sides[6].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/LEFT_BOTTOM.png', sizingMethod='scale');background-image:url('images/vista/LEFT_BOTTOM.png') !important;background-image:none;";
	obj.sides[7].style.cssText += ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/vista/LEFT.png', sizingMethod='scale');background-image:url('images/vista/LEFT.png') !important;background-image:none;";
}

var windows = new Array();
windows["url"]  = { object:null, type:0, title:"", features:"height=520,width=564"};
var ieVersion = GetIeVersion();

function OpenWindow(id, url, name)
{
	var content, title, features;
	if(url) { id = "url"; content = "[url]" + url; title = name; }
	else { content = "[id]" + id; title = windows[id].title; }
	features = windows[id].features;

	var win = windows[id].object, mode=0;
	if(win) switch(win.status)
	{
		case 0: win.Show(); if(url) mode=1; else mode=2; break;
		case 1: win.Focus(); if(url) mode=1; else mode=2; break;
	}

	switch(mode)
	{
		case 0:
			switch(windows[id].type)
			{
				case 0: win = _window.Open(content, title, features); break;
				case 1: win = _window.Alert(content, title, features); break;

			}
			if(_window.ClassName == "VISTA")
			{
				if(ieVersion > 0 && ieVersion < 7) UseVistaInIE6(win);
				win.SetTitle("<span>" + win.title + "</span>");
			}
			if(_window.Timer > 0) win.ActMoveTo(windows[id].x, windows[id].y, win.left, win.top);
			else win.MoveTo(windows[id].x, windows[id].y);

			win.OnCANCEL = win.Hidden;	
			switch(id)
			{
				case "Option":
					win.OnOK = function()
					{
						var timer = parseInt(win.form.Timer.value);
						if(!isNaN(timer))
						{
							_window.Timer = timer>100 ? 100 : (timer<0 ? 0 : timer);
							setCookie("FonshenTimer", timer, 180);
						}
						for(var i=0;i<win.form.WinStyle.length;i++)if(win.form.WinStyle[i].checked)break;
						var cname = win.form.WinStyle[i].value;
						if(cname != _window.ClassName)
						{
							_window.ClassName = cname;
							setCookie("FonshenStyle", cname, 180);
						}
						win.Close();
					};

			}
			break;
		case 1:
			win.SetContent(content);
			win.SetTitle(title);
	}

	if(id == "Option")
	{
		win.form.Timer.value = _window.Timer;
		for(var i=0;i<win.form.WinStyle.length;i++)
		{
			if(win.form.WinStyle[i].value == _window.ClassName) { win.form.WinStyle[i].checked = true; break; }
		}
	}

	windows[id].object = win;
}


function Init()
{
	_window.ClassName = getCookie("FonshenStyle") || "VISTA";
	_window.Timer = parseInt(getCookie("FonshenTimer") || 10);
	_window.Width = 600;
}

function OpenSmsWindow(id, url, name) {
    var content, title, features;
    if (url) { id = "url"; content = "[url]" + url; title = name; }
    else { content = "[id]" + id; title = windows[id].title; }
    features = "height=277,width=325";

    var win = windows[id].object, mode = 0;
    if (win) switch (win.status) {
        case 0: win.Show(); if (url) mode = 1; else mode = 2; break;
        case 1: win.Focus(); if (url) mode = 1; else mode = 2; break;
    }

    switch (mode) {
        case 0:
            switch (windows[id].type) {
                case 0: win = _window.Open(content, title, features); break;
                case 1: win = _window.Alert(content, title, features); break;

            }
            if (_window.ClassName == "VISTA") {
                if (ieVersion > 0 && ieVersion < 7) UseVistaInIE6(win);
                win.SetTitle("<span>" + win.title + "</span>");
            }
            if (_window.Timer > 0) win.ActMoveTo(windows[id].x, windows[id].y, win.left, win.top);
            else win.MoveTo(windows[id].x, windows[id].y);

            win.OnCANCEL = win.Hidden;
            switch (id) {
                case "Option":
                    win.OnOK = function() {
                        var timer = parseInt(win.form.Timer.value);
                        if (!isNaN(timer)) {
                            _window.Timer = timer > 100 ? 100 : (timer < 0 ? 0 : timer);
                            setCookie("FonshenTimer", timer, 180);
                        }
                        for (var i = 0; i < win.form.WinStyle.length; i++) if (win.form.WinStyle[i].checked) break;
                        var cname = win.form.WinStyle[i].value;
                        if (cname != _window.ClassName) {
                            _window.ClassName = cname;
                            setCookie("FonshenStyle", cname, 180);
                        }
                        win.Close();
                    };

            }
            break;
        case 1:
            win.SetContent(content);
            win.SetTitle(title);
    }

    if (id == "Option") {
        win.form.Timer.value = _window.Timer;
        for (var i = 0; i < win.form.WinStyle.length; i++) {
            if (win.form.WinStyle[i].value == _window.ClassName) { win.form.WinStyle[i].checked = true; break; }
        }
    }

    windows[id].object = win;
}

