--- rat/client/Attic/code.html 2000/06/08 16:19:50 1.4 +++ rat/client/Attic/code.html 2001/03/12 15:35:55 1.17 @@ -9,8 +9,8 @@ Resource Assembly Tool 1/7,1/8,1/10,1/14,1/15,1/16,1/21,1/22,1/29,1/30,1/31, 2/2,2/3,2/10,2/12,2/13,2/14,2/15,2/17,2/18,2/19,2/20,2/21,2/22, 5/2,5/3,5/4,5/5,5/6,5/8,5/9,5/13,5/18,5/20,5/22,5/24,5/25, -6/7,6/8 -Gerd Kortemeyer with Scott Harrison +6/7,6/8,6/9,6/10,6/12,6/15,7/4,7/26,7/28,7/31,8/5,8/19,8/24, +01/17/01,03/03,03/05 Gerd Kortemeyer with Scott Harrison --> @@ -21,7 +21,7 @@ var row=new Array(); var maxrow=-1; var col=new Array(); var maxcol=-1; -var lastempty=-2; + var colmap=new Array(); var colmap2=new Array(); var colmap3=new Array(); @@ -30,6 +30,7 @@ var colmap5=new Array(); var colmap6=new Array(); var obj=new Array(); var objcont=new Array(); +var objparms=new Array(); var objlinks=new Array(); var rowcont=new Array(); var rowtype=new Array(); @@ -47,6 +48,7 @@ var notclear=0; var linkmode=0; var lastinfo=''; var graphdef='no'; +var mode=''; var mainrun=0; var tablemode=0; var mostrecent=0; @@ -55,18 +57,29 @@ var zscale=3; var disrows=0; var discols=0; +var finishdone=0; +var tim=0; +var funny='|'; +var reqaction=''; +var canceltim; + +var expense=0; + var data1=new Array(1024); var data2=new Array(1024); var data3=new Array(1024); var data4=new Array(1024); var data5=new Array(1024); +var inf; +var srch; // ------------------------------------------------ Insert a row into the table function insertrow(j,ex1,ex2) { var kj; stored=0; + expense++; expense++; objects1=''; objects2=''; for (kj=0;kj<=maxrow;kj++) { @@ -81,7 +94,7 @@ function insertrow(j,ex1,ex2) { objects=objects1+':'+objects2; data1=objects.split(':'); for (kj=0;kjj ) { col[kj]++; } } maxcol++; + expense++; expense++; col[maxcol]=j+1; } @@ -244,7 +258,7 @@ function maprow (jid,obj1,ign) { var j; var k; var left; var right; var middle; middle=-1; for (j=0;j<=maxcol;j++) { colmap[j]=0; } - if (rowcont[jid]!='') { + if ((rowcont[jid]!='') && (rowcont[jid]!=undefined)) { data2=rowcont[jid].split(':'); for (j=0;j'); - if (what!='') { - if (obj1!='') { + if ((what!='') && (what!=undefined)) { + if ((obj1!='') && (obj1!=undefined)) { obj1="'"+obj1+"'"; parent.mapout.document.write (''); } else { - parent.mapout.document.write - (''); + if (what=='rs:') { + parent.mapout.document.write + (''); + } else { + if (what=='rf:') { + parent.mapout.document.write + (''); + } else { + parent.mapout.document.write + (''); + } + } } } - if (obj1!='') { + if ((obj1!='') && (obj1!=undefined)) { parent.mapout.document.write(''); } } else { @@ -887,7 +979,7 @@ function rescolor (ext,typ) { if (ext=='true') { bc='55'; } else { bc='99'; } if (typ=='mandatory') { rc='FF'; } else { rc='BB'; } if (typ=='optional') { gc='BB'; } else { gc='FF'; } - if ((typ=='start') || (typ=='end')) { rc='AA'; gc='AA'; bc='FF'; } + if ((typ=='start') || (typ=='finish')) { rc='AA'; gc='AA'; bc='FF'; } return '#'+rc+gc+bc; } @@ -902,7 +994,7 @@ function condcolor(typ) { // ----------------------------------------------------------------- Draw a row function drawrow (jid) { -var j; var jk; var k; var ck; +var j; var jk; var k; var ck; var rtype; var objd1=new Array(); var objd2=new Array(); var notempty=new Array(); @@ -915,12 +1007,13 @@ if (rowtype[jid]!=0) { } parent.mapout.document.writeln(''); - if (rowcont[jid]!='') { + if ((rowcont[jid]!='') && (rowcont[jid]!=undefined)) { data2=rowcont[jid].split(':'); for (jk=0;jkmiddle) { for (k=middle+1;kleftin;k--) { - if (colmap4[k]!='') { + if ((colmap4[k]!='') && (colmap4[k]!=undefined)) { colmap[k]='lrt'; } else { colmap[k]='lr'; @@ -993,7 +1094,7 @@ if (rowtype[jid]!=0) { if (rightoutmiddle) { - if (colmap3[middle]!='') { + if ((colmap3[middle]!='') && (colmap3[middle]!=undefined)) { colmap2[middle]='rtdl'; } else { colmap2[middle]='rtl'; @@ -1002,7 +1103,7 @@ if (rowtype[jid]!=0) { } if (leftoutleftout;k--) { - if (colmap3[k]!='') { + if ((colmap3[k]!='') && (colmap3[k]!=undefined)) { colmap2[k]='rld'; } else { colmap2[k]='rl'; @@ -1012,7 +1113,7 @@ if (rowtype[jid]!=0) { } if (rightout>middle) { for (k=middle+1;k'); - parent.mapout.document.writeln(''); + parent.mapout.document.writeln(''); for (k=0;k<=maxcol;k++) { drawcell(1,coltype[rcol[k]],colmap2[k],colmap5[k],objd2[k],jid,k, notempty[k]); } parent.mapout.document.writeln(''); - parent.mapout.document.writeln(''); + parent.mapout.document.writeln(''); for (k=0;k<=maxcol;k++) { drawcell(1,coltype[rcol[k]],colmap3[k],colmap6[k],objd2[k],jid,k, notempty[k]); @@ -1125,7 +1226,7 @@ function draw () { parent.mapout.document.writeln( ''); - for (kr=0;kr<=maxrow;kr++) { + for (kr=0;kr<=maxrow;kr++) { message("Generating Output Row "+kr); drawrow(rrow[kr]); } @@ -1153,8 +1254,7 @@ function draw () { function infoclear() { if (notclear!=1) { - var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300"; - var inf=open("","infout",options); + infcheck(); inf.document.clear(); inf.document.writeln ('
'+ @@ -1182,20 +1282,34 @@ function infoclear() { } inf.document.writeln('
'); inf.document.close(); - parent.focus(); + parent.top.focus(); parent.mapout.focus(); notclear=1; lastinfo=''; } } +// ------------------------------------------------------------ Open inf window + +function infopen() { + var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300"; + inf=open("","infout",options); +} + +// -------------------------------------------------------- Do inf status check + +function infcheck() { + if (inf.closed) { + infopen(); + } +} + // --------------------------------------------------- Prints out resource info function info(infostr) { if ((editmode!=1) && (infostr!=lastinfo)) { notclear=1; - var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300"; - var inf=open("","infout",options); + infcheck(); inf.document.clear(); inf.document.writeln( ''+ @@ -1225,7 +1339,15 @@ function info(infostr) { data2=objcont[data1[1]].split(':'); inf.document.write(''); if (data2[2]=='true') { inf.document.write('External '); } - inf.document.write('Resource'); + if (data2[3]=='start') { + inf.document.writeln('Start'); + } else { + if (data2[3]=='finish') { + inf.document.writeln('Finish'); + } else { + inf.document.writeln('Resource'); + } + } if (data2[3]=='mandatory') { inf.document.write(' (Mandatory)'); } @@ -1253,7 +1375,7 @@ function info(infostr) { } inf.document.writeln(''); inf.document.close(); - parent.focus(); + parent.top.focus(); parent.mapout.focus(); notclear=0; lastinfo=infostr; @@ -1285,6 +1407,8 @@ function insertreslink(infostr) { var tobj; var nobj; var cobj; + var cid; + var rid; data1=infostr.split('&'); data2=obj[data1[0]].split('&'); lnr=data2[data2.length-2]; @@ -1302,18 +1426,113 @@ function insertreslink(infostr) { dellink(lnr); newresource(rid,cid,'','','false','normal'); nobj=obj.length-1; + save(); + joinres(fobj,nobj,cobj); + save(); + joinres(nobj,tobj,0); +} + +// -------------------------------------------- Insert resource after condition + +function insertcondlink(cid,lnr) { + var fobj; + var tobj; + var nobj; + var cobj; + data3=objlinks[lnr].split(':'); + fobj=data3[0]; + tobj=data3[1]; + cobj=data3[2]; + rid=(obj[fobj].split('&'))[1]; + insertrow(row[rid]); + dellink(lnr); + newresource(maxrow,cid,'','','false','normal'); + nobj=obj.length-1; + save(); joinres(fobj,nobj,cobj); + save(); joinres(nobj,tobj,0); } + + + +// ------------------------------------------------------- Clears search window + +function srchclear() { + srch.document.clear(); +} + +// ------------------------------------------------------- Closes search window + +function srchclose() { + srch.close(); +} + +// --------------------------------------------------------- Open search window + +function srchopen() { + var options="scrollbars=1,resizable=1,menubar=0"; + srch=open("","srchout",options); + srchclear(); + srch.document.writeln( + '
'+ + ''+ + ''+ + ''+ + '
Resource Library Search
'+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '
title
author
subject
notes
abstract
mime
language
creationdate
lastrevisiondate
owner
copyright
'+ + ''+ + '
'); +} + +// -------------------------------------------- Interface function to searching + +function search() { + alert("Searching not yet implemented"); +} + +// ------------------------------------------------------- Do srch status check + +function srchcheck() { + if (srch.closed) { + srchopen(); + } +} + // ---------------------------------------------------- Handles "click to edit" function handler(infostr) { var k; editmode=1; notclear=1; - var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300"; - var inf=open("","infout",options); + infcheck(); inf.document.clear(); inf.document.writeln( ''+ @@ -1366,6 +1585,13 @@ function handler(infostr) { 'Delete Link'); + + inf.document.writeln('
Insert Resource Into Link'); + + } else { if (data1[0]=='r') { if (linkmode!=0) { @@ -1376,18 +1602,28 @@ function handler(infostr) { inf.document.writeln('Linked Resources'); draw(); } else { - inf.document.writeln('Resource'); data2=objcont[data1[1]].split(':'); + if (data2[3]=='start') { + inf.document.writeln('Start'); + } else { + if (data2[3]=='finish') { + inf.document.writeln('Finish'); + } else { + inf.document.writeln('Resource'); + } + } inf.document.write( - '
Title:' + ''); + if ((data2[3]!='start') && (data2[3]!='finish')) { + inf.document.write('' +'' - +'' + +'' - +''); + } + inf.document.writeln( + '
Title:' +'
URL:' + +data2[0]+'">
URL:' +'
External:
Search
' + +' Mandatory   Optional
Change to above values  ' +' Reset' +'
'); + if ((data2[3]!='start') && (data2[3]!='finish')) { inf.document.writeln( 'Delete Resource (preserving links)'); + } + if (data2[3]!='finish') { inf.document.writeln( '
Link Resource'); + } + inf.document.writeln( + '
Set Parameters'); + } } else { linkmode=0; @@ -1457,8 +1708,7 @@ function empty(rid,k) { editmode=1; notclear=1; linkmode=0; - var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300"; - var inf=open("","infout",options); + infcheck(); inf.document.clear(); inf.document.writeln( ''+ @@ -1471,7 +1721,8 @@ function empty(rid,k) { 'opener.editmode=0;opener.notclear=0;opener.infoclear();opener.draw(' +');">Insert resource'); - if ((mostrecent!=0) && (objcont[mostrecent]!='')) { + if ((mostrecent!=0) && (objcont[mostrecent]!='') && + (objcont[mostrecent]!=undefined)) { inf.document.writeln('
'+obj[k]; } @@ -1593,11 +1844,12 @@ function graphreset() { insertcol(-1); objcont[0]=''; - objcont[1]='Start::false:start:res' - objcont[2]='Finish::false:end:res'; objlinks[0]=''; - objlinks[1]='1:2:0'; - + if (((objcont[1]==undefined)&&(objcont[2]==undefined)) || + ((objcont[1]=='')&&(objcont[2]==''))) { + objcont[1]='Start::false:start:res' + objcont[2]='Finish::false:finish:res'; + } graphdef='no'; } @@ -1633,8 +1885,8 @@ function tabledraw() { var cck; var condid; var sortstr=sortobjs(); - insrestab(1,-1,-1); - if (sortstr!='') { + insrestab(1,-1,-1,''); + if ((sortstr!='') && (sortstr!=undefined)) { objsorted=sortstr.split('&'); for (k=0;k'); data2=obj[i].split('&'); parent.mapout.document.write(''); + if (data1[3]=='start') { + parent.mapout.document.writeln(''); + } + if (data1[3]=='finish') { + parent.mapout.document.writeln(''); + } parent.mapout.document.write( ''); + +data1[0]+'">'); + if ((data1[3]!='start') && (data1[3]!='finish')) { parent.mapout.document.write( '' +'' - +'' - +''); + } + parent.mapout.document.write( + ''); + 'Link resource'); + } + parent.mapout.document.writeln( + '
Set Parameters'); + parent.mapout.document.writeln(''); parent.mapout.document.writeln('
Start
Finish
Title:
URL:
External:
Optional
' + +'
' +'Change to above values  ' +' Reset
' -+'Reset
'); + if ((data1[3]!='start') && (data1[3]!='finish')) { + parent.mapout.document.writeln( + '' +'Delete Resource (cutting links)
' +'' -+'Delete Resource (preserving links)
' - +''+ - 'Link resource
'); for (j=2;j
'); - insrestab(rrow[data2[1]],i,nr); + insrestab(rrow[data2[1]],i,nr,data1[3]); } } @@ -1760,28 +2035,31 @@ function tabledraw() { // ----------------------------------------------------- Insert Resource Output -function insrestab(irow,be,af) { +function insrestab(irow,be,af,typ) { parent.mapout.document.writeln('
'+ '
' +'Insert resource'); - if (be!=-1) { + if ((be!=-1) && (typ!='finish')) { parent.mapout.document.writeln( '' +'Insert resource linked to from above
'); } - if ((be!=-1) && (af!=-1)) { + if ((be!=-1) && (af!=-1) && (typ!='finish')) { parent.mapout.document.writeln( '' +'Insert resource linked to from above and linking to below
'); @@ -1791,6 +2069,7 @@ function insrestab(irow,be,af) { '' +'Insert resource linking to below
'); @@ -1811,7 +2090,7 @@ function simpletabledraw() { var cck; var condid; var sortstr=sortobjs(); - if (sortstr!='') { + if ((sortstr!='') && (sortstr!=undefined)) { objsorted=sortstr.split('&'); for (k=0;k'); data2=obj[i].split('&'); parent.mapout.document.write(''); + if (data1[3]=='start') { + parent.mapout.document.writeln(''); + } + if (data1[3]=='finish') { + parent.mapout.document.writeln(''); + } parent.mapout.document.write( ''); parent.mapout.document.write( @@ -1883,7 +2168,7 @@ function simpletabledraw() { // ---------------------------------- Sort objects to straighten graph or table function sortobjs() { - message("Sorting Resources"); + message("Sorting Resources: "+funny); var k; var ij; var dol; @@ -1901,7 +2186,9 @@ function sortobjs() { } if (objsort.length==0) { return ''; } for (k=1;kallcolmax) { allcolmax=thiscolmax; } thiscolmax=1; } kj=rowcont.length-1; - obj[thisnewobj]='b&'+kj+'&'+thiscolmax+':0:0:0'; + obj[thisnewobj]='b&'+kj+'&'+thiscolmax+':0:0:0'; + if (thiscolmax>allcolmax) { allcolmax=thiscolmax; } } for (k=0;k
Start
Finish
Title:'+data1[0]+'