[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gforge-commits] gforge/www/pm/admin index.php,1.8,1.9
From: |
tperdue |
Subject: |
[Gforge-commits] gforge/www/pm/admin index.php,1.8,1.9 |
Date: |
Wed, 04 Aug 2004 11:18:58 -0500 |
Update of /cvsroot/gforge/gforge/www/pm/admin
In directory db.perdue.net:/home/tperdue/share/dev.gforge.org/www/pm/admin
Modified Files:
index.php
Log Message:
RBAC, DELETION, AND FORUM EMAIL GATEWAY
Index: index.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/pm/admin/index.php,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- index.php 19 Feb 2004 13:38:00 -0000 1.8
+++ index.php 4 Aug 2004 16:18:41 -0000 1.9
@@ -37,37 +37,37 @@
}
$perm =& $g->getPermission( session_get_user() );
-if (!$perm->isPMAdmin()) {
- exit_permission_denied();
-}
if ($post_changes) {
/*
Update the database
*/
+ $pg = new ProjectGroup($g,$group_project_id);
+ if (!$pg || !is_object($pg)) {
+ exit_error('Error','Unable to create ProjectCategory Object');
+ } elseif ($pg->isError()) {
+ exit_error('Error',$pg->getErrorMessage());
+ }
if ($addproject) {
-
- $pg = new ProjectGroup($g,$group_project_id);
- if (!$pg || !is_object($pg)) {
- exit_error('Error','Unable to create ProjectCategory
Object');
- } elseif ($pg->isError()) {
- exit_error('Error',$pg->getErrorMessage());
+ /*
+ Add new subproject
+ */
+ if (!$perm->isPMAdmin()) {
+ exit_permission_denied();
}
if
(!$pg->create($project_name,$description,$is_public,$send_all_posts_to)) {
exit_error('Error',$pg->getErrorMessage());
} else {
$feedback .=
$Language->getText('pm_admin_projects','project_inserted');
}
+
} else if ($add_cat) {
/*
Add a project_category
*/
- $pg = new ProjectGroup($g,$group_project_id);
- if (!$pg || !is_object($pg)) {
- exit_error('Error','Unable to create ProjectCategory
Object');
- } elseif ($pg->isError()) {
- exit_error('Error',$pg->getErrorMessage());
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
}
$pc = new ProjectCategory($pg);
@@ -85,11 +85,8 @@
/*
Update a project_category
*/
- $pg = new ProjectGroup($g,$group_project_id);
- if (!$pg || !is_object($pg)) {
- exit_error('Error','Unable to create ProjectCategory
Object');
- } elseif ($pg->isError()) {
- exit_error('Error',$pg->getErrorMessage());
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
}
$pc = new ProjectCategory($pg,$id);
@@ -108,17 +105,34 @@
}
} else if ($update_pg) {
- $pg = new ProjectGroup($g,$group_project_id);
- if (!$pg || !is_object($pg)) {
- exit_error('Error','Unable to create ProjectCategory
Object');
- } elseif ($pg->isError()) {
- exit_error('Error',$pg->getErrorMessage());
+ /*
+ Update a subproject
+ */
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
}
- if
(!$pg->update($project_name,$description,$is_public,$send_all_posts_to)) {
+
+ if
(!$pg->update($project_name,$description,$send_all_posts_to)) {
exit_error('Error',$pg->getErrorMessage());
} else {
$feedback .=
$Language->getText('general','update_successful');
}
+
+ } else if ($delete) {
+ /*
+ Delete a subproject
+ */
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
+ }
+
+ if (!$pg->delete($sure,$really_sure)) {
+ exit_error('Error',$pg->getErrorMessage());
+ } else {
+ $feedback .=
$Language->getText('pm_admin_projects','deleted');
+ $group_project_id=0;
+ $delete=0;
+ }
}
}
/*
@@ -135,6 +149,9 @@
} elseif ($pg->isError()) {
exit_error('Error',$pg->getErrorMessage());
}
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
+ }
pm_header(array
('title'=>$Language->getText('pm_admin_projects','add_categories_title'),'pagename'=>'pm_admin_projects','sectionvals'=>$g->getPublicName()));
echo
"<h2>".$Language->getText('pm_admin_projects','add_categories_to').": ".
$pg->getName() ."</h2>";
@@ -187,7 +204,7 @@
// FORM TO UPDATE CATEGORIES
//
/*
- Allow modification of a artifact category
+ Allow modification of a category
*/
$pg = new ProjectGroup($g,$group_project_id);
@@ -196,6 +213,9 @@
} elseif ($pg->isError()) {
exit_error('Error',$pg->getErrorMessage());
}
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
+ }
pm_header(array
('title'=>$Language->getText('pm_admin_projects','add_categories'),'pagename'=>'pm_admin_projects','sectionvals'=>$g->getPublicName()));
echo
'<h2>'.$Language->getText('pm_admin_projects','modify_category').': '.
$pg->getName() .'</h2>';
@@ -227,26 +247,14 @@
} elseif ($addproject) {
/*
- Show categories and blank row
+ Create a new subproject
*/
+ if (!$perm->isPMAdmin()) {
+ exit_permission_denied();
+ }
pm_header(array
('title'=>$Language->getText('pm_admin_projects','add_subprojects_title'),'pagename'=>'pm_admin_projects','sectionvals'=>group_getname($group_id)));
- /*
- List of possible categories for this group
- */
- $sql="SELECT group_project_id,project_name FROM project_group_list
WHERE group_id='$group_id'";
- $result=db_query($sql);
- echo "<p />";
- if ($result && db_numrows($result) > 0) {
- $headerMapping = array(
- 'group_project_id' =>
$Language->getText('pm_admin_projects','col_project_id'),
- 'project_name' =>
$Language->getText('pm_admin_projects','col_project_name')
- );
- ShowResultSet($result,
$Language->getText('pm_admin_projects','existing_subprojects'), false, true,
$headerMapping);
- } else {
- echo
"\n<h2>".$Language->getText('pm_admin_projects','no_subprojects')."</h2>";
- }
?>
<p><?php echo $Language->getText('pm_admin_projects','projects_intro')
?></p>
@@ -283,6 +291,9 @@
} elseif ($pg->isError()) {
exit_error('Error',$pg->getErrorMessage());
}
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
+ }
pm_header(array('title'=>$Language->getText('pm_admin_projects','change_project_title'),'pagename'=>'pm_admin_update_pg','sectionvals'=>$g->getPublicName()));
@@ -295,14 +306,14 @@
<input type="hidden" name="update_pg" value="y" />
<input type="hidden" name="group_project_id" value="<?php echo
$pg->getID(); ?>" />
<table border="0">
- <tr>
+<!-- <tr>
<td>
<strong><?php echo
$Language->getText('pm_admin_projects','is_public')?></strong><br />
<input type="radio" name="is_public" value="1"<?php
echo (($pg->isPublic()=='1')?' checked="checked"':''); ?> /> <?php echo
$Language->getText('general','yes') ?><br />
<input type="radio" name="is_public" value="0"<?php
echo (($pg->isPublic()=='0')?' checked="checked"':''); ?> /> <?php echo
$Language->getText('general','no') ?><br />
<input type="radio" name="is_public" value="9"<?php
echo (($pg->isPublic()=='9')?' checked="checked"':''); ?> /> <?php echo
$Language->getText('general','deleted')?><br />
</td>
- </tr>
+ </tr> -->
<tr>
<td><strong><?php echo
$Language->getText('pm_admin_projects','project_name')?>:</strong><br />
<input type="text" name="project_name" value="<?php
echo $pg->getName() ?>" />
@@ -323,6 +334,7 @@
<tr>
<td>
<strong><a href="<?php echo
$PHP_SELF."?group_id=$group_id&add_cat=1&group_project_id=".$pg->getID();
?>"><?php echo
$Language->getText('pm_admin_projects','add_edit_categories')?></a></strong><br
/>
+ <strong><a href="<?php echo
$PHP_SELF."?group_id=$group_id&delete=1&group_project_id=".$pg->getID();
?>"><?php echo
$Language->getText('pm_admin_projects','delete_info')?></a></strong><br />
</td>
</tr>
<tr>
@@ -336,6 +348,36 @@
pm_footer(array());
+} else if ($delete && $group_project_id) {
+
+
+ $pg = new ProjectGroup($g,$group_project_id);
+ if (!$pg || !is_object($pg)) {
+ exit_error('Error','Could Not Get ProjectGroup');
+ } elseif ($pg->isError()) {
+ exit_error('Error',$pg->getErrorMessage());
+ }
+ if (!$pg->userIsAdmin()) {
+ exit_permission_denied();
+ }
+
+
pm_header(array('title'=>$Language->getText('pm_admin_projects','delete')));
+
+ ?>
+ <form action="<?php echo
$PHP_SELF.'?group_id='.$group_id.'&group_project_id='.$group_project_id;
?>" method="post">
+ <input type="hidden" name="post_changes" value="y" />
+ <input type="hidden" name="delete" value="y" /><br />
+ <?php echo $Language->getText('pm_admin_projects','delete_warning'); ?>
+ <p>
+ <input type="checkbox" name="sure" value="1"><?php echo
$Language->getText('pm_admin_projects','sure') ?><br />
+ <input type="checkbox" name="really_sure" value="1"><?php echo
$Language->getText('pm_admin_projects','really_sure'); ?>
+ <p>
+ <input type="submit" name="post_changes" value="<?php echo
$Language->getText('pm_admin_projects','delete') ?>" />
+ </form>
+ <?php
+
+ pm_footer(array());
+
} else {
/*
@@ -343,25 +385,31 @@
*/
pm_header(array('title'=>$Language->getText('pm_admin_projects','admin_title'),'pagename'=>'pm_admin','sectionvals'=>group_getname($group_id)));
- ?>
- <p />
- <a href="<?php echo $PHP_SELF.'?group_id='.$group_id;
?>&addproject=1"><?php echo
$Language->getText('pm_admin_projects','add_project') ?></a><br />
- <?php echo $Language->getText('pm_admin_projects','add_project_intro')
?>
- <p />
- <?php
- $pgf = new ProjectGroupFactory($g);
- if (!$pgf || !is_object($pgf)) {
- exit_error('Error','Could Not Get Factory');
- } elseif ($pgf->isError()) {
- exit_error('Error',$pgf->getErrorMessage());
- }
+ //
+ // Show link to create new subproject
+ //
+ if ($perm->isPMAdmin()) {
+ ?>
+ <p />
+ <a href="<?php echo $PHP_SELF.'?group_id='.$group_id;
?>&addproject=1"><?php echo
$Language->getText('pm_admin_projects','add_project') ?></a><br />
+ <?php echo
$Language->getText('pm_admin_projects','add_project_intro') ?>
+ <p />
+ <?php
+ }
- $pg_arr =& $pgf->getProjectGroups();
+ $pgf = new ProjectGroupFactory($g);
+ if (!$pgf || !is_object($pgf)) {
+ exit_error('Error','Could Not Get Factory');
+ } elseif ($pgf->isError()) {
+ exit_error('Error',$pgf->getErrorMessage());
+ }
- if (count($pg_arr) < 1 || $pg_arr == false) {
- echo $Language->getText('pm_admin_projects','no_projects_found');
- echo db_error();
- } else {
+ $pg_arr =& $pgf->getProjectGroups();
+
+ if (count($pg_arr) < 1 || $pg_arr == false) {
+ echo
$Language->getText('pm_admin_projects','no_projects_found');
+ echo db_error();
+ } else {
for ($i=0; $i<count($pg_arr); $i++) {
echo '<a href="'.
$PHP_SELF.'?group_id='.$group_id.'&group_project_id='.$pg_arr[$i]->getID().'&update_pg=1">'.$Language->getText('pm_admin_projects','edit_update').':
<strong>'.$pg_arr[$i]->getName().'</strong></a><p />';
}
@@ -371,4 +419,4 @@
pm_footer(array());
}
-?>
\ No newline at end of file
+?>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gforge-commits] gforge/www/pm/admin index.php,1.8,1.9,
tperdue <=