--- loncom/html/res/adm/pages/annotator/admannotations.pm 2000/10/17 21:28:56 1.11 +++ loncom/html/res/adm/pages/annotator/admannotations.pm 2001/07/26 20:26:42 1.15 @@ -1,10 +1,9 @@ -#!/usr/bin/perl -T # # This will take annotations and then plug them into a page. # # 08/25/00 Ben Tyszka # -# 10/17 Gerd Kortemeyer +# 10/17,10/18,10/20 Gerd Kortemeyer # # ################## @@ -12,7 +11,6 @@ package Apache::admannotations; use strict; -use CGI qw(:all); use Apache::Constants qw(:common); use Apache::lonnet(); @@ -21,10 +19,8 @@ use Apache::lonnet(); sub write_annotation { my $urlold=shift; my $annotation=shift; - $urlold=~s/^http\:\/\///; - $urlold=~s/^[^\/]+//; if ($annotation) { - &Apache::lonnet::put("annotations",($urlold => $annotation)); + &Apache::lonnet::put('nohist_annotations',($urlold => $annotation)); } return; } @@ -33,9 +29,7 @@ sub write_annotation { sub get_annotation { my $urlnew=shift; - $urlnew=~s/^http\:\/\///; - $urlnew=~s/^[^\/]+//; - my %annotation=&Apache::lonnet::get("annotations",$urlnew); + my %annotation=&Apache::lonnet::get('nohist_annotations',[$urlnew]); return %annotation; } @@ -43,27 +37,37 @@ sub get_annotation { sub construct_editor { my $annotation=shift; + if ($annotation=~/^error:/) { $annotation=''; } my $urlnew=shift; return(< Annotations - - +
-
+
- + - - + +
@@ -79,28 +83,23 @@ sub construct_error { return(< Annotations -
-
+
- + $annot_error - +
- + - - + +
@@ -120,29 +119,29 @@ sub handler { my $page; my %annot_hash; - my $urlold; - my $annotation; - my $urlnew; - - if (exists($ENV{'form.urlold'})) { - $urlold=$ENV{'form.urlold'}; - $annotation=$ENV{'form.annotation'}; + + my $urlold=$ENV{'form.urlold'}; + $urlold=~s/^http\:\/\///; + $urlold=~s/^[^\/]+//; + my $urlnew=$ENV{'form.urlnew'}; + $urlnew=~s/^http\:\/\///; + $urlnew=~s/^[^\/]+//; + my $annotation=$ENV{'form.annotation'}; + + if ($urlold) { write_annotation($urlold,$annotation); } if (exists($ENV{'form.urlnew'})) { - $urlnew=$ENV{'form.urlnew'}; - if ($urlnew eq '') { - $page=construct_error("Cannot annotate current window. Please point your browser to a LON-CAPA page and then 'continue'.","continue"); + unless ($urlnew) { + $page=construct_error("Cannot annotate current window. Please point your browser to a LON-CAPA page and then 'continue'.","continue"); } else { if ($urlold eq $urlnew) { $annot_hash{$urlnew}=$annotation; } else { %annot_hash=get_annotation($urlnew); } - $page=construct_editor($annot_hash{$urlnew},$urlnew); + $page=construct_editor($annot_hash{$urlnew},$ENV{'form.urlnew'}); } - } else { - $page=construct_error("Connection broken with home server. Please contact your system administrator.","try again"); } $r->print($page); return OK;