Ignore:
Timestamp:
2007/07/20 15:58:59 (17 years ago)
Author:
nanasess
Message:

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Location:
branches/feature-module-update
Files:
1 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update

    • Property svn:ignore set to
      .cache

      .settings

      .projectOptions
  • branches/feature-module-update/html/admin/design/bloc.php

    r12157 r15078  
    1818        $this->tpl_subno = "bloc";   
    1919        $this->tpl_mainno = "design"; 
    20         $this->tpl_subtitle = '¥Ö¥í¥Ã¥¯ÊÔ½¸'; 
     20        $this->tpl_subtitle = 'ブロック編集'; 
    2121    } 
    2222} 
     
    2525$objView = new SC_AdminView(); 
    2626 
    27 // ǧ¾Ú²ÄÈݤÎȽÄê 
     27// 認証可否の判定 
    2828$objSess = new SC_Session(); 
    2929sfIsSuccess($objSess); 
    3030 
    31 // ¥Ö¥í¥Ã¥¯°ìÍ÷¤ò¼èÆÀ 
     31// ブロック一覧を取得 
    3232$objPage->arrBlocList = lfgetBlocData(); 
    3333 
    34 // ¥Ö¥í¥Ã¥¯ID¤ò¼èÆÀ 
     34// ブロックIDを取得 
    3535if (isset($_POST['bloc_id'])) { 
    3636    $bloc_id = $_POST['bloc_id']; 
     
    4242$objPage->bloc_id = $bloc_id; 
    4343 
    44 // bloc_id ¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¥Ö¥í¥Ã¥¯¥Ç¡¼¥¿¤Î¼èÆÀ 
     44// bloc_id が指定されている場合にはブロックデータの取得 
    4545if ($bloc_id != '') { 
    4646    $arrBlocData = lfgetBlocData(" bloc_id = ? " , array($bloc_id)); 
    4747    $arrBlocData[0]['tpl_path'] = USER_PATH . $arrBlocData[0]['tpl_path']; 
    4848 
    49     // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß 
     49    // テンプレートファイルの読み込み 
    5050    $arrBlocData[0]['tpl_data'] = file_get_contents($arrBlocData[0]['tpl_path']); 
    5151    $objPage->arrBlocData = $arrBlocData[0]; 
    5252} 
    5353 
    54 // ¥á¥Ã¥»¡¼¥¸É½¼¨ 
     54// メッセージ表示 
    5555if ($_GET['msg'] == "on") { 
    56     // ´°Î»¥á¥Ã¥»¡¼¥¸ 
    57     $objPage->tpl_onload="alert('ÅÐÏ¿¤¬´°Î»¤·¤Þ¤·¤¿¡£');"; 
    58 } 
    59  
    60 // ¥×¥ì¥Ó¥å¡¼É½¼¨ 
     56    // 完了メッセージ 
     57    $objPage->tpl_onload="alert('登録が完了しました。');"; 
     58} 
     59 
     60// プレビュー表示 
    6161if ($_POST['mode'] == "preview") { 
    62     // ¥×¥ì¥Ó¥å¡¼¥Õ¥¡¥¤¥ëºîÀ® 
     62    // プレビューファイル作成 
    6363    $prev_path = USER_INC_PATH . 'preview/bloc_preview.tpl'; 
    6464    $fp = fopen($prev_path,"w"); 
     
    6666    fclose($fp); 
    6767     
    68     // ¥×¥ì¥Ó¥å¡¼¥Ç¡¼¥¿É½¼¨ 
     68    // プレビューデータ表示 
    6969    $objPage->preview = "on"; 
    7070    $objPage->arrBlocData['tpl_data'] = $_POST['bloc_html']; 
     
    7777} 
    7878 
    79 // ¥Ç¡¼¥¿ÅÐÏ¿½èÍý 
     79// データ登録処理 
    8080if ($_POST['mode'] == 'confirm') { 
    8181     
    82     // ¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     82    // エラーチェック 
    8383    $objPage->arrErr = lfErrorCheck($_POST); 
    8484 
    85     // ¥¨¥é¡¼¤¬¤Ê¤±¤ì¤Ð¹¹¿·½èÍý¤ò¹Ô¤¦    
     85    // エラーがなければ更新処理を行う   
    8686    if (count($objPage->arrErr) == 0) { 
    87         // DB¤Ø¥Ç¡¼¥¿¤ò¹¹¿·¤¹¤ë 
     87        // DBへデータを更新する 
    8888        lfEntryBlocData($_POST); 
    8989         
    90         // ¥Õ¥¡¥¤¥ë¤Îºï½ü 
     90        // ファイルの削除 
    9191        $del_file=BLOC_PATH . $arrBlocData[0]['filename']. '.tpl'; 
    9292        if (file_exists($del_file)) { 
     
    9494        } 
    9595         
    96         // ¥Õ¥¡¥¤¥ëºîÀ® 
     96        // ファイル作成 
    9797        $fp = fopen(BLOC_PATH . $_POST['filename'] . '.tpl',"w"); 
    9898        fwrite($fp, $_POST['bloc_html']); 
     
    104104        header("location: ./bloc.php?bloc_id=$bloc_id&msg=on"); 
    105105    }else{ 
    106         // ¥¨¥é¡¼¤¬¤¢¤ì¤ÐÆþÎÏ»þ¤Î¥Ç¡¼¥¿¤òɽ¼¨¤¹¤ë 
     106        // エラーがあれば入力時のデータを表示する 
    107107        $objPage->arrBlocData = $_POST; 
    108108    } 
    109109} 
    110110 
    111 // ¥Ç¡¼¥¿ºï½ü½èÍý 
     111// データ削除処理 
    112112if ($_POST['mode'] == 'delete') { 
    113113     
    114     // DB¤Ø¥Ç¡¼¥¿¤ò¹¹¿·¤¹¤ë 
    115     $objDBConn = new SC_DbConn;     // DBÁàºî¥ª¥Ö¥¸¥§¥¯¥È 
    116     $sql = "";                      // ¥Ç¡¼¥¿¹¹¿·SQLÀ¸À®ÍÑ 
    117     $ret = "";                      // ¥Ç¡¼¥¿¹¹¿··ë²Ì³ÊǼÍÑ 
    118     $arrDelData = array();          // ¹¹¿·¥Ç¡¼¥¿À¸À®ÍÑ 
    119      
    120     // ¹¹¿·¥Ç¡¼¥¿À¸À® 
     114    // DBへデータを更新する 
     115    $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
     116    $sql = "";                      // データ更新SQL生成用 
     117    $ret = "";                      // データ更新結果格納用 
     118    $arrDelData = array();          // 更新データ生成用 
     119     
     120    // 更新データ生成 
    121121    $arrUpdData = array($arrData['bloc_name'], BLOC_DIR . $arrData['filename'] . '.tpl', $arrData['filename']); 
    122122     
    123     // bloc_id ¤¬¶õ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ïdelete¤ò¼Â¹Ô 
     123    // bloc_id が空でない場合にはdeleteを実行 
    124124    if ($_POST['bloc_id'] !== '') { 
    125         // SQLÀ¸À® 
     125        // SQL生成 
    126126        $sql = " DELETE FROM dtb_bloc WHERE bloc_id = ?"; 
    127         // SQL¼Â¹Ô 
     127        // SQL実行 
    128128        $ret = $objDBConn->query($sql,array($_POST['bloc_id'])); 
    129129         
    130         // ¥Ú¡¼¥¸¤ËÇÛÃÖ¤µ¤ì¤Æ¤¤¤ë¥Ç¡¼¥¿¤âºï½ü¤¹¤ë 
     130        // ページに配置されているデータも削除する 
    131131        $sql = "DELETE FROM dtb_blocposition WHERE bloc_id = ?"; 
    132         // SQL¼Â¹Ô 
     132        // SQL実行 
    133133        $ret = $objDBConn->query($sql,array($_POST['bloc_id'])); 
    134134     
    135         // ¥Õ¥¡¥¤¥ë¤Îºï½ü 
     135        // ファイルの削除 
    136136        $del_file = BLOC_PATH . $arrBlocData[0]['filename']. '.tpl'; 
    137137        if(file_exists($del_file)){ 
     
    144144 
    145145 
    146 // ²èÌ̤Îɽ¼¨ 
     146// 画面の表示 
    147147$objView->assignobj($objPage); 
    148148$objView->display(MAIN_FRAME); 
     
    151151 
    152152/************************************************************************************************************** 
    153  * ´Ø¿ô̾   ¡§lfgetBlocData 
    154  * ½èÍýÆâÍÆ ¡§¥Ö¥í¥Ã¥¯¾ðÊó¤ò¼èÆÀ¤¹¤ë 
    155  * °ú¿ô1    ¡§$where  Ž¥Ž¥Ž¥ Where¶çʸ 
    156  * °ú¿ô2    ¡§$arrVal Ž¥Ž¥Ž¥ Where¶ç¤Î¹Ê¹þ¾ò·ïÃÍ 
    157  * Ìá¤êÃÍ   ¡§¥Ö¥í¥Ã¥¯¾ðÊó 
     153 * 関数名  :lfgetBlocData 
     154 * 処理内容 :ブロック情報を取得する 
     155 * 引数1  :$where  ・・・ Where句文 
     156 * 引数2  :$arrVal ・・・ Where句の絞込条件値 
     157 * 戻り値  :ブロック情報 
    158158 **************************************************************************************************************/ 
    159159function lfgetBlocData($where = '', $arrVal = ''){ 
    160     $objDBConn = new SC_DbConn;     // DBÁàºî¥ª¥Ö¥¸¥§¥¯¥È 
    161     $sql = "";                      // ¥Ç¡¼¥¿¼èÆÀSQLÀ¸À®ÍÑ 
    162     $arrRet = array();              // ¥Ç¡¼¥¿¼èÆÀÍÑ 
    163      
    164     // SQLÀ¸À® 
     160    $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
     161    $sql = "";                      // データ取得SQL生成用 
     162    $arrRet = array();              // データ取得用 
     163     
     164    // SQL生成 
    165165    $sql = " SELECT "; 
    166166    $sql .= "   bloc_id"; 
     
    175175    $sql .= "   dtb_bloc"; 
    176176 
    177     // where¶ç¤Î»ØÄ꤬¤¢¤ì¤ÐÄɲà    
     177    // where句の指定があれば追加   
    178178    if ($where != '') { 
    179179        $sql .= " WHERE " . $where; 
     
    188188 
    189189/************************************************************************************************************** 
    190  * ´Ø¿ô̾   ¡§lfEntryBlocData 
    191  * ½èÍýÆâÍÆ ¡§¥Ö¥í¥Ã¥¯¾ðÊó¤ò¹¹¿·¤¹¤ë 
    192  * °ú¿ô1    ¡§$arrData  Ž¥Ž¥Ž¥ ¹¹¿·¥Ç¡¼¥¿ 
    193  * Ìá¤êÃÍ   ¡§¹¹¿··ë²Ì 
     190 * 関数名  :lfEntryBlocData 
     191 * 処理内容 :ブロック情報を更新する 
     192 * 引数1  :$arrData  ・・・ 更新データ 
     193 * 戻り値  :更新結果 
    194194 **************************************************************************************************************/ 
    195195function lfEntryBlocData($arrData){ 
    196     $objDBConn = new SC_DbConn;     // DBÁàºî¥ª¥Ö¥¸¥§¥¯¥È 
    197     $sql = "";                      // ¥Ç¡¼¥¿¹¹¿·SQLÀ¸À®ÍÑ 
    198     $ret = "";                      // ¥Ç¡¼¥¿¹¹¿··ë²Ì³ÊǼÍÑ 
    199     $arrUpdData = array();          // ¹¹¿·¥Ç¡¼¥¿À¸À®ÍÑ 
    200     $arrChk = array();              // ÇÓ¾¥Á¥§¥Ã¥¯ÍÑ 
    201      
    202     // ¹¹¿·¥Ç¡¼¥¿À¸À® 
     196    $objDBConn = new SC_DbConn;     // DB操作オブジェクト 
     197    $sql = "";                      // データ更新SQL生成用 
     198    $ret = "";                      // データ更新結果格納用 
     199    $arrUpdData = array();          // 更新データ生成用 
     200    $arrChk = array();              // 排他チェック用 
     201     
     202    // 更新データ生成 
    203203    $arrUpdData = array($arrData['bloc_name'], BLOC_DIR . $arrData['filename'] . '.tpl', $arrData['filename']); 
    204204     
    205     // ¥Ç¡¼¥¿¤¬Â¸ºß¤·¤Æ¤¤¤ë¤«¥Á¥§¥Ã¥¯¤ò¹Ô¤¦ 
     205    // データが存在しているかチェックを行う 
    206206    if($arrData['bloc_id'] !== ''){ 
    207207        $arrChk = lfgetBlocData("bloc_id = ?", array($arrData['bloc_id'])); 
    208208    } 
    209209     
    210     // bloc_id ¤¬¶õ ¼ã¤·¤¯¤Ï ¥Ç¡¼¥¿¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤ÏINSERT¤ò¹Ô¤¦ 
     210    // bloc_id が空 若しくは データが存在していない場合にはINSERTを行う 
    211211    if ($arrData['bloc_id'] === '' or !isset($arrChk[0])) { 
    212         // SQLÀ¸À® 
     212        // SQL生成 
    213213        $sql = " INSERT INTO dtb_bloc"; 
    214214        $sql .= " ( "; 
    215         $sql .= "     bloc_name ";      // ¥Ö¥í¥Ã¥¯Ì¾¾Î 
    216         $sql .= "     ,tpl_path ";      // ¥Æ¥ó¥×¥ì¡¼¥ÈÊݸÀè 
    217         $sql .= "     ,filename ";      // ¥Õ¥¡¥¤¥ë̾¾Î 
    218         $sql .= "     ,create_date ";   // ºîÀ®Æü 
    219         $sql .= "     ,update_date ";   // ¹¹¿·Æü 
     215        $sql .= "     bloc_name ";      // ブロック名称 
     216        $sql .= "     ,tpl_path ";      // テンプレート保存先 
     217        $sql .= "     ,filename ";      // ファイル名称 
     218        $sql .= "     ,create_date ";   // 作成日 
     219        $sql .= "     ,update_date ";   // 更新日 
    220220        $sql .= " ) VALUES ( ?,?,?,now(),now() )"; 
    221221        $sql .= " "; 
    222222    }else{ 
    223         // ¥Ç¡¼¥¿¤¬Â¸ºß¤·¤Æ¤ë¾ì¹ç¤Ë¤Ï¥¢¥Ã¥×¥Ç¡¼¥È¤ò¹Ô¤¦ 
    224         // SQLÀ¸À® 
     223        // データが存在してる場合にはアップデートを行う 
     224        // SQL生成 
    225225        $sql = " UPDATE dtb_bloc"; 
    226226        $sql .= " SET"; 
    227         $sql .= "     bloc_name = ? ";  // ¥Ö¥í¥Ã¥¯Ì¾¾Î 
    228         $sql .= "     ,tpl_path = ? ";  // ¥Æ¥ó¥×¥ì¡¼¥ÈÊݸÀè 
    229         $sql .= "     ,filename = ? ";  // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë̾ 
     227        $sql .= "     bloc_name = ? ";  // ブロック名称 
     228        $sql .= "     ,tpl_path = ? ";  // テンプレート保存先 
     229        $sql .= "     ,filename = ? ";  // テンプレートファイル名 
    230230        $sql .= "     ,update_date = now()"; 
    231231        $sql .= " WHERE bloc_id = ?"; 
    232232        $sql .= " "; 
    233233         
    234         // ¹¹¿·¥Ç¡¼¥¿¤Ë¥Ö¥í¥Ã¥¯ID¤òÄɲà
     234        // 更新データにブロックIDを追加 
    235235        array_push($arrUpdData, $arrData['bloc_id']); 
    236236    } 
    237237     
    238     // SQL¼Â¹Ô 
     238    // SQL実行 
    239239    $ret = $objDBConn->query($sql,$arrUpdData); 
    240240     
     
    244244 
    245245/************************************************************************************************************** 
    246  * ´Ø¿ô̾   ¡§lfErrorCheck 
    247  * ½èÍýÆâÍÆ ¡§ÆþÎϹàÌܤΥ¨¥é¡¼¥Á¥§¥Ã¥¯¤ò¹Ô¤¦ 
    248  * °ú¿ô1    ¡§$arrData  Ž¥Ž¥Ž¥ ÆþÎϥǡ¼¥¿ 
    249  * Ìá¤êÃÍ   ¡§¥¨¥é¡¼¾ðÊó 
     246 * 関数名  :lfErrorCheck 
     247 * 処理内容 :入力項目のエラーチェックを行う 
     248 * 引数1  :$arrData  ・・・ 入力データ 
     249 * 戻り値  :エラー情報 
    250250 **************************************************************************************************************/ 
    251251function lfErrorCheck($array) { 
     
    253253    $objErr = new SC_CheckError($array); 
    254254     
    255     $objErr->doFunc(array("¥Ö¥í¥Ã¥¯Ì¾", "bloc_name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    256     $objErr->doFunc(array("¥Õ¥¡¥¤¥ë̾", "filename", STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK","FILE_NAME_CHECK")); 
    257      
    258     // Ʊ°ì¤Î¥Õ¥¡¥¤¥ë̾¤¬Â¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¥¨¥é¡¼ 
     255    $objErr->doFunc(array("ブロック名", "bloc_name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     256    $objErr->doFunc(array("ファイル名", "filename", STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK","FILE_NAME_CHECK")); 
     257     
     258    // 同一のファイル名が存在している場合にはエラー 
    259259    if(!isset($objErr->arrErr['filename']) and $array['filename'] !== ''){ 
    260260        $arrChk = lfgetBlocData("filename = ?", array($array['filename'])); 
    261261         
    262262        if (count($arrChk[0]) >= 1 and $arrChk[0]['bloc_id'] != $array['bloc_id']) { 
    263             $objErr->arrErr['filename'] = '¢¨ Ʊ¤¸¥Õ¥¡¥¤¥ë̾¤Î¥Ç¡¼¥¿¤¬Â¸ºß¤·¤Æ¤¤¤Þ¤¹¡£Ê̤Î̾¾Î¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£'; 
     263            $objErr->arrErr['filename'] = '※ 同じファイル名のデータが存在しています。別の名称を付けてください。'; 
    264264        } 
    265265    } 
Note: See TracChangeset for help on using the changeset viewer.