3 commits - plugins/tasklist
Thomas Brüderli
bruederli at kolabsys.com
Mon Oct 21 14:28:49 CEST 2013
plugins/tasklist/tasklist.js | 26 +++++++++++++++++++++++++-
plugins/tasklist/tasklist.php | 4 ++++
2 files changed, 29 insertions(+), 1 deletion(-)
New commits:
commit 9bc8b367393884c7b7166646f733f9c16f59ead6
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Mon Oct 21 14:26:30 2013 +0200
Inherit tags from parent tasks for filter matching (#2373)
diff --git a/plugins/tasklist/tasklist.js b/plugins/tasklist/tasklist.js
index 2089c70..e52174b 100644
--- a/plugins/tasklist/tasklist.js
+++ b/plugins/tasklist/tasklist.js
@@ -1377,8 +1377,9 @@ function rcube_tasklist_ui(settings)
if (match && tagsfilter.length) {
match = rec.tags && rec.tags.length;
+ var alltags = get_inherited_tags(rec).concat(rec.tags || []);
for (var i=0; match && i < tagsfilter.length; i++) {
- if ($.inArray(tagsfilter[i], rec.tags) < 0)
+ if ($.inArray(tagsfilter[i], alltags) < 0)
match = false;
}
}
@@ -1408,6 +1409,23 @@ function rcube_tasklist_ui(settings)
/**
*
*/
+ function get_inherited_tags(rec)
+ {
+ var parent_id, itags = [];
+
+ if ((parent_id = rec.parent_id)) {
+ while (parent_id && listdata[parent_id]) {
+ itags = itags.concat(listdata[parent_id].tags || []);
+ parent_id = listdata[parent_id].parent_id;
+ }
+ }
+
+ return itags;
+ }
+
+ /**
+ *
+ */
function list_edit_dialog(id)
{
var list = me.tasklists[id],
commit 482fa43f12e9e2af232b8d65e57599919c13c0b2
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Mon Oct 21 14:06:05 2013 +0200
Sort tags alphabetically (#2367)
diff --git a/plugins/tasklist/tasklist.php b/plugins/tasklist/tasklist.php
index 6ebddc4..9d5544c 100644
--- a/plugins/tasklist/tasklist.php
+++ b/plugins/tasklist/tasklist.php
@@ -605,6 +605,10 @@ class tasklist extends rcube_plugin
$rec['attachments'][$k]['classname'] = rcube_utils::file2class($attachment['mimetype'], $attachment['name']);
}
+ if (!is_array($rec['tags']))
+ $rec['tags'] = (array)$rec['tags'];
+ sort($rec['tags'], SORT_LOCALE_STRING);
+
if (in_array($rec['id'], $this->collapsed_tasks))
$rec['collapsed'] = true;
commit 8b3a9262e6de57bc9dd7737c2a13bfdef5f98b74
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Thu Oct 17 18:28:56 2013 +0200
Also save tag from input box which hasn't been added to the list with <Enter>
diff --git a/plugins/tasklist/tasklist.js b/plugins/tasklist/tasklist.js
index d76c9d1..2089c70 100644
--- a/plugins/tasklist/tasklist.js
+++ b/plugins/tasklist/tasklist.js
@@ -1102,10 +1102,16 @@ function rcube_tasklist_ui(settings)
}
}
+ // collect tags
$('input[type="hidden"]', rcmail.gui_objects.edittagline).each(function(i,elem){
if (elem.value)
me.selected_task.tags.push(elem.value);
});
+ // including the "pending" one in the text box
+ var newtag = $('#tagedit-input').val();
+ if (newtag != '') {
+ me.selected_task.tags.push(newtag);
+ }
// serialize alarm settings
var alarm = $('#taskedit select.edit-alarm-type').val();
More information about the commits
mailing list