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

Changeset 10902


Ignore:
Timestamp:
Feb 27, 2009, 3:11:31 PM (11 years ago)
Author:
tsubasa
Message:

メンバー検索機能拡張・コミュニティリスト機能追加

Location:
OpenPNE/branches/work/tsubasa/feedback/webapp/modules/admin
Files:
13 added
4 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/work/tsubasa/feedback/webapp/modules/admin/lib/db_admin.php

    r10878 r10902  
    633633    $sql = 'SELECT c_member_id FROM c_member';
    634634    $wheres = array();
     635    // ID(完全一致)
     636    if (!empty($cond_list['id'])) {
     637        $wheres[] = "c_member_id = ?";
     638        $params[] = $cond_list['id'];
     639    }
     640
     641    // ニックネーム(あいまい検索)
     642    if (!empty($cond_list['nickname'])) {
     643        $wheres[] = "nickname LIKE ?";
     644        $params[] = '%' . $cond_list['nickname'] . '%';
     645    }
    635646
    636647    // 開始年
     
    689700    // プロフィール識別子であれば除外
    690701    $is_order = false;
    691     if (!empty($type) && !(isset($type[2]) && !$type[2] == 'p')) {
     702    if (!empty($type)) {
    692703        $is_order = true;
    693704
     
    839850    $sql = 'SELECT name, form_type, c_profile_id FROM c_profile';
    840851    $profile = db_get_all($sql);
     852    $profile_cond = $cond_list['profile'];
    841853
    842854    if ($profile) {
    843855        foreach ($profile as $value) {
    844             if(!empty($cond_list[$value['name']])
    845                && ($value['form_type'] == 'radio' || $value['form_type'] == 'select')) {
    846                 $sql = 'SELECT c_member_id FROM c_member_profile WHERE c_profile_option_id = ?';
    847                 $params = array($cond_list[$value['name']]);
     856            if(!empty($profile_cond[$value['name']]) ) {
     857               if ($value['form_type'] == 'radio' || $value['form_type'] == 'select') {
     858                    $sql = 'SELECT c_member_id FROM c_member_profile WHERE c_profile_option_id = ?';
     859                    $params = array($profile_cond[$value['name']]);
     860                } else if ($value['form_type'] == 'checkbox') {
     861                    $c_profile_option_id_list = implode(", ", $profile_cond[$value['name']]);
     862                    $sql = 'SELECT c_member_id FROM c_member_profile WHERE c_profile_option_id IN ( '. $c_profile_option_id_list .' )';
     863                    $params = array();
     864                } else {
     865                    $sql = 'SELECT c_member_id FROM c_member_profile WHERE c_profile_id = ? AND value LIKE ?';
     866                    $params = array($value['c_profile_id'],'%' . $profile_cond[$value['name']] . '%');
     867                }
    848868                $temp_ids = db_get_col($sql, $params);
    849869                $ids = array_intersect($ids, $temp_ids);
    850870            }
    851871
    852             if($value['name'] == $type[0] && isset($type[2]) && $type[2] == 'p') {
     872            if($value['name'] == $type[0]) {
    853873                $sql = 'SELECT c_member_id FROM c_member_profile WHERE c_profile_id = ?';
    854874
     
    882902}
    883903
     904
    884905/**
    885906 * ログインIDによるメンバーIDリストソート
     
    901922
    902923/**
     924 * メールアドレスによるメンバ絞込み
     925 *
     926 */
     927function db_admin_c_member_id_list4cond_str_mail_address($ids, $cond_list)
     928{
     929    if ( !empty($cond_list['mail_address']) ) {
     930        $sql = 'SELECT c_member_id FROM c_member_secure' .
     931               ' WHERE pc_address = ? OR ktai_address = ? OR regist_address = ?';
     932        $enc_address = t_encrypt($cond_list['mail_address']);
     933        $params = array($enc_address, $enc_address, $enc_address);
     934
     935        $ids = array_intersect($ids, db_get_col($sql, $params));
     936    }
     937
     938    return $ids;
     939}
     940
     941/**
     942 * ログインIDによるメンバ絞込み
     943 *
     944 */
     945function db_admin_c_member_id_list4cond_username($ids, $cond_list)
     946{
     947    if ( !empty($cond_list['username']) ) {
     948        $sql = 'SELECT c_member_id FROM c_username WHERE username = ?';
     949        $params = array($cond_list['username']);
     950
     951        $ids = array_intersect($ids, db_get_col($sql, $params));
     952    }
     953
     954    return $ids;
     955}
     956
     957/**
    903958 * メンバーIDリスト取得(絞り込み対応)
    904959 */
    905 function _db_admin_c_member_id_list($cond_list, $profile_cond_list, $order = '')
     960function _db_admin_c_member_id_list($cond_list, $order = '')
    906961{
    907962    $type = explode('-', $order);
     
    919974
    920975    // ログインIDでソート
    921     if ($type[0] == 'username' && OPENPNE_AUTH_MODE != 'email' && !(isset($type[2]) && $type[2] == 'p')) {
     976    if ($type[0] == 'username' && OPENPNE_AUTH_MODE != 'email') {
    922977        $ids = db_admin_c_member_id_list_sort4username($ids, $type);
    923978    }
    924979
    925980    // プロフィール項目で絞り込み
    926     $ids = db_admin_c_member_id_list4cond_c_profile($ids, $profile_cond_list, $type);
     981    $ids = db_admin_c_member_id_list4cond_c_profile($ids, $cond_list, $type);
     982
     983    // 登録メールアドレスで絞込み
     984    $ids = db_admin_c_member_id_list4cond_str_mail_address($ids, $cond_list);
     985
     986    // ログインIDで絞込み
     987    $ids = db_admin_c_member_id_list4cond_username($ids, $cond_list);
    927988
    928989    return $ids;
     
    933994 * 誕生年+プロフィール(select,radioのみ)
    934995 */
    935 function _db_admin_c_member_list($page, $page_size, &$pager, $cond_list, $profile_cond_list, $order)
    936 {
    937     $ids = _db_admin_c_member_id_list($cond_list, $profile_cond_list, $order);
    938 
     996function _db_admin_c_member_list($page, $page_size, &$pager, $cond_list, $order)
     997{
     998    $ids = _db_admin_c_member_id_list($cond_list, $order);
    939999    $total_num = count($ids);
    9401000    $ids = array_slice($ids, ($page - 1) * $page_size, $page_size);
     
    9671027{
    9681028    $cond_list = array();
     1029
     1030    //ID
     1031    if ( !empty($requests['id']) ) {
     1032        $cond_list['id'] = intval($requests['id']);
     1033    }
     1034
     1035    //ログインID
     1036    if (isset($requests['username']) && $requests['username'] !== '') {
     1037        $cond_list['username'] = $requests['username'];
     1038    }
     1039
     1040    //ニックネーム
     1041    if ( !empty($requests['nickname']) ) {
     1042         $cond_list['nickname'] = $requests['nickname'];
     1043    }
     1044
    9691045    //誕生年
    9701046    if (!empty($requests['s_year'])) {
     
    9741050        $cond_list['e_year'] = intval($requests['e_year']);
    9751051    }
     1052    //プロフィール
     1053    $profile_list = db_member_c_profile_list();
     1054    $profile_req = $requests['profile'];
     1055
     1056    if ( $profile_req ) {
     1057        $profile_cond = array();
     1058        foreach ($profile_list as $key => $value) {
     1059           if ( $profile_req[$key] && array_key_exists( $key, $profile_req ) ) {
     1060               if ($value['form_type'] == 'select' || $value['form_type'] == 'radio') {
     1061                   $profile_cond[$key] = intval($profile_req[$key]);
     1062               } else {
     1063                   $profile_cond[$key] = $profile_req[$key];
     1064               }
     1065           }
     1066        }
     1067        $cond_list['profile'] = $profile_cond;
     1068    }
    9761069
    9771070    // 最終ログイン時間
     
    9801073    }
    9811074
     1075    // メールアドレス
     1076    if (!empty($requests['mail_address'])) {
     1077        $cond_list['mail_address'] = $requests['mail_address'];
     1078    }
     1079   
    9821080    //PCメールアドレスの有無
    9831081    if (!empty($requests['is_pc_address'])) {
     
    35893687}
    35903688
     3689function db_admin_commu_c_members4c_commu_id($c_commu_id, $page_size, $page)
     3690{
     3691    $sql = 'SELECT c_member_id, r_datetime FROM c_commu_member WHERE c_commu_id = ? ORDER BY r_datetime';
     3692    $params = array(intval($c_commu_id));
     3693    $id_list = db_get_all_page($sql, $page, $page_size, $params);
     3694
     3695    $list = array();
     3696    foreach ($id_list as $key => $value) {
     3697        $c_member = db_member_c_member4c_member_id_LIGHT($value['c_member_id']);
     3698        $c_member['friend_count'] = db_friend_count_friends($value['c_member_id']);
     3699        $c_member['r_datetime'] = $value['r_datetime'];
     3700        $list[] = $c_member;
     3701    }
     3702
     3703    $sql = 'SELECT COUNT(*) FROM c_commu_member WHERE c_commu_id = ?';
     3704    $total_num = db_get_one($sql, $params);
     3705
     3706    if ($total_num != 0) {
     3707        $total_page_num = ceil($total_num / $page_size);
     3708        if ($page >= $total_page_num) {
     3709            $next = false;
     3710        } else {
     3711            $next = true;
     3712        }
     3713
     3714        if ($page <= 1) {
     3715            $prev = false;
     3716        } else {
     3717            $prev = true;
     3718        }
     3719    }
     3720
     3721    $start_num = ($page - 1) * $page_size + 1 ;
     3722    $end_num   = ($page - 1) * $page_size + $page_size > $total_num ? $total_num : ($page - 1) * $page_size + $page_size ;
     3723
     3724    return array($list , $prev , $next, $total_num, $start_num, $end_num);
     3725}
     3726
     3727function db_admin_commu_c_members_all_get4c_commu_id($c_commu_id)
     3728{
     3729    $sql = 'SELECT c_member_id FROM c_commu_member WHERE c_commu_id = ?';
     3730    $params = array(intval($c_commu_id));
     3731
     3732    $id_list = db_get_all($sql, $params);
     3733
     3734    $list = array();
     3735    foreach ($id_list as $key => $value) {
     3736        $list[] = db_member_c_member4c_member_id($value['c_member_id'], true);
     3737    }
     3738
     3739    return $list;
     3740}
     3741
     3742function cond_name_list($cond_list, $select_last_login)
     3743{
     3744    $cond_name_list = array();
     3745
     3746    if (!is_null($cond_list['id'])) {
     3747        // ID
     3748        $cond_name_list['id']['name'] = 'ID(完全一致)';
     3749        $cond_name_list['id']['value'] = $cond_list['id'];
     3750    }
     3751
     3752    if (!is_null($cond_list['username'])) {
     3753        // ログインID
     3754        $cond_name_list['username']['name'] = 'ログインID';
     3755        $cond_name_list['username']['value'] = $cond_list['username'];   
     3756    }
     3757
     3758    if (!is_null($cond_list['nickname'])) {
     3759        // ニックネーム
     3760        $cond_name_list['nickname']['name'] = WORD_NICKNAME;
     3761        $cond_name_list['nickname']['value'] = $cond_list['nickname'];
     3762    }
     3763
     3764    if (!is_null($cond_list['last_login'])){
     3765        // 最終ログイン
     3766        $cond_name_list['last_login']['name'] = '最終ログイン';
     3767        $cond_name_list['last_login']['value'] = $select_last_login[$cond_list['last_login']];
     3768    }
     3769
     3770    if (!is_null($cond_list['s_year']) || !is_null($cond_list['e_year'] )) {
     3771        // 生年月日
     3772 
     3773        $cond_name_list['year']['name'] = '生年月日';
     3774        if ( !is_null($cond_list['s_year'] )) {
     3775            $cond_name_list['year']['value'] = $cond_list['s_year'].'年 ~ ';
     3776        } else {
     3777            $cond_name_list['year']['value'] = '開始指定なし ~ ';
     3778        }
     3779        if ( !is_null($cond_list['e_year'])) {
     3780            $cond_name_list['year']['value'] .= $cond_list['e_year'].'年';
     3781        } else {
     3782            $cond_name_list['year']['value'] .= '終了指定なし';
     3783        }
     3784    }
     3785
     3786    //プロフィール
     3787    $profile_list = db_member_c_profile_list();
     3788    $profile_cond = $cond_list['profile'];
     3789    $profile_cond_name = array();
     3790
     3791    if ( !is_null($profile_cond) ) {
     3792        foreach ( $profile_list as $key => $profile ) {
     3793            if ( array_key_exists( $key, $profile_cond ) ) {
     3794                $profile_cond_name[$key]['name'] = $profile['caption'];
     3795
     3796                if ( $profile['form_type'] == 'checkbox' ) {
     3797                    $profile_cond_name[$key]['value'] = array();
     3798
     3799                    $count = 0;
     3800                    $work_array = array();
     3801
     3802                    foreach ( $profile['options'] as $option ) {
     3803                        if ( in_array( $option['c_profile_option_id'], $profile_cond[$key] ) ) {
     3804                            $profile_cond_name[$key]['value'][] = $option['value'];
     3805                        }
     3806                    }
     3807                } else {
     3808                    if ( $profile['form_type'] == 'radio' || $profile['form_type'] == 'select' ) {
     3809                        foreach ( $profile['options'] as $option ) {
     3810                            if ( $option['c_profile_option_id'] == $profile_cond[$key] ) {
     3811                                $profile_cond_name[$key]['value'] = $option['value'];
     3812                                break;
     3813                            }
     3814                        }
     3815                    } else {
     3816                        $profile_cond_name[$key]['value'] = $profile_cond[$key];
     3817                    }
     3818                }
     3819            }
     3820        }
     3821        $cond_name_list['profile'] = $profile_cond_name;
     3822    }
     3823
     3824    //メールアドレス
     3825    if (!is_null($cond_list['mail_address'])){
     3826       $cond_name_list['mail_address']['name'] = 'メールアドレス(完全一致)';
     3827       $cond_name_list['mail_address']['value'] = $cond_list['mail_address'];
     3828    }
     3829
     3830    //PCメールアドレスの有無
     3831    if (!is_null($cond_list['is_pc_address'])){
     3832       $cond_name_list['is_pc_address']['name'] = 'PCメールアドレス';
     3833       if ( $cond_list['is_pc_address'] == 1 ) {
     3834           $cond_name_list['is_pc_address']['value'] = '登録している';
     3835       } else {
     3836           $cond_name_list['is_pc_address']['value'] = '登録していない';
     3837       }
     3838    }
     3839   
     3840    //携帯メールアドレスの有無
     3841    if (!is_null($cond_list['is_ktai_address'])){
     3842       $cond_name_list['is_ktai_address']['name'] = '携帯メールアドレス';
     3843       if ( $cond_list['is_ktai_address'] == 1 ) {
     3844           $cond_name_list['is_ktai_address']['value'] = '登録している';
     3845       } else {
     3846           $cond_name_list['is_ktai_address']['value'] = '登録していない';
     3847       }
     3848    }
     3849
     3850    //ポイントランク
     3851    if (!is_null($cond_list['s_rank']) || !is_null($cond_list['e_rank'] )) {
     3852        $cond_name_list['rank']['name'] = 'ポイントランク';
     3853        if ( !is_null($cond_list['s_rank'] )) {
     3854           $rank = db_point_get_rank4rank_id($cond_list['s_rank']);
     3855           $cond_name_list['rank']['value'] = $rank['name'].' ~ ';
     3856        } else {
     3857           $cond_name_list['rank']['value'] = '開始指定なし ~ ';
     3858        }
     3859
     3860        if ( !is_null($cond_list['e_rank'] )) {
     3861           $rank = db_point_get_rank4rank_id($cond_list['e_rank']);
     3862           $cond_name_list['rank']['value'] .= $rank['name'];
     3863        } else {
     3864           $cond_name_list['rank']['value'] .= '終了指定なし';
     3865        }
     3866    }
     3867
     3868    return $cond_name_list;
     3869}
    35913870
    35923871?>
  • OpenPNE/branches/work/tsubasa/feedback/webapp/modules/admin/page/list_c_member.php

    r10781 r10902  
    1111    {
    1212        $order = $requests['order'];
     13        $cond = substr($_REQUEST['cond'], 1);
     14        $temp_list = explode('&', $cond);
     15        foreach ($temp_list as $value) {
     16            $temp_list2 = explode('=', $value);
     17            $_REQUEST[$temp_list2[0]] = $temp_list2[1];
     18        }
    1319
    1420        $v = array();
    1521        $pager = array();
    16 
    1722        //絞り込み条件作成
    18         $cond_list = validate_cond((array)$_REQUEST['cond']);
     23        $cond_list = validate_cond($_REQUEST);
    1924        $v['cond_list'] = $cond_list;
    2025
    2126        $cond = '';
    2227        foreach ($cond_list as $key => $value) {
    23             $cond .= '&cond['.$key.']='.$value;
    24         }
    25 
    26         $profile_cond_list = validate_profile_cond((array)$_REQUEST['profile']);
    27         $v['profile_cond_list'] = $profile_cond_list;
    28 
    29         foreach ($profile_cond_list as $key => $value) {
    30             $cond .= '&profile['.$key.']='.$value;
     28            if (is_array($value)) {
     29              foreach ( $value as $prof_key => $profile_value ) {
     30                 if ( is_array($profile_value) ) {
     31                     foreach ( $profile_value as $check_value ) {
     32                         $cond .= '&'.$key. urlencode('['). $prof_key . urlencode('][]') .'='. urlencode($check_value);
     33                     }
     34                 } else {
     35                     $cond .= '&'.$key. urlencode('['). $prof_key . urlencode(']') .'='. urlencode($profile_value);
     36                 }
     37              }
     38            } else {
     39                $cond .= '&'.$key.'='. urlencode($value);
     40            }
    3141        }
    3242
     
    5262        $v['rank_data'] = db_point_get_rank_all();
    5363
    54 
    5564        //開始年が終了年より大きい
    5665        if ( !empty($cond_list['s_year']) && !empty($cond_list['e_year']) && ($cond_list['s_year'] > $cond_list['e_year']) ) {
    57             $v['msg'] = '※開始年は終了年より小さくして下さい';
     66            $msg = '※開始年は終了年より小さくして下さい';
    5867        }
     68
     69        //ランクが開始>終了
     70        if (!is_null($cond_list['s_rank']) && !is_null($cond_list['e_rank']) && ($cond_list['s_rank'] > $cond_list['e_rank']) ) {
     71            $msg = '※開始ランクは終了ランクより小さくして下さい';
     72        }
     73
     74        if ( $msg ) {
     75            $v['msg'] = $msg;
     76        }
     77
     78        // 表示用検索データ
     79        $v['cond_name_data'] = cond_name_list($cond_list, $select_last_login);
    5980
    6081        $v['SNS_NAME'] = SNS_NAME;
    6182        $v['c_profile_list'] = db_member_c_profile_list4null();
    6283        $v['c_member_list'] = array();
    63         if ($requests['mail_address']) {
    64             $v['c_member_list'] = db_admin_c_member4mail_address($requests['mail_address']);
    65         } elseif ($requests['username'] && OPENPNE_AUTH_MODE != 'email') {
    66             if ($c_member = db_admin_c_member4username($requests['username'])) {
    67                 $v['c_member_list'] = array($c_member);
    68             }
    69         } else {
    70             $v['c_member_list'] = _db_admin_c_member_list($requests['page'], $requests['page_size'], $pager, $cond_list, $profile_cond_list, $order);
    71         }
     84
     85        // メンバー検索対応により、メールアドレス検索、ログインID検索ともに下記関数に統合
     86        $v['c_member_list'] = _db_admin_c_member_list($requests['page'], $requests['page_size'], $pager, $cond_list, $order);
     87 
    7288        foreach ($v['c_member_list'] as $key => $value) {
    7389            $v['c_member_list'][$key]['c_member_invite'] =
     
    7591            $v['c_member_list'][$key]['c_rank'] =
    7692                db_point_get_rank4point($value['profile']['PNE_POINT']['value']);
    77             $v['c_member_list'][$key]['is_receive_any_mail'] =
    78                 db_admin_is_receive_any_mail4c_member_id($value['c_member_id']);
    7993        }
    8094
  • OpenPNE/branches/work/tsubasa/feedback/webapp/modules/admin/templates/inc_header.tpl

    r7442 r10902  
    165165<li><a href="?m=({$item.admin_menu.module})&amp;a=({$item.admin_menu.action})">({$item.admin_menu.caption|default:$item.general.name})</a></li>
    166166({/foreach})
     167<li><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_commu')})">コミュニティリスト</a></li>
    167168({if !$enable_module_list})
    168169<li><a href="#">(なし)</a></li>
     
    170171</ul>
    171172</li>
    172 
    173173</ul>
    174174({****************})
  • OpenPNE/branches/work/tsubasa/feedback/webapp/modules/admin/templates/list_c_member.tpl

    r10794 r10902  
    3232</form>
    3333({/if})
     34<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('find_c_member')})({$cond})">詳細に条件を指定して検索する</a>
     35
     36({if $cond_name_data})
     37<div class="cond_list">
     38<table class="basicType2">
     39({foreach from=$cond_name_data key=key item=item})
     40    ({if $key == 'profile'})
     41        ({foreach from=$item item=profile})
     42            <tr>
     43            <th>({$profile.name})</th>
     44            ({if is_array($profile.value)})
     45                <td>({$profile.value|@t_implode:", "})</td>
     46            ({else})
     47                <td>({$profile.value})</td>
     48            ({/if})
     49            </tr>
     50        ({/foreach})
     51    ({else})
     52        <tr>
     53        <th>({$item.name})</th>
     54        <td>({$item.value})</td>
     55        </tr>
     56    ({/if})
     57({/foreach})
     58</table>
     59</div>
     60({/if})
     61
    3462
    3563<div class="userList">
     
    4169<input type="hidden" name="order" value="({$requests.order})" />
    4270({foreach from=$cond_list key=key item=item})
    43 <input type="hidden" name="cond[({$key})]" value="({$item})" />
    44 ({/foreach})
    45 ({foreach from=$profile_cond_list key=key item=item})
    46 <input type="hidden" name="profile[({$key})]" value="({$item})" />
     71({if is_array($item)})
     72({foreach from=$item key=profile_key item=profile})
     73    ({if is_array($profile)})
     74        ({foreach from=$profile item=check})
     75            <input type="hidden" name="profile[({$profile_key})][]" value="({$check})" />
     76        ({/foreach})
     77    ({else})
     78        <input type="hidden" name="profile[({$profile_key})]" value="({$profile})" />
     79    ({/if})
     80({/foreach})
     81({else})
     82<input type="hidden" name="({$key})" value="({$item})" />
     83({/if})
    4784({/foreach})
    4885<strong>表示件数</strong>:
     
    6097({if $pager})
    6198<div class="listControlTop">
    62 ({if $pager.total_num})
    6399<p class="display">({$pager.total_num}) 人中 ({$pager.start_num}) - ({$pager.end_num})人目を表示しています</p>
    64 ({/if})
    65 <p id="controlIcon"><img src="./modules/admin/img/icn_withdrawal.gif" alt="強制退会のアイコン" class="withdraw" />:強制退会 <img src="modules/admin/img/icn_rejected.gif" alt="ログイン停止のアイコン" />:ログイン停止 <img src="modules/admin/img/icn_permit.gif" alt="ログイン停止解除" />:ログイン停止解除 <img src="modules/admin/img/icn_passwd.gif" alt="パスワード再発行のアイコン" />:パスワード再発行 <img src="modules/admin/img/icn_blacklist.gif" alt="ブラックリストに追加" />:携帯個体識別番号をブラックリストに追加 <img src="modules/admin/img/icn_stop_receive_mail.gif" alt="メール受信の停止のアイコン" />:メール受信の停止</p>
     100<p id="controlIcon"><img src="./modules/admin/img/icn_withdrawal.gif" alt="強制退会のアイコン" class="withdraw" />:強制退会 <img src="modules/admin/img/icn_rejected.gif" alt="ログイン停止のアイコン" />:ログイン停止 <img src="modules/admin/img/icn_permit.gif" alt="ログイン停止解除" />:ログイン停止解除 <img src="modules/admin/img/icn_passwd.gif" alt="パスワード再発行のアイコン" />:パスワード再発行 <img src="modules/admin/img/icn_blacklist.gif" alt="ブラックリストに追加" />:携帯個体識別番号をブラックリストに追加</p>
    66101<p class="listMove">
    67102({if $pager.prev_page})<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page=({$pager.prev_page})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})">前へ</a>({/if})
     
    83118                <tr>
    84119                        <th class="cell01" rowspan="3">&nbsp;</th>
    85                         <th class="cell02" colspan="5" rowspan="3">操作パネル</th>
     120                        <th class="cell02" colspan="4" rowspan="3">操作パネル</th>
    86121                        <th class="cell03" rowspan="3"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=c_member_id-1({$cond})">▲</a>ID<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=c_member_id-2({$cond})">▼</a></th>
    87122                        ({if $smarty.const.OPENPNE_AUTH_MODE != 'email'})
     
    99134                        ({foreach from=$c_profile_list item=prof})
    100135                        ({if $prof.name !== 'PNE_POINT'})
    101                         <th rowspan="2"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$prof.name})-1-p({$cond})">▲</a>({$prof.caption})<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$prof.name})-2-p({$cond})">▼</a></th>
     136                        <th rowspan="2"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$prof.name})-1({$cond})">▲</a>({$prof.caption})<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$prof.name})-2({$cond})">▼</a></th>
    102137                        ({/if})
    103138                        ({/foreach})
     
    119154                        ({if $smarty.const.OPENPNE_USE_POINT_RANK})
    120155                        <th class="cell10" colspan="2">
    121             <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[s_rank]='+this.options[this.selectedIndex].value);">
     156            <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;s_rank='+this.options[this.selectedIndex].value);">
    122157                        <option value="">▼選択</option>
    123158                        ({foreach from=$rank_data item=item})
     
    126161                        </select>
    127162                        ~
    128                         <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[e_rank]='+this.options[this.selectedIndex].value);">
     163                        <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;e_rank='+this.options[this.selectedIndex].value);">
    129164                        <option value="">▼選択</option>
    130165                        ({foreach from=$rank_data item=item})
     
    135170                        ({/if})
    136171                        <th class="cell05">
    137             <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[last_login]='+this.options[this.selectedIndex].value);">
     172            <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;last_login='+this.options[this.selectedIndex].value);">
    138173            <option value="">▼選択</option>
    139174            ({foreach from=$select_last_login item=item key=key})
     
    143178            </th>
    144179                        <th class="cell09A" colspan="3">
    145                         <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[s_year]='+this.options[this.selectedIndex].value);">
     180                        <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;s_year='+this.options[this.selectedIndex].value);">
    146181                        <option value="">▼選択</option>
    147182                        ({foreach from=$years item=item})
     
    150185                        </select>
    151186                        ~
    152                         <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[e_year]='+this.options[this.selectedIndex].value);">
     187                        <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;e_year='+this.options[this.selectedIndex].value);">
    153188                        <option value="">▼選択</option>
    154189                        ({foreach from=$years item=item})
     
    164199                        <option value="">▼選択</option>
    165200                        ({foreach item=item from=$prof.options})
    166                         <option ({if $profile_cond_list[$prof.name]==$item.c_profile_option_id})selected({/if}) value="({$item.c_profile_option_id})"({if $c_member.profile[$profile.name].value == $item.value}) selected="selected"({/if})>({$item.value|default:"--"})</option>
     201                        <option ({if $cond_list.profile[$prof.name]==$item.c_profile_option_id})selected({/if}) value="({$item.c_profile_option_id})"({if $c_member.profile[$profile.name].value == $item.value}) selected="selected"({/if})>({$item.value|default:"--"})</option>
    167202                        ({/foreach})
    168203                        </select>
     
    174209                        ({/foreach})
    175210                        <th class="cell05">
    176             <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[is_pc_address]='+this.options[this.selectedIndex].value);">
     211            <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;is_pc_address='+this.options[this.selectedIndex].value);">
    177212            <option value="">▼選択</option>
    178213                        <option value="1"({if $cond_list.is_pc_address == 1}) selected="selected"({/if})>登録している</option>
     
    181216            </th>
    182217                        <th class="cell05">
    183             <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;cond[is_ktai_address]='+this.options[this.selectedIndex].value);">
     218            <select class="basic" onChange="Link('?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_member')})&amp;page_size=({$pager.page_size})&amp;order=({$requests.order})({$cond})&amp;is_ktai_address='+this.options[this.selectedIndex].value);">
    184219            <option value="">▼選択</option>
    185220                        <option value="1"({if $cond_list.is_ktai_address == 1}) selected="selected"({/if})>登録している</option>
     
    192227                <tr>
    193228                        <th class="cell01" rowspan="3">&nbsp;</th>
    194                         <th class="cell02" colspan="5" rowspan="2">操作パネル</th>
     229                        <th class="cell02" colspan="4" rowspan="2">操作パネル</th>
    195230                        <th class="cell03" rowspan="2">ID</th>
    196231                        ({if $smarty.const.OPENPNE_AUTH_MODE != 'email'})
     
    235270                        <td class="cell02C"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('passwd')})&amp;target_c_member_id=({$item.c_member_id})"><img src="modules/admin/img/icn_passwd.gif" alt="パスワード再発行" /></a></td>
    236271                        <td class="cell02D"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('blacklist_add')})&amp;easy_access_id=({$item.secure.easy_access_id})"><img src="modules/admin/img/icn_blacklist.gif" alt="ブラックリストに追加" /></a></td>
    237                         <td class="cell02E">({if $item.is_receive_any_mail})<a href="?m=({$module_name})&amp;a=do_stop_receive_mail&amp;target_c_member_id=({$item.c_member_id})&amp;sessid=({$PHPSESSID})"><img src="modules/admin/img/icn_stop_receive_mail.gif" alt="メール受信停止" /></a>({/if})</td>
    238272                        <td class="cell03">({$item.c_member_id})</td>
    239273                        ({if $smarty.const.OPENPNE_AUTH_MODE != 'email'})
    240274                        <td class="cell19">({$item.username})</td>
    241275                        ({/if})
    242                         <td class="cell04"><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('c_member_detail')})&amp;target_c_member_id=({$item.c_member_id})">({$item.nickname})</a></td>
     276                        <td class="cell04"><a href="({t_url _absolute=1 m=pc a=page_f_home})&amp;target_c_member_id=({$item.c_member_id})" target="_blank">({$item.nickname})</a></td>
    243277                        ({if $smarty.const.OPENPNE_USE_POINT_RANK})
    244278                        <td class="cell10">({if !$smarty.const.OPENPNE_IS_POINT_ADMIN && $item.c_member_id == 1})-({else})({$item.c_rank.name})({/if})</td>
     
    247281                        <td class="cell05">({if $item.access_date != '0000-00-00 00:00:00'})({$item.access_date|date_format:"%y-%m-%d %H:%M"})({else})未ログイン({/if})</td>
    248282                        <td class="cell06">({if $item.r_date != '0000-00-00 00:00:00'})({$item.r_date|date_format:"%y-%m-%d"})({else})&nbsp;({/if})</td>
    249                         <td class="cell07">({if $item.c_member_id_invite})({$item.c_member_id_invite}):<a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('c_member_detail')})&amp;target_c_member_id=({$item.c_member_id_invite})">({$item.c_member_invite.nickname})</a>({else})&nbsp;({/if})</td>
     283                        <td class="cell07">({if $item.c_member_id_invite})({$item.c_member_id_invite}):<a href="({t_url _absolute=1 m=pc a=page_f_home})&amp;target_c_member_id=({$item.c_member_id_invite})" target="_blank">({$item.c_member_invite.nickname})</a>({else})&nbsp;({/if})</td>
    250284                        <td class="cell08A">({if $item.image_filename_1})<a href="({t_img_url filename=$item.image_filename_1})" target="_blank"><img src="modules/admin/img/icn_image_on.gif" alt="画像有り" /></a>({else})<img src="modules/admin/img/icn_image_off.gif" alt="画像無し" />({/if})</td>
    251285                        <td class="cell08B">({if $item.image_filename_2})<a href="({t_img_url filename=$item.image_filename_2})" target="_blank"><img src="modules/admin/img/icn_image_on.gif" alt="画像有り" /></a>({else})<img src="modules/admin/img/icn_image_off.gif" alt="画像無し" />({/if})</td>
     
    257291                        ({if $prof.name !== 'PNE_POINT'})
    258292                        <td>({strip})
    259                         ({if $prof.form_type == "checkbox" && $item.profile[$prof.name].value !== ''})
     293                        ({if $prof.form_type == "checkbox"})
    260294                                ({$item.profile[$prof.name].value|@t_implode:","|t_truncate:30})
    261295                        ({else})
     
    288322<input type="hidden" name="a" value="page_({$hash_tbl->hash('send_messages_search')})" />
    289323({foreach from=$cond_list key=key item=item})
    290 <input type="hidden" name="cond[({$key})]" value="({$item})" />
    291 ({/foreach})
    292 ({foreach from=$profile_cond_list key=key item=item})
    293 <input type="hidden" name="profile[({$key})]" value="({$item})" />
    294 ({/foreach})
     324({if is_array($item)})
     325({foreach from=$item key=profile_key item=profile})
     326    ({if is_array($profile)})
     327        ({foreach from=$profile item=check})
     328            <input type="hidden" name="profile[({$profile_key})][]" value="({$check})" />
     329        ({/foreach})
     330    ({else})
     331        <input type="hidden" name="profile[({$profile_key})]" value="({$profile})" />
     332    ({/if})
     333({/foreach})
     334({else})
     335<input type="hidden" name="({$key})" value="({$item})" />
     336({/if})
     337({/foreach})
     338<input type="hidden" name="cond" value="({$cond})" />
    295339({else})
    296340<input type="hidden" name="a" value="page_({$hash_tbl->hash('send_messages_all')})" />
     
    332376({/if})
    333377</p>
    334 ({if $pager.total_num})
    335378<p class="display">({$pager.total_num}) 人中 ({$pager.start_num}) - ({$pager.end_num})人目を表示しています</p>
    336379</div>({*/div class="listNaviBtm"*})
    337 ({/if})
     380
    338381({/if})
    339382</div>({*/div class="listControlBtm"*})
Note: See TracChangeset for help on using the changeset viewer.