assign( 'next_step',$step ); /** * simple_set_value */ function simple_set_value( $package, $feature ) { global $_REQUEST, $gBitSystem, $gBitSmarty; if( isset( $_REQUEST[$feature] ) ) { $gBitSystem->storeConfig( $feature, $_REQUEST[$feature], $package ); $gBitSmarty->assign( $feature, $_REQUEST[$feature] ); } } // pass all package data to template $gBitSmarty->assign( 'schema', $gBitInstaller->mPackages ); // settings that aren't just toggles $formInstallValues = [ 'bit_index' => 'kernel', 'kernel_server_name' => 'kernel', 'site_title' => 'kernel', 'site_slogan' => 'kernel', 'bitlanguage' => 'languages', ]; $processors = []; if( extension_loaded( 'gd' ) ) { $processors['gd'] = 'GD Library [php-gd]'; } if( extension_loaded( 'imagick' ) ) { $processors['imagick'] = 'Image Magick [php-imagick] - recommended'; } if( count( $processors ) > 0 ) { $gBitSmarty->assign( 'processors', $processors ); $formInstallValues['image_processor'] = 'liberty'; } // list of available site styles $subDirs = [ 'style_info', 'alternate' ]; $stylesList = $gBitThemes->getStylesList( '', TRUE, $subDirs ); $gBitSmarty->assign( "stylesList", $stylesList ); // get list of available languages $languages = []; $languages = $gBitLanguage->listLanguages(); $gBitSmarty->assign("languages",$languages ); // process form if( isset( $_REQUEST['bit_settings'] ) ) { foreach( $formInstallValues as $item => $package) { simple_set_value( $package, $item ); } if( empty( $_REQUEST['bitlanguage'] ) ) { $_REQUEST['bitlanguage'] = 'en'; } if( !empty( $_REQUEST["site_style"] ) ) { $gBitSystem->storeConfig( 'style', $_REQUEST["site_style"], THEMES_PKG_NAME ); }; if( !array_key_exists( $_REQUEST['bitlanguage'], $languages ) ) { $languages[$_REQUEST['bitlanguage']] = ''; } $gBitLanguage->setLanguage( $_REQUEST['bitlanguage'] ); $gBitSmarty->assign( "siteLanguage",$languages[$_REQUEST['bitlanguage']] ); // advance a step in the installer $app = '_done'; $gBitSmarty->assign( 'next_step',$step + 1 ); } elseif( isset( $_REQUEST['skip'] ) ) { $goto = $step + 1; header( "Location: ".INSTALL_PKG_URL."install.php?step=$goto" ); } // get list of foreign packages that are ready to be installed // @TODO this isn't working yet, since the info stuff isn't read from schema_inc.php on this page $foreign_packages = []; foreach( $gBitSystem->mPackages as $package ) { if( isset( $package['info']['install'] ) ) { $foreign_packages[] = $package; } } $gBitSmarty->assign( "foreign_packages", $foreign_packages );