/
var
/
www
/
vhosts
/
ihelp.ro
/
httpdocs
/
vendor
/
squizlabs
/
php_codesniffer
/
src
/
Generators
/
/var/www/vhosts/ihelp.ro/httpdocs/vendor/squizlabs/php_codesniffer/src/Generators
mkdir
upload
Name
Size
Mode
Actions
Generator.php
3154
0644
edit
dl
rm
HTML.php
8530
0644
edit
dl
rm
Markdown.php
4409
0644
edit
dl
rm
Text.php
8247
0644
edit
dl
rm
Edit:
/var/www/vhosts/ihelp.ro/httpdocs/vendor/squizlabs/php_codesniffer/src/Generators/HTML.php
(8530B)
<?php /** * A doc generator that outputs documentation in one big HTML file. * * Output is in one large HTML file and is designed for you to style with * your own stylesheet. It contains a table of contents at the top with anchors * to each sniff. * * @author Greg Sherwood <gsherwood@squiz.net> * @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600) * @license https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence */ namespace PHP_CodeSniffer\Generators; use PHP_CodeSniffer\Config; class HTML extends Generator { /** * Generates the documentation for a standard. * * @return void * @see processSniff() */ public function generate() { ob_start(); $this->printHeader(); $this->printToc(); foreach ($this->docFiles as $file) { $doc = new \DOMDocument(); $doc->load($file); $documentation = $doc->getElementsByTagName('documentation')->item(0); $this->processSniff($documentation); } $this->printFooter(); $content = ob_get_contents(); ob_end_clean(); echo $content; }//end generate() /** * Print the header of the HTML page. * * @return void */ protected function printHeader() { $standard = $this->ruleset->name; echo '<html>'.PHP_EOL; echo ' <head>'.PHP_EOL; echo " <title>$standard Coding Standards</title>".PHP_EOL; echo ' <style> body { background-color: #FFFFFF; font-size: 14px; font-family: Arial, Helvetica, sans-serif; color: #000000; } h1 { color: #666666; font-size: 20px; font-weight: bold; margin-top: 0px; background-color: #E6E7E8; padding: 20px; border: 1px solid #BBBBBB; } h2 { color: #00A5E3; font-size: 16px; font-weight: normal; margin-top: 50px; } .code-comparison { width: 100%; } .code-comparison td { border: 1px solid #CCCCCC; } .code-comparison-title, .code-comparison-code { font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #000000; vertical-align: top; padding: 4px; width: 50%; background-color: #F1F1F1; line-height: 15px; } .code-comparison-code { font-family: Courier; background-color: #F9F9F9; } .code-comparison-highlight { background-color: #DDF1F7; border: 1px solid #00A5E3; line-height: 15px; } .tag-line { text-align: center; width: 100%; margin-top: 30px; font-size: 12px; } .tag-line a { color: #000000; } </style>'.PHP_EOL; echo ' </head>'.PHP_EOL; echo ' <body>'.PHP_EOL; echo " <h1>$standard Coding Standards</h1>".PHP_EOL; }//end printHeader() /** * Print the table of contents for the standard. * * The TOC is just an unordered list of bookmarks to sniffs on the page. * * @return void */ protected function printToc() { echo ' <h2>Table of Contents</h2>'.PHP_EOL; echo ' <ul class="toc">'.PHP_EOL; foreach ($this->docFiles as $file) { $doc = new \DOMDocument(); $doc->load($file); $documentation = $doc->getElementsByTagName('documentation')->item(0); $title = $this->getTitle($documentation); echo ' <li><a href="#'.str_replace(' ', '-', $title)."\">$title</a></li>".PHP_EOL; } echo ' </ul>'.PHP_EOL; }//end printToc() /** * Print the footer of the HTML page. * * @return void */ protected function printFooter() { // Turn off errors so we don't get timezone warnings if people // don't have their timezone set. $errorLevel = error_reporting(0); echo ' <div class="tag-line">'; echo 'Documentation generated on '.date('r'); echo ' by <a href="https://github.com/squizlabs/PHP_CodeSniffer">PHP_CodeSniffer '.Config::VERSION.'</a>'; echo '</div>'.PHP_EOL; error_reporting($errorLevel); echo ' </body>'.PHP_EOL; echo '</html>'.PHP_EOL; }//end printFooter() /** * Process the documentation for a single sniff. * * @param \DOMNode $doc The DOMNode object for the sniff. * It represents the "documentation" tag in the XML * standard file. * * @return void */ public function processSniff(\DOMNode $doc) { $title = $this->getTitle($doc); echo ' <a name="'.str_replace(' ', '-', $title).'" />'.PHP_EOL; echo " <h2>$title</h2>".PHP_EOL; foreach ($doc->childNodes as $node) { if ($node->nodeName === 'standard') { $this->printTextBlock($node); } else if ($node->nodeName === 'code_comparison') { $this->printCodeComparisonBlock($node); } } }//end processSniff() /** * Print a text block found in a standard. * * @param \DOMNode $node The DOMNode object for the text block. * * @return void */ protected function printTextBlock(\DOMNode $node) { $content = trim($node->nodeValue); $content = htmlspecialchars($content); // Allow em tags only. $content = str_replace('<em>', '<em>', $content); $content = str_replace('</em>', '</em>', $content); echo " <p class=\"text\">$content</p>".PHP_EOL; }//end printTextBlock() /** * Print a code comparison block found in a standard. * * @param \DOMNode $node The DOMNode object for the code comparison block. * * @return void */ protected function printCodeComparisonBlock(\DOMNode $node) { $codeBlocks = $node->getElementsByTagName('code'); $firstTitle = $codeBlocks->item(0)->getAttribute('title'); $first = trim($codeBlocks->item(0)->nodeValue); $first = str_replace('<?php', '<?php', $first); $first = str_replace("\n", '</br>', $first); $first = str_replace(' ', ' ', $first); $first = str_replace('<em>', '<span class="code-comparison-highlight">', $first); $first = str_replace('</em>', '</span>', $first); $secondTitle = $codeBlocks->item(1)->getAttribute('title'); $second = trim($codeBlocks->item(1)->nodeValue); $second = str_replace('<?php', '<?php', $second); $second = str_replace("\n", '</br>', $second); $second = str_replace(' ', ' ', $second); $second = str_replace('<em>', '<span class="code-comparison-highlight">', $second); $second = str_replace('</em>', '</span>', $second); echo ' <table class="code-comparison">'.PHP_EOL; echo ' <tr>'.PHP_EOL; echo " <td class=\"code-comparison-title\">$firstTitle</td>".PHP_EOL; echo " <td class=\"code-comparison-title\">$secondTitle</td>".PHP_EOL; echo ' </tr>'.PHP_EOL; echo ' <tr>'.PHP_EOL; echo " <td class=\"code-comparison-code\">$first</td>".PHP_EOL; echo " <td class=\"code-comparison-code\">$second</td>".PHP_EOL; echo ' </tr>'.PHP_EOL; echo ' </table>'.PHP_EOL; }//end printCodeComparisonBlock() }//end class
Save
cmd:
run