[LON-CAPA-cvs] cvs: loncom / loncapa_apache.conf /homework lonsimpleproblemedit.pm simpleproblem.problem structuretags.pm /interface londocs.pm doc/loncapafiles loncapafiles.lpml
www
lon-capa-cvs@mail.lon-capa.org
Mon, 07 Jul 2003 07:32:16 -0000
This is a MIME encoded message
--www1057563136
Content-Type: text/plain
www Mon Jul 7 03:32:16 2003 EDT
Added files:
/loncom/homework lonsimpleproblemedit.pm
Modified files:
/doc/loncapafiles loncapafiles.lpml
/loncom loncapa_apache.conf
/loncom/homework simpleproblem.problem structuretags.pm
/loncom/interface londocs.pm
Log:
Continued work on DOCS homework.
--www1057563136
Content-Type: text/plain
Content-Disposition: attachment; filename="www-20030707033216.txt"
Index: doc/loncapafiles/loncapafiles.lpml
diff -u doc/loncapafiles/loncapafiles.lpml:1.261 doc/loncapafiles/loncapafiles.lpml:1.262
--- doc/loncapafiles/loncapafiles.lpml:1.261 Sun Jul 6 06:40:35 2003
+++ doc/loncapafiles/loncapafiles.lpml Mon Jul 7 03:32:15 2003
@@ -2,7 +2,7 @@
"http://lpml.sourceforge.net/DTD/lpml.dtd">
<!-- loncapafiles.lpml -->
-<!-- $Id: loncapafiles.lpml,v 1.261 2003/07/06 10:40:35 www Exp $ -->
+<!-- $Id: loncapafiles.lpml,v 1.262 2003/07/07 07:32:15 www Exp $ -->
<!--
@@ -1616,6 +1616,15 @@
<categoryname>handler</categoryname>
<description>
Handler to put up syllabus
+</description>
+<status>works/unverified</status>
+</file>
+<file>
+<source>loncom/interface/lonsimpleproblemedit.pm</source>
+<target dist='default'>home/httpd/lib/perl/Apache/lonsimpleproblemedit.pm</target>
+<categoryname>handler</categoryname>
+<description>
+Handler to set parameters for simple homework problems
</description>
<status>works/unverified</status>
</file>
Index: loncom/loncapa_apache.conf
diff -u loncom/loncapa_apache.conf:1.54 loncom/loncapa_apache.conf:1.55
--- loncom/loncapa_apache.conf:1.54 Sat Jul 5 06:07:11 2003
+++ loncom/loncapa_apache.conf Mon Jul 7 03:32:16 2003
@@ -1,7 +1,7 @@
##
## loncapa_apache.conf -- Apache HTTP LON-CAPA configuration file
##
-## $Id: loncapa_apache.conf,v 1.54 2003/07/05 10:07:11 www Exp $
+## $Id: loncapa_apache.conf,v 1.55 2003/07/07 07:32:16 www Exp $
##
#
@@ -91,6 +91,15 @@
PerlAccessHandler Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonbulletin
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 406 /adm/notinit.html
+ErrorDocument 500 /adm/errorhandler
+</LocationMatch>
+
+<LocationMatch "\.problem/smpedit$">
+PerlAccessHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonsimpleproblemedit
ErrorDocument 404 /adm/notfound.html
ErrorDocument 406 /adm/notinit.html
ErrorDocument 500 /adm/errorhandler
Index: loncom/homework/simpleproblem.problem
diff -u loncom/homework/simpleproblem.problem:1.1 loncom/homework/simpleproblem.problem:1.2
--- loncom/homework/simpleproblem.problem:1.1 Sun Jul 6 06:40:35 2003
+++ loncom/homework/simpleproblem.problem Mon Jul 7 03:32:16 2003
@@ -1,5 +1,5 @@
<problem>
-
+<simpleeditbutton />
<script type="loncapa/perl">
$questiontype=&EXT('resource.0.questiontype');
unless ($questiontype) { $questiontype='radio'; }
Index: loncom/homework/structuretags.pm
diff -u loncom/homework/structuretags.pm:1.192 loncom/homework/structuretags.pm:1.193
--- loncom/homework/structuretags.pm:1.192 Mon Jun 30 16:30:50 2003
+++ loncom/homework/structuretags.pm Mon Jul 7 03:32:16 2003
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.192 2003/06/30 20:30:50 sakharuk Exp $
+# $Id: structuretags.pm,v 1.193 2003/07/07 07:32:16 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -38,7 +38,8 @@
use Apache::lonmenu;
BEGIN {
- &Apache::lonxml::register('Apache::structuretags',('block','languageblock','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','startouttext','endouttext'));
+ &Apache::lonxml::register('Apache::structuretags',('block','languageblock','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','startouttext','endouttext',
+'simpleeditbutton'));
}
sub start_web {
@@ -1080,6 +1081,22 @@
&Apache::lonxml::increasedepth($ntoken);
&Apache::lonxml::decreasedepth($ntoken);
return 1;
+}
+
+sub start_simpleeditbutton {
+ my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
+ my $result='';
+ if (($target eq 'web') &&
+ (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}))) {
+ my $url=$ENV{'REQUEST_URI'};
+ $url=~s/\?.*$//;
+ $result='<a href="'.$url.'/smpedit">Edit</a><br />';
+ }
+ return $result;
+}
+
+sub end_simpleeditbutton {
+ return '';
}
1;
Index: loncom/interface/londocs.pm
diff -u loncom/interface/londocs.pm:1.62 loncom/interface/londocs.pm:1.63
--- loncom/interface/londocs.pm:1.62 Sat Jul 5 06:07:11 2003
+++ loncom/interface/londocs.pm Mon Jul 7 03:32:16 2003
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.62 2003/07/05 10:07:11 www Exp $
+# $Id: londocs.pm,v 1.63 2003/07/07 07:32:16 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -594,7 +594,7 @@
var title=prompt('Listed Title for the Problem');
if (title) {
this.document.forms.newsmpproblem.importdetail.value=
- title+'=/adm/wrapper/uploaded/$udom/$uname/$now.problem';
+ title+'=/res/lib/templates/simpleproblem.problem';
this.document.forms.newsmpproblem.submit();
}
}
Index: loncom/homework/lonsimpleproblemedit.pm
+++ loncom/homework/lonsimpleproblemedit.pm
# The LearningOnline Network
# Simple Problem Parameter Setting "Editor"
#
# $Id: lonsimpleproblemedit.pm,v 1.1 2003/07/07 07:32:16 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
# This file is part of the LearningOnline Network with CAPA (LON-CAPA).
#
# LON-CAPA is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# LON-CAPA is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LON-CAPA; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# /home/httpd/html/adm/gpl.txt
#
# http://www.lon-capa.org/
#
package Apache::lonsimpleproblemedit;
use strict;
use Apache::Constants qw(:common :http);
use Apache::loncommon;
use Apache::lonnet;
sub questiontext {
my $text=shift;
return (<<ENDQUESTION);
<table bgcolor="#dddd22" cellspacing="4" cellpadding="2">
<tr><td><b>Question Text</b><br />
<textarea name="questiontext" cols="80" rows="8">$text</textarea>
</td></tr>
</table>
<br />
ENDQUESTION
}
sub hint {
my $text=shift;
return (<<ENDHINT);
<table bgcolor="#accacc" cellspacing="4" cellpadding="2">
<tr><td><b>Hint Text</b><br />
<textarea name="hinttext" cols="80" rows="4">$text</textarea>
</td></tr>
</table>
<br />
ENDHINT
}
sub foil {
my ($number,$value,$position,$text,%values)=@_;
$values{'unused'}='Not shown, not used';
unless (defined($value)) { $value='unused'; }
unless ($values{$value}) { $value='unused'; }
my %positions=('random' => 'Random position',
'top' => 'Show always at top position',
'bottom' => 'Show always at bottom position');
unless (defined($position)) { $position='random'; }
unless ($positions{$position}) {
$position='random';
}
my $selectvalue=&Apache::loncommon::select_form
($value,'value'.$number,%values);
my $selectposition=&Apache::loncommon::select_form
($position,'position'.$number,%positions);
return (<<ENDFOIL);
<table bgcolor="#dd55ff" cellspacing="4" cellpadding="2">
<tr><td colspan="2"><b>Foil</b></td></tr>
<tr><td>Value: $selectvalue</td><td>Position: $selectposition</td></tr>
<tr><td colspan="2">Text:<br />
<textarea name="text$number" cols="80" rows="4">$text</textarea>
</td></tr>
</table>
<br />
ENDFOIL
}
sub handler {
my $r = shift;
if ($r->header_only) {
$r->content_type('text/html');
$r->send_http_header;
return OK;
}
# -------------------------------------------------------------------- Allowed?
unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) {
return HTTP_NOT_ACCEPTABLE;
}
# ----------------------------------------------------------------- Send header
$r->content_type('text/html');
$r->send_http_header;
# ----------------------------------------------------- Figure out where we are
my $uri=$r->uri;
$uri=~s/\/smpedit$//;
my $symb=&Apache::lonnet::symbread($uri);
# ---------------------------------------------------------- Anything to store?
if (($symb) && ($ENV{'form.storeproblem'})) {
my %storecontent=();
undef %storecontent;
foreach (keys %ENV) {
if ($_=~/^form\.(\w+)$/) {
my $spnam=$1;
my $symbparm=$symb.'.'.$spnam;
my $courselevelr=$ENV{'request.course.id'}.'.'.$symbparm;
$storecontent{$courselevelr}=$ENV{'form.'.$spnam};;
}
}
my $reply=&Apache::lonnet::cput
('resourcedata',\%storecontent,
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
$ENV{'course.'.$ENV{'request.course.id'}.'.num'});
}
# ------------------------------------------------------------ Print the screen
$r->print(<<ENDDOCUMENT);
<html>
<head>
<title>The LearningOnline Network with CAPA</title>
ENDDOCUMENT
$r->print(&Apache::loncommon::bodytag('Simple Problem Editor'));
if ($symb) {
$r->print('<h1>'.&Apache::lonnet::gettitle($symb).'</h1>');
#
#
$r->print(&questiontext('What color?').
&foil(3,'green','bottom','Tomato',
('green'=>'green','red'=>'red')).
&hint('This is the hint.'));
#
#
} else {
$r->print('Could not identify problem.');
}
$r->print('</body></html>');
return OK;
}
1;
__END__
--www1057563136--