Merge branch 'master' into 2.6

This commit is contained in:
ADmad 2014-08-03 01:05:36 +05:30
commit 713f430fc4
28 changed files with 114 additions and 35 deletions

View file

@ -197,7 +197,7 @@ class Cache {
/**
* Drops a cache engine. Deletes the cache configuration information
* If the deleted configuration is the last configuration using an certain engine,
* If the deleted configuration is the last configuration using a certain engine,
* the Engine instance is also unset.
*
* @param string $name A currently configured cache config you wish to remove.

View file

@ -381,7 +381,7 @@ class FixtureTask extends BakeTask {
}
/**
* Convert a $records array into a a string.
* Convert a $records array into a string.
*
* @param array $records Array of records to be converted to string
* @return string A string value of the $records array.

View file

@ -248,7 +248,7 @@ class ViewTask extends BakeTask {
* 'singularHumanName', 'pluralHumanName', 'fields', 'foreignKeys',
* 'belongsTo', 'hasOne', 'hasMany', 'hasAndBelongsToMany'
*
* @return array Returns an variables to be made available to a view template
* @return array Returns a variables to be made available to a view template
*/
protected function _loadController() {
if (!$this->controllerName) {

View file

@ -47,7 +47,7 @@ class ConsoleErrorHandler {
}
/**
* Handle a exception in the console environment. Prints a message to stderr.
* Handle an exception in the console environment. Prints a message to stderr.
*
* @param Exception $exception The exception to handle
* @return void

View file

@ -170,7 +170,7 @@ class ConsoleOutput {
* Outputs a single or multiple messages to stdout. If no parameters
* are passed, outputs just a newline.
*
* @param string|array $message A string or a an array of strings to output
* @param string|array $message A string or an array of strings to output
* @param int $newlines Number of newlines to append
* @return int Returns the number of bytes returned from writing to stdout.
*/

View file

@ -45,7 +45,7 @@ class HelpFormatter {
protected $_maxOptions = 6;
/**
* Build the help formatter for a an OptionParser
* Build the help formatter for an OptionParser
*
* @param ConsoleOptionParser $parser The option parser help is being generated for.
*/

View file

@ -602,7 +602,7 @@ class Shell extends Object {
* present in most shells. Using Shell::QUIET for a message means it will always display.
* While using Shell::VERBOSE means it will only display when verbose output is toggled.
*
* @param string|array $message A string or a an array of strings to output
* @param string|array $message A string or an array of strings to output
* @param int $newlines Number of newlines to append
* @param int $level The message's output level, see above.
* @return int|bool Returns the number of bytes returned from writing to stdout.
@ -659,7 +659,7 @@ class Shell extends Object {
* Outputs a single or multiple error messages to stderr. If no parameters
* are passed outputs just a newline.
*
* @param string|array $message A string or a an array of strings to output
* @param string|array $message A string or an array of strings to output
* @param int $newlines Number of newlines to append
* @return void
* @link http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::err

View file

@ -506,7 +506,7 @@ class RequestHandlerComponent extends Component {
* in the request content type will be returned.
*/
public function requestedWith($type = null) {
if (!$this->request->is('post') && !$this->request->is('put')) {
if (!$this->request->is('post') && !$this->request->is('put') && !$this->request->is('delete')) {
return null;
}
if (is_array($type)) {

View file

@ -590,7 +590,7 @@ class App {
* not construct any classes contained in the files. It will only find and require() the file.
*
* @param string|array $type The type of Class if passed as a string, or all params can be passed as
* an single array to $type.
* a single array to $type.
* @param string $name Name of the Class or a unique name for the file
* @param bool|array $parent boolean true if Class Parent should be searched, accepts key => value
* array('parent' => $parent, 'file' => $file, 'search' => $search, 'ext' => '$ext');

View file

@ -33,7 +33,7 @@ class CakePlugin {
protected static $_plugins = array();
/**
* Loads a plugin and optionally loads bootstrapping, routing files or loads a initialization function
* Loads a plugin and optionally loads bootstrapping, routing files or loads an initialization function
*
* Examples:
*

View file

@ -35,7 +35,7 @@ App::uses('Controller', 'Controller');
*
* You can implement application specific exception handling in one of a few ways:
*
* - Create a AppController::appError();
* - Create an AppController::appError();
* - Create a subclass of ExceptionRenderer and configure it to be the `Exception.renderer`
*
* #### Using AppController::appError();

View file

@ -700,7 +700,7 @@ class Mysql extends DboSource {
}
/**
* Returns an detailed array of sources (tables) in the database.
* Returns a detailed array of sources (tables) in the database.
*
* @param string $name Table name to get parameters
* @return array Array of table names in the database

View file

@ -3246,7 +3246,7 @@ class DboSource extends DataSource {
}
/**
* Generate a alter syntax from CakeSchema::compare()
* Generate an alter syntax from CakeSchema::compare()
*
* @param mixed $compare The comparison data.
* @param string $table The table name.

View file

@ -954,7 +954,7 @@ class CakeResponse {
}
/**
* Sets the Last-Modified header for the response by taking an modification time
* Sets the Last-Modified header for the response by taking a modification time
* If called with no parameters it will return the current Last-Modified value
*
* ## Examples:
@ -1007,7 +1007,7 @@ class CakeResponse {
* parameters are passed, then an array with the current Vary header
* value is returned
*
* @param string|array $cacheVariances a single Vary string or a array
* @param string|array $cacheVariances a single Vary string or an array
* containing the list for variances.
* @return array
*/

View file

@ -1206,7 +1206,7 @@ class Router {
/**
* Instructs the router to parse out file extensions from the URL.
*
* For example, http://example.com/posts.rss would yield an file extension of "rss".
* For example, http://example.com/posts.rss would yield a file extension of "rss".
* The file extension itself is made available in the controller as
* `$this->params['ext']`, and is used by the RequestHandler component to
* automatically switch to alternate layouts and templates, and load helpers

View file

@ -601,6 +601,9 @@ class RequestHandlerComponentTest extends CakeTestCase {
$result = $this->RequestHandler->requestedWith(array('rss', 'atom'));
$this->assertFalse($result);
$_SERVER['REQUEST_METHOD'] = 'DELETE';
$this->assertEquals('json', $this->RequestHandler->requestedWith());
$_SERVER['REQUEST_METHOD'] = 'POST';
unset($_SERVER['CONTENT_TYPE']);
$_SERVER['HTTP_CONTENT_TYPE'] = 'application/json';

View file

@ -63,7 +63,7 @@ class ScaffoldMockControllerWithFields extends Controller {
/**
* function beforeScaffold
*
* @param string method
* @param string $method Method name.
* @return bool true
*/
public function beforeScaffold($method) {
@ -73,6 +73,39 @@ class ScaffoldMockControllerWithFields extends Controller {
}
/**
* ScaffoldMockControllerWithError class
*
* @package Cake.Test.Case.Controller
*/
class ScaffoldMockControllerWithError extends Controller {
/**
* name property
*
* @var string
*/
public $name = 'ScaffoldMock';
/**
* scaffold property
*
* @var mixed
*/
public $scaffold;
/**
* function beforeScaffold
*
* @param string $method Method name.
* @return bool false
*/
public function beforeScaffold($method) {
return false;
}
}
/**
* TestScaffoldMock class
*
@ -83,7 +116,7 @@ class TestScaffoldMock extends Scaffold {
/**
* Overload _scaffold
*
* @param CakeRequest $request
* @param CakeRequest $request Request object for scaffolding
* @return void
*/
protected function _scaffold(CakeRequest $request) {
@ -344,4 +377,40 @@ class ScaffoldTest extends CakeTestCase {
$this->assertNotRegExp('/textarea name="data\[ScaffoldMock\]\[body\]" cols="30" rows="6" id="ScaffoldMockBody"/', $result);
}
/**
* test in case of scaffold error
*
* @return void
*/
public function testScaffoldError() {
$request = new CakeRequest(null, false);
$this->Controller = new ScaffoldMockControllerWithError($request);
$this->Controller->response = $this->getMock('CakeResponse', array('_sendHeader'));
$params = array(
'plugin' => null,
'pass' => array(1),
'form' => array(),
'named' => array(),
'url' => array('url' => 'scaffold_mock/edit'),
'controller' => 'scaffold_mock',
'action' => 'edit',
);
$this->Controller->request->base = '';
$this->Controller->request->webroot = '/';
$this->Controller->request->here = '/scaffold_mock/edit';
$this->Controller->request->addParams($params);
//set router.
Router::reload();
Router::setRequestInfo($this->Controller->request);
$this->Controller->constructClasses();
ob_start();
new Scaffold($this->Controller, $this->Controller->request);
$this->Controller->response->send();
$result = ob_get_clean();
$this->assertRegExp('/Scaffold Error/', $result);
}
}

View file

@ -1462,10 +1462,11 @@ class ValidationTest extends CakeTestCase {
$this->assertTrue(Validation::date('2008', array('y')));
$this->assertTrue(Validation::date('2013', array('y')));
$this->assertTrue(Validation::date('2104', array('y')));
$this->assertTrue(Validation::date('1899', array('y')));
$this->assertFalse(Validation::date('20009', array('y')));
$this->assertFalse(Validation::date(' 2012', array('y')));
$this->assertFalse(Validation::date('3000', array('y')));
$this->assertFalse(Validation::date('1899', array('y')));
$this->assertFalse(Validation::date('1799', array('y')));
}
/**

View file

@ -197,7 +197,7 @@ class File {
}
/**
* Prepares a ASCII string for writing. Converts line endings to the
* Prepares an ASCII string for writing. Converts line endings to the
* correct terminator for the current platform. If Windows, "\r\n" will be used,
* all other platforms will use "\n"
*

View file

@ -234,7 +234,7 @@ abstract class ObjectCollection {
}
/**
* Disables callbacks on a object or array of objects. Public object methods are still
* Disables callbacks on an object or array of objects. Public object methods are still
* callable as normal.
*
* @param string|array $name CamelCased name of the objects(s) to disable (string or array)

View file

@ -910,7 +910,7 @@ class Set {
}
/**
* Expand/unflattens an string to an array
* Expand/unflattens a string to an array
*
* For example, unflattens an array that was collapsed with `Set::flatten()`
* into a multi-dimensional array. So, `array('0.Foo.Bar' => 'Far')` becomes

View file

@ -292,7 +292,9 @@ class Validation {
/**
* Date validation, determines if the string passed is a valid date.
* keys that expect full month, day and year will validate leap years
* keys that expect full month, day and year will validate leap years.
*
* Years are valid from 1800 to 2999.
*
* ### Formats:
*
@ -318,7 +320,7 @@ class Validation {
}
$month = '(0[123456789]|10|11|12)';
$separator = '([- /.])';
$fourDigitYear = '(([1][9][0-9][0-9])|([2][0-9][0-9][0-9]))';
$fourDigitYear = '(([1][8-9][0-9][0-9])|([2][0-9][0-9][0-9]))';
$twoDigitYear = '([0-9]{2})';
$year = '(?:' . $fourDigitYear . '|' . $twoDigitYear . ')';

View file

@ -325,7 +325,7 @@ class Xml {
}
/**
* Returns this XML structure as a array.
* Returns this XML structure as an array.
*
* @param SimpleXMLElement|DOMDocument|DOMNode $obj SimpleXMLElement, DOMDocument or DOMNode instance
* @return array Array representation of the XML structure.

View file

@ -31,4 +31,8 @@ function _scaffoldError() {<br />
</pre>
<?php echo $this->element('exception_stack_trace'); ?>
<?php
if (isset($error) && $error instanceof Exception) {
echo $this->element('exception_stack_trace');
}
?>

View file

@ -329,7 +329,7 @@ class FormHelper extends AppHelper {
* If an array is passed and $options argument is empty, the array will be used as options.
* If `false` no model is used.
* @param array $options An array of html attributes and options.
* @return string An formatted opening FORM tag.
* @return string A formatted opening FORM tag.
* @link http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#options-for-create
*/
public function create($model = null, $options = array()) {
@ -1483,7 +1483,7 @@ class FormHelper extends AppHelper {
* - `hiddenField` - boolean to indicate if you want the results of radio() to include
* a hidden input with a value of ''. This is useful for creating radio sets that non-continuous
* - `disabled` - Set to `true` or `disabled` to disable all the radio buttons.
* - `empty` - Set to `true` to create a input with the value '' as the first option. When `true`
* - `empty` - Set to `true` to create an input with the value '' as the first option. When `true`
* the radio label will be 'empty'. Set this option to a string to control the label value.
*
* @param string $fieldName Name of a field, like this "Modelname.fieldname"
@ -2258,7 +2258,7 @@ class FormHelper extends AppHelper {
* ### Attributes:
*
* - `monthNames` - If false, 2 digit numbers will be used instead of text.
* If a array, the given array will be used.
* If an array, the given array will be used.
* - `empty` - If true, the empty select option is shown. If a string,
* that string is displayed as the empty element.
* - `value` The selected value of the input.
@ -2456,7 +2456,7 @@ class FormHelper extends AppHelper {
* ### Attributes:
*
* - `monthNames` If false, 2 digit numbers will be used instead of text.
* If a array, the given array will be used.
* If an array, the given array will be used.
* - `minYear` The lowest year to use in the year select
* - `maxYear` The maximum year to use in the year select
* - `interval` The interval for the minutes select. Defaults to 1
@ -2934,7 +2934,7 @@ class FormHelper extends AppHelper {
* Disabling the field using the `disabled` option, will also omit the field from being
* part of the hashed key.
*
* This method will convert a numerically indexed 'disabled' into a associative
* This method will convert a numerically indexed 'disabled' into an associative
* value. FormHelper's internals expect associative options.
*
* @param string $field Name of the field to initialize options for.

View file

@ -512,7 +512,7 @@ class HtmlHelper extends AppHelper {
*
* Add the script file to a custom block:
*
* `$this->Html->script('styles.js', null, array('block' => 'bodyScript'));`
* `$this->Html->script('styles.js', array('block' => 'bodyScript'));`
*
* ### Options
*

View file

@ -476,7 +476,7 @@ abstract class JsBaseEngineHelper extends AppHelper {
abstract public function serializeForm($options = array());
/**
* Parse an options assoc array into an JavaScript object literal.
* Parse an options assoc array into a JavaScript object literal.
* Similar to object() but treats any non-integer value as a string,
* does not include `{ }`
*

View file

@ -225,7 +225,7 @@ class MootoolsEngineHelper extends JsBaseEngineHelper {
}
/**
* Create an new Request.
* Create a new Request.
*
* Requires `Request`. If you wish to use 'update' key you must have ```Request.HTML```
* if you wish to do Json requests you will need ```JSON``` and ```Request.JSON```.