Esempio n. 1
0
    /**
     * Method to generate all the reportconfiguration.
     *
     * @return    string
     * @since    1.6
     */
    public function getSystemReport()
    {
        $kunena_db = JFactory::getDBO();
        if (!$this->app->getCfg('smtpuser')) {
            $jconfig_smtpuser = '******';
        } else {
            $jconfig_smtpuser = $this->app->getCfg('smtpuser');
        }
        if ($this->app->getCfg('ftp_enable')) {
            $jconfig_ftp = 'Enabled';
        } else {
            $jconfig_ftp = 'Disabled';
        }
        if ($this->app->getCfg('sef')) {
            $jconfig_sef = 'Enabled';
        } else {
            $jconfig_sef = 'Disabled';
        }
        if ($this->app->getCfg('sef_rewrite')) {
            $jconfig_sef_rewrite = 'Enabled';
        } else {
            $jconfig_sef_rewrite = 'Disabled';
        }
        if (is_file(JPATH_ROOT . '/.htaccess')) {
            $htaccess = 'Exists';
        } else {
            $htaccess = 'Missing';
        }
        if (ini_get('register_globals')) {
            $register_globals = '[u]register_globals:[/u] [color=#FF0000]On[/color]';
        } else {
            $register_globals = '[u]register_globals:[/u] Off';
        }
        if (ini_get('safe_mode')) {
            $safe_mode = '[u]safe_mode:[/u] [color=#FF0000]On[/color]';
        } else {
            $safe_mode = '[u]safe_mode:[/u] Off';
        }
        if (extension_loaded('mbstring')) {
            $mbstring = '[u]mbstring:[/u] Enabled';
        } else {
            $mbstring = '[u]mbstring:[/u] [color=#FF0000]Not installed[/color]';
        }
        if (extension_loaded('gd')) {
            $gd_info = gd_info();
            $gd_support = '[u]GD:[/u] ' . $gd_info['GD Version'];
        } else {
            $gd_support = '[u]GD:[/u] [color=#FF0000]Not installed[/color]';
        }
        $maxExecTime = ini_get('max_execution_time');
        $maxExecMem = ini_get('memory_limit');
        $fileuploads = ini_get('upload_max_filesize');
        $kunenaVersionInfo = KunenaVersion::getVersionHTML();
        // Get Kunena default template
        $ktemplate = KunenaFactory::getTemplate();
        $ktemplatedetails = $ktemplate->getTemplateDetails();
        $jtemplatedetails = $this->_getJoomlaTemplate();
        $joomlamenudetails = $this->_getJoomlaMenuDetails();
        $collation = $this->_getTablesCollation();
        $kconfigsettings = $this->_getKunenaConfiguration();
        // Get Joomla! languages installed
        $joomlalanguages = $this->_getJoomlaLanguagesInstalled();
        // Check if Mootools plugins and others kunena plugins are enabled, and get the version of this modules
        $plg['jfirephp'] = $this->getExtensionVersion('system/jfirephp', 'System - JFirePHP');
        $plg['ksearch'] = $this->getExtensionVersion('search/kunena', 'Search - Kunena Search');
        $plg['kdiscuss'] = $this->getExtensionVersion('content/kunenadiscuss', 'Content - Kunena Discuss');
        $plg['jxfinderkunena'] = $this->getExtensionVersion('finder/plg_jxfinder_kunena', 'Finder - Kunena Posts');
        $plg['kjomsocialmenu'] = $this->getExtensionVersion('community/kunenamenu', 'JomSocial - My Kunena Forum Menu');
        $plg['kjomsocialmykunena'] = $this->getExtensionVersion('community/mykunena', 'JomSocial - My Kunena Forum Posts');
        $plg['kjomsocialgroups'] = $this->getExtensionVersion('community/kunenagroups', 'JomSocial - Kunena Groups');
        foreach ($plg as $id => $item) {
            if (empty($item)) {
                unset($plg[$id]);
            }
        }
        if (!empty($plg)) {
            $plgtext = '[quote][b]Plugins:[/b] ' . implode(' | ', $plg) . ' [/quote]';
        } else {
            $plgtext = '[quote][b]Plugins:[/b] None [/quote]';
        }
        $mod = array();
        $mod['kunenalatest'] = $this->getExtensionVersion('mod_kunenalatest', 'Kunena Latest');
        $mod['kunenastats'] = $this->getExtensionVersion('mod_kunenastats', 'Kunena Stats');
        $mod['kunenalogin'] = $this->getExtensionVersion('mod_kunenalogin', 'Kunena Login');
        $mod['kunenasearch'] = $this->getExtensionVersion('mod_kunenasearch', 'Kunena Search');
        foreach ($mod as $id => $item) {
            if (empty($item)) {
                unset($mod[$id]);
            }
        }
        if (!empty($mod)) {
            $modtext = '[quote][b]Modules:[/b] ' . implode(' | ', $mod) . ' [/quote]';
        } else {
            $modtext = '[quote][b]Modules:[/b] None [/quote]';
        }
        $thirdparty = array();
        $thirdparty['aup'] = $this->getExtensionVersion('com_alphauserpoints', 'AlphaUserPoints');
        $thirdparty['cb'] = $this->getExtensionVersion('com_comprofiler', 'CommunityBuilder');
        $thirdparty['jomsocial'] = $this->getExtensionVersion('com_community', 'Jomsocial');
        $thirdparty['uddeim'] = $this->getExtensionVersion('com_uddeim', 'UddeIM');
        foreach ($thirdparty as $id => $item) {
            if (empty($item)) {
                unset($thirdparty[$id]);
            }
        }
        if (!empty($thirdparty)) {
            $thirdpartytext = '[quote][b]Third-party components:[/b] ' . implode(' | ', $thirdparty) . ' [/quote]';
        } else {
            $thirdpartytext = '[quote][b]Third-party components:[/b] None [/quote]';
        }
        $sef = array();
        $sef['sh404sef'] = $this->getExtensionVersion('com_sh404sef', 'sh404sef');
        $sef['joomsef'] = $this->getExtensionVersion('com_joomsef', 'ARTIO JoomSEF');
        $sef['acesef'] = $this->getExtensionVersion('com_acesef', 'AceSEF');
        foreach ($sef as $id => $item) {
            if (empty($item)) {
                unset($sef[$id]);
            }
        }
        if (!empty($sef)) {
            $seftext = '[quote][b]Third-party SEF components:[/b] ' . implode(' | ', $sef) . ' [/quote]';
        } else {
            $seftext = '[quote][b]Third-party SEF components:[/b] None [/quote]';
        }
        // Get integration settings
        $integration_settings = $this->getIntegrationSettings();
        $report = '[confidential][b]Joomla! version:[/b] ' . JVERSION . ' [b]Platform:[/b] ' . $_SERVER['SERVER_SOFTWARE'] . ' (' . $_SERVER['SERVER_NAME'] . ') [b]PHP version:[/b] ' . phpversion() . ' | ' . $safe_mode . ' | ' . $register_globals . ' | ' . $mbstring . ' | ' . $gd_support . ' | [b]MySQL version:[/b] ' . $kunena_db->getVersion() . ' | [b]Base URL:[/b]' . JUri::root() . '[/confidential][quote][b]Database collation check:[/b] ' . $collation . '
		[/quote][quote][b]Joomla! SEF:[/b] ' . $jconfig_sef . ' | [b]Joomla! SEF rewrite:[/b] ' . $jconfig_sef_rewrite . ' | [b]FTP layer:[/b] ' . $jconfig_ftp . ' |
	    [confidential][b]Mailer:[/b] ' . $this->app->getCfg('mailer') . ' | [b]Mail from:[/b] ' . $this->app->getCfg('mailfrom') . ' | [b]From name:[/b] ' . $this->app->getCfg('fromname') . ' | [b]SMTP Secure:[/b] ' . $this->app->getCfg('smtpsecure') . ' | [b]SMTP Port:[/b] ' . $this->app->getCfg('smtpport') . ' | [b]SMTP User:[/b] ' . $jconfig_smtpuser . ' | [b]SMTP Host:[/b] ' . $this->app->getCfg('smtphost') . ' [/confidential] [b]htaccess:[/b] ' . $htaccess . ' | [b]PHP environment:[/b] [u]Max execution time:[/u] ' . $maxExecTime . ' seconds | [u]Max execution memory:[/u] ' . $maxExecMem . ' | [u]Max file upload:[/u] ' . $fileuploads . ' [/quote] [quote][b]Kunena menu details[/b]:[spoiler] ' . $joomlamenudetails . '[/spoiler][/quote][quote][b]Joomla default template details :[/b] ' . $jtemplatedetails->name . ' | [u]author:[/u] ' . $jtemplatedetails->author . ' | [u]version:[/u] ' . $jtemplatedetails->version . ' | [u]creationdate:[/u] ' . $jtemplatedetails->creationdate . ' [/quote][quote][b]Kunena default template details :[/b] ' . $ktemplatedetails->name . ' | [u]author:[/u] ' . $ktemplatedetails->author . ' | [u]version:[/u] ' . $ktemplatedetails->version . ' | [u]creationdate:[/u] ' . $ktemplatedetails->creationDate . ' [/quote][quote] [b]Kunena version detailed:[/b] ' . $kunenaVersionInfo . '
	    | [u]Kunena detailed configuration:[/u] [spoiler] ' . $kconfigsettings . '[/spoiler]| [u]Kunena integration settings:[/u][spoiler] ' . implode(' ', $integration_settings) . '[/spoiler]| [u]Joomla! detailed language files installed:[/u][spoiler] ' . $joomlalanguages . '[/spoiler][/quote]' . $thirdpartytext . ' ' . $seftext . ' ' . $plgtext . ' ' . $modtext;
        return $report;
    }
Esempio n. 2
0
	/**
	 * Method to generate all the reportconfiguration.
	 *
	 * @return	string
	 * @since	1.6
	 */
	public function getSystemReport () {
		$kunena_app = JFactory::getApplication ();
		$kunena_db = JFactory::getDBO ();

		$JVersion = new JVersion();
		$jversion = $JVersion->getLongVersion();

		if($kunena_app->getCfg('legacy' )) {
			$jconfig_legacy = '[color=#FF0000]Enabled[/color]';
		} else {
			$jconfig_legacy = 'Disabled';
		}
		if(!$kunena_app->getCfg('smtpuser' )) {
			$jconfig_smtpuser = '******';
		} else {
			$jconfig_smtpuser = $kunena_app->getCfg('smtpuser' );
		}
		if($kunena_app->getCfg('ftp_enable' )) {
			$jconfig_ftp = 'Enabled';
		} else {
			$jconfig_ftp = 'Disabled';
		}
		if($kunena_app->getCfg('sef' )) {
			$jconfig_sef = 'Enabled';
		} else {
			$jconfig_sef = 'Disabled';
		}
		if($kunena_app->getCfg('sef_rewrite' )) {
			$jconfig_sef_rewrite = 'Enabled';
		} else {
			$jconfig_sef_rewrite = 'Disabled';
		}

		if (file_exists(JPATH_ROOT.'/.htaccess')) {
			$htaccess = 'Exists';
		} else {
			$htaccess = 'Missing';
		}

		if(ini_get('register_globals')) {
			$register_globals = '[u]register_globals:[/u] [color=#FF0000]On[/color]';
		} else {
			$register_globals = '[u]register_globals:[/u] Off';
		}
		if(ini_get('safe_mode')) {
			$safe_mode = '[u]safe_mode:[/u] [color=#FF0000]On[/color]';
		} else {
			$safe_mode = '[u]safe_mode:[/u] Off';
		}
		if(extension_loaded('mbstring')) {
			$mbstring = '[u]mbstring:[/u] Enabled';
		} else {
			$mbstring = '[u]mbstring:[/u] [color=#FF0000]Not installed[/color]';
		}
		if(extension_loaded('gd')) {
			$gd_info = gd_info ();
			$gd_support = '[u]GD:[/u] '.$gd_info['GD Version'] ;
		} else {
			$gd_support = '[u]GD:[/u] [color=#FF0000]Not installed[/color]';
		}
		$maxExecTime = ini_get('max_execution_time');
		$maxExecMem = ini_get('memory_limit');
		$fileuploads = ini_get('upload_max_filesize');
		$kunenaVersionInfo = KunenaVersion::getVersionHTML ();

		// Get Kunena default template
		$ktemplate = KunenaFactory::getTemplate();
		$ktempaltedetails = $ktemplate->getTemplateDetails();

		//get all the config settings for Kunena
		$kconfig = $this->_getKunenaConfiguration();

		$jtemplatedetails = $this->_getJoomlaTemplate($JVersion);

		$joomlamenudetails = $this->_getJoomlaMenuDetails($JVersion);

		$collation = $this->_getTablesCollation();

		$kconfigsettings = $this->_getKunenaConfiguration();

		// Check if Mootools plugins and others kunena plugins are enabled, and get the version of this modules
		jimport( 'joomla.plugin.helper' );

		if ( JPluginHelper::isEnabled('system', 'mtupgrade') ) 	$mtupgrade = '[u]System - Mootools Upgrade:[/u] Enabled';
		else $mtupgrade = '[u]System - Mootools Upgrade:[/u] Disabled';

		if ( JPluginHelper::isEnabled('system', 'mootools12') ) $plg_mt = '[u]System - Mootools12:[/u] Enabled';
		else $plg_mt = '[u]System - Mootools12:[/u] Disabled';

		$plg['jfirephp'] = $this->_checkThirdPartyVersion('jfirephp', 'jfirephp', 'JFirePHP', 'plugins/system', 'system', 0, 0, 1);
		$plg['ksearch'] = $this->_checkThirdPartyVersion('kunenasearch', 'kunenasearch', 'Kunena Search', 'plugins/search', 'search', 0, 0, 1);
		$plg['kdiscuss'] = $this->_checkThirdPartyVersion('kunenadiscuss', 'kunenadiscuss', 'Kunena Discuss', 'plugins/content', 'content', 0, 0, 1);
		$plg['jxfinderkunena'] = $this->_checkThirdPartyVersion('plg_jxfinder_kunena', 'plg_jxfinder_kunena', 'Finder Kunena Posts', 'plugins/finder', 'finder', 0, 0, 1);
		$plg['kjomsocialmenu'] = $this->_checkThirdPartyVersion('kunenamenu', 'kunenamenu', 'My Kunena Forum Menu', 'plugins/community', 'community', 0, 0, 1);
		$plg['kjomsocialmykunena'] = $this->_checkThirdPartyVersion('mykunena', 'mykunena', 'My Kunena Forum Posts', 'plugins/community', 'community', 0, 0, 1);
		$plg['kjomsocialgroups'] = $this->_checkThirdPartyVersion('kunenagroups', 'kunenagroups', 'Kunena Groups', 'plugins/community', 'community', 0, 0, 1);
		foreach ($plg as $id=>$item) {
			if (empty($item)) unset ($plg[$id]);
		}
		if (!empty($plg)) $plgtext = '[quote][b]Plugins:[/b] ' . implode(' | ', $plg) . ' [/quote]';
		else $plgtext = '[quote][b]Plugins:[/b] None [/quote]';

		$mod = array();
		$mod['kunenalatest'] = $this->_checkThirdPartyVersion('mod_kunenalatest', 'mod_kunenalatest', 'Kunena Latest', 'modules/mod_kunenalatest', null, 0, 1, 0);
		$mod['kunenastats'] = $this->_checkThirdPartyVersion('mod_kunenastats', 'mod_kunenastats', 'Kunena Stats', 'modules/mod_kunenastats', null, 0, 1, 0);
		$mod['kunenalogin'] = $this->_checkThirdPartyVersion('mod_kunenalogin', 'mod_kunenalogin', 'Kunena Login', 'modules/mod_kunenalogin', null, 0, 1, 0);
		$mod['kunenasearch'] = $this->_checkThirdPartyVersion('mod_kunenasearch', 'mod_kunenasearch', 'Kunena Search', 'modules/mod_kunenasearch', null, 0, 1, 0);
		foreach ($mod as $id=>$item) {
			if (empty($item)) unset ($mod[$id]);
		}
		if (!empty($mod)) $modtext = '[quote][b]Modules:[/b] ' . implode(' | ', $mod) . ' [/quote]';
		else $modtext = '[quote][b]Modules:[/b] None [/quote]';

		$thirdparty = array();
		if ($JVersion->RELEASE == '1.5') {
			$thirdparty['aup'] = $this->_checkThirdPartyVersion('alphauserpoints', 'alphauserpoints', 'AlphaUserPoints', 'components/com_alphauserpoints', null, 1, 0, 0);
			$thirdparty['cb'] = $this->_checkThirdPartyVersion('comprofiler', 'comprofilej' , 'CommunityBuilder', 'components/com_comprofiler', null, 1, 0, 0);
			$thirdparty['jomsocial'] = $this->_checkThirdPartyVersion('community', 'community', 'Jomsocial', 'components/com_community', null, 1, 0, 0);
			$thirdparty['uddeim'] = $this->_checkThirdPartyVersion('uddeim', 'uddeim.j15', 'UddeIm', 'components/com_uddeim', null, 1, 0, 0);
		} else {
			$thirdparty['aup'] = $this->_checkThirdPartyVersion('alphauserpoints', 'manifest', 'AlphaUserPoints', 'components/com_alphauserpoints', null, 1, 0, 0);
			$thirdparty['cb'] = $this->_checkThirdPartyVersion('comprofiler', 'comprofileg' , 'CommunityBuilder', 'components/com_comprofiler', null, 1, 0, 0);
			$thirdparty['jomsocial'] = $this->_checkThirdPartyVersion('community', 'community', 'Jomsocial', 'components/com_community', null, 1, 0, 0);
			$thirdparty['uddeim'] = $this->_checkThirdPartyVersion('uddeim', 'uddeim', 'UddeIm', 'components/com_uddeim', null, 1, 0, 0);
		}
		foreach ($thirdparty as $id=>$item) {
			if (empty($item)) unset ($thirdparty[$id]);
		}
		if (!empty($thirdparty)) $thirdpartytext = '[quote][b]Third-party components:[/b] ' . implode(' | ', $thirdparty) . ' [/quote]';
		else $thirdpartytext = '[quote][b]Third-party components:[/b] None [/quote]';

		$sef = array();
		$sef['sh404sef'] = $this->_checkThirdPartyVersion('sh404sef', 'sh404sef', 'sh404sef', 'components/com_sh404sef', null, 1, 0, 0);
		$sef['joomsef'] = $this->_checkThirdPartyVersion('joomsef', 'sef', 'ARTIO JoomSEF', 'components/com_sef', null, 1, 0, 0);
		$sef['acesef'] = $this->_checkThirdPartyVersion('acesef', 'acesef', 'AceSEF', 'components/com_acesef', null, 1, 0, 0);
		foreach ($sef as $id=>$item) {
			if (empty($item)) unset ($sef[$id]);
		}
		if (!empty($sef)) $seftext = '[quote][b]Third-party SEF components:[/b] ' . implode(' | ', $sef) . ' [/quote]';
		else $seftext = '[quote][b]Third-party SEF components:[/b] None [/quote]';

		$report = '[confidential][b]Joomla! version:[/b] '.$jversion.' [b]Platform:[/b] '.$_SERVER['SERVER_SOFTWARE'].' ('
	    .$_SERVER['SERVER_NAME'].') [b]PHP version:[/b] '.phpversion().' | '.$safe_mode.' | '.$register_globals.' | '.$mbstring
	    .' | '.$gd_support.' | [b]MySQL version:[/b] '.$kunena_db->getVersion().'[/confidential][quote][b]Database collation check:[/b] '.$collation.'
		[/quote][quote][b]Legacy mode:[/b] '.$jconfig_legacy.' | [b]Joomla! SEF:[/b] '.$jconfig_sef.' | [b]Joomla! SEF rewrite:[/b] '
	    .$jconfig_sef_rewrite.' | [b]FTP layer:[/b] '.$jconfig_ftp.' |[confidential][b]Mailer:[/b] '.$kunena_app->getCfg('mailer' ).' | [b]Mail from:[/b] '.$kunena_app->getCfg('mailfrom' ).' | [b]From name:[/b] '.$kunena_app->getCfg('fromname' ).' | [b]SMTP Secure:[/b] '.$kunena_app->getCfg('smtpsecure' ).' | [b]SMTP Port:[/b] '.$kunena_app->getCfg('smtpport' ).' | [b]SMTP User:[/b] '.$jconfig_smtpuser.' | [b]SMTP Host:[/b] '.$kunena_app->getCfg('smtphost' ).' [/confidential] [b]htaccess:[/b] '.$htaccess
	    .' | [b]PHP environment:[/b] [u]Max execution time:[/u] '.$maxExecTime.' seconds | [u]Max execution memory:[/u] '
	    .$maxExecMem.' | [u]Max file upload:[/u] '.$fileuploads.' [/quote][confidential][b]Kunena menu details[/b]:[spoiler] '.$joomlamenudetails.'[/spoiler][/confidential][quote][b]Joomla default template details :[/b] '.$jtemplatedetails->name.' | [u]author:[/u] '.$jtemplatedetails->author.' | [u]version:[/u] '.$jtemplatedetails->version.' | [u]creationdate:[/u] '.$jtemplatedetails->creationdate.' [/quote][quote][b]Kunena default template details :[/b] '.$ktempaltedetails->name.' | [u]author:[/u] '.$ktempaltedetails->author.' | [u]version:[/u] '.$ktempaltedetails->version.' | [u]creationdate:[/u] '.$ktempaltedetails->creationDate.' [/quote][quote] [b]Kunena version detailled:[/b] '.$kunenaVersionInfo.'
	    | [u]Kunena detailled configuration:[/u] [spoiler] '.$kconfigsettings.'[/spoiler][/quote]'.$thirdpartytext.' '.$seftext.' '.$plgtext.' '.$modtext;

		return $report;
	}