<?php /** * Implementation of Info view * * @category DMS * @package SeedDMS * @license GPL 2 * @version @version@ * @author Uwe Steinmann <uwe@steinmann.cx> * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, * 2010-2012 Uwe Steinmann * @version Release: @package_version@ */ /** * Include parent class */ //require_once("class.Bootstrap.php"); /** * Class which outputs the html page for Info view * * @category DMS * @package SeedDMS * @author Markus Westphal, Malcolm Cowe, Uwe Steinmann <uwe@steinmann.cx> * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, * 2010-2012 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_View_Info extends SeedDMS_Theme_Style { function show() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; $settings = $this->params['settings']; $version = $this->params['version']; $availversions = $this->params['availversions']; $extmgr = $this->params['extmgr']; $this->htmlStartPage(getMLText("admin_tools")); $this->globalNavigation(); $this->contentStart(); $this->pageNavigation(getMLText("admin_tools"), "admin_tools"); if($availversions) { $newversion = ''; foreach($availversions as $availversion) { if($availversion[0] == 'stable') $newversion = $availversion[1]; } if($newversion > $version->version()) { $this->warningMsg(getMLText('no_current_version', array('latestversion'=>$newversion))); } } else { $this->warningMsg(getMLText('no_version_check')); } $this->rowStart(); $this->columnStart(6); $this->contentHeading(getMLText("seeddms_info")); $seedextensions = $extmgr->getExtensionConfiguration(); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th></th>"; echo "<th>".getMLText("name"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; $dbversion = $dms->getDBVersion(); echo "<tr><td></td><td>".getMLText('seeddms_version')."</td><td>".$version->version()."</td></tr>\n"; if($user->isAdmin()) { echo "<tr><td><td>".getMLText('database_schema_version')."</td><td>".$dbversion['major'].".".$dbversion['minor'].".".$dbversion['subminor']."</td></tr>\n"; foreach($seedextensions as $extname=>$extconf) { echo "<tr><td>"; if(!$settings->extensionIsDisabled($extname)) echo "<i class=\"fa fa-circle text-success\"></i> "; else echo "<i class=\"fa fa-circle text-danger text-error\"></i> "; echo "</td><td>".$extname."<br />".$extconf['title']."</td><td>".$extconf['version']."</td>"; echo "</tr>\n"; } } echo "</tbody>\n</table>\n"; $this->columnEnd(); $this->columnStart(6); if($user->isAdmin()) { $this->contentHeading(getMLText("php_info")); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th>".getMLText("name"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; echo "<tr><td>PHP</td><td>".phpversion()."</td></tr>\n"; echo "<tr><td>Path to php.ini</td><td>".php_ini_loaded_file()."</td></tr>\n"; echo "</tbody>\n</table>\n"; $this->contentHeading(getMLText("installed_php_extensions")); $phpextensions = get_loaded_extensions(false); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th>".getMLText("name"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; foreach($phpextensions as $extname) echo "<tr><td>".$extname."</td><td>"."</td></tr>\n"; echo "</tbody>\n</table>\n"; $this->contentHeading(getMLText("missing_php_extensions")); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th>".getMLText("name"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; $requiredext = array('zip', 'xml', 'xsl', 'json', 'intl', 'fileinfo', 'mbstring', 'curl'); foreach(array_diff($requiredext, $phpextensions) as $extname) echo "<tr><td>".$extname."</td><td>"."</td></tr>\n"; echo "</tbody>\n</table>\n"; $this->contentHeading(getMLText("missing_php_functions_and_classes")); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th>".getMLText("name"); echo "<th>".getMLText("missing_func_class_note"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; foreach(array('proc_open') as $funcname) { if(!function_exists($funcname)) { echo "<tr><td>".$funcname."</td><td>".getMLText('func_'.$funcname."_missing")."</td></tr>"; } } foreach(array('finfo') as $classname) { if(!class_exists($classname)) { echo "<tr><td>".$classname."</td><td>".getMLText('class_'.$classname."_missing")."</td></tr>"; } } echo "</tbody>\n</table>\n"; if(function_exists('apache_get_modules')) { $this->contentHeading(getMLText("installed_apache_extensions")); $apacheextensions = apache_get_modules(); echo "<table class=\"table table-condensed table-sm\">\n"; echo "<thead>\n<tr>\n"; echo "<th>".getMLText("name"); echo "</th>\n"; echo "</tr>\n</thead>\n<tbody>\n"; foreach($apacheextensions as $extname) echo "<tr><td>".$extname."</td><td>"."</td></tr>\n"; echo "</tbody>\n</table>\n"; } } $this->columnEnd(); $this->rowEnd(); $this->contentEnd(); $this->htmlEndPage(); } /* }}} */ }