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

Changeset 7038


Ignore:
Timestamp:
May 8, 2008, 5:14:26 PM (12 years ago)
Author:
ebihara
Message:

#2038:メンバーリストをポイントで絞り込む際、アクションのパラメータにポイントではなくランクを指定するように修正

Location:
OpenPNE/branches/stable-2.8.x/webapp
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/stable-2.8.x/webapp/lib/db/point.php

    r4450 r7038  
    119119}
    120120
     121// ランクから到達ポイントを取得
     122function db_point_get_point4rank_id($c_rank_id)
     123{
     124    $sql = "SELECT point FROM c_rank WHERE c_rank_id = ?";
     125    $params = array(intval($c_rank_id));
     126    return db_get_one($sql, $params);
     127}
     128
     129// 指定したランクの次のランクの到達ポイントを取得
     130function db_point_get_point4pre_rank_id($c_rank_id)
     131{
     132    $pre_point = db_point_get_point4rank_id($c_rank_id);
     133
     134    $sql = 'SELECT point FROM c_rank WHERE point > ? ORDER BY point';
     135    $params = array(intval($pre_point));
     136
     137    return db_get_one($sql, $params);
     138}
     139
     140// 指定したランクの情報を取得
     141function db_point_get_rank4rank_id($c_rank_id)
     142{
     143    $sql = "SELECT * FROM c_rank WHERE c_rank_id = ?";
     144    $params = array(intval($c_rank_id));
     145    return db_get_row($sql, $params);
     146}
     147
    121148?>
  • OpenPNE/branches/stable-2.8.x/webapp/modules/admin/lib/db_admin.php

    r6943 r7038  
    670670    $ids = db_get_col($sql, $params);
    671671
    672     // --- ポイントで絞り込み ここから
    673     if ( isset($cond_list['s_point']) || isset($cond_list['e_point'])) {
    674 
    675         $sql = 'SELECT c_member_id'.
    676                ' FROM c_member_profile '.
    677                ' INNER JOIN c_profile USING (c_profile_id) '.
    678                ' WHERE name = ? ';
    679         $params = array(
    680             'PNE_POINT',
    681         );
    682         //開始ポイント
    683         if (!empty($cond_list['s_point'])) {
     672    // --- ランクで絞り込み ここから
     673    if ($cond_list['s_rank'] || $cond_list['e_rank']) {
     674        $sql = 'SELECT c_member_id'
     675             . ' FROM c_member_profile '
     676             . ' INNER JOIN c_profile USING (c_profile_id) '
     677             . ' WHERE name = ? ';
     678        $params = array('PNE_POINT');
     679
     680        if ($cond_list['s_rank']) {
     681            $s_point = db_point_get_point4rank_id($cond_list['s_rank']);
    684682            $sql .= ' AND value >= ?';
    685             $params[] = $cond_list['s_point'];
    686         }
    687         //終了ポイント
    688         if (!empty($cond_list['e_point'])) {
    689             $sql .= ' AND value < ?';
    690             $params[] = $cond_list['e_point'];
     683            $params[] = (int)$s_point;
     684        }
     685
     686        if ($cond_list['e_rank']) {
     687            $e_point = db_point_get_point4pre_rank_id($cond_list['e_rank']);
     688            if (!is_null($e_point)) {
     689                $sql .= ' AND value < ?';
     690                $params[] = (int)$e_point;
     691            }
    691692        }
    692693
    693694        $point_ids = db_get_col($sql, $params);
    694695
    695         //ポイントで絞り込み
     696        // ポイントで絞り込み
    696697        $ids = array_intersect($ids, $point_ids);
    697698
    698699    }
    699     // --- ポイントで絞り込み ここまで
     700    // --- ランクで絞り込み ここまで
    700701
    701702    // --- メールアドレスで絞り込み ここから
     
    836837    }
    837838
    838     //ポイント
    839     if (isset($requests['s_point']) && $requests['s_point'] !== '') {
    840         $cond_list['s_point'] = intval($requests['s_point']);
    841     }
    842     if (isset($requests['e_point']) && $requests['e_point'] !== '') {
    843         $cond_list['e_point'] = intval($requests['e_point']);
     839    // ランク
     840    if (isset($requests['s_rank']) && $requests['s_rank'] !== '') {
     841        $cond_list['s_rank'] = intval($requests['s_rank']);
     842    }
     843    if (isset($requests['e_rank']) && $requests['e_rank'] !== '') {
     844        $cond_list['e_rank'] = intval($requests['e_rank']);
    844845    }
    845846
  • OpenPNE/branches/stable-2.8.x/webapp/modules/admin/page/list_c_member.php

    r2837 r7038  
    5050        $v['select_last_login'] = $select_last_login;
    5151
    52         $v['rank_data'] = db_point_get_rank_all();
    53 
    54 
    5552        //開始年が終了年より大きい
    5653        if ( !empty($cond_list['s_year']) && !empty($cond_list['e_year']) && ($cond_list['s_year'] > $cond_list['e_year']) ) {
  • OpenPNE/branches/stable-2.8.x/webapp/modules/admin/page/send_messages_search.php

    r3281 r7038  
    1616
    1717        $special_keys = array('s_year', 'e_year',
    18                               's_point', 'e_point',
     18                              's_rank', 'e_rank',
    1919                              'last_login',
    2020                              'is_pc_address', 'is_ktai_address');
     
    3939        );
    4040        $v['select_last_login'] = $select_last_login;
    41        
     41
     42        if ($cond_list['s_rank']) {
     43            $v['s_rank'] = db_point_get_rank4rank_id($cond_list['s_rank']);
     44        }
     45
     46        if ($cond_list['e_rank']) {
     47            $v['e_rank'] = db_point_get_rank4rank_id($cond_list['e_rank']);
     48        }
     49
    4250        $this->set($v);
    4351
  • OpenPNE/branches/stable-2.8.x/webapp/modules/admin/templates/list_c_member.tpl

    r6877 r7038  
    9898                        ({if $smarty.const.OPENPNE_USE_POINT_RANK})
    9999                        <th class="cell10" colspan="2">
    100             <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page=({$pager.page})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;s_point='+this.options[this.selectedIndex].value);">
     100            <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page=({$pager.page})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;s_rank='+this.options[this.selectedIndex].value);">
    101101                        <option value="">▼選択</option>
    102102                        ({foreach from=$rank_data item=item})
    103                         <option({if $cond_list.s_point == $item.point}) selected({/if}) value="({$item.point})">({$item.name})</option>
     103                        <option({if $cond_list.s_rank == $item.c_rank_id}) selected({/if}) value="({$item.c_rank_id})">({$item.name})</option>
    104104                        ({/foreach})
    105105                        </select>
    106106                        ~
    107                         <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page=({$pager.page})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;e_point='+this.options[this.selectedIndex].value);">
     107                        <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page=({$pager.page})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;e_rank='+this.options[this.selectedIndex].value);">
    108108                        <option value="">▼選択</option>
    109109                        ({foreach from=$rank_data item=item})
    110                         ({if $pre_name})<option({if $cond_list.e_point == $item.point}) selected({/if}) value="({$item.point})">({$pre_name})</option>({/if})
    111                         ({assign var=pre_name value=$item.name|smarty:nodefaults})
    112                         ({/foreach})
    113                         ({if $pre_name})<option({if $cond_list.e_point === 0}) selected({/if}) value="0">({$pre_name})</option>({/if})
     110                        <option({if $cond_list.e_rank == $item.c_rank_id}) selected({/if}) value="({$item.c_rank_id})">({$item.name})</option>
     111                        ({/foreach})
    114112                        </select>
    115113                        </th>
  • OpenPNE/branches/stable-2.8.x/webapp/modules/admin/templates/send_messages_search.tpl

    r3688 r7038  
    2727<li>最終ログイン : ({$select_last_login[$cond_list.last_login]})</li>
    2828({/if})
    29 ({if $cond_list.s_point||$cond_list.e_point})
    30 <li>ポイント : ({$cond_list.s_point})~({$cond_list.e_point})</li>
     29({if $cond_list.s_rank||$cond_list.e_rank})
     30<li>ランク : ({$s_rank.name}) ~ ({$e_rank.name})</li>
    3131({/if})
    3232({if $cond_list.is_pc_address})
Note: See TracChangeset for help on using the changeset viewer.