');
}
@@ -2961,11 +2967,21 @@ sub handler {
$iconpath = &Apache::loncommon::lonhttpdurl($r->dir_config('lonIconsURL') . "/");
if ($allowed) {
+ my @tabids;
+ if ($supplementalflag) {
+ @tabids = ('002','ee2','ff2');
+ } else {
+ @tabids = ('aa1','bb1','cc1','ff1');
+ unless ($env{'form.pagepath'}) {
+ unshift(@tabids,'001');
+ push(@tabids,('dd1','ee1'));
+ }
+ }
+ my $tabidstr = join("','",@tabids);
$script .= &editing_js($udom,$uname).
- &resize_contentdiv_js();
+ &resize_contentdiv_js($tabidstr);
$addentries = {
- onload => "javascript:resize_contentdiv('contentscroll');",
- onresize => "javascript:resize_contentdiv('contentscroll');",
+ onload => "javascript:resize_contentdiv('contentscroll','1','1');",
};
}
# -------------------------------------------------------------------- Body tag
@@ -3093,22 +3109,22 @@ FIUP
CHBO
- my $fileuploada = "
$help{'Uploading_From_Harddrive'}";
+ my $fileuploada = "
$help{'Uploading_From_Harddrive'}";
my $fileuploadform=(<
$fileupload
$lt{'title'}:
-
+
$uploadtag
-
+
$checkbox
FUFORM
- $fileuploadform .= &create_form_ul(&Apache::lonhtmlcommon::htmltag('li',$fileuploada,{class => 'LC_menubuttons_inline_text'})).'';
+ $fileuploadform .= $fileuploada.'';
my $simpleeditdefaultform=(<
@@ -3121,10 +3137,10 @@ SEDFFORM
);
$simpleeditdefaultform .= &create_form_ul(&create_list_elements(@simpleeditdefaultforma));
$simpleeditdefaultform .=(<
+
$lt{'copm'}
-
$help{'Load_Map'}
@@ -3374,7 +3390,7 @@ NGFFORM
my @importdoc = (
{'
'=>$extresourcesform},
{'
'=>$imspform},);
- $fileuploadform = &create_form_ul(&create_list_elements(@importdoc)) . '
' . $fileuploadform;
+ $fileuploadform = &create_form_ul(&create_list_elements(@importdoc)) . '
' . $fileuploadform;
@gradingforma=(
{'
'=>$newsmpproblemform},
@@ -3415,7 +3431,8 @@ unless ($env{'form.pagepath'}) {
$hadchanges=0;
unless ($supplementalflag) {
- my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype);
+ my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype,
+ $supplementalflag,\%orderhash);
if ($error) {
$r->print(''.$error.'
');
}
@@ -3424,10 +3441,8 @@ unless ($env{'form.pagepath'}) {
}
&changewarning($r,'');
- $r->print(&generate_edit_table('1',\%orderhash));
}
-
- }
+ }
# Supplemental documents start here
@@ -3521,21 +3536,22 @@ my @supimportdoc = (
{'
'
=>$supnewextform},
);
-$supupdocform = &create_form_ul(&create_list_elements(@supimportdoc)) . '
' . $supupdocform;
+$supupdocform = &create_form_ul(&create_list_elements(@supimportdoc)) . '
' . $supupdocform;
my %suporderhash = (
'00' => ['Supnewfolder', $supnewfolderform],
'ee' => ['Import Documents',$supupdocform],
'ff' => ['Special Documents',&create_form_ul(&create_list_elements(@specialdocs))]
);
if ($supplementalflag) {
- my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype);
+ my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype,
+ $supplementalflag,\%suporderhash);
if ($error) {
$r->print(''.$error.'
');
}
- $r->print(&generate_edit_table('2',\%suporderhash));
}
} elsif ($supplementalflag) {
- my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype);
+ my $error = &editor($r,$coursenum,$coursedom,$folder,$allowed,'',$crstype,
+ $supplementalflag);
if ($error) {
$r->print(''.$error.'
');
}
@@ -3638,7 +3654,7 @@ sub generate_admin_options {
sub generate_edit_table {
- my ($tid,$orderhash_ref) = @_;
+ my ($tid,$orderhash_ref,$to_show) = @_;
return unless(ref($orderhash_ref) eq 'HASH');
my %orderhash = %{$orderhash_ref};
my $form;
@@ -3647,31 +3663,35 @@ sub generate_edit_table {
if($env{'form.active'} ne ''){
$activetab = $env{'form.active'};
}
- $form = '';
- $form .= '
';
- foreach my $name (sort(keys(%orderhash))){
+ $form = ''.
+ '
';
+ foreach my $name (reverse(sort(keys(%orderhash)))) {
if($name ne '00'){
if($activetab eq '' || $activetab ne $name){
$active = '';
}elsif($activetab eq $name){
$active = 'class="active"';
}
- $form .= '- '.&mt(${$orderhash{$name}}[0]).'
';
} else {
- $form .= '- '.${$orderhash{$name}}[1].'
';
+ $form .= '- '.${$orderhash{$name}}[1].'
';
}
}
$form .= '
';
- $form .= '
';
+ $form .= '
';
+
+ if ($to_show ne '') {
+ $form .= '
'.$to_show.'
';
+ }
foreach my $field (keys(%orderhash)){
if($field ne '00'){
if($activetab eq '' || $activetab ne $field){
- $active = 'style="display: none;"';
+ $active = 'style="display: none;float:left"';
}elsif($activetab eq $field){
- $active = 'style="display:block;"';
+ $active = 'style="display:block;float:left"';
}
$form .= '
'.${$orderhash{$field}}[1]
@@ -3950,7 +3970,7 @@ function showPage(current, pageId, nav,
current.className = 'active';
currentData = document.getElementById(pageId);
currentData.style.display = 'block';
- resize_contentdiv('contentscroll');
+ activeTab = pageId;
if (nav == 'mainnav') {
var storedpath = "$docs_folderpath";
if (storedpath == '') {
@@ -3985,6 +4005,7 @@ function showPage(current, pageId, nav,
}
}
}
+ resize_contentdiv('contentscroll','1','0');
return false;
}
@@ -3999,66 +4020,189 @@ ENDNEWSCRIPT
}
sub resize_contentdiv_js {
+ my ($tabidstr) = @_;
my $viewport_js = &Apache::loncommon::viewport_geometry_js();
return < maxtabw) {
+ maxtabw = actabw;
+ }
+ } else {
+ if (document.getElementById(alltabs[i]) != null) {
+ var thistab = document.getElementById(alltabs[i]);
+ thistab.style.visibility = 'hidden';
+ thistab.style.display = 'block';
+ var tabw = document.getElementById(alltabs[i]).offsetWidth;
+ thistab.style.display = 'none';
+ thistab.style.visibility = '';
+ if (tabw > maxtabw) {
+ maxtabw = tabw;
+ }
+ }
+ }
+ }
+
+ if (maxtabw > 0) {
+ var newscrollboxw;
+ if (maxtabw+paddingw+scrollboxscrollw scrollboxheight) {
- if (freespace > offset) {
- newscrollboxheight = scrollboxheight+freespace-offset;
- if (newscrollboxheight < minscrollbox) {
- newscrollboxheight = minscrollbox;
+ if (freevspace > offsetv) {
+ newscrollboxheight = scrollboxheight+freevspace-offsetv;
+ if (newscrollboxheight < minvscrollbox) {
+ newscrollboxheight = minvscrollbox;
}
scrollbox.style.height = newscrollboxheight+"px";
}
}
}
scrollboxheight = scrollbox.offsetHeight;
+ var contentlistheight = document.getElementById("contentlist").offsetHeight;
if (scrollboxscrollheight <= scrollboxheight) {
- var contentlistheight = document.getElementById("contentlist").offsetHeight;
- if ((contentlistheight+offset)