report_base.php

Go to the documentation of this file.
00001 <?php
00002 
00006 $myConfig = oxRegistry::getConfig();
00007 
00011 $sIncPath = $myConfig->getConfigParam('sShopDir');
00012 
00016 DEFINE('USE_CACHE', false);
00017 DEFINE('CACHE_DIR', $myConfig->getConfigParam('sCompileDir'));
00018 
00022 require_once "$sIncPath/core/jpgraph/jpgraph.php";
00023 require_once "$sIncPath/core/jpgraph/jpgraph_bar.php";
00024 require_once "$sIncPath/core/jpgraph/jpgraph_line.php";
00025 require_once "$sIncPath/core/jpgraph/jpgraph_pie.php";
00026 require_once "$sIncPath/core/jpgraph/jpgraph_pie3d.php";
00027 
00028 if (!class_exists('report_base')) {
00032     class Report_base extends oxAdminView
00033     {
00034 
00040         protected $_oSmarty = null;
00041 
00047         public function render()
00048         {
00049             return $this->_sThisTemplate;
00050         }
00051 
00057         public function setSmarty($oSmarty)
00058         {
00059             $this->_oSmarty = $oSmarty;
00060         }
00061 
00067         public function getSmarty()
00068         {
00069             return $this->_oSmarty;
00070         }
00071 
00077         public function getWeekRange()
00078         {
00079             $myConfig = $this->getConfig();
00080 
00081             // initializing one week before current..
00082             $iFrom = oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime(oxRegistry::getConfig()->getRequestParameter("time_from")));
00083             $iTo = oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime(oxRegistry::getConfig()->getRequestParameter("time_to")));
00084 
00085             return array($iFrom - 1, $iTo + 1);
00086         }
00087 
00098         public function getGraph($iXSize, $iYSize, $sBackgroundImg = null, $sScaleType = "textlin")
00099         {
00100             $sBackgroundImg = $sBackgroundImg ? $sBackgroundImg : $this->getConfig()->getImageDir(true) . "/reportbgrnd.jpg";
00101 
00102             // New graph with a drop shadow
00103             $oGraph = new Graph($iXSize, $iYSize);
00104 
00105             $oGraph->setBackgroundImage($sBackgroundImg, BGIMG_FILLFRAME);
00106 
00107             // Use a "text" X-scale
00108             $oGraph->setScale($sScaleType);
00109 
00110             // Label align for X-axis
00111             $oGraph->xaxis->setLabelAlign('center', 'top', 'right');
00112 
00113             // Label align for Y-axis
00114             $oGraph->yaxis->setLabelAlign('right', 'bottom');
00115 
00116             // shadow
00117             $oGraph->setShadow();
00118 
00119             // Use built in font
00120             $oGraph->title->setFont(FF_FONT1, FS_BOLD);
00121 
00122             return $oGraph;
00123         }
00124     }
00125 }