Merge branch 'master' into 2.6

This commit is contained in:
mark_story 2014-09-22 20:46:28 -04:00
commit cf45d3fab8
20 changed files with 154 additions and 115 deletions

1
.gitattributes vendored
View file

@ -1,6 +1,7 @@
# Define the line ending behavior of the different file extensions # Define the line ending behavior of the different file extensions
# Set default behaviour, in case users don't have core.autocrlf set. # Set default behaviour, in case users don't have core.autocrlf set.
* text=auto * text=auto
* text eol=lf
# Explicitly declare text files we want to always be normalized and converted # Explicitly declare text files we want to always be normalized and converted
# to native line endings on checkout. # to native line endings on checkout.

View file

@ -29,10 +29,22 @@ class I18nSchema extends CakeSchema {
public $name = 'i18n'; public $name = 'i18n';
/**
* Before callback.
*
* @param array $event Schema object properties
* @return bool Should process continue
*/
public function before($event = array()) { public function before($event = array()) {
return true; return true;
} }
/**
* After callback.
*
* @param array $event Schema object properties
* @return void
*/
public function after($event = array()) { public function after($event = array()) {
} }

View file

@ -28,10 +28,22 @@ class SessionsSchema extends CakeSchema {
public $name = 'Sessions'; public $name = 'Sessions';
/**
* Before callback.
*
* @param array $event Schema object properties
* @return bool Should process continue
*/
public function before($event = array()) { public function before($event = array()) {
return true; return true;
} }
/**
* After callback.
*
* @param array $event Schema object properties
* @return void
*/
public function after($event = array()) { public function after($event = array()) {
} }

View file

@ -17,7 +17,7 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html> <html>
<head> <head>
<title><?php echo $title_for_layout; ?></title> <title><?php echo $this->fetch('title'); ?></title>
</head> </head>
<body> <body>
<?php echo $this->fetch('content'); ?> <?php echo $this->fetch('content'); ?>

View file

@ -23,7 +23,7 @@ $cakeVersion = __d('cake_dev', 'CakePHP %s', Configure::version())
<?php echo $this->Html->charset(); ?> <?php echo $this->Html->charset(); ?>
<title> <title>
<?php echo $cakeDescription ?>: <?php echo $cakeDescription ?>:
<?php echo $title_for_layout; ?> <?php echo $this->fetch('title'); ?>
</title> </title>
<?php <?php
echo $this->Html->meta('icon'); echo $this->Html->meta('icon');

View file

@ -22,7 +22,7 @@ $cakeDescription = __d('cake_dev', 'CakePHP: the rapid development php framework
<?php echo $this->Html->charset(); ?> <?php echo $this->Html->charset(); ?>
<title> <title>
<?php echo $cakeDescription ?>: <?php echo $cakeDescription ?>:
<?php echo $title_for_layout; ?> <?php echo $this->fetch('title'); ?>
</title> </title>
<?php <?php
echo $this->Html->meta('icon'); echo $this->Html->meta('icon');

View file

@ -18,11 +18,13 @@
<html> <html>
<head> <head>
<?php echo $this->Html->charset(); ?> <?php echo $this->Html->charset(); ?>
<title><?php echo $page_title; ?></title> <title><?php echo $pageTitle; ?></title>
<?php if (Configure::read('debug') == 0): ?> <?php
<meta http-equiv="Refresh" content="<?php echo $pause; ?>;url=<?php echo $url; ?>"/> if (Configure::read('debug') == 0):
<?php endif; ?> echo sprintf('<meta http-equiv="Refresh" content="%s;url=%s" />', $pause, $url);
endif;
?>
<style><!-- <style><!--
P { text-align:center; font:bold 1.1em sans-serif } P { text-align:center; font:bold 1.1em sans-serif }
A { color:#444; text-decoration:none } A { color:#444; text-decoration:none }
@ -30,6 +32,8 @@ A:HOVER { text-decoration: underline; color:#44E }
--></style> --></style>
</head> </head>
<body> <body>
<p><a href="<?php echo $url; ?>"><?php echo $message; ?></a></p> <p>
<?php echo $this->Html->link($message, $url); ?>
</p>
</body> </body>
</html> </html>

View file

@ -1,2 +1,2 @@
<?php echo $scripts_for_layout; ?> <?php echo $this->fetch('script'); ?>
<script type="text/javascript"><?php echo $this->fetch('content'); ?></script> <script type="text/javascript"><?php echo $this->fetch('content'); ?></script>

View file

@ -3,7 +3,7 @@ if (!isset($channel)):
$channel = array(); $channel = array();
endif; endif;
if (!isset($channel['title'])): if (!isset($channel['title'])):
$channel['title'] = $title_for_layout; $channel['title'] = $this->fetch('title');
endif; endif;
echo $this->Rss->document( echo $this->Rss->document(

View file

@ -13,35 +13,31 @@ App::uses('Debugger', 'Utility');
?> ?>
<h2><?php echo __d('cake_dev', 'Release Notes for CakePHP %s.', Configure::version()); ?></h2> <h2><?php echo __d('cake_dev', 'Release Notes for CakePHP %s.', Configure::version()); ?></h2>
<p> <p>
<a href="http://cakephp.org/changelogs/<?php echo Configure::version(); ?>"><?php echo __d('cake_dev', 'Read the changelog'); ?> </a> <?php echo $this->Html->link(__d('cake_dev', 'Read the changelog'), 'http://cakephp.org/changelogs/' . Configure::version()); ?>
</p> </p>
<?php <?php
if (Configure::read('debug') > 0): if (Configure::read('debug') > 0):
Debugger::checkSecurityKeys(); Debugger::checkSecurityKeys();
endif; endif;
?> ?>
<?php <?php if (file_exists(WWW_ROOT . 'css' . DS . 'cake.generic.css')): ?>
if (file_exists(WWW_ROOT . 'css' . DS . 'cake.generic.css')): <p id="url-rewriting-warning" style="background-color:#e32; color:#fff;">
?>
<p id="url-rewriting-warning" style="background-color:#e32; color:#fff;">
<?php echo __d('cake_dev', 'URL rewriting is not properly configured on your server.'); ?> <?php echo __d('cake_dev', 'URL rewriting is not properly configured on your server.'); ?>
1) <a target="_blank" href="http://book.cakephp.org/2.0/en/installation/url-rewriting.html" style="color:#fff;">Help me configure it</a> 1) <a target="_blank" href="http://book.cakephp.org/2.0/en/installation/url-rewriting.html" style="color:#fff;">Help me configure it</a>
2) <a target="_blank" href="http://book.cakephp.org/2.0/en/development/configuration.html#cakephp-core-configuration" style="color:#fff;">I don't / can't use URL rewriting</a> 2) <a target="_blank" href="http://book.cakephp.org/2.0/en/development/configuration.html#cakephp-core-configuration" style="color:#fff;">I don't / can't use URL rewriting</a>
</p> </p>
<?php <?php endif; ?>
endif;
?>
<p> <p>
<?php <?php
if (version_compare(PHP_VERSION, '5.2.8', '>=')): if (version_compare(PHP_VERSION, '5.2.8', '>=')):
echo '<span class="notice success">'; echo '<span class="notice success">';
echo __d('cake_dev', 'Your version of PHP is 5.2.8 or higher.'); echo __d('cake_dev', 'Your version of PHP is 5.2.8 or higher.');
echo '</span>'; echo '</span>';
else: else:
echo '<span class="notice">'; echo '<span class="notice">';
echo __d('cake_dev', 'Your version of PHP is too low. You need PHP 5.2.8 or higher to use CakePHP.'); echo __d('cake_dev', 'Your version of PHP is too low. You need PHP 5.2.8 or higher to use CakePHP.');
echo '</span>'; echo '</span>';
endif; endif;
?> ?>
</p> </p>
<p> <p>
@ -62,7 +58,7 @@ endif;
$settings = Cache::settings(); $settings = Cache::settings();
if (!empty($settings)): if (!empty($settings)):
echo '<span class="notice success">'; echo '<span class="notice success">';
echo __d('cake_dev', 'The %s is being used for core caching. To change the config edit %s', '<em>'. $settings['engine'] . 'Engine</em>', 'APP/Config/core.php'); echo __d('cake_dev', 'The %s is being used for core caching. To change the config edit %s', '<em>' . $settings['engine'] . 'Engine</em>', 'APP/Config/core.php');
echo '</span>'; echo '</span>';
else: else:
echo '<span class="notice">'; echo '<span class="notice">';
@ -103,8 +99,8 @@ if (isset($filePresent)):
endif; endif;
endif; endif;
} }
?> ?>
<p> <p>
<?php <?php
if ($connected && $connected->isConnected()): if ($connected && $connected->isConnected()):
echo '<span class="notice success">'; echo '<span class="notice success">';
@ -118,17 +114,18 @@ if (isset($filePresent)):
echo '</span>'; echo '</span>';
endif; endif;
?> ?>
</p> </p>
<?php endif; ?>
<?php <?php
App::uses('Validation', 'Utility'); endif;
if (!Validation::alphaNumeric('cakephp')):
App::uses('Validation', 'Utility');
if (!Validation::alphaNumeric('cakephp')):
echo '<p><span class="notice">'; echo '<p><span class="notice">';
echo __d('cake_dev', 'PCRE has not been compiled with Unicode support.'); echo __d('cake_dev', 'PCRE has not been compiled with Unicode support.');
echo '<br/>'; echo '<br/>';
echo __d('cake_dev', 'Recompile PCRE with Unicode support by adding <code>--enable-unicode-properties</code> when configuring'); echo __d('cake_dev', 'Recompile PCRE with Unicode support by adding <code>--enable-unicode-properties</code> when configuring');
echo '</span></p>'; echo '</span></p>';
endif; endif;
?> ?>
<p> <p>

View file

@ -9,7 +9,7 @@
<html> <html>
<head> <head>
<?php echo $this->Html->charset(); ?> <?php echo $this->Html->charset(); ?>
<title><?php echo $page_title; ?></title> <title><?php echo $pageTitle; ?></title>
<?php if (!Configure::read('debug')): ?> <?php if (!Configure::read('debug')): ?>
<meta http-equiv="Refresh" content="<?php echo $pause; ?>;url=<?php echo $url; ?>"/> <meta http-equiv="Refresh" content="<?php echo $pause; ?>;url=<?php echo $url; ?>"/>

View file

@ -1004,7 +1004,7 @@ class Controller extends Object implements CakeEventListener {
$this->set('url', Router::url($url)); $this->set('url', Router::url($url));
$this->set('message', $message); $this->set('message', $message);
$this->set('pause', $pause); $this->set('pause', $pause);
$this->set('page_title', $message); $this->set('pageTitle', $message);
$this->render(false, $layout); $this->render(false, $layout);
} }

View file

@ -597,7 +597,8 @@ class CakeEmail {
protected function _validateEmail($email) { protected function _validateEmail($email) {
if ($this->_emailPattern === null && filter_var($email, FILTER_VALIDATE_EMAIL)) { if ($this->_emailPattern === null && filter_var($email, FILTER_VALIDATE_EMAIL)) {
return; return;
} elseif (preg_match($this->_emailPattern, $email)) { }
if (preg_match($this->_emailPattern, $email)) {
return; return;
} }
throw new SocketException(__d('cake_dev', 'Invalid email: "%s"', $email)); throw new SocketException(__d('cake_dev', 'Invalid email: "%s"', $email));

View file

@ -97,7 +97,7 @@ class Dispatcher implements CakeEventListener {
foreach ($filters as $index => $filter) { foreach ($filters as $index => $filter) {
$settings = array(); $settings = array();
if (is_array($filter) && !is_int($index)) { if (is_array($filter) && !is_int($index) && class_exists($index)) {
$settings = $filter; $settings = $filter;
$filter = $index; $filter = $index;
} }

View file

@ -267,6 +267,7 @@ class CakeEmailTest extends CakeTestCase {
$this->CakeEmail->addTo('jrbasso@cakephp.org'); $this->CakeEmail->addTo('jrbasso@cakephp.org');
$this->CakeEmail->addTo('mark_story@cakephp.org', 'Mark Story'); $this->CakeEmail->addTo('mark_story@cakephp.org', 'Mark Story');
$this->CakeEmail->addTo('foobar@ætdcadsl.dk');
$result = $this->CakeEmail->addTo(array('phpnut@cakephp.org' => 'PhpNut', 'jose_zap@cakephp.org')); $result = $this->CakeEmail->addTo(array('phpnut@cakephp.org' => 'PhpNut', 'jose_zap@cakephp.org'));
$expected = array( $expected = array(
'root@localhost' => 'root', 'root@localhost' => 'root',
@ -276,6 +277,7 @@ class CakeEmailTest extends CakeTestCase {
'root@cakephp.org' => 'root@cakephp.org', 'root@cakephp.org' => 'root@cakephp.org',
'jrbasso@cakephp.org' => 'jrbasso@cakephp.org', 'jrbasso@cakephp.org' => 'jrbasso@cakephp.org',
'mark_story@cakephp.org' => 'Mark Story', 'mark_story@cakephp.org' => 'Mark Story',
'foobar@ætdcadsl.dk' => 'foobar@ætdcadsl.dk',
'phpnut@cakephp.org' => 'PhpNut', 'phpnut@cakephp.org' => 'PhpNut',
'jose_zap@cakephp.org' => 'jose_zap@cakephp.org' 'jose_zap@cakephp.org' => 'jose_zap@cakephp.org'
); );

View file

@ -1328,6 +1328,16 @@ class DispatcherTest extends CakeTestCase {
$dispatcher->dispatch($request, $response); $dispatcher->dispatch($request, $response);
$this->assertEquals('Dispatcher.afterDispatch', $request->params['eventName']); $this->assertEquals('Dispatcher.afterDispatch', $request->params['eventName']);
$dispatcher = new TestDispatcher();
Configure::write('Dispatcher.filters', array(
'filterTest' => array('callable' => array($dispatcher, 'filterTest'), 'on' => 'before')
));
$request = new CakeRequest('/');
$response = $this->getMock('CakeResponse', array('send'));
$dispatcher->dispatch($request, $response);
$this->assertEquals('Dispatcher.beforeDispatch', $request->params['eventName']);
// Test that it is possible to skip the route connection process // Test that it is possible to skip the route connection process
$dispatcher = new TestDispatcher(); $dispatcher = new TestDispatcher();
Configure::write('Dispatcher.filters', array( Configure::write('Dispatcher.filters', array(

View file

@ -1101,7 +1101,7 @@ class ViewTest extends CakeTestCase {
$this->PostsController->set('url', 'flash'); $this->PostsController->set('url', 'flash');
$this->PostsController->set('message', 'yo what up'); $this->PostsController->set('message', 'yo what up');
$this->PostsController->set('pause', 3); $this->PostsController->set('pause', 3);
$this->PostsController->set('page_title', 'yo what up'); $this->PostsController->set('pageTitle', 'yo what up');
$View = new TestView($this->PostsController); $View = new TestView($this->PostsController);
$result = $View->render(false, 'flash'); $result = $View->render(false, 'flash');

View file

@ -1,7 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title><?php echo $page_title?></title> <title><?php echo $pageTitle?></title>
<?php echo $this->Html->charset(); ?> <?php echo $this->Html->charset(); ?>
<?php if (!Configure::read('debug')) { ?> <?php if (!Configure::read('debug')) { ?>