Commit graph

371 commits

Author SHA1 Message Date
mark_story
afc8587949 Merge branch 'master' into 2.5 2014-03-18 22:12:14 -04:00
mark_story
ee895a8bb1 Add form attribute to hidden inputs when present.
If inputs are placed outside of the form elements the form attribute
needs to be set on the hidden inputs. Without this attribute the empty
state does not submit correctly.

Fixes #3053
2014-03-18 22:11:57 -04:00
ADmad
a0c399e374 Remove whitespace. 2014-02-26 10:40:53 +05:30
mark_story
0f584c0e8b Merge branch 'master' into 2.5 2014-02-24 21:19:17 -05:00
mark_story
0776b87214 Fix postLink() & postButton() with nested data.
Flatten deeply nested array data before generating hidden inputs.
This solves 'Array to string conversion' errors.

Closes #2894
2014-02-24 21:17:31 -05:00
mark_story
a80cbc205a Simplify conditionals.
Set default values to remove else cases.
2014-02-19 21:46:53 -05:00
jalbertocr
8b2e1ab9e5 Don't do assignments inside conditionals. 2014-02-19 22:41:33 -03:00
jalbertocr
cdeb51167b Fix types in docblocks. 2014-02-19 20:54:00 -03:00
jalbertocr
35f152b333 Make sure a datetime instance is valid to avoid fatal errors. 2014-02-19 20:50:30 -03:00
mark_story
3433f4a1f0 Clean up changes code standards and tests.
Refs #2582
2014-02-17 11:03:49 -05:00
Jonas
b32deed4aa changed FormHelper::secure() and FormHelper::end() to support attributes in the hidden CSRF-protection tags that are being generated for SecurityComponent to allow specification of additional html attributes like HTML5s "form" attribute. This allows separation of Form instantiation/controls and form data - for instance within html tables
improved tests for testing against additional attributes for Form::secure()

improved tests for testing against additional attributes for Form::end()

removed array cast, fixed test

fixed docblock format

format

Fixed a bug, this won't work as some forms are just empty
2014-02-17 10:54:02 -05:00
mark_story
be8ebfc005 Merge branch 'master' into 2.5 2014-02-05 09:22:46 -05:00
AD7six
adc0bf3ded BC fix for checkbox ids
Revert to previous behavior for id generation of checkboxes, This commit
can be reverted for 2.5+ is desired

Fixes #2733
2014-02-03 17:57:26 +00:00
mark_story
ecf5aec1ae Add '@' to the list of characters removed from radio/checkbox ID.
This character can easily show up in email addresses and can cause
invalid HTML.

Refs #2733
2014-02-02 21:20:31 -05:00
mark_story
605351d0c9 Allow empty values in checkboxes.
Allow the checkbox value attribute to be empty. This is required to make
checkboxes with a value of 0.

Fixes #2717
2014-01-30 21:12:06 -05:00
Walter Nasich
a7f50e0ce7 Using sprintf to convert number into non-scientific notation 2014-01-30 19:07:23 -03:00
Walter Nasich
43604f64d5 Rendering a proper value for html5 attribute 'step' 2014-01-30 17:17:50 -03:00
mark_story
75dd2ff1fb Merge branch 'master' into 2.5 2014-01-16 15:20:40 -05:00
mark_story
f25e84f4fb Don't select year 0 when there are all 0's.
Year 0 is almost never a 'good' selection value and causes odd behavior
when paired with MySQL.

Fixes #2658
2014-01-15 10:23:45 -05:00
mark_story
3cee3b0e99 Merge branch 'master' into 2.5
Conflicts:
	lib/Cake/VERSION.txt
2013-12-30 21:28:22 -05:00
Mark Story
1cb7e4f0ff Merge pull request #1635 from dereuromark/master-dom-ids
Fix duplicate ID generation of for multiple checkboxes.
2013-12-24 07:02:38 -08:00
mark_story
7e5c0f7185 Merge branch 'master' into 2.5 2013-12-20 14:15:35 -05:00
mark_story
5bddc477a3 Fix incorrectly handled time values around 12:00:00
When using 12 hour formats & intervals, values around 12:00 were
incorrecly converted to midnight.

Fixes #2507
2013-12-19 17:36:27 -05:00
mark_story
30e139412d Fix input type inference when type=>checkbox
FormHelper should not infer types when the explicit type is checkbox.
Instead the provided type should be used.

Fixes #2491
2013-12-16 23:26:20 -05:00
euromark
8ebf004450 Also make DOM ids for radio element values unique. 2013-12-04 02:14:08 +01:00
euromark
587a04ab84 prevent possible XSS attack via form helper selects and unescaped output. 2013-12-04 01:51:39 +01:00
euromark
aae0f762dd Collision free approach to resolve the DOM ID issue in a clean way. Fix to generation of ids for multiple checkboxes. Resolves ticket 4064. 2013-12-04 01:30:57 +01:00
ADmad
dda6080579 Merge branch 'master' into 2.5 2013-11-19 00:27:12 +05:30
mark_story
a07608cbb9 Fix incorrect CSRF token fields when using postLink()
Creating a postLink after creating a GET form would result in the
incorrect fields being generated.

Fixes #2308
2013-11-11 21:56:55 -05:00
ADmad
d647fe8a91 Added buffering of form tags generated by FormHelper::postLink() 2013-11-03 23:11:11 +05:30
ADmad
d9ca148499 Merge branch 'master' into 2.5
Conflicts:
	CONTRIBUTING.md
	lib/Cake/Model/Model.php
	lib/Cake/VERSION.txt
2013-10-30 02:34:09 +05:30
Bryan Crowe
a943ea5c34 Add space between classname(s) 2013-10-22 22:59:50 -04:00
Bryan Crowe
d39ced8381 Correct 'an URL' to 'a URL' in docblocks 2013-10-22 00:09:34 -04:00
Marc Würth
bf8a13a77c Added binary type to field type map, defaulting to file input field
Refs  https://github.com/cakephp/cakephp/issues/2071
2013-10-15 22:25:51 +02:00
Mark Story
ce74153389 Merge pull request #1691 from uzyn/2.5-decimal
Add support for decimal type in Schema.

Fixes #3171
2013-10-14 08:36:15 -07:00
Bryan Crowe
c1dd0e4393 Changed url to URL where appropriate 2013-10-07 23:17:58 -04:00
ADmad
aa60b8791a Fixed setting "required" attribute for file input. Closes #4124
In general fixed the issue where enabling SECURE_SKIP for a field
skipped "required" attribute check altogether. Instead now "required"
is set to false for hidden fields by default.
2013-10-04 20:35:38 +05:30
U-Zyn Chua
4806d09d7e Setting of step for decimal field based on precision. 2013-09-29 22:44:50 +08:00
U-Zyn Chua
091658a752 Decimal support for FormHelper. 2013-09-29 22:40:35 +08:00
euromark
2455af09c5 Resolves ticket #4100 2013-09-25 14:01:35 +02:00
euromark
12f2f729c8 more cs 2013-09-17 14:53:07 +02:00
euromark
382f75dbfc cs corrections, bool to boolean and int to integer. 2013-09-17 14:44:34 +02:00
mark_story
5ec9b145bf Fix label element for attributes not matching their inputs.
Radio elements would contain ModelModelFieldValue instead of
ModelFieldValue like they should. This was caused by the fix for #3936
and lack of tests for create() + radio().

Fixes #4071
2013-09-16 22:38:28 -04:00
mark_story
3c9500a3cb Fix whitespace error. 2013-09-05 10:21:24 -04:00
aread22
cb056a5cbe Use FormHelper->label instead of HtmlHelper->useTag
Implementing suggested fix by mark_story
2013-09-04 13:32:36 -04:00
aread22
4ab1c8c225 Format to CakePHP code sniffs 2013-09-01 21:08:17 -04:00
aread22
64bb74a7e8 Potential Fix for LightHouse Ticket #3936
I believe I found a fix for this issue. I am here at #CakeFest2013 and during the #HourOfContribution I ran across this issue.

Currently in CakePHP 2.4 on Line 1522 - 1524 you can see the following code:

@@@ php
if ($label) {
	$optTitle = $this->Html->useTag('label', $tagName, '', $optTitle);
}
@@@

The $label variable here the is the $label array passed into the input method in Sethathi example above. The problem is that the $label array is completely ignored and instead a label is created using the HtmlHelper->useTag method.

I have what I believe is a fix for this issue but it hasn't been extensively tested. I tested against Sethathi example in the ticket and it produced the correct result.

The fix is simple. We detect if an array is passed in and then send it to the FormHelper label method instead of the HtmlHelper useTag method. The FormHelper label methods accepts an options array, so we pass in the $label array.

This will probably need to be fixed for checkbox also

"ask":https://cakephp.lighthouseapp.com/users/235987 helped me with this fix
2013-09-01 20:56:44 -04:00
mark_story
0f2d59d987 Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Network/CakeResponse.php
	lib/Cake/TestSuite/CakeTestCase.php
2013-08-18 23:10:08 -04:00
euromark
6cf147e8c8 unify null checks - avoid method call in favor of strict check 2013-08-16 20:12:49 +02:00
Alexander Hofbauer
80e589f19d Correctly encode confirm handlers
With encode set to false the onclick handler will be sent through
h() regardless, making links and postLinks work again.
2013-08-13 10:11:22 +02:00
José Lorenzo Rodríguez
890d4a9e2c Merge pull request #1478 from aleho/2.4
Use a protected method to generate confirm() links
2013-08-11 13:51:29 -07:00
Mark
6c30851783 Merge pull request #1424 from dereuromark/2.4-form-helper-datetime-rounding
provide ability for rounding - closes #1986
2013-08-07 10:15:35 -07:00
Alexander Hofbauer
8601e0078a Implement a Helper method to generate confirm() links
This allows for overriding the default behavior of showing
confirm()-dialogs in Html and Form helpers.
2013-08-06 10:04:44 +02:00
ADmad
38b050a711 Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Console/Command/ConsoleShell.php
2013-08-04 19:26:55 +05:30
ADmad
61bf8df454 Renaming base url config keys and methods for better uniformity. 2013-08-01 00:44:36 +05:30
ADmad
b22b39f158 Deprecate constants IMAGES_URL, CSS_URL, JS_URL and add corresponding config values instead. 2013-07-31 18:31:26 +05:30
David Gallagher
bce0eb37b4 Don't need to check for empty because Model::validator() returns an interator 2013-07-30 11:09:43 +10:00
David Gallagher
5937685817 Use ModelValidator::count() to count dynamiclly added validation rules 2013-07-26 22:44:59 +10:00
euromark
b412e2cbb1 provide ability for rounding - closes #1986 2013-07-16 15:42:08 +02:00
ADmad
4ded269549 Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Controller/Component/Auth/BlowfishAuthenticate.php
	lib/Cake/VERSION.txt
2013-07-07 12:22:12 +05:30
Marc Würth
11eeb33644 Some minor CS improvements to FormHelper
Replaced use of deprecated method getVar by get.
Improved DocBocks, mostly data types
Removed deprecated DocBock tag because it's an invalid use of such. This makes the method look like it was deprecated but in reality it's only one of the possible values of one of its parameters.
2013-07-06 19:04:06 +02:00
euromark
c989624f80 whitespace coding standards 2013-07-05 14:15:18 +02:00
mark_story
c597855fe4 Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Test/Case/Network/CakeRequestTest.php
2013-07-03 14:21:09 -04:00
euromark
f389435bae coding standards and else block simplification 2013-07-03 19:27:17 +02:00
euromark
a90cb29c0f simplify else cases 2013-07-03 01:14:41 +02:00
euromark
7cb19b97db coding standards and simplification of else cases as well as some minor fixes 2013-07-03 00:52:48 +02:00
mark_story
f09693f6e8 Merge branch 'master' into 2.4 2013-06-29 23:26:26 -04:00
euromark
ee5e8c95dd fix issue with FormHelper and undefined variable and extract 2013-06-25 12:11:10 +02:00
mark_story
dcf7df39d2 Merge branch 'master' into 2.4 2013-06-21 17:47:37 -04:00
mark_story
68db74d32d Cleanup from previous commit.
Refs #GH-1352
2013-06-19 15:06:51 -04:00
Lucas Machado
dc3f9113b0 Fix to the date input year field
Create the field if no value is informed only to the maxYear and not to
the current date.
2013-06-19 15:05:15 -04:00
euromark
eb13242680 assert proper array access for _dateTimeSelected() 2013-06-18 09:39:43 +02:00
ADmad
12da3b1f27 Merge branch 'master' into 2.4 2013-06-16 13:07:44 +05:30
euromark
b5b8885096 doc block formhelper postLink 2013-06-12 18:14:02 +02:00
ADmad
636cc8c103 Merge branch 'master' into 2.4 2013-06-09 18:08:32 +05:30
ADmad
3303a2cda1 Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Console/Templates/skel/Config/Schema/db_acl.php
	lib/Cake/Console/Templates/skel/Config/Schema/i18n.php
	lib/Cake/Console/Templates/skel/Config/Schema/sessions.php
	lib/Cake/Console/Templates/skel/Config/acl.ini.php
	lib/Cake/Console/Templates/skel/Config/acl.php
	lib/Cake/Console/Templates/skel/Config/bootstrap.php
	lib/Cake/Console/Templates/skel/Config/core.php
	lib/Cake/Console/Templates/skel/Config/database.php.default
	lib/Cake/Console/Templates/skel/Config/email.php.default
	lib/Cake/Console/Templates/skel/Config/routes.php
	lib/Cake/Console/Templates/skel/Console/Command/AppShell.php
	lib/Cake/Console/Templates/skel/Console/cake.bat
	lib/Cake/Console/Templates/skel/Console/cake.php
	lib/Cake/Console/Templates/skel/Controller/AppController.php
	lib/Cake/Console/Templates/skel/Controller/PagesController.php
	lib/Cake/Console/Templates/skel/Model/AppModel.php
	lib/Cake/Console/Templates/skel/View/Errors/error400.ctp
	lib/Cake/Console/Templates/skel/View/Errors/error500.ctp
	lib/Cake/Console/Templates/skel/View/Helper/AppHelper.php
	lib/Cake/Console/Templates/skel/View/Layouts/Emails/html/default.ctp
	lib/Cake/Console/Templates/skel/View/Layouts/ajax.ctp
	lib/Cake/Console/Templates/skel/View/Layouts/default.ctp
	lib/Cake/Console/Templates/skel/View/Layouts/error.ctp
	lib/Cake/Console/Templates/skel/View/Layouts/flash.ctp
	lib/Cake/Console/Templates/skel/View/Pages/home.ctp
	lib/Cake/Console/Templates/skel/index.php
	lib/Cake/Console/Templates/skel/webroot/index.php
	lib/Cake/Console/Templates/skel/webroot/test.php
2013-06-02 18:03:59 +05:30
Saleh Souzanchi
ca44413689 fix Form::_selectOptions, when disabled attribute is not array so do not be disabled item of options 2013-06-01 14:16:23 +04:30
Marc Würth
4c9f0414cb Improved the DocBlocks and other code cleanup
Fixed @license tag, url comes first
Whitespace and other minor code cleanup
Added some docblocks
2013-05-31 00:11:19 +02:00
mark_story
72b75660e5 Merge branch 'master' into 2.4 2013-05-16 21:31:27 -04:00
mark_story
f7d106a386 Fix FormHelper::tagIsInvalid with saveMany forms.
When saving multiple records validation errors were not correctly shown.
Fudge the entity path so it matches the validation errors set in the
models.

Fixes #3828
2013-05-13 21:09:31 -04:00
mark_story
cdede82b7e Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Core/Object.php
2013-05-07 22:22:48 -04:00
ADmad
91319bbe7b Fix disabled attribute check.
Fixes #3818
2013-05-08 01:43:27 +05:30
ADmad
a10275fb8b Merge branch 'master' into 2.4
Conflicts:
	lib/Cake/Test/Case/Model/Datasource/Database/PostgresTest.php
2013-05-05 14:36:46 +05:30
mark_story
df8f5e8f84 Add additional entropy to postLink()
This should help make more uniq id's for postLinks that are created
sequentially.

Fixes #3807
2013-05-01 09:46:57 -04:00
euromark
6b015d9771 fix select hours for 0/12 2013-04-30 14:54:09 +02:00
euromark
09d9efe235 spelling corrections (a url to an URL, unify URL) 2013-04-29 11:05:17 +02:00
ADmad
e11d0f829a Added html5 required attribute for select tags too 2013-04-27 18:39:53 +05:30
euromark
67cc7f66da dont add required class on wrapper div 2013-04-26 15:41:35 +02:00
mark_story
64da4e75c4 Remove silly code.
Changing the 12'th hour into 0 shouldn't be done when figuring out the
meridian, it makes sorting things out later more complicated. Remove
some duplicated code.
2013-04-20 14:48:54 -04:00
mark_story
f6c3015705 Add additional tests and fix incorrect meridian selection
When dates around midnight were used with interval + 12hr formats, the
incorrect meridian was selected.

Refs #GH-1237
2013-04-20 14:39:47 -04:00
mark_story
ed435870ae Fix secure field lists when select elements have custom name attributes.
When a select element had a custom name attribute the secured field name
was incorrect.

Fixes #3753
2013-04-12 12:30:05 -04:00
ADmad
548cccbbe2 "maxlength" is not a valid attribute for input element of type "number" in html5. 2013-04-11 21:06:52 +05:30
mark_story
c77c7a7347 Fix warning with FormHelper::inputs()
introspectModel() can return non-array data sometimes. Casting avoids
warnings when forms are generate for models with no or faulty schema()
methods.

Refs #3602
2013-04-09 21:46:51 -04:00
mark_story
d8d8e9644d Fix array('disabled') and array('disabled' => true) working differently.
The shortform should work the same as the longer form with regards to
disabling field locking with SecurityComponent.

Fixes #3734
2013-04-03 12:46:39 -04:00
Renan Gonçalves
96c9174ee2 Fixing tag generation for Html::script() and Html::css() when using 'fullBase' => true.
Changing values on array_diff_key() from empty ('') to null as they have no consequences and offer better readability.
2013-03-29 15:24:08 +01:00
mark_story
2f79996140 Remove unused code and remove strict type checks.
Remove some unused code around manipulating hours. Also allow the
timeFormat option to be specified as either a string or an int. Both
types should be accepted and treated as equivalent.
2013-03-18 21:38:02 -04:00
Graham Watson
e38892ff06 Change equal operators to identity operators 2013-03-18 13:34:14 -03:00
Graham Watson
2ac545291a Fix incorrect default meridian
Forgot to remove a line
2013-03-14 16:58:13 -03:00
Graham Watson
ec56d828b0 Fix incorrect default meridian
Prevent the default meridian from being changed from 'pm' to 'am' when the default time is in a 12-hour format between 1:00pm and 11:59pm and both a minute interval and default minute value are specified.
2013-03-14 16:48:12 -03:00
mark_story
f1d192f282 Fix issue with midnight hour & 12hr formats.
No hour would be selected in the case of 12hr formats and a time like
00:xx:yy
2013-03-13 20:56:04 -04:00