2 /*=====================================================================*\
3 || ###################################################################
5 || # Copyright ©2002-2007 Blue Static
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version 2 of the License.
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
22 $fetchtemplates = array(
28 define('SVN', '$Id$');
30 $focus['showreport
'] = 'focus
';
32 require_once('./global.php
');
34 // ###################################################################
36 if (empty($_REQUEST['do']))
38 $_REQUEST['do'] = 'products
';
41 // ###################################################################
43 if ($_REQUEST['do'] == 'products
')
45 if (!is_array(bugdar::$datastore['product
']))
47 $message->error(T('There are no products set up
.'));
50 foreach (bugdar::$datastore['product
'] AS $product)
52 if ($product['parentid
'])
54 $components["$product[componentmother]"]["$product[productid]"] = $product;
58 $products["$product[productid]"] = $product;
62 foreach (bugdar::$datastore['version
'] AS $version)
64 $versions["$version[productid]"]["$version[versionid]"] = $version;
68 if (is_array($versions['0']))
70 foreach ($versions['0'] AS $version)
72 $left = $version['version
'];
74 eval('$globalversions .= "' . $template->fetch('explain_row') . '";');
78 foreach ($products AS $product)
80 $left = $product['title
'];
81 $right = $product['description
'];
82 $trextra = ' class="altcolor"';
83 eval('$productlist .= "' . $template->fetch('explain_row') . '";');
85 if (is_array($components["$product[productid]"]))
87 foreach ($components["$product[productid]"] AS $component)
89 $left = ' 
; &rsaquo
;  
; ' . $component['title
'];
90 $right = $component['description
'];
92 eval('$productlist .= "' . $template->fetch('explain_row') . '";');
97 eval('$template->flush("' . $template->fetch('explain_product') . '");');
100 // ###################################################################
102 if ($_REQUEST['do'] == 'automations
')
104 $fields_fetch = $bugsys->db->query("
105 SELECT bugfield.*, MAX(permission.mask) AS mask
106 FROM " . TABLE_PREFIX . "bugfield AS bugfield
107 LEFT JOIN " . TABLE_PREFIX . "bugfieldpermission AS permission
108 ON (bugfield.fieldid = permission.fieldid)
109 WHERE (permission.mask = 2 OR permission.mask = 1)
110 AND permission.usergroupid IN ({bugdar::$userinfo['usergroupid']}" . (sizeof(bugdar::$userinfo['groupids
']) != 0 ? ',' . implode(',', bugdar::$userinfo['groupids
']) : '') . ")
111 GROUP BY (bugfield.fieldid)
113 foreach ($fields_fetch as $field)
115 $fields["$field[fieldid]"] = $field;
118 if (is_array(bugdar::$datastore['automation
']))
120 foreach (bugdar::$datastore['automation
'] AS $automation)
122 $automation['fieldchanges
'] = unserialize($automation['fieldchanges
']);
124 $left = $automation['name
'];
125 $right = $automation['description
'];
126 $trextra = ' class="listinghead"';
128 eval('$automations .= "' . $template->fetch('explain_row') . '";');
130 if ($automation['comment
'])
132 $left = T('Add Comment
');
133 $right = $automation['comment
'];
134 $trextra = ' class="altcolor"';
136 eval('$automations .= "' . $template->fetch('explain_row') . '";');
141 if (is_array($automation['fieldchanges
']['builtin
']))
143 foreach ($automation['fieldchanges
']['builtin
'] AS $name => $value)
146 $right = bugdar::$datastore["$left"]["$value"]["$left"];
147 eval('$automations .= "' . $template->fetch('explain_row') . '";');
151 if (is_array($automation['fieldchanges
']['custom
']))
153 foreach ($automation['fieldchanges
']['custom
'] AS $id => $value)
160 $left = $fields["$id"]['name
'] . ' ' . sprintf(T('(Custom
#%1$d, type: %2$s)'), $id, $fields["$id"]['type']);
162 eval('$automations .= "' . $template->fetch('explain_row') . '";');
168 eval('$template->flush("' . $template->fetch('explain_automation') . '");');
171 /*=====================================================================*\
172 || ###################################################################
175 || ###################################################################
176 \*=====================================================================*/