Diff for /loncom/interface/lonextresedit.pm between versions 1.10 and 1.15

version 1.10, 2016/06/06 17:40:48 version 1.15, 2017/03/08 02:51:08
Line 302  sub update_exttool { Line 302  sub update_exttool {
   
 sub extedit_form {  sub extedit_form {
     my ($supplementalflag,$residx,$orig_url,$orig_title,$pathitem,$helpitem,$caller,      my ($supplementalflag,$residx,$orig_url,$orig_title,$pathitem,$helpitem,$caller,
         $symb,$type,$cdom,$cnum,$ltitools) = @_;          $symb,$type,$cdom,$cnum,$ltitools,$disabled) = @_;
     if ($type ne 'tool') {      if ($type ne 'tool') {
         $type = 'ext';          $type = 'ext';
     }      }
Line 347  sub extedit_form { Line 347  sub extedit_form {
         $fieldsetstyle,$action,$hiddenelem,$form,$width,$height,$tooltarget,%chkstate);          $fieldsetstyle,$action,$hiddenelem,$form,$width,$height,$tooltarget,%chkstate);
     $fieldsetstyle = 'display: none;';      $fieldsetstyle = 'display: none;';
     $action = '/adm/coursedocs';      $action = '/adm/coursedocs';
       my $protocol = ($ENV{'SERVER_PORT'} == 443?'https':'http');
     if ($residx) {      if ($residx) {
         if ($caller eq 'direct') {          if ($caller eq 'direct') {
             $fieldsetstyle = 'display: block;';              $fieldsetstyle = 'display: block;';
Line 377  sub extedit_form { Line 378  sub extedit_form {
         $srcclass = ' class="LC_nobreak"';          $srcclass = ' class="LC_nobreak"';
         if ($type eq 'ext') {          if ($type eq 'ext') {
             $extsrc = '<span class="LC_docs_ext_edit">'.$lt{'ul'}.'&nbsp;</span>';              $extsrc = '<span class="LC_docs_ext_edit">'.$lt{'ul'}.'&nbsp;</span>';
             $preview = '&nbsp;<a class="LC_docs_ext_edit" href="javascript:extUrlPreview('."'$urlid'".');">'.$lt{'pr'}.'</a>';              $preview = '&nbsp;<a class="LC_docs_ext_edit" href="javascript:extUrlPreview('."'$urlid','$protocol'".');">'.$lt{'pr'}.'</a>';
         }          }
         $title = '<span class="LC_docs_ext_edit">'.$lt{'ti'}.'&nbsp;</span>';          $title = '<span class="LC_docs_ext_edit">'.$lt{'ti'}.'&nbsp;</span>';
         $save = $lt{'sv'};          $save = $lt{'sv'};
Line 399  sub extedit_form { Line 400  sub extedit_form {
             $orig_url = 'http://';              $orig_url = 'http://';
             $orig_title = $lt{'ex'};              $orig_title = $lt{'ex'};
             $extsrc = $lt{'ul'}.':<br />';              $extsrc = $lt{'ul'}.':<br />';
             $preview = '<input type="button" name="view" value="'.$lt{'pr'}.'" onclick="javascript:extUrlPreview('."'$urlid'".');" />';              $preview = '<input type="button" name="view" value="'.$lt{'pr'}.'" onclick="javascript:extUrlPreview('."'$urlid','$protocol'".');"'.$disabled.' />';
             $save = $lt{'al'};              $save = $lt{'al'};
         } else {          } else {
             $orig_title = $lt{'et'};              $orig_title = $lt{'et'};
Line 410  sub extedit_form { Line 411  sub extedit_form {
     }      }
     $formid = $formname;      $formid = $formname;
     if ($type eq 'ext') {      if ($type eq 'ext') {
         $urlelem = '<input type="text" size="'.$size.'" name="exturl" id="'.$urlid.'" value="'.$orig_url.'" />';          $urlelem = '<input type="text" size="'.$size.'" name="exturl" id="'.$urlid.'" value="'.$orig_url.'"'.$disabled.' />';
     } else {      } else {
         my $class = 'LC_nobreak';          my $class = 'LC_nobreak';
         if ($residx) {          if ($residx) {
Line 459  sub extedit_form { Line 460  sub extedit_form {
         } else {          } else {
             $toolelem = '<span class="LC_docs_ext_edit">'."\n".              $toolelem = '<span class="LC_docs_ext_edit">'."\n".
                        '<select name="exttoolid" id="LC_exttoolid" onchange="javascript:updateExttool(this,'.                         '<select name="exttoolid" id="LC_exttoolid" onchange="javascript:updateExttool(this,'.
                        'this.form,'."'$supplementalflag'".');">'."\n".                         'this.form,'."'$supplementalflag'".');"'.$disabled.'>'."\n".
                        '<option value="" selected="selected">'.&mt('Select').'</option>';                         '<option value="" selected="selected">'.&mt('Select').'</option>';
             my %bynum;              my %bynum;
             if (ref($ltitools) eq 'HASH') {              if (ref($ltitools) eq 'HASH') {
Line 486  sub extedit_form { Line 487  sub extedit_form {
         $toolelem .= '<div id="'.$toolattr{'dispdiv'}.'" style="'.$dispdivstyle.'">'.          $toolelem .= '<div id="'.$toolattr{'dispdiv'}.'" style="'.$dispdivstyle.'">'.
                     '<span class="'.$class.'">'.&mt('Display target:').'&nbsp;'.                      '<span class="'.$class.'">'.&mt('Display target:').'&nbsp;'.
                     '<label><input type="radio" name="exttooltarget" value="iframe" '.$chkstate{'iframe'}.'onclick="updateTooldim(this.form,'.                      '<label><input type="radio" name="exttooltarget" value="iframe" '.$chkstate{'iframe'}.'onclick="updateTooldim(this.form,'.
                     "'$toolattr{dimendiv}','$toolattr{dimenwidth}','$toolattr{dimenheight}'".');">'.&mt('iframe').'</label>'.('&nbsp;'x2).                      "'$toolattr{dimendiv}','$toolattr{dimenwidth}','$toolattr{dimenheight}'".');"'.$disabled.'>'.&mt('iframe').'</label>'.('&nbsp;'x2).
                     '<label><input type="radio" name="exttooltarget" value="window" '.$chkstate{'window'}.'onclick="updateTooldim(this.form,'.                      '<label><input type="radio" name="exttooltarget" value="window" '.$chkstate{'window'}.'onclick="updateTooldim(this.form,'.
                     "'$toolattr{dimendiv}','$toolattr{dimenwidth}','$toolattr{dimenheight}'".');">'.&mt('window').'</label>'.                      "'$toolattr{dimendiv}','$toolattr{dimenwidth}','$toolattr{dimenheight}'".');"'.$disabled.'>'.&mt('window').'</label>'.
                     '</span><div id="'.$toolattr{'dimendiv'}.'" style="'.$dimendivstyle.'">'.                       '</span><div id="'.$toolattr{'dimendiv'}.'" style="'.$dimendivstyle.'">'. 
                     '<span class="'.$class.'">'.                      '<span class="'.$class.'">'.
                     &mt('Width').'<input type="text" id="'.$toolattr{'dimenwidth'}.'" name="exttoolwidth" value="'.$width.'">'.('&nbsp;'x2).                      &mt('Width').'<input type="text" id="'.$toolattr{'dimenwidth'}.'" name="exttoolwidth" value="'.$width.'"'.$disabled.'>'.('&nbsp;'x2).
                     &mt('Height').'<input type="text" id="'.$toolattr{'dimenheight'}.'" name="exttoolheight" value="'.$height.'"></span>'."\n".                      &mt('Height').'<input type="text" id="'.$toolattr{'dimenheight'}.'" name="exttoolheight" value="'.$height.'"'.$disabled.'></span>'."\n".
                     '</div></div>'.                      '</div></div>'.
                     '<div id="'.$toolattr{'crslabeldiv'}.'" style="'.$labelstyle.'">'.                      '<div id="'.$toolattr{'crslabeldiv'}.'" style="'.$labelstyle.'">'.
                     '<span class="'.$class.'">'.&mt('Course label:').'&nbsp;'.                      '<span class="'.$class.'">'.&mt('Course label:').'&nbsp;'.
                     '<input type="text" id="'.$toolattr{'crslabel'}.'" name="exttoollabel" value="'.$crslabel.'"><br />'.                      '<input type="text" id="'.$toolattr{'crslabel'}.'" name="exttoollabel" value="'.$crslabel.'"'.$disabled.'><br />'.
                     '</div>'.                      '</div>'.
                     '<div id="'.$toolattr{'crstitlediv'}.'" style="'.$titlestyle.'">'.                      '<div id="'.$toolattr{'crstitlediv'}.'" style="'.$titlestyle.'">'.
                     '<span class="'.$class.'">'.&mt('Course title:').'&nbsp;'.                      '<span class="'.$class.'">'.&mt('Course title:').'&nbsp;'.
                     '<input type="text" id="'.$toolattr{'crstitle'}.'" name="exttooltitle" value="'.$crstitle.'"><br />'.                      '<input type="text" id="'.$toolattr{'crstitle'}.'" name="exttooltitle" value="'.$crstitle.'"'.$disabled.'><br />'.
                     '</div>';                      '</div>';
     }      }
     my $chooser = $toolelem;      my $chooser = $toolelem;
Line 524  $chooser Line 525  $chooser
 <div>  <div>
 <span$srcclass>  <span$srcclass>
 $title  $title
 <input type="text" size="$size" name="exttitle" value="$orig_title" />  <input type="text" size="$size" name="exttitle" value="$orig_title" $disabled />
 <input type="hidden" name="importdetail" value="" />  <input type="hidden" name="importdetail" value="" />
 $pathitem  $pathitem
 $hiddenelem  $hiddenelem
 <input type="button" value="$save" onclick="javascript:setExternal(this.form,'$residx','$type','$orig_url','$supplementalflag');" />  <input type="button" value="$save" onclick="javascript:setExternal(this.form,'$residx','$type','$orig_url','$supplementalflag');" $disabled />
 </span>  </span>
 </div>  </div>
 </fieldset>  </fieldset>
Line 542  ENDFORM Line 543  ENDFORM
 }  }
   
 sub display_editor {  sub display_editor {
     my ($url,$folderpath,$symb,$idx,$type,$cdom,$cnum) = @_;      my ($url,$folderpath,$symb,$idx,$type,$cdom,$cnum,$hostname) = @_;
     my ($residx,$supplementalflag,$title,$pathitem,$output,$js);      my ($residx,$supplementalflag,$title,$pathitem,$output,$js,$navmap);
     if ($folderpath =~ /^supplemental/) {      if ($folderpath =~ /^supplemental/) {
         $supplementalflag = 1;          $supplementalflag = 1;
         $residx = $idx;          $residx = $idx;
Line 553  sub display_editor { Line 554  sub display_editor {
         (my $map,$residx,my $res) =          (my $map,$residx,my $res) =
             &Apache::lonnet::decode_symb($symb);              &Apache::lonnet::decode_symb($symb);
         $title = &Apache::lonnet::gettitle($symb);          $title = &Apache::lonnet::gettitle($symb);
         my $path = &Apache::loncommon::symb_to_docspath($symb);          my $path = &Apache::loncommon::symb_to_docspath($symb,\$navmap);
         $pathitem = '<input type="hidden" name="folderpath" value="'.&HTML::Entities::encode($path,'<>&"').'" />';          $pathitem = '<input type="hidden" name="folderpath" value="'.&HTML::Entities::encode($path,'<>&"').'" />';
     }      }
     my %ltitools;      my %ltitools;
Line 562  sub display_editor { Line 563  sub display_editor {
     }      }
     $js = &Apache::lonhtmlcommon::scripttag(&extedit_javascript());      $js = &Apache::lonhtmlcommon::scripttag(&extedit_javascript());
     my $args = { 'force_register' => $env{'form.register'} };      my $args = { 'force_register' => $env{'form.register'} };
       if ($hostname) {
           $args->{'hostname'} = $hostname;
       }
     my $description = 'External Resource Editor';      my $description = 'External Resource Editor';
     if ($type eq 'tool') {      if ($type eq 'tool') {
         $description = 'External Tool Editor';          $description = 'External Tool Editor';
Line 733  function editext(residx,type) { Line 737  function editext(residx,type) {
     return;      return;
 }  }
   
 function extUrlPreview(caller) {  function extUrlPreview(caller,protocol) {
     if (document.getElementById(caller)) {      if (document.getElementById(caller)) {
         var url = document.getElementById(caller).value;          var url = document.getElementById(caller).value;
         if (regexp.test(url)) {          if (regexp.test(url)) {
             openMyModal(url,500,400,'yes');              var http_regex = /^http\:\/\//gi;
               if ((protocol == 'https') && (http_regex.test(url))) {
                   window.open(url,"externalpreview","height=400,width=500,scrollbars=1,resizable=1,menubar=0,location=1");
               } else {
                   openMyModal(url,500,400,'yes');
               }
         } else {          } else {
             alert("$js_lt{'invurl'}");              alert("$js_lt{'invurl'}");
         }          }

Removed from v.1.10  
changed lines
  Added in v.1.15


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