--- loncom/xml/londefdef.pm 2007/07/04 14:02:14 1.372 +++ loncom/xml/londefdef.pm 2007/09/10 20:09:13 1.377 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Tags Default Definition Module # -# $Id: londefdef.pm,v 1.372 2007/07/04 14:02:14 foxr Exp $ +# $Id: londefdef.pm,v 1.377 2007/09/10 20:09:13 albertel Exp $ # # # Copyright Michigan State University Board of Trustees @@ -448,6 +448,16 @@ sub start_meta { if ((not defined $content) && (not defined $name)) { &Apache::lonxml::startredirection(); } + } elsif ($target eq 'edit') { + $currentstring .= &Apache::edit::tag_start($target,$token); + $currentstring .= &Apache::edit::text_arg('Name:','name',$token,30); + $currentstring .= &Apache::edit::text_arg('Content:','content',$token,70); + $currentstring .= &Apache::edit::end_row(); + } elsif ($target eq 'modified') { + my $constructtag = + &Apache::edit::get_new_args($token,$parstack,$safeeval, + 'name','content'); + if ($constructtag) { $currentstring = &Apache::edit::rebuild_tag($token); } } return $currentstring; } @@ -471,29 +481,36 @@ sub end_meta { return $currentstring; } +sub insert_meta { + return ' + '; +} + # accessrule sub start_accessrule { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; my $currentstring = ''; - my $eff=&Apache::lonxml::get_param - ('effect',$parstack,$safeeval,undef,1); - my $realm=&Apache::lonxml::get_param - ('realm',$parstack,$safeeval,undef,1); - my $role=&Apache::lonxml::get_param - ('role',$parstack,$safeeval,undef,1); - my ($dom,$crs,$sec)=split(/\_/,$realm); - $dom = &LONCAPA::clean_domain($dom); - my $type=&Apache::lonxml::get_param - ('type',$parstack,$safeeval,undef,1); + my $eff =&Apache::lonxml::get_param('effect',$parstack,$safeeval,undef,1); + my $realm=&Apache::lonxml::get_param('realm', $parstack,$safeeval,undef,1); + my $role =&Apache::lonxml::get_param('role', $parstack,$safeeval,undef,1); + my $type =&Apache::lonxml::get_param('type', $parstack,$safeeval,undef,1); + + my ($dom,$crs,$sec,$separator); if ($type eq 'user') { + ($dom,$crs,$sec)=split(m{/},$realm); $crs = &LONCAPA::clean_username($crs); + $separator = '/'; } else { + ($dom,$crs,$sec)=split(/\_/,$realm); $crs = &LONCAPA::clean_courseid($crs); + $separator = '_'; } + $dom = &LONCAPA::clean_domain($dom); + $sec =~s/\W//; $realm = $dom; - if ($crs =~ /\S/) { $realm .= '_'.$crs; } - if ($sec =~ /\S/) { $realm .= '_'.$sec; } + if ($crs =~ /\S/) { $realm .= $separator.$crs; } + if ($sec =~ /\S/) { $realm .= $separator.$sec; } $role=~s/\W//g; if ($target eq 'web') { @@ -561,21 +578,27 @@ sub start_body { 'force_register' => 1}); if ($env{'request.state'} ne 'published') { - $currentstring.=&Apache::lonmenu::constspaceform(); - $currentstring.=(< - - - -EDITBUTTON + } $currentstring.=&Apache::lonxml::message_location(); + $currentstring.=&Apache::lonmenu::constspaceform(); + $currentstring.=&Apache::londefdef::edit_controls(); } elsif ($target eq 'tex') { $currentstring = '\begin{document}'; } return $currentstring; } +sub edit_controls { + my $result .= (< + + + +EDITBUTTON + return $result; +} + sub end_body { my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; my $currentstring = &end_p(); # Close off unclosed @@ -1251,9 +1274,7 @@ sub start_br { $signal = 1; } } - if ($signal eq 1) { - $currentstring .= ' \vskip 0 mm '; - } else { + if ($signal != 1) { $currentstring .= '\strut \\\\ \strut '; }
@@ -1251,9 +1274,7 @@ sub start_br { $signal = 1; } } - if ($signal eq 1) { - $currentstring .= ' \vskip 0 mm '; - } else { + if ($signal != 1) { $currentstring .= '\strut \\\\ \strut '; }