-int _media_db_get_pvr_group_item(const char *group_name, filter_h filter, media_group_e group, media_pvr_cb callback, void *user_data)
-{
- int ret = MEDIA_CONTENT_ERROR_NONE;
- char select_query[DEFAULT_QUERY_SIZE] = {0, };
- char *condition_query = NULL;
- char *option_query = NULL;
- sqlite3_stmt *stmt = NULL;
- filter_s *_filter = (filter_s *)filter;
-
- if (group_name) {
- if (_filter && STRING_VALID(_filter->storage_id))
- sqlite3_snprintf(sizeof(select_query), select_query, SELECT_PVR_FROM_GROUP_BY_STORAGE_ID, _filter->storage_id, __media_db_get_group_name(group), group_name);
- else
- sqlite3_snprintf(sizeof(select_query), select_query, SELECT_PVR_FROM_GROUP, __media_db_get_group_name(group), group_name);
- } else {
- if (_filter && STRING_VALID(_filter->storage_id))
- snprintf(select_query, sizeof(select_query), SELECT_PVR_FROM_GROUP_NULL_BY_STORAGE_ID, _filter->storage_id, __media_db_get_group_name(group));
- else
- snprintf(select_query, sizeof(select_query), SELECT_PVR_FROM_GROUP_NULL, __media_db_get_group_name(group));
- }
-
- ret = __media_db_make_query(filter, &condition_query, &option_query);
- content_retv_if(ret != MEDIA_CONTENT_ERROR_NONE, ret);
-
- ret = _content_query_prepare(select_query, condition_query, option_query, &stmt);
- g_free(condition_query);
- g_free(option_query);
- content_retv_if(ret != MEDIA_CONTENT_ERROR_NONE, ret);
-
- while (sqlite3_step(stmt) == SQLITE_ROW) {
- media_pvr_s *item = g_new0(media_pvr_s, 1);
-
- _media_pvr_item_get_detail(stmt, (media_pvr_h)item);
-
- if (callback((media_pvr_h)item, user_data) == false) {
- media_info_destroy((media_pvr_h)item);
- break;
- }
-
- media_pvr_destroy((media_pvr_h)item);
- }
-
- SQLITE3_FINALIZE(stmt);
-
- return ret;
-}
-