function get_activities($user_id, $show_tasks, &$view_start_time, &$view_end_time, $view) {
global $current_user;
$act_list = array();
$seen_ids = array();
// get all upcoming meetings, tasks due, and calls for a user
if(ACLController::checkAccess('Meetings', 'list', $current_user->id == $user_id)) {
$meeting = new Meeting();
if($current_user->id == $user_id) {
$meeting->disable_row_level_security = true;
}
$where = CalendarActivity::get_occurs_within_where_clause($ meeting->table_name, $meeting->rel_users_table, $view_start_time, $view_end_time, 'date_start', $view);
$focus_meetings_list = build_related_list_by_user_id($meeting,$user_id,$w here);
foreach($focus_meetings_list as $meeting) {
if(isset($seen_ids[$meeting->id])) {
continue;
}
$seen_ids[$meeting->id] = 1;
$act = new CalendarActivity($meeting);
if(!empty($act)) {
$act_list[] = $act;
}
}
}
if(ACLController::checkAccess('Calls', 'list',$current_user->id == $user_id)) {
$call = new Call();
if($current_user->id == $user_id) {
$call->disable_row_level_security = true;
}
$where = CalendarActivity::get_occurs_within_where_clause($ call->table_name, $call->rel_users_table, $view_start_time, $view_end_time, 'date_start', $view);
$focus_calls_list = build_related_list_by_user_id($call,$user_id,$wher e);
foreach($focus_calls_list as $call) {
if(isset($seen_ids[$call->id])) {
continue;
}
$seen_ids[$call->id] = 1;
$act = new CalendarActivity($call);
if(!empty($act)) {
$act_list[] = $act;
}
}
}
////////////////////// МОЯ ВСТАВКА /////////////////////////
if(ACLController::checkAccess('Cases', 'list',$current_user->id == $user_id)) {
$case = new aCase();
$where = CalendarActivity::get_occurs_within_where_clause(' cases', '', $view_start_time, $view_end_time, 'date_due', $view);
$where .= " AND cases.assigned_user_id='$user_id' ";
$focus_cases_list = $case->get_full_list("", $where,true);
if(!isset($focus_cases_list)) {
$focus_cases_list = array();
}
foreach($focus_cases_list as $case) {
$act = new CalendarActivity($case);
if(!empty($act)) {
$act_list[] = $act;
}
}
}
///////////////////////КОНЕЦ ВСТАВКИ///////////////////////////////////
if($show_tasks) {
if(ACLController::checkAccess('Tasks', 'list',$current_user->id == $user_id)) {
$task = new Task();
$where = CalendarActivity::get_occurs_within_where_clause(' tasks', '', $view_start_time, $view_end_time, 'date_due', $view);
$where .= " AND tasks.assigned_user_id='$user_id' ";
$focus_tasks_list = $task->get_full_list("", $where,true);
if(!isset($focus_tasks_list)) {
$focus_tasks_list = array();
}
foreach($focus_tasks_list as $task) {
$act = new CalendarActivity($task);
if(!empty($act)) {
$act_list[] = $act;
}
}
}
}
usort($act_list,'sort_func_by_act_date');
return $act_list;
}
}
Bookmarks