/** * Get array that will be sent back to ajax frontend * @param SugarBean $bean * @return array */ static function getBeanDataArray(SugarBean $bean) { if (isset($bean->parent_name) && isset($_REQUEST['parent_name'])) { $bean->parent_name = $_REQUEST['parent_name']; } $users = array(); if ($bean->object_name == 'Call') { $users = $bean->get_call_users(); } else { if ($bean->object_name == 'Meeting') { $users = $bean->get_meeting_users(); } } $user_ids = array(); foreach ($users as $u) { $user_ids[] = $u->id; } $field_list = CalendarUtils::get_fields(); $field_arr = array(); foreach ($field_list[$bean->module_dir] as $field) { if ($field == 'related_to') { $focus = BeanFactory::getBean($bean->parent_type, $bean->parent_id); $field_arr[$field] = $focus->name; } else { $field_arr[$field] = $bean->{$field}; } } $date_field = "date_start"; if ($bean->object_name == 'Task') { $date_field = "date_due"; } $arr = array('access' => 'yes', 'type' => strtolower($bean->object_name), 'module_name' => $bean->module_dir, 'user_id' => $GLOBALS['current_user']->id, 'detail' => 1, 'edit' => 1, 'name' => $bean->name, 'record' => $bean->id, 'users' => $user_ids); if (!empty($bean->repeat_parent_id)) { $arr['repeat_parent_id'] = $bean->repeat_parent_id; } $arr = array_merge($arr, $field_arr); $arr = array_merge($arr, CalendarUtils::get_time_data($bean)); return $arr; }