diff --git a/build/phpcs/Joomla/Sniffs/ControlStructures/ControlSignatureSniff.php b/build/phpcs/Joomla/Sniffs/ControlStructures/ControlSignatureSniff.php index 2ee5d1e082..2c3bad9927 100644 --- a/build/phpcs/Joomla/Sniffs/ControlStructures/ControlSignatureSniff.php +++ b/build/phpcs/Joomla/Sniffs/ControlStructures/ControlSignatureSniff.php @@ -15,7 +15,7 @@ */ if (class_exists('PHP_CodeSniffer_Standards_AbstractPatternSniff', true) === false) { - throw new PHP_CodeSniffer_Exception('Class PHP_CodeSniffer_Standards_AbstractPatternSniff not found'); + throw new PHP_CodeSniffer_Exception('Class PHP_CodeSniffer_Standards_AbstractPatternSniff not found'); } /** @@ -33,40 +33,74 @@ class Joomla_Sniffs_ControlStructures_ControlSignatureSniff extends PHP_CodeSniffer_Standards_AbstractPatternSniff { + /** + * Constructs a Joomla_Sniffs_ControlStructures_ControlSignatureSniff. + */ + public function __construct() + { + parent::__construct(true); - /** - * Constructs a Joomla_Sniffs_ControlStructures_ControlSignatureSniff. - */ - public function __construct() - { - parent::__construct(true); - - }//end __construct() - - - /** - * Returns the patterns that this test wishes to verify. - * - * @return array(string) - */ - protected function getPatterns() - { - return array( - 'tryEOL...{EOL...}EOL...catch (...)EOL...{EOL', - 'doEOL...{EOL...}EOL...while (...);EOL', - 'while (...)EOL...{EOL', - 'for (...)EOL...{EOL', - 'if (...)EOL...{EOL', - 'switch (...)EOL...{EOL', - 'foreach (...)EOL...{EOL', - '}EOL...else if (...)EOL...{EOL', - '}EOL...elseif (...)EOL...{EOL', - '}EOL...elseEOL...{EOL', - 'doEOL...{EOL', - ); - - }//end getPatterns() + }//end __construct() + /** + * Returns the patterns that this test wishes to verify. + * + * @return array(string) + */ + protected function getPatterns() + { + return array( + 'if (...)EOL...{...}EOL', + 'elseEOL...{EOL', + 'elseif (...)EOL...{EOL', + 'else if (...)EOL...{EOL', + + 'tryEOL...{EOL...}EOL', + 'catch (...)EOL...{EOL', + + 'doEOL...{...}EOL', + 'while (...)EOL...{EOL', + + 'for (...)EOL...{EOL', + 'foreach (...)EOL...{EOL', + + 'switch (...)EOL...{EOL', + ); + + }//end getPatterns() + + /** + * Process a pattern. + * + * Returns if we are inside a "tmpl" folder - workaround for the Joomla! CMS :( + * + * @param array $patternInfo Information about the pattern used for checking, which includes are + * parsed token representation of the pattern. + * @param PHP_CodeSniffer_File $phpcsFile The PHP_CodeSniffer file where the token occured. + * @param integer $stackPtr The postion in the tokens stack where the listening token type was found. + * + * @return return_type + */ + protected function processPattern($patternInfo, PHP_CodeSniffer_File $phpcsFile + , $stackPtr) + { + if(0) + { + /* + * @todo disabled - This is a special sniff for the Joomla! CMS to exclude + * the tmpl folder which may contain constructs in colon notation + */ + + $parts = explode(DIRECTORY_SEPARATOR, $phpcsFile->getFileName()); + + if('tmpl' == $parts[count($parts) - 2]) + { + return false; + } + } + + return parent::processPattern($patternInfo, $phpcsFile, $stackPtr); + }//function }//end class diff --git a/libraries/joomla/application/application.php b/libraries/joomla/application/application.php index 3a4d712440..0238d88ccd 100644 --- a/libraries/joomla/application/application.php +++ b/libraries/joomla/application/application.php @@ -681,7 +681,7 @@ public function login($credentials, $options = array()) // validate that the user should be able to login (different to being authenticated) // this permits authentication plugins blocking the user $authorisations = $authenticate->authorise($response, $options); - foreach ($authorisation as $authorisation) + foreach ($authorisations as $authorisation) { $denied_states = Array(JAuthentication::STATUS_EXPIRED, JAuthentication::STATUS_DENIED); if (in_array($authorisation->status, $denied_states)) diff --git a/libraries/joomla/cache/cache.php b/libraries/joomla/cache/cache.php index 8f61b8e9f5..f635a3f53c 100644 --- a/libraries/joomla/cache/cache.php +++ b/libraries/joomla/cache/cache.php @@ -570,7 +570,7 @@ public static function setWorkarounds($data, $options = array()) if ($loptions['modulemode'] == 1) { $headnow = $document->getHeadData(); - $unset = array('title', 'description', 'link', 'metaTags'); + $unset = array('title', 'description', 'link', 'links', 'metaTags'); foreach ($unset as $un) { diff --git a/libraries/joomla/environment/response.php b/libraries/joomla/environment/response.php index adbf88f763..44a5deada3 100644 --- a/libraries/joomla/environment/response.php +++ b/libraries/joomla/environment/response.php @@ -136,7 +136,7 @@ public static function sendHeaders() } else { - header($header['name'] . ': ' . $header['value']); + header($header['name'] . ': ' . $header['value'], false); } } } diff --git a/libraries/joomla/factory.php b/libraries/joomla/factory.php index b3dec3dead..4707d271df 100644 --- a/libraries/joomla/factory.php +++ b/libraries/joomla/factory.php @@ -212,20 +212,28 @@ public static function getDocument() public static function getUser($id = null) { jimport('joomla.user.user'); - - if (is_null($id)) + + if (is_null($id)) { $instance = self::getSession()->get('user'); - if (!($instance instanceof JUser)) + if (!($instance instanceof JUser)) { $instance = JUser::getInstance(); } } - else + else { - $instance = JUser::getInstance($id); + $current = self::getSession()->get('user'); + if($current->id != $id) + { + $instance = JUser::getInstance($id); + } + else + { + $instance = self::getSession()->get('user'); + } } - + return $instance; }