Implementing User Preferences
/*
Mastering JavaScript, Premium Edition
by James Jaworski
ISBN:078212819X
Publisher Sybex CopyRight 2001
*/
<HTML>
<HEAD>
<TITLE>Setting color preferences</TITLE>
<SCRIPT LANGUAGE="JavaScript"><!--
function nameDefined(c,n) {
var s=removeBlanks(c)
var pairs=s.split(";")
for(var i=0;i<pairs.length;++i) {
var pairSplit=pairs[i].split("=")
if(pairSplit[0]==n) return true
}
return false
}
function removeBlanks(s) {
var temp=""
for(var i=0;i<s.length;++i) {
var c=s.charAt(i)
if(c!=" ") temp += c
}
return temp
}
function getCookieValue(c,n) {
var s=removeBlanks(c)
var pairs=s.split(";")
for(var i=0;i<pairs.length;++i) {
var pairSplit=pairs[i].split("=")
if(pairSplit[0]==n) return pairSplit[1]
}
return ""
}
function readCookie() {
var cookie=document.cookie
background="white"
text="black"
if(nameDefined(cookie,"background"))
background=getCookieValue(cookie,"background")
if(nameDefined(cookie,"text"))
text=getCookieValue(cookie,"text")
}
function setCookie() {
var newCookie="background="+background
newCookie += "; expires=Wednesday, 10-Nov-10 23:12:40 GMT"
window.document.cookie=newCookie
var newCookie="text="+text
newCookie += "; expires=Wednesday, 10-Nov-10 23:12:40 GMT"
window.document.cookie=newCookie
window.location="www.java2s.com"
}
function prefsForm() {
document.writeln('<FORM name="prefs">')
document.writeln('Background color: ')
document.writeln('<SELECT name="bg" size="1">')
document.writeln('<OPTION>black')
document.writeln('<OPTION SELECTED>white')
document.writeln('<OPTION>red')
document.writeln('<OPTION>orange')
document.writeln('<OPTION>yellow')
document.writeln('<OPTION>green')
document.writeln('<OPTION>blue')
document.writeln('<OPTION>brown')
document.writeln('</SELECT>')
document.writeln(' Text color: ')
document.writeln('<SELECT name="fg" size="1">')
document.writeln('<OPTION SELECTED>black')
document.writeln('<OPTION>white')
document.writeln('<OPTION>red')
document.writeln('<OPTION>orange')
document.writeln('<OPTION>yellow')
document.writeln('<OPTION>green')
document.writeln('<OPTION>blue')
document.writeln('<OPTION>brown')
document.writeln('</SELECT>')
document.writeln('<INPUT type="button" value="Set Colors" onClick="setPrefs()"')
document.writeln('</FORM>')
}
function setPrefs() {
bgField = window.document.prefs.bg
bgIndex = bgField.selectedIndex
background = bgField.options[bgIndex].text
fgField = window.document.prefs.fg
fgIndex = fgField.selectedIndex
text = fgField.options[fgIndex].text
setCookie()
}
// --></SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"><!--
readCookie()
document.bgColor=background
document.fgColor=text
prefsForm()
// --></SCRIPT>
<H1 ALIGN="CENTER">Setting color preferences</H1>
</body>
</HTML>
Related examples in the same category