/** * @see Project_WrapperInterface::count_data_search() * @param string $string * @param array $project_id_array * @param array $item_type_array * @return integer */ public static function count_data_search($string, $project_id_array, $item_type_array) { if (is_array($item_type_array) and count($item_type_array) >= 1) { $string = strtolower(trim($string)); $string = str_replace("*", "%", $string); $join_sql = ""; $where_sql = ""; foreach ($item_type_array as $key => $value) { $handling_class = Item::get_handling_class_by_type($value); if (class_exists($handling_class)) { $join_sql .= $handling_class::get_sql_join($value); if (($return_where_sql = $handling_class::get_sql_where($value)) != null) { $return_where_sql = str_replace("{STRING}", $string, $return_where_sql); if ($where_sql == "") { $where_sql .= $return_where_sql; } else { $where_sql .= " OR " . $return_where_sql; } } } } return Project_Wrapper_Access::count_data_search($string, $project_id_array, $select_sql_array, $join_sql, $where_sql); } else { return null; } }