Diff for /capa/capa51/pProj/capaCgiUtils.c between versions 1.13 and 1.20

version 1.13, 2000/03/22 21:08:03 version 1.20, 2000/08/07 20:47:29
Line 1 Line 1
   /* Most of the web output generation routines.
      Copyright (C) 1992-2000 Michigan State University
   
      The CAPA system is free software; you can redistribute it and/or
      modify it under the terms of the GNU General Public License as
      published by the Free Software Foundation; either version 2 of the
      License, or (at your option) any later version.
   
      The CAPA system is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      General Public License for more details.
   
      You should have received a copy of the GNU General Public
      License along with the CAPA system; see the file COPYING.  If not,
      write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
      Boston, MA 02111-1307, USA.
   
      As a special exception, you have permission to link this program
      with the TtH/TtM library and distribute executables, as long as you
      follow the requirements of the GNU GPL in regard to all of the
      software in the executable aside from TtH/TtM.
   */
   
 /* ===================================================================== */  /* ===================================================================== */
 /*   copyrighted by Isaac Tsai, 1998, 1999, 2000    */  
 /* ===================================================================== */  /* ===================================================================== */
 #include <stdio.h>  #include <stdio.h>
 #include <ctype.h>  #include <ctype.h>
Line 229  void web_printheader(FILE *out) Line 252  void web_printheader(FILE *out)
     fprintf(out,"<HTML><HEAD>\n");      fprintf(out,"<HTML><HEAD>\n");
     fprintf(out,"<BODY BGCOLOR=\"#FFFFFF\" LINK=\"#0000EE\" VLINK=\"#EE1100\">\n");      fprintf(out,"<BODY BGCOLOR=\"#FFFFFF\" LINK=\"#0000EE\" VLINK=\"#EE1100\">\n");
   }    }
   
 #ifdef  CAPA_WEB  
   fprintf(out,"<!-- capasbin, CAPA Version %s, %s -->\n",  
   CAPA_VER,COMPILE_DATE);  
 #else  
   fprintf(out,"<!-- capahtml, CAPA Version %s, %s -->\n",  
   CAPA_VER,COMPILE_DATE);  
 #endif  
 }  }
   
 void web_printfooter(FILE *out)  void web_printfooter(FILE *out)
Line 1421  char *class_dir; char *c_owner;char *cla Line 1436  char *class_dir; char *c_owner;char *cla
     }      }
   }    }
   
   if ((mode==CHECK_ANSWER_MODE) || (mode== TRY_SET_MODE))    if ((mode==CHECK_ANSWER_MODE) || (mode== TRY_SET_MODE) || (mode==VIEW_PREVIOUS_MODE))
     capa_set_login_time(g_student_number,set);      capa_set_login_time(g_student_number,set);
   
   capa_get_header(&header,set);    capa_get_header(&header,set);
Line 1518  char *class_dir; char *c_owner;char *cla Line 1533  char *class_dir; char *c_owner;char *cla
          }           }
          if(mode == VIEW_PREVIOUS_MODE) { /* VIEW_PREVIOUS_MODE */           if(mode == VIEW_PREVIOUS_MODE) { /* VIEW_PREVIOUS_MODE */
    /*     /*
            if( display_ans ) {  
              if( prob_idx->ans_type == ANSWER_IS_FLOAT ) {               if( prob_idx->ans_type == ANSWER_IS_FLOAT ) {
                  a = (double)atof(prob_idx->answer);                   a = (double)atof(prob_idx->answer);
                  sprintf(cmp_ans,prob_idx->ans_fmt, a);                   sprintf(cmp_ans,prob_idx->ans_fmt, a);
Line 1539  char *class_dir; char *c_owner;char *cla Line 1553  char *class_dir; char *c_owner;char *cla
                  sprintf(buf,"<p><tt><b>Answer:</b> %s</tt><br>\n",cmp_ans);                    sprintf(buf,"<p><tt><b>Answer:</b> %s</tt><br>\n",cmp_ans); 
              }               }
    */     */
              if( display_ans ) { 
      c_ans=answers_string(ANSWER_STRING_MODE, prob_idx);       c_ans=answers_string(ANSWER_STRING_MODE, prob_idx);
      sprintf(buf,"<p><tt><b>Answer:</b> %s</tt><br>",c_ans);       sprintf(buf,"<p><tt><b>Answer:</b> %s</tt><br>",c_ans);
              append_qtext(buf);               append_qtext(buf);
Line 1547  char *class_dir; char *c_owner;char *cla Line 1562  char *class_dir; char *c_owner;char *cla
        sprintf(buf,"<p><b>Explanation: </b>\n<p>%s<br>\n",prob_idx->explain);         sprintf(buf,"<p><b>Explanation: </b>\n<p>%s<br>\n",prob_idx->explain);
        append_qtext(buf);         append_qtext(buf);
      }       }
      }
  } else { /* could be TRY_SET_MODE, CHECK_ANSWER_MODE */   } else { /* could be TRY_SET_MODE, CHECK_ANSWER_MODE */
            if( g_passdue ) {             if( g_passdue ) {
              get_response(header.partial_credit[question_idx],entry.answers[question_idx],question_idx,prob_idx);               get_response(header.partial_credit[question_idx],entry.answers[question_idx],question_idx,prob_idx);
Line 2758  int   *hc;int   *qc;int   *fs; Line 2774  int   *hc;int   *qc;int   *fs;
   configResult=read_capa_config("homework_weight",buf);    configResult=read_capa_config("homework_weight",buf);
   if (configResult != 0 && configResult != -1 ) {    if (configResult != 0 && configResult != -1 ) {
     sscanf(buf,"%f", &hw_w);      sscanf(buf,"%f", &hw_w);
     if(hw_w <= 0.0 )  {      if(hw_w < 0.0 )  {
       hw_w = DEFAULT_HW_W;        hw_w = DEFAULT_HW_W;
     }      }
   } else {    } else {
Line 2767  int   *hc;int   *qc;int   *fs; Line 2783  int   *hc;int   *qc;int   *fs;
   configResult=read_capa_config("quiz_weight",buf);    configResult=read_capa_config("quiz_weight",buf);
   if (configResult != 0 && configResult != -1 ) {    if (configResult != 0 && configResult != -1 ) {
     sscanf(buf,"%f", &qz_w);      sscanf(buf,"%f", &qz_w);
     if(qz_w <= 0.0 )  {      if(qz_w < 0.0 )  {
       qz_w = DEFAULT_QZ_W;        qz_w = DEFAULT_QZ_W;
     }      }
   } else {    } else {
Line 2776  int   *hc;int   *qc;int   *fs; Line 2792  int   *hc;int   *qc;int   *fs;
   configResult=read_capa_config("exam_weight",buf);    configResult=read_capa_config("exam_weight",buf);
   if (configResult != 0 && configResult != -1 ) {    if (configResult != 0 && configResult != -1 ) {
     sscanf(buf,"%f", &ex_w);      sscanf(buf,"%f", &ex_w);
     if(ex_w <= 0.0 )  {      if(ex_w < 0.0 )  {
       ex_w = DEFAULT_EX_W;        ex_w = DEFAULT_EX_W;
     }      }
   } else {    } else {
Line 2785  int   *hc;int   *qc;int   *fs; Line 2801  int   *hc;int   *qc;int   *fs;
   configResult=read_capa_config("final_weight",buf);    configResult=read_capa_config("final_weight",buf);
   if (configResult != 0 && configResult != -1 ) {    if (configResult != 0 && configResult != -1 ) {
     sscanf(buf,"%f", &fe_w);      sscanf(buf,"%f", &fe_w);
     if(fe_w <= 0.0 )  {      if(fe_w < 0.0 )  {
       fe_w = DEFAULT_FE_W;        fe_w = DEFAULT_FE_W;
     }      }
   } else {    } else {
Line 2794  int   *hc;int   *qc;int   *fs; Line 2810  int   *hc;int   *qc;int   *fs;
   configResult=read_capa_config("correction_weight",buf);    configResult=read_capa_config("correction_weight",buf);
   if (configResult != 0 && configResult != -1 ) {    if (configResult != 0 && configResult != -1 ) {
     sscanf(buf,"%f", &pc_w);      sscanf(buf,"%f", &pc_w);
     if(pc_w <= 0.0 )  {      if(pc_w < 0.0 )  {
       pc_w = DEFAULT_PC_W;        pc_w = DEFAULT_PC_W;
     }      }
   } else {    } else {

Removed from v.1.13  
changed lines
  Added in v.1.20


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>