[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gforge-commits] gforge/www/frs download.php, 1.3, 1.4 index.php, 1.3, 1
From: |
tperdue |
Subject: |
[Gforge-commits] gforge/www/frs download.php, 1.3, 1.4 index.php, 1.3, 1.4 shownotes.php, 1.2, 1.3 |
Date: |
Wed, 04 Aug 2004 11:18:55 -0500 |
Update of /cvsroot/gforge/gforge/www/frs
In directory db.perdue.net:/home/tperdue/share/dev.gforge.org/www/frs
Modified Files:
download.php index.php shownotes.php
Log Message:
RBAC, DELETION, AND FORUM EMAIL GATEWAY
Index: download.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/frs/download.php,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- download.php 20 Apr 2004 08:33:33 -0000 1.3
+++ download.php 4 Aug 2004 16:18:38 -0000 1.4
@@ -18,7 +18,8 @@
$arr=explode('/',$REQUEST_URI);
$file_id=$arr[3];
-$res=db_query("SELECT
frs_file.filename,frs_file.file_id,groups.unix_group_name,groups.group_id
+$res=db_query("SELECT frs_file.filename,frs_package.is_public,
+ frs_file.file_id,groups.unix_group_name,groups.group_id
FROM frs_package,frs_release,frs_file,groups
WHERE frs_release.release_id=frs_file.release_id
AND groups.group_id=frs_package.group_id
@@ -30,8 +31,9 @@
exit;
}
+$is_public =db_result($res,0,'is_public');
$group_name=db_result($res,0,'unix_group_name');
-$filename=db_result($res,0,'filename');
+$filename = db_result($res,0,'filename');
$release_id=db_result($res,0,'release_id');
$group_id = db_result($res,0,'group_id');
@@ -44,6 +46,23 @@
session_require(array('group' => $group_id));
}
+//
+// Members of projects can see all packages
+// Non-members can only see public packages
+//
+if (session_loggedin()) {
+ if (user_ismember($group_id) || user_ismember(1,'A')) {
+ } else {
+ if (!$is_public) {
+ exit_permission_denied();
+ }
+ }
+} else {
+ if (!$is_public) {
+ exit_permission_denied();
+ }
+}
+
/*
echo $group_name.'|'.$filename.'|'.$sys_upload_dir.$group_name.'/'.$filename;
if (file_exists($sys_upload_dir.$group_name.'/'.$filename)) {
Index: index.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/frs/index.php,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- index.php 30 Jun 2004 18:11:51 -0000 1.3
+++ index.php 4 Aug 2004 16:18:38 -0000 1.4
@@ -14,12 +14,6 @@
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
-$sql = "SELECT *
- FROM frs_package
- WHERE group_id='$group_id' AND status_id='1'
- ORDER BY name";
-$res_package = db_query( $sql );
-$num_packages = db_numrows( $res_package );
$cur_group =& group_get_object($group_id);
if (!$cur_group) {
@@ -27,6 +21,29 @@
$Language->getText('project_showfiles','no_group'));
}
+//
+// Members of projects can see all packages
+// Non-members can only see public packages
+//
+if (session_loggedin()) {
+ if (user_ismember($group_id) || user_ismember(1,'A')) {
+ $pub_sql='';
+ } else {
+ $pub_sql=' AND is_public=1 ';
+ }
+} else {
+ $pub_sql=' AND is_public=1 ';
+}
+
+$sql = "SELECT *
+ FROM frs_package
+ WHERE group_id='$group_id'
+ AND status_id='1'
+ $pub_sql
+ ORDER BY name";
+$res_package = db_query( $sql );
+$num_packages = db_numrows( $res_package );
+
if ( $num_packages < 1) {
exit_error($Language->getText('project_showfiles','error_no_packages_defined_title'),$Language->getText('project_showfiles','error_no_packages_defined_text'));
}
Index: shownotes.php
===================================================================
RCS file: /cvsroot/gforge/gforge/www/frs/shownotes.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- shownotes.php 14 Mar 2004 17:08:18 -0000 1.2
+++ shownotes.php 4 Aug 2004 16:18:38 -0000 1.3
@@ -15,10 +15,25 @@
require_once('pre.php');
require_once('www/frs/include/frs_utils.php');
+//
+// Members of projects can see all packages
+// Non-members can only see public packages
+//
+if (session_loggedin()) {
+ if (user_ismember($group_id) || user_ismember(1,'A')) {
+ $pub_sql='';
+ } else {
+ $pub_sql=' AND frs_package.is_public=1 ';
+ }
+} else {
+ $pub_sql=' AND frs_package.is_public=1 ';
+}
+
$result=db_query("SELECT frs_release.notes,frs_release.changes,
- frs_release.preformatted,frs_release.name,frs_package.group_id
+
frs_release.preformatted,frs_release.name,frs_package.group_id,frs_package.is_public
FROM frs_release,frs_package
WHERE frs_release.package_id=frs_package.package_id
+ $pub_sql
AND frs_release.release_id='$release_id'");
if (!$result || db_numrows($result) < 1) {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gforge-commits] gforge/www/frs download.php, 1.3, 1.4 index.php, 1.3, 1.4 shownotes.php, 1.2, 1.3,
tperdue <=
- Prev by Date:
[Gforge-commits] gforge/etc local.inc.example,1.18,1.19
- Next by Date:
[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
- Previous by thread:
[Gforge-commits] gforge/etc local.inc.example,1.18,1.19
- Next by 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
- Index(es):