рдХрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рддрд░рд╣, рдореИрдВ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрджреЗрд╣ рдХреА рдПрдХ рдбрд┐рдЧреНрд░реА рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реВрдВ, рдФрд░ рдЦреБрдж рд╕рдм рдХреБрдЫ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред
рд╡рд┐рджреЗрд╢реА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, liveinternet рдФрд░ рдпрд╛рддреНрд░рд╛рдУрдВ рдХреЗ рдЕрдиреНрдп рдХрд╛рдЙрдВрдЯрд░ред рдореИрдВ рдХрд┐рд╕реА рддрд░рд╣ рдЙрди рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛, рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВред
рдЕрдм рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ (рдФрд░ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реВрдВ) рдХрд┐ рдореЙрдбреЗрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдЗрдЯ рд╡рд┐рдЬрд╝рд┐рдЯрд░ рдХрд╛ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред

рд╕реНрдЯреЗрдЬ 1. рд╣рдо рдПрдХ рд▓реЙрдЧ рд▓рд┐рдЦрддреЗ рд╣реИрдВред
рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдпрд╛рддреНрд░рд╛рдУрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдЖрдкрдХреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдХ sql рдХреНрд╡реЗрд░реА рдмрдирд╛рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, phpmyadmin рдореЗрдВред
CREATE TABLE IF NOT EXISTS `modx_visitors_log` ( `index` int(10) NOT NULL AUTO_INCREMENT, `ip` varchar(15) COLLATE utf8_unicode_ci NOT NULL, `host` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `url` text COLLATE utf8_unicode_ci NOT NULL, `datetime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `referer` text COLLATE utf8_unicode_ci NOT NULL, `browser` varchar(255) NOT NULL, PRIMARY KEY (`index`), KEY `ip` (`ip`,`host`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
рддрд╛рд▓рд┐рдХрд╛ рддреИрдпрд╛рд░ рд╣реИ, рдЕрдм рд╣рдореЗрдВ рд╡рд┐рдЬрд╝рд┐рдЯ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдиреИрдХреНрд╕ рдФрд░ рдореЙрдбрдХреНрд╕ рдореЗрдВ рдЪрдВрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд▓рдЧрдЗрдиреНрд╕ рдЖрдорддреМрд░ рдкрд░ рдЕрджреНрдпрддрд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдВ: рдореЙрдбреЗрдХреНрд╕ рдореЗрдВ рдкреНрд▓рдЧрдЗрди, рдЕрдЧрд░ рд╕рд░рд▓ рд╣реИ, рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рд╣реИ рдЬреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╕реЗ рдХреЙрд▓ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╕рд┐рд╕реНрдЯрдо рдИрд╡реЗрдВрдЯ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЗрдВрдЬрди рдореЗрдВ рдХрд╛рдлреА рдХреБрдЫ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо
OnLogPageHit рдЗрд╡реЗрдВрдЯ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред
рдХреЗ рдкрд╛рд╕ рдЬрд╛рдУ
-> ->->
рд╣рдо рдирдП
dbLog рдкреНрд▓рдЧрдЗрди рдХрд╛
рдирд╛рдо рджреЗрддреЗ рд╣реИрдВ рдФрд░
рдЙрд╕рдореЗрдВ рдирд┐рдореНрди рдХреЛрдб рдкреЗрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ:
рд╕рд┐рд╕реНрдЯрдо рдИрд╡реЗрдВрдЯреНрд╕ рдЯреИрдм рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ рдФрд░
OnLogPageHit рд╕реЗрдЯ рдХрд░реЗрдВ, рдлрд┐рд░ рд╕рд╣реЗрдЬреЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдПрдХ рдкреНрд▓рдЧрдЗрди рдбрд┐рдЬрд╛рдЗрди рдХрд░рддреЗ рд╕рдордп, рдЕрдВрдд рдореЗрдВ <? Php рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░?> рдЕрдВрдд рдореЗрдВ ред рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдкреНрд▓рдЧрдЗрдиреНрд╕ рдирд╣реАрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ рдкреИрдЧрд┐рди рд▓рд┐рдЦрд╛ рдерд╛, рддреЛ рдореИрдВрдиреЗ рдмрд╣реБрдд рдХрд╕рдо рдЦрд╛рдИ рдереАред
рдпрд╣реА рд╣реИ, рдкреНрд▓рдЧрдЗрди рдХреЛ рдЖрдкрдХреЗ рд╕рднреА рдЖрдЧрдВрддреБрдХреЛрдВ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬрдм рддрдХ, рдмреЗрд╢рдХ, рдЖрдк рдХрд╣реАрдВ рднреА рдЧрд▓рдд рдереЗ!
рд╡реИрд╕реЗ,
OnWebPageComplete рдЗрд╡реЗрдВрдЯ рдкрд░ рдкреНрд▓рдЧрдЗрди рдХреЛ рд▓рдЯрдХрд╛ рджреЗрдиреЗ рдХрд╛ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдлрд┐рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ "рд░рдЬрд┐рд╕реНрдЯрд░ рд╡рд┐рдЬрд╝рд┐рдЯ" рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ рдФрд░ рдПрдХ рд╕рдорд╛рди рдмрдЯрди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЧреБрдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрднреА рддрдХ рдирд╣реАрдВ рдЪрд▓рд╛рдпрд╛ рд╣реИред рдШрдЯрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА
рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ ред
рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдЖрдЧрдВрддреБрдХреЛрдВ рдХреЗ рдЖрдИрдкреА рдкрд░ рдкрдВрдЬреАрдХреГрдд рд╣реЛрд╕реНрдЯ рдирд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдПрдХ рдФрд░ рд╕реНрдирд┐рдкреЗрдЯ (
Ip2Host ) рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕рдордп рдкрд░ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдРрд╕рд╛ рдХреНрдпреЛрдВ? рдпрд╣ рд╕рд░реНрд╡рд░ рдХреА рддрд╛рдХрдд рдХреЛ рдмрдЪрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдореЗрдЬрдмрд╛рди рдХреЛ рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВ, рддреЛ рд▓реЛрдб рдЧрдВрднреАрд░ рд╣реЛрдЧрд╛ред рджрд┐рди рдореЗрдВ рдПрдХ рдмрд╛рд░ рд░рд╛рдд рдореЗрдВ рджреМрдбрд╝рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
<?php $db = '`modx_visitors_log`';
рдЖрдкрдХреЛ рдЕрдЬрдирдмрд┐рдпреЛрдВ рд╕реЗ рдЫрд┐рдкреЗ рдХрд┐рд╕реА рдкреГрд╖реНрда рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
[!Ip2Host!]
рдФрд░ рдЙрд╕рдХреЗ рдХреНрд░реИрдВрдХ рдХреЛ:
10 2 * * * * user wget localhost/secret_page.html
рд╕реНрдЯреЗрдЬ рджреЛред рд╕реНрдХреНрд░реАрди рдкрд░ рдЖрдЙрдЯрдкреБрдЯ рд▓реЙрдЧ рдХрд░реЗрдВред
рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЖрдкрдХреА рдпрд╛рддреНрд░рд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИрдВ, рдФрд░ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╡рд╣рд╛рдВ рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдПрдХ рдЕрдЪреНрдЫреА рдЕрдиреБрд╕реВрдЪреА рдФрд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрди рд╣реВрдВред
рддреЛ рдЪрд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВред
рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо рдмрд╛рдж рдореЗрдВ рд╢реЗрдбреНрдпреВрд▓ рдХрд░реЗрдВрдЧреЗред рдХреЛрдб рдХреЗ рдЕрдВрджрд░ рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБред
<?php if (empty($db)) {$db = '`modx_visitors_log`';}
рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рдмрдирд╛рдПрдВ, рдЗрд╕реЗ рдирд╛рдо рджреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
GenerStatGraph , рд╡рд╣рд╛рдВ рдХреЛрдб рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рд╕рд╣реЗрдЬреЗрдВред
рдЕрдм рд╣рдореЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рдЕрдкрдиреА рддреВрдлрд╛рдиреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╣рдореЗрдВ рджреЛ chunk рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдкрд╣рд▓рд╛, рд╕рд┐рд░реНрдл рдореЗрдЬ рдХреЗ рд▓рд┐рдП, рджреВрд╕рд░рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ - рд╕рд╛рдЬрд┐рд╢ рд░рдЪрдиреЗ рдХреЗ рд▓рд┐рдПред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ (tpl.StatTable)ред
<div style='margin: auto;text-align: center;'> <table id='chart_table'> <caption> [+stat.days+] [+stat.days.text+]</caption> <thead> <tr><td></td>[+stat.date+]</tr> </thead> <tbody> <tr><th></th>[+stat.host+]</tr> <tr><th></th>[+stat.hit+]</tr> </tbody> </table> </div>
рдкреНрд▓реЙрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ (tpl.StatGraph)ред
<link type='text/css' rel='stylesheet' href='[(site_url)]inc/css/visualize.css' /> <script type='text/javascript' src='[(site_url)]inc/js/visualize.jquery.js'></script> <script type='text/javascript'> $(document).ready(function(){ $('#chart').visualize({ type: 'area', width: '570', height: '300' }); }); </script> <div style='margin: auto;'> <table id='chart' style='display: none;'> <caption> [+stat.days+] [+stat.days.text+]</caption> <thead> <tr><td></td>[+stat.date+]</tr> </thead> <tbody> <tr><th></th>[+stat.host+]</tr> <tr><th></th>[+stat.hit+]</tr> </tbody> </table> </div>
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпреЗ рджреЛрдиреЛрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЕрджреНрднреБрдд jquery
jQuery рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝ рдкреНрд▓рдЧрдЗрди рдХреЗ рджреВрд╕рд░реЗ рдХрдиреЗрдХреНрд╢рди рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВ, рдЬреЛ рд╣рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рдЧреНрд░рд╛рдлрд╝ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА рдЗрд╕ рд╢реЗрдбреНрдпреВрд▓ рдХрд╛ рдбрд┐рдЬрд╛рдЗрдиред
рдЧреНрд░рд╛рдл рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб (jquery.visualize рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рд╕рд╛рде рд╣реА рдбрд┐рдЬрд╛рдЗрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдКрдкрд░ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдХреЛ рджреЗрдЦреЗрдВ):
$(document).ready(function(){ $('#chart').visualize({ type: 'area', width: '570', height: '300' }); });
рдЙрдлреНрдлреНрдл ... рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рдЧрднрдЧ рд╕рдм рдХреБрдЫред
рд╕реНрдЯреЗрдЬ 3. рд▓реЙрдиреНрдЪ!
рд╣рдо рдПрдХ рдирдпрд╛ рдореЙрдбреЗрдХреНрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ (рдПрдХ рдЕрд▓рдЧ рдЯреЗрдмрд▓ рдФрд░ рдЧреНрд░рд╛рдлрд╝) рдЪрд▓рд╛рддреЗ рд╣реИрдВред
[!generateStatGraph? &days=`20` &tpl=`tpl.StatTable` &act=`table` &dateFormat=`%d <i>%b</i>` !] [!generateStatGraph? &days=`20` &daysText=`` &tpl=`tpl.StatGraph` &act=`graph` &dateFormat=`%d` !]
рдореИрдВ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣рд╛рдВ рд╣рдордиреЗ рдХреЗрд╡рд▓ рдпрд╛рддреНрд░рд╛рдУрдВ рдХреЗ рдЕрдирд╛рдо рдЖрдВрдХрдбрд╝реЗ рджрд┐рдЦрд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣рдо рдЖрдИрдкреА, рд╡рд┐рдЬрд╝рд┐рдЯ рдХреЗ рд╕рдордп, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрджрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд╕реАрдзреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рд╕рд╛рдЗрдЯ рдкрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╕реНрдирд┐рдкреЗрдЯ + рдбрд┐рдЬрд╝рд╛рдЗрди рдЪрдВрдХ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВредрдЖрд╡реЗрджрдиред
рдХреМрди рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рд╣реИ - рдЖрдк
рдХрд╛рдо рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦ рд╕рдХрддреЗ
рд╣реИрдВ , рдЙрд╕реА рд╕рдордп рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╣реИрдмреНрд░рдлреЗрдХреНрдЯ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╡реИрд╕реЗ, рдЖрдк рдЙрди рдЖрдВрдХрдбрд╝реЛрдВ рдореЗрдВ рдЧреИрд░-рдЕрдореНрд▓реАрдп рдЕрдВрддрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдореИрдВ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рдХреЗ рдиреАрдЪреЗ рд╕реНрдерд┐рдд рдХрд╛рдЙрдВрдЯрд░ рдкрд░ рд▓рд╛рдЗрд╡рдЗрдВрдЯрд░рдиреЗрдЯ рджрд┐рдЦрд╛рддрд╛ рд╣реИред
GenerateStatGraph рд╕реНрдирд┐рдкреЗрдЯ рд╡рд┐рдХрд▓реНрдк:
рдФрд░ рдбреА.рдмреА.
: `modx_visitors_log`
: [string]
: , (`modx`.`modx_log`).
рдФрд░ рджрд┐рдирд╛рдВрдХ
: '%d %b %Y %H:%M'
: strftime()
: .
рдФрд░ рджрд┐рди
: 14
: [int]
: .
& $ daysText
: ''
: [string]
: - , , .
& tpl
: 'tpl.StatGraph'
: modx
: .
рдФрд░ рдХрд╛рд░реНрдп рдХрд░реЗрдВ
: 'graph'
: graph, table
: . graph .
& int
: 2
: [int]
: &act=`graph`, &int , . - .
EventCalendar рд╕реНрдирд┐рдкреЗрдЯ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░:
[+ рд╕реНрдЯреЗрдЯ.рдбреЗ +]
[+ рд╕реНрдЯреЗрдЯ.рдбреЗрд╕реЗрдЯреЗрдХреНрд╕реНрдЯ +]
.
[+ рд╕реНрдЯреЗрдЯ.рдбреЗрдЯ +]
.
[+ рд╕реНрдЯреЗрдЯ.рд╣реЛрд╕реНрдЯ +]
().
[+ рд╕реНрдЯреЗрдЯ.рд╣рд┐рдЯ +]
().
рдЖрд╡рд╢реНрдпрдХ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХред
рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдХреЛ bezumkin@yandex.ru рдкрд░ рднреЗрдЬреЗрдВ, рдпрд╛ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрдВред