isError()) { exit_error('Error',$project->getErrorMessage()); } $perm =& $project->getPermission(session_get_user()); if (!$perm->isReleaseTechnician()) { exit_permission_denied(); } /* Relatively simple form to edit/add packages of releases */ // only admin can modify packages (vs modifying releases of packages) if (getStringFromRequest('submit')) { $func = getStringFromRequest('func'); $package_id = getIntFromRequest('package_id'); $package_name = getStringFromRequest('package_name'); $status_id = getIntFromRequest('status_id'); $is_public = getStringFromRequest('is_public'); /* make updates to the database */ if ($func=='add_package' && $package_name) { //create a new package $frsp = new FRSPackage($project); if (!$frsp || !is_object($frsp)) { exit_error('Error','Could Not Get FRS Package'); } elseif ($frsp->isError()) { exit_error('Error',$frsp->getErrorMessage()); } if (!$frsp->create($package_name,$is_public)) { exit_error('Error',$frsp->getErrorMessage()); } else { $feedback .=$Language->getText('project_admin_editpackages','added_package'); } } elseif ($func=='delete_package' && $package_id) { //delete a package $frsp = new FRSPackage($project,$package_id); if (!$frsp || !is_object($frsp)) { exit_error('Error','Could Not Get FRS Package'); } elseif ($frsp->isError()) { exit_error('Error',$frsp->getErrorMessage()); } $sure = getIntFromRequest("sure"); $really_sure = getIntFromRequest("really_sure"); if (!$frsp->delete($sure,$really_sure)) { exit_error('Error',$frsp->getErrorMessage()); } else { $feedback .=$Language->getText('frs_admin','deleted'); } } else if ($func=='update_package' && $package_id && $package_name && $status_id) { $frsp = new FRSPackage($project,$package_id); if (!$frsp || !is_object($frsp)) { exit_error('Error','Could Not Get FRS Package'); } elseif ($frsp->isError()) { exit_error('Error',$frsp->getErrorMessage()); } if (!$frsp->update($package_name,$status_id)) { exit_error('Error',$frsp->getErrorMessage()); } else { $feedback .= $Language->getText('project_admin_editpackages','updated_package'); } } } frs_admin_header(array('title'=>$Language->getText('project_admin_editpackages','title'),'group'=>$group_id)); $res=db_query("SELECT status_id,package_id,name AS package_name FROM frs_package WHERE group_id='$group_id'"); $rows=db_numrows($res); if ($res && $rows > 0) { echo '
'.$Language->getText('project_admin_editpackages','no_packages_defined').''; } else { $title_arr=array(); $title_arr[]=$Language->getText('project_admin_editpackages','releases'); $title_arr[]=$Language->getText('project_admin_editpackages','package_name'); $title_arr[]=$Language->getText('project_admin_editpackages','no_packages_status'); echo $GLOBALS['HTML']->listTableTop ($title_arr); for ($i=0; $i<$rows; $i++) { echo '
'; } echo $GLOBALS['HTML']->listTableBottom(); } /* form to create a new package */ ?>