Annotation of doc/loncapafiles/removenolongerused.piml, revision 1.13

1.1       raeburn     1: <piml>
                      2: <targetroot>/</targetroot>
                      3: <files>
                      4: <file>
                      5: <target dist="default"></target>
                      6: <perlscript mode="fg">
                      7: 
1.2       raeburn     8: use File::Path();
1.1       raeburn     9: 
                     10: my @rcgifs = qw(anno.gif anot.gif anot2.gif back.gif bchat.gif bkm.gif blog.gif brws.gif catalog.gif ccat.gif ccrs.gif chrt.gif clst.gif com.gif conf.gif courses.gif cprv.gif cstr.gif del.gif docs.gif egrd.gif enrl.gif eval.gif fdbk.gif forw.gif grds.gif grps.gif keys.gif ledsend.gif list.gif logout.gif mail.gif mcrs.gif mrk.gif nav.gif new.gif parm.gif pcsrt.gif pcstr.gif pdfupload.gif pgrd.gif port.gif pparm.gif pref.gif prt.gif pub.gif rcrs.gif reload.gif remotebg.gif res.gif roles.gif rsrv.gif rtrv.gif sbkm.gif sctr.gif spacer.gif sprs.gif src.gif srvr.gif stat.gif subm.gif title.gif vbkm.gif);
                     11: 
                     12: my %paths = (
                     13:               'londaemons' =&gt; '/home/httpd/perl',
                     14:               'apache'     =&gt; '/home/httpd/lib/perl/Apache',
                     15:               'londocroot' =&gt; '/home/httpd/html',
                     16:               'rcgifs'     =&gt; '/home/httpd/html/res/adm/pages',
1.9       raeburn    17:               'debug'      =&gt; '/home/httpd/perl/debug',
1.1       raeburn    18:             );
                     19:  
                     20: my %files = (
1.5       raeburn    21:               'londaemons' =&gt; ['lonManage','lchtmldir','lonhttpd','lcuseradd','lonc'],
1.1       raeburn    22:               'apache'     =&gt; ['londropadd.pm','lonconstruct.pm',
1.6       raeburn    23:                                'lonremote.pm','admbookmarks.pm','lonassignments.pm'],
1.1       raeburn    24:               'londocroot' =&gt; ['adm/rat/extpickcode.html',
                     25:                                'adm/rat/extpickframe.html',
                     26:                                'res/adm/pages/imgmaps.html',
                     27:                                'res/adm/pages/menu.html',
1.7       raeburn    28:                                'res/adm/pages/homeworkmenu.html',
                     29:                                'adm/help/gif/vbkm.gif',
                     30:                                'adm/help/eps/vbkm.eps'],
1.9       raeburn    31:               'debug'      =&gt; ['archive_coursedata_tables.pl'],
1.1       raeburn    32:             );
                     33: 
                     34: my %dirs = (
1.10      raeburn    35:               'londocroot' =&gt; ['adm/lonLCDfont',
                     36:                                   'htmlarea',
1.12      raeburn    37:                                   'res/adm/pages/bookmarkmenu',
1.13    ! raeburn    38:                                   'res/adm/pages/reactionresponse',
        !            39:                                   'adm/jsMath'],
1.1       raeburn    40:            );
                     41: 
                     42: my %multis = (
1.8       raeburn    43:                 'rcgifs'     =&gt; \@rcgifs,
1.1       raeburn    44:              ); 
                     45: my @filestodelete = ();
                     46: my @dirstodelete = ();
                     47: my @multistodelete = ();
                     48: my @gifstodelete = ();
                     49: foreach my $key (sort(keys(%files))) {
                     50:     if ($paths{$key} ne '') {
                     51:         if (ref($files{$key}) eq 'ARRAY') {
                     52:             foreach my $file (@{$files{$key}}) {
1.10      raeburn    53:                 if (($file ne '') && (-f $paths{$key}.'/'.$file)) {
1.1       raeburn    54:                     push(@filestodelete,$paths{$key}.'/'.$file);
                     55:                 }
                     56:             }
                     57:         }
                     58:     }
                     59: }
                     60: 
                     61: foreach my $key (sort(keys(%dirs))) {
                     62:     if ($paths{$key} ne '') {
                     63:         if (ref($dirs{$key}) eq 'ARRAY') {
                     64:             foreach my $dir (@{$dirs{$key}}) {
1.10      raeburn    65:                 if (($dir ne '') && (-d $paths{$key}.'/'.$dir)) {
1.1       raeburn    66:                     push(@dirstodelete,$paths{$key}.'/'.$dir);
                     67:                 }
                     68:             }
                     69:         }
                     70:     }
                     71: }
                     72: 
                     73: foreach my $key (sort(keys(%multis))) {
                     74:     if ($paths{$key} ne '') {
                     75:         if (ref($multis{$key}) eq 'ARRAY') {
                     76:             foreach my $file (@{$dirs{$key}}) {
                     77:                 if (-f $paths{$key}.'/'.$file) {
                     78:                     push(@multistodelete,$paths{$key}.'/'.$file);
                     79:                     push(@gifstodelete,$file);
                     80:                 }
                     81:             }
                     82:         }
                     83:     }
                     84: }
                     85: 
                     86: if (@dirstodelete > 0) {
                     87:     print "\nThe following directories were installed for an earlier version of LON-CAPA, and are no longer needed. It is recommended that you delete them. For each one, enter Y if you would the directory to be deleted.\n\n";
                     88:     foreach my $dir (@dirstodelete) {
1.2       raeburn    89:         next if (($dir =~/\*/) || ($dir eq '') || ($dir eq '/'));  
1.1       raeburn    90:         print "$dir  -- delete? Enter: Y or N:\n";
                     91:         my $choice=&lt;&gt;;
                     92:         chomp($choice);
1.3       raeburn    93:         $choice =~ s/\s+//g;
1.2       raeburn    94:         if ($choice eq 'Y') {
1.11      raeburn    95:             File::Path::rmtree($dir);
1.1       raeburn    96:         }
                     97:     }
                     98: }
                     99: 
                    100: if (@filestodelete > 0) {
                    101:    print "\nThe following files were installed for an earlier version of LON-CAPA, and are no longer needed. It is recommended that you delete them. For each one, enter Y if you would the file to be deleted.\n\n";
                    102:     foreach my $file (@filestodelete) {
1.2       raeburn   103:         next if (($file =~/\*/) || ($file eq '') || ($file eq '/'));
1.1       raeburn   104:         print "$file -- remove? Enter? Y or N:\n";
                    105:         my $choice=&lt;&gt;;
                    106:         chomp($choice);
1.2       raeburn   107:         $choice =~ s/\s+//g;
                    108:         if ($choice eq 'Y') {
1.1       raeburn   109:             unlink($file);
                    110:         }
                    111:     }
                    112: }
                    113: 
                    114: if (@multistodelete > 0) {
                    115:     my $num = scalar(@multistodelete);
                    116:     print "\nThe following $num gif image files were installed in $paths{rcgifs}/ for use with the LON-CAPA Remote Control (available in an earlier version of LON-CAPA), and now no longer used:\n".join(' ',@gifstodelete)."\n".
                    117:           "Enter Y if you would all $num files to be deleted.\n\n".
                    118:           "Remove? Y or N:\n";
                    119:     my $choice=&lt;&gt;;
                    120:     chomp($choice);
1.2       raeburn   121:     $choice =~ s/\s+//g;
                    122:     if ($choice eq 'Y') {
1.1       raeburn   123:         foreach my $item (@multistodelete) {
1.8       raeburn   124:             next if (($item =~/\*/) || ($item eq '') || ($item eq '/'));
1.1       raeburn   125:             unlink($item);
                    126:         }
                    127:     }
                    128: }
                    129: 
                    130: </perlscript>
                    131: </file>
                    132: </files>
                    133: </piml>

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