. // // // // See ../LICENSE.TXT file for more information. // // -------------------------------------------------------------------------- // // LICENSING ADDENDUM: // // Programs in the SPP (Special Programs) subfolder are coded extensions of // // the open source software fx-project. These programs are offered for sale // // by the manufacturer FeRox Management Consulting GmbH & Co. KG and require // // a valid key for execution. It is forbidden to resell these programs // // and/or keys or to pass them on free of charge or use them without the // // express written permission of FeRox Management Consulting GmbH & Co. KG. // //////////////////////////////////////////////////////////////////////////////// /** * @file * Main program to create the html startup layout from a template. * The html javascript then calls via AJAX the main control program. * * @author FeRox Management Consulting GmbH & Co. KG, Adolf-Langer-Weg 11a, D-94036 Passau (Germany) * @version 21.2 */ $GLOBALS['__loaded_'.basename(__FILE__)]=true; //////////////////////////////////////////////////////////////////////////////// // Special debug mode //////////////////////////////////////////////////////////////////////////////// $GLOBALS['__debug']=array('__DBG'=>0); // Debug this file? (Uncomment the next line) //$GLOBALS['__debug'][__FILE__]=3; // Display the debug selector (false or true) $GLOBALS['__debug']['debug_selector']=true; // Send these additional headers $__headers=array( 'Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT', // current date, because it is created differently ever time dynamically 'Cache-Control: no-cache, must-revalidate', // HTTP/1.1 'Pragma: no-cache' // HTTP/1.0 ); // Search for and include "basics.inc" to set all definitions, variables and necessary dynamic paths $__pnm='basics.inc'; if(!isset($GLOBALS['__loaded_'.$__pnm])) { $__prg=$__pnm; $__pfc=0; while(($__pfc < 10) && !file_exists($__prg)) { $__pfc++; $__prg='../'.$__prg; } if(file_exists($__prg)) { require($__prg); } else die('

fx-project - ERROR: Necessary file "'.$__pnm.'" not found!

'); } // Load HTML template $__htf='index_template.html'; $html=fxLoad($__htf); if(!$html || !strlen($html)) die('

fx-project - ERROR: Necessary HTML template "'.$__htf.'" not found!

'); ob_start(); // Get start texts in current language $lang=fxGetLanguage(0, false); $stla=fxGetLanguageTexts('start',true,false,$lang,false); fxDebug($stla,'$stla: fxGetLanguageTexts(\'start\')',2); // FXP javascript file (main javascript function collection) $jscfxp=$GLOBALS['jscpath'].'fxp.js'; // EXT javascript file (extended javascript function collection) $jscext=''; $jscextfile=$GLOBALS['jscpath'].'ext.js'; if(file_exists($jscextfile)) $jscext=' '; // Replace certain placeholders in the HTML template $_tra=array( 'TITLE' => 'fx-project '.$v_type.' V'.$v_fxp, 'FXPTYPE' => $v_type, 'FXPTCOL' => $v_tcol, 'VERSION' => $v_fxp, 'CHARSET' => FXP_CHARSET, 'DATE' => substr($GLOBALS['datetime'],0,4).'-'.substr($GLOBALS['datetime'],4,2).'-'.substr($GLOBALS['datetime'],6,2).'T00:00:00+00:00', 'LANGUAGE' => $lang, 'LANGUAGE2' => substr('0'.$lang,-2), 'CSS_DEFAULT' => $GLOBALS['cssfile'], 'FAVICON' => fxGetFavicon(), 'SEO_DESCRIPTION' => 'FeRox Management Consulting GmbH & Co. KG: Open Source Project Management Software fx-project V'.$v_fxp, 'SEO_URL' => $GLOBALS['__server_array']['urls'], 'SEO_IMAGE' => $GLOBALS['__server_array']['url'].'GFX/fxp_image.png', 'FXPLOGO' => fxGetLogo('big'), 'FXPLOGOBAR' => fxGetLogo('small'), 'SCDISPLAY' => ((isset($GLOBALS['spppath']) && strlen($GLOBALS['spppath']) && file_exists($GLOBALS['spppath'].'htm2png.exe'))?'block':'none'), 'LTS' => $GLOBALS['lts'], 'IDATA' => $GLOBALS['locseskey'].'|'.$GLOBALS['lts'].'|'.$lang.'|'.$GLOBALS['fxpglobals']['design'].'|'.$GLOBALS['fxpglobals']['zoom'], 'SESS_UPN' => ini_get('session.upload_progress.name'), 'JSC_PREFIX' => fxf_jsFunctionPrefix(), 'JSC_FXP' => $jscfxp.'?'.filemtime($jscfxp), 'JSC_EXT' => $jscext ); // ...as well as all subpaths $_tra['MAIN_PATH']=$GLOBALS['mainpath']; if(fxIsArray($GLOBALS['_subpath_array'])) { foreach($GLOBALS['_subpath_array'] as $spname => $sppath) $_tra[$spname.'_PATH']=$sppath; } // ...as well as start texts in current language if(fxIsArray($stla)) { foreach($stla as $variable => $text) { $fc=substr($text,0,1); if(($fc == '^') || ($fc == '~')) $text=substr($text,1); $_tra[$variable]=$text; } } // ...as well as all javascript separators foreach($GLOBALS['_divstr'] as $jdsc => $jdss) $_tra['divstr_'.$jdsc]=$jdss; // ...as well as the current filter status (0=off + 1=on) $_tra['fltstat']=(int)$GLOBALS['fxpglobals']['setfilter']; // ...as well as the debug selector? if($GLOBALS['__debug']['debug_selector']) { $_tra['debugselector'] = '
'; $_tra['debugselector'] .= '
'; $_tra['debugselector'] .= '
'.$GLOBALS['__debug']['__DBG'].'
'; $_tra['debugselector'] .= '
'; } fxDebug($_tra,'$_tra',2); foreach($_tra as $placeholder => $text) $html=str_ireplace('', $text, $html); // Work area output $output=ob_get_contents(); ob_end_clean(); $html=str_ireplace('', $output, $html); // Display adjusted HTML echo($html); ?>