--- rat/lonratedt.pm 2006/11/02 21:03:28 1.84
+++ rat/lonratedt.pm 2009/01/20 16:38:49 1.92
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Edit Handler for RAT Maps
#
-# $Id: lonratedt.pm,v 1.84 2006/11/02 21:03:28 albertel Exp $
+# $Id: lonratedt.pm,v 1.92 2009/01/20 16:38:49 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -29,154 +29,16 @@
package Apache::lonratedt;
-=pod
-
-=head1 NAME
-
-Apache::lonratedt: simple resource assembly tool
-
-=head1 SYNOPSIS
-
-lonratedt provides the routines and the handler for the Advanced
- Resource Assembly Tool (RAT), and ties the various pieces together
- with Javascript.
-
-=head1 OVERVIEW
-
-=head2 Map Representation
-
-=begin latex
-
-%
-\begin{figure}
-\begin{center}\includegraphics[%
- width=0.55\paperwidth,bb = 0 0 200 100, draft, type=eps]{Map_Example}\end{center}
-
-
-\caption{\label{Map_In_Advanced_Editor}Example of a Map in the Advanced Editor}
-\end{figure}
-%
-\begin{figure}
-\begin{lyxcode}
-
-\end{lyxcode}
-
-\caption{\label{XML}XML for Map in Figure \ref{Map_In_Advanced_Editor}}
-\end{figure}
-
-=end latex
-
-Fig. "XML for Map in Figure" shows the XML representation of the
-resource map shown in Fig. "Example of a Map in the Advanced Editor",
-which is the format in which maps are stored. In the figure, however,
-additional graphical map layout information generated by the Advanced
-Resource Assembly Tool is not displayed. This graphical information is
-optional to re-generate the same graphical layout when the map is
-brought up again in the Resource Assembly Tool, and is not needed for
-any other system functionality.
-
-Maps can be generated by tools other than the Resource Assembly
-Tool. In particular, an author might have some other representation of
-a course sequence, which can be converted into a map using scripts. If
-this map then were to be brought up in the Resource Assembly Tool, the
-Tool would automatically generate a graphical layout for it. Each
-entry of the map (resources, conditions and links) is stored in a
-separate tag.
-
-Resources and conditionsX have to have unique ID
-numbers. These numbers are automatically generated by the Resource
-Assembly Tool when the entry is first created, or added to the entries
-when a map generated outside the Resource Assembly Tool is first
-retrieved. They can also be assigned by custom scripts or added in by
-hand.
-
-In the XML example, entry 1 is the start resource of the map. When
-this map is accessed, the source (src) URL of this tag will be the
-first resource rendered. Entry 2 is the finish resource of this
-map. This resource will be the last resource in the sequence of
-resources. Entry 6 is a problem resource with the given URL and title,
-as well as the priority "mandatory". Entry 19 is a condition, which is
-used by the link between entries 6, the problem, and 9, a
-sequence. I
-
-=cut
-
use strict;
use Apache::Constants qw(:common);
use Apache::lonnet;
-use Apache::lonratsrv;
-use Apache::lonsequence;
-use Apache::loncommon;
+use Apache::lonsequence();
+use Apache::loncommon();
use Apache::lonlocal;
use LONCAPA::map();
use File::Copy;
-use lib '/home/httpd/lib/perl/';
use LONCAPA;
-
-
+use HTML::Entities();
# --------------------------------------------------------- Build up RAT screen
sub ratedt {
@@ -277,7 +139,7 @@ function idxopen(mode) {
var options="scrollbars=1,resizable=1,menubar=0,location=1,toolbar=1";
idxmode=mode;
idxflag=1;
- idx=open('$resurl/?launch=1&mode=$mode&catalogmode='+mode,'idxout',options);
+ idx=open('$resurl/?inhibitmenu=yes&launch=1&mode=$mode&catalogmode='+mode,'idxout',options);
idx.focus();
}
@@ -285,7 +147,7 @@ function idxopen(mode) {
function groupopen(url,recover,bookmarks) {
var options="scrollbars=1,resizable=1,menubar=0";
idxflag=1;
- idx=open("/adm/groupsort?mode=$mode&recover="+recover+"&readfile="+url+"&bookmarks="+bookmarks,"idxout",options);
+ idx=open("/adm/groupsort?inhibitmenu=yes&mode=$mode&recover="+recover+"&readfile="+url+"&bookmarks="+bookmarks,"idxout",options);
idx.focus();
}
@@ -294,7 +156,7 @@ function srchopen(mode) {
var options="scrollbars=1,resizable=1,menubar=0";
srchmode=mode;
srchflag=1;
- srch=open("/adm/searchcat?launch=1&mode=$mode&catalogmode="+mode,"srchout",options);
+ srch=open("/adm/searchcat?inhibitmenu=yes&launch=1&mode=$mode&catalogmode="+mode,"srchout",options);
srch.focus();
}
// ----------------------------------------------------- launch indexer browser
@@ -329,6 +191,7 @@ function idxcheck(mode) {
if (editbrowser == null) {
url += 'launch=1&';
}
+ url += 'inhibitmenu=yes&';
url += 'catalogmode=interactive&';
url += 'mode=edit&';
url += 'form=' + formname + '&';
@@ -362,7 +225,7 @@ sub smpedt {
unless ($fatal) {
$targetmsg=''.&mt('Saved.').' ';
} else {
- $targetmsg=''.&mt('An error occured while saving.').' ';
+ $targetmsg=''.&mt('An error occurred while saving.').' ';
}
}
if ($env{'form.revert'}) {
@@ -605,10 +468,12 @@ sub smpedt {
my ($name,$url)=split(/\:/,$LONCAPA::map::resources[$_]);
unless ($name) { $name=(split(/\//,$url))[-1]; }
unless ($name) { $name='EMPTY'; }
+ $name = &LONCAPA::map::qtescape($name);
+ $url = &LONCAPA::map::qtescape($url);
$targetdetail.='&'.&escape($name).'='.
&escape($url);
$idx++;
- $name=~s/\:/\:/g;
+ $name = &HTML::Entities::encode($name,'\'"<>&');
'';
} @LONCAPA::map::order);
@@ -645,8 +510,6 @@ sub smpedt {
function openview(entry) {
var url=unescape((entry.split('='))[1]);
var parts=new Array;
- parts=url.split(':');
- url=parts.join(':');
if (url) { open(url,'cat'); }
}
@@ -665,12 +528,6 @@ sub smpedt {
var entry=(document.forms.simpleedit.targetdetail.value.split('&'))
[selidx];
var oldname=unescape((entry.split('='))[0]);
- var nameparts=oldname.split(':');
- oldname=unescape(nameparts.join(':'));
- nameparts=oldname.split('"');
- oldname=unescape(nameparts.join('"'));
- nameparts=oldname.split(''');
- oldname=unescape(nameparts.join("'"));
newtitle=prompt('$lt{'nt'}',oldname);
if (newtitle) {
document.forms.simpleedit.renameres.value=1;
@@ -736,7 +593,7 @@ $lt{'as'}
-