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

Changeset 7037


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

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

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

Legend:

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

    r4314 r7037  
    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.10.x/webapp/modules/admin/lib/db_admin.php

    r6941 r7037  
    680680    $ids = db_get_col($sql, $params);
    681681
    682     // --- ポイントで絞り込み ここから
    683     if ( isset($cond_list['s_point']) || isset($cond_list['e_point'])) {
    684 
    685         $sql = 'SELECT c_member_id'.
    686                ' FROM c_member_profile '.
    687                ' INNER JOIN c_profile USING (c_profile_id) '.
    688                ' WHERE name = ? ';
    689         $params = array(
    690             'PNE_POINT',
    691         );
    692         //開始ポイント
    693         if (!empty($cond_list['s_point'])) {
     682    // --- ランクで絞り込み ここから
     683    if ($cond_list['s_rank'] || $cond_list['e_rank']) {
     684        $sql = 'SELECT c_member_id'
     685             . ' FROM c_member_profile '
     686             . ' INNER JOIN c_profile USING (c_profile_id) '
     687             . ' WHERE name = ? ';
     688        $params = array('PNE_POINT');
     689
     690        if ($cond_list['s_rank']) {
     691            $s_point = db_point_get_point4rank_id($cond_list['s_rank']);
    694692            $sql .= ' AND value >= ?';
    695             $params[] = $cond_list['s_point'];
    696         }
    697         //終了ポイント
    698         if (!empty($cond_list['e_point'])) {
    699             $sql .= ' AND value < ?';
    700             $params[] = $cond_list['e_point'];
     693            $params[] = (int)$s_point;
     694        }
     695
     696        if ($cond_list['e_rank']) {
     697            $e_point = db_point_get_point4pre_rank_id($cond_list['e_rank']);
     698            if (!is_null($e_point)) {
     699                $sql .= ' AND value < ?';
     700                $params[] = (int)$e_point;
     701            }
    701702        }
    702703
    703704        $point_ids = db_get_col($sql, $params);
    704705
    705         //ポイントで絞り込み
     706        // ポイントで絞り込み
    706707        $ids = array_intersect($ids, $point_ids);
    707708
    708709    }
    709     // --- ポイントで絞り込み ここまで
     710    // --- ランクで絞り込み ここまで
    710711
    711712    // --- メールアドレスで絞り込み ここから
     
    858859    }
    859860
    860     //ポイント
    861     if (isset($requests['s_point']) && $requests['s_point'] !== '') {
    862         $cond_list['s_point'] = intval($requests['s_point']);
    863     }
    864     if (isset($requests['e_point']) && $requests['e_point'] !== '') {
    865         $cond_list['e_point'] = intval($requests['e_point']);
     861    // ランク
     862    if (isset($requests['s_rank']) && $requests['s_rank'] !== '') {
     863        $cond_list['s_rank'] = intval($requests['s_rank']);
     864    }
     865    if (isset($requests['e_rank']) && $requests['e_rank'] !== '') {
     866        $cond_list['e_rank'] = intval($requests['e_rank']);
    866867    }
    867868
  • OpenPNE/branches/stable-2.10.x/webapp/modules/admin/page/list_c_member.php

    r2837 r7037  
    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.10.x/webapp/modules/admin/page/send_messages_search.php

    r3281 r7037  
    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.10.x/webapp/modules/admin/templates/list_c_member.tpl

    r6876 r7037  
    9999                        ({if $smarty.const.OPENPNE_USE_POINT_RANK})
    100100                        <th class="cell10" colspan="2">
    101             <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);">
     101            <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);">
    102102                        <option value="">▼選択</option>
    103103                        ({foreach from=$rank_data item=item})
    104                         <option({if $cond_list.s_point == $item.point}) selected({/if}) value="({$item.point})">({$item.name})</option>
     104                        <option({if $cond_list.s_rank == $item.c_rank_id}) selected({/if}) value="({$item.c_rank_id})">({$item.name})</option>
    105105                        ({/foreach})
    106106                        </select>
    107107                        ~
    108                         <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);">
     108                        <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);">
    109109                        <option value="">▼選択</option>
    110110                        ({foreach from=$rank_data item=item})
    111                         ({if $pre_name})<option({if $cond_list.e_point == $item.point}) selected({/if}) value="({$item.point})">({$pre_name})</option>({/if})
    112                         ({assign var=pre_name value=$item.name|smarty:nodefaults})
    113                         ({/foreach})
    114                         ({if $pre_name})<option({if $cond_list.e_point === 0}) selected({/if}) value="0">({$pre_name})</option>({/if})
     111                        <option({if $cond_list.e_rank == $item.c_rank_id}) selected({/if}) value="({$item.c_rank_id})">({$item.name})</option>
     112                        ({/foreach})
    115113                        </select>
    116114                        </th>
  • OpenPNE/branches/stable-2.10.x/webapp/modules/admin/templates/send_messages_search.tpl

    r4417 r7037  
    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.