[LON-CAPA-cvs] cvs: loncom /interface lonhelper.pm

sakharuk lon-capa-cvs@mail.lon-capa.org
Thu, 09 Oct 2003 14:37:48 -0000


This is a MIME encoded message

--sakharuk1065710268
Content-Type: text/plain

sakharuk		Thu Oct  9 10:37:48 2003 EDT

  Modified files:              
    /loncom/interface	lonhelper.pm 
  Log:
  Added unselection for section/group of students.
  
  
--sakharuk1065710268
Content-Type: text/plain
Content-Disposition: attachment; filename="sakharuk-20031009103748.txt"

Index: loncom/interface/lonhelper.pm
diff -u loncom/interface/lonhelper.pm:1.53 loncom/interface/lonhelper.pm:1.54
--- loncom/interface/lonhelper.pm:1.53	Thu Oct  9 10:28:09 2003
+++ loncom/interface/lonhelper.pm	Thu Oct  9 10:37:48 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # .helper XML handler to implement the LON-CAPA helper
 #
-# $Id: lonhelper.pm,v 1.53 2003/10/09 14:28:09 sakharuk Exp $
+# $Id: lonhelper.pm,v 1.54 2003/10/09 14:37:48 sakharuk Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -172,20 +172,12 @@
 when you are done. See lonprintout.pm for examples of this usage in the
 printHelper subroutine.
 
-=head2 Localization
-
-The helper framework tries to handle as much localization as
-possible. The text is always run through
-Apache::lonlocal::normalize_string, so be sure to run the keys through
-that function for maximum usefulness and robustness.
-
 =cut
 
 package Apache::lonhelper;
 use Apache::Constants qw(:common);
 use Apache::File;
 use Apache::lonxml;
-use Apache::lonlocal;
 
 # Register all the tags with the helper, so the helper can 
 # push and pop them
@@ -265,9 +257,9 @@
     # Send header, don't cache this page
     if ($r->header_only) {
         if ($ENV{'browser.mathml'}) {
-            $r->content_type('text/xml; charset=UTF-8');
+            $r->content_type('text/xml');
         } else {
-            $r->content_type('text/html; charset=UTF-8');
+            $r->content_type('text/html');
         }
         $r->send_http_header;
         return OK;
@@ -367,10 +359,9 @@
 package Apache::lonhelper::helper;
 
 use Digest::MD5 qw(md5_hex);
-use HTML::Entities();
+use HTML::Entities;
 use Apache::loncommon;
 use Apache::File;
-use Apache::lonlocal;
 
 sub new {
     my $proto = shift;
@@ -532,7 +523,7 @@
     # Phase 1: Post processing for state of previous screen (which is actually
     # the "current state" in terms of the helper variables), if it wasn't the 
     # beginning state.
-    if ($self->{STATE} ne "START" || $ENV{"form.SUBMIT"} eq &mt("Next ->")) {
+    if ($self->{STATE} ne "START" || $ENV{"form.SUBMIT"} eq "Next ->") {
 	my $prevState = $self->{STATES}{$self->{STATE}};
         $prevState->postprocess();
     }
@@ -583,19 +574,13 @@
     }
 
     # Phase 4: Display.
-    my $stateTitle = &mt($state->title());
-    my $helperTitle = &mt($self->{TITLE});
-    my $bodytag = &Apache::loncommon::bodytag($helperTitle,'','');
-    my $previous = HTML::Entities::encode(&mt("<- Previous"), '<>&"');
-    my $next = HTML::Entities::encode(&mt("Next ->"), '<>&"');
-    # FIXME: This should be parameterized, not concatenated - Jeremy
-    my $loncapaHelper = &mt("LON-CAPA Helper:");
+    my $stateTitle = $state->title();
+    my $bodytag = &Apache::loncommon::bodytag("$self->{TITLE}",'','');
 
     $result .= <<HEADER;
 <html>
     <head>
-        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-        <title>$loncapaHelper: $helperTitle</title>
+        <title>LON-CAPA Helper: $self->{TITLE}</title>
     </head>
     $bodytag
 HEADER
@@ -622,12 +607,12 @@
         }
         if ($self->{DONE}) {
             my $returnPage = $self->{RETURN_PAGE};
-            $result .= "<a href=\"$returnPage\">" . &mt("End Helper") . "</a>";
+            $result .= "<a href=\"$returnPage\">End Helper</a>";
         }
         else {
             $result .= '<nobr><input name="back" type="button" ';
-            $result .= 'value="' . $previous . '" onclick="history.go(-1)" /> ';
-            $result .= '<input name="SUBMIT" type="submit" value="' . $next . '" /></nobr>';
+            $result .= 'value="&lt;- Previous" onclick="history.go(-1)" /> ';
+            $result .= '<input name="SUBMIT" type="submit" value="Next -&gt;" /></nobr>';
         }
     }
 
@@ -641,12 +626,12 @@
         }
         if ($self->{DONE}) {
             my $returnPage = $self->{RETURN_PAGE};
-            $result .= "<a href=\"$returnPage\">" . &mt('End Helper') . "</a>";
+            $result .= "<a href=\"$returnPage\">End Helper</a>";
         }
         else {
             $result .= '<nobr><input name="back" type="button" ';
-            $result .= 'value="' . $previous . '" onclick="history.go(-1)" /> ';
-            $result .= '<input name="SUBMIT" type="submit" value="' . $next . '" /></nobr>';
+            $result .= 'value="&lt;- Previous" onclick="history.go(-1)" /> ';
+            $result .= '<input name="SUBMIT" type="submit" value="Next -&gt;" /></nobr>';
         }
     }
 
@@ -898,7 +883,6 @@
 
 sub end_defaultvalue { return ''; }
 
-# Validators may need to take language specifications
 sub start_validator {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
 
@@ -968,17 +952,11 @@
 This is also a good template for creating your own new states, as it has
 very little code beyond the state template.
 
-=head3 Localization
-
-The contents of the message tag will be run through the
-normalize_string function and that will be used as a call to &mt.
-
 =cut
 
 no strict;
 @ISA = ("Apache::lonhelper::element");
 use strict;
-use Apache::lonlocal;
 
 BEGIN {
     &Apache::lonhelper::register('Apache::lonhelper::message',
@@ -1020,7 +998,7 @@
 sub render {
     my $self = shift;
 
-    return &mtn($self->{MESSAGE_TEXT});
+    return $self->{MESSAGE_TEXT};
 }
 # If a NEXTSTATE was given, switch to it
 sub postprocess {
@@ -1122,7 +1100,6 @@
 no strict;
 @ISA = ("Apache::lonhelper::element");
 use strict;
-use Apache::lonlocal;
 
 BEGIN {
     &Apache::lonhelper::register('Apache::lonhelper::choices',
@@ -1276,7 +1253,7 @@
             $choiceLabel = eval($choiceLabel);
             $choiceLabel = &$choiceLabel($helper, $self);
         }
-        $result .= "/></td><td> " . &mtn($choiceLabel) . "</td></tr>\n";
+        $result .= "/></td><td> " . $choiceLabel . "</td></tr>\n";
     }
     $result .= "</table>\n\n\n";
     $result .= $buttons;
@@ -1335,13 +1312,9 @@
 
 =cut
 
-# This really ought to be a sibling class to "choice" which is itself
-# a child of some abstract class.... *shrug*
-
 no strict;
 @ISA = ("Apache::lonhelper::element");
 use strict;
-use Apache::lonlocal;
 
 BEGIN {
     &Apache::lonhelper::register('Apache::lonhelper::dropdown',
@@ -1431,7 +1404,7 @@
             $choiceLabel = eval($choiceLabel);
             $choiceLabel = &$choiceLabel($helper, $self);
         }
-        $result .= ">" . &mtn($choiceLabel) . "\n";
+        $result .= ">" . $choiceLabel . "\n";
     }
     $result .= "</select>\n";
 
@@ -1500,7 +1473,6 @@
 no strict;
 @ISA = ("Apache::lonhelper::element");
 use strict;
-use Apache::lonlocal; # A localization nightmare
 
 use Time::localtime;
 
@@ -1565,7 +1537,7 @@
         } else {
             $result .= "<option value='$i'>";
         }
-        $result .= &mt($months[$i]) . "</option>\n";
+        $result .= $months[$i] . "</option>\n";
     }
     $result .= "</select>\n";
 
@@ -1652,26 +1624,17 @@
         $hour = $ENV{'form.' . $var . 'hour'};
     }
 
-    my $chosenDate;
-    eval {$chosenDate = Time::Local::timelocal(0, $min, $hour, $day, $month, $year);};
-    my $error = $@;
-
+    my $chosenDate = Time::Local::timelocal(0, $min, $hour, $day, $month, $year);
     # Check to make sure that the date was not automatically co-erced into a 
     # valid date, as we want to flag that as an error
     # This happens for "Feb. 31", for instance, which is coerced to March 2 or
-    # 3, depending on if it's a leap year
+    # 3, depending on if it's a leapyear
     my $checkDate = localtime($chosenDate);
 
-    if ($error || $checkDate->mon != $month || $checkDate->mday != $day ||
+    if ($checkDate->mon != $month || $checkDate->mday != $day ||
         $checkDate->year + 1900 != $year) {
-	unless (Apache::lonlocal::current_language()== ~/^en/) {
-	    $self->{ERROR_MSG} = &mt("Invalid date entry");
-	    return 0;
-	}
-	# LOCALIZATION FIXME: Needs to be parameterized
         $self->{ERROR_MSG} = "Can't use " . $months[$month] . " $day, $year as a "
             . "date because it doesn't exist. Please enter a valid date.";
-
         return 0;
     }
 
@@ -2081,11 +2044,11 @@
             }
         }
     }
-    function checksec() {
+    function checksec(value) {
 	for (i=0; i<document.forms.helpform.elements.length; i++) {
 	    comp = document.forms.helpform.elements.chksec.value;
             if (document.forms.helpform.elements[i].value.indexOf(':'+comp+':') != -1) {
-                document.forms.helpform.elements[i].checked=true;
+                document.forms.helpform.elements[i].checked=value;
             }
         }
     }
@@ -2103,8 +2066,11 @@
 <input type="button" onclick="checkactive()" value="Select Only Current Students" />
 <input type="button" onclick="checkall(true, '$var')" value="Select All Students" />
 <input type="button" onclick="checkall(false, '$var')" value="Unselect All Students" />
-<input type="button" onclick="checksec()" value="Check for Section/Group">
+<br />
+<input type="button" onclick="checksec(true)" value="Select for Section/Group">
 <input type="text" size="5" name="chksec">&nbsp;
+<input type="button" onclick="checksec(false)" value="Unselect for Section/Group">
+
 <br />
 BUTTONS
     }

--sakharuk1065710268--