/**
* A PhpRequirements filter for nodes
*
- * @author Roland Haeder <webmaster@ship-simu.org>
+ * @author Roland Haeder <webmaster@shipsimu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Hub Developer Team
* @license GNU GPL 3.0 or any newer version
- * @link http://www.ship-simu.org
+ * @link http://www.shipsimu.org
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-class NodePhpRequirementsFilter extends BaseFilter implements Filterable {
+class NodePhpRequirementsFilter extends BaseNodeFilter implements Filterable {
/**
* Protected constructor
*
*/
public function execute (Requestable $requestInstance, Responseable $responseInstance) {
// By default, the requirement check is passed and zero checks are failed
- $checkPassed = true;
+ $checkPassed = TRUE;
$checksFailed = 0;
// Socket support is essential...
if (!function_exists('socket_create')) {
// Test failed
- $checkPassed = false;
+ $checkPassed = FALSE;
$checksFailed++;
- } // END -if
+ } // END - if
+
+ // If scrypt() is not found (ext-scrypt) then the "Hubcoins reward" is not working
+ if ((extension_loaded('scrypt')) && (is_callable('scrypt'))) {
+ // Mark it as working
+ self::createDebugInstance(__CLASS__)->debugOutput('FILTER[' . __METHOD__ . ':' . __LINE__ . '] ext-scrypt and a callable scrypt() function found. "Hubcoin reward" feature possible.');
+ $this->getConfigInstance()->setConfigEntry('extension_scrypt_loaded', TRUE);
+ } else {
+ // Not working (not all have ext-scrypt installed
+ self::createDebugInstance(__CLASS__)->debugOutput('FILTER[' . __METHOD__ . ':' . __LINE__ . '] ext-scrypt not found or scrypt() function not found. "Hubcoin reward" feature disabled.');
+ }
// Are all tests passed?
- if ($checkPassed === false) {
+ if ($checkPassed === FALSE) {
// Throw an exception
throw new FilterChainException($this, self::EXCEPTION_FILTER_CHAIN_INTERCEPTED);
} // END - if