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("the familiarity of the subject to viewers","the amount of scenic detail you want your audience to be aware o","the general pace of the production","All of the above are correct.","None of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest001 = new Question(
"Question 1",
0,
"The duration of a scene depends on",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("non-linear editing","inear editing","control-track editing","insert editing")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest002 = new Question(
"Question 2",
0,
"The editing approach that in some ways is like working with a word processor is",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("when one person stops talking and another starts","mid-way through the action of someone getting out of a chair","when an actor glances off to one side do see someone or something","All of the above are correct.","None of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest003 = new Question(
"Question 3",
0,
"During editing which of the following moments would represent a good time to make a cut",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("non-linear editing","control track editing","composite editing","All of the above are correct.")
corr=new Array("0","1","0","0")
comm=""
valu=""
quest004 = new Question(
"Question 4",
0,
"The editing approach that depends on the equipment keeping an accurate count of pulses is referred to as",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("keyed-in time-code","VITC time-code","burned-in time-code","longitudinal time-code")
corr=new Array("0","0","1","0")
comm=""
valu=""
quest005 = new Question(
"Question 5",
0,
"The type of time-code display that doesn't depend on special equipment to view is",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("punch cards","index cards","a time line")
corr=new Array("0","0","1")
comm=""
valu=""
quest006 = new Question(
"Question 6",
0,
"With most non-linear editing systems the various audio and video elements are visually represented on",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("a file server","LAN","modem","video depot")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest007 = new Question(
"Question 7",
0,
"A centralized audio and video data storage system for editing workstations is referred to as a",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("one minute, two seconds","37 minutes, 27 seconds, and 10 frames","two minutes","37 minutes, 26 seconds, and 40 frames")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest008 = new Question(
"Question 8",
0,
"This is a time code problem. If you entered a video segment at 00:18:12:20 and it played until 00:19:14:20, how long would the video segment be?",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("2 minutes, 34-seconds, 10 frames","2 minutes, 33 seconds, 40 frames","2 minutes, 4 seconds, 54 frames","None of the answers is correct.")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest009 = new Question(
"Question 9",
0,
"If one video segment is 2 min, 15 seconds and 12 frames long, and a second segment is 18 seconds, 28 frames long, what is the total time of the two segments?",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("is only used with VITC time-code","is used to regenerate the longitudinal time-code as a new copy of the tape is being dubbed","is the same as poor or unreliable synchronizing pulses","None of the answers is correct.")
corr=new Array("0","1","0","0")
comm=""
valu=""
quest010 = new Question(
"Question 10",
0,
"Jam sync",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("is the same as jam sync time-code","is recorded with the audio heads","is recorded with the video heads")
corr=new Array("0","0","1")
comm=""
valu=""
quest011 = new Question(
"Question 11",
0,
"With videotape VITC time-code",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("eliminate undesirable or illegal video frames","eliminates frames with technical problems","convert between the color standard and the 30 frame-per-second standards","converts from the NTSC to the SECAM video standards")
corr=new Array("0","0","1","0")
comm=""
valu=""
quest012 = new Question(
"Question 12",
0,
"Drop frame time code is used to",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("movable objects on a set","used to hold up cameras","are the same as cue cards","are no longer used in television")
corr=new Array("1","0","0","0")
comm=""
valu=""
quest013 = new Question(
"Question 13",
0,
"<i>Props </i>are",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("editors should not confuse audiences by cutting away from the A-roll footage","A-roll footage has no place in a good movie","B-roll footage should be emphasized","All of the above are correct.")
corr=new Array("0","0","1","0")
comm=""
valu=""
quest014 = new Question(
"Question 14",
0,
"Howard Hawks, an eminent American film maker, said: &quot;A great movie is made with cutaways and inserts.&quot; He was saying that",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("add capabilities such as filters to the system","can add special effects to the system","include such things as electronic image stabilization","All of the above are correct.","one of the answers is correct.")
corr=new Array("0","0","0","1","0")
comm=""
valu=""
quest015 = new Question(
"Question 15",
0,
"Most computer editing systems allow for <i>plug-ins.</i> These",
resp,
comm,
corr,
"",
valu,
2,
-1,
-1,
"");

resp=new Array("specialized video special effects","ways to enhance audio","cable or device connections for computers","None of the answers is correct.")
corr=new Array("0","0","1","0")
comm=""
valu=""
quest016 = new Question(
"Question 16",
0,
"FireWire, IEEE 1394, USB-2 are",
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)

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 54 - 57</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>"

