--- rat/lonratedt.pm	2002/10/11 14:00:42	1.38
+++ rat/lonratedt.pm	2002/12/06 12:58:11	1.42
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Edit Handler for RAT Maps
 #
-# $Id: lonratedt.pm,v 1.38 2002/10/11 14:00:42 www Exp $
+# $Id: lonratedt.pm,v 1.42 2002/12/06 12:58:11 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -329,7 +329,7 @@ sub startfinish {
        $resources[$#resources+1]='::false';
        $order[1]=$#resources;
    }
-   my ($name,$url,$ext)=split(/\:/,$resources[$order[$#order]]);
+   ($name,$url,$ext)=split(/\:/,$resources[$order[$#order]]);
    $resources[$order[$#order]]=$name.':'.$url.':'.$ext.':finish:res';
 }
 
@@ -686,7 +686,34 @@ sub smpedt {
        }
        &pastetarget($lastsel,@newsequence);
        &storemap(&Apache::lonnet::filelocation('',$url));
-# ------------------------------------------------ 
+# -------------------------------------------------------------------- Move up 
+   } elsif ($ENV{'form.moveup'}) {
+       foreach (sort @targetselect) {
+           if ($_-1>0) {
+              my $movethis=$order[$_-1];
+              $order[$_-1]=$order[$_-2];
+              $order[$_-2]=$movethis;
+	  }
+       }
+       &storemap(&Apache::lonnet::filelocation('',$url));
+# ------------------------------------------------------------------ Move down
+   } elsif ($ENV{'form.movedown'}) {
+       foreach (reverse sort @targetselect) {
+           if ($_-1<$#order) {
+              my $movethis=$order[$_-1];
+              $order[$_-1]=$order[$_];
+              $order[$_]=$movethis;
+	   }
+       }
+       &storemap(&Apache::lonnet::filelocation('',$url));
+# --------------------------------------------------------------------- Rename
+   } elsif ($ENV{'form.renameres'}) {
+       my $residx=$Apache::lonratedt::order[$ENV{'form.renameidx'}-1];
+       my ($name,@resrest)=split(/\:/,$Apache::lonratedt::resources[$residx]);
+       $name=$ENV{'form.renametitle'};
+       $name=~s/\:/\&colon\;/g;
+       $Apache::lonratedt::resources[$residx]=$name.':'.join(':',@resrest);
+       &storemap(&Apache::lonnet::filelocation('',$url));
    }
 # ------------------------------------------------------------ Assemble windows
    
@@ -707,6 +734,7 @@ sub smpedt {
    } split(/\&/,$importdetail));
 
    $idx=0;
+   $targetdetail='';
    my $targetwindow=       
        '<option value="0"> ------- Target Edit Map ------- </option>'.
      join("\n",map { 
@@ -748,6 +776,26 @@ sub smpedt {
                 [document.forms.simpleedit.importsel.selectedIndex]);
    }
 
+   function renametarget() {
+       var selidx=document.forms.simpleedit.target.selectedIndex;
+       var entry=(document.forms.simpleedit.targetdetail.value.split('&'))
+                [selidx];
+       var oldname=unescape((entry.split('='))[0]);
+       var nameparts=oldname.split('&colon;');
+       oldname=unescape(nameparts.join(':'));
+       nameparts=oldname.split('&#34;');
+       oldname=unescape(nameparts.join('"'));
+       nameparts=oldname.split('&#39;');
+       oldname=unescape(nameparts.join("'"));
+       newtitle=prompt('New Title',oldname);
+       if (newtitle) {
+           document.forms.simpleedit.renameres.value=1;
+           document.forms.simpleedit.renameidx.value=selidx;
+           document.forms.simpleedit.renametitle.value=newtitle;
+	   document.forms.simpleedit.submit();
+       }
+   }
+
 </script>
 </head>                 
 $bodytag
@@ -755,6 +803,9 @@ $buttons
 <font color=red>$errtext</font>
 <form name=simpleedit method=post>
 <input type=hidden name=forcesmp value=1>
+<input type=hidden name=renameres value=0>
+<input type=hidden name=renametitle value=''>
+<input type=hidden name=renameidx value=0>
 <table>
     <tr><th width="40%">Temporary Assembly Workspace</th>
 <th>&nbsp;</th>
@@ -779,6 +830,10 @@ value="Browse"><input type=submit name=l
 <input type=button onClick=
 "javascript:impfortarget.value=1;groupimport();" value="Import">
 after selected
+<hr>
+<input type=submit name="moveup" value="Move Up">
+<input type=submit name="movedown" value="Move Down">
+<input type=button onClick="javascript:renametarget()" value="Rename">
 <hr>$targetmsg
 <input type=submit name="revert" value="Revert to Last Saved">
 <input type=submit name="save" value="Save">