$num_packages++; } } } if ($request->valid(new Valid_Pv('pv'))) { $pv = $request->get('pv'); } else { $pv = false; } $pm = ProjectManager::instance(); $params = array('title' => $Language->getText('file_showfiles', 'file_p_for', $pm->getProject($group_id)->getPublicName()), 'pv' => $pv); file_utils_header($params); $hp =& Codendi_HTMLPurifier::instance(); if ($num_packages < 1) { echo '<h3>' . $Language->getText('file_showfiles', 'no_file_p') . '</h3><p>' . $Language->getText('file_showfiles', 'no_p_available'); if ($frspf->userCanAdmin($user, $group_id)) { echo '<p><a href="admin/package.php?func=add&group_id=' . $group_id . '">[' . $GLOBALS['Language']->getText('file_admin_editpackages', 'create_new_p') . ']</a></p>'; } file_utils_footer($params); exit; } if ($pv) { echo '<h3>' . $Language->getText('file_showfiles', 'p_releases') . ':</h3>'; } else { echo "<TABLE width='100%'><TR><TD>"; echo '<h3>' . $Language->getText('file_showfiles', 'p_releases') . ' ' . help_button('FileReleaseJargon.html') . '</h3>'; echo "</TD>"; echo "<TD align='left'> ( <A HREF='showfiles.php?group_id={$group_id}&pv=1'><img src='" . util_get_image_theme("msg.png") . "' border='0'> " . $Language->getText('global', 'printer_version') . "</A> ) </TD>"; echo "</TR></TABLE>"; echo '<p>' . $Language->getText('file_showfiles', 'select_release') . '</p>'; ?>
/** * Process the monitoring request * * @param HTTPRequest $request HTTP request * @param PFUser $currentUser Current user * @param Integer $groupId Id of the project * @param Integer $fileModuleId Id of the package * @param UserManager $um UserManager instance * @param UserHelper $userHelper UserHelper instance * * @return String */ public function processEditMonitoringAction($request, $currentUser, $groupId, $fileModuleId, $um, $userHelper) { $frspf = new FRSPackageFactory(); $package = $frspf->getFRSPackageFromDb($fileModuleId); if ($frspf->userCanAdmin($currentUser, $groupId)) { if ($request->valid(new Valid_WhiteList('action', array('add_monitoring', 'delete_monitoring')))) { $action = $request->get('action'); switch ($action) { case 'add_monitoring': $users = array_map('trim', preg_split('/[,;]/', $request->get('listeners_to_add'))); foreach ($users as $userName) { if (!empty($userName)) { $user = $um->findUser($userName); $this->addUserMonitoring($user, $groupId, $fileModuleId, $package, $frspf, $userHelper); } } break; case 'delete_monitoring': $users = $request->get('delete_user'); $this->stopMonitoringForUsers($users, $groupId, $fileModuleId, $package, $um, $userHelper); break; default: break; } } } }
/** * Test is user can administrate FRS service of given project * * @param PFUser $user User to test * @param Integer $groupId Project * * @return Boolean */ protected function userCanAdmin($user, $groupId) { return FRSPackageFactory::userCanAdmin($user, $groupId); }
$num_packages++; } } } if ($request->valid(new Valid_Pv('pv'))) { $pv = $request->get('pv'); } else { $pv = false; } $hp = Codendi_HTMLPurifier::instance(); $pm = ProjectManager::instance(); $params = array('title' => $Language->getText('file_showfiles', 'file_p_for', $hp->purify($pm->getProject($group_id)->getPublicName())), 'pv' => $pv); file_utils_header($params); if ($num_packages < 1) { echo '<h3>' . $Language->getText('file_showfiles', 'no_file_p') . '</h3><p>' . $Language->getText('file_showfiles', 'no_p_available'); if ($frspf->userCanAdmin($user, $group_id)) { echo '<p><a href="admin/package.php?func=add&group_id=' . $group_id . '">[' . $GLOBALS['Language']->getText('file_admin_editpackages', 'create_new_p') . ']</a></p>'; } file_utils_footer($params); exit; } if ($pv) { echo '<h3>' . $Language->getText('file_showfiles', 'p_releases') . ':</h3>'; } else { echo "<TABLE width='100%'><TR><TD>"; echo '<h3>' . $Language->getText('file_showfiles', 'p_releases') . ' ' . help_button('frs.html#delivery-manager-jargon') . '</h3>'; echo "</TD>"; echo "<TD align='left'> ( <A HREF='showfiles.php?group_id={$group_id}&pv=1'><img src='" . util_get_image_theme("msg.png") . "' border='0'> " . $Language->getText('global', 'printer_version') . "</A> ) </TD>"; echo "</TR></TABLE>"; echo '<p>' . $Language->getText('file_showfiles', 'select_release') . '</p>'; ?>