defined('DIRECT_ACCESS_CHECK') or die('DIRECT ACCESS NOT ALLOWED'); /** * Copyright (c) 2013 EIRL DEVAUX J. - Medialoha. * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Public License v3.0 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/gpl.html * * Contributors: * EIRL DEVAUX J. - Medialoha - initial API and implementation */ // count total number of issues $total = DbHelper::countRows(TBL_ISSUES, null); $nbResolved = DbHelper::countRows(TBL_ISSUES, ISSUE_STATE . '=' . IssueState::STATE_CLOSED); $nbTesting = DbHelper::countRows(TBL_ISSUES, ISSUE_STATE . '=' . IssueState::STATE_TESTING); $nbArchived = DbHelper::countRows(TBL_ISSUES, ISSUE_STATE . '=' . IssueState::STATE_ARCHIVED); // count reports not fixed $res = DBHelper::selectRows(TBL_ISSUES, ISSUE_STATE . ' NOT IN (' . ISSUE_STATE_ARCHIVED . ', ' . ISSUE_STATE_CLOSED . ', ' . ISSUE_STATE_TESTING . ')', null, ISSUE_PRIORITY . ', COUNT(' . ISSUE_ID . ') count', ISSUE_PRIORITY, null, true); $nbNotFixed = 0; $nbNotFixedCritical = 0; $nbNotFixedNormal = 0; $nbNotFixedLow = 0; if (is_array($res)) { foreach ($res as $row) { $nbNotFixed += $row->count; switch ($row->issue_priority) { case IssuePriority::CRITICAL: $nbNotFixedCritical = $row->count; break; case IssuePriority::NORMAL: $nbNotFixedNormal = $row->count;
)" ><i class="icon-folder-open" ></i> Archive selected</a></li> <li class="text-left" ><a href="javascript:updateIssuesState(<?php echo REPORT_STATE_VIEWED; ?> )" ><i class="icon-refresh" ></i> Re-open selected</a></li> <li class="text-left" ><a href="javascript:delIssues()" ><i class="icon-trash" ></i> Delete selected</a></li> </ul> </div> </th> </tr> </thead> <tbody> <?php $reporsJoin = " JOIN " . TBL_REPORTS . " ON " . TBL_ISSUES . "." . ISSUE_ID . " = " . TBL_REPORTS . "." . REPORT_ISSUE; //$totalRows = DbHelper::countRows(TBL_ISSUES.$reporsJoin, ($mSelectedAppId>0?ISSUE_APP_ID.'='.$mSelectedAppId.' AND ':'').IssueHelper::buildIssuesWhereClause($filterOpts)); $totalRows = DbHelper::countRows(TBL_ISSUES, ($mSelectedAppId > 0 ? ISSUE_APP_ID . '=' . $mSelectedAppId . ' AND ' : '') . IssueHelper::buildIssuesWhereClause($filterOpts)); $issues = IssueHelper::fetchIssuesTable($filterOpts); if (empty($issues)) { ?> <tr><td colspan="8" class="muted" >No issues recorded yet...</td></tr><?php } else { $pos = 0; //$alreadyPrintedIssued = []; foreach ($issues as $issueArr) { $issue = Issue::createFromArray($issueArr); $reports = $issue->getReports(); $priority = $issue->getPriority(); $state = $issue->getState(); $trClasses = ($pos++ % 2 == 0 ? 'even ' : 'odd ') . strtolower($state->getName()); ?> <?php
require_once 'pages/change_issue_dialog.php'; } else { echo 'You missed report ids !'; } break; //////// SET ISSUE FOR REPORTS //////// SET ISSUE FOR REPORTS case 'setReportsIssue': $reportIds = @$_POST['reportIds']; $currentIssueId = @$_POST['currentIssueId']; $newIssueId = @$_POST['newIssueId']; if (!empty($reportIds) && !empty($currentIssueId) && !empty($newIssueId)) { // update reports DbHelper::exec('UPDATE ' . TBL_REPORTS . ' SET ' . REPORT_ISSUE . '=' . $newIssueId . ' WHERE ' . REPORT_ID . ' IN (' . $reportIds . ')'); // delete issue if no more reports attached $count = DbHelper::countRows(TBL_REPORTS, REPORT_ISSUE . '=' . $currentIssueId); if ($count == 0) { DbHelper::deleteIssues($currentIssueId); } } else { $error = "Invalid parameters !"; } if ($error == null) { Helper::pushAlert(ALERT_SUCCESS, 'Reports switched with success !'); } else { Helper::pushAlert(ALERT_ERROR, $error); } header('Location:index.php?p=' . PAGE_ID_ISSUES); break; //////// GET ISSUES TABLE //////// GET ISSUES TABLE