/**
 * @copyright 2005-2008 OpenPNE Project
 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
 */
function xmlrpc_901_o_search($message)
{
    $param = $message->getParam(0);
    if (!XML_RPC_Value::isValue($param)) {
        return false;
    }
    $params = XML_RPC_decode($param);
    if (!array_key_exists('searchword', $params)) {
        return false;
    }
    if (empty($params['type'])) {
        return false;
    }
    $searchword = $params['searchword'];
    if (empty($searchword)) {
        $searchword = '';
    }
    $type = $params['type'];
    $number = 0;
    switch ($type) {
        case 'DIARY':
            $diary = p_h_diary_list_all_search_c_diary4c_diary($searchword, 0, 1);
            $number += (int) $diary[3];
            break;
        case 'COMMUNITY':
            $commu = db_commu_search_c_commu4c_commu_category($searchword, 0, 0, 1);
            $number += (int) $commu[3];
            break;
        case 'ALL':
        default:
            $diary = p_h_diary_list_all_search_c_diary4c_diary($searchword, 0, 1);
            $number += (int) $diary[3];
            $commu = db_commu_search_c_commu4c_commu_category($searchword, 0, 0, 1);
            $number += (int) $commu[3];
            break;
    }
    $result = array('number' => intval($number), 'sns_name' => SNS_NAME);
    return xmlrpc_get_response($result);
}
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_commu_category_parent_id = $requests['target_c_commu_category_parent_id'];
     $keyword = $requests['keyword'];
     $page = $requests['page'];
     $val_order = $requests['val_order'];
     $category_id = $requests['category_id'];
     // ----------
     //バグ回避のため全角空白を半角空白に統一
     $keyword = str_replace(" ", " ", $keyword);
     do_common_insert_search_log($u, $keyword);
     $this->set('inc_navi', fetch_inc_navi('h'));
     $page_size = 20;
     $this->set('page', $page);
     //検索結果
     list($result, $is_prev, $is_next, $total_num, $start_num, $end_num) = db_commu_search_c_commu4c_commu_category($keyword, $target_c_commu_category_parent_id, $page_size, $page, $val_order, $category_id);
     $this->set('c_commu_search_list', $result);
     $this->set('is_prev', $is_prev);
     $this->set('is_next', $is_next);
     $this->set('total_num', $total_num);
     $this->set('start_num', $start_num);
     $this->set('end_num', $end_num);
     $this->set('keyword', $keyword);
     $search_val_list = array('val_order' => $val_order, 'category_id' => $category_id);
     $this->set('search_val_list', $search_val_list);
     $this->set('c_commu_category_list', db_commu_c_commu_category_list4null());
     $this->set('c_commu_category_parent_list', db_commu_c_commu_category_parent_list4null());
     $this->set('c_commu_category_is_create_commu', db_commu_c_commu_category4is_create_commu());
     // 作成可コミュニティの有無
     $c_commu_category4createflag_num = count(db_commu_c_commu_category4is_create_commu());
     $is_created_commu = $c_commu_category4createflag_num > 0 ? true : false;
     $this->set('is_created_commu', $is_created_commu);
     return 'success';
 }
function p_h_com_find_all_search_c_commu4c_commu_category($search_word, $c_commu_category_parent_id, $page_size, $page, $val_order = 'r_datetime', $c_commu_category_id = 0)
{
    return db_commu_search_c_commu4c_commu_category($search_word, $c_commu_category_parent_id, $page_size, $page, $val_order, $c_commu_category_id);
}