[evolvis-commits] r12040: Fix regex pattern used to generate user descriptive names. ↵ ↵ Eliminate war =?UTF-8?Q?nings=20in=20svn=2Dstatus?=. =?UTF-8?Q?php=E2=86=B5=20=E2=86=B5=20Add=20scmsvn?=/cronjobs/update_users. php which just updates the subversion access/ password files for systems where repository creation is handled offline. =?UTF-8?Q?=E2=86=B5=20=E2=86=B5=20Replace=20gforg?==?UTF-8?Q?e?=/images/t. png and t2.png with versions compatible with Internet Explorer. ↵ ↵ Fix missing b =?UTF-8?Q?racket=20in=20massadd?=.php. ↵ ↵ Fix a number =?UTF-8?Q?of=20instances=20where=20=24P?==?UTF-8?Q?HP=5FSELF=20wasn?=' t converted to getStringFromServer('PHP_SELF'). ↵ ↵ Fix viewvc display to compensate f =?UTF-8?Q?or=20an=20Internet=20Explor?==?UTF-8?Q?er=20display=20bug?=. ↵ ↵ Fix handling of PATH_INFO so that it works with cgi as =?UTF-8?Q?well=20as=20mod=5Fphp?=. ↵ ↵ Add a bunch of missing rbac_edit e =?UTF-8?Q?ntries=20used=20by=20roleed?==?UTF-8?Q?it?=.php. ↵ ↵ Fix error che =?UTF-8?Q?ck=20in=20tracker?=/admin/ind. php↵ ↵ Fix variou?==?UTF-8?Q?s warnings . ↵ ↵ Fix MySQL sup =?UTF-8?Q?port=20for=20remove=20user=20?==?UTF-8?Q?from=20group?=. ↵
mirabilos at evolvis.org
mirabilos at evolvis.org
Thu Feb 24 18:34:31 CET 2011
Author: mirabilos
Date: 2011-02-24 18:34:30 +0100 (Thu, 24 Feb 2011)
New Revision: 12040
Added:
trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/update_users.php
Modified:
trunk/gforge_base/evolvisforge-5.1/gforge/common/include/Group.class
trunk/gforge_base/evolvisforge-5.1/gforge/common/include/GroupJoinRequest.class
trunk/gforge_base/evolvisforge-5.1/gforge/common/include/PluginManager.class
trunk/gforge_base/evolvisforge-5.1/gforge/common/include/cron_utils.php
trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/ProjectTask.class
trunk/gforge_base/evolvisforge-5.1/gforge/plugins/fckeditor/common/fckeditorPlugin.class
trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmcvs/cronjobs/usergroup.php
trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/create_svn.php
trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/svn-stats.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t2.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/include/languages/Base.tab
trunk/gforge_base/evolvisforge-5.1/gforge/www/include/project_summary.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massadd.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massfinish.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/roleedit.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/project/request.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/scm_utils.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/viewvc_utils.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/snippet/package.php
trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t2.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/Theme.class
trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t2.png
trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/admin/ind.php
Log:
Fix regex pattern used to generate user descriptive names.
Eliminate warnings in svn-status.php
Add scmsvn/cronjobs/update_users.php which just updates the subversion access/password files for systems where repository creation is handled offline.
Replace gforge/images/t.png and t2.png with versions compatible with Internet Explorer.
Fix missing bracket in massadd.php.
Fix a number of instances where $PHP_SELF wasn't converted to getStringFromServer('PHP_SELF').
Fix viewvc display to compensate for an Internet Explorer display bug.
Fix handling of PATH_INFO so that it works with cgi as well as mod_php.
Add a bunch of missing rbac_edit entries used by roleedit.php.
Fix error check in tracker/admin/ind.php
Fix various warnings.
Fix MySQL support for remove user from group.
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/common/include/Group.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/include/Group.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/include/Group.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1698,7 +1698,7 @@
* @return boolean success.
*/
function removeUser($user_id) {
- global $Language,$SYS;
+ global $Language,$SYS,$sys_database_type;
if ($user_id==user_getid()) {
//users can remove themselves
@@ -1784,16 +1784,30 @@
// first have to purge any assignments that would cause
// conflict with existing assignment to 100
//
- $res=db_query("DELETE FROM project_assigned_to
- WHERE project_task_id IN (SELECT pt.project_task_id
- FROM project_task pt, project_group_list pgl, project_assigned_to pat
- WHERE pt.group_project_id = pgl.group_project_id
- AND pat.project_task_id=pt.project_task_id
- AND pt.status_id='1' AND pgl.group_id='".$this->getID()."'
- AND pat.assigned_to_id='$user_id')
- AND assigned_to_id='100'");
+ if ($sys_database_type == 'mysql') {
+ $res=db_mquery("
+ SELECT pt.project_task_id
+ FROM project_task pt, project_group_list pgl, project_assigned_to pat
+ WHERE pt.group_project_id = pgl.group_project_id
+ AND pat.project_task_id=pt.project_task_id
+ AND pt.status_id='1' AND pgl.group_id='".$this->getID()."'
+ AND pat.assigned_to_id='$user_id' INTO @task_list;
+ DELETE FROM project_assigned_to WHERE project_task_id IN ( @task_list ) AND assigned_to_id='100'");
+ if ($res) {
+ $res = db_next_result();
+ }
+ } else {
+ $res=db_query("DELETE FROM project_assigned_to
+ WHERE project_task_id IN (SELECT pt.project_task_id
+ FROM project_task pt, project_group_list pgl, project_assigned_to pat
+ WHERE pt.group_project_id = pgl.group_project_id
+ AND pat.project_task_id=pt.project_task_id
+ AND pt.status_id='1' AND pgl.group_id='".$this->getID()."'
+ AND pat.assigned_to_id='$user_id')
+ AND assigned_to_id='100'");
+ }
if (!$res) {
- $this->setError('ERROR: DB: project_assigned_to 1'.db_error());
+ $this->setError('ERROR: DB: project_assigned_to 1 - '.db_error());
db_rollback();
return false;
}
@@ -1804,7 +1818,7 @@
AND pt.status_id='1' AND pgl.group_id='".$this->getID()."')
AND assigned_to_id='$user_id'");
if (!$res) {
- $this->setError('ERROR: DB: project_assigned_to.'.db_error());
+ $this->setError('ERROR: DB: project_assigned_to 2 - '.db_error());
db_rollback();
return false;
}
@@ -1820,7 +1834,6 @@
}
//audit trail
$this->addHistory('removed user',$user_id);
-
}
db_commit();
return true;
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/common/include/GroupJoinRequest.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/include/GroupJoinRequest.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/include/GroupJoinRequest.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -95,7 +95,7 @@
$this->Group =& $Group;
if ($user_id) {
if (!$arr || !is_array($arr)) {
- if (!$this->fetchData($group_id,$user_id)) {
+ if (!$this->fetchData($Group->getID(),$user_id)) {
return false;
}
} else {
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/common/include/PluginManager.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/include/PluginManager.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/include/PluginManager.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -67,7 +67,7 @@
* @return a plugin object
*/
function GetPluginObject ($pluginname) {
- return $this->plugins_objects [$pluginname] ;
+ return @$this->plugins_objects [$pluginname] ;
}
/**
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/common/include/cron_utils.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/include/cron_utils.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/include/cron_utils.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -30,6 +30,7 @@
$cron_arr[23]='backup_site.php';
$cron_arr[24]='svn-stats.php';
$cron_arr[25]='homedirs.php';
+$cron_arr[26]='update_users.php';
function cron_entry($job,$output) {
$sql="INSERT INTO cron_history (rundate,job,output)
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/ProjectTask.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/ProjectTask.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/ProjectTask.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1048,7 +1048,7 @@
AND project_task_id='".$this->getID()."'";
$res=db_query($sql);
- if (!$res || db_affected_rows($res) < 1) {
+ if (!$res) {
$this->setError('Error On ProjectTask::update-5: '.db_error().$sql);
db_rollback();
return false;
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/plugins/fckeditor/common/fckeditorPlugin.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/plugins/fckeditor/common/fckeditorPlugin.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/plugins/fckeditor/common/fckeditorPlugin.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -67,7 +67,7 @@
echo "</tr>";
} elseif ($hookname == "groupisactivecheckboxpost") {
$group = &group_get_object($group_id);
- if ( getStringFromRequest(use_fckeditorplugin) == 1 ) {
+ if ( getStringFromRequest('use_fckeditorplugin') == 1 ) {
$group->setPluginUse ( $this->name );
} else {
$group->setPluginUse ( $this->name, false );
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmcvs/cronjobs/usergroup.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmcvs/cronjobs/usergroup.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmcvs/cronjobs/usergroup.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -68,7 +68,7 @@
$gforge_lines = array();
// user description is something like "MyGForge user"
-$user_description = preg_replace('/[^[:alnum:] -_]/', '', $sys_name);
+$user_description = preg_replace('/[^[:alnum:] _-]/', '', $sys_name);
$user_description .= " user";
for ($i=0; $i < count($gforge_users); $i++) {
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/create_svn.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/create_svn.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/create_svn.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,7 +1,7 @@
#! /usr/bin/php4 -f
<?php
/**
- * create_docman.php
+ * create_svn.php
*
* Francisco Gimeno <kikov at fco-gimeno.com>
*
@@ -132,7 +132,7 @@
} else {
passthru ("[ ! -d $svn/".$row["unix_group_name"]." ] && $svn_path/svnadmin create $repos_type $svn/".$row["unix_group_name"]);
$cmd = 'chown -R '.$file_owner.' '.$svn.'/'.$row["unix_group_name"];
- passthru($cmd); // svn dir owned by apache or viewcvs doesn´t work
+ passthru($cmd); // svn dir owned by apache or viewcvs doesn't work
if ($project->usesPlugin('svncommitemail')) {
check_svn_mail($row["unix_group_name"], $svn."/".$row["unix_group_name"]);
}
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/svn-stats.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/svn-stats.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/svn-stats.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -58,7 +58,7 @@
debug ("endelement $name") ;
global $time_ok, $last_tag, $commits, $date_key;
if ($name == "LOGENTRY" && $time_ok) {
- $commits[$date_key]++;
+ @$commits[$date_key]++;
}
$last_tag = "";
}
@@ -144,19 +144,19 @@
case "PATH":
if ($time_ok && $date_key) {
if ($attrs['ACTION'] == "M") {
- $updates[$date_key]++;
+ @$updates[$date_key]++;
if ($last_user) {
- $usr_updates[$date_key][$last_user]++;
+ @$usr_updates[$date_key][$last_user]++;
}
} elseif ($attrs['ACTION'] == "A") {
- $adds[$date_key]++;
+ @$adds[$date_key]++;
if ($last_user) {
- $usr_adds[$date_key][$last_user]++;
+ @$usr_adds[$date_key][$last_user]++;
}
} elseif ($attrs['ACTION'] == "D") {
- $deletes[$date_key]++;
+ @$deletes[$date_key]++;
if ($last_user) {
- $usr_deletes[$date_key][$last_user]++;
+ @$usr_deletes[$date_key][$last_user]++;
}
}
}
@@ -180,7 +180,7 @@
$pluginid = get_plugin_id($pluginname);
-if ($ARGV[1] && $ARGV[2] && $ARGV[3]) {
+if (@$ARGV[1] && @$ARGV[2] && @$ARGV[3]) {
//$ARGV[1] = Year
//$ARGV[2] = Month
//$ARGV[3] = Day
@@ -190,7 +190,7 @@
$day_end = $day_begin + 86400;
$rollback = process_day($day_begin, $day_end);
-} else if ($ARGV[1]=='all' && !$ARGV[2] && !$ARGV[3]) {
+} else if (@$ARGV[1]=='all' && @!$ARGV[2] && @!$ARGV[3]) {
// Do ALL the days
debug('Processing all days');
$rollback = process_day();
@@ -360,8 +360,8 @@
'$d',
'$groups[0]',
'0',
- '" . ($updates[$key] ? $updates[$key] : 0) . "',
- '" . ($adds[$key] ? $adds[$key] : 0) . "')";
+ '" . (@$updates[$key] ? $updates[$key] : 0) . "',
+ '" . (@$adds[$key] ? $adds[$key] : 0) . "')";
debug($ins_grp_sql);
if (!db_query($ins_grp_sql)) {
@@ -392,8 +392,8 @@
'$d',
'$groups[0]',
'$user_id',
- '" . ($usr_updates{$key}{$user_name}?$usr_updates{$key}{$user_name}:0) . "',
- '" . ($usr_adds{$key}{$user_name}?$usr_adds{$key}{$user_name}:0) . "')";
+ '" . (@$usr_updates{$key}{$user_name}?$usr_updates{$key}{$user_name}:0) . "',
+ '" . (@$usr_adds{$key}{$user_name}?$usr_adds{$key}{$user_name}:0) . "')";
debug($usr_sql);
Added: trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/update_users.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/update_users.php (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/plugins/scmsvn/cronjobs/update_users.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -0,0 +1,134 @@
+#! /usr/bin/php4 -f
+<?php
+/*
+ * update_users.php
+ *
+ * Robert Nelson <robertn at the-nelsons.org>
+ *
+ *
+ * This script creates/updates the users and passwords associated
+ * with the gforge subversion repositories.
+ *
+ * @version $Id
+ */
+
+require ('squal_pre.php');
+require_once('common/include/cron_utils.php');
+
+// Where is the SVN repository?
+$svn=$svndir_prefix;
+
+//the name of the access_file
+$access_file = "$svn/%s.access";
+$password_file = "$svn/%s.passwd";
+$access_root = "/";
+$per_group_access = True;
+
+$err = "Creating accounts for subversion repositories at ". $svn."\n";
+
+if (empty($svn) || util_is_root_dir($svn)) {
+ $err .= "Error! svndir_prefix Is Not Set Or Points To The Root Directory!";
+ echo $err;
+ cron_entry(26,$err);
+ exit;
+}
+
+$res = db_query("SELECT is_public,enable_anonscm,unix_group_name,groups.group_id
+ FROM groups, plugins, group_plugin
+ WHERE groups.status != 'P'
+ AND groups.group_id=group_plugin.group_id
+ AND group_plugin.plugin_id=plugins.plugin_id
+ AND plugins.plugin_name='scmsvn'");
+
+if (!$res) {
+ $err .= "Error! Database Query Failed: ".db_error();
+ echo $err;
+ cron_entry(26,$err);
+ exit;
+}
+
+// The content of the access file used by svn authz apache2 module
+$access_file_content = '';
+
+while ( $group_row =& db_fetch_array($res) ) {
+ $access_file_content .= add2AccessFile($group_row['group_id']);
+ if ($per_group_access) {
+ writeAccessFile(sprintf($access_file, $group_row['unix_group_name']), $access_file_content);
+ $access_file_content = '';
+
+ // Now generate the contents for the password file
+ $res = db_query('SELECT user_name,unix_pw FROM users NATURAL JOIN user_group WHERE group_id=\''.$group_row['group_id'].'\'');
+ if (!$res) {
+ $err .= "Error! Database Query Failed: ".db_error();
+ echo $err;
+ cron_entry(26,$err);
+ exit;
+ }
+
+ $password_file_content = '';
+ while ( $user_row =& db_fetch_array($res) ) {
+ if (!empty($user_row['unix_pw']))
+ $password_file_content .= $user_row['user_name'].':'.$user_row['unix_pw']."\n";
+ }
+ writePasswordFile(sprintf($password_file, $group_row['unix_group_name']), $password_file_content);
+ }
+}
+
+if (!$per_group_access) {
+ // Now generate the contents for the password file
+ $password_file_contents = '';
+ $res = db_query("SELECT * FROM users WHERE user_id IN (SELECT DISTINCT user_id FROM user_group ug, group_plugin gp, plugins p
+ WHERE ug.group_id=gp.group_id AND gp.plugin_id=p.plugin_id AND p.plugin_name='scmsvn')");
+ if (!$res) {
+ $err .= "Error! Database Query Failed: ".db_error();
+ echo $err;
+ cron_entry(26,$err);
+ exit;
+ }
+
+ while ( $row =& db_fetch_array($res) ) {
+ if (!empty($row["unix_pw"]))
+ $password_file_contents .= $row["user_name"].":".$row["unix_pw"]."\n";
+ }
+
+ writeAccessFile($access_file, $access_file_content);
+ writePasswordFile($password_file, $password_file_contents);
+}
+
+function add2AccessFile($group_id) {
+ $result = "";
+ $project = &group_get_object($group_id);
+ $result = "[". $project->getUnixName(). ":/]\n";
+ $users = &$project->getMembers();
+ foreach($users as $user ) {
+ $perm = &$project->getPermission($user);
+ if ( $perm->isCVSWriter() ) {
+ $result.= $user->getUnixName() . "= rw\n";
+ } else if ( $perm->isCVSReader() ) {
+ $result.= $user->getUnixName() . "= r\n";
+ }
+ }
+ if ( $project->enableAnonSCM() ) {
+ $result.="anonsvn= r\n";
+ $result.="* = r\n";
+
+ }
+ $result.="\n";
+ return $result;
+}
+
+function writeAccessFile($fileName, $access_file_content) {
+ $myFile= fopen( $fileName, "w" );
+ fwrite ( $myFile, $access_file_content );
+ fclose($myFile);
+}
+
+function writePasswordFile($fileName, $password_file_contents) {
+ $myFile = fopen( $fileName, "w" );
+ fwrite ( $myFile, $password_file_contents );
+ fwrite ( $myFile, 'anonsvn:$apr1$Kfr69/..$J08mbyNpD81y42x7xlFDm.'."\n");
+ fclose($myFile);
+}
+
+cron_entry(26,$err);
+?>
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc````b``¢æÌ?00ÿ £`î°X Á|9_þ IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G &IDAT×c` Á
+&@D ¡`ÂNÀ%àá $ámF¬4 IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t2.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t2.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/images/t2.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc` Ææöþù{0sÙÁR@@e »¨ñ ¬V IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDAT×c` f¬ BD FÁ
+'À\°D +\Ø å¼Á^&ý IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/include/languages/Base.tab
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/include/languages/Base.tab 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/include/languages/Base.tab 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1833,6 +1833,16 @@
rbac_edit remove Remove
rbac_edit role Role
rbac_edit webcal Webcalendar
+rbac_edit projectadmin Project Administration
+rbac_edit frs File Release System
+rbac_edit scm Source Code Management
+rbac_edit docman Document Management
+rbac_edit forumadmin Forum Administration
+rbac_edit forum Forum
+rbac_edit trackeradmin Tracker Administration
+rbac_edit tracker Tracker
+rbac_edit pmadmin Task Administration
+rbac_edit pm Task
reporting add Add
reporting administrative Administrative
reporting area Areas
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/include/project_summary.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/include/project_summary.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/include/project_summary.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -102,7 +102,6 @@
}
$project =& group_get_object($group_id);
- // ################## forums
if (!$project || !is_object($project)) {
return 'Could Not Create Project Object';
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massadd.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massadd.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massadd.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -50,6 +50,7 @@
$sql.="WHERE status='A' and type_id='1' and lastname LIKE '$sw%' ";
} else {
$sql.="WHERE status='A' and type_id='1' and lastname ILIKE '$sw%' ";
+}
$res=db_query($sql);
$accumulated_ids = getStringFromRequest('accumulated_ids');
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massfinish.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massfinish.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/massfinish.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -53,7 +53,6 @@
$params[1] = $group_id;
plugin_hook('change_cal_permission',$params);
}
- $group_id = getIntFromRequest('group_id');
Header("Location: index.php?group_id=$group_id&feedback=Successful");
}
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/roleedit.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/roleedit.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/project/admin/roleedit.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -109,7 +109,7 @@
echo '
<p>
-<form action="'.$PHP_SELF.'?group_id='.$group_id.'&role_id='. $role_id .'" method="post">';
+<form action="'.getStringFromServer('PHP_SELF').'?group_id='.$group_id.'&role_id='. $role_id .'" method="post">';
if ($role_id != 'observer') {
echo '<strong>'._('Role Name').'</strong><br />
@@ -128,6 +128,7 @@
//
// Everything is built on the multi-dimensial arrays in the Role object
//
+$j = 0;
$keys = array_keys($role->role_values);
for ($i=0; $i<count($keys); $i++) {
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/project/request.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/project/request.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/project/request.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -57,7 +57,7 @@
?>
<p><?php echo _('You can request to join a project by clicking the submit button. An administrator will be emailed to approve or deny your request.'); ?></p>
-<form action="<?php echo "$PHP_SELF?group_id=$group_id"; ?>" method="post">
+<form action="<?php echo getStringFromServer('PHP_SELF')."?group_id=$group_id"; ?>" method="post">
<p>
<?php echo _('If you want, you can send a comment to the administrator:'); ?><br>
<textarea name="comments" rows="15" cols="60"></textarea>
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/scm_utils.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/scm_utils.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/scm_utils.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -62,9 +62,11 @@
);
}
}
+ echo '<div style="width:99%">';
}
function scm_footer() {
+ echo '</div>';
site_project_footer(array());
}
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/viewvc_utils.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/viewvc_utils.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/scm/include/viewvc_utils.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -57,14 +57,18 @@
$viewcvs_path = $GLOBALS['sys_urlroot'].'/scm/viewvc';
// this is very important ...
- if (getStringFromServer('PATH_INFO') == '') {
- $path = '/';
- } else {
- $path = getStringFromServer('PATH_INFO');
+ $path = getStringFromServer('PATH_INFO');
+ if ($path == '') {
+ $path = getStringFromServer('ORIG_PATH_INFO');
+ }
+
+ if ($path != '') {
// hack: path must always end with /
- if (strrpos($path,'/') != (strlen($path)-1)) {
+ if ($path[strlen($path)-1] != '/') {
$path .= '/';
}
+ } else {
+ $path = '/';
}
if ($repos_type == "cvs") {
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/snippet/package.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/snippet/package.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/snippet/package.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -119,7 +119,7 @@
?>
</p><?php echo _('<p>You can group together existing snippets into a package using this interface. Before creating your package, make sure all your snippets are in place and you have made a note of the snippet ID\'s.</p><ol><li>Create the package using this form.</li><li><strong>Then</strong> use the "Add Snippets to Package" link to add files to your package.</li></ol><p><span class="important">Note:</span> You can submit a new version of an existing package by browsing the library and using the link on the existing package. You should only use this page if you are submitting an entirely new package.'); ?></p>
<p/>
- <form action="<?php echo $PHP_SELF; ?>" method="post">
+ <form action="<?php echo getStringFromServer('PHP_SELF'); ?>" method="post">
<input type="hidden" name="form_key" value="<?php echo form_generate_key(); ?>"/>
<input type="hidden" name="post_changes" value="y" />
<input type="hidden" name="changes" value="First Posted Version" />
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/Theme.class
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/Theme.class 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/Theme.class 2011-02-24 17:34:30 UTC (rev 12040)
@@ -773,7 +773,7 @@
global $Language;
// display the searchmask
print '
- <form name="advancedsearch" action="'.$PHP_SELF.'" method="post">
+ <form name="advancedsearch" action="'.getStringFromServer('PHP_SELF').'" method="post">
<input type="hidden" name="search" value="1"/>
<input type="hidden" name="group_id" value="'.$group_id.'"/>
<div align="center"><br />
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc````b``¢æÌ?00ÿ £`î°X Á|9_þ IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G &IDAT×c` Á
+&@D ¡`ÂNÀ%àá $ámF¬4 IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t2.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t2.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge/images/t2.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc` Ææöþù{0sÙÁR@@e »¨ñ ¬V IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDAT×c` f¬ BD FÁ
+'À\°D +\Ø å¼Á^&ý IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc````b``¢æÌ?00ÿ £`î°X Á|9_þ IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G &IDAT×c` Á
+&@D ¡`ÂNÀ%àá $ámF¬4 IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t2.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t2.png 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/themes/gforge-classic/images/t2.png 2011-02-24 17:34:30 UTC (rev 12040)
@@ -1,4 +1,5 @@
PNG
-IHDR ó·G PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDATxÚc` Ææöþù{0sÙÁR@@e »¨ñ ¬V IEND®B`
\ No newline at end of file
+IHDR ´8Í PLTEÀÀÀR! wÿ tRNS @æØf bKGDf|d tEXtSoftware gif2png 2.4.2£^G *IDAT×c` f¬ BD FÁ
+'À\°D +\Ø å¼Á^&ý IEND®B`
\ No newline at end of file
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/admin/ind.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/admin/ind.php 2011-02-24 17:34:26 UTC (rev 12039)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/admin/ind.php 2011-02-24 17:34:30 UTC (rev 12040)
@@ -53,7 +53,7 @@
// Display existing artifact types
//
$atf = new ArtifactTypeFactory($group);
- if (!$group || !is_object($group) || $group->isError()) {
+ if (!$atf || !is_object($atf) || $atf->isError()) {
exit_error('Error','Could Not Get ArtifactTypeFactory');
}
More information about the evolvis-commits
mailing list