diff --git a/src/IDF/Project.php b/src/IDF/Project.php index 14f66c7..66a070e 100644 --- a/src/IDF/Project.php +++ b/src/IDF/Project.php @@ -152,15 +152,14 @@ class IDF_Project extends Pluf_Model break; } $sqlIssueTable = Pluf::factory('IDF_Issue')->getSqlTable(); - $query = <<<"QUERY" -SELECT uid AS id,COUNT(uid) AS nb + $query = "SELECT uid AS id,COUNT(uid) AS nb FROM ( SELECT COALESCE(owner, -1) AS uid FROM $sqlIssueTable WHERE status IN ($tags) ) AS ff -GROUP BY uid -QUERY; +GROUP BY uid"; + $db = Pluf::db(); $dbData = $db->select($query); $ownerStatistics = array(); diff --git a/src/IDF/Views/Issue.php b/src/IDF/Views/Issue.php index fc9d7b4..9c749af 100644 --- a/src/IDF/Views/Issue.php +++ b/src/IDF/Views/Issue.php @@ -747,7 +747,13 @@ class IDF_Views_Issue else { // ID-based search if (is_numeric($query)) { - $sql = new Pluf_SQL('project=%s AND id LIKE %s', array($prj->id, $query.'%')); + $sql = 'project=%s AND CAST(id AS VARCHAR) LIKE %s'; + // MySQL can't cast to VARCHAR and a CAST to CHAR converts + // the whole number, not just the first digit + if (strtolower(Pluf::f('db_engine')) == 'mysql') { + $sql = 'project=%s AND CAST(id AS CHAR) LIKE %s'; + } + $sql = new Pluf_SQL($sql, array($prj->id, $query.'%')); $tmp = Pluf::factory('IDF_Issue')->getList(array( 'filter' => $sql->gen(), 'order' => 'id ASC' diff --git a/src/IDF/templates/idf/issues/feedfragment.xml b/src/IDF/templates/idf/issues/feedfragment.xml index 15fda48..b44b946 100644 --- a/src/IDF/templates/idf/issues/feedfragment.xml +++ b/src/IDF/templates/idf/issues/feedfragment.xml @@ -10,12 +10,22 @@ {if $attachments.count() > 0}
{/if} {if $c.changes} {foreach $c.changes as $w => $v} -{if $w == 'su'}{trans 'Summary:'}{/if}{if $w == 'st'}{trans 'Status:'}{/if}{if $w == 'ow'}{trans 'Owner:'}{/if}{if $w == 'lb'}{trans 'Labels:'}{/if} {if $w == 'lb'}{assign $l = implode(', ', $v)}{$l}{else}{$v}{/if}
+{if $w == 'su'}{trans 'Summary:'}{/if}{if $w == 'st'}{trans 'Status:'}{/if}{if $w == 'ow'}{trans 'Owner:'}{/if}{if $w == 'lb'}{trans 'Labels:'}{/if}{if $w == 'rel'}{trans 'Relations:'}{/if} +{if $w == 'lb' or $w == 'rel'} + {foreach $v as $t => $ls} + {foreach $ls as $l} + {if $t == 'rem'}{/if}{$l}{if $t == 'rem'}{/if} + {/foreach} + {/foreach} +{else} + {$v} +{/if}
{/foreach} {/if} + diff --git a/src/IDF/templates/idf/issues/issue-updated-email.txt b/src/IDF/templates/idf/issues/issue-updated-email.txt index 62aaa7a..3597dec 100644 --- a/src/IDF/templates/idf/issues/issue-updated-email.txt +++ b/src/IDF/templates/idf/issues/issue-updated-email.txt @@ -16,7 +16,7 @@ {if strlen($c.content) > 0}{$c.content|safe}{/if}{if $c.changedIssue()} {foreach $c.changes as $w => $v} - {if $w == 'su'}{trans 'Summary:'}{/if}{if $w == 'st'}{trans 'Status:'}{/if}{if $w == 'ow'}{trans 'Owner:'}{/if}{if $w == 'lb'}{trans 'Labels:'}{/if} {if $w == 'lb'}{assign $l = implode(', ', $v)}{$l}{else}{$v}{/if}{/foreach}{/if}{assign $attachments = $c.get_attachment_list()}{if $attachments.count() > 0} + {if $w == 'su'}{trans 'Summary:'}{/if}{if $w == 'st'}{trans 'Status:'}{/if}{if $w == 'ow'}{trans 'Owner:'}{/if}{if $w == 'lb'}{trans 'Labels:'}{/if}{if $w == 'rel'}{trans 'Relations:'}{/if} {if $w == 'lb' or $w == 'rel'}{foreach $v as $t => $ls}{foreach $ls as $l}{if $t == 'rem'}-{/if}{$l} {/foreach}{/foreach}{else}{$v}{/if}{/foreach}{/if}{assign $attachments = $c.get_attachment_list()}{if $attachments.count() > 0} {trans 'Attachments:'}{foreach $attachments as $a} - {$a.filename|safe} - {$a.filesize|ssize}