Annotation of rat/client/parameter.html, revision 1.13

1.1       www         1: <html>
                      2: <!--
                      3: The LearningOnline Network with CAPA
                      4: Parameter Input Window
1.7       www         5: 06/16/00,06/17,11/17,11/18,11/23,11/27,11/28,12/15,12/16,
1.10      www         6: 03/21/01,03/24,06/26 Gerd Kortemeyer
1.11      www         7: 07/24/01 Scott Harrison
1.12      www         8: 08/08 Gerd Kortemeyer
1.1       www         9: -->
                     10: <head>
                     11: <title>LON-CAPA</title>
                     12: </head>
                     13: 
                     14: <script>
                     15: 
                     16: var ptype='';
                     17: var pvalue='';
                     18: var preturn='';
                     19: var pcode='';
1.2       www        20: var pscat='';
                     21: var pmarker='';
1.1       www        22: var pname='';
                     23: 
                     24: var svalue;
1.2       www        25: var stype;
                     26: var smarker;
1.1       www        27: 
                     28: var vars=new Array();
                     29: 
1.2       www        30: var cdate=new Date();
                     31: 
                     32: var csec;
                     33: var cmin;
                     34: var chour;
                     35: var cday;
                     36: 
                     37: var months=new Array();
                     38: 
                     39: 
1.1       www        40: function selwrite(text) {
                     41:   this.window.selector.document.write(text);
                     42: }
                     43: 
                     44: function choicestart() {
                     45:   this.window.choices.document.clear();
                     46:   choicewrite('<html><body bgcolor="#FFFFFF">');
                     47: }
                     48: 
                     49: function choiceend() {
                     50:   choicewrite('</body></html>');
                     51:   this.window.choices.document.close();
                     52: }
                     53: 
                     54: function choicewrite(text) {
                     55:   this.window.choices.document.write(text);
                     56: }
                     57: 
                     58: function tablestart(headtext) {
                     59:   choicewrite('<table><tr bgcolor="#AAFFAA"><th colspan=3>'+
                     60:               headtext+'</th></tr>');
                     61: }
                     62: 
                     63: function valline(text,id1,id2) {
                     64:   choicewrite('<tr bgcolor="#AAFFAA"><td>'+text+
                     65:               '</td><td><input type=text size=4 name=val'+
                     66:               id1+'></td><td>incl:<input type=checkbox name=val'+
                     67:               id2+'></td></tr>');
                     68: }
                     69: 
1.2       www        70: function datecalc() {
                     71:     var sform=choices.document.forms.sch;
                     72: 
                     73:     cdate.setHours(sform.hours.options[sform.hours.selectedIndex].value);
                     74:     cdate.setMinutes(sform.minutes.options[sform.minutes.selectedIndex].value);
                     75:     cdate.setSeconds(sform.minutes.options[sform.seconds.selectedIndex].value);
                     76:     cdate.setDate(sform.date.options[sform.date.selectedIndex].value);
                     77:     cdate.setMonth(sform.month.options[sform.month.selectedIndex].value);
                     78:     cdate.setFullYear(sform.year.options[sform.year.selectedIndex].value);
                     79: 
                     80:     draw();
                     81: }
                     82: 
                     83: function hour() {
                     84:    var thishour=cdate.getHours();
                     85:     var i; var j;
                     86:     choicewrite('<select name=hours onChange="parent.datecalc();">');
                     87:     for (i=0;i<=23;i++) {
                     88:         choicewrite('<option value='+i);
                     89:         if (i==thishour) {
                     90:             choicewrite(' selected');
                     91:         }
                     92:         choicewrite('>');
                     93:         if (i==12) { choicewrite('noon'); } else {
                     94:            if (i==0) { choicewrite('midnight') } else {
                     95:               
                     96:                  if (i<12) { choicewrite(i+' am'); } else {
                     97:                     j=i-12; choicewrite(j+' pm');
                     98:                  }
                     99:               
                    100:            }
                    101:         }
                    102:         choicewrite('</option>');
                    103:     }
                    104:     choicewrite('</select>');
                    105: }
                    106: 
                    107: function minute() {
                    108:    var thisminutes=cdate.getMinutes();
                    109:     var i;
                    110:     choicewrite('<select name=minutes onChange="parent.datecalc();">');
                    111:     for (i=0;i<=59;i++) {
                    112:         choicewrite('<option value='+i);
                    113:         if (i==thisminutes) {
                    114:             choicewrite(' selected');
                    115:         }
                    116:         choicewrite('>'+i+'</option>');
                    117:     }
                    118:     choicewrite('</select>');
                    119: } 
                    120: 
                    121: function second() {
                    122:    var thisseconds=cdate.getSeconds();
                    123:     var i;
                    124:     choicewrite('<select name=seconds onChange="parent.datecalc();">');
                    125:     for (i=0;i<=59;i++) {
                    126:         choicewrite('<option value='+i);
                    127:         if (i==thisseconds) {
                    128:             choicewrite(' selected');
                    129:         }
                    130:         choicewrite('>'+i+'</option>');
                    131:     }
                    132:     choicewrite('</select>');
                    133: } 
                    134: 
                    135: 
                    136: function date() {
                    137:    var thisdate=cdate.getDate();
                    138:     var i;
                    139:     choicewrite('<select name=date onChange="parent.datecalc();">');
                    140:     for (i=1;i<=31;i++) {
                    141:         choicewrite('<option value='+i);
                    142:         if (i==thisdate) {
                    143:             choicewrite(' selected');
                    144:         }
                    145:         choicewrite('>'+i+'</option>');
                    146:     }
                    147:     choicewrite('</select>');
                    148: }
                    149: 
                    150: function year() {
                    151:    var thisyear=cdate.getFullYear();
                    152:     var i;
                    153:     choicewrite('<select name=year onChange="parent.datecalc();">');
                    154:     for (i=thisyear-25;i<=thisyear+50;i++) {
                    155:         choicewrite('<option value='+i);
                    156:         if (i==thisyear) {
                    157:             choicewrite(' selected');
                    158:         }
                    159:         choicewrite('>'+i+'</option>');
                    160:     }
                    161:     choicewrite('</select>');
                    162: }
                    163: 
                    164: function month() {
                    165:     var thismonth=cdate.getMonth();
                    166:     var i;
                    167:     choicewrite('<select name=month onChange="parent.datecalc();">');
                    168:     for (i=0;i<=11;i++) {
                    169:         choicewrite('<option value='+i);
                    170:         if (i==thismonth) {
                    171:             choicewrite(' selected');
                    172:         }
                    173:         choicewrite('>'+months[i]+'</option>');
                    174:     }
                    175:     choicewrite('</select>');
                    176: }
                    177:     
                    178:     
                    179: function intminute() {
                    180:    var thisminutes=cmins;
                    181:     var i;
                    182:     choicewrite('<select name=minutes onChange="parent.intcalc();">');
                    183:     for (i=0;i<=59;i++) {
                    184:         choicewrite('<option value='+i);
                    185:         if (i==thisminutes) {
                    186:             choicewrite(' selected');
                    187:         }
                    188:         choicewrite('>'+i+'</option>');
                    189:     }
                    190:     choicewrite('</select>');
                    191: } 
                    192: 
                    193: function inthour() {
                    194:    var thishours=chours;
                    195:     var i;
                    196:     choicewrite('<select name=hours onChange="parent.intcalc();">');
                    197:     for (i=0;i<=23;i++) {
                    198:         choicewrite('<option value='+i);
                    199:         if (i==thishours) {
                    200:             choicewrite(' selected');
                    201:         }
                    202:         choicewrite('>'+i+'</option>');
                    203:     }
                    204:     choicewrite('</select>');
                    205: } 
                    206: 
                    207: function intsecond() {
                    208:    var thisseconds=csecs;
                    209:     var i;
                    210:     choicewrite('<select name=seconds onChange="parent.intcalc();">');
                    211:     for (i=0;i<=59;i++) {
                    212:         choicewrite('<option value='+i);
                    213:         if (i==thisseconds) {
                    214:             choicewrite(' selected');
                    215:         }
                    216:         choicewrite('>'+i+'</option>');
                    217:     }
                    218:     choicewrite('</select>');
                    219: } 
                    220: 
                    221: 
                    222: function intday() {
                    223:    var thisdate=cdays;
                    224:     var i;
                    225:     choicewrite('<select name=date onChange="parent.intcalc();">');
                    226:     for (i=0;i<=31;i++) {
                    227:         choicewrite('<option value='+i);
                    228:         if (i==thisdate) {
                    229:             choicewrite(' selected');
                    230:         }
                    231:         choicewrite('>'+i+'</option>');
                    232:     }
                    233:     choicewrite('</select>');
                    234: }
                    235: 
                    236: function intcalc() {
                    237:     var sform=choices.document.forms.sch;
                    238:     svalue=((sform.date.options[sform.date.selectedIndex].value*24+
                    239:              sform.hours.options[sform.hours.selectedIndex].value*1)*60+
                    240:              sform.minutes.options[sform.minutes.selectedIndex].value*1)*60+
                    241:              sform.seconds.options[sform.seconds.selectedIndex].value*1;
                    242:     draw();
                    243: }
                    244: 
1.6       www       245: function integereval() {
                    246:    svalue=choices.document.forms.sch.intval.value;
                    247:    svalue=Math.round(svalue);
                    248:    if (pscat=='zeropos') { svalue=Math.abs(svalue); }
                    249:    if ((pscat=='pos') && (svalue==0)) {
                    250:       svalue='';
                    251:    }
1.12      www       252:    if (pscat.indexOf('inrange')!=-1) {
1.10      www       253:       var rangeparts=new Array;
                    254:       rangeparts=split('_',pscat);
1.12      www       255:       rangeparts=split(',',rangeparts[1]);
1.10      www       256:       if (svalue<rangeparts[0]) { svalue=rangeparts[0]; }
                    257:       if (svalue>rangeparts[1]) { svalue=rangeparts[1]; }
                    258:    }
1.6       www       259:    draw();
                    260: }
                    261: 
                    262: function floateval() {
                    263:    svalue=choices.document.forms.sch.floatval.value;
                    264:    svalue=1.0*svalue;
                    265:    if (pscat=='pos') { svalue=Math.abs(svalue); }
                    266:    if ((pscat=='zeroone') && ((svalue<0) || (svalue>1))) {
                    267:       svalue='';
                    268:    }
                    269:    draw();
                    270: }
                    271: 
                    272: function stringeval() {
                    273:    svalue=choices.document.forms.sch.stringval.value;
                    274:    draw();
                    275: }
                    276: 
1.2       www       277: function intervaldis() {
                    278:     csecs=svalue;
                    279:     cdays=Math.floor(csecs/86400);
                    280:     csecs-=cdays*86400;
                    281:     chours=Math.floor(csecs/3600);
                    282:     csecs-=chours*3600;
                    283:     cmins=Math.floor(csecs/60);
                    284:     csecs-=cmins*60;
                    285:     choicewrite(cdays+' days '+chours+' hours '
                    286:                +cmins+' mins '+csecs+' secs');
                    287: }
                    288:     
1.1       www       289: function draw() {
                    290:    choicestart();
1.6       www       291:    choicewrite('<form name=sch');
                    292:    if (ptype=='int') {
                    293:       choicewrite(' action="javascript:integereval();"');
                    294:    }
                    295:    if (ptype=='float') {
                    296:       choicewrite(' action="javascript:floateval();"');
                    297:    }
                    298:    if (ptype=='string') {
                    299:       choicewrite(' action="javascript:stringeval();"');
                    300:    }
                    301:    choicewrite('>');
1.1       www       302:    if (ptype=='tolerance') {
1.2       www       303: // 0: pscat
                    304:       if (pscat=='default') {
1.1       www       305:          tablestart('Use default value or algorithm of resource');
                    306:       }
1.2       www       307:       if (pscat=='relative_sym') {
1.1       www       308: // 2: percentage
                    309: // 3: open
                    310:          tablestart('Percentage error, symmetric around value');
                    311:          valline('Percentage',2,3);
1.13    ! www       312:          if ((svalue!='') && (typeof(svalue)!="undefined")) {
        !           313:             choices.document.forms.sch.val2.value=parseInt(svalue);
        !           314:             if (svalue.indexOf('+')!=-1) {
        !           315:                choices.document.forms.sch.val3.checked=true;
        !           316:             }
        !           317:          }
1.1       www       318:       }
1.2       www       319:       if (pscat=='relative') {
1.1       www       320: // 2: left
                    321: // 3: open
                    322: // 4: right
                    323: // 5: open
                    324:          tablestart('Percentage error, asymmetric around value');
                    325:          valline('Upper percentage',2,3);
                    326:          valline('Lower percentage',4,5);
1.13    ! www       327:          var range=new Array;
        !           328:          if ((svalue!='') && (typeof(svalue)!="undefined")) {
        !           329:             range=svalue.split(',');
        !           330:             if (typeof(range[1])=='undefined') { range[1]=range[0]; }
        !           331:             choices.document.forms.sch.val2.value=parseInt(range[0]);
        !           332:             if (range[0].indexOf('+')!=-1) {
        !           333:                choices.document.forms.sch.val3.checked=true;
        !           334:             }
        !           335:             choices.document.forms.sch.val4.value=parseInt(range[1]);
        !           336:             if (range[1].indexOf('+')!=-1) {
        !           337:                choices.document.forms.sch.val5.checked=true;
        !           338:             }
        !           339:          }
1.1       www       340:       }
1.2       www       341:       if (pscat=='absolute_sym') {
1.1       www       342:          tablestart('Absolute error, symmetric around value');
                    343:          valline('Value',2,3);
1.13    ! www       344:          if ((svalue!='') && (typeof(svalue)!="undefined")) {
        !           345:             choices.document.forms.sch.val2.value=parseInt(svalue);
        !           346:             if (svalue.indexOf('+')!=-1) {
        !           347:                choices.document.forms.sch.val3.checked=true;
        !           348:             }
        !           349:          }
1.1       www       350:       }
1.2       www       351:       if (pscat=='absolute') {
1.1       www       352:          tablestart('Absolute error, asymmetric around value');
                    353:          valline('Upper value',2,3);
                    354:          valline('Lower value',4,5);
1.13    ! www       355:          var range=new Array;
        !           356:          if ((svalue!='') && (typeof(svalue)!="undefined")) {
        !           357:             range=svalue.split(',');
        !           358:             if (typeof(range[1])=='undefined') { range[1]=range[0]; }
        !           359:             choices.document.forms.sch.val2.value=parseInt(range[0]);
        !           360:             if (range[0].indexOf('+')!=-1) {
        !           361:                choices.document.forms.sch.val3.checked=true;
        !           362:             }
        !           363:             choices.document.forms.sch.val4.value=parseInt(range[1]);
        !           364:             if (range[1].indexOf('+')!=-1) {
        !           365:                choices.document.forms.sch.val5.checked=true;
        !           366:             }
        !           367:          }
1.1       www       368:       }
1.2       www       369:       if (pscat=='sigdigits') {
1.1       www       370:          tablestart('Agreement on significant digits');
                    371:   choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Number of digits: '
                    372:              +'<input type=text size=4 name=val2></td></tr>');
                    373: 
1.6       www       374: choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>Accept if more digits given: '
1.1       www       375:              +'<input type=checkbox name=val3></td></tr>');
                    376:          
                    377:       }
                    378:    }
                    379: 
                    380:    if (ptype=='date') {
1.2       www       381:      if (pscat=='default') {
                    382:          tablestart('Default value or none');
                    383:          choicewrite('</table>');
                    384:      } else {
                    385:       if (pscat=='start') {
                    386:          tablestart('Starting or opening date and time');
                    387:       }
                    388:       if (pscat=='end') {
                    389:          tablestart('Ending or closing date and time');
                    390:       }
                    391:       if (pscat=='interval') {
                    392:          tablestart('Time interval');
                    393:          choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>');
                    394:          intervaldis();
                    395:          choicewrite('</td></tr><tr bgcolor="#AAFFAA"><td>Time:'
                    396:          +'</td><td colspan=2>');
                    397:          intday();choicewrite('days ');
                    398:          inthour();choicewrite('hours ');
                    399:          intminute(); choicewrite('mins '); intsecond();
                    400:          choicewrite('secs</td></tr></table>');         
                    401:       } else { 
                    402:          choicewrite('<tr bgcolor="#AAFFAA"><td colspan=3>'
                    403:          +cdate.toString()+
                    404:          '</td></tr><tr bgcolor="#AAFFAA"><td>Date:</td><td colspan=2>');
                    405:          month();date();year();
                    406:          choicewrite('</td></tr><tr bgcolor="#AAFFAA"><td>Time:'
                    407:          +'</td><td colspan=2>');hour();choicewrite('h ');minute();
                    408:          choicewrite('m ');second();
                    409:          choicewrite('s</td></tr></table>');
                    410:       }
                    411:      }
1.1       www       412:    }
                    413: 
1.6       www       414:    if (ptype=='int') {
                    415:       if (pscat=='default') {
                    416:          tablestart('Default value or none');
                    417:          choicewrite('</table>');         
                    418:       } else {
                    419:         if (pscat=='pos') {
                    420:            tablestart('Positive (non-zero) integer');
                    421:         }
                    422:         if (pscat=='zeropos') {
                    423:            tablestart('Positive integer or zero');
                    424:         }
1.12      www       425:         if (pscat.indexOf('inrange')!=-1) {
1.10      www       426:            var rangeparts=new Array;
1.12      www       427:            rangeparts=split(',',pscat);
1.10      www       428:            tablestart('Integer in the range ['+rangeparts[1]+']');
                    429:         }
1.12      www       430:         if (pscat=='range') {
                    431:            tablestart('Integer range');      
                    432:         }
1.6       www       433:         if (pscat=='any') {
                    434:            tablestart('Integer');
                    435:         }
                    436:         choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
                    437:         choicewrite('<input name=intval size=10 value="'+svalue+
                    438:                     '" name=intval onChange="parent.integereval()">');
                    439:         choicewrite('</td></table>');
                    440:       }
1.1       www       441:    }
                    442: 
1.6       www       443:    if (ptype=='float') {
                    444:       if (pscat=='default') {
                    445:          tablestart('Default value or none');
                    446:          choicewrite('</table>');         
                    447:       } else {
                    448:         if (pscat=='pos') {
                    449:            tablestart('Positive floating point number or zero');
                    450:         }
                    451:         if (pscat=='zeroone') {
                    452:            tablestart('Floating point number between zero and one');
                    453:         }
                    454:         if (pscat=='any') {
                    455:            tablestart('Floating point number');
                    456:         }
                    457:         choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
                    458:         choicewrite('<input name=floatval size=10 value="'+svalue+
                    459:                     '" name=floatval onChange="parent.floateval()">');
                    460:         choicewrite('</td></table>');
                    461:       }
1.1       www       462:    }
                    463: 
1.6       www       464:    if (ptype=='string') {
                    465:       if (pscat=='default') {
                    466:          tablestart('Default value or none');
                    467:          choicewrite('</table>');         
                    468:       } else {
                    469:         if (pscat=='any') {
                    470:            tablestart('Text');
                    471:         }
                    472:         choicewrite('<tr bgcolor="#AAFFAA"><td>Value:</td><td colspan=2>');
                    473:         choicewrite('<input name=intval size=20 value="'+svalue+
                    474:                     '" name=stringval onChange="parent.stringeval()">');
                    475:         choicewrite('</td></table>');
                    476:       }
1.1       www       477:    }
                    478: 
                    479:    choicewrite('</table></form>');
                    480:    choiceend();
                    481: }
                    482: 
                    483: function sopt(va,text) {
                    484:    selwrite('<option value="'+va+'"');
1.2       www       485:    if (va==pscat) {
1.1       www       486:      selwrite(' selected');
                    487:    }
                    488:    selwrite('>'+text+'</option>');
                    489: }
                    490: 
                    491: function catchange() {
                    492:    var sform=selector.document.forms.fsel.fcat;
1.2       www       493:    pscat=sform.options[sform.selectedIndex].value;
1.1       www       494:    draw();
                    495: }
                    496: 
                    497: function assemble() {
1.2       www       498:     if ((ptype=='date') && (pscat!='interval')) {
                    499:         svalue=Math.round(cdate.getTime()/1000);
                    500:     }
1.12      www       501:     if (ptype=='tolerance') {
                    502:        if (pscat=='relative_sym') {
                    503:           svalue=choices.document.forms.sch.val2.value+'%';
                    504:           if (choices.document.forms.sch.val3.checked) {
                    505:              svalue+='+';
                    506:           }
                    507:        }
                    508:        if (pscat=='absolute_sym') {
                    509:           svalue=choices.document.forms.sch.val2.value;
                    510:           if (choices.document.forms.sch.val3.checked) {
                    511:              svalue+='+';
                    512:           }
                    513:        }
                    514:        if (pscat=='absolute') {
                    515:           svalue=choices.document.forms.sch.val2.value;
                    516:           if (choices.document.forms.sch.val3.checked) {
                    517:              svalue+='+';
                    518:           }
                    519:           svalue+=','+choices.document.forms.sch.val4.value;
                    520:           if (choices.document.forms.sch.val5.checked) {
                    521:              svalue+='+';
                    522:           }
                    523:        }
                    524:        if (pscat=='relative') {
                    525:           svalue=choices.document.forms.sch.val2.value+'%';
                    526:           if (choices.document.forms.sch.val3.checked) {
                    527:              svalue+='+';
                    528:           }
                    529:           svalue+=','+choices.document.forms.sch.val4.value+'%';
                    530:           if (choices.document.forms.sch.val5.checked) {
                    531:              svalue+='+';
                    532:           }
                    533:        }
                    534:     }
1.6       www       535:     if (pscat=='default') { svalue=''; }
1.2       www       536:     stype=ptype+'_'+pscat;
1.1       www       537: }
                    538: 
                    539: 
                    540: function init() {
                    541:   var i;
1.2       www       542:   var subs=new Array();
1.1       www       543:   var namevalue=this.window.location.search.split('&');
                    544:   namevalue[0]=namevalue[0].substr(1,namevalue[0].length-1);
                    545: 
                    546:   for (i=0;i<namevalue.length;i++) {
                    547:      var pair=namevalue[i].split('=');
1.3       www       548:      pair[1]=unescape(pair[1]);
1.1       www       549:      if (pair[0]=='value') { pvalue=pair[1]; }
1.2       www       550:      if (pair[0]=='type') { subs=pair[1].split('_');
                    551:                             ptype=subs[0];
                    552:                             pscat=subs[1];
1.11      www       553:                             if (typeof(subs[2])!="undefined") { 
                    554:                                pscat+='_'+subs[2]; 
                    555:                             }
                    556:                             if ((pscat=='') || (typeof(pscat)=="undefined")) { 
1.6       www       557:                                pscat='default';
                    558:                             }
1.2       www       559:                            }
1.1       www       560:      if (pair[0]=='return') { preturn=pair[1]; }
                    561:      if (pair[0]=='call') { pcode=pair[1]; }
1.2       www       562:      if (pair[0]=='marker') { pmarker=pair[1]; }
1.1       www       563:      if (pair[0]=='name') { pname=pair[1]; }
                    564:   }
                    565: 
                    566:   svalue=pvalue;
1.6       www       567:   if (((ptype=='float') || (ptype=='string') || (ptype=='int')) &&
                    568:       (pscat=='default') && 
1.11      www       569:       (typeof(svalue)!="undefined") && 
                    570:       (svalue!=0) && (svalue!='')) { pscat='any'; }
1.1       www       571: 
1.13    ! www       572:   if (ptype=='tolerance') {
        !           573:      var tperc=0;
        !           574:      var trange=0;
        !           575:      if (typeof(svalue)!='undefined') {
        !           576:         if (svalue.indexOf('%')!=-1) { tperc=1;  }
        !           577:         if (svalue.indexOf(',')!=-1) { trange=1; }
        !           578:         if (trange) {
        !           579:            if (tperc) { pscat='relative'; } else { pscat='absolute'; }
        !           580:         } else {
        !           581:            if (tperc) { pscat='relative_sym'; } else { pscat='absolute_sym'; }
        !           582:         }
        !           583:      }
        !           584:   }
        !           585: 
1.1       www       586:   this.window.selector.document.clear();
                    587:   selwrite('<html><body bgcolor="#FFFFFF">');
                    588: 
1.8       www       589:   selwrite('<form name="fsel"><b>'+pname+'</b><br>');
1.1       www       590:   selwrite('<select name="fcat" onChange="parent.catchange();">');
1.12      www       591: 
1.1       www       592:   if (ptype=='tolerance') {
                    593:      sopt('default','Default');
                    594:      sopt('relative_sym','Relative Tolerance, Symmetric (percent)');
                    595:      sopt('relative','Relative Tolerance (percentages)');
                    596:      sopt('absolute_sym','Absolute Tolerance, Symmetric (value)');
                    597:      sopt('absolute','Absolute Tolerance (values)');
                    598:   }
                    599: 
                    600:   if (ptype=='date') {
                    601:      sopt('default','Default');
                    602:      sopt('start','Starting Date');
                    603:      sopt('end','Ending Date');
1.2       www       604:      sopt('interval','Time Interval');
                    605:      
1.11      www       606:      if ((pvalue!='') && (typeof(pvalue)!="undefined")) {
1.2       www       607:         cdate.setTime(pvalue*1000);
                    608:      }
                    609:  
                    610:      months[0]='January';
                    611:      months[1]='February';
                    612:      months[2]='March';
                    613:      months[3]='April';
                    614:      months[4]='May';
                    615:      months[5]='June';
                    616:      months[6]='July';
                    617:      months[7]='August';
                    618:      months[8]='September';
                    619:      months[9]='October';
                    620:      months[10]='November';
                    621:      months[11]='December';
1.1       www       622:   }
1.2       www       623:    
1.6       www       624:   if (ptype=='int') {
                    625:      sopt('default','Default');
                    626:      sopt('pos','Positive Integer, Not Zero');
                    627:      sopt('zeropos','Positive Integer or Zero');
1.13    ! www       628:      sopt('inrange','Integer in Range');
        !           629:      sopt('range','Range of Integers');
1.6       www       630:      sopt('any','Integer');
1.1       www       631:   }
                    632: 
1.6       www       633:   if (ptype=='float') {
                    634:      sopt('default','Default');
                    635:      sopt('zeroone','Floating Point between 0 and 1');
                    636:      sopt('pos','Positive Floating Point');
                    637:      sopt('any','Floating Point');
1.1       www       638: 
                    639:   }
                    640: 
1.6       www       641:   if (ptype=='string') {
                    642:      sopt('default','Default');
                    643:      sopt('string','String Value');
1.1       www       644:   }
                    645: 
                    646:   selwrite('</select></form>');
                    647: 
1.2       www       648:   selwrite('<a href="javascript:parent.assemble();');
1.1       www       649:   if (preturn!='') {
1.4       www       650:      selwrite(
                    651:       'parent.opener.document.'+preturn+'_value.value=parent.window.svalue;');
                    652:      selwrite(
                    653:       'parent.opener.document.'+preturn+'_type.value=parent.window.stype;');
1.2       www       654:   }
                    655:   if (pmarker!='') {
1.4       www       656:      selwrite(
                    657:      'parent.opener.document.'+preturn+'_marker.value=parent.window.pmarker;');
1.1       www       658:   }
                    659:   if (pcode!='') {
1.4       www       660:      selwrite('parent.opener.'+pcode+'();');
1.1       www       661:   }
1.4       www       662:   selwrite('">Store</a>&nbsp;&nbsp;');
1.5       www       663: 
                    664:   selwrite('<a href="javascript:');
                    665:      selwrite(
                    666:       'parent.opener.document.'+preturn+'_value.value='+"'';");
                    667:   if (pmarker!='') {
                    668:      selwrite(
                    669:      'parent.opener.document.'+preturn+'_marker.value=parent.window.pmarker;');
                    670:   }
                    671:   if (pcode!='') {
                    672:      selwrite('parent.opener.'+pcode+'();');
                    673:   }
                    674:   selwrite('">Delete</a>&nbsp;&nbsp;');
1.4       www       675:  
                    676:   selwrite('<a href="javascript:');
                    677:   if (preturn!='') {
                    678:      selwrite('parent.opener.document.'+preturn+'_value.value='+"'';");
                    679:      selwrite('parent.opener.document.'+preturn+'_type.value='+"'';");
                    680:   }
                    681:   if (pmarker!='') {
                    682:      selwrite('parent.opener.document.'+preturn+'_marker.value='+"'';");
                    683:   }
                    684:   if (pcode!='') {
                    685:      selwrite('parent.opener.'+pcode+'();');
                    686:   }
                    687:   selwrite('">Cancel</a>'); 
1.1       www       688:  
                    689:   selwrite('</body></html>');
                    690:   this.window.selector.document.close();
1.2       www       691:   draw();
1.1       www       692:   
                    693: }
                    694: 
                    695: </script>
                    696: 
1.2       www       697: <frameset rows="120,*" onLoad="init();">
1.1       www       698: <frame name=selector src="empty.html">
                    699: <frame name=choices src="empty.html">
                    700: </frameset>
                    701: 
                    702: 
                    703: 
                    704: </html>

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