.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "pgFormatter::CGI 3pm" .TH pgFormatter::CGI 3pm "2021-04-26" "perl v5.32.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" pgFormatter::CGI \- Implementation of CGI\-BIN script to format SQL queries. .SH "VERSION" .IX Header "VERSION" Version 5.0 .SH "SYNOPSIS" .IX Header "SYNOPSIS" This module is called by pg_format program, when it detects it is run in \s-1CGI\s0 environment. In such case all control over flow is passed to this module by calling: .PP .Vb 2 \& my $program = pgFormatter::CGI\->new(); \& $program\->run() .Ve .SH "FUNCTIONS" .IX Header "FUNCTIONS" .SS "new" .IX Subsection "new" Object constructor, calls set_config method to set default values for various parameters. .SS "run" .IX Subsection "run" Wraps all work related to generating html page. .PP It calls set of functions to get \s-1CGI\s0 object, receive parameters from request, sanitize them, beautify query (if provided) and print ghtml. .SS "get_cgi" .IX Subsection "get_cgi" Creates \s-1CGI\s0 object, and sets \s-1POST\s0 size limit .SS "" .IX Subsection "" Sets config for the page and beautifier. URLs, names of auxiliary files, configuration for pgFormatter::Beautify module. .SS "" .IX Subsection "" Loads, and returns, default \s-1CSS\s0 from _\|_DATA_\|_. .SS "" .IX Subsection "" Gets values of parameters, and possibly uploaded file from \s-1CGI\s0 object to structures in \f(CW$self\fR. .SS "sanitize_params" .IX Subsection "sanitize_params" Overrides parameter values if given values were not within acceptable ranges. .SS "beautify_query" .IX Subsection "beautify_query" Runs beautification on provided query, and stores new version in \f(CW$self\fR\->{'content'} .SS "" .IX Subsection "" Outputs body of the page. .SS "print_footer" .IX Subsection "print_footer" Outputs footer of the page .SS "_load_optional_file" .IX Subsection "_load_optional_file" Helper function to try to load file. If it succeeds, it returns file content, it not, it returns empty string (instead of dying). .SS "print_headers" .IX Subsection "print_headers" Outputs page headers \- both \s-1HTTP\s0 level headers, and \s-1HTML.\s0 .SH "DATA" .IX Header "DATA" _\|_DATA_\|_ section (at the end of this file) is used to store default \s-1CSS\s0 Style, so that it will not \*(L"pollute\*(R" Perl code, and will not need to be indented. .SH "AUTHOR" .IX Header "AUTHOR" pgFormatter is an original work from Gilles Darold .SH "BUGS" .IX Header "BUGS" Please report any bugs or feature requests to: https://github.com/darold/pgFormatter/issues .SH "COPYRIGHT" .IX Header "COPYRIGHT" Copyright 2012\-2021 Gilles Darold. All rights reserved. .SH "LICENSE" .IX Header "LICENSE" pgFormatter is free software distributed under the PostgreSQL Licence. .PP A modified version of the SQL::Beautify Perl Module is embedded in pgFormatter with copyright (C) 2009 by Jonas Kramer and is published under the terms of the Artistic License 2.0.