%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% exerqz.4ht                            2009-05-18-23:01 %
% Copyright (C) 1999--2009                          %
%                      Donald P. Story & Eitan M. Gurari %
%                                                        %
% This work may be distributed and/or modified under the %
% conditions of the LaTeX Project Public License, either %
% version 1.3 of this license or (at your option) any    %
% later version. The latest version of this license is   %
% in                                                     %
%   http://www.latex-project.org/lppl.txt                %
% and version 1.3 or later is part of all distributions  %
% of LaTeX version 2003/12/01 or later.                  %
%                                                        %
% This work has the LPPL maintenance status "maintained".%
%                                                        %
% This Current Maintainer of this work                   %
% is Eitan M. Gurari.                                    %
%                                                        %
% If you modify this program your changing its signature %
% with a directive of the following form will be         %
% appreciated.                                           %
%            \message{signature}                         %
%                                                        %
%                             gurari@cse.ohio-state.edu  %
%                 http://www.cse.ohio-state.edu/~gurari  %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\immediate\write-1{version 2009-05-18-23:01}

\def\eqXInitQuizMsg{\hbox{%
   \let\noexpand\string
   \csname eq@InitQuizMsg\endcsname}}
\expandafter\ifx \csname eq@InitQuizMsg\endcsname\relax
    \expandafter\def\csname eq@InitQuizMsg\endcsname{
        "You must initialize the Quiz! Click on "+bqlabel}
\fi
\def\eqXQuizTotalMsg{\hbox{%
   \let\noexpand\string
   \def\thequestionno{"+thequestionno+"}%
   \csname eq@QuizTotalMsg\endcsname}}
\expandafter\ifx \csname eq@QuizTotalMsg\endcsname\relax
    \expandafter\def\csname eq@QuizTotalMsg\endcsname{"Score: '
         +Score +' out of '+thequestionno+'"}
\fi
\def\eqXMadeChoice{\hbox{%
   \let\noexpand\string
   \csname eq@MadeChoice\endcsname}}
\expandafter\ifx \csname eq@MadeChoice\endcsname\relax
    \expandafter\def\csname eq@MadeChoice\endcsname{
            "You have already made a choice. Your choice was ("
            +Responses[probno]+")."
            +" Do you want to change it?"}
\fi
\expandafter\ifx \csname eqScore\endcsname\relax
    \def\eqScore{Score:}
\fi

\JavaScript-$
var QuizInitialized;
var EndQuizPushed;
var CurrentQuizNo;
var Responses;
var ResponsesAddr;
var Cor;
var CorAddr;
var qthis;
var prev_notify;
function InitializeQuiz(qtfield,mark,quizN,ansN,lbrc,rbrc) {
  Score=0;
  QuizInitialized=1;
  CurrentQuizNo=quizN;
  eval( 'document.form'+qtfield+'.'+qtfield+'.value="$eqScore";' )
  RightWrong=new Array();
  for(var i in Responses){
  if (prev_notify == 0 ) {
    ResponsesAddr[i].value=Responses[i];
  } else {
    ResponsesAddr[i].value="("+Responses[i]+")";
} }

  Responses=new Array();
  ResponsesAddr=new Array();
  for(var i in Cor){
  CorAddr[i].value=Cor[i];
}

  Cor=new Array();
  CorAddr=new Array();
  EndQuizPushed=0;
  for(var i=1; i<=ansN; i++){
     RightWrong[i]=0;
  }
}
\EndJavaScript
\JavaScript
function href(addr) { top.location.href=addr; }
\EndJavaScript
\JavaScript
function Corrections(lbl1,lbl2,quizN) {
  if ( (EndQuizPushed == 1) && ( CurrentQuizNo == quizN ) ){
    for(var i in RightWrong){
      if( (RightWrong[i]==0) ){
        var k=Cor.length;
eval('Cor[k]=thisform'+quizN+'.ans'+quizN+'x'+i+'.value');
eval('CorAddr[k]=thisform'+quizN+'.ans'+quizN+'x'+i);

        eval('thisform'+quizN+'.ans'+quizN+'x'+i+'.value= "*"');
  } }
} }
\EndJavaScript
\JavaScript
function LinkTo(addr) {
}
\EndJavaScript
\JavaScript-$
function QuizEnd(bqlabel,thequestionno,quiztotal,quizN){
  if ((QuizInitialized !=1) || ( CurrentQuizNo!= quizN )){
     alert($eqXInitQuizMsg,3);
  } else {
     eval( 'document.form'+quiztotal+'.'+quiztotal+
       '.value=$eqXQuizTotalMsg');
         QuizInitialized=-1;
         EndQuizPushed=1;
} }
\EndJavaScript

\JavaScript-$
function  ProcessQuestion
  (key,letterresp,probno,notify,bqlabel,quizN) {
    if ((QuizInitialized !=1) || ( CurrentQuizNo!= quizN )){
      alert($eqXInitQuizMsg,3);
    } else {
      if (Responses[probno] == null) {
   if (key==1) {
      Score++;
      RightWrong[probno]=1;
   }
   else
      RightWrong[probno]=0;
   if( ResponsesAddr[probno] != null ){
  if (notify == 0 ) {
    ResponsesAddr[probno].value=Responses[probno];
  } else {
    ResponsesAddr[probno].value="("+Responses[probno]+")";
} }
qthis.value = "#";  ResponsesAddr[probno]=qthis;

   Responses[probno]=letterresp;
}
else {
   if (notify==0)
      User=true;
   else
      User=confirm($eqXMadeChoice);
   if (User) {
      if (RightWrong[probno]==1) {
          if (key==0) {
            Score -= 1;
            RightWrong[probno]=0;
            if( ResponsesAddr[probno] != null ){
  if (notify == 0 ) {
    ResponsesAddr[probno].value=Responses[probno];
  } else {
    ResponsesAddr[probno].value="("+Responses[probno]+")";
} }
qthis.value = "#";  ResponsesAddr[probno]=qthis;

            Responses[probno]=letterresp;
         }
      }
      else {
          if (key==1) {
            Score++;
            RightWrong[probno]=1;
            if( ResponsesAddr[probno] != null ){
  if (notify == 0 ) {
    ResponsesAddr[probno].value=Responses[probno];
  } else {
    ResponsesAddr[probno].value="("+Responses[probno]+")";
} }
qthis.value = "#";  ResponsesAddr[probno]=qthis;

            Responses[probno]=letterresp;
         }
         else {
            RightWrong[probno]=0;
            if( ResponsesAddr[probno] != null ){
  if (notify == 0 ) {
    ResponsesAddr[probno].value=Responses[probno];
  } else {
    ResponsesAddr[probno].value="("+Responses[probno]+")";
} }
qthis.value = "#";  ResponsesAddr[probno]=qthis;

            Responses[probno]=letterresp;
         }
      }
   }
}

      prev_notify = notify;
}   }
\EndJavaScript


