var request = false;
try {
request = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = false;
//alert("no a");
}
}
}
var redirectURL = '';
var globalRefresh = '';
function loginswitch() {
document.getElementById('ajres').style.display = 'none';
document.getElementById('flogin').style.display = 'block';
}
function sub(f) {
var file = '/membership/ajlogin.htm';
var str = "";
for(var i = 0;i < f.elements.length;i++) {
str += encodeURIComponent(f.elements[i].name) +
"=" + encodeURIComponent(f.elements[i].value) + "&";
if(f.elements[i].name == 'ref') {
redirectURL = escape(f.elements[i].value);
}
}
str +="fh_controller=ajlogin";
request.open( "POST", file, true );
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
request.onreadystatechange = updateLogin;
request.send(str);
document.getElementById('login-button-text').innerHTML = '
';
//document.getElementById('flogin').style.display = 'none';
//document.getElementById('ajres').style.display = 'inline';
}
function updateLogin() {
if (request.readyState == 4) {
if (request.status == 200) {
var response = request.responseText.split('');
//alert("res is " + response);
document.getElementById('login-button-text').innerHTML = 'Login';
document.getElementById('ajres').innerHTML = response[1];
document.getElementById('flogin').style.display = 'none';
document.getElementById('ajres').style.display = 'block';
if(redirectURL != '' && response[0] == 1) {
window.location = redirectURL;
}
if(globalRefresh == 1) {
window.location.reload(true);
}
if(window.postlogin){postlogin();}
} else {
//alert("status is " + request.status);
}
}
}
function logout() {
var file = '/membership/ajlogout.htm';
request.open( "GET", file, true );
request.onreadystatechange = updateLogout;
request.send(null);
document.getElementById('ajres').innerHTML = '
';
//document.getElementById('flogin').style.display = 'none';
//document.getElementById('ajres').style.display = 'block';
}
function updateLogout() {
if (request.readyState == 4) {
if (request.status == 200) {
document.getElementById('ajres').innerHTML = '';
document.getElementById('ajres').style.display = 'none';
document.getElementById('flogin').style.display = 'block';
if(globalRefresh == 1) {
window.location.reload(true);
}
if(window.postlogout){postlogout();}
} else {
//alert("status is " + request.status);
}
}
}
function formsub(event)
{
if (!event.altKey && !event.ctlKey && event.keyCode == 13)
{
sub(document.getElementById('flogin'));
}
}
var formOffset = 0;
function mregShow(keyword)
{
//alert(document.getElementById('minreg').style.display);
var ucKeyword = keyword.charAt(0).toUpperCase() + keyword.substr(1);
var mySlider = new Fx.Slide('minreg',{duration:500}).hide();
document.getElementById("minreg").style.display = '';
(function(){
mySlider.toggle();
document.getElementById('hidalert').value = keyword;
document.getElementById('visalert').innerHTML = ucKeyword;
/*
if (formOffset == 0) {
mySlider.slideIn().chain(function(){ formOffset = mySlider.wrapper.offsetHeight; alert(formOffset); });
} else { mySlider.slideOut().chain(function(){ formOffset = mySlider.wrapper.offsetHeight; alert(formOffset); }); }
*/
}).delay(0);
}
function mformsub(event)
{
if (!event.altKey && !event.ctlKey && event.keyCode == 13)
{
createAlert(document.getElementById('hidalert').value);
}
}
function createAlert(keyword)
{
var file = '/membership/addalert.htm';
var f = document.getElementById('minreg');
var str = "";
str = "EMAIL="+f.elements['EMAIL'].value+"&FREQ="+getRadioValue(f.elements['FREQ'])+"&KEYWORD="+keyword+"&fh_controller=addalert";
request.open( "POST", file, true );
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
request.onreadystatechange= function() {
if (request.readyState==4)
if (request.status==200)
updateAlert(keyword);
}
request.send(str);
}
function updateAlert(keyword) {
var response = request.responseText;
//alert("res is " + response);
if(response.indexOf('Alert Added') != -1) {
document.getElementById('minreg').style.display = 'none';
//Need argument here to know which alertkeyword div to update
document.getElementById('alert-form').innerHTML = 'Thank you for registering for ZDNet Australia Alerts.';
}
else {
document.getElementById('alerterror').className = 'error';
document.getElementById('alerterror').innerHTML = response;
//document.getElementById('flogin').style.display = 'none';
//document.getElementById('alerterror').style.display = 'inline';
}
if(window.postalert){postalert();}
}
// return the value of the radio button that is checked
// return an empty string if none are checked, or
// there are no radio buttons
function getRadioValue(radioObj) {
if(!radioObj)
return "";
var radioLength = radioObj.length;
if(radioLength == undefined)
if(radioObj.checked)
return radioObj.value;
else
return "";
for(var i = 0; i < radioLength; i++) {
if(radioObj[i].checked) {
return radioObj[i].value;
}
}
return "";
}