/******************************************/
/*****        By : Terence Toh        *****/
/******************************************/
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
//-->

function tell_a_friend() {
	var j_title = 'Consumer - Internet'
   
   tell_a_friend = window.open('http://home.singtel.com/include/tell_a_friend.asp?url_=http://home.singtel.com/consumer/&segment_id_=&page_title_=' + j_title, 'tell_a_friend', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=680,height=750');
   tell_a_friend.focus()
}

function print_page() {
	var headerpath = ''
   
	print_page= window.open('?header_path_=' + headerpath , 'print_page', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=680,height=450');
	print_page.focus()
}


function RandomNumber(upper_limit) { 
	return Math.round(upper_limit * Math.random()); 
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
	if (selObj.selectedIndex == 8){
		popitup(selObj.options[selObj.selectedIndex].value,"winStudent","yes","yes",790,650);
	} else {
  		eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  	}
  	
  	if (restore) selObj.selectedIndex=0;
}

function go(what) {
	value = what.options[what.selectedIndex].value;
    if (value == "http://www.optus.com.au") {
		window.open(value,'','toolbar=yes,directories=yes,location=yes,status=yes,menubar=yes,resizable=yes,copyhistory=no,scrollbars=yes');
    } else if (value != '') {
        window.location.href = value;
    }
}

function open_window_sitemap (path){
   window.open(path, '', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=no,width=510,height=400');
}
    
function popitup(url, windowName, attrScrollBar, attrResize, attrWidth, attrHeight) {
	var winX,winY
	winX=(screen.availWidth-attrWidth)/2; winY=(screen.availHeight-attrHeight)/2
	
	newwindow=window.open(url,windowName,'menubar=0,toolbar=0,location=0,directories=0,status=0,scrollbars='+attrScrollBar+',resizable='+attrResize+',width='+attrWidth+',height='+attrHeight+',left='+winX+',top='+winY);
	newwindow.focus();
}




function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

// Variable Declaration

var bV=parseInt(navigator.appVersion,10)
var WIN=(navigator.userAgent.indexOf("Windows")>=0)?1:0
var DOM=(document.getElementById)?1:0
var IE4=((document.all)&&(bV>=4)&&!DOM)?1:0
var NS4=(document.layers)?1:0
var ver4=(NS4||IE4||DOM)?1:0
var smonths = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')


// General Functions

var GenWin
function popGenWin(i,w,h) {
var winX,winY
winX=(screen.availWidth-w)/2; winY=(screen.availHeight-h)/2
GenWin=window.open(i,"WinGen","width="+w+",height="+h+",left="+winX+",top="+winY)
GenWin.focus()
}

// General Functions

function writeDateFull(){
now = new Date()
document.write(days[now.getDay()]+", "+now.getDate()+" "+months[now.getMonth()]+" "+now.getFullYear())
}

function goURL(g) {if(g.options[g.selectedIndex].value) {document.location=g.options[g.selectedIndex].value}}


// Form Functions

function isBlank(input){
if(!input.value) {return true}
var inputStr=input.value
if(window.RegExp && inputStr){
	var regExp1 = /\S/
	if(!regExp1.test(inputStr)) {input.value="";return true}; return false
}}

function isNumber(input){
var inputStr=input.value
if(window.RegExp && inputStr){
	var regExp1 = /[^0-9]/
	if(regExp1.test(inputStr)) {alert("Invalid entry.\n\nPlease ensure that entries are numbers only.");input.value=input.defaultValue;input.focus();return false}; return true
}}

function isAlphaNum(input){
var inputStr=input.value
if(window.RegExp && inputStr){
	var regExp1 = /[^a-zA-Z0-9]/
	if(regExp1.test(inputStr)) {return false}; return true
}}

function isEmail(input){
var inputStr=input.value
if(window.RegExp && inputStr){
	var regstr1 = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)"
	var regstr2 = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"
	var regExp1 = new RegExp(regstr1)
	var regExp2 = new RegExp(regstr2)
	var regExp3 = /[^a-zA-Z0-9\-_.@]/
	if(!(!regExp1.test(inputStr) && regExp2.test(inputStr) && !regExp3.test(inputStr)) || !(inputStr.indexOf("@")>=0)) {return false}; return true
}}

function isHyperlink(input){
var inputStr=input.value, initStr=input.defaultValue
if(window.RegExp && inputStr && inputStr!=initStr){
	var regExp1 = /\bhttp:\/\/\b/
	var regExp2 = /\bhttps:\/\/\b/
	if(!regExp1.test(inputStr) && !regExp2.test(inputStr)) {alert("Invalid entry.\n\nPlease enter a valid Hyperlink.");input.value=initStr;return false}; return true
}}

function chkField(input,min,type){
var format="characters"
if(type=="n") {isNumber(input); format="digits"}
else if(type=="an") {isAlphaNum(input); format="alphanumeric characters (a-z and/or 0-9)"}
else {isBlank(input)}
var inputStr=input.value
if(window.RegExp && inputStr){
	inputStr=inputStr.replace(/^\s+/,""); inputStr=inputStr.replace(/\s+$/,"")
	if(min && inputStr.length<min) {alert("Invalid entry.\n\nPlease enter a minimum of "+min+ " " +format+ ".");input.value=input.defaultValue;input.focus()}
}}

function chkMaxLen(input,max){
var inputStr=input.value
if(max && inputStr.length>max) {alert("Your message has exceeded the maximum length of "+max+" characters.\n\nPlease shorten your entry.");input.value=inputStr.substring(0,max);input.focus()}
}

function chkSelect(input){
if(!input.length) {if(input.checked) return true}
else {for(i=0;i<input.length;i++) {if(input[i].checked) return true}}
return false
}

function isYear(input){
var inputStr=input.value
if(window.RegExp && inputStr!=""){
	var regExp1 = /\b\d{4}\b/
	if(!regExp1.test(inputStr)) {alert("Invalid entry.\n\nPlease ensure that year is in YYYY format.");input.value="";input.focus();return false}; return true
}}

function noSpace(input){
var inputStr=input.value
if(window.RegExp && inputStr!=""){
	var regExp1 = /\s/
	if(regExp1.test(inputStr)) {alert("Please do no use spaces for the entry.");input.value="";input.focus()}
}}

function insZero(num,sf){
var inputStr=num.toString()
while(inputStr.length<sf) {inputStr="0"+inputStr}
return inputStr
}

function writeDateList(dd){
for(i=1; i<=31; i++){
	if(i==parseInt(dd,10)) {document.write("<option value="+insZero(i,2)+" selected>"+insZero(i,2))}
	else {document.write("<option value="+insZero(i,2)+">"+insZero(i,2))}
}}

function writeMonthList(mm,l){
mthList=l?months:smonths
for(i=1; i<=12; i++){
	if(i==parseInt(mm,10)) {document.write("<option value="+insZero(i,2)+" selected>"+mthList[i-1])}
	else {document.write("<option value="+insZero(i,2)+">"+mthList[i-1])}
}}

function isDate(day,month,year){
var cDate = new Date()
if(parseInt(year,10)<=1900) {return false}
cDate.setDate(1);cDate.setFullYear(parseInt(year,10));cDate.setMonth(parseInt(month,10)-1);cDate.setDate(parseInt(day,10))
if(cDate.getDate()!=parseInt(day,10) || cDate.getMonth()!=(parseInt(month,10)-1) || cDate.getFullYear()!=parseInt(year,10)) {return false}
return true
}


// Google Search in SingNet MAIN PAGE
var MAX_HOMEWIZ=42;
var HOMEWIZ_STRING="hm+wz";


function MakeArray(n)
{
  for(var i=1;i<=n;i++)
  {
    this[i]=0;
  }
  this.maxlen=n;
  this.len=0;
  return this;
}

var hwiz=new MakeArray(MAX_HOMEWIZ);

function find_substring(wiz,home)
{
  var i,wizn=wiz.length,homelen=home.length;
  for(i=0;i<=homelen-wizn;i++)
  {
    if(wiz==home.substring(i,i+wizn))return i;
  }
  return false;
}

function Homewiz(name,opts,home,search)
{
  var ehgo=find_substring(HOMEWIZ_STRING,search);
  this.name=name;
  this.opts=opts;
  this.home=home;
  this.pre_ehgo=search.substring(0,ehgo);
  this.post_ehgo=search.substring(ehgo+HOMEWIZ_STRING.length,search.length);
}

function Add(name,opts,home,search)
{
  hwiz.len++;
  if(hwiz.len<=hwiz.maxlen)
  {
    hwiz[hwiz.len]=new Homewiz(name,opts,home,search)
  }
  else
  {
    alert("Add")
  }
}

function DisplayForm()
{

  document.writeln('<TR>');
  document.writeln('<TD>');
  document.writeln('<FORM name=HWform OnSubmit="HandleForm(this);return false">');
  document.writeln("<table border='0' cellpadding='0' cellspacing='5' width='100%' align='center'>");
  document.writeln("<tr valign='top'><td colspan='2' class='nav'><B>Search the Web</B></td></tr>");
  document.writeln('<TR valign="TOP">');
  document.writeln('<TD colspan="2"><input size=14 name=query></TD>');
  document.writeln('</TR>');
  document.writeln('<TR><TD width="50%">');
  document.writeln('<span class=infosearch><select name=service>');
  for (i=1;i<=hwiz.len;i++)
  {
    document.writeln("<option "+hwiz[i].opts+"> "+hwiz[i].name);
  }
  document.writeln('</select></span>');
  document.writeln('</TD>');
  document.writeln('<TD align="left"><input type="image" border="0" value="Submit Search" name="go" src="http://home.singtel.com/include_media_hub/bn_enter.gif" width="21" height="17"></TD>');
  document.writeln('</TR>');
  document.writeln('</table></FORM>');
  
  document.writeln('</TD>');
  document.writeln('</TR>');

  query=self.location.search;
  if (query != null && query !='')
  {
    if (query.length > 1)
	{
	  query = query.substring(1, query.length);
	  document.HWform.query.value=query
    }
  }
}

function HandleForm(form)
{
  var i,newq="",oldq=form.query.value;
  for ( i=0; i < oldq.length; i++ )
    {
      var thischar=oldq.charAt(i);
	  if(thischar != ' ')newq += thischar;
	  else if(lastchar != ' ')newq += '+';
	       lastchar=thischar;
    }

    var hw=hwiz[1+form.service.selectedIndex];
    tmp = newq ? hw.pre_ehgo+newq+hw.post_ehgo : hw.home;
    window.open(tmp,'new');
}

Add("Google","","http://google.com","http://google.com/search?q=hm+wz");
Add("Altavista","","http://www.altavista.com","http://www.altavista.com/cgi-bin/query?q=hm+wz&text=yes");
Add("Go.com","","http://www.go.com","http://www.goto.com/d/search/p/go/?Partner=go_home&Keywords=hm+wz");
Add("GoTo.com","","http://goto.com","http://www.goto.com/d/search/?type=topbar&Keywords=hm+wz");
Add("Looksmart","","http://www.looksmart.com","http://www.looksmart.com/r_search?key=hm+wz");
Add("MSN","","http://www.msn.com","http://search.msn.com/results.asp?RS=CHECKED&FORM=MSNH&v=1&q=hm+wz");
Add("Search.com","","http://www.search.com","http://www.search.com/search?channel=1&tag=st.se.fd..sch&q==hm+wz");
Add("Webcrawler","","http://www.webcrawler.com","http://search.excite.com/search.gw?c=web&lk=webcrawler&onload=&s=hm+wz");
Add("Yahoo","","http://sg.yahoo.com","http://search.sg.yahoo.com/search/sg?p=hm+wz");
Add("Yahooligans","","http://www.yahooligans.com","http://search.yahooligans.com/search/ligans?p=hm+wz");




