Subversion Repositories bysoftdeveloper

[/] [kernel/] [eztemplatesstatisticsreporter.php] - Diff between revs 24 and 32

Show entire file | Ignore whitespace | Details | Blame | View Log

Rev 24 Rev 32
Line 41... Line 41...
     static
     static
    */
    */
    static function generateStatistics( $as_html = true )
    static function generateStatistics( $as_html = true )
    {
    {
        $statStartTime = microtime( true );
        $statStartTime = microtime( true );
 
        $ini = eZINI::instance('site.ini');
 
        $activeExtensions = $ini->variable('ExtensionSettings', 'ActiveExtensions');
 
        $enable_highlight = false;
 
        $highlight_script = '';
 
        $highlight_event = '';
 
        $highlight_button = "";
        $stats = '';
        $stats = '';
 
       
 
        if(in_array('ezjscore', $activeExtensions) && in_array('ezsh', $activeExtensions))
 
        {
 
                $enable_highlight = true;
 
                $highlighturl = 'ezjscore/run/geshi/highlight';
 
                eZURI::transformURI($highlighturl, false);
 
                $highlight_event = "ondblclick='javascript:bysoftdeveloperHighlight();'";
 
                $highlight_button = '<input type="button" value="View" onclick="javascript:bysoftdeveloperHighlight();" />';
 
                $highlight_script = <<<EOT
 
                function bysoftdeveloperHighlight(){
 
                        var fp = document.getElementById('bysoftdeveloper-template-reporter-input').value;
 
                        if(typeof(fp) == 'undefined'|| fp == ''){alert('please select one tpl!'); return false;}
 
                       
 
                        var url = '$highlighturl' + '/' + fp;
 
                       
 
                        var options = {url:url, callback:bysoftdeveloperShowHighlightTpl};
 
                                function bysoftdeveloperShowHighlightTpl(result){
 
                                        document.getElementById('bysoftdeveloper-highlight-view').innerHTML = result;
 
                                        document.getElementById('bysoftdeveloper-highlight-view').style.display = '';
 
                                        goTo();
 
                            }
 
                                bysoftdeveloperAjax(options);
 
                }
 
                function bysoftdeveloperToggleHighlightView(){
 
                       
 
                                var vp = document.getElementById('bysoftdeveloper-highlight-view');
 
                                if(vp.style.display == 'none'){vp.style.display = '';}else{vp.style.display = 'none';}
 
                                       
 
                       
 
                }
 
EOT;
 
 
 
        }
 
       
 
        if($enable_highlight)
 
        {
 
        $stats = <<<EOT
 
        <style type="text/css">
 
#bysoftdeveloper-highlight-view{font-size: 110%; background:#c7edcc; position: relative; z-index: 99999;}
 
#bysoftdeveloper-highlight-view h1{font-size: 130%;border-bottom:1px dashed; margin-bottom: 5px; }
 
</style>
 
EOT;
 
        }
 
       
        if ( !eZTemplate::isTemplatesUsageStatisticsEnabled() )
        if ( !eZTemplate::isTemplatesUsageStatisticsEnabled() )
            return $stats;
            return $stats;
 
 
        if ( $as_html )
        if ( $as_html )
        {
        {
            $stats .= "<h2>Templates used to render the page:</h2>";
                if($enable_highlight)
 
                {
 
                        $stats .= "<div><div style='text-align:center;background:green;color:#fff;cursor:pointer;font-weight:bold;' onclick='javascript:bysoftdeveloperToggleHighlightView();'>Tpl Highlight</div><div id='bysoftdeveloper-highlight-view' style='display:none;'></div></div>";
 
                }
 
                $stats .= "<h2>Templates used to render the page:</h2>";
            $stats .= ( "<table id='templateusage' summary='List of used templates' style='border: 1px dashed black;' cellspacing='0'>" .
            $stats .= ( "<table id='templateusage' summary='List of used templates' style='border: 1px dashed black;' cellspacing='0'>" .
                   "<tr><th>Usages</th>" .
                   "<tr><th>Usages</th>" .
                   "<th>Requested template</th>" .
                   "<th>Requested template</th>" .
                   "<th>Template</th>" .
                   "<th>Template</th>" .
                   "<th>Template loaded</th>" .
                   "<th>Template loaded</th>" .
Line 63... Line 116...
       
       
            // cavin.deng add these two variables
            // cavin.deng add these two variables
            $stats .= <<<EOT
            $stats .= <<<EOT
            <tr>
            <tr>
                <td colspan="6" align="center">
                <td colspan="6" align="center">
                        Template Path:<input size=150 type="text" value="" id="bysoftdeveloper-template-reporter-input" />
                        Template Path:<input size=150 type="text" value="" id="bysoftdeveloper-template-reporter-input" />$highlight_button
                </td>
                </td>
            </tr>
            </tr>
EOT;
EOT;
   
   
            //$stats .= $show_design_path_script;
            //$stats .= $show_design_path_script;
Line 149... Line 202...
                   
                   
                    // cavin.deng modify this place, to offer full path base on OS
                    // cavin.deng modify this place, to offer full path base on OS
                    $fullFileName = str_replace('\\', '/', $siteDir . $templateFileName );
                    $fullFileName = str_replace('\\', '/', $siteDir . $templateFileName );
 
 
                    $stats .= (
                    $stats .= (
                           "<tr onclick=\"show_design_path('$fullFileName', this, event);\">" .
                           "<tr onclick=\"show_design_path('$fullFileName', this, event);\" $highlight_event>" .
                           "<td class=\"$tdClass\">$templateCounts[$actualTemplateName]</td>" .
                           "<td class=\"$tdClass\">$templateCounts[$actualTemplateName]</td>" .
                           "<td class=\"$tdClass\"><a href=\"$requestedTemplateViewURI\">$requestedTemplateName</a></td>" .
                           "<td class=\"$tdClass\"><a href=\"$requestedTemplateViewURI\">$requestedTemplateName</a></td>" .
                           "<td class=\"$tdClass\">$actualTemplateNameOutput</td>" .
                           "<td class=\"$tdClass\">$actualTemplateNameOutput</td>" .
                           "<td class=\"$tdClass\">$templateFileName</td>" .
                           "<td class=\"$tdClass\">$templateFileName</td>" .
                           "<td class=\"$tdClass\" align=\"center\"><a href=\"$templateEditURI/(siteAccess)/$currentSiteAccess\"><img src=\"$editIconFile\" width=\"$iconSizeX\" height=\"$iconSizeY\" alt=\"Edit template\" title=\"Edit template\" /></a></td>".
                           "<td class=\"$tdClass\" align=\"center\"><a href=\"$templateEditURI/(siteAccess)/$currentSiteAccess\"><img src=\"$editIconFile\" width=\"$iconSizeX\" height=\"$iconSizeY\" alt=\"Edit template\" title=\"Edit template\" /></a></td>".
Line 196... Line 249...
        }
        }
        else
        else
        {
        {
            $stats .= "\nTotal templates count: " . $totalTemplatesCount . "\n" . "Total unique templates count: " . $totalUniqueTemplatesCopunt . "\n";
            $stats .= "\nTotal templates count: " . $totalTemplatesCount . "\n" . "Total unique templates count: " . $totalUniqueTemplatesCopunt . "\n";
        }
        }
       
 
                // cavin.deng add these js.
                // cavin.deng add these js.
                $template_js = <<<EOT
                $template_js = <<<EOT
        <script type="text/javascript">
        <script type="text/javascript">
                function show_design_path(file, trElement, e){
                function show_design_path(file, trElement, e){
                        //var e = e || event || window.event;
                        //var e = e || event || window.event;
Line 216... Line 269...
                        if( e.stopPropagation )
                        if( e.stopPropagation )
                                e.stopPropagation();
                                e.stopPropagation();
                        else
                        else
                                e.cancelBubble = true
                                e.cancelBubble = true
                }
                }
 
               
 
                $highlight_script
        </script>
        </script>
EOT;
EOT;
 
 
                //$stats = $stats . $templateusageindiv . $template_js;
                //$stats = $stats . $templateusageindiv . $template_js;
                $stats = $templateusageindiv . $template_js;
                $stats = $templateusageindiv . $template_js;