Apache-Module

 view release on metacpan or  search on metacpan

lib/Apache/ModuleDoc.pm  view on Meta::CPAN

package Apache::ModuleDoc;

use mod_perl 1.16;
use strict;

use File::Basename 'basename';
use Apache::Util qw(escape_html);
use Apache::Module ();
use Apache::Constants qw(:common :override :args_how :server);

$Apache::ModuleDoc::VERSION = '1.02';
my $ServerVersion;

sub handler {
    my $r = shift;
    $ServerVersion ||= version();

lib/Apache/ModuleDoc.pm  view on Meta::CPAN

	    $override = "Any other than None";
	}
	else {
	    my @or = ();
	    for my $key (sort keys %AllowOverride) {
		push @or, $key if $pc->req_override & $AllowOverride{$key};
	    }
	    $override = join " or ", @or;
	}
    }
    return(escape_html($retval), $override);
}

sub start_html {
    my $name = shift;
    print <<EOF;
<HTML>
<HEAD><TITLE>Apache module $name</TITLE></HEAD>

<BODY 
 BGCOLOR="#FFFFFF" TEXT="#000000"

lib/Apache/ModuleDoc.pm  view on Meta::CPAN

EOF

}

sub menu {
    my($r, $modp) = @_;
    my @cmds = sort by_name @{ $modp->commands };

    print "<UL>\n";
    for my $cmd (@cmds) {
	my $text = escape_html($cmd);
	(my $name = $cmd) =~ s/[<>]/./g;

	print qq(<LI><A HREF="#$name">$text</A>\n);
    }
    print "</UL>\n<HR>\n";
}

sub body {
    my($r, $modp) = @_;
    my @cmds = sort by_name @{ $modp->commands };
    (my $module = $modp->name) =~ s/\.c$//;

    for my $cmd (@cmds) {
	my $text = escape_html($cmd);
	my $cmd_rec = $modp->cmds->find($cmd);
	(my $name = $cmd) =~ s/[<>]/./g;

	my($context,$override) = overrides($modp, $cmd_rec);
	my $args_how = $cmd_rec->args_how;
	my $syntax = $Syntax{$args_how};
	my $perl_syntax = perl_syntax($cmd, $args_how);

	#this one's a wild guess
	my $status = "Extension";
	my $uri = $r->uri . ".html";
	if(-e $r->lookup_uri($uri)->filename) {
	    $status = "Base";
	}
	$status = "Base" if $module eq "http_core";

	print qq(<H2><A name="$name">$text directive</A></H2><P>\n);
	print "Description: ", 
               escape_html($cmd_rec->errmsg), "<br>";
	splain(Syntax     => "$text <EM>$syntax</EM> ($args_how)");
	splain(PerlSyntax => "<tt>$perl_syntax</tt>");
	splain(Context    => $context);
	splain(Override   => $override);
	splain(Status     => $status);
	splain(Module     => $module);
	print "</P><HR>";
    }
}



( run in 0.487 second using v1.01-cache-2.11-cpan-c21f80fb71c )