Minor: Ticket: Improve tickets tool display - refs BT#13787

pull/2487/head
Yannick Warnier 7 years ago
parent 490adc6fd4
commit 7db2144b88
  1. 52
      main/inc/lib/TicketManager.php
  2. 23
      main/ticket/priorities.php
  3. 23
      main/ticket/projects.php
  4. 9
      main/ticket/settings.php
  5. 23
      main/ticket/status.php
  6. 2
      main/ticket/tickets.php

@ -5,6 +5,7 @@ use Chamilo\TicketBundle\Entity\Project;
use Chamilo\TicketBundle\Entity\Status;
use Chamilo\TicketBundle\Entity\Priority;
use Chamilo\TicketBundle\Entity\Ticket;
use \Database;
/**
* Class TicketManager
@ -2167,29 +2168,48 @@ class TicketManager
}
/**
* @return string
* Returns a list of menu elements for the tickets system's configuration
* @param string $exclude The element to exclude from the list
* @return array
*/
public static function getSettingsMenu()
public static function getSettingsMenuItems($exclude = null)
{
$items = [
[
'url' => 'projects.php',
'content' => get_lang('Projects')
],
[
'url' => 'status.php',
'content' => get_lang('Status')
],
[
'url' => 'priorities.php',
'content' => get_lang('Priority')
]
$items = [];
$project = [
'icon' => 'career.png',
'url' => 'projects.php',
'content' => get_lang('Projects')
];
$status = [
'icon' => 'check-circle.png',
'url' => 'status.php',
'content' => get_lang('Status')
];
$priority = [
'icon' => 'order-course.png',
'url' => 'priorities.php',
'content' => get_lang('Priority')
];
switch ($exclude) {
case 'project':
$items = [$status, $priority];
break;
case 'status':
$items = [$project, $priority];
break;
case 'priority':
$items = [$project, $status];
break;
default:
$items = [$project, $status, $priority];
break;
}
echo Display::actions($items);
return $items;
}
/**
* Returns a list of strings representing the default statuses
* @return array
*/
public static function getDefaultStatusList()

@ -150,13 +150,24 @@ $table->set_column_filter('3', 'modify_filter');
Display::display_header($toolName);
$items = [
[
'url' => 'priorities.php?action=add',
'content' => Display::return_icon('new_folder.png', null, null, ICON_SIZE_MEDIUM)
]
'icon' => 'new_folder.png',
'url' => 'priorities.php?action=add',
'content' => get_lang('AddPriority')
];
echo Display::actions($items);
echo '<div class="actions">';
echo Display::url(
Display::return_icon('back.png', get_lang('Tickets'), [], ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH).'ticket/tickets.php'
);
$sections = TicketManager::getSettingsMenuItems('priority');
array_unshift($sections, $items);
foreach ($sections as $item) {
echo Display::url(
Display::return_icon($item['icon'], $item['content'], [], ICON_SIZE_MEDIUM),
$item['url']
);
}
echo '</div>';
echo $formToString;
echo $table->return_table();

@ -161,13 +161,26 @@ $table->set_column_filter('3', 'modify_filter');
Display::display_header('');
$items = [
[
'url' => 'projects.php?action=add',
'content' => Display::return_icon('new_folder.png', null, null, ICON_SIZE_MEDIUM)
]
'icon' => 'new_folder.png',
'url' => 'projects.php?action=add',
'content' => get_lang('AddProject')
];
echo Display::actions($items);
echo '<div class="actions">';
echo Display::url(
Display::return_icon('back.png', get_lang('Tickets'), [], ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH).'ticket/tickets.php'
);
$sections = TicketManager::getSettingsMenuItems('project');
array_unshift($sections, $items);
foreach ($sections as $item) {
echo Display::url(
Display::return_icon($item['icon'], $item['content'], [], ICON_SIZE_MEDIUM),
$item['url']
);
}
echo '</div>';
echo $formToString;
echo $table->return_table();

@ -21,8 +21,15 @@ echo Display::url(
Display::return_icon('back.png', get_lang('Tickets'), [], ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH).'ticket/tickets.php'
);
$sections = TicketManager::getSettingsMenuItems();
foreach ($sections as $item) {
echo Display::url(
Display::return_icon($item['icon'], $item['content'], [], ICON_SIZE_MEDIUM),
$item['url']
);
}
echo '</div>';
echo TicketManager::getSettingsMenu();
Display::display_footer();

@ -151,13 +151,24 @@ $table->set_column_filter('3', 'modify_filter');
Display::display_header($toolName);
$items = [
[
'url' => 'status.php?action=add',
'content' => Display::return_icon('new_folder.png', null, null, ICON_SIZE_MEDIUM)
]
'icon' => 'new_folder.png',
'url' => 'status.php?action=add',
'content' => get_lang('AddStatus')
];
echo Display::actions($items);
echo '<div class="actions">';
echo Display::url(
Display::return_icon('back.png', get_lang('Tickets'), [], ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH).'ticket/tickets.php'
);
$sections = TicketManager::getSettingsMenuItems('status');
array_unshift($sections, $items);
foreach ($sections as $item) {
echo Display::url(
Display::return_icon($item['icon'], $item['content'], [], ICON_SIZE_MEDIUM),
$item['url']
);
}
echo '</div>';
echo $formToString;
echo $table->return_table();

@ -256,7 +256,7 @@ if (!empty($projectId)) {
$actionRight .= Display::url(
Display::return_icon(
'settings.png',
get_lang('Categories'),
get_lang('Settings'),
null,
ICON_SIZE_MEDIUM
),

Loading…
Cancel
Save