| ILIAS
    Release_4_1_x_branch Revision 61804
    | 
Tracking query class. More...
 Collaboration diagram for ilTrQuery:
 Collaboration diagram for ilTrQuery:| Public Member Functions | |
| getObjectsStatusForUser ($a_user_id, array $obj_refs) | |
| getObjectivesStatusForUser ($a_user_id, array $obj_ids) | |
| getSCOsStatusForUser ($a_user_id, $a_parent_obj_id, array $a_sco_ids) | |
| getObjectsStatus (array $obj_refs) | |
| Static Public Member Functions | |
| static | getUserDataForObject ($a_ref_id, $a_order_field="", $a_order_dir="", $a_offset=0, $a_limit=9999, array $a_filters=NULL, array $a_additional_fields=NULL, $check_agreement=false, $privacy_fields=NULL) | 
| Get all user-based tracking data for object. | |
| static | getObjectsDataForUser ($a_user_id, $a_parent_obj_id, $a_parent_ref_id, $a_order_field="", $a_order_dir="", $a_offset=0, $a_limit=9999, array $a_filters=NULL, array $a_additional_fields=NULL, $use_collection=true) | 
| Get all object-based tracking data for user and parent object. | |
| static | getObjectsSummaryForObject ($a_parent_obj_id, $a_parent_ref_id, $a_order_field="", $a_order_dir="", $a_offset=0, $a_limit=9999, array $a_filters=NULL, array $a_additional_fields=NULL, $use_collection=true) | 
| Get all aggregated tracking data for parent object. | |
| static | getParticipantsForObject ($a_ref_id) | 
| Get participant ids for given object. | |
| static | getObjectIds ($a_parent_obj_id, $a_parent_ref_id=false, $use_collection=true, $a_refresh_status=true, $a_user_ids=null) | 
| Get (sub)objects for given object, also handles learning objectives (course only) | |
| static | executeQueries (array $queries, $a_order_field="", $a_order_dir="", $a_offset=0, $a_limit=9999) | 
| Execute given queries, including count query. | |
| static | getUserObjectMatrix ($a_parent_ref_id, $a_obj_ids, $a_user_filter=NULL) | 
| Get status matrix for users on objects. | |
| static | getUserObjectiveMatrix ($a_parent_obj_id, $a_users) | 
| Static Protected Member Functions | |
| static | getSessionData ($a_user_id, array $obj_ids) | 
| Get session data for given objects and user. | |
| static | getSummaryDataForObject ($a_ref_id, array $fields, array $a_filters=NULL) | 
| Get all aggregated tracking data for object. | |
| static | getSummaryPercentages ($field, $base_query, $alias=NULL) | 
| Get aggregated data for field. | |
| static | buildFilters (array $where, array $a_filters=NULL, $a_aggregate=false) | 
| Build sql from filter definition. | |
| static | buildColumns (array &$a_fields, array $a_additional_fields=NULL, $a_aggregate=false) | 
| Build sql from field definition. | |
| static | getSubTree ($a_parent_ref_id, array &$a_object_ids, array &$a_ref_ids) | 
| Get complete branch of tree (recursively) | |
| static | refreshObjectsStatus (array $a_obj_ids, $a_users=null) | 
| check whether status (for all relevant users) exists | |
Tracking query class.
Put any complex queries into this class. Keep tracking class small.
Definition at line 12 of file class.ilTrQuery.php.
| 
 | staticprotected | 
Build sql from field definition.
| array | &$a_fields | |
| array | $a_additional_fields | |
| bool | $a_aggregate | 
Definition at line 1022 of file class.ilTrQuery.php.
Referenced by getObjectsDataForUser(), getObjectsSummaryForObject(), and getUserDataForObject().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
Build sql from filter definition.
| array | $where | |
| array | $a_filters | |
| bool | $a_aggregate | 
Definition at line 838 of file class.ilTrQuery.php.
References $ilDB, IL_CAL_DATETIME, and IL_CAL_UNIX.
Referenced by getObjectsDataForUser(), getSummaryDataForObject(), getUserDataForObject(), getUserObjectiveMatrix(), and getUserObjectMatrix().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Execute given queries, including count query.
| array | $queries | fields, query, count | 
| string | $a_order_field | |
| string | $a_order_dir | |
| int | $a_offset | |
| int | $a_limit | 
Definition at line 1222 of file class.ilTrQuery.php.
References $ilDB, $query, and $result.
Referenced by getObjectsDataForUser(), getSummaryDataForObject(), getUserDataForObject(), getUserObjectiveMatrix(), and getUserObjectMatrix().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get (sub)objects for given object, also handles learning objectives (course only)
| int | $a_parent_obj_id | |
| int | $a_parent_ref_id | |
| int | $use_collection | |
| bool | $a_refresh_status | |
| array | $a_user_ids | 
Definition at line 1117 of file class.ilTrQuery.php.
References ilLPCollectionCache\_getItems(), ilLPObjSettings\_lookupMode(), ilObject\_lookupObjId(), ilObject\_lookupType(), getSubTree(), LP_MODE_OBJECTIVES, LP_MODE_SCORM, and refreshObjectsStatus().
Referenced by ilTrMatrixTableGUI\getItems(), getObjectsDataForUser(), and getObjectsSummaryForObject().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| ilTrQuery::getObjectivesStatusForUser | ( | $a_user_id, | |
| array | $obj_ids | ||
| ) | 
Definition at line 90 of file class.ilTrQuery.php.
References $ilDB, $query, $result, LP_STATUS_COMPLETED_NUM, and refreshObjectsStatus().
Referenced by ilLPProgressTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get all object-based tracking data for user and parent object.
| int | $a_user_id | |
| int | $a_parent_obj_id | |
| int | $a_parent_ref_id | |
| string | $a_order_field | |
| string | $a_order_dir | |
| int | $a_offset | |
| int | $a_limit | |
| array | $a_filter | |
| array | $a_additional_fields | |
| bool | $use_collection | 
Definition at line 374 of file class.ilTrQuery.php.
References $ilDB, $query, $result, $row, ilObjSAHSLearningModule\_lookupSubType(), buildColumns(), buildFilters(), executeQueries(), getObjectIds(), getSessionData(), IL_CAL_DATETIME, IL_CAL_UNIX, LP_STATUS_COMPLETED_NUM, LP_STATUS_FAILED_NUM, LP_STATUS_IN_PROGRESS_NUM, and LP_STATUS_NOT_ATTEMPTED_NUM.
Referenced by ilTrUserObjectsPropsTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| ilTrQuery::getObjectsStatus | ( | array | $obj_refs | ) | 
Definition at line 152 of file class.ilTrQuery.php.
References $ilDB, $query, $result, ilLPObjSettings\__getDefaultMode(), ilLPStatusWrapper\_getCountCompleted(), ilLPStatusWrapper\_getCountFailed(), ilLPStatusWrapper\_getCountInProgress(), ilLPStatusWrapper\_getCountNotAttempted(), IL_CRS_VIEW_OBJECTIVE, LP_MODE_DEACTIVATED, LP_MODE_OBJECTIVES, and refreshObjectsStatus().
Referenced by ilLPObjectsTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| ilTrQuery::getObjectsStatusForUser | ( | $a_user_id, | |
| array | $obj_refs | ||
| ) | 
Definition at line 14 of file class.ilTrQuery.php.
References $ilDB, $query, $result, ilLPObjSettings\__getDefaultMode(), getSessionData(), IL_CRS_VIEW_OBJECTIVE, LP_MODE_OBJECTIVES, and refreshObjectsStatus().
Referenced by ilLPProgressTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get all aggregated tracking data for parent object.
:TODO: sorting, offset, limit, objectives, collection/all
| int | $a_parent_obj_id | |
| int | $a_parent_ref_id | |
| string | $a_order_field | |
| string | $a_order_dir | |
| int | $a_offset | |
| int | $a_limit | |
| array | $a_filter | |
| array | $a_additional_fields | |
| bool | $use_collection | 
Definition at line 575 of file class.ilTrQuery.php.
References $ilDB, $ref_id, $result, buildColumns(), getObjectIds(), and getSummaryDataForObject().
Referenced by ilTrSummaryTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get participant ids for given object.
| int | $a_ref_id | 
Definition at line 741 of file class.ilTrQuery.php.
References $path, ilGroupParticipants\_getInstanceByObjId(), ilCourseParticipants\_getInstanceByObjId(), ilObjSCORMTracking\_getTrackedUsers(), ilObject\_lookupObjectId(), ilObjSAHSLearningModule\_lookupSubType(), ilObject\_lookupType(), and ilLPStatusTestFinished\getParticipants().
Referenced by getSummaryDataForObject(), getUserDataForObject(), and getUserObjectMatrix().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| ilTrQuery::getSCOsStatusForUser | ( | $a_user_id, | |
| $a_parent_obj_id, | |||
| array | $a_sco_ids | ||
| ) | 
Definition at line 115 of file class.ilTrQuery.php.
References ilLPStatusWrapper\_getStatusInfo(), LP_STATUS_COMPLETED, LP_STATUS_FAILED, LP_STATUS_IN_PROGRESS, LP_STATUS_NOT_ATTEMPTED, and refreshObjectsStatus().
Referenced by ilLPProgressTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
Get session data for given objects and user.
| int | $a_user_id | |
| array | $obj_ids | 
Definition at line 525 of file class.ilTrQuery.php.
References $ilDB, $query, ilDatePresentation\formatPeriod(), and IL_CAL_DATETIME.
Referenced by getObjectsDataForUser(), and getObjectsStatusForUser().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
Get complete branch of tree (recursively)
| int | $a_parent_ref_id | |
| array | $a_object_ids | |
| array | $a_ref_ids | 
Definition at line 1189 of file class.ilTrQuery.php.
References ilLPObjSettings\_lookupMode(), and LP_MODE_UNDEFINED.
Referenced by getObjectIds().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
Get all aggregated tracking data for object.
| int | $a_ref_id | |
| array | $fields | |
| array | $a_filters | 
Definition at line 620 of file class.ilTrQuery.php.
References $ilDB, $query, $result, $valid, ilObject\_lookupObjectId(), buildFilters(), executeQueries(), getParticipantsForObject(), getSummaryPercentages(), and refreshObjectsStatus().
Referenced by getObjectsSummaryForObject().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
Get aggregated data for field.
| string | $field | |
| string | $base_query | |
| string | $alias | 
Definition at line 703 of file class.ilTrQuery.php.
References $ilDB, $query, and $result.
Referenced by getSummaryDataForObject().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get all user-based tracking data for object.
| int | $a_ref_id | |
| string | $a_order_field | |
| string | $a_order_dir | |
| int | $a_offset | |
| int | $a_limit | |
| array | $a_filters | |
| array | $a_additional_fields | |
| int | $check_agreement | (obj id of parent course) | 
| arry | $privacy_fields | 
Definition at line 229 of file class.ilTrQuery.php.
References $ilDB, $query, $result, $row, ilObject\_lookupObjectId(), buildColumns(), buildFilters(), executeQueries(), getParticipantsForObject(), ilMemberAgreement\lookupAcceptedAgreements(), refreshObjectsStatus(), and ilUtil\stableSortArray().
Referenced by ilTrObjectUsersPropsTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 1371 of file class.ilTrQuery.php.
References $ilDB, $query, buildFilters(), and executeQueries().
Referenced by ilTrMatrixTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Get status matrix for users on objects.
| int | $a_parent_ref_id | |
| array | $a_obj_ids | |
| string | $a_user_filter | 
Definition at line 1298 of file class.ilTrQuery.php.
References $ilDB, $query, $result, $row, ilObject\_lookupObjectId(), buildFilters(), executeQueries(), getParticipantsForObject(), and refreshObjectsStatus().
Referenced by ilTrMatrixTableGUI\getItems().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | staticprotected | 
check whether status (for all relevant users) exists
| array | $a_obj_ids | |
| array | $a_users | 
Definition at line 1400 of file class.ilTrQuery.php.
References ilLPStatus\checkStatusForObject().
Referenced by getObjectIds(), getObjectivesStatusForUser(), getObjectsStatus(), getObjectsStatusForUser(), getSCOsStatusForUser(), getSummaryDataForObject(), getUserDataForObject(), and getUserObjectMatrix().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function: