function getUsedTechTaskBetween($date1 = '', $date2 = '')
{
global $DB;
$tasktable = getTableForItemType($this->getType() . 'Task');
$showlink = User::canView();
$query = "SELECT DISTINCT `glpi_users`.`id` AS users_id,\n `glpi_users`.`name` AS name,\n `glpi_users`.`realname` AS realname,\n `glpi_users`.`firstname` AS firstname\n FROM `" . $this->getTable() . "`\n LEFT JOIN `{$tasktable}`\n ON (`" . $this->getTable() . "`.`id` = `{$tasktable}`.`" . $this->getForeignKeyField() . "`)\n LEFT JOIN `glpi_users` ON (`glpi_users`.`id` = `{$tasktable}`.`users_id`)\n LEFT JOIN `glpi_profiles_users`\n ON (`glpi_users`.`id` = `glpi_profiles_users`.`users_id`)\n LEFT JOIN `glpi_profiles`\n ON (`glpi_profiles`.`id` = `glpi_profiles_users`.`profiles_id`)\n LEFT JOIN `glpi_profilerights`\n ON (`glpi_profiles`.`id` = `glpi_profilerights`.`profiles_id`)\n WHERE NOT `" . $this->getTable() . "`.`is_deleted` " . getEntitiesRestrictRequest("AND", $this->getTable());
if (!empty($date1) || !empty($date2)) {
$query .= " AND (" . getDateRequest("`" . $this->getTable() . "`.`date`", $date1, $date2) . "\n OR " . getDateRequest("`" . $this->getTable() . "`.`closedate`", $date1, $date2) . ") ";
}
$query .= " AND `glpi_profilerights`.`name` = 'ticket'\n AND (`glpi_profilerights`.`rights` & " . Ticket::OWN . ")\n AND `{$tasktable}`.`users_id` <> '0'\n AND `{$tasktable}`.`users_id` IS NOT NULL\n ORDER BY realname, firstname, name";
$result = $DB->query($query);
$tab = array();
if ($DB->numrows($result) >= 1) {
while ($line = $DB->fetch_assoc($result)) {
$tmp['id'] = $line["users_id"];
$tmp['link'] = formatUserName($line["users_id"], $line["name"], $line["realname"], $line["firstname"], $showlink);
$tab[] = $tmp;
}
}
return $tab;
}