getFromResourceApprovalGroup static method

Future<PcoCollection<PcoCalendarResource>> getFromResourceApprovalGroup(
  1. String resourceApprovalGroupId, {
  2. String? id,
  3. PcoCalendarResourceQuery? query,
  4. bool getAll = false,
  5. bool includeAllRelated = false,
  6. bool includeResourceApprovalGroups = false,
  7. bool includeResourceFolder = false,
  8. bool includeResourceQuestions = false,
  9. bool includeRoomSetups = false,
})

Will get a PcoCollection of PcoCalendarResource objects (expecting many) using a path like this: /calendar/v2/resource_approval_groups/$resourceApprovalGroupId/resources

Available Query Filters:

  • resources
  • rooms

Getting a PcoCollection is useful even when retrieving a single object because it contains error data and helper functions.

Additional options may be specified by using the query argument, but some query options are also available as boolean flags in this function call too.

Implementation

static Future<PcoCollection<PcoCalendarResource>>
    getFromResourceApprovalGroup(
  String resourceApprovalGroupId, {
  String? id,
  PcoCalendarResourceQuery? query,
  bool getAll = false,
  bool includeAllRelated = false,
  bool includeResourceApprovalGroups = false,
  bool includeResourceFolder = false,
  bool includeResourceQuestions = false,
  bool includeRoomSetups = false,
}) async {
  query ??= PcoCalendarResourceQuery();
  if (getAll) query.getAll = true;
  if (includeAllRelated) query.include.addAll(PcoCalendarResource.canInclude);
  if (includeResourceApprovalGroups)
    query.include.add('resource_approval_groups');
  if (includeResourceFolder) query.include.add('resource_folder');
  if (includeResourceQuestions) query.include.add('resource_questions');
  if (includeRoomSetups) query.include.add('room_setups');
  var url =
      '/calendar/v2/resource_approval_groups/$resourceApprovalGroupId/resources';
  if (id != null) url += '/$id';
  return PcoCollection.fromApiCall<PcoCalendarResource>(url,
      query: query, apiVersion: kApiVersion);
}