﻿function trim(str) {
	var	str = str.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = str.length;
	while (ws.test(str.charAt(--i)));
	return str.slice(0, i + 1);
}

function fEvent(sType,oInput)
{
	switch (sType){
		case "focus" :
			oInput.isfocus = true;
		case "mouseover" :
			oInput.style.borderColor = '#9ecc00';
			break;
		case "blur" :
			oInput.isfocus = false;
		case "mouseout" :
			if(!oInput.isfocus){
				oInput.style.borderColor='#84a1bd';
			}
			break;
	}
}

/*Master function*/

function getServerTime()
{
    var ajax = new sack();
    ajax.requestFile = "GetServerTime.aspx";
    ajax.method = "Post";
    ajax.onCompletion = function(){ getServerTimeCompleted(ajax); }
    ajax.runAJAX();
}

function getServerTimeCompleted(ajax)
{
    document.getElementById("span_dt_dt").innerHTML = ajax.response;
}

function Search()
{
    var txtKey = document.getElementById("txtKey");
    var key =  trim(txtKey.value) ;
    
    if ( key == "" )
    {
	    ShowMsgo.show('Search infomation','Keyword can not be null',2);
        txtKey.focus ();
    }
    else
    {
        window.location = "SearchResult.aspx?Key=" + key ;
    }
}

function Register()
{   
    var txtEmail = document.getElementById ("txtEmail") ;
    var email = trim(txtEmail.value);
    
    if (email=="")
    {
	    ShowMsgo.show('Email Address Incorrect.','Email address can not be null',2);
        txtEmail.focus ();
    }
    else
    {
        if( !/(\S)+[@]{1}(\S)+[.]{1}(\w)+/.test(email) )
        {
	        ShowMsgo.show('Email Address Incorrect.','The email address you have entered is incorrect.<br/>Please revise and try again.',2);
            txtEmail.focus ();
        }
        else
        {
            PostEmail();
        }
    }
}

function PostEmail()
{
    var ajax = new sack();
	ajax.setVar("Email", document.getElementById("txtEmail").value);
	ajax.requestFile = "RegisterMail.aspx";
	ajax.method = "Post";
	ajax.onCompletion = function(){ PostEmailCompleted(ajax); }
	ajax.runAJAX();
}


function PostEmailCompleted(ajax)
{
//    alert( ajax.response )
	if( ajax.response =='OK')
	{
	    ShowMsgo.show('Registration Complete','Thanks. You have successfully registered for the SCMP Olympic Newsletter.',2);
	}
	else if ( ajax.response == "Existed" )
	{
	    ShowMsgo.show('Email Address Incorrect','The email address you have entered is already registered.<br/>Please revise and try again.',2);
	}
	else
	{
	    ShowMsgo.show('Newsletter register infomation','Registration failure, please try again later',2);
	}
}
/*End of Master function*/

function EmailSubmit()
{
    if(event.keyCode==13)
    {
        Register();
    }
    else
    {
        return;
    }
}

function SearchSubmit()
{
    if(event.keyCode==13)
    {
        Search();
    }
    else
    {
        return;
    }
}



function ImgPrev()
{
    var currentID = document.getElementById("hidgallrey").value;
    currentID = parseInt(currentID);
    GetGalleryImg(currentID,"prev");
}

function ImgNext()
{
    var currentID = document.getElementById("hidgallrey").value;
    currentID = parseInt(currentID);
    GetGalleryImg(currentID,"next");
}

function GetGalleryImg(currentID,operate)
{
    var ajax = new sack();
    ajax.setVar("currentID", currentID);
    ajax.setVar("operate", operate);
	ajax.requestFile = "OlympicGallery.aspx";
	ajax.method = "Post";
	ajax.onCompletion = function(){ GetGalleryImgCompleted(ajax); }
	ajax.runAJAX();
}

var gallerypage = 1;
function GetGalleryImage(page)
{
    gallerypage = page;
    
    for(i=1;i<=5;i++)
	{
	    pageindex = document.getElementById("labPage"+i).innerHTML;
	    if(parseInt(pageindex) == parseInt(gallerypage))
	        document.getElementById("labPage"+i).innerHTML = "["+pageindex+"]";
	    else
	        document.getElementById("labPage"+i).innerHTML = ((document.getElementById("labPage"+i).innerHTML).split("[").join("")).split("]").join("");
    }
    
    var ajax = new sack();
    ajax.setVar("page", page);
	ajax.requestFile = "OlympicGallery.aspx";
	ajax.method = "Post";
	ajax.onCompletion = function(){ GetGalleryImgCompleted(ajax); }
	ajax.runAJAX();
	
}

function GetGalleryImgCompleted(ajax)
{
    var ImgSrc = ""; 
    var Title = ""; 
    var subTitle = ""; 
    var Auther = "";
    var xml = ajax.responseXML;    
    
    try
    {
        ImgSrc = xml.getElementsByTagName("ImgSrc")[0].firstChild.nodeValue;
    }
    catch(err){} 
    
    try
    {
        Title = xml.getElementsByTagName("Title")[0].firstChild.nodeValue ;
    }
    catch(err){}
    
    try
    {
        subTitle = xml.getElementsByTagName("subTitle")[0].firstChild.nodeValue ;
    }
    catch(err){}
    
    try
    {
        Auther = xml.getElementsByTagName("Auther")[0].firstChild.nodeValue ;
    }
    catch(err){}
   
    document.getElementById("hidgallrey").value = xml.getElementsByTagName("CurrentID")[0].firstChild.nodeValue ;
    document.getElementById("galleryImage").href="Gallery.aspx?id="+xml.getElementsByTagName("ImageId")[0].firstChild.nodeValue ;
    document.getElementById("img").src = "Images/UploadImages/" + ImgSrc ;
    document.getElementById("img").title = Title ;
    document.getElementById("gallreyTitle").title = Title ;
    document.getElementById("gallreyTitle").innerHTML =  subTitle;
    document.getElementById("gallreyAuther").innerHTML = Auther;
}

function pagePrev()
{
    gallerypage = parseInt(gallerypage);
    pageprev = parseInt(((document.getElementById("labPage1").innerHTML).split("[").join("")).split("]").join(""));
    if(gallerypage==1)
    {
        gallerypage=1;
        return;
    }
    gallerypage = parseInt(gallerypage) - 1;
    if(gallerypage < pageprev)
    {
        if(pageprev > 1)
        {
            document.getElementById("labPage1").innerHTML = pageprev-5;
            document.getElementById("labPage2").innerHTML = pageprev-4;
            document.getElementById("labPage3").innerHTML = pageprev-3;
            document.getElementById("labPage4").innerHTML = pageprev-2;
            document.getElementById("labPage5").innerHTML = pageprev-1;
        }
    }
    GetGalleryImage(gallerypage);
}

function pageNext()
{
    gallerypage = parseInt(gallerypage);
    pagenext = parseInt(((document.getElementById("labPage5").innerHTML).split("[").join("")).split("]").join(""));
    
    count = parseInt(document.getElementById("hiddenRecords").value);
    if(gallerypage==count)
    {
        gallerypage=count;
        return;
    }
    gallerypage = parseInt(gallerypage) + 1;
    for(i=count ;i < 5; i++)
    {
        document.getElementById("labPage" + i).innerHTML = "&nbsp;" ;
    }
    if(gallerypage > pagenext)
    {
        if(pagenext < count)
        {
            document.getElementById("labPage1").innerHTML = pagenext+1;
            document.getElementById("labPage2").innerHTML = pagenext+2;
            document.getElementById("labPage3").innerHTML = pagenext+3;
            document.getElementById("labPage4").innerHTML = pagenext+4;
            document.getElementById("labPage5").innerHTML = pagenext+5;
            for(ii=1;ii<=5;ii++)
            {
                j=pagenext+ii;
                if(j>count)
                   document.getElementById("labPage" + ii).innerHTML = "&nbsp;&nbsp;" ; 
            }
        }
    }
    GetGalleryImage(gallerypage);
}

//返回,服务器验证控件是否成功
//Author:  ADD by Aprillee at 2007-12-27
//Example: OnClientClick="if(CheckClientValidate()) { return CheckNullValue()}"
 function CheckClientValidate(){
        
       Page_ClientValidate();
       if (Page_IsValid){
           return true;
       }else{
           return false;
       }
     }
// 以下为自定义脚本功能
function CheckNullValue()
    {
        alert('Test');
    }

// Popup RSS link window
function popRss() {
  var popW = 400;
  var popH = 160;
  var xPos = (screen.width - popW)/2;
  var yPos = (screen.Height - popH)/2;
  var feature = "toolbar=0,menubars=0,status=0,resizable=0,width="+popW+",height="+popH;
  var w = window.open("rsspopup.html", "rss", feature);
  w.moveTo(xPos, yPos);
}

var pageindex = 0;
function GalleryPrev(layerName)
{
    pageindex = parseInt(document.getElementById("hidden"+layerName).value);
    if(pageindex<=0)
    {
        pageindex=0;
        return;
    }
    pageindex = parseInt(pageindex) - 1;
    document.getElementById("hidden"+layerName).value = pageindex;
    GetGalleryItems(pageindex,layerName);
}

function GalleryNext(layerName)
{
    pageindex = parseInt(document.getElementById("hidden"+layerName).value);
    pagenum = parseInt(document.getElementById("hiddencount"+layerName).value);
    if(pageindex>=pagenum)
    {
        pageindex=pagenum;
        return;
    }
    pageindex = parseInt(pageindex) + 1;
    document.getElementById("hidden"+layerName).value = pageindex;
    GetGalleryItems(pageindex,layerName);
}

function GetGalleryItemsCompleted(ajax)
{
    var ImgSrc = ""; 
    var Title = "";  
    var Auther = "";
    var layer = "";
    var id = "";
    var xml = ajax.responseXML;
    var nod = xml.documentElement.childNodes.length;
//    alert(nod);
    for(i=0;i<nod;i++)
    {
        try
        {
            ImgSrc = xml.getElementsByTagName("ImgSrc")[i].firstChild.nodeValue;
        }
        catch(err){} 
        
        try
        {
            Title = xml.getElementsByTagName("Title")[i].firstChild.nodeValue ;
        }
        catch(err){}
        
        try
        {
            Auther = xml.getElementsByTagName("Auther")[i].firstChild.nodeValue ;
        }
        catch(err){}
        
        try
        {
            id = xml.getElementsByTagName("ArticleId")[i].firstChild.nodeValue ;
        }
        catch(err){}
        
        try
        {
            layer = xml.getElementsByTagName("LayerName")[i].firstChild.nodeValue;
        }
        catch(err){} 
        
        document.getElementById("image"+layer+i).width = 96;
        document.getElementById("image"+layer+i).height = 68;
        
        document.getElementById("image"+layer+i).src = ImgSrc; 
        
        document.getElementById("image"+layer+i).title = Title ;
        document.getElementById("image"+layer+i).alt = id;
        document.getElementById("labPage"+layer+i).href='javascript:showImage("'+ImgSrc.replace(/\\/g,"/")+'", "'+Title+'", "'+Auther+'","'+id+'");changeDivPos("divchange'+layer+'");scrollTo(0,250);'
        
    }
    for(j=nod;j<5;j++)
    {
        document.getElementById("image"+layer+j).width = 0 ;
        document.getElementById("image"+layer+j).height = 0;
    }
    changeDivPos("divchange"+layer);
    scrollTo(0,250);
    
}

function GetGalleryItems(page,layerName)
{
    var ajax = new sack();
    ajax.setVar("page", page);
    ajax.setVar("layerName", layerName);
	ajax.requestFile = "OlympicsGalleryb.aspx";
	ajax.method = "Post";
	ajax.onCompletion = function(){ GetGalleryItemsCompleted(ajax); }
	ajax.runAJAX();
}