This new site (came online 1 Sep) www.quixtar.com has the following
Javascript to test a browser for cookie handling. It doesn't work on
V3 or with Opera 3.21 on a Windows 3.1 notebook. On both it
states that the browser doesn't support cookies or the cookies are
turned off. They're not. I've been told it works with IE. Don't know
about Netscape.
Anyway, V3 generates an JS error: Function Expected.
Here's my questions:
1. I thought JS was traditionally suppose to be in the <HEAD>
section of the HTML code; so why is the code at the very beginning?
Even ahead of the <HTML> tag.
2. It uses 3 library functions to handle cookies. Wouldn't this
library have to be on the user computer for the JS script to work? Or
would it being on the server be sufficient?
Code follows, exactly as saved (Sorry about the >80 character lines):
===================== BEGIN
<script language="JavaScript">
<!--
/*
WM_setCookie(), WM_readCookie(), WM_killCookie()
A set of functions that eases the pain of using cookies.
Source: Webmonkey Code Library
(http://www.hotwired.com/webmonkey/javascript/code_library/)
Author: Nadav Savio
Author Email: [EMAIL PROTECTED]
*/
// This next little bit of code tests whether the user accepts cookies.
var WM_acceptsCookies = false;
if(document.cookie == '') {
document.cookie = 'WM_acceptsCookies=yes'; // Try to set a cookie.
if(document.cookie.indexOf('WM_acceptsCookies=yes') != -1) {
WM_acceptsCookies = true;
}// If it succeeds, set variable
} else { // there was already a cookie
WM_acceptsCookies = true;
}
function WM_setCookie (name, value, hours, path, domain, secure) {
if (WM_acceptsCookies) { // Don't waste your time if the browser doesn't accept
cookies.
var not_NN2 = (navigator && navigator.appName
&& (navigator.appName == 'Netscape')
&& navigator.appVersion
&& (parseInt(navigator.appVersion) == 2))?false:true;
if(hours && not_NN2) { // NN2 cannot handle Dates, so skip this part
if ( (typeof(hours) == 'string') && Date.parse(hours) ) { // already a
Date string
var numHours = hours;
} else if (typeof(hours) == 'number') { // calculate Date from number of
hours
var numHours = (new Date((new Date()).getTime() +
hours*3600000)).toGMTString();
}
}
document.cookie = name + '=' + escape(value) + ((numHours)?(';expires=' +
numHours):'') + ((path)?';path=' + path:'') + ((domain)?';domain=' + domain:'') +
((secure && (secure == true))?'; secure':''); // Set the cookie, adding any parameters
that were specified.
}
} // WM_setCookie
function WM_readCookie(name) {
if(document.cookie == '') { // there's no cookie, so go no further
return false;
} else { // there is a cookie
var firstChar, lastChar;
var theBigCookie = document.cookie;
firstChar = theBigCookie.indexOf(name); // find the start of 'name'
var NN2Hack = firstChar + name.length;
if((firstChar != -1) && (theBigCookie.charAt(NN2Hack) == '=')) { // if you
found the cookie
firstChar += name.length + 1; // skip 'name' and '='
lastChar = theBigCookie.indexOf(';', firstChar); // Find the end of the
value string (i.e. the next ';').
if(lastChar == -1) lastChar = theBigCookie.length;
return unescape(theBigCookie.substring(firstChar, lastChar));
} else { // If there was no cookie of that name, return false.
return false;
}
}
} // WM_readCookie
function WM_killCookie(name, path, domain) {
var theValue = WM_readCookie(name); // We need the value to kill the cookie
if(theValue) {
document.cookie = name + '=' + theValue + '; expires=Fri, 13-Apr-1970 00:00:00
GMT' + ((path)?';path=' + path:'') + ((domain)?';domain=' + domain:''); // set an
already-expired cookie
}
} // WM_killCookie
function checkcookie() {
if (WM_acceptsCookies) {
if (WM_readCookie('viewedflash') == 'Y') {
location.replace('default_login.htm')}
else {
location.replace('flash.htm')}
}
}
// -->
</script>
<html>
<head>
<title>Untitled</title>
</head>
<body onload="checkcookie()" BGCOLOR = "#FFFFFF" MARGINWIDTH="0" MARGINHEIGHT="0"
leftmargin="0" topmargin="0">
<img src="Common/Images/quixtar_hdr.gif" width=615 height=55 alt="" border="0">
<table width="615" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="10"> </td>
<td>Quixtar requires that your browser support cookies. Your browser
currently doesn't support cookies or you don't have cookies turned on.<BR><BR>
<a href="flash.htm">Click here</a> to view the Quixtar Intro or <a
href="default_login.htm">Click here</a> to login.
</td>
</tr>
</table>
<BR><BR>
</body>
</html>
====================== END
--
Patrick Bartek (NoLife Polymath Group)
[EMAIL PROTECTED]
http://www.access1.net/bartek
____________________________________________________________
Voyager Mailing List - Info & Archive: http://www.vapor.com/
For Listserver Help: <[EMAIL PROTECTED]>, "HELP"
To Unsubscribe: <[EMAIL PROTECTED]>, "UNSUBSCRIBE"