summaryrefslogtreecommitdiff
path: root/admin
diff options
context:
space:
mode:
authorMax Kremmel <xing@synapse.plus.com>2008-10-30 22:02:20 +0000
committerMax Kremmel <xing@synapse.plus.com>2008-10-30 22:02:20 +0000
commit7eb3cc683c243061e47d1be197dd57b964f8b4f8 (patch)
tree57be017a8584d1f3d6f31dd3f786a881e14b0e4b /admin
parent40d3263fdfce6be882fe4545bad00b7686692eef (diff)
downloadkernel-7eb3cc683c243061e47d1be197dd57b964f8b4f8.tar.gz
kernel-7eb3cc683c243061e47d1be197dd57b964f8b4f8.tar.bz2
kernel-7eb3cc683c243061e47d1be197dd57b964f8b4f8.zip
shuffle around some dependency stuff: move dep settings to schema_inc.php file since they are not related to upgrade versions, move dep methods to BitSystem to make them available on package page (we should really do something about these installer methods in kernel), add dep graph on package page for an easy overview if deps are met when a package has been activated - requireds PEAR::Image_GraphViz to be installed.
Diffstat (limited to 'admin')
-rw-r--r--admin/admin_packages_inc.php25
-rw-r--r--admin/schema_inc.php10
-rw-r--r--admin/upgrades/2.0.0.php10
3 files changed, 24 insertions, 21 deletions
diff --git a/admin/admin_packages_inc.php b/admin/admin_packages_inc.php
index e805624..87de1f3 100644
--- a/admin/admin_packages_inc.php
+++ b/admin/admin_packages_inc.php
@@ -1,6 +1,6 @@
<?php
-// $Header: /cvsroot/bitweaver/_bit_kernel/admin/admin_packages_inc.php,v 1.9 2006/10/11 07:45:46 spiderr Exp $
+// $Header: /cvsroot/bitweaver/_bit_kernel/admin/admin_packages_inc.php,v 1.10 2008/10/30 22:02:20 squareing Exp $
// Copyright (c) 2002-2003, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
@@ -13,25 +13,23 @@ $fPackage = &$_REQUEST['fPackage']; // emulate register_globals
$gBitSystem->scanPackages(
'bit_setup_inc.php', TRUE, 'all', TRUE, TRUE
);
-ksort($gBitSystem->mPackages); // So packages will be listed in alphabetical order
// make a copy of mPackages - expensive, but this is low use code
-if(!empty( $_REQUEST['features'] ) ) {
+if( !empty( $_REQUEST['features'] ) ) {
$pkgArray = $gBitSystem->mPackages;
foreach( array_keys( $pkgArray ) as $pkgKey ) {
$pkg = $pkgArray[$pkgKey];
- if( isset( $pkg['name'] ) ) {
+ if( !empty( $pkg['name'] )) {
$pkgName = strtolower( $pkg['name'] );
- #can only change already installed packages that are not required
- if ($gBitSystem->isPackageInstalled($pkgName) && empty($pkg['required']) ) {
- if( isset( $_REQUEST['fPackage'][$pkgName] ) ) {
- #mark installed and active
+ // can only change already installed packages that are not required
+ if( $gBitSystem->isPackageInstalled( $pkgName ) && empty( $pkg['required'] )) {
+ if( isset( $_REQUEST['fPackage'][$pkgName] )) {
+ // mark installed and active
$gBitSystem->storeConfig( 'package_'.$pkgName, 'y', $pkgName );
unset( $pkgArray[$pkgKey] );
- }
- else {
- #mark installed but not active
+ } else {
+ // mark installed but not active
$gBitSystem->storeConfig( 'package_'.$pkgName, 'i', $pkgName );
unset( $pkgArray[$pkgKey] );
}
@@ -43,4 +41,9 @@ if(!empty( $_REQUEST['features'] ) ) {
global $gBitInstaller;
$gBitInstaller = &$gBitSystem;
$gBitSystem->verifyInstalledPackages();
+$gBitSmarty->assign( 'dependencies', $gBitInstaller->calculateDependencies() );
+$gBitSmarty->assign( 'dependencymap', $gBitSystem->drawDependencyGraph( 'cmapx' ));
+
+// So packages will be listed in alphabetical order
+ksort( $gBitSystem->mPackages );
?>
diff --git a/admin/schema_inc.php b/admin/schema_inc.php
index 1625ae2..f9be513 100644
--- a/admin/schema_inc.php
+++ b/admin/schema_inc.php
@@ -135,6 +135,14 @@ $gBitInstaller->registerModules( $moduleHash );
$gBitInstaller->registerUserPermissions( KERNEL_PKG_NAME, array(
array('p_admin', 'Can manage users groups and permissions and all aspects of site management', 'admin', KERNEL_PKG_NAME ),
array('p_access_closed_site', 'Can access site when closed', 'admin', KERNEL_PKG_NAME)
-) );
+));
+
+// Package dependencies
+$gBitInstaller->registerDependencies( KERNEL_PKG_NAME, array(
+ 'liberty' => array( 'min' => '2.1.0' ),
+ 'users' => array( 'min' => '2.1.0' ),
+ 'themes' => array( 'min' => '2.0.0' ),
+ 'languages' => array( 'min' => '2.0.0' ),
+));
?>
diff --git a/admin/upgrades/2.0.0.php b/admin/upgrades/2.0.0.php
index 516e0e5..d86f031 100644
--- a/admin/upgrades/2.0.0.php
+++ b/admin/upgrades/2.0.0.php
@@ -1,6 +1,6 @@
<?php
/**
- * @version $Header: /cvsroot/bitweaver/_bit_kernel/admin/upgrades/2.0.0.php,v 1.2 2008/10/29 22:05:18 squareing Exp $
+ * @version $Header: /cvsroot/bitweaver/_bit_kernel/admin/upgrades/2.0.0.php,v 1.3 2008/10/30 22:02:20 squareing Exp $
*/
global $gBitInstaller;
@@ -9,13 +9,5 @@ $infoHash = array(
'version' => str_replace( '.php', '', basename( __FILE__ )),
'description' => "Set core package version number.",
);
-
$gBitInstaller->registerPackageUpgrade( $infoHash );
-
-$gBitInstaller->registerPackageDependencies( $infoHash, array(
- 'liberty' => array( 'min' => '2.1.0' ),
- 'users' => array( 'min' => '2.1.0' ),
- 'themes' => array( 'min' => '2.0.0' ),
- 'languages' => array( 'min' => '2.0.0' ),
-));
?>