Diff for /rat/client/parameter.html between versions 1.5 and 1.13

version 1.5, 2000/11/28 15:40:42 version 1.13, 2001/08/08 16:41:28
Line 2 Line 2
 <!--  <!--
 The LearningOnline Network with CAPA  The LearningOnline Network with CAPA
 Parameter Input Window  Parameter Input Window
 06/16/00,06/17,11/17,11/18,11/23,11/27,11/28 Gerd Kortemeyer  06/16/00,06/17,11/17,11/18,11/23,11/27,11/28,12/15,12/16,
   03/21/01,03/24,06/26 Gerd Kortemeyer
   07/24/01 Scott Harrison
   08/08 Gerd Kortemeyer
 -->  -->
 <head>  <head>
 <title>LON-CAPA</title>  <title>LON-CAPA</title>
Line 239  function intcalc() { Line 242  function intcalc() {
     draw();      draw();
 }  }
   
   function integereval() {
      svalue=choices.document.forms.sch.intval.value;
      svalue=Math.round(svalue);
      if (pscat=='zeropos') { svalue=Math.abs(svalue); }
      if ((pscat=='pos') && (svalue==0)) {
         svalue='';
      }
      if (pscat.indexOf('inrange')!=-1) {
         var rangeparts=new Array;
         rangeparts=split('_',pscat);
         rangeparts=split(',',rangeparts[1]);
         if (svalue<rangeparts[0]) { svalue=rangeparts[0]; }
         if (svalue>rangeparts[1]) { svalue=rangeparts[1]; }
      }
      draw();
   }
   
   function floateval() {
      svalue=choices.document.forms.sch.floatval.value;
      svalue=1.0*svalue;
      if (pscat=='pos') { svalue=Math.abs(svalue); }
      if ((pscat=='zeroone') && ((svalue<0) || (svalue>1))) {
         svalue='';
      }
      draw();
   }
   
   function stringeval() {
      svalue=choices.document.forms.sch.stringval.value;
      draw();
   }
   
 function intervaldis() {  function intervaldis() {
     csecs=svalue;      csecs=svalue;
     cdays=Math.floor(csecs/86400);      cdays=Math.floor(csecs/86400);
Line 251  function intervaldis() { Line 286  function intervaldis() {
                +cmins+' mins '+csecs+' secs');                 +cmins+' mins '+csecs+' secs');
 }  }
           
       
       
 function afterproc() {  
   choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Error after rounding: '  
              +'<input type=checkbox name=val1></td></tr>');  
 }  
   
 function draw() {  function draw() {
    choicestart();     choicestart();
    choicewrite('<form name=sch>');     choicewrite('<form name=sch');
      if (ptype=='int') {
         choicewrite(' action="javascript:integereval();"');
      }
      if (ptype=='float') {
         choicewrite(' action="javascript:floateval();"');
      }
      if (ptype=='string') {
         choicewrite(' action="javascript:stringeval();"');
      }
      choicewrite('>');
    if (ptype=='tolerance') {     if (ptype=='tolerance') {
 // 0: pscat  // 0: pscat
 // 1: after processing  
       if (pscat=='default') {        if (pscat=='default') {
          tablestart('Use default value or algorithm of resource');           tablestart('Use default value or algorithm of resource');
       }        }
       if (pscat=='exact') {  
          tablestart('Accept only exact value, zero tolerance');  
          afterproc();  
       }  
       if (pscat=='relative_sym') {        if (pscat=='relative_sym') {
 // 2: percentage  // 2: percentage
 // 3: open  // 3: open
          tablestart('Percentage error, symmetric around value');           tablestart('Percentage error, symmetric around value');
          valline('Percentage',2,3);           valline('Percentage',2,3);
          afterproc();           if ((svalue!='') && (typeof(svalue)!="undefined")) {
               choices.document.forms.sch.val2.value=parseInt(svalue);
               if (svalue.indexOf('+')!=-1) {
                  choices.document.forms.sch.val3.checked=true;
               }
            }
       }        }
       if (pscat=='relative') {        if (pscat=='relative') {
 // 2: left  // 2: left
Line 286  function draw() { Line 324  function draw() {
          tablestart('Percentage error, asymmetric around value');           tablestart('Percentage error, asymmetric around value');
          valline('Upper percentage',2,3);           valline('Upper percentage',2,3);
          valline('Lower percentage',4,5);           valline('Lower percentage',4,5);
          afterproc();           var range=new Array;
            if ((svalue!='') && (typeof(svalue)!="undefined")) {
               range=svalue.split(',');
               if (typeof(range[1])=='undefined') { range[1]=range[0]; }
               choices.document.forms.sch.val2.value=parseInt(range[0]);
               if (range[0].indexOf('+')!=-1) {
                  choices.document.forms.sch.val3.checked=true;
               }
               choices.document.forms.sch.val4.value=parseInt(range[1]);
               if (range[1].indexOf('+')!=-1) {
                  choices.document.forms.sch.val5.checked=true;
               }
            }
       }        }
       if (pscat=='absolute_sym') {        if (pscat=='absolute_sym') {
          tablestart('Absolute error, symmetric around value');           tablestart('Absolute error, symmetric around value');
          valline('Value',2,3);           valline('Value',2,3);
          afterproc();           if ((svalue!='') && (typeof(svalue)!="undefined")) {
               choices.document.forms.sch.val2.value=parseInt(svalue);
               if (svalue.indexOf('+')!=-1) {
                  choices.document.forms.sch.val3.checked=true;
               }
            }
       }        }
       if (pscat=='absolute') {        if (pscat=='absolute') {
          tablestart('Absolute error, asymmetric around value');           tablestart('Absolute error, asymmetric around value');
          valline('Upper value',2,3);           valline('Upper value',2,3);
          valline('Lower value',4,5);           valline('Lower value',4,5);
          afterproc();           var range=new Array;
            if ((svalue!='') && (typeof(svalue)!="undefined")) {
               range=svalue.split(',');
               if (typeof(range[1])=='undefined') { range[1]=range[0]; }
               choices.document.forms.sch.val2.value=parseInt(range[0]);
               if (range[0].indexOf('+')!=-1) {
                  choices.document.forms.sch.val3.checked=true;
               }
               choices.document.forms.sch.val4.value=parseInt(range[1]);
               if (range[1].indexOf('+')!=-1) {
                  choices.document.forms.sch.val5.checked=true;
               }
            }
       }        }
       if (pscat=='sigdigits') {        if (pscat=='sigdigits') {
          tablestart('Agreement on significant digits');           tablestart('Agreement on significant digits');
   choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Number of digits: '    choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Number of digits: '
              +'<input type=text size=4 name=val2></td></tr>');               +'<input type=text size=4 name=val2></td></tr>');
   
   choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Accept if more digits given: '  choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Accept if more digits given: '
              +'<input type=checkbox name=val3></td></tr>');               +'<input type=checkbox name=val3></td></tr>');
                     
       }        }
Line 344  function draw() { Line 411  function draw() {
      }       }
    }     }
   
    if (ptype=='value') {     if (ptype=='int') {
         if (pscat=='default') {
            tablestart('Default value or none');
            choicewrite('</table>');         
         } else {
           if (pscat=='pos') {
              tablestart('Positive (non-zero) integer');
           }
           if (pscat=='zeropos') {
              tablestart('Positive integer or zero');
           }
           if (pscat.indexOf('inrange')!=-1) {
              var rangeparts=new Array;
              rangeparts=split(',',pscat);
              tablestart('Integer in the range ['+rangeparts[1]+']');
           }
           if (pscat=='range') {
              tablestart('Integer range');      
           }
           if (pscat=='any') {
              tablestart('Integer');
           }
           choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
           choicewrite('<input name=intval size=10 value="'+svalue+
                       '" name=intval onChange="parent.integereval()">');
           choicewrite('</td></table>');
         }
    }     }
   
    if (ptype=='truefalse') {     if (ptype=='float') {
         if (pscat=='default') {
            tablestart('Default value or none');
            choicewrite('</table>');         
         } else {
           if (pscat=='pos') {
              tablestart('Positive floating point number or zero');
           }
           if (pscat=='zeroone') {
              tablestart('Floating point number between zero and one');
           }
           if (pscat=='any') {
              tablestart('Floating point number');
           }
           choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
           choicewrite('<input name=floatval size=10 value="'+svalue+
                       '" name=floatval onChange="parent.floateval()">');
           choicewrite('</td></table>');
         }
    }     }
   
    if (ptype=='check') {     if (ptype=='string') {
         if (pscat=='default') {
            tablestart('Default value or none');
            choicewrite('</table>');         
         } else {
           if (pscat=='any') {
              tablestart('Text');
           }
           choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
           choicewrite('<input name=intval size=20 value="'+svalue+
                       '" name=stringval onChange="parent.stringeval()">');
           choicewrite('</td></table>');
         }
    }     }
   
    if (ptype=='radio') {  
    }  
    choicewrite('</table></form>');     choicewrite('</table></form>');
    choiceend();     choiceend();
 }  }
Line 377  function assemble() { Line 498  function assemble() {
     if ((ptype=='date') && (pscat!='interval')) {      if ((ptype=='date') && (pscat!='interval')) {
         svalue=Math.round(cdate.getTime()/1000);          svalue=Math.round(cdate.getTime()/1000);
     }      }
       if (ptype=='tolerance') {
          if (pscat=='relative_sym') {
             svalue=choices.document.forms.sch.val2.value+'%';
             if (choices.document.forms.sch.val3.checked) {
                svalue+='+';
             }
          }
          if (pscat=='absolute_sym') {
             svalue=choices.document.forms.sch.val2.value;
             if (choices.document.forms.sch.val3.checked) {
                svalue+='+';
             }
          }
          if (pscat=='absolute') {
             svalue=choices.document.forms.sch.val2.value;
             if (choices.document.forms.sch.val3.checked) {
                svalue+='+';
             }
             svalue+=','+choices.document.forms.sch.val4.value;
             if (choices.document.forms.sch.val5.checked) {
                svalue+='+';
             }
          }
          if (pscat=='relative') {
             svalue=choices.document.forms.sch.val2.value+'%';
             if (choices.document.forms.sch.val3.checked) {
                svalue+='+';
             }
             svalue+=','+choices.document.forms.sch.val4.value+'%';
             if (choices.document.forms.sch.val5.checked) {
                svalue+='+';
             }
          }
       }
       if (pscat=='default') { svalue=''; }
     stype=ptype+'_'+pscat;      stype=ptype+'_'+pscat;
 }  }
   
Line 394  function init() { Line 550  function init() {
      if (pair[0]=='type') { subs=pair[1].split('_');       if (pair[0]=='type') { subs=pair[1].split('_');
                             ptype=subs[0];                              ptype=subs[0];
                             pscat=subs[1];                              pscat=subs[1];
                             if (subs[2]!=undefined) { pscat+='_'+subs[2]; }                              if (typeof(subs[2])!="undefined") { 
                             if ((pscat=='') || (pscat==undefined))                                  pscat+='_'+subs[2]; 
                                { pscat='default'; }                              }
                               if ((pscat=='') || (typeof(pscat)=="undefined")) { 
                                  pscat='default';
                               }
                            }                             }
      if (pair[0]=='return') { preturn=pair[1]; }       if (pair[0]=='return') { preturn=pair[1]; }
      if (pair[0]=='call') { pcode=pair[1]; }       if (pair[0]=='call') { pcode=pair[1]; }
Line 405  function init() { Line 564  function init() {
   }    }
   
   svalue=pvalue;    svalue=pvalue;
     if (((ptype=='float') || (ptype=='string') || (ptype=='int')) &&
         (pscat=='default') && 
         (typeof(svalue)!="undefined") && 
         (svalue!=0) && (svalue!='')) { pscat='any'; }
   
     if (ptype=='tolerance') {
        var tperc=0;
        var trange=0;
        if (typeof(svalue)!='undefined') {
           if (svalue.indexOf('%')!=-1) { tperc=1;  }
           if (svalue.indexOf(',')!=-1) { trange=1; }
           if (trange) {
              if (tperc) { pscat='relative'; } else { pscat='absolute'; }
           } else {
              if (tperc) { pscat='relative_sym'; } else { pscat='absolute_sym'; }
           }
        }
     }
   
   this.window.selector.document.clear();    this.window.selector.document.clear();
   selwrite('<html><body bgcolor="#FFFFFF">');    selwrite('<html><body bgcolor="#FFFFFF">');
   
   selwrite('<form name="fsel"><h2>'+pname+'</h2>');    selwrite('<form name="fsel"><b>'+pname+'</b><br>');
   selwrite('<select name="fcat" onChange="parent.catchange();">');    selwrite('<select name="fcat" onChange="parent.catchange();">');
   
   if (ptype=='tolerance') {    if (ptype=='tolerance') {
      sopt('default','Default');       sopt('default','Default');
      sopt('exact','Exact Value (no tolerance)');  
      sopt('relative_sym','Relative Tolerance, Symmetric (percent)');       sopt('relative_sym','Relative Tolerance, Symmetric (percent)');
      sopt('relative','Relative Tolerance (percentages)');       sopt('relative','Relative Tolerance (percentages)');
      sopt('absolute_sym','Absolute Tolerance, Symmetric (value)');       sopt('absolute_sym','Absolute Tolerance, Symmetric (value)');
      sopt('absolute','Absolute Tolerance (values)');       sopt('absolute','Absolute Tolerance (values)');
      sopt('sigdigits','Significant Digits (number)');  
   }    }
   
   if (ptype=='date') {    if (ptype=='date') {
Line 427  function init() { Line 603  function init() {
      sopt('end','Ending Date');       sopt('end','Ending Date');
      sopt('interval','Time Interval');       sopt('interval','Time Interval');
             
      if ((pvalue!='') && (pvalue!=undefined)) {       if ((pvalue!='') && (typeof(pvalue)!="undefined")) {
         cdate.setTime(pvalue*1000);          cdate.setTime(pvalue*1000);
      }       }
     
Line 445  function init() { Line 621  function init() {
      months[11]='December';       months[11]='December';
   }    }
         
   if (ptype=='value') {    if (ptype=='int') {
        sopt('default','Default');
        sopt('pos','Positive Integer, Not Zero');
        sopt('zeropos','Positive Integer or Zero');
        sopt('inrange','Integer in Range');
        sopt('range','Range of Integers');
        sopt('any','Integer');
   }    }
   
   if (ptype=='truefalse') {    if (ptype=='float') {
   }       sopt('default','Default');
        sopt('zeroone','Floating Point between 0 and 1');
        sopt('pos','Positive Floating Point');
        sopt('any','Floating Point');
   
   if (ptype=='check') {  
   }    }
   
   if (ptype=='radio') {    if (ptype=='string') {
        sopt('default','Default');
        sopt('string','String Value');
   }    }
   
   selwrite('</select></form>');    selwrite('</select></form>');

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


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