ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 3005


Ignore:
Timestamp:
May 18, 2007, 10:17:19 PM (12 years ago)
Author:
ebihara
Message:

#780:予定編集の際にエラー遷移すると、内容が保持されない項目があったのを修正

Location:
OpenPNE/branches/2.8.x/webapp_biz/modules/biz
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/2.8.x/webapp_biz/modules/biz/do/fh_biz_schedule_edit.php

    r2943 r3005  
    77class biz_do_fh_biz_schedule_edit extends OpenPNE_Action
    88{
     9    function handleError($errors)
     10    {
     11        $_REQUEST['msg'] = array_shift($errors);
     12        openpne_forward('biz', 'page', 'fh_biz_schedule_edit', $errors);
     13        exit;
     14    }
     15
    916    function execute($requests)
    1017    {
     
    1724        }
    1825        $schedule = biz_getScheduleInfo($requests['schedule_id']);
    19        
    20         //ERROR----------------
    21         //存在しない日付
    22         if (!checkdate($requests['sc_b_month'], $requests['sc_b_date'], $requests['sc_b_year'])) {
    23             $redirect_script = '?m=biz&a=page_fh_biz_schedule_edit';
    24             $msg = '存在しない日付が指定されました。';
    25 
    26             $begin_date = $schedule['begin_date'];
    27 
    28             //日付関連の引数は返さなくてもよい
    29             $p = array('msg' => $msg, 'begin_date' => $begin_date, 'title' => $requests['sc_title'],
    30                 'sc_rp' => $requests['sc_rp'], 'sc_memo' => $requests['sc_memo'], 'members' => serialize($requests['sc_j_mem']),
    31                 'sc_rwk_enc' => serialize($requests['sc_rwk_enc']), 'sc_rcount' => $requests['sc_rcount'],
    32                 'schedule_id' => $requests['schedule_id']);
    33             openpne_redirect('biz', 'page_fh_biz_schedule_edit', $p);
    34             exit();  //強制的にスクリプトを終了しなければいけない
    35         }
    36         //---------------------
    37 
    38         //ERROR----------------
    39         //タイトル未入力
    40         if (empty($requests['sc_title'])) {
    41             $msg = 'タイトルを入力してください。';
    42             $begin_date = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
    43 
    44             $p = array('msg' => $msg, 'begin_date' => $begin_date,  'sc_rp' => $requests['sc_rp'],
    45              'sc_memo' => $requests['sc_memo'], 'members' => serialize($requests['sc_j_mem']),
    46                 'sc_rwk_enc' => serialize($requests['sc_rwk_enc']), 'sc_rcount' => $requests['sc_rcount'],
    47                 'schedule_id' => $requests['schedule_id']);
    48             openpne_redirect('biz', 'page_fh_biz_schedule_edit', $p);
    49             exit();  //強制的にスクリプトを終了しなければいけない
    50         }   
    51         //---------------------
    52 
    53         //ERROR----------------
    54         //繰り返し予定::曜日指定なし
    55         if ($requests['sc_rp'] && empty($requests['sc_rwk'])) {
    56             $msg = '繰り返し予定を登録する場合は、曜日を指定してください。';
    57             $begin_date = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
    58 
    59             $p = array('msg' => $msg, 'begin_date' => $begin_date, 'sc_title' => $requests['sc_title'],
    60                 'sc_rp' => $requests['sc_rp'], 'sc_memo' => $requests['sc_memo'], 'members' => serialize($requests['sc_j_mem']),
    61                 'sc_rwk_enc' => serialize($requests['sc_rwk_enc']), 'sc_rcount' => $requests['sc_rcount'],
    62                 'schedule_id' => $requests['schedule_id']);
    63             openpne_redirect('biz', 'page_fh_biz_schedule_edit', $p);
    64             exit();  //強制的にスクリプトを終了しなければいけない
    65         }
    66         //--------------------
    6726
    6827        if ($requests['sc_b_hour'] && !$requests['sc_b_minute']) {
     
    7534        //日付のフォーマットを設定
    7635        $begin_date = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
    77         $begin_time = $requests['sc_b_hour'].':'.$requests['sc_b_minute'];
    78         $finish_time = $requests['sc_f_hour'].':'.$requests['sc_f_minute'];
    7936
    80         //ERROR---------------
     37        if ($requests['sc_b_hour'] && $requests['sc_b_minute']) {
     38            $begin_time = $requests['sc_b_hour'].':'.$requests['sc_b_minute'];
     39        }
     40
     41        if ($requests['sc_f_hour'] && $requests['sc_f_minute']) {
     42            $finish_time = $requests['sc_f_hour'].':'.$requests['sc_f_minute'];
     43        }
     44
     45        // エラー遷移用
     46        $_REQUEST['begin_date'] = $begin_date;
     47        $_REQUEST['begin_time'] = $begin_time;
     48        $_REQUEST['finish_time'] = $finish_time;
     49
     50        if (!checkdate($requests['sc_b_month'], $requests['sc_b_date'], $requests['sc_b_year'])) {
     51            $_REQUEST['msg'] = '存在しない日付が指定されました。';
     52            openpne_forward('biz', 'page', 'fh_biz_schedule_edit');
     53            exit();
     54        }
     55
     56        if ($requests['sc_rp'] && empty($requests['sc_rwk'])) {
     57            $_REQUEST['msg'] = '繰り返し予定を登録する場合は、曜日を指定してください。';
     58            openpne_forward('biz', 'page', 'fh_biz_schedule_edit');
     59            exit();
     60        }
     61
    8162        if ((strtotime($finish_time) < strtotime($begin_time)) && ($finish_time != ':')) {
    82             //終了時間と開始時間が変
    83             $msg = '終了時刻が開始時刻より先です。';
    84             $begin_date = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
    85 
    86             $p = array('msg' => $msg, 'begin_date' => $begin_date, 'sc_title' => $requests['sc_title'],
    87                 'sc_rp' => $requests['sc_rp'], 'sc_memo' => $requests['sc_memo'], 'members' => serialize($requests['sc_j_mem']),
    88                 'sc_rwk_enc' => serialize($requests['sc_rwk_enc']), 'sc_rcount' => $requests['sc_rcount'],
    89                 'schedule_id' => $requests['schedule_id']);
    90             openpne_redirect('biz', 'page_fh_biz_schedule_edit', $p);
    91 
    92             exit();  //強制的にスクリプトを終了しなければいけない
    93         }
    94         //--------------------
    95 
    96         //ERROR---------------
    97         //グループまで公開の予定なのにグループが指定されていない
    98         //--------------------
    99         if(($requests['public_flag'] == 'group') && empty($requests['biz_group_id'])) {
    100             $msg = '「グループまで公開」予定の場合はグループを指定してください';
    101             $begin_date = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
    102 
    103             $p = array('msg' => $msg, 'begin_date' => $begin_date, 'title' => $requests['sc_title'],
    104                 'sc_rp' => $requests['sc_rp'], 'value' => $requests['sc_memo'], 'members' => serialize($requests['sc_j_mem']),
    105                 'sc_rwk_enc' => serialize($requests['sc_rwk_enc']), 'sc_rcount' => $requests['sc_rcount'],
    106                 'schedule_id' => $requests['schedule_id']);
    107             openpne_redirect('biz', 'page_fh_biz_schedule_edit', $p);
    108 
    109             exit();  //強制的にスクリプトを終了しなければいけない
     63            $_REQUEST['msg'] = '終了時刻が開始時刻より先です。';
     64            openpne_forward('biz', 'page', 'fh_biz_schedule_edit');
     65            exit();
    11066        }
    11167       
     68        if(($requests['public_flag'] == 'group') && empty($requests['biz_group_id'])) {
     69            $_REQUEST['msg'] = '「グループまで公開」予定の場合はグループを指定してください';
     70            openpne_forward('biz', 'page', 'fh_biz_schedule_edit');
     71            exit();
     72        }
     73
    11274        //施設、参加者のチェック
    11375        if (in_array('0', $requests['sc_j_mem'])) {
  • OpenPNE/branches/2.8.x/webapp_biz/modules/biz/page/fh_biz_schedule_edit.php

    r2951 r3005  
    1818        $form_val['subject'] = $requests['subject'];
    1919        $form_val['body'] = $requests['body'];
     20
     21        if ($requests['sc_b_year'] && $requests['sc_b_month'] && $requests['sc_b_date']) {
     22            $requests['begin_date'] = $requests['sc_b_year'].'-'.$requests['sc_b_month'].'-'.$requests['sc_b_date'];
     23        }
     24
     25        if ($requests['sc_b_hour'] && $requests['sc_b_minute']) {
     26            $requests['begin_time'] = $requests['sc_b_hour'].':'.$requests['sc_b_minute'];
     27        }
     28
     29        if ($requests['sc_f_hour'] && $requests['sc_f_minute']) {
     30            $requests['finish_time'] = $requests['sc_f_hour'].':'.$requests['sc_f_minute'];
     31        }
    2032
    2133        $sessid = session_id();
  • OpenPNE/branches/2.8.x/webapp_biz/modules/biz/validate/do/fh_biz_schedule_edit.ini

    r2880 r3005  
    5656[sc_title]
    5757type= "string"
    58 required = 0
    59 capiton = "タイトル"
     58required = 1
     59caption = "タイトル"
    6060
    6161[sc_memo]
  • OpenPNE/branches/2.8.x/webapp_biz/modules/biz/validate/page/fh_biz_schedule_edit.ini

    r217 r3005  
    3737[target_id]
    3838type="int"
     39
     40[sc_b_year]
     41type = "int"
     42required = 0
     43caption = "開始年"
     44
     45[sc_b_month]
     46type = "string"
     47required = 0
     48caption = "開始月"
     49
     50[sc_b_date]
     51type = "string"
     52required = 0
     53caption = "開始日"
     54
     55[sc_b_hour]
     56type = "string"
     57required = 0
     58caption = "開始時"
     59
     60[sc_b_minute]
     61type = "string"
     62required = 0
     63caption = "開始分"
     64
     65[sc_f_year]
     66type = "string"
     67required = 0
     68caption = "終了年"
     69
     70[sc_f_month]
     71type = "string"
     72required = 0
     73caption = "終了月"
     74
     75[sc_f_date]
     76type = "string"
     77required = 0
     78caption = "終了日"
     79
     80[sc_f_hour]
     81type = "string"
     82required = 0
     83caption = "終了時"
     84
     85[sc_f_minute]
     86type = "string"
     87required = 0
     88caption = "終了分"
Note: See TracChangeset for help on using the changeset viewer.