Reihenfolge derAufgabenliste in FlySpray anpassen

Für ein Porjekt wird Flyspray als Statusseite der IT-Systeme genutzt. Standardmäßig werden Einträge in der Aufgabenliste nach Schwergrad und Priorität sortiert. Der Wunsch war aber, dass die Liste nach der Eröffungsdatem der Aufgabe sortiert wird. Das Verhalten kann in der Datei includes/class_backend.php angepasst werden.

Ab Zeile 1097 wird es interessant:

Hier die angepassten Zeilen:

// make sure that only columns can be sorted that are visible (and task severity, since it is always loaded)
$order_keys = array_intersect_key($order_keys, array_merge(array_flip($visible), array('dateopened' => 'date_opened')));

$order_column[0] = $order_keys[Filters::enum(array_get($args, 'order', 'dateopened'), array_keys($order_keys))];
$order_column[1] = $order_keys[Filters::enum(array_get($args, 'order2', 'priority'), array_keys($order_keys))];
$sortorder  = sprintf('%s %s, %s %s, t.task_id ASC',

Es kann selbstverständlich auch nach anderen Spalten sortiert werden. Ein paar Zeilen weiter oben in der genannten Datei gibt es eine Übersicht:

$order_keys = array (
    'id'           => 't.task_id',
    'project'      => 'project_title',
    'tasktype'     => 'tasktype_name',
    'dateopened'   => 'date_opened',
    'summary'      => 'item_summary',
    'severity'     => 'task_severity',
    'category'     => 'lc.category_name',
    'status'       => 'is_closed, item_status',
    'dueversion'   => 'lvc.list_position',
    'duedate'      => 'due_date',
    'progress'     => 'percent_complete',
    'lastedit'     => 'max_date',
    'priority'     => 'task_priority',
    'openedby'     => 'uo.real_name',
    'reportedin'   => 't.product_version',
    'assignedto'   => 'u.real_name',
    'dateclosed'   => 't.date_closed',
    'os'           => 'los.os_name',
    'votes'        => 'num_votes',
    'attachments'  => 'num_attachments',
    'comments'     => 'num_comments',
    'private'      => 'mark_private',
);

Gestestet mit der aktuellen stabilen Version.

Abonnieren
Benachrichtige mich bei
2 Comments
neueste
älteste
Inline Feedbacks
View all comments
peterdd
11.01.2019 10:50

Das kann inzwischen in Flyspray global und pro Projekt eingestellt werden ohne das Änderungen am Code notwendig sind.

index.php?do=admin&area=prefs#lookandfeel

globale Einstellungen oder pro Projekt:

index.php?do=pm&area=prefs&project=1#lookandfeel

Nach id sortieren ist evtl. etwas schneller als dateopened, da die task_id ja primary key ist und ebenfalls monoton ansteigt wie auch die Zeit. (autoincrement)

ps1: Text und weitere Eingaben sind für Korrektur verloren wenn das Formular abschicken angemeckert wird. Zum Glück in weiser Vorahnung vorher kopiert 😉
ps2: Das erste case sensitive Captcha das ich erfahren musste. :-/