Web-based bug tracker
2008-01-23 06:25For one small (web)project I need bug tracker / issue tracker / workflow system / name-is-as-you-wish tool. (read more…)
For one small (web)project I need bug tracker / issue tracker / workflow system / name-is-as-you-wish tool. (read more…)
This is mall manual describing steps to integrate Vanilla forum “to the middle” of Wordpress blog: surround forum engine output with Wordpress header, footer, sidebars, etc.
This must be done after you will read and done “official” Wordpress integration manuall for Vanilla. This will allow two apps use the same users base and same authorization.
There are solution existing already on
Vanilla community forum, but my is slightly more elegant way. The benefit ot this solution is slightly better performance — no connection closing and reopening.
Steps:
(1) Go to /library/Framework/ folder. There are file ‘Framework.Class.MySQL.php’ file. Copy it to the same folder, but with name ‘Framework.Class.WordpressDB.php’.
(2) Edit this new file:
(2.1) replace ‘class MySQL extends Database {’ line with:
class WordpressDB extends Database {
(2.2) replace function GetConnection() with this one:
function GetConnection() {
## use DB connection established by WordPress
global $wpdb;
if( $wpdb->dbh ){
$this->Connection = $wpdb->dbh;
} else {
$this->Context->ErrorManager->AddError($this->Context, $this->Name, ‘GetConnection’, ‘$wpdb->dbh does not exist, Wordpress is not initialised:’, $php_errormsg);
}
return $this->Connection;
}
(2.3) replace function MySql(&$Context) with this:
function WordpressDB(&$Context) {
$this->Name = ‘WordpressDB’;
$this->Context = &$Context;
}
(3) in your /conf/settings.php or your /conf/database.php add line:
$Configuration['DATABASE_SERVER'] = ‘WordpressDB’;
(4) go to database and comment out all strings tarting with $Configuration['DATABASE_ -- you will not need them anymore.
If now Vanilla works, create new theme for it and customize it: replace some Vanilla code with WP calls like get_header(), get_footer(), etc.
If you need to change Vanilla templates rendering order, use $Configuration['CONTROL_POSITION_ (...) variables. In my /conf/settings.php file there are two such lines:
$Configuration['CONTROL_POSITION_MENU'] = '598';
$Configuration['CONTROL_POSITION_PANEL'] = ‘599′;
Note that both engines will co-exist in the same space, so conflicts could happens. For example, if you have ‘Role Manager’ Wordpress plugin installed, it will conflict with Vanilla object with the same name.
I start to think about some ‘groupware’ system for one of my projects. So here is different things that I found on the net.
From phpGeek.com:
There’s a pretty good chance that your app or working prototype doesn’t do much with workflow management or discrete permissions. (…)
What usually happens at that point is that developers start describing the features of the wheel they’re about to reinvent. Poorly. See, there are a LOT of issues in both areas that, unless you’ve done a lot of related development, you probably haven’t thought of.
Good article (and some PHP workflow toolkit) by TonyMartson
phpGACL (simple & powerful “drop in” permission system on PHP)
http://workflow.wordpress.com/
YA workflow definition (and Kontinuum software also)
dotProject.net (Open Source php-based Project Management tool)
Advanced CAMP - Enterprise Workflow 2nd day
Just two links (not even looked on it yet):