[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gforge-commits] gforge/www/frs/admin deletepackage.php, NONE, 1.1 delet
From: |
tperdue |
Subject: |
[Gforge-commits] gforge/www/frs/admin deletepackage.php, NONE, 1.1 deleterelease.php, NONE, 1.1 index.php, 1.1, 1.2 showreleases.php, 1.2, 1.3 |
Date: |
Wed, 04 Aug 2004 11:18:57 -0500 |
Update of /cvsroot/gforge/gforge/www/frs/admin
In directory db.perdue.net:/home/tperdue/share/dev.gforge.org/www/frs/admin
Modified Files:
index.php showreleases.php
Added Files:
deletepackage.php deleterelease.php
Log Message:
RBAC, DELETION, AND FORUM EMAIL GATEWAY
--- NEW FILE: deletepackage.php ---
<?php
/**
*
* Project Admin: Edit Packages
*
* SourceForge: Breaking Down the Barriers to Open Source Development
* Copyright 1999-2001 (c) VA Linux Systems
* Copyright 2004 (c) GForge, LLC
*
* @version $Id: deletepackage.php,v 1.1 2004/08/04 16:18:39 tperdue Exp $
*
*/
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
require_once('common/frs/FRSPackage.class');
if (!$group_id) {
exit_no_group();
}
$project =& group_get_object($group_id);
if (!$project || $project->isError()) {
exit_error('Error',$project->getErrorMessage());
}
$perm =& $project->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
exit_permission_denied();
}
$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());
}
/*
Relatively simple form to delete packages of releases
*/
frs_admin_header(array('title'=>$Language->getText('project_admin_editpackages','title'),'group'=>$group_id));
echo '<strong>'.$frsp->getName().'</strong><p>';
echo '
<form action="/frs/admin/?group_id='.$group_id.'" method="post">
<input type="hidden" name="func" value="delete_package" />
<input type="hidden" name="package_id" value="'. $package_id .'" />
'.$Language->getText('frs_admin','delete_package_warning').'
<p>
<input type="checkbox" name="sure"
value="1">'.$Language->getText('frs_admin','sure').'<br />
<input type="checkbox" name="really_sure"
value="1">'.$Language->getText('frs_admin','really_sure').'<br />
<input type="submit" name="submit"
value="'.$Language->getText('frs_admin','delete').'" />
</form>';
frs_admin_footer();
?>
--- NEW FILE: deleterelease.php ---
<?php
/**
*
* Project Admin: Edit Packages
*
* SourceForge: Breaking Down the Barriers to Open Source Development
* Copyright 1999-2001 (c) VA Linux Systems
* Copyright 2004 (c) GForge, LLC
*
* @version $Id: deleterelease.php,v 1.1 2004/08/04 16:18:39 tperdue Exp $
*
*/
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
require_once('common/frs/FRSPackage.class');
require_once('common/frs/FRSRelease.class');
require_once('common/frs/FRSFile.class');
if (!$group_id) {
exit_no_group();
}
$project =& group_get_object($group_id);
if (!$project || $project->isError()) {
exit_error('Error',$project->getErrorMessage());
}
$perm =& $project->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
exit_permission_denied();
}
$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());
}
$frsr = new FRSRelease($frsp,$release_id);
if (!$frsr || !is_object($frsr)) {
exit_error('Error','Could Not Get FRS Release');
} elseif ($frsr->isError()) {
exit_error('Error',$frsr->getErrorMessage());
}
/*
Relatively simple form to delete packages of releases
*/
frs_admin_header(array('title'=>$Language->getText('project_admin_editpackages','title'),'group'=>$group_id));
echo '
<form
action="/frs/admin/showreleases.php?group_id='.$group_id.'&package_id='.$package_id.'"
method="post">
<input type="hidden" name="func" value="delete_release" />
<input type="hidden" name="release_id" value="'. $release_id .'" />
'.$Language->getText('frs_admin','delete_release_warning').'
<p>
<input type="checkbox" name="sure"
value="1">'.$Language->getText('frs_admin','sure').'<br />
<input type="checkbox" name="really_sure"
value="1">'.$Language->getText('frs_admin','really_sure').'<br />
<input type="submit" name="submit"
value="'.$Language->getText('frs_admin','delete').'" />
</form>';
frs_admin_footer();
?>
Index: index.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/frs/admin/index.php,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- index.php 10 Feb 2004 22:14:38 -0000 1.1
+++ index.php 4 Aug 2004 16:18:39 -0000 1.2
@@ -13,6 +13,9 @@
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
+require_once('common/frs/FRSPackage.class');
+require_once('common/frs/FRSRelease.class');
+require_once('common/frs/FRSFile.class');
if (!$group_id) {
exit_no_group();
@@ -43,23 +46,45 @@
if ($func=='add_package' && $package_name) {
//create a new package
- db_query("INSERT INTO frs_package (group_id,name,status_id) ".
- "VALUES ('$group_id','".
htmlspecialchars($package_name) ."','1')");
- $feedback
.=$Language->getText('project_admin_editpackages','added_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) {
+
+ //create a new 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());
+ }
+ 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) {
- if ($status_id != 1) {
- //if hiding a package, refuse if it has releases under
it
- $res=db_query("SELECT * FROM frs_release WHERE
package_id='$package_id' AND status_id=1");
- if (db_numrows($res) > 0) {
- $feedback .= ' Sorry - you cannot hide a
package that contains active releases ';
- $status_id=1;
- }
+ $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');
}
- //update an existing package
- db_query("UPDATE frs_package SET name='".
htmlspecialchars($package_name) ."', status_id='$status_id' ".
- "WHERE package_id='$package_id' AND
group_id='$group_id'");
- $feedback .=
$Language->getText('project_admin_editpackages','updated_package');
}
@@ -68,7 +93,8 @@
frs_admin_header(array('title'=>$Language->getText('project_admin_editpackages','title'),'group'=>$group_id,'pagename'=>'project_admin_editpackages','sectionvals'=>array(group_getname($group_id))));
-$res=db_query("SELECT status_id,package_id,name AS package_name FROM
frs_package WHERE group_id='$group_id' AND status_id=1");
+$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
'<h3>'.$Language->getText('project_admin_editpackages','qrs').'</h3>';
@@ -86,8 +112,6 @@
*/
-$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 < 1) {
echo
'<h4>'.$Language->getText('project_admin_editpackages','no_packages_defined').'</h4>';
} else {
@@ -120,7 +144,13 @@
</td>
<td><span style="font-size:smaller"><input type="text"
name="package_name" value="'.db_result($res,$i,'package_name') .'" size="20"
maxlength="30" /></span></td>
<td><span
style="font-size:smaller">'.frs_show_status_popup ('status_id',
db_result($res,$i,'status_id')).'</span></td>
- <td><input type="submit" name="submit"
value="'.$Language->getText('general','update').'" /></td>
+ <td><input type="submit" name="submit"
value="'.$Language->getText('general','update').'" />
+ <span style="font-size:smaller">
+ <a
href="deletepackage.php?package_id='.
+ db_result($res,$i,'package_id')
.'&group_id='. $group_id
.'"><strong>['.$Language->getText('general','delete').']</strong>
+ </a>
+ </span>
+ </td>
</tr></form>';
}
@@ -142,6 +172,10 @@
<input type="hidden" name="group_id" value="<?php echo $group_id; ?>" />
<input type="hidden" name="func" value="add_package" />
<input type="text" name="package_name" value="" size="20" maxlength="30" />
+<p>
+<strong><?php echo
$Language->getText('project_admin_editpackages','is_public'); ?>:</strong><br />
+<input type="radio" name="is_public" value="1" checked> <?php echo
$Language->getText('project_admin_editpackages','public'); ?><br />
+<input type="radio" name="is_public" value="0"> <?php echo
$Language->getText('project_admin_editpackages','private'); ?><br />
<p><input type="submit" name="submit" value="<?php echo
$Language->getText('project_admin_editpackages','create_package') ?>" /></p>
</form></p>
Index: showreleases.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/frs/admin/showreleases.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- showreleases.php 31 Mar 2004 17:17:18 -0000 1.2
+++ showreleases.php 4 Aug 2004 16:18:39 -0000 1.3
@@ -1,6 +1,5 @@
<?php
/**
- *
* Project Admin: Edit Releases of Packages
*
* SourceForge: Breaking Down the Barriers to Open Source Development
@@ -8,7 +7,6 @@
* Copyright 2004 (c) GForge, LLC
*
* @version $Id$
- *
*/
@@ -18,6 +16,9 @@
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
+require_once('common/frs/FRSPackage.class');
+require_once('common/frs/FRSRelease.class');
+require_once('common/frs/FRSFile.class');
if (!$group_id) {
exit_no_group();
@@ -27,6 +28,7 @@
if (!$project || $project->isError()) {
exit_error('Error',$project->getErrorMessage());
}
+
$perm =& $project->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
exit_permission_denied();
@@ -37,16 +39,35 @@
exit;
}
+$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 ($func=='delete_release' && $release_id) {
+ $frsr = new FRSRelease($frsp,$release_id);
+ if (!$frsr || !is_object($frsr)) {
+ exit_error('Error','Could Not Get FRS Release');
+ } elseif ($frsr->isError()) {
+ exit_error('Error',$frsr->getErrorMessage());
+ }
+ if (!$frsr->delete($sure,$really_sure)) {
+ exit_error('Error',$frsr->getErrorMessage());
+ } else {
+ $feedback .= $Language->getText('frs_admin','deleted');
+ }
+}
+
/*
Get the releases of this package
*/
-$res=db_query("SELECT p.name AS package_name,r.*
- FROM frs_release r, frs_package p
- WHERE
- p.package_id=r.package_id
- AND p.group_id='$group_id'
- AND p.package_id='$package_id'");
-if (!$res || db_numrows($res) < 1) {
+$rs =& $frsp->getReleases();
+if (count($rs) < 1) {
exit_error($Language->getText('general','error'),$Language->getText('project_admin_showreleases','no_release'));
}
@@ -62,14 +83,17 @@
echo $GLOBALS['HTML']->listTableTop ($title_arr);
-for ($i=0; $i<db_numrows($res); $i++) {
+for ($i=0; $i<count($rs); $i++) {
echo '<tr '. $HTML->boxGetAltRowStyle($i) .'>
- <td>'.db_result($res,$i,'package_name').'</td>
+ <td>'.$frsp->getName().'</td>
<td><a href="editrelease.php?group_id='.$group_id
.'&package_id='.$package_id
-
.'&release_id='.db_result($res,$i,'release_id').'">'.
- db_result($res,$i,'name').'
['.$Language->getText('general','edit').']</a></td><td>'.
- date('Y-m-d
H:i',db_result($res,$i,'release_date')).'</td></tr>';
+ .'&release_id='.$rs[$i]->getID().'">'.
+ $rs[$i]->getName().'
['.$Language->getText('general','edit').']</a>
+ <a href="deleterelease.php?group_id='.$group_id
+ .'&package_id='.$package_id
+
.'&release_id='.$rs[$i]->getID().'">['.$Language->getText('general','delete').']</td><td>'.
+ date('Y-m-d
H:i',$rs[$i]->getReleaseDate()).'</td></tr>';
}
echo $GLOBALS['HTML']->listTableBottom();
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gforge-commits] gforge/www/frs/admin deletepackage.php, NONE, 1.1 deleterelease.php, NONE, 1.1 index.php, 1.1, 1.2 showreleases.php, 1.2, 1.3,
tperdue <=
- Prev by Date:
[Gforge-commits] gforge/www/frs download.php, 1.3, 1.4 index.php, 1.3, 1.4 shownotes.php, 1.2, 1.3
- Next by Date:
[Gforge-commits] gforge/cronjobs/mail mailaliases.php,1.8,1.9
- Previous by thread:
[Gforge-commits] gforge/www/frs download.php, 1.3, 1.4 index.php, 1.3, 1.4 shownotes.php, 1.2, 1.3
- Next by thread:
[Gforge-commits] gforge/cronjobs/mail mailaliases.php,1.8,1.9
- Index(es):