display file comment in the SELECT (Mantis#1419)
authorDenis Ovsienko <denis@ovsienko.info>
Mon, 17 Dec 2018 17:51:30 +0000 (17:51 +0000)
committerDenis Ovsienko <denis@ovsienko.info>
Mon, 17 Dec 2018 17:51:30 +0000 (17:51 +0000)
* getAllUnlinkedFiles(): include the beginning of the comment into the
  result and return the result as it is
* renderFilesForEntity(): add a round to build the printSelect() input

ChangeLog
wwwroot/inc/database.php
wwwroot/inc/interface.php

index 787704b..1e5f4aa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,6 +8,7 @@
        update: allow to delete local user accounts (Mantis#1089)
        update: show names in allocated units when assigning rackspace (Mantis#1711)
        update: drop support for $localreports
+       update: display file comment in the SELECT (Mantis#1419)
        new feature: "shared router" allocation (GH#210 by Vladimir Ivanov)
        new feature: optional tag descriptions
        new feature: support for HP N.11.78 and IOS 15 (GH #225 by Vasilii Shashkov)
index 8f12828..23c5731 100644 (file)
@@ -4719,12 +4719,12 @@ function getAllUnlinkedFiles ($entity_type, $entity_id)
 {
        $result = usePreparedSelectBlade
        (
-               'SELECT id, name FROM File ' .
+               'SELECT id, name, SUBSTR(comment FROM 1 FOR 128) AS comment FROM File ' .
                'WHERE id NOT IN (SELECT file_id FROM FileLink WHERE entity_type = ? AND entity_id = ?) ' .
                'ORDER BY name, id',
                array ($entity_type, $entity_id)
        );
-       return reduceSubarraysToColumn (reindexById ($result->fetchAll (PDO::FETCH_ASSOC)), 'name');
+       return $result->fetchAll (PDO::FETCH_ASSOC);
 }
 
 // FIXME: return a standard cell list, so upper layer can iterate over
index e02e64f..e9cfef6 100644 (file)
@@ -4953,11 +4953,18 @@ function renderFilesForEntity ($entity_id)
        $files = getAllUnlinkedFiles ($entity_type, $entity_id);
        if (count ($files))
        {
+               $options = array();
+               foreach ($files as $file)
+               {
+                       $options[$file['id']] = $file['name'];
+                       if ($file['comment'] != '')
+                               $options[$file['id']] .= ': ' . $file['comment'];
+               }
                startPortlet ('Link existing (' . count ($files) . ')');
                printOpFormIntro ('linkFile');
                echo "<table border=0 cellspacing=0 cellpadding='5' align='center'>\n";
                echo '<tr><td class=tdleft>';
-               printSelect ($files, array ('name' => 'file_id'));
+               printSelect ($options, array ('name' => 'file_id'));
                echo '</td><td class=tdleft>';
                printImageHREF ('ATTACH', 'Link file', TRUE);
                echo '</td></tr></table>';