<?php
/** FusionForge CPOLD plugin
*
- * Copyright 2009, Roland Mas
+ * Copyright 2009-2011, Roland Mas
*
* This file is part of FusionForge.
*
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
+forge_define_config_item ('default_server', 'scmcpold', forge_get_config ('web_host')) ;
+forge_define_config_item ('repos_path', 'scmcpold', forge_get_config('chroot').'/scmrepos/cpold') ;
+
class CpoldPlugin extends SCMPlugin {
function CpoldPlugin () {
global $gfconfig;
$this->hooks[] = 'scm_generate_snapshots' ;
$this->hooks[] = 'scm_cpold_do_nothing' ;
- require $gfconfig.'plugins/scmcpold/config.php' ;
-
- $this->default_cpold_server = $default_cpold_server ;
- if (isset ($cpold_root)) {
- $this->cpold_root = $cpold_root;
- } else {
- $this->cpold_root = $GLOBALS['sys_chroot'].'/scmrepos/cpold' ;
- }
-
$this->register () ;
}
}
function getDefaultServer() {
- return $this->default_cpold_server ;
+ return forge_get_config('default_server', 'scmcpold');
}
function getBlurb () {
$u =& user_get_object(user_getid()) ;
$d = $u->getUnixName() ;
$b = _('<p><b>Developer CPOLD Access via SSH</b></p><p>Only project developers can access the CPOLD tree via this method. SSH must be installed on your client machine. Enter your site password when prompted.</p>');
- $b .= '<p><tt>scp -r '.$d.'@' . $project->getSCMBox() . ':'. $this->cpold_root .'/'. $project->getUnixName().'/ .</tt></p>' ;
+ $b .= '<p><tt>scp -r '.$d.'@' . $project->getSCMBox() . ':'. forge_get_config('repos_path', 'scmcpold') .'/'. $project->getUnixName().'/ .</tt></p>' ;
} else {
$b = _('<p><b>Developer CPOLD Access via SSH</b></p><p>Only project developers can access the CPOLD tree via this method. SSH must be installed on your client machine. Substitute <i>developername</i> with the proper value. Enter your site password when prompted.</p>');
- $b .= '<p><tt>scp -r <i>'._('developername').'</i>@' . $project->getSCMBox() . ':'. $this->cpold_root .'/'. $project->getUnixName().'/ .</tt></p>' ;
+ $b .= '<p><tt>scp -r <i>'._('developername').'</i>@' . $project->getSCMBox() . ':'. forge_get_config('repos_path', 'scmcpold') .'/'. $project->getUnixName().'/ .</tt></p>' ;
}
return $b ;
}
return false;
}
- $repo = $this->cpold_root . '/' . $project->getUnixName() ;
+ $repo = forge_get_config('repos_path', 'scmcpold') . '/' . $project->getUnixName() ;
$unix_group = 'scm_' . $project->getUnixName() ;
system ("mkdir -p $repo") ;
return false;
}
- $toprepo = $this->cpold_root ;
+ $toprepo = forge_get_config('repos_path', 'scmcpold') ;
$repo = $toprepo . '/' . $project->getUnixName() ;
if (!is_dir ($repo)) {