Diff for /loncom/xml/lonxml.pm between versions 1.84 and 1.91

version 1.84, 2001/06/02 03:59:59 version 1.91, 2001/06/12 21:10:22
Line 9 Line 9
 # 5/10 Scott Harrison  # 5/10 Scott Harrison
 # 5/26 Gerd Kortemeyer  # 5/26 Gerd Kortemeyer
 # 5/27 H. K. Ng  # 5/27 H. K. Ng
   # 6/2,6/3,6/8,6/9 Gerd Kortemeyer
   
 package Apache::lonxml;   package Apache::lonxml; 
 use vars   use vars 
Line 18  use HTML::TokeParser; Line 19  use HTML::TokeParser;
 use Safe;  use Safe;
 use Safe::Hole;  use Safe::Hole;
 use Math::Cephes qw(:trigs :hypers :bessels erf erfc);  use Math::Cephes qw(:trigs :hypers :bessels erf erfc);
   use Math::Random qw(:all);
 use Opcode;  use Opcode;
   
 sub register {  sub register {
Line 98  sub fontsettings() { Line 100  sub fontsettings() {
 }  }
   
 sub registerurl {  sub registerurl {
   return (<<ENDSCRIPT);      if ($ENV{'REQUEST_URI'}!~/^\/(res\/)*adm\//) {
           my $hwkadd='';
           if ($ENV{'REQUEST_URI'}=~/\.(problem|exam|quiz|assess|survey|form)$/) {
       if (&Apache::lonnet::allowed('vgr',$ENV{'request.course.id'})) {
    $hwkadd.=(<<ENDSUBM);
                        menu.switchbutton
              (7,1,'subm.gif','view sub','missions',
                   'gocmd("/adm/grades","submission")');
   ENDSUBM
               }
       if (&Apache::lonnet::allowed('mgr',$ENV{'request.course.id'})) {
    $hwkadd.=(<<ENDGRDS);
                        menu.switchbutton
              (7,2,'pgrd.gif','problem','grades',
                   'gocmd("/adm/grades","viewgrades")');
   ENDGRDS
               }
       if (&Apache::lonnet::allowed('opa',$ENV{'request.course.id'})) {
    $hwkadd.=(<<ENDPARM);
                        menu.switchbutton
              (7,3,'pparm.gif','problem','parms',
                   'gocmd("/adm/parmset","set")');
   ENDPARM
               }
    }
    return (<<ENDREGTHIS);
        
 <script language="JavaScript">  <script language="JavaScript">
 // BEGIN LON-CAPA Internal  // BEGIN LON-CAPA Internal
   
     function LONCAPAreg() {      function LONCAPAreg() {
        if (window.location.pathname!="/res/adm/pages/menu.html") {  
   menu=window.open("","LONCAPAmenu");    menu=window.open("","LONCAPAmenu");
             menu.clearTimeout(menu.menucltim);
   menu.currentURL=window.location.pathname;    menu.currentURL=window.location.pathname;
           menu.currentStale=0;            menu.currentStale=0;
        }            menu.clearbut(3,1);
             menu.switchbutton
          (8,1,'eval.gif','evaluate','this','gopost("/adm/evaluate",currentURL)');
             menu.switchbutton
       (8,2,'fdbk.gif','feedback','on this','gopost("/adm/feedback",currentURL)');
             menu.switchbutton
        (8,3,'prt.gif','prepare','printout','gopost("/adm/printout",currentURL)');
             menu.switchbutton
          (2,1,'back.gif','backward','','gopost("/adm/flip","back:"+currentURL)');
             menu.switchbutton
        (2,3,'forw.gif','forward','','gopost("/adm/flip","forward:"+currentURL)');
             $hwkadd
     }      }
     
     function LONCAPAstale() {      function LONCAPAstale() {
        if (window.location.pathname!="/res/adm/pages/menu.html") {  
   menu=window.open("","LONCAPAmenu");    menu=window.open("","LONCAPAmenu");
           menu.currentStale=1;            menu.currentStale=1;
        }            menu.switchbutton
               (3,1,'reload.gif','return','location','go(currentURL)');
             menu.clearbut(7,1);
             menu.clearbut(7,2);
             menu.clearbut(7,3);
             menu.menucltim=menu.setTimeout(
    'clearbut(2,1);clearbut(2,3);clearbut(8,1);clearbut(8,2);clearbut(8,3);',
     2000);
   
         }
   
   // END LON-CAPA Internal
   </script>
   ENDREGTHIS
   
       } else {
           return (<<ENDDONOTREGTHIS);
   
   <script language="JavaScript">
   // BEGIN LON-CAPA Internal
   
       function LONCAPAreg() {
     menu=window.open("","LONCAPAmenu");
             menu.currentStale=1;
             menu.clearbut(2,1);
             menu.clearbut(2,3);
             menu.clearbut(8,1);
             menu.clearbut(8,2);
             menu.clearbut(8,3);
             if (menu.currentURL) {
                menu.switchbutton
                 (3,1,'reload.gif','return','location','go(currentURL)');
      } else {
         menu.clearbut(3,1);
             }
       }
   
       function LONCAPAstale() {
     }      }
   
 // END LON-CAPA Internal  // END LON-CAPA Internal
 </script>  </script>
 ENDSCRIPT  ENDDONOTREGTHIS
   
       }
 }  }
   
 sub loadevents() {  sub loadevents() {
Line 136  sub printalltags { Line 215  sub printalltags {
 }  }
   
 sub xmlparse {  sub xmlparse {
   #    $Apache::lonxml::debug=1;
  my ($target,$content_file_string,$safeinit,%style_for_target) = @_;   my ($target,$content_file_string,$safeinit,%style_for_target) = @_;
  if ($target eq 'meta') {   if ($target eq 'meta') {
    $Apache::lonxml::redirection = 0;     $Apache::lonxml::redirection = 0;
Line 417  sub init_safespace { Line 496  sub init_safespace {
   $safehole->wrap(\&Math::Cephes::y1,$safeeval,'&y1');    $safehole->wrap(\&Math::Cephes::y1,$safeeval,'&y1');
   $safehole->wrap(\&Math::Cephes::yn,$safeeval,'&yn');    $safehole->wrap(\&Math::Cephes::yn,$safeeval,'&yn');
   $safehole->wrap(\&Math::Cephes::yv,$safeeval,'&yv');    $safehole->wrap(\&Math::Cephes::yv,$safeeval,'&yv');
       $safehole->wrap(\&Math::Random::random_beta,$safeeval,'&math_random_beta');
     $safehole->wrap(\&Math::Random::random_chi_square,$safeeval,'&math_random_chi_square');
     $safehole->wrap(\&Math::Random::random_exponential,$safeeval,'&math_random_exponential');
     $safehole->wrap(\&Math::Random::random_f,$safeeval,'&math_random_f');
     $safehole->wrap(\&Math::Random::random_gamma,$safeeval,'&math_random_gamma');
     $safehole->wrap(\&Math::Random::random_multivariate_normal,$safeeval,'&math_random_multivariate_normal');
     $safehole->wrap(\&Math::Random::random_multinomial,$safeeval,'&math_random_multinomial');
     $safehole->wrap(\&Math::Random::random_noncentral_chi_square,$safeeval,'&math_random_noncentral_chi_square');
     $safehole->wrap(\&Math::Random::random_noncentral_f,$safeeval,'&math_random_noncentral_f');
     $safehole->wrap(\&Math::Random::random_normal,$safeeval,'&math_random_normal');
     $safehole->wrap(\&Math::Random::random_permutation,$safeeval,'&math_random_permutation');
   #  $safehole->wrap(\&Math::Random::random_permuted_index,$safeeval,'&math_random_permuted_index');
     $safehole->wrap(\&Math::Random::random_uniform,$safeeval,'&math_random_uniform');
     $safehole->wrap(\&Math::Random::random_poisson,$safeeval,'&math_random_poisson');
     $safehole->wrap(\&Math::Random::random_uniform_integer,$safeeval,'&math_random_uniform_integer');
     $safehole->wrap(\&Math::Random::random_negative_binomial,$safeeval,'&math_random_negative_binomial');
     $safehole->wrap(\&Math::Random::random_binomial,$safeeval,'&math_random_binomial');
     $safehole->wrap(\&Math::Random::random_seed_from_phrase,$safeeval,'&random_seed_from_phrase');
     $safehole->wrap(\&Math::Random::random_set_seed_from_phrase,$safeeval,'&random_set_seed_from_phrase');
     $safehole->wrap(\&Math::Random::random_get_seed,$safeeval,'&random_get_seed');
     $safehole->wrap(\&Math::Random::random_set_seed,$safeeval,'&random_set_seed');
   
 #need to inspect this class of ops  #need to inspect this class of ops
 # $safeeval->deny(":base_orig");  # $safeeval->deny(":base_orig");
   $safeinit .= ';$external::target='.$target.';';    $safeinit .= ';$external::target="'.$target.'";';
   $safeinit .= ';$external::randomseed='.&Apache::lonnet::rndseed().';';    $safeinit .= ';$external::randomseed='.&Apache::lonnet::rndseed().';';
   &Apache::run::run($safeinit,$safeeval);    &Apache::run::run($safeinit,$safeeval);
 }  }

Removed from v.1.84  
changed lines
  Added in v.1.91


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>