function Question (qname,
type,
qstring,
response,
comment,
corrects,
explan,
score,
ifcorrect,ifwrong,ifnull,
img)
{this.qname=qname;
this.type=type;
this.qstring=qstring;
this.response=response;
this.comment=comment;
this.corrects=corrects;
this.explan=explan;
this.score=score;
this.ifcorrect=ifcorrect;
this.ifwrong=ifwrong;
this.ifnull=ifnull;
this.img=img;
}

var zin=1,top=0, mycount=0, waitTime=0, qright=0, mycomment;
var global=new Array(3);
var recent, recent2, recdone=false, opera7, opera=CheckOpera56();
function cachewrite(s,idx){global[idx]+=s;}
function CheckOpera56()
{
var version;
if (navigator.userAgent.toLowerCase().indexOf('opera') == -1) return false;
version=parseInt(navigator.appVersion.toLowerCase());
if (version>6) {opera7=true; return false;}
if (version<5) return false;
return true;
}
resp=new Array("light for the camera angles responsible for close-ups","use as much light as possible","use as many lights as necessary to eliminate every possible shadow","All of the above are correct.")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest001 = new Question(
"Question 1",
0,
"In planning lighting it's best to",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("primarily defines the texture, shape, form, and dimension of subject matter","is typically in the middle of the hard-soft range in light quality","is normally placed at about 45-degrees off to one side of the camera","All of the above are correct.","None of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest002 = new Question(
"Question 2",
0,
"In formula lighting the key light",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("eliminate all traces of shadows from the key","be placed next to the key light","be half the intensity of the key light","be a hard source of light","All of the above are correct.")
corr=new Array("0","0","1","0","0")
comm=""
valu=""
quest003 = new Question(
"Question 3",
0,
"In formula lighting the fill light should",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("45 degrees","15 degrees","90 degrees","180 degrees")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest004 = new Question(
"Question 4",
0,
"In formula lighting the angle formed between the key and fill lights should be about",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("one-eighth the intensity of the key light","two-thirds the intensity of the key light","twice as bright as the key light","turned off")
corr=new Array("0","1","0","0")
comm=""
valu=""
quest005 = new Question(
"Question 5",
0,
"In standard formula lighting the background light should normally be",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("an HMI light","a quartz light with a blue filter","a white reflector board","two of the above are true","All of the above are correct.")
corr=new Array("0","0","0","0","1")
comm=""
valu=""
quest006 = new Question(
"Question 6",
0,
"When doing a segment outside in sunlight, a fill light could be in the form of",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("a softlight","a scoop","a key light","a back light","a background light")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest007 = new Question(
"Question 7",
0,
"The light which is stronger than the key light and separates the subject(s) from the background with a subtle rim of light is called",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("use three-point lighting","use only scoop and fill lights","use only a back light or a background light","use only a key light and a fill","use only Fresnel lights")
corr=new Array("0","0","1","0","0")
comm=""
valu=""
quest008 = new Question(
"Question 8",
0,
"If you wanted to create a silhouette effect for a subject you could",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("background light too low","back light too high","fill light too high","the key light too close to the camera","not using a background light")
corr=new Array("0","1","0","0","0")
comm=""
valu=""
quest009 = new Question(
"Question 9",
0,
"The &quot;Rudolph effect&quot; is caused by having the",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("as close to the sun as possible","on the opposite side of the subject from the sun's illumination","on the same side of the subject as the sun's illumination","a reflector should never be used outside")
corr=new Array("0","1","0","0")
comm=""
valu=""
quest010 = new Question(
"Question 10",
0,
"If you use a reflector board outside as a fill it should be placed",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("2400 lux","600 lux","1000 lux","1200 lux")
corr=new Array("0","1","0","0")
comm=""
valu=""
quest011 = new Question(
"Question 11",
0,
"In color television if a key light is 1,200 lux with formula lighting the fill light should be",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("wrinkles on a face to make a person look younger","depth and texture","surface detail","All of the above are correct.","one of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest012 = new Question(
"Question 12",
0,
"Soft lighting can be used to minimize",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("use a scrim over the incandescent light","use a yellow filter over the incandescent light","dim down the fill light","use a blue filter over the incandescent light")
corr=new Array("0","0","0","1")
comm=""
valu=""
quest013 = new Question(
"Question 13",
0,
"If you use sunlight coming through a window as principal source of illumination on a subject and you want to use an incandescent light as a fill, you would need to",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("use a hard light source","use a high lighting ratio","position the key from 60 to 85 degrees off to one side of the camera","All of the above are correct.","one of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest014 = new Question(
"Question 14",
0,
"If you want to exaggerate (maximize) surface detail on a subject you should",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("do what's most practical","adhere to consistency","follow source","consider the person's best side","All of the above are correct.","None of the answers is correct.")
corr=new Array("0","0","0","0","1","0")
comm=""
valu=""
quest015 = new Question(
"Question 15",
0,
"In deciding on whether to key a person from the left or right you should",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("not use backlights","put the subjects as close to the background as possible","not use background lights","All of the above are correct.","None of the answers is correct.")
corr=new Array("0","0","0","0","1")
comm=""
valu=""
quest016 = new Question(
"Question 16",
0,
"To minimize shadows on a background you should",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("a rather dramatic effect","flat lighting","a showless effect","All of the above are correct.")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest017 = new Question(
"Question 17",
0,
"An 8:1 lighting ratio would create",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("use a scoop for a key light","use a scrim over the key light","use color balanced fluorescents for a key light","make sure the fill is next to the key","You would do all of the above","You would do none of the above")
corr=new Array("0","0","0","0","0","1")
comm=""
valu=""
quest018 = new Question(
"Question 18",
0,
"If you wanted to bring out maximum surface detail in a subject you would",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

questions = new Array (
quest001,quest002,quest003,quest004,quest005,quest006,quest007,quest008,quest009,quest010,quest011,quest012,quest013,quest014,quest015,quest016,quest017,quest018)

function doQuestion(quest)
{
var numdo;
var numord=eval(quest+1);
var i=-1, ii, type, myname, gadget;
type=questions[quest].type;
numdo=type>=3?1:questions[quest].response.length;


document.writeln ("<a name=\""+questions[quest].qname+"\"></a>")
document.write("\n")
document.write("  <tr>\n")
document.write("    <td>\n")
document.write("      <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" onmouseover=\"this.className='graybg'\" onmouseout=\"this.className='whitebg'\">\n")
document.write("      <tr height=5>\n")
document.write("        <td colSpan=5></td>\n")
document.write("      </tr>\n")
document.write("      <tr>\n")
document.write("        <td width=\"5%\" rowspan=\"3\"></td>\n")
document.write("        <td width=\"9%\" rowspan=\"3\" valign=\"top\" align=\"center\"><font face=\"Verdana\" size=\"7\" color=\"#C0C0C0\">")
document.write(numord)
document.write("</font></td>\n")
document.write("        <td width=\"1%\" rowspan=\"3\" background=\"s_vline.gif\">&nbsp;</td>\n")
document.write("        <td width=\"80%\" class=\"question\" valign=\"top\">\n")
document.write("         ")
if (questions[quest].img!="") {
document.write("\n")
document.write("         <img border=\"0\" hspace=\"10\" vspace=\"0\" align=\"left\" src=\"")
document.write(questions[quest].img)
document.write("\">\n")
document.write("         ")
}
document.write("\n")
document.write("          ")
document.writeln(questions[quest].qstring)
document.write("\n")
document.write("        </td>\n")
document.write("        <td width=\"5%\"></td>\n")
document.write("      </tr>\n")
document.write("      <tr height=10>\n")
document.write("        <td width=\"80%\"></td>\n")
document.write("        <td width=\"5%\"></td>\n")
document.write("      </tr>\n")
document.write("      <tr>\n")
document.write("        <td width=\"80%\" class=\"answer\">\n")
document.write("          ")
for (i=0; i<numdo; i++) {
myname=questions[quest].qname;
gadget="radio";
if (type>=3) gadget="text";
else if (type==1) {
myname+="_"+(i<9?"0":"")+(i+1);
gadget="checkbox";}
document.write("\n")
document.write("          ")
document.write(type==7?"<textarea name=\""+myname+"\" rows=5 cols=30 class=\"input\">":" <input type="+gadget+" name=\""+myname);
if (type<3) document.write("\" value=\""+i+"\">\n")
else document.write(type==7?"</textarea>":"\" class=\"input\" value=\"\">\n")
if (type<3) document.write(questions[quest].response[i]);
document.write("<br>\n")
document.write("          ")
}
document.write("\n")
document.write("        </td>\n")
document.write("        <td width=\"5%\"></td>\n")
document.write("      </tr>\n")
document.write("      <tr height=5>\n")
document.write("        <td colSpan=5></td>\n")
document.write("      </tr>\n")
document.write("      </table>\n")
document.write("    </td>\n")
document.write("  </tr>\n")
document.write("  <tr height=10>\n")
document.write("    <td>&nbsp;</td>\n")
document.write("  </tr>\n")
document.write("  ")
}
function doTest() {
var count, i;

count=questions.length;
for (i=0; i<count; i++) doQuestion(i);
}
function fill(s,l){
s=s+""
for (y=1;y<=l;y++)
if (s.length>=l) break; else s="0"+s;
return s
}
function CheckQName(wapf,ii,i,multi,selection){
var len;
if (!multi) return(wapf.elements[ii].name==questions[i].qname);
len=questions[i].qname.length;
if (wapf.elements[ii].name.substring(0,len)!=questions[i].qname) return false;
if (wapf.elements[ii].name.substring(len,len+1)!="_") return false;
if (eval(wapf.elements[ii].name.substring(len+1,len+3))==(selection+1)) return true;
return false;
}
function errore(uno)
{
if (!errori) global[1]="<H3>You have made the following errors</H3>";
++errori;
cachewrite("<p><b>"+uno+"</b><br>This answer is not correct."+mycomment+"</p>",2);
mycomment="";
}
function testIE5plus(){
var pos=navigator.appVersion.lastIndexOf('MSIE ');
if (pos != -1) {
pos+=5;
if (eval(navigator.appVersion.charAt(pos))>4)
return true;}
return false;}
function correct(wapf)
{
var i, ii, t, re, tmp, selection, multi, multipage=0, type, isnull, iswrong, iscorrect, evaluation=0, total=0, udat;
errori=waitTime=0;
udat=new Array();
for (i=0, ii=0; i<wapf.elements.length; i++)
{tmp=wapf.elements[i];
if (tmp.name.substring(0,13)=="Quiz.UserData"){
t=tmp.name.substring(14,tmp.name.length);
re=new RegExp("_", "g");
t=t.replace(re," ");
udat[ii++]=t+": <i>"+tmp.value+"</i><br>";
if (opera) tmp.value="";}}
global[0]=global[2]="";
global[1]="<h3>Congratulations, you haven't made any errors</h3>";
cachewrite("<html><head><title>Results</title><BASE target='_blank'></head><body bgcolor='#FFFFFF'><font face='Verdana, Arial'><table border=0 cellpadding=0 cellspacing=0 width='100%' bgcolor='#C0C0C0'><tr><td width='100%'><font face='Verdana, Arial' size=5 color='#FFFFFF'><b>&nbsp;Results</b></font></td></tr></table>",0)
now= new Date()
cachewrite("<small><p>"+fill((now.getMonth()+1),2)+"/"+fill(now.getDate(),2)+"/"+now.getYear()+"&nbsp;&nbsp;"+fill(now.getHours(),2)+":"+fill(now.getMinutes(),2)+"</p>",0)
cachewrite("<b>Modules 31 - 35</b><br><br>\n",0);
if (udat.length>0) {
cachewrite("<b>Information</b><br>\n",0);
for (i=0; i<udat.length; i++) cachewrite(udat[i],0);}
if (opera7 && multipage) {
for (i=0; i<questions.length; i++) {
id=document.getElementById("q"+(i+1));
id2=document.getElementById("q"+(i+1)+"a");
id.style.display=id2.style.display="block";}}

for (i=0; i<questions.length; i++) {
if (opera && multipage) {
id=document.getElementById("q"+(i+1));
id2=document.getElementById("q"+(i+1)+"a");
id.style.visibility=id2.style.visibility="visible";}
type=questions[i].type;
if (type==1) multi=1;
else multi=0;
isnull=true;
iscorrect=false;iswrong=false;
selection=0;
evaluation=0;
mycomment="";
for (ii=0; ii<wapf.elements.length; ii++) {
if (CheckQName(wapf,ii,i,multi,selection)) {
if (type>=3 && wapf.elements[ii].value!="") {
isnull=false;
if (wapf.elements[ii].value.toLowerCase()==questions[i].corrects.toLowerCase()) iscorrect=true;
else iswrong=true;
++selection;}
else if (wapf.elements[ii].checked) {
if (questions[i].score!="") evaluation+=questions[i].score[selection];
if (isnull) isnull=false;
if (questions[i].corrects[selection]=="1") iscorrect=(iswrong==false)?true:false;
else {
iswrong=true;
if (multi && questions[i].corrects!='') errore(questions[i].qname);
}
if (questions[i].comment!="" && questions[i].comment[selection]!="")
mycomment+=((iscorrect || questions[i].corrects=='')?"<b>"+questions[i].qname+"</b><br>":"")+"<small>"+questions[i].comment[selection]+"</small><br>";
} else {
if (questions[i].corrects[selection]=="1") {
iswrong=true;
if (multi && questions[i].corrects!='') errore(questions[i].qname);
}}
++selection;
}}
if (multi==false && (isnull || iswrong)) {
var okresp="", z;
if (type>=3) okresp=questions[i].corrects;
else {
for (z=0; z<questions[i].corrects.length; z++) {
if (questions[i].corrects[z]==1) {
okresp=questions[i].response[z];
break;
}}}
if (okresp!="") errore(questions[i].qname);
}
if (mycomment!="") cachewrite(mycomment,2);
if (questions[i].corrects!="") ++qright;
if (isnull) evaluation+=questions[i].ifnull;
else if (iswrong) evaluation+=questions[i].ifwrong;
else if (iscorrect) evaluation+=questions[i].ifcorrect;
total+=evaluation;}
if (qright==0) global[1]="<br>";
if (errori) cachewrite("<br><b>You have made "+errori+" "+(errori==1?"error":"errors")+".</b>",2);
cachewrite("<br><b>Total score: "+total+".</b><br>",2);

cachewrite("</small><hr noshade><center><form>",2)
printest=(((navigator.appName=="Netscape") && (navigator.appVersion.charAt(0)>="4")) || (testIE5plus() == true))? "print()": "alert('This button can be used with Netscape Navigator 4 or Microsoft Internet Explorer 5 only. If you want to print with other browsers, please select the Print command in the File menu.')"
cachewrite("<input type='button' value='Print...' onClick='"+printest+"'>&nbsp;&nbsp;&nbsp;&nbsp;",2)
cachewrite("<input type='button' value='Back' onClick='history.back()'></form></center>",2)
cachewrite(aknw,2)
winr=window
for (i=0; i<3; i++) winr.document.write(global[i]);winr.document.close()
if ((opera || opera7) && multipage) {
document.forms[0].elements[0].value='Print...';
document.forms[0].elements[1].value='Back';
for (i=0; i<questions.length-1; i++) {
id=document.getElementById("q"+(i+1));
id2=document.getElementById("q"+(i+1)+"a");
opera?id.style.visibility=id2.style.visibility="hidden":id.style.display=id2.style.display="none";}}
}
aknw="<br><p align='center'><small><small>Created and managed with <a title='Click here to visit WebQuiz site' href='http://www.smartlite.it/go.asp?OLDLP' target = '_blank'>SmartLite WebQuiz</a></small></small></p>"
