Diff for /loncom/interface/loncommon.pm between versions 1.1040 and 1.1041

version 1.1040, 2011/12/20 22:43:34 version 1.1041, 2011/12/20 23:57:51
Line 6739  sub headtag { Line 6739  sub headtag {
         $result.=&modal_window();          $result.=&modal_window();
         $result.=&togglebox_script();          $result.=&togglebox_script();
         $result.=&wishlist_window();          $result.=&wishlist_window();
           $result.=&LCprogressbarUpdate_script();
     } else {      } else {
         if ($args->{'add_modal'}) {          if ($args->{'add_modal'}) {
            $result.=&modal_window();             $result.=&modal_window();
Line 6749  sub headtag { Line 6750  sub headtag {
         if ($args->{'add_togglebox'}) {          if ($args->{'add_togglebox'}) {
            $result.=&togglebox_script();             $result.=&togglebox_script();
         }          }
           if ($args->{'add_progressbar'}) {
              $result.=&LCprogressbarUpdate_script();
           }
     }      }
     if (ref($args->{'redirect'})) {      if (ref($args->{'redirect'})) {
  my ($time,$url,$inhibit_continue) = @{$args->{'redirect'}};   my ($time,$url,$inhibit_continue) = @{$args->{'redirect'}};
Line 7057  sub modal_adhoc_script { Line 7061  sub modal_adhoc_script {
 ENDADHOC  ENDADHOC
 }  }
   
   sub modal_adhoc_inner {
       my ($funcname,$width,$height,$content)=@_;
       my $innerwidth=$width-20;
       $content=&js_ready(
                  &start_page('Dialog',undef,{'only_body'=>1,'add_progressbar'=>1,'bgcolor'=>'#FFFFFF'}).
                    &start_scrollbox($width.'px',$innerwidth.'px',$height.'px').
                       $content.
                    &end_scrollbox().
                  &end_page()
                );
       return &modal_adhoc_script($funcname,$width,$height,$content);
   }
   
   sub modal_adhoc_window {
       my ($funcname,$width,$height,$content,$linktext)=@_;
       return &modal_adhoc_inner($funcname,$width,$height,$content).
              "<a href=\"javascript:$funcname();void(0);\">".$linktext."</a>";
   }
   
   sub modal_adhoc_launch {
       my ($funcname,$width,$height,$content)=@_;
       return &modal_adhoc_inner($funcname,$width,$height,$content).(<<ENDLAUNCH);
   <script type="text/javascript">
   // <![CDATA[
   $funcname();
   // ]]>
   </script>
   ENDLAUNCH
   }
   
   sub modal_adhoc_close {
       return (<<ENDCLOSE);
   <script type="text/javascript">
   // <![CDATA[
   modalWindow.close();
   // ]]>
   </script>
   ENDCLOSE
   }
   
 sub togglebox_script {  sub togglebox_script {
    return(<<ENDTOGGLE);     return(<<ENDTOGGLE);
 <script type="text/javascript">   <script type="text/javascript"> 
Line 7097  sub end_togglebox { Line 7141  sub end_togglebox {
     return '</td></tr>'.&end_data_table();      return '</td></tr>'.&end_data_table();
 }  }
   
 sub modal_adhoc_window {  sub LCprogressbar_script {
     my ($funcname,$width,$height,$content,$linktext)=@_;     return(<<ENDPROGRESS);
     my $innerwidth=$width-20;  <script type="text/javascript">
     $content=&js_ready(  // <![CDATA[
                &start_page('Dialog',undef,{'only_body'=>1,'bgcolor'=>'#FFFFFF'}).  var LCprogressTxt='---';
                  &start_scrollbox($width.'px',$innerwidth.'px',$height.'px').  
                     $content.  \$('#progressbar').progressbar({
                  &end_scrollbox().    value: 0,
                &end_page()    change: function(event, ui) {
              );      var newVal = \$(this).progressbar('option', 'value');
     return &modal_adhoc_script($funcname,$width,$height,$content).      \$('.pblabel', this).text(LCprogressTxt);
          "<a href=\"javascript:$funcname();void(0);\">".$linktext."</a>";    }
   });
   // ]]>
   </script>
   ENDPROGRESS
   }
   
   sub LCprogressbarUpdate_script {
      return(<<ENDPROGRESSUPDATE);
   <style type="text/css">
   .ui-progressbar { position:relative; }
   .pblabel { position: absolute; width: 100%; text-align: center; line-height: 1.9em; }
   </style>
   <script type="text/javascript">
   // <![CDATA[
   function LCupdateProgress(percent,progresstext) {
      LCprogressTxt=progresstext;
      \$('#progressbar').progressbar('value',percent);
   }
   // ]]>
   </script>
   ENDPROGRESSUPDATE
   }
   
   sub LCprogressbar {
       my ($r,$mode)=(@_);
       my $starting=&mt('Starting');
       my $content=(<<ENDPROGBAR);
   <p>
     <div id="progressbar">
       <span class="pblabel">$starting</span>
     </div>
   </p>
   ENDPROGBAR
       $content.=&LCprogressbar_script();
       if ($mode eq 'popup') {
          $r->print(&modal_adhoc_launch('LCprogwin',500,50,$content));
       } else {
          $r->print($content);
       }
       $r->rflush();
   }
   
   sub LCprogressbarUpdate {
       my ($r,$val,$text,$mode)=@_;
       unless ($val) { $val=0; }
       if ($val<0) { $val=0; }
       if ($val>100) { $val=0; }
       unless ($text) { $text=$val.'%'; }
       my $function='';
       if ($mode eq 'popup') { $function='modalWindow.'; }
       $function.='LCupdateProgress';
       $text=&js_ready($text);
       $r->print(<<ENDUPDATE);
   <script type="text/javascript">
   // <![CDATA[
   $function($val,'$text');
   // ]]>
   </script>
   ENDUPDATE
       $r->rflush();
 }  }
   
 sub html_encode {  sub html_encode {

Removed from v.1.1040  
changed lines
  Added in v.1.1041


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