Ignore:
Timestamp:
2008/07/10 14:29:55 (16 years ago)
Author:
Seasoft
Message:

変更(編集)でディレクトリ(USER_URL 配下にサブディレクトリ)を扱えるように改訂。ユーザが定義したレコードについても、URLを(ベースデータと同等に) SITE_URL 相当の部分を削って格納する仕様に変更。フロント機能は従来データと互換性あり。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/comu-ver2/data/class/helper/SC_Helper_PageLayout.php

    r17116 r17416  
    4646    function sfGetPageLayout(&$objPage, $preview = false, $url = ""){ 
    4747        $debug_message = ""; 
    48         $arrPageLayout = array(); 
     48        $arrPageLayout = array(); 
    4949 
    5050        // 現在のURLの取得 
     
    5353                $url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; 
    5454            } 
     55            $url2 = preg_replace('|^' . preg_quote(SITE_URL) . '|', '', $url); 
    5556            // URLを元にページデザインを取得 
    56             $arrPageData = $this->lfgetPageData(" url = ? " , array($url)); 
     57            $arrPageData = $this->lfgetPageData(" url IN (?, ?) " , array($url2, $url)); // $url は従来互換 
    5758        }else{ 
    5859            $arrPageData = $this->lfgetPageData(" page_id = ? " , array("0")); 
     
    6061                . TEMPLATE_NAME . "/" . $arrPageData[0]['filename'] . ".tpl"; 
    6162        } 
    62          
     63         
    6364        foreach($arrPageData[0] as $key => $val) { 
    64             $debug_message.= "arrPageData[$key]:" . $val . "\n"; 
     65            $debug_message.= "arrPageData[$key]:" . $val . "\n"; 
    6566        } 
    6667         
     
    9899        $arrNavi = $this->lfGetNaviData($url, $preview); 
    99100 
    100         $arrPageLayout['LeftNavi']  = $this->lfGetNavi($arrNavi,1); // LEFT NAVI 
    101         $arrPageLayout['MainHead']  = $this->lfGetNavi($arrNavi,2); // メイン上部 
    102         $arrPageLayout['RightNavi'] = $this->lfGetNavi($arrNavi,3); // RIGHT NAVI 
    103         $arrPageLayout['MainFoot']  = $this->lfGetNavi($arrNavi,4); // メイン下部 
     101        $arrPageLayout['LeftNavi']  = $this->lfGetNavi($arrNavi,1);    // LEFT NAVI 
     102        $arrPageLayout['MainHead']  = $this->lfGetNavi($arrNavi,2);    // メイン上部 
     103        $arrPageLayout['RightNavi'] = $this->lfGetNavi($arrNavi,3);    // RIGHT NAVI 
     104        $arrPageLayout['MainFoot']  = $this->lfGetNavi($arrNavi,4);    // メイン下部 
    104105 
    105106        GC_Utils::gfDebugLog($arrPageLayout); 
     
    121122     */ 
    122123    function lfgetPageData($where = '', $arrVal = ''){ 
    123         $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
    124         $sql = "";                      // データ取得SQL生成用 
    125         $arrRet = array();              // データ取得用 
     124        $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
     125        $sql = "";                      // データ取得SQL生成用 
     126        $arrRet = array();              // データ取得用 
    126127 
    127128        // SQL生成 
    128129        $sql .= " SELECT"; 
    129         $sql .= " page_id";             // ページID 
    130         $sql .= " ,page_name";          // 名称 
    131         $sql .= " ,url";                // URL 
    132         $sql .= " ,php_dir";            // php保存先ディレクトリ 
    133         $sql .= " ,tpl_dir";            // tpl保存先ディレクトリ 
    134         $sql .= " ,filename";           // ファイル名称 
    135         $sql .= " ,header_chk ";        // ヘッダー使用FLG 
    136         $sql .= " ,footer_chk ";        // フッター使用FLG 
    137         $sql .= " ,edit_flg ";          // 編集可能FLG 
    138         $sql .= " ,author";             // authorタグ 
    139         $sql .= " ,description";        // descriptionタグ 
    140         $sql .= " ,keyword";            // keywordタグ 
    141         $sql .= " ,update_url";         // 更新URL 
    142         $sql .= " ,create_date";        // データ作成日 
    143         $sql .= " ,update_date";        // データ更新日 
     130        $sql .= " page_id";             // ページID 
     131        $sql .= " ,page_name";          // 名称 
     132        $sql .= " ,url";                // URL 
     133        $sql .= " ,php_dir";            // php保存先ディレクトリ 
     134        $sql .= " ,tpl_dir";            // tpl保存先ディレクトリ 
     135        $sql .= " ,filename";           // ファイル名称 
     136        $sql .= " ,header_chk ";        // ヘッダー使用FLG 
     137        $sql .= " ,footer_chk ";        // フッター使用FLG 
     138        $sql .= " ,edit_flg ";          // 編集可能FLG 
     139        $sql .= " ,author";             // authorタグ 
     140        $sql .= " ,description";        // descriptionタグ 
     141        $sql .= " ,keyword";            // keywordタグ 
     142        $sql .= " ,update_url";         // 更新URL 
     143        $sql .= " ,create_date";        // データ作成日 
     144        $sql .= " ,update_date";        // データ更新日 
    144145        $sql .= " FROM "; 
    145146        $sql .= "     dtb_pagelayout"; 
     
    168169     */ 
    169170    function lfGetNaviData($url, $preview=false){ 
    170         $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
    171         $sql = "";                      // データ取得SQL生成用 
    172         $arrRet = array();              // データ取得用 
     171        $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
     172        $sql = "";                      // データ取得SQL生成用 
     173        $arrRet = array();              // データ取得用 
    173174        $arrData = array(); 
    174175 
     
    215216                        $arrNavi[$key]['php_path'] = HTML_PATH . $val['php_path']; 
    216217                    }else{ 
    217                         $user_block_path = USER_TEMPLATE_PATH . TEMPLATE_NAME . "/" . $val['tpl_path']; 
    218                         if(is_file($user_block_path)) { 
    219                            $arrNavi[$key]['tpl_path'] = $user_block_path; 
    220                         } else { 
    221                            $arrNavi[$key]['tpl_path'] = TEMPLATE_DIR . $val['tpl_path']; 
    222                         } 
     218                        $user_block_path = USER_TEMPLATE_PATH . TEMPLATE_NAME . "/" . $val['tpl_path']; 
     219                        if(is_file($user_block_path)) { 
     220                            $arrNavi[$key]['tpl_path'] = $user_block_path; 
     221                        } else { 
     222                            $arrNavi[$key]['tpl_path'] = TEMPLATE_DIR . $val['tpl_path']; 
     223                        } 
    223224                    } 
    224225                     
     
    260261    function lfDelPageData($page_id){ 
    261262        // DBへデータを更新する 
    262         $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
    263         $sql = "";                      // データ更新SQL生成用 
    264         $ret = "";                      // データ更新結果格納用 
    265         $arrDelData = array();          // 更新データ生成用 
     263        $objDBConn = new SC_DbConn; // DB操作オブジェクト 
     264        $sql = "";                  // データ更新SQL生成用 
     265        $ret = "";                  // データ更新結果格納用 
     266        $arrDelData = array();      // 更新データ生成用 
    266267 
    267268        // page_id が空でない場合にはdeleteを実行 
Note: See TracChangeset for help on using the changeset viewer.