Ignore:
Timestamp:
2006/09/24 16:52:08 (20 years ago)
Author:
kakinaka
Message:

blank

File:
1 edited

Legend:

Unmodified
Added
Removed
  • temp/trunk/html/admin/total/index.php

    r5433 r5554  
    11<?php 
    22require_once("../require.php"); 
    3 $INSTALL_DIR = realpath(dirname( __FILE__)); 
     3require_once("./index_sub.php"); 
     4require_once("../batch/daily.php"); 
     5 
     6require_once("./class/SC_GraphPie.php"); 
     7require_once("./class/SC_GraphLine.php"); 
     8require_once("./class/SC_GraphBar.php"); 
    49 
    510class LC_Page { 
     11    var $arrResults; 
     12    var $keyname; 
     13    var $tpl_image; 
     14    var $arrTitle; 
    615    function LC_Page() { 
    7         $this->arrDB_TYPE = array( 
    8             'pgsql' => 'PostgreSQL', 
    9             'mysql' => 'mySQL'   
    10         ); 
     16        $this->tpl_mainpage = 'total/index.tpl'; 
     17        $this->tpl_subnavi = 'total/subnavi.tpl'; 
     18        $this->tpl_graphsubtitle = 'total/subtitle.tpl'; 
     19        $this->tpl_titleimage = '/img/title/title_sale.jpg'; 
     20        $this->tpl_mainno = 'total'; 
     21        global $arrWDAY; 
     22        $this->arrWDAY = $arrWDAY; 
     23        // ¥Ú¡¼¥¸¥¿¥¤¥È¥ë 
     24        $this->arrTitle[''] = "´ü´ÖÊ̽¸·×"; 
     25        $this->arrTitle['term'] = "´ü´ÖÊ̽¸·×"; 
     26        $this->arrTitle['products'] = "¾¦ÉÊÊ̽¸·×"; 
     27        $this->arrTitle['age'] = "ǯÂåÊ̽¸·×"; 
     28        $this->arrTitle['job'] = "¿¦¶ÈÊ̽¸·×"; 
     29        $this->arrTitle['member'] = "²ñ°÷Ê̽¸·×"; 
    1130    } 
    1231} 
    1332 
    1433$objPage = new LC_Page(); 
    15  
    16 // ¥Æ¥ó¥×¥ì¡¼¥È¥³¥ó¥Ñ¥¤¥ë¥Ç¥£¥ì¥¯¥È¥ê¤Î½ñ¹þ¤ß¸¢¸Â¥Á¥§¥Ã¥¯ 
    17 $temp_dir = $INSTALL_DIR . '/temp'; 
    18 $mode = lfGetFileMode($temp_dir); 
    19  
    20 if($mode != '777') { 
    21     sfErrorHeader($temp_dir . "¤Ë¥æ¡¼¥¶½ñ¹þ¤ß¸¢¸Â(777)¤òÉÕÍ¿¤·¤Æ²¼¤µ¤¤¡£", true); 
    22     exit; 
    23 } 
    24  
    25 $objView = new SC_InstallView($INSTALL_DIR . '/templates', $INSTALL_DIR . '/temp'); 
     34$objView = new SC_AdminView(); 
     35$objSess = new SC_Session(); 
     36// ǧ¾Ú²ÄÈݤÎȽÄê 
     37sfIsSuccess($objSess); 
     38 
     39// ÆþÎÏ´ü´Ö¤ò¥»¥Ã¥·¥ç¥ó¤Ëµ­Ï¿¤¹¤ë 
     40lfSaveDateSession(); 
    2641 
    2742// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹ 
    28 $objWebParam = new SC_FormParam(); 
    29 $objDBParam = new SC_FormParam(); 
     43$objFormParam = new SC_FormParam(); 
    3044// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
    31 $objWebParam = lfInitWebParam($objWebParam); 
    32 $objDBParam = lfInitDBParam($objDBParam); 
    33  
    34 if ($_POST['db_type'] == 'pgsql') { 
    35     $port = ""; 
    36 }else{ 
    37     $port = ":".$_POST['db_port']; 
    38 } 
    39  
    40 //¥Õ¥©¡¼¥àÇÛÎó¤Î¼èÆÀ 
    41 $objWebParam->setParam($_POST); 
    42 $objDBParam->setParam($_POST); 
     45lfInitParam(); 
     46$objFormParam->setParam($_POST); 
     47$objFormParam->setParam($_GET); 
     48 
     49// ¸¡º÷¥ï¡¼¥É¤Î°ú¤­·Ñ¤® 
     50foreach ($_POST as $key => $val) { 
     51    if (ereg("^search_", $key)) { 
     52        $objPage->arrHidden[$key] = $val;        
     53    } 
     54} 
    4355 
    4456switch($_POST['mode']) { 
    45 // ¤è¤¦¤³¤½ 
    46 case 'welcome': 
    47     $objPage = lfDispStep0($objPage); 
     57case 'pdf': 
     58case 'csv': 
     59case 'search': 
     60    // ÆþÎÏÃͤÎÊÑ´¹ 
     61    $objFormParam->convParam(); 
     62    $objPage->arrErr = lfCheckError($arrRet); 
     63    $arrRet = $objFormParam->getHashArray(); 
     64     
     65    // ÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     66    if (count($objPage->arrErr) == 0) { 
     67        foreach ($arrRet as $key => $val) { 
     68            if($val == "") { 
     69                continue; 
     70            } 
     71            switch ($key) { 
     72            case 'search_startyear': 
     73                $sdate = $_POST['search_startyear'] . "/" . $_POST['search_startmonth'] . "/" . $_POST['search_startday']; 
     74                break; 
     75            case 'search_endyear': 
     76                $edate = $_POST['search_endyear'] . "/" . $_POST['search_endmonth'] . "/" . $_POST['search_endday']; 
     77                break; 
     78            case 'search_startyear_m': 
     79                list($sdate, $edate) = sfTermMonth($_POST['search_startyear_m'], $_POST['search_startmonth_m'], CLOSE_DAY); 
     80                break; 
     81            default: 
     82                break; 
     83            } 
     84        } 
     85 
     86        if($_POST['type'] != "") { 
     87            $type = $_POST['type']; 
     88        } 
     89                 
     90        $page = $objFormParam->getValue('page'); 
     91        switch($page) { 
     92        // ¾¦ÉÊÊ̽¸·× 
     93        case 'products': 
     94            if($type == "") { 
     95                $type = 'all'; 
     96            } 
     97            $objPage->tpl_page_type = "total/page_products.tpl"; 
     98            // ̤½¸·×¥Ç¡¼¥¿¤Î½¸·×¤ò¹Ô¤¦ 
     99            lfRealTimeDailyTotal($sdate, $edate); 
     100            // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     101            $objPage = lfGetOrderProducts($type, $sdate, $edate, $objPage); 
     102            break; 
     103        // ¿¦¶ÈÊ̽¸·× 
     104        case 'job': 
     105            if($type == "") { 
     106                $type = 'all'; 
     107            } 
     108            $objPage->tpl_page_type = "total/page_job.tpl"; 
     109            // ̤½¸·×¥Ç¡¼¥¿¤Î½¸·×¤ò¹Ô¤¦ 
     110            lfRealTimeDailyTotal($sdate, $edate); 
     111            // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     112            $objPage = lfGetOrderJob($type, $sdate, $edate, $objPage); 
     113            break; 
     114        // ²ñ°÷Ê̽¸·× 
     115        case 'member': 
     116            if($type == "") { 
     117                $type = 'all'; 
     118            } 
     119            $objPage->tpl_page_type = "total/page_member.tpl"; 
     120            // ̤½¸·×¥Ç¡¼¥¿¤Î½¸·×¤ò¹Ô¤¦ 
     121            lfRealTimeDailyTotal($sdate, $edate); 
     122            // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     123            $objPage = lfGetOrderMember($type, $sdate, $edate, $objPage); 
     124            break; 
     125        // ǯÂåÊ̽¸·× 
     126        case 'age': 
     127            if($type == "") { 
     128                $type = 'all'; 
     129            } 
     130            $objPage->tpl_page_type = "total/page_age.tpl"; 
     131            // ̤½¸·×¥Ç¡¼¥¿¤Î½¸·×¤ò¹Ô¤¦ 
     132            lfRealTimeDailyTotal($sdate, $edate); 
     133            // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     134            $objPage = lfGetOrderAge($type, $sdate, $edate, $objPage); 
     135            break; 
     136        // ´ü´ÖÊ̽¸·× 
     137        default: 
     138            if($type == "") { 
     139                $type = 'day'; 
     140            } 
     141            $objPage->tpl_page_type = "total/page_term.tpl"; 
     142            // ̤½¸·×¥Ç¡¼¥¿¤Î½¸·×¤ò¹Ô¤¦ 
     143            lfRealTimeDailyTotal($sdate, $edate); 
     144            // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     145            $objPage = lfGetOrderTerm($type, $sdate, $edate, $objPage); 
     146             
     147            break; 
     148        } 
     149 
     150        if($_POST['mode'] == 'csv') { 
     151            // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤Î¼èÆÀ 
     152            list($arrTitleCol, $arrDataCol) = lfGetCSVColum($page, $objPage->keyname); 
     153            $head = sfGetCSVList($arrTitleCol); 
     154            $data = lfGetDataColCSV($objPage->arrResults, $arrDataCol); 
     155            // CSV¤òÁ÷¿®¤¹¤ë¡£ 
     156            sfCSVDownload($head.$data, $page."_".$type); 
     157            exit; 
     158        } 
     159         
     160        if($_POST['mode'] == 'pdf') { 
     161            // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤Î¼èÆÀ 
     162            list($arrTitleCol, $arrDataCol, $arrColSize, $arrAlign, $title) = lfGetPDFColum($page, $type, $objPage->keyname); 
     163            $head = sfGetPDFList($arrTitleCol); 
     164            $data = lfGetDataColPDF($objPage->arrResults, $arrDataCol, 40); 
     165            // PDF½ÐÎÏÍÑ 
     166            $graph_name = basename($objPage->tpl_image); 
     167            lfPDFDownload($graph_name, $head . $data, $arrColSize, $arrAlign, $sdate, $edate, $title); 
     168            exit;    
     169        }    
     170    } 
    48171    break; 
    49 // ¥¢¥¯¥»¥¹¸¢¸Â¤Î¥Á¥§¥Ã¥¯ 
    50 case 'step0': 
    51     $objPage = lfDispStep0_1($objPage); 
    52     break;   
    53 // ¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼ 
    54 case 'step0_1': 
    55     $objPage = lfDispStep1($objPage); 
    56     break;   
    57 // WEB¥µ¥¤¥È¤ÎÀßÄê 
    58 case 'step1': 
    59     //ÆþÎÏÃͤΥ¨¥é¡¼¥Á¥§¥Ã¥¯ 
    60     $objPage->arrErr = lfCheckWEBError($objWebParam); 
    61     if(count($objPage->arrErr) == 0) { 
    62         $objPage = lfDispStep2($objPage); 
    63     } else { 
    64         $objPage = lfDispStep1($objPage); 
     172default: 
     173    if(count($_GET) == 0) { 
     174        /* 
     175            ¥ê¥¢¥ë¥¿¥¤¥à½¸·×¤ËÀÚ¤êÂØ¤¨ by Nakagawa 2006/08/31 
     176            // 1¥ö·îʬ¤Î½¸·× 
     177            lfStartDailyTotal(31,0); 
     178        */ 
    65179    } 
    66180    break; 
    67 // ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÀßÄê 
    68 case 'step2': 
    69  
    70     //ÆþÎÏÃͤΥ¨¥é¡¼¥Á¥§¥Ã¥¯ 
    71     $objPage->arrErr = lfCheckDBError($objDBParam); 
    72     if(count($objPage->arrErr) == 0) { 
    73          
    74         // ŹÊÞ¤òÊѹ¹¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï´°Î»²èÌ̤ØÁ«°Ü 
    75         $skip = $_POST["db_skip"]; 
    76         if ($skip == "on") { 
    77             // ÀßÄê¥Õ¥¡¥¤¥ë¤ÎÀ¸À® 
    78             lfMakeConfigFile(); 
    79             $objPage = lfDispComplete($objPage); 
    80             break; 
    81         } 
    82          
    83         $objPage = lfDispStep3($objPage); 
    84  
    85     } else { 
    86         $objPage = lfDispStep2($objPage); 
    87     } 
    88     break; 
    89 // ¥Æ¡¼¥Ö¥ë¤ÎºîÀ® 
    90 case 'step3': 
    91     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
    92     $arrRet =  $objDBParam->getHashArray(); 
    93  
    94     // ¥Æ¡¼¥Ö¥ë¤ÎºîÀ® 
    95     $objPage->arrErr = lfExecuteSQL("./create_table_".$arrRet['db_type'].".sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port']);  
    96     if(count($objPage->arrErr) == 0) { 
    97         $objPage->tpl_message.="¡û¡§¥Æ¡¼¥Ö¥ë¤ÎºîÀ®¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
    98     } else { 
    99         $objPage->tpl_message.="¡ß¡§¥Æ¡¼¥Ö¥ë¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";         
    100     } 
    101  
    102     // ¥Ó¥å¡¼¤ÎºîÀ® 
    103     if(count($objPage->arrErr) == 0 and $arrRet['db_type'] == 'pgsql') { 
    104         // ¥Ó¥å¡¼¤ÎºîÀ® 
    105         $objPage->arrErr = lfExecuteSQL("./create_view.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port']);  
    106         if(count($objPage->arrErr) == 0) { 
    107             $objPage->tpl_message.="¡û¡§¥Ó¥å¡¼¤ÎºîÀ®¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
     181} 
     182 
     183// ÅÐÏ¿¡¦¹¹¿·Æü¸¡º÷ÍÑ 
     184$objDate = new SC_Date(); 
     185$objDate->setStartYear(RELEASE_YEAR); 
     186$objDate->setEndYear(DATE("Y")); 
     187$objPage->arrYear = $objDate->getYear(); 
     188$objPage->arrMonth = $objDate->getMonth(); 
     189$objPage->arrDay = $objDate->getDay(); 
     190// ÆþÎÏÃͤμèÆÀ 
     191$objPage->arrForm = $objFormParam->getFormParamList(); 
     192 
     193$objPage->tpl_subtitle = $objPage->arrTitle[$objFormParam->getValue('page')]; 
     194 
     195$objView->assignobj($objPage); 
     196$objView->display(MAIN_FRAME); 
     197 
     198//--------------------------------------------------------------------------------------------------------------------------- 
     199/* PDF½ÐÎÏ */ 
     200function lfPDFDownload($image, $table, $arrColSize, $arrAlign, $sdate, $edate, $title) { 
     201     
     202    $objPdf = new SC_Pdf(); 
     203    $objPdf->setTableColor("CCCCCC", "F0F0F0", "D1DEFE"); 
     204             
     205    // ÅÚÂæ¤È¤Ê¤ëPDF¥Õ¥¡¥¤¥ë¤Î»ØÄê 
     206    $objPdf->setTemplate(PDF_DIR . "total.pdf"); 
     207 
     208    $disp_sdate = sfDispDBDate($sdate, false); 
     209    $disp_edate = sfDispDBDate($edate, false); 
     210                 
     211    $arrText['title_block'] = $title; 
     212    $arrText['date_block'] = "$disp_sdate-$disp_edate"; 
     213    $arrImage['graph_block'] = GRAPH_DIR . $image; 
     214     
     215    // ʸËö¤Î\n¤òºï½ü¤¹¤ë 
     216    $table = ereg_replace("\n$", "", $table); 
     217    $arrRet = split("\n", $table); 
     218    $page_max = intval((count($arrRet) / 35) + 1); 
     219     
     220    for($page = 1; $page <= $page_max; $page++) { 
     221        if($page > 1) { 
     222            // 2¥Ú¡¼¥¸°Ê¹ß 
     223            $start_no = 35 * ($page - 1) + 1; 
    108224        } else { 
    109             $objPage->tpl_message.="¡ß¡§¥Ó¥å¡¼¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";       
    110         } 
    111     }    
    112      
    113     // ½é´ü¥Ç¡¼¥¿¤ÎºîÀ® 
    114     if(count($objPage->arrErr) == 0) { 
    115         $objPage->arrErr = lfExecuteSQL("./insert_data.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port']);  
    116         if(count($objPage->arrErr) == 0) { 
    117             $objPage->tpl_message.="¡û¡§½é´ü¥Ç¡¼¥¿¤ÎºîÀ®¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
     225            // ³«»Ï¥Ú¡¼¥¸ 
     226            $start_no = 1;           
     227        } 
     228                 
     229        $arrText['page_block'] = $page . " / " . $page_max; 
     230        $objPdf->setTextBlock($arrText); 
     231        $objPdf->setImageBlock($arrImage); 
     232        // ¥Ö¥í¥Ã¥¯ÃÍ¤ÎÆþÎÏ 
     233        $objPdf->writeBlock(); 
     234        // ºÇ½ª¥Ú¡¼¥¸¤Î¤ß¡¢¾¦ÉÊÊ̽¸·×¤Ï¹ç·×¤¬¤Ê¤¤¤Î¤ÇºÇ½ª¹Ô¤Î¿§¤òÊѹ¹¤·¤Ê¤¤¡£ 
     235        if($page == $page_max && $_POST['page'] != 'products') { 
     236            $last_color_flg = true; 
    118237        } else { 
    119             $objPage->tpl_message.="¡ß¡§½é´ü¥Ç¡¼¥¿¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";       
    120         } 
    121     }    
    122      
    123     // ¥«¥é¥à¥³¥á¥ó¥È¤Î½ñ¹þ¤ß 
    124     if(count($objPage->arrErr) == 0) { 
    125         $objPage->arrErr = lfExecuteSQL("./column_comment.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port']);  
    126         if(count($objPage->arrErr) == 0) { 
    127             $objPage->tpl_message.="¡û¡§¥«¥é¥à¥³¥á¥ó¥È¤Î½ñ¹þ¤ß¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
    128         } else { 
    129             $objPage->tpl_message.="¡ß¡§¥«¥é¥à¥³¥á¥ó¥È¤Î½ñ¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";         
    130         } 
    131     }    
    132      
    133     // ¥Æ¡¼¥Ö¥ë¥³¥á¥ó¥È¤Î½ñ¹þ¤ß 
    134     if(count($objPage->arrErr) == 0) { 
    135         $objPage->arrErr = lfExecuteSQL("./table_comment.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port']);  
    136         if(count($objPage->arrErr) == 0) { 
    137             $objPage->tpl_message.="¡û¡§¥Æ¡¼¥Ö¥ë¥³¥á¥ó¥È¤Î½ñ¹þ¤ß¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
    138         } else { 
    139             $objPage->tpl_message.="¡ß¡§¥Æ¡¼¥Ö¥ë¥³¥á¥ó¥È¤Î½ñ¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";       
    140         } 
    141     } 
    142  
    143  
    144     if(count($objPage->arrErr) == 0) { 
    145         // ÀßÄê¥Õ¥¡¥¤¥ë¤ÎÀ¸À® 
    146         lfMakeConfigFile(); 
    147         $objPage = lfDispStep3($objPage); 
    148         $objPage->tpl_mode = 'complete'; 
    149     } else { 
    150         $objPage = lfDispStep3($objPage); 
    151     } 
    152     break; 
    153 // ¥Æ¡¼¥Ö¥ëÎàºï½ü 
    154 case 'drop': 
    155     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
    156     $arrRet =  $objDBParam->getHashArray(); 
    157      
    158     if ($arrRet['db_type'] == 'pgsql'){ 
    159         // ¥Ó¥å¡¼¤Îºï½ü 
    160         $objPage->arrErr = lfExecuteSQL("./drop_view.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port'], false);  
    161         if(count($objPage->arrErr) == 0) { 
    162             $objPage->tpl_message.="¡û¡§¥Ó¥å¡¼¤Îºï½ü¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
    163         } else { 
    164             $objPage->tpl_message.="¡ß¡§¥Ó¥å¡¼¤Îºï½ü¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";       
    165         } 
    166     } 
    167  
    168  
    169     // ¥Æ¡¼¥Ö¥ë¤Îºï½ü 
    170     if(count($objPage->arrErr) == 0) { 
    171         $objPage->arrErr = lfExecuteSQL("./drop_table.sql", $arrRet['db_user'], $arrRet['db_password'], $arrRet['db_server'], $arrRet['db_name'], $arrRet['db_type'], $arrRet['db_port'], false);  
    172         if(count($objPage->arrErr) == 0) { 
    173             $objPage->tpl_message.="¡û¡§¥Æ¡¼¥Ö¥ë¤Îºï½ü¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£<br>"; 
    174         } else { 
    175             $objPage->tpl_message.="¡ß¡§¥Æ¡¼¥Ö¥ë¤Îºï½ü¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>";         
    176         } 
    177     } 
    178     $objPage = lfDispStep3($objPage); 
    179     break; 
    180 // ´°Î»²èÌÌ 
    181 case 'complete': 
    182     // ¥·¥ç¥Ã¥×¥Þ¥¹¥¿¾ðÊó¤Î½ñ¤­¹þ¤ß 
    183     $arrRet =  $objDBParam->getHashArray(); 
    184     $dsn = $arrRet['db_type']."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].$port."/".$arrRet['db_name']; 
    185     $sqlval['shop_name'] = $objWebParam->getValue('shop_name'); 
    186     $sqlval['email01'] = $objWebParam->getValue('admin_mail'); 
    187     $sqlval['email02'] = $objWebParam->getValue('admin_mail'); 
    188     $sqlval['email03'] = $objWebParam->getValue('admin_mail'); 
    189     $sqlval['email04'] = $objWebParam->getValue('admin_mail'); 
    190     $sqlval['email05'] = $objWebParam->getValue('admin_mail'); 
    191     $sqlval['top_tpl'] = "default1"; 
    192     $sqlval['product_tpl'] = "default1"; 
    193     $sqlval['detail_tpl'] = "default1"; 
    194     $sqlval['mypage_tpl'] = "default1"; 
    195     $objQuery = new SC_Query($dsn); 
    196     $cnt = $objQuery->count("dtb_baseinfo"); 
    197     if($cnt > 0) { 
    198         $objQuery->update("dtb_baseinfo", $sqlval); 
    199     } else {         
    200         $objQuery->insert("dtb_baseinfo", $sqlval);      
    201     } 
    202     global $GLOBAL_ERR; 
    203     $GLOBAL_ERR = ""; 
    204     $objPage = lfDispComplete($objPage); 
    205     break; 
    206 case 'return_step0': 
    207     $objPage = lfDispStep0($objPage); 
    208     break;   
    209 case 'return_step1': 
    210     $objPage = lfDispStep1($objPage); 
    211     break; 
    212 case 'return_step2': 
    213     $objPage = lfDispStep2($objPage); 
    214     break; 
    215 case 'return_welcome': 
    216 default: 
    217     $objPage = lfDispWelcome($objPage); 
    218     break; 
    219 } 
    220  
    221 //¥Õ¥©¡¼¥àÍѤΥѥé¥á¡¼¥¿¤òÊÖ¤¹ 
    222 $objPage->arrForm = $objWebParam->getFormParamList(); 
    223 $objPage->arrForm = array_merge($objPage->arrForm, $objDBParam->getFormParamList()); 
    224  
    225 // SiteInfo¤òÆÉ¤ß¹þ¤Þ¤Ê¤¤ 
    226 $objView->assignobj($objPage); 
    227 $objView->display('install_frame.tpl'); 
    228 //----------------------------------------------------------------------------------------------------------------------------------- 
    229 // ¤è¤¦¤³¤½²èÌ̤Îɽ¼¨ 
    230 function lfDispWelcome($objPage) { 
    231     global $objWebParam; 
    232     global $objDBParam; 
    233     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    234     $objPage->arrHidden = $objWebParam->getHashArray(); 
    235     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    236     $objPage->arrHidden = array_merge($objPage->arrHidden, $objDBParam->getHashArray()); 
    237     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    238     $objPage->tpl_mainpage = 'welcome.tpl'; 
    239     $objPage->tpl_mode = 'welcome'; 
    240     return $objPage; 
    241 } 
    242  
    243 // STEP0²èÌ̤Îɽ¼¨(¥Õ¥¡¥¤¥ë¸¢¸Â¥Á¥§¥Ã¥¯)  
    244 function lfDispStep0($objPage) { 
    245     global $objWebParam; 
    246     global $objDBParam; 
    247     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    248     $objPage->arrHidden = $objWebParam->getHashArray(); 
    249     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    250     $objPage->arrHidden = array_merge($objPage->arrHidden, $objDBParam->getHashArray()); 
    251     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    252     $objPage->tpl_mainpage = 'step0.tpl'; 
    253     $objPage->tpl_mode = 'step0'; 
    254      
    255     // ¥×¥í¥°¥é¥à¤Ç½ñ¹þ¤ß¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê 
    256     $arrWriteFile = array( 
    257         "html/install.inc", 
    258         "html/user_data", 
    259         "html/upload", 
    260         "data/Smarty/templates_c",       
    261         "data/update", 
    262         "data/logs", 
    263     ); 
    264      
    265     $mess = ""; 
    266     $err_file = false; 
    267     foreach($arrWriteFile as $val) { 
    268         $path = "../../" . $val;         
    269         if(file_exists($path)) { 
    270             $mode = lfGetFileMode("../../" . $val); 
    271              
    272             // ¥Ç¥£¥ì¥¯¥È¥ê¤Î¾ì¹ç 
    273             if(is_dir($path)) { 
    274                 if($mode == "777") { 
    275                     $mess.= ">> ¡û¡§$val($mode) ¤ÏÌäÂꤢ¤ê¤Þ¤»¤ó¡£<br>";                     
    276                 } else { 
    277                     $mess.= ">> ¡ß¡§$val($mode) ¤Ë¥æ¡¼¥¶½ñ¹þ¤ß¸¢¸Â(777)¤òÉÕÍ¿¤·¤Æ²¼¤µ¤¤¡£<br>"; 
    278                     $err_file = true;                                        
    279                 } 
    280             } else { 
    281                 if($mode == "666") { 
    282                     $mess.= ">> ¡û¡§$val($mode) ¤ÏÌäÂꤢ¤ê¤Þ¤»¤ó¡£<br>";                     
    283                 } else { 
    284                     $mess.= ">> ¡ß¡§$val($mode) ¤Ë¥æ¡¼¥¶½ñ¹þ¤ß¸¢¸Â(666)¤òÉÕÍ¿¤·¤Æ²¼¤µ¤¤¡£<br>"; 
    285                     $err_file = true;                            
    286                 } 
    287             }    
    288              
    289         } else { 
    290             $mess.= ">> ¡ß¡§$val ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£<br>"; 
    291             $err_file = true; 
    292         } 
    293     } 
    294      
    295     // ¸¢¸Â¥¨¥é¡¼Åù¤¬È¯À¸¤·¤Æ¤¤¤Ê¤¤¾ì¹ç 
    296     if(!$err_file) { 
    297         $path = "../../data/Smarty/templates_c/admin"; 
    298         if(!file_exists($path)) { 
    299             mkdir($path); 
    300         } 
    301         $path = "../../html/upload/save_image"; 
    302         if(!file_exists($path)) { 
    303             mkdir($path); 
    304         } 
    305         $path = "../../html/upload/temp_image"; 
    306         if(!file_exists($path)) { 
    307             mkdir($path); 
    308         } 
    309         $path = "../../html/upload/graph_image"; 
    310         if(!file_exists($path)) { 
    311             mkdir($path); 
    312         } 
    313         $path = "../../html/upload/csv"; 
    314         if(!file_exists($path)) { 
    315             mkdir($path); 
    316         } 
    317     } 
    318      
    319     $objPage->mess = $mess; 
    320     $objPage->err_file = $err_file; 
    321  
    322     return $objPage; 
    323 } 
    324  
    325  
    326 // STEP0_1²èÌ̤Îɽ¼¨(¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼)  
    327 function lfDispStep0_1($objPage) { 
    328     global $objWebParam; 
    329     global $objDBParam; 
    330     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    331     $objPage->arrHidden = $objWebParam->getHashArray(); 
    332     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    333     $objPage->arrHidden = array_merge($objPage->arrHidden, $objDBParam->getHashArray()); 
    334     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    335     $objPage->tpl_mainpage = 'step0_1.tpl'; 
    336     $objPage->tpl_mode = 'step0_1'; 
    337     // ¥Õ¥¡¥¤¥ë¥³¥Ô¡¼ 
    338     $objPage->copy_mess = lfCopyDir("./user_data/", "../../html/user_data/", $objPage->copy_mess); 
    339     $objPage->copy_mess = lfCopyDir("./save_image/", "../../html/upload/save_image/", $objPage->copy_mess);  
    340     return $objPage; 
    341 } 
    342  
    343 function lfGetFileMode($path) { 
    344     $mode = substr(sprintf('%o', fileperms($path)), -3); 
    345     return $mode; 
    346 } 
    347  
    348 // STEP1²èÌ̤Îɽ¼¨ 
    349 function lfDispStep1($objPage) { 
    350     global $objDBParam; 
    351     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    352     $objPage->arrHidden = $objDBParam->getHashArray(); 
    353     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    354     $objPage->tpl_mainpage = 'step1.tpl'; 
    355     $objPage->tpl_mode = 'step1'; 
    356     return $objPage; 
    357 } 
    358  
    359 // STEP2²èÌ̤Îɽ¼¨ 
    360 function lfDispStep2($objPage) { 
    361     global $objWebParam; 
    362     global $objDBParam; 
    363     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    364     $objPage->arrHidden = $objWebParam->getHashArray(); 
    365     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    366     $objPage->tpl_mainpage = 'step2.tpl'; 
    367     $objPage->tpl_mode = 'step2'; 
    368     return $objPage; 
    369 } 
    370  
    371 // STEP3²èÌ̤Îɽ¼¨ 
    372 function lfDispStep3($objPage) { 
    373     global $objWebParam; 
    374     global $objDBParam; 
    375     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    376     $objPage->arrHidden = $objWebParam->getHashArray(); 
    377     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    378     $objPage->arrHidden = array_merge($objPage->arrHidden, $objDBParam->getHashArray()); 
    379     $objPage->tpl_db_skip = $_POST['db_skip']; 
    380     $objPage->tpl_mainpage = 'step3.tpl'; 
    381     $objPage->tpl_mode = 'step3'; 
    382     return $objPage; 
    383 } 
    384  
    385 // ´°Î»²èÌ̤Îɽ¼¨ 
    386 function lfDispComplete($objPage) { 
    387     global $objWebParam; 
    388     global $objDBParam; 
    389     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    390     $objPage->arrHidden = $objWebParam->getHashArray(); 
    391     // hidden¤ËÆþÎÏÃͤòÊÝ»ý 
    392     $objPage->arrHidden = array_merge($objPage->arrHidden, $objDBParam->getHashArray()); 
    393     $objPage->arrHidden['db_skip'] = $_POST['db_skip']; 
    394     $objPage->tpl_mainpage = 'complete.tpl'; 
    395     $objPage->tpl_mode = 'complete'; 
    396     return $objPage; 
    397 } 
    398  
    399 // WEB¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
    400 function lfInitWebParam($objWebParam) { 
    401      
    402     $install_dir = realpath(dirname( __FILE__) . "/../../") . "/"; 
    403     $normal_url = "http://" . $_SERVER['HTTP_HOST'] . "/"; 
    404     $secure_url = "http://" . $_SERVER['HTTP_HOST'] . "/"; 
    405     $domain = ereg_replace("^[a-zA-Z0-9_~=&\?\/-]+\.", "", $_SERVER['HTTP_HOST']); 
    406     $objWebParam->addParam("Ź̾", "shop_name", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK")); 
    407     $objWebParam->addParam("´ÉÍý¼Ô¥á¡¼¥ë¥¢¥É¥ì¥¹", "admin_mail", MTEXT_LEN, "", array("EXIST_CHECK","EMAIL_CHECK","EMAIL_CHAR_CHECK","MAX_LENGTH_CHECK")); 
    408     $objWebParam->addParam("¥¤¥ó¥¹¥È¡¼¥ë¥Ç¥£¥ì¥¯¥È¥ê", "install_dir", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"), $install_dir); 
    409     $objWebParam->addParam("URL(Ä̾ï)", "normal_url", MTEXT_LEN, "", array("EXIST_CHECK","URL_CHECK","MAX_LENGTH_CHECK"), $normal_url); 
    410     $objWebParam->addParam("URL(¥»¥­¥å¥¢)", "secure_url", MTEXT_LEN, "", array("EXIST_CHECK","URL_CHECK","MAX_LENGTH_CHECK"), $secure_url); 
    411     $objWebParam->addParam("¥É¥á¥¤¥ó", "domain", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"), $domain);   
    412  
    413     return $objWebParam; 
    414 } 
    415  
    416 // DB¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
    417 function lfInitDBParam($objDBParam) { 
    418      
    419     $db_server = "127.0.0.1"; 
    420     $db_port = "3306"; 
    421     $db_name = "eccube_db"; 
    422     $db_user = "eccube_db_user"; 
    423      
    424     $objDBParam->addParam("DB¤Î¼ïÎà", "db_type", INT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK")); 
    425     $objDBParam->addParam("DB¥µ¡¼¥Ð", "db_server", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"), $db_server); 
    426     $objDBParam->addParam("DB¥Ý¡¼¥È", "db_port", INT_LEN, "", array("MAX_LENGTH_CHECK"), $db_port); 
    427     $objDBParam->addParam("DB̾", "db_name", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"), $db_name); 
    428     $objDBParam->addParam("DB¥æ¡¼¥¶", "db_user", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"), $db_user); 
    429     $objDBParam->addParam("DB¥Ñ¥¹¥ï¡¼¥É", "db_password", MTEXT_LEN, "", array("EXIST_CHECK","MAX_LENGTH_CHECK"));    
    430  
    431     return $objDBParam; 
    432 } 
    433  
    434 // ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ 
    435 function lfCheckWebError($objFormParam) { 
     238            $last_color_flg = false; 
     239        }    
     240        $objPdf->writeTableCenter($table, 500, $arrColSize, $arrAlign, 35, $start_no, $last_color_flg); 
     241        $objPdf->closePage(); 
     242    } 
     243 
     244    // PDF¤Î½ÐÎÏ 
     245    $objPdf->output();   
     246} 
     247 
     248/* ¥»¥Ã¥·¥ç¥ó¤ËÆþÎÏ´ü´Ö¤òµ­Ï¿¤¹¤ë */ 
     249function lfSaveDateSession() { 
     250    if($_POST['form'] == 1) { 
     251        $_SESSION['total']['startyear_m'] = $_POST['search_startyear_m']; 
     252        $_SESSION['total']['startmonth_m'] = $_POST['search_startmonth_m']; 
     253    } 
     254     
     255    if($_POST['form'] == 2) { 
     256        $_SESSION['total']['startyear'] = $_POST['search_startyear']; 
     257        $_SESSION['total']['startmonth'] = $_POST['search_startmonth']; 
     258        $_SESSION['total']['startday'] = $_POST['search_startday']; 
     259        $_SESSION['total']['endyear'] = $_POST['search_endyear']; 
     260        $_SESSION['total']['endmonth'] = $_POST['search_endmonth']; 
     261        $_SESSION['total']['endday'] = $_POST['search_endday']; 
     262    } 
     263} 
     264 
     265/* ¥Ç¥Õ¥©¥ë¥ÈÃͤμèÆÀ */ 
     266function lfGetDateDefault() { 
     267    $year = date("Y"); 
     268    $month = date("m"); 
     269    $day = date("d"); 
     270     
     271    $list = $_SESSION['total']; 
     272     
     273    // ¥»¥Ã¥·¥ç¥ó¾ðÊó¤Ë³«»Ï·îÅÙ¤¬Êݸ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£ 
     274    if($_SESSION['total']['startyear_m'] == "") { 
     275        $list['startyear_m'] = $year; 
     276        $list['startmonth_m'] = $month; 
     277    } 
     278     
     279    // ¥»¥Ã¥·¥ç¥ó¾ðÊó¤Ë³«»ÏÆüÉÕ¡¢½ªÎ»ÆüÉÕ¤¬Êݸ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£ 
     280    if($_SESSION['total']['startyear'] == "" && $_SESSION['total']['endyear'] == "") { 
     281        $list['startyear'] = $year; 
     282        $list['startmonth'] = $month; 
     283        $list['startday'] = $day; 
     284        $list['endyear'] = $year; 
     285        $list['endmonth'] = $month; 
     286        $list['endday'] = $day; 
     287    } 
     288     
     289    return $list;    
     290} 
     291 
     292/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */ 
     293function lfInitParam() { 
     294    global $objFormParam; 
     295         
     296    // ¥Ç¥Õ¥©¥ë¥ÈÃͤμèÆÀ 
     297    $arrList = lfGetDateDefault(); 
     298     
     299    // ·îÅÙ½¸·× 
     300    $objFormParam->addParam("·îÅÙ", "search_startyear_m", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['startyear_m']); 
     301    $objFormParam->addParam("·îÅÙ", "search_startmonth_m", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['startmonth_m']); 
     302    // ´ü´Ö½¸·× 
     303    $objFormParam->addParam("³«»ÏÆü", "search_startyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['startyear']); 
     304    $objFormParam->addParam("³«»ÏÆü", "search_startmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['startmonth']); 
     305    $objFormParam->addParam("³«»ÏÆü", "search_startday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['startday']); 
     306    $objFormParam->addParam("½ªÎ»Æü", "search_endyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['endyear']); 
     307    $objFormParam->addParam("½ªÎ»Æü", "search_endmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['endmonth']); 
     308    $objFormParam->addParam("½ªÎ»Æü", "search_endday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), $arrList['endday']); 
     309     
     310    // hidden¥Ç¡¼¥¿¤Î¼èÆÀÍÑ 
     311    $objFormParam->addParam("", "page"); 
     312    $objFormParam->addParam("", "type"); 
     313} 
     314 
     315/* ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ */ 
     316function lfCheckError() { 
     317    global $objFormParam; 
    436318    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
    437319    $arrRet =  $objFormParam->getHashArray(); 
    438320    $objErr = new SC_CheckError($arrRet); 
    439321    $objErr->arrErr = $objFormParam->checkError(); 
     322     
     323    // ÆÃ¼ì¹àÌÜ¥Á¥§¥Ã¥¯ 
     324    if($_POST['form'] == 1) { 
     325        $objErr->doFunc(array("·îÅÙ", "search_startyear_m"), array("ONE_EXIST_CHECK")); 
     326    } 
     327     
     328    if($_POST['form'] == 2) { 
     329        $objErr->doFunc(array("´ü´Ö", "search_startyear", "search_endyear"), array("ONE_EXIST_CHECK")); 
     330    } 
     331             
     332    $objErr->doFunc(array("·îÅÙ", "search_startyear_m", "search_startmonth_m"), array("ALL_EXIST_CHECK")); 
     333    $objErr->doFunc(array("³«»ÏÆü", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE")); 
     334    $objErr->doFunc(array("½ªÎ»Æü", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_DATE")); 
     335    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_startyear", "search_startmonth", "search_startday", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_SET_TERM")); 
    440336    return $objErr->arrErr; 
    441337} 
    442338 
    443 // ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ 
    444 function lfCheckDBError($objFormParam) { 
    445     global $port; 
    446     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
    447     $arrRet =  $objFormParam->getHashArray(); 
    448      
    449     sfprintr($arrRet); 
    450      
    451     $objErr = new SC_CheckError($arrRet); 
    452     $objErr->arrErr = $objFormParam->checkError(); 
    453      
    454     if(count($objErr->arrErr) == 0) { 
    455         // Àܳ³Îǧ 
    456         $dsn = $arrRet['db_type']."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].$port."/".$arrRet['db_name']; 
    457         // Debug¥â¡¼¥É»ØÄê 
    458         $options['debug'] = 3; 
    459         $objDB = DB::connect($dsn, $options); 
    460         // Àܳ¥¨¥é¡¼ 
    461         if(PEAR::isError($objDB)) { 
    462             $objErr->arrErr['all'] = ">> " . $objDB->message . "<br>"; 
    463             // ¥¨¥é¡¼Ê¸¤ò¼èÆÀ¤¹¤ë 
    464             ereg("\[(.*)\]", $objDB->userinfo, $arrKey); 
    465             $objErr->arrErr['all'].= $arrKey[0] . "<br>"; 
    466             gfPrintLog($objDB->userinfo, "./temp/install.log"); 
    467         } 
    468     } 
    469     return $objErr->arrErr; 
    470 } 
    471  
    472 // SQLʸ¤Î¼Â¹Ô 
    473 function lfExecuteSQL($filepath, $db_user, $db_password, $db_server, $db_name, $db_type, $db_port, $disp_err = true) { 
    474     global $port; 
    475     $arrErr = array(); 
    476  
    477     if(!file_exists($filepath)) { 
    478         $arrErr['all'] = ">> ¥¹¥¯¥ê¥×¥È¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"; 
     339/* ÀÞ¤ìÀþ¥°¥é¥Õ¤ÎºîÀ® */ 
     340function lfGetGraphLine($arrResults, $keyname, $type, $xtitle, $ytitle, $sdate, $edate) { 
     341     
     342    $ret_path = ""; 
     343     
     344    // ·ë²Ì¤¬0¹Ô°Ê¾å¤¢¤ë¾ì¹ç¤Î¤ß¥°¥é¥Õ¤òÀ¸À®¤¹¤ë¡£ 
     345    if(count($arrResults) > 0) { 
     346         
     347        // ¥°¥é¥Õ¤ÎÀ¸À® 
     348        $arrList = sfArrKeyValue($arrResults, $keyname, "total"); 
     349 
     350        // °ì»þ¥Õ¥¡¥¤¥ë̾¤Î¼èÆÀ 
     351        $pngname = lfGetGraphPng($type); 
     352         
     353        $path = GRAPH_DIR . $pngname; 
     354         
     355        // ¥é¥Ù¥ëɽ¼¨¥¤¥ó¥¿¡¼¥Ð¥ë¤òµá¤á¤ë 
     356        $interval = intval(count($arrList) / 20); 
     357        if($interval < 1) { 
     358            $interval = 1; 
     359        } 
     360        $objGraphPie = new SC_GraphPie(); 
     361        $objGraphLine = new SC_GraphLine(); 
     362         
     363        // ÃͤΥ»¥Ã¥È 
     364        $objGraphLine->setData($arrList); 
     365        $objGraphLine->setXLabel(array_keys($arrList)); 
     366         
     367        // ¥é¥Ù¥ë²óž(ÆüËܸìÉÔ²Ä) 
     368        if($keyname == "key_day"){ 
     369            $objGraphLine->setXLabelAngle(45); 
     370        } 
     371 
     372        // ¥¿¥¤¥È¥ë¥»¥Ã¥È 
     373        $objGraphLine->setXTitle($xtitle); 
     374        $objGraphLine->setYTitle($ytitle); 
     375         
     376        // ¥á¥¤¥ó¥¿¥¤¥È¥ëºîÀ® 
     377        list($sy, $sm, $sd) = split("[/ ]" , $sdate); 
     378        list($ey, $em, $ed) = split("[/ ]" , $edate); 
     379        $start_date = $sy . "ǯ" . $sm . "·î" . $sd . "Æü"; 
     380        $end_date = $ey . "ǯ" . $em . "·î" . $ed . "Æü"; 
     381        $objGraphLine->drawTitle("½¸·×´ü´Ö¡§" . $start_date . " - " . $end_date); 
     382         
     383        // ¥°¥é¥ÕÉÁ²è 
     384        $objGraphLine->drawGraph(); 
     385        $objGraphLine->outputGraph(false, $path); 
     386 
     387        // ¥Õ¥¡¥¤¥ë¥Ñ¥¹¤òÊÖ¤¹ 
     388        $ret_path = GRAPH_URL . $pngname; 
     389    } 
     390    return $ret_path; 
     391} 
     392 
     393// ±ß¥°¥é¥Õ¤ÎºîÀ®  
     394function lfGetGraphPie($arrResults, $keyname, $type, $title = "", $sdate = "", $edate = "") { 
     395     
     396    $ret_path = ""; 
     397     
     398    // ·ë²Ì¤¬0¹Ô°Ê¾å¤¢¤ë¾ì¹ç¤Î¤ß¥°¥é¥Õ¤òÀ¸À®¤¹¤ë¡£ 
     399    if(count($arrResults) > 0) { 
     400        // ¥°¥é¥Õ¤ÎÀ¸À® 
     401        $arrList = sfArrKeyValue($arrResults, $keyname, "total", GRAPH_PIE_MAX, GRAPH_LABEL_MAX); 
     402         
     403        // °ì»þ¥Õ¥¡¥¤¥ë̾¤Î¼èÆÀ 
     404        $pngname = lfGetGraphPng($type); 
     405        $path = GRAPH_DIR . $pngname; 
     406         
     407            $objGraphPie = new SC_GraphPie(); 
     408             
     409            /* ¥Ç¥Ð¥Ã¥°É½¼¨ÍÑ by naka 
     410            foreach($arrList as $key => $val) { 
     411                $objGraphPie->debugPrint("key:$key val:$val"); 
     412            } 
     413            */ 
     414             
     415            // ¥Ç¡¼¥¿¤ò¥»¥Ã¥È¤¹¤ë 
     416            $objGraphPie->setData($arrList); 
     417            // ËÞÎã¤ò¥»¥Ã¥È¤¹¤ë 
     418            $objGraphPie->setLegend(array_keys($arrList)); 
     419                                     
     420            // ¥á¥¤¥ó¥¿¥¤¥È¥ëºîÀ® 
     421            list($sy, $sm, $sd) = split("[/ ]" , $sdate); 
     422            list($ey, $em, $ed) = split("[/ ]" , $edate); 
     423            $start_date = $sy . "ǯ" . $sm . "·î" . $sd . "Æü"; 
     424            $end_date = $ey . "ǯ" . $em . "·î" . $ed . "Æü"; 
     425            $objGraphPie->drawTitle("½¸·×´ü´Ö¡§" . $start_date . " - " . $end_date); 
     426                     
     427            // ±ß¥°¥é¥ÕÉÁ²è 
     428            $objGraphPie->drawGraph(); 
     429             
     430            // ¥°¥é¥Õ¤Î½ÐÎÏ 
     431            $objGraphPie->outputGraph(false, $path);             
     432 
     433        // ¥Õ¥¡¥¤¥ë¥Ñ¥¹¤òÊÖ¤¹ 
     434        $ret_path = GRAPH_URL . $pngname; 
     435    } 
     436    return $ret_path; 
     437} 
     438 
     439// ËÀ¥°¥é¥Õ¤ÎºîÀ®  
     440function lfGetGraphBar($arrResults, $keyname, $type, $xtitle, $ytitle, $sdate, $edate) { 
     441    $ret_path = ""; 
     442     
     443    // ·ë²Ì¤¬0¹Ô°Ê¾å¤¢¤ë¾ì¹ç¤Î¤ß¥°¥é¥Õ¤òÀ¸À®¤¹¤ë¡£ 
     444    if(count($arrResults) > 0) { 
     445        // ¥°¥é¥Õ¤ÎÀ¸À® 
     446        $arrList = sfArrKeyValue($arrResults, $keyname, "total", GRAPH_PIE_MAX, GRAPH_LABEL_MAX); 
     447         
     448        // °ì»þ¥Õ¥¡¥¤¥ë̾¤Î¼èÆÀ 
     449        $pngname = lfGetGraphPng($type); 
     450        $path = GRAPH_DIR . $pngname; 
     451         
     452            $objGraphBar = new SC_GraphBar(); 
     453             
     454            foreach(array_keys($arrList) as $val) { 
     455                $arrKey[] = ereg_replace("¡Á", "-", $val); 
     456            } 
     457             
     458            // ¥°¥é¥ÕÉÁ²è 
     459            $objGraphBar->setXLabel($arrKey); 
     460            $objGraphBar->setXTitle($xtitle); 
     461            $objGraphBar->setYTitle($ytitle); 
     462            $objGraphBar->setData($arrList); 
     463             
     464            // ¥á¥¤¥ó¥¿¥¤¥È¥ëºîÀ® 
     465            $arrKey = array_keys($arrList); 
     466            list($sy, $sm, $sd) = split("[/ ]" , $sdate); 
     467            list($ey, $em, $ed) = split("[/ ]" , $edate); 
     468            $start_date = $sy . "ǯ" . $sm . "·î" . $sd . "Æü"; 
     469            $end_date = $ey . "ǯ" . $em . "·î" . $ed . "Æü"; 
     470            $objGraphBar->drawTitle("½¸·×´ü´Ö¡§" . $start_date . " - " . $end_date); 
     471             
     472            $objGraphBar->drawGraph(); 
     473            $objGraphBar->outputGraph(false,$path); 
     474 
     475        // ¥Õ¥¡¥¤¥ë¥Ñ¥¹¤òÊÖ¤¹ 
     476        $ret_path = GRAPH_URL . $pngname; 
     477    } 
     478    return $ret_path; 
     479} 
     480 
     481// ¥°¥é¥ÕÍѤÎPNG¥Õ¥¡¥¤¥ë̾  
     482function lfGetGraphPng($keyname) { 
     483    if($_POST['search_startyear_m'] != "") { 
     484        $pngname = sprintf("%s_%02d%02d.png", $keyname, substr($_POST['search_startyear_m'],2), $_POST['search_startmonth_m']); 
    479485    } else { 
    480         if($fp = fopen($filepath,"r")) { 
    481             $sql = fread($fp, filesize($filepath)); 
    482             fclose($fp); 
    483         } 
    484  
    485         $dsn = $db_type."://".$db_user.":".$db_password."@".$db_server.$port."/".$db_name; 
    486          
    487         $objDB = DB::connect($dsn); 
    488         // Àܳ¥¨¥é¡¼ 
    489         if(!PEAR::isError($objDB)) { 
    490             // ²þ¹Ô¡¢¥¿¥Ö¤ò1¥¹¥Ú¡¼¥¹¤ËÊÑ´¹ 
    491             $sql = preg_replace("/[\r\n\t]/"," ",$sql); 
    492             $sql_split = split(";",$sql); 
    493             foreach($sql_split as $key => $val){ 
    494                 if (trim($val) != "") { 
    495                     $ret = $objDB->query($val); 
    496                     if(PEAR::isError($ret) and $disp_err) { 
    497                         $arrErr['all'] = ">> " . $ret->message . "<br>"; 
    498                         // ¥¨¥é¡¼Ê¸¤ò¼èÆÀ¤¹¤ë 
    499                         ereg("\[(.*)\]", $ret->userinfo, $arrKey); 
    500                         $arrErr['all'].= $arrKey[0] . "<br>"; 
    501                         $objPage->update_mess.=">> ¥Æ¡¼¥Ö¥ë¹½À®¤ÎÊѹ¹¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br>"; 
    502                         gfPrintLog($ret->userinfo, "./temp/install.log"); 
    503                     } 
    504                 } 
    505             } 
    506              
     486        $pngname = sprintf("%s_%02d%02d%02d_%02d%02d%02d.png", $keyname, substr($_POST['search_startyear'], 2), $_POST['search_startmonth'], $_POST['search_startday'], substr($_POST['search_endyear'],2), $_POST['search_endmonth'], $_POST['search_endday']); 
     487    } 
     488    return $pngname; 
     489} 
     490 
     491// ²ñ°÷¡¢Èó²ñ°÷½¸·×¤ÎWHEREʬ¤ÎºîÀ® 
     492function lfGetWhereMember($col_date, $sdate, $edate, $type, $col_member = "customer_id") { 
     493    // ¼èÆÀÆüÉդλØÄê 
     494    if($sdate != "") { 
     495        if ($where != "") { 
     496            $where.= " AND "; 
     497        }            
     498        $where.= " $col_date >= '". $sdate ."'"; 
     499    } 
     500         
     501    if($edate != "") { 
     502        if ($where != "") { 
     503            $where.= " AND "; 
     504        } 
     505        $edate = date("Y/m/d",strtotime("1 day" ,strtotime($edate)));    
     506        $where.= " $col_date < date('" . $edate ."')"; 
     507    } 
     508     
     509    // ²ñ°÷¡¢Èó²ñ°÷¤ÎȽÄê 
     510    switch($type) { 
     511    // Á´ÂΠ
     512    case 'all': 
     513        break; 
     514    case 'member': 
     515        if ($where != "") { 
     516            $where.= " AND "; 
     517        } 
     518        $where.= " $col_member <> 0"; 
     519        break; 
     520    case 'nonmember': 
     521        if ($where != "") { 
     522            $where.= " AND "; 
     523        } 
     524        $where.= " $col_member = 0"; 
     525        break; 
     526    default: 
     527        break; 
     528    } 
     529     
     530    return array($where, $arrval); 
     531} 
     532 
     533/** ²ñ°÷Ê̽¸·× **/ 
     534function lfGetOrderMember($type, $sdate, $edate, $objPage, $graph = true) { 
     535    global $arrSex; 
     536         
     537    list($where, $arrval) = lfGetWhereMember('create_date', $sdate, $edate, $type); 
     538     
     539    // ²ñ°÷½¸·×¤Î¼èÆÀ 
     540    $col = "COUNT(*) AS order_count, SUM(total) AS total, (AVG(total)) AS total_average, order_sex"; 
     541    $from = "dtb_order"; 
     542    $objQuery = new SC_Query(); 
     543    $objQuery->setGroupBy("order_sex"); 
     544     
     545    $tmp_where = $where . " AND customer_id <> 0 AND del_flg = 0 "; 
     546    $arrRet = $objQuery->select($col, $from, $tmp_where, $arrval); 
     547     
     548    // ²ñ°÷¹ØÆþ¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤¹¤ë¡£ 
     549    $max = count($arrRet); 
     550    for($i = 0; $i < $max; $i++) { 
     551        $arrRet[$i]['member_name'] = '²ñ°÷'.$arrSex[$arrRet[$i]['order_sex']]; 
     552    } 
     553    $objPage->arrResults = $arrRet; 
     554     
     555    // Èó²ñ°÷½¸·×¤Î¼èÆÀ 
     556    $tmp_where = $where . " AND customer_id = 0 AND del_flg = 0 "; 
     557    $arrRet = $objQuery->select($col, $from, $tmp_where, $arrval); 
     558    // Èó²ñ°÷¹ØÆþ¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤¹¤ë¡£ 
     559    $max = count($arrRet); 
     560    for($i = 0; $i < $max; $i++) { 
     561        $arrRet[$i]['member_name'] = 'Èó²ñ°÷'.$arrSex[$arrRet[$i]['order_sex']]; 
     562    } 
     563     
     564    $objPage->arrResults = array_merge($objPage->arrResults, $arrRet); 
     565     
     566    // ±ß¥°¥é¥Õ¤ÎÀ¸À® 
     567    if($graph) {     
     568        $image_key = "member"; 
     569        $objPage->tpl_image = lfGetGraphPie($objPage->arrResults, "member_name", $image_key, "(Çä¾åÈæÎ¨)", $sdate, $edate); 
     570    } 
     571     
     572    return $objPage; 
     573} 
     574 
     575/** ¾¦ÉÊÊ̽¸·× **/ 
     576function lfGetOrderProducts($type, $sdate, $edate, $objPage, $graph = true) { 
     577    list($where, $arrval) = lfGetWhereMember('create_date', $sdate, $edate, $type); 
     578     
     579    $sql = "SELECT T1.product_id, T1.product_code, T2.name, T1.products_count, T1.order_count, T1.price, T1.total "; 
     580    $sql.= "FROM ( "; 
     581    $sql.= "SELECT product_id, product_code, price, "; 
     582    $sql.= "COUNT(*) AS order_count, "; 
     583    $sql.= "SUM(quantity) AS products_count, "; 
     584    $sql.= "(price * sum(quantity)) AS total "; 
     585    $sql.= "FROM dtb_order_detail WHERE order_id IN (SELECT order_id FROM dtb_order WHERE $where ) "; 
     586    $sql.= "GROUP BY product_id, product_code, price "; 
     587    $sql.= ") "; 
     588    $sql.= "AS T1 LEFT JOIN dtb_products AS T2 USING (product_id) WHERE T2.name IS NOT NULL AND status = 1 ORDER BY T1.total DESC "; 
     589     
     590    if($_POST['mode'] != "csv") { 
     591        $sql.= "LIMIT " . PRODUCTS_TOTAL_MAX; 
     592    } 
     593     
     594    $objQuery = new SC_Query(); 
     595    $objPage->arrResults = $objQuery->getall($sql, $arrval); 
     596     
     597    // ±ß¥°¥é¥Õ¤ÎÀ¸À® 
     598    if($graph) { 
     599        $image_key = "products_" . $type; 
     600        $objPage->tpl_image = lfGetGraphPie($objPage->arrResults, "name", $image_key, "(Çä¾åÈæÎ¨)", $sdate, $edate); 
     601    } 
     602     
     603    return $objPage; 
     604} 
     605 
     606/** ¿¦¶ÈÊ̽¸·× **/ 
     607function lfGetOrderJob($type, $sdate, $edate, $objPage, $graph = true) { 
     608    global $arrJob;  
     609         
     610    list($where, $arrval) = lfGetWhereMember('T2.create_date', $sdate, $edate, $type); 
     611     
     612    $sql = "SELECT job, count(*) AS order_count, SUM(total) AS total, (AVG(total)) AS total_average "; 
     613    $sql.= "FROM dtb_customer AS T1 LEFT JOIN dtb_order AS T2 USING ( customer_id ) WHERE $where AND T2.del_flg = 0 "; 
     614    $sql.= "GROUP BY job ORDER BY total DESC"; 
     615     
     616    $objQuery = new SC_Query(); 
     617    $objPage->arrResults = $objQuery->getall($sql, $arrval); 
     618             
     619    $max = count($objPage->arrResults); 
     620    for($i = 0; $i < $max; $i++) { 
     621        $job_key = $objPage->arrResults[$i]['job']; 
     622        if($job_key != "") { 
     623            $objPage->arrResults[$i]['job_name'] = $arrJob[$job_key]; 
    507624        } else { 
    508             $arrErr['all'] = ">> " . $objDB->message; 
    509             gfPrintLog($objDB->userinfo, "./temp/install.log"); 
    510         } 
    511     } 
    512     return $arrErr; 
    513 } 
    514  
    515 // ÀßÄê¥Õ¥¡¥¤¥ë¤ÎºîÀ® 
    516 function lfMakeConfigFile() { 
    517     global $objWebParam; 
    518     global $objDBParam; 
    519     global $port; 
    520      
    521     $filepath = $objWebParam->getValue('install_dir') . "/html/install.inc"; 
    522     $domain = $objWebParam->getValue('domain'); 
    523     if(!ereg("^\.", $domain)) { 
    524         $domain = "." . $domain; 
    525     } 
    526      
    527     $root_dir = $objWebParam->getValue('install_dir'); 
    528     if (!ereg("/$", $root_dir)) { 
    529         $root_dir = $root_dir . "/"; 
    530     } 
    531      
    532     $config_data =  
    533     "<?php\n". 
    534     "    define ('ECCUBE_INSTALL', 'ON');\n" . 
    535     "    define ('ROOT_DIR', '" . $root_dir . "');\n" .  
    536     "    define ('SITE_URL', '" . $objWebParam->getValue('normal_url') . "');\n" . 
    537     "    define ('SSL_URL', '" . $objWebParam->getValue('secure_url') . "');\n" . 
    538     "    define ('DOMAIN_NAME', '" . $domain . "');\n" . 
    539     "    define ('DB_TYPE', '" . $objDBParam->getValue('db_type') . "');\n" . 
    540     "    define ('DB_USER', '" . $objDBParam->getValue('db_user') . "');\n" .  
    541     "    define ('DB_PASSWORD', '" . $objDBParam->getValue('db_password') . "');\n" . 
    542     "    define ('DB_SERVER', '" . $objDBParam->getValue('db_server') . "');\n" . 
    543     "    define ('DB_NAME', '" . $objDBParam->getValue('db_name') . "');\n" . 
    544     "    define ('DB_PORT', '" . $port . "');\n" . 
    545     "?>"; 
    546      
    547     if($fp = fopen($filepath,"w")) { 
    548         fwrite($fp, $config_data); 
    549         fclose($fp); 
    550     } 
    551 } 
    552  
    553 // ¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤Î¥Õ¥¡¥¤¥ë¤òºÆµ¢Åª¤Ë¥³¥Ô¡¼ 
    554 function lfCopyDir($src, $des, $mess, $override = false){ 
    555     if(!is_dir($src)){ 
    556         return false; 
    557     } 
    558  
    559     $oldmask = umask(0); 
    560     $mod= stat($src); 
    561      
    562     // ¥Ç¥£¥ì¥¯¥È¥ê¤¬¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë 
    563     if(!file_exists($des)) { 
    564         mkdir($des, $mod[2]); 
    565     } 
    566      
    567     $fileArray=glob( $src."*" ); 
    568     foreach( $fileArray as $key => $data_ ){ 
    569         // CVS´ÉÍý¥Õ¥¡¥¤¥ë¤Ï¥³¥Ô¡¼¤·¤Ê¤¤ 
    570         if(ereg("/CVS/Entries", $data_)) { 
    571             break; 
    572         } 
    573         if(ereg("/CVS/Repository", $data_)) { 
    574             break; 
    575         } 
    576         if(ereg("/CVS/Root", $data_)) { 
    577             break; 
    578         } 
    579          
    580         mb_ereg("^(.*[\/])(.*)",$data_, $matches); 
    581         $data=$matches[2]; 
    582         if( is_dir( $data_ ) ){ 
    583             $mess = lfCopyDir( $data_.'/', $des.$data.'/', $mess); 
    584         }else{ 
    585             if(!$override && file_exists($des.$data)) { 
    586                 $mess.= $des.$data . "¡§¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤¹\n"; 
     625            $objPage->arrResults[$i]['job_name'] = "̤²óÅú"; 
     626        } 
     627    } 
     628     
     629    // ±ß¥°¥é¥Õ¤ÎÀ¸À®    
     630    if($graph) { 
     631        $image_key = "job_" . $type; 
     632        $objPage->tpl_image = lfGetGraphPie($objPage->arrResults, "job_name", $image_key, "(Çä¾åÈæÎ¨)", $sdate, $edate); 
     633    } 
     634     
     635    return $objPage; 
     636} 
     637 
     638/** ǯÂåÊ̽¸·× **/ 
     639function lfGetOrderAge($type, $sdate, $edate, $objPage, $graph = true) { 
     640 
     641    list($where, $arrval) = lfGetWhereMember('order_date', $sdate, $edate, $type, "member"); 
     642     
     643    $sql = "SELECT SUM(order_count) AS order_count, SUM(total) AS total, start_age, end_age "; 
     644    $sql.= "FROM dtb_bat_order_daily_age WHERE $where "; 
     645    $sql.= "GROUP BY start_age, end_age ORDER BY start_age, end_age"; 
     646 
     647    $objQuery = new SC_Query(); 
     648    $objPage->arrResults = $objQuery->getall($sql, $arrval); 
     649     
     650    $max = count($objPage->arrResults); 
     651    for($i = 0; $i < $max; $i++) { 
     652        if($objPage->arrResults[$i]['order_count'] > 0) { 
     653            $objPage->arrResults[$i]['total_average'] = intval($objPage->arrResults[$i]['total'] / $objPage->arrResults[$i]['order_count']); 
     654        }    
     655        $start_age = $objPage->arrResults[$i]['start_age']; 
     656        $end_age = $objPage->arrResults[$i]['end_age']; 
     657        if($start_age != "" || $end_age != "") { 
     658            if($end_age != 999) { 
     659                $objPage->arrResults[$i]['age_name'] = $start_age . "¡Á" . $end_age . "ºÐ"; 
    587660            } else { 
    588                 if(@copy( $data_, $des.$data)) { 
    589                     $mess.= $des.$data . "¡§¥³¥Ô¡¼À®¸ù\n"; 
    590                 } else { 
    591                     $mess.= $des.$data . "¡§¥³¥Ô¡¼¼ºÇÔ\n"; 
    592                 } 
    593             } 
    594             $mod=stat($data_ ); 
    595         } 
    596     } 
    597     umask($oldmask); 
    598     return $mess; 
    599 } 
     661                $objPage->arrResults[$i]['age_name'] = $start_age . "ºÐ¡Á"; 
     662            } 
     663        } else { 
     664            $objPage->arrResults[$i]['age_name'] = "̤²óÅú"; 
     665        } 
     666    } 
     667     
     668    // ËÀ¥°¥é¥Õ¤ÎÀ¸À® 
     669    if($graph) { 
     670        $image_key = "age_" . $type; 
     671        $xtitle = "(ǯÎð)"; 
     672        $ytitle = "(Çä¾å¹ç·×)"; 
     673        $objPage->tpl_image = lfGetGraphBar($objPage->arrResults, "age_name", $image_key, $xtitle, $ytitle, $sdate, $edate); 
     674    } 
     675     
     676    return $objPage; 
     677} 
     678 
     679/** ´ü´ÖÊ̽¸·× **/ 
     680function lfGetOrderTerm($type, $sdate, $edate, $objPage, $graph = true) { 
     681         
     682        $tmp_col = "sum(total_order) as total_order, sum(men) as men, sum(women) as women,"; 
     683        $tmp_col.= "sum(men_member) as men_member, sum(men_nonmember) as men_nonmember,"; 
     684        $tmp_col.= "sum(women_member) as women_member, sum(women_nonmember) as women_nonmember,"; 
     685        $tmp_col.= "sum(total) as total, (avg(total_average)) as total_average"; 
     686        $objQuery = new SC_Query(); 
     687         
     688        switch($type) { 
     689        // ·îÊÌ 
     690        case 'month': 
     691            $col = $tmp_col . ",key_month"; 
     692            $objQuery->setgroupby("key_month"); 
     693            $objQuery->setOrder("key_month"); 
     694            $objPage->keyname = "key_month"; 
     695            $objPage->tpl_tail = "·î"; 
     696            $from = "dtb_bat_order_daily"; 
     697            $xtitle = "(·îÊÌ)"; 
     698            $ytitle = "(Çä¾å¹ç·×)"; 
     699            break; 
     700        // ǯÊÌ 
     701        case 'year': 
     702            $col = $tmp_col . ",key_year"; 
     703            $objQuery->setgroupby("key_year"); 
     704            $objQuery->setOrder("key_year"); 
     705            $objPage->keyname = "key_year"; 
     706            $objPage->tpl_tail = "ǯ"; 
     707            $from = "dtb_bat_order_daily"; 
     708            $xtitle = "(ǯÊÌ)"; 
     709            $ytitle = "(Çä¾å¹ç·×)"; 
     710            break; 
     711        // ÍËÆüÊÌ 
     712        case 'wday': 
     713            $col = $tmp_col . ",key_wday, wday"; 
     714            $objQuery->setgroupby("key_wday, wday"); 
     715            $objQuery->setOrder("wday"); 
     716            $objPage->keyname = "key_wday"; 
     717            $objPage->tpl_tail = "ÍËÆü"; 
     718            $from = "dtb_bat_order_daily"; 
     719            $xtitle = "(ÍËÆüÊÌ)"; 
     720            $ytitle = "(Çä¾å¹ç·×)"; 
     721            break; 
     722        // »þ´ÖÊÌ 
     723        case 'hour': 
     724            $col = $tmp_col . ",hour"; 
     725            $objQuery->setgroupby("hour"); 
     726            $objQuery->setOrder("hour"); 
     727            $objPage->keyname = "hour"; 
     728            $objPage->tpl_tail = "»þ"; 
     729            $from = "dtb_bat_order_daily_hour"; 
     730            $xtitle = "(»þ´ÖÊÌ)"; 
     731            $ytitle = "(Çä¾å¹ç·×)"; 
     732            break; 
     733        default: 
     734            $col = "*"; 
     735            $objQuery->setOrder("key_day"); 
     736            $objPage->keyname = "key_day"; 
     737            $from = "dtb_bat_order_daily"; 
     738            $xtitle = "(ÆüÊÌ)"; 
     739            $ytitle = "(Çä¾å¹ç·×)"; 
     740            break; 
     741        } 
     742         
     743 
     744    // ¼èÆÀÆüÉդλØÄê 
     745        if($sdate != "") { 
     746            if ($where != "") { 
     747                $where.= " AND "; 
     748            }            
     749            $where.= " order_date >= '". $sdate ."'"; 
     750        } 
     751         
     752        if($edate != "") { 
     753            if ($where != "") { 
     754                $where.= " AND "; 
     755            } 
     756            $edate = date("Y/m/d",strtotime("1 day" ,strtotime($edate))); 
     757            $where.= " order_date < date('" . $edate ."')"; 
     758        } 
     759         
     760        // ¸¡º÷·ë²Ì¤Î¼èÆÀ 
     761        $objPage->arrResults = $objQuery->select($col, $from, $where, $arrval); 
     762         
     763        // ÀÞ¤ìÀþ¥°¥é¥Õ¤ÎÀ¸À®    
     764        if($graph) { 
     765            $image_key = "term_" . $type; 
     766            $objPage->tpl_image = lfGetGraphLine($objPage->arrResults, $objPage->keyname, $image_key, $xtitle, $ytitle, $sdate, $edate); 
     767        } 
     768         
     769        // ¸¡º÷·ë²Ì¤¬0¤Ç¤Ê¤¤¾ì¹ç 
     770        if(count($objPage->arrResults) > 0) { 
     771            // ºÇ½ª½¸·×¹Ô¼èÆÀ¤¹¤ë 
     772            $col = $tmp_col; 
     773            $objQuery = new SC_Query(); 
     774            $arrRet = $objQuery->select($col, $from, $where, $arrval); 
     775            $arrRet[0][$objPage->keyname] = "¹ç·×"; 
     776            $objPage->arrResults[] = $arrRet[0]; 
     777        } 
     778 
     779        // Ê¿¶ÑÃͤη׻» 
     780        $max = count($objPage->arrResults); 
     781        for($i = 0; $i < $max; $i++) { 
     782            if($objPage->arrResults[$i]['total_order'] > 0) { 
     783                $objPage->arrResults[$i]['total_average'] = intval($objPage->arrResults[$i]['total'] / $objPage->arrResults[$i]['total_order']); 
     784            } 
     785        } 
     786         
     787        return $objPage; 
     788} 
     789 
    600790?> 
Note: See TracChangeset for help on using the changeset viewer.