Commit Graph

1820 Commits

Author SHA1 Message Date
Sam Minnée
168eaf72d8 Merge pull request #300 from silverstripe-scienceninjas/feature/ssviewer-enhancements
Feature/ssviewer enhancements
2012-04-11 16:29:22 -07:00
Ingo Schommer
e045ffeb29 Merge pull request #205 from AngryPHPNerd/sapphire
---

In SS-2.4 you can prefix files with an underscore to exclude them from manifest this can be useful for backups of old classes or huge data files.

I think this behaviour should be readded.

(I will add a unit test for this ...)
2012-04-11 17:32:34 +02:00
Ingo Schommer
6cd91ff449 Merge pull request #299 from ajoneil/sapphire
---

Conflicts:
	forms/NumericField.php
2012-04-11 15:36:35 +02:00
Ingo Schommer
800d5fbc01 Merge pull request #291 from halkyon/pg_fixes
MINOR Fixed failing tests on pgsql
2012-04-11 06:14:57 -07:00
Hamish Friedlander
e4a043ac0b ENHANCEMENT: Allow arguments to be passed to templates via an array passed to SSViewer#process and via keyword=value pairs in the <% include %> tag 2012-04-11 21:34:27 +12:00
Andrew O'Neil
bdb312c665 API CHANGE: DBField::hasValue() conflicts with ViewableData::hasValue(), use DBField::exists() instead. 2012-04-11 14:48:06 +12:00
Sean Harvey
6c9a3ba9f0 MINOR Fixed failing tests on pgsql 2012-04-10 17:07:41 +12:00
Stig Lindqvist
0d031a5045 API CHANGE Use Config for registering default password encryptors
Using the config system for registering password encryptors
Remove the eval on password encryptor construction by using reflection
Throws deprecation messages when using static register / unregister
2012-04-07 19:14:00 +12:00
Sam Minnee
e01b0aa3d0 ENHANCEMENT PjaxResponseNegotiator for more structured partial ajax refreshes, applied in CMS and GridField. Also fixes issues with history.pushState() and pseudo-redirects on form submissions (e.g. from page/add to page/edit/show/<new-record-id>) 2012-04-05 23:00:22 +02:00
Ingo Schommer
a44b67bae2 API CHANGE Moved RequestHandler->isAjax() to SS_HTTPRequest->isAjax() 2012-04-05 23:00:22 +02:00
Ingo Schommer
40d73127ae MINOR Using late static binding instead of Object::create() calls 2012-04-04 17:10:31 +02:00
Ingo Schommer
6517f4496b Merge pull request #273 from ajoneil/sapphire
---

This allows DataList::create(SiteTree) as equivalent to Object::create(DataList, SiteTree), without
having to have a create() function on DataList.

Required for E_STRICT compliance, as child classes cant override create() if they change the arguments.

DBField::create() is also renamed to DBField::create_field(), as this does not just call the constructor, which all other cases of create() do.

Conflicts:
	tests/model/DateTest.php
	tests/model/DatetimeTest.php
2012-04-04 16:48:16 +02:00
Sean Harvey
db65704639 MINOR Removed PHP 5.2 check in DateTest 2012-04-03 09:54:55 +12:00
Sean Harvey
8ae474b182 API CHANGE Remove use of Services_JSON and replace with json_encode() and json_decode()
API CHANGE Convert::json2array() will convert nested JSON structures to array as well for easier traversal, instead of array with nested objects.
2012-03-31 13:17:36 +13:00
Ingo Schommer
d0d23dc591 Merge pull request #271 from halkyon/group_changes
BUGFIX Nested Group records should be removed, along with the parent.
2012-03-28 02:52:52 -07:00
Sean Harvey
bd95bcaf61 BUGFIX Nested Group records should be removed, along with the parent. 2012-03-28 22:49:58 +13:00
Ingo Schommer
f0ee711f52 Merge pull request #275 from halkyon/e_strict_support
First round of fixes for E_STRICT compliance
2012-03-28 02:42:26 -07:00
Sean Harvey
e097f6e1a8 MINOR Fixes to method arguments in core classes for E_STRICT support.
API CHANGE Remove abstract static function and just use static functions
in Authenticator (PHP 5.3+ doesn't support abstract static functions)
2012-03-28 22:41:42 +13:00
Ingo Schommer
f81ad47239 Merge pull request #272 from halkyon/date_fixes
DateField::setValue() with dmyfields sets erroneous date in valueObj
2012-03-28 02:38:03 -07:00
Fred Condo
5954774530 BUGFIX: Use UTC consistently across all tests for date/time calculations
This ensures that tests will not pass or fail based on whether the test
machine is on NZ time.

This partially reverts df050eda5d, which has
already been merged. Instead of finding tests that use date calculations, we
are now setting the default time zone in SapphireTest so it will apply to the
whole test suite and any future tests.

Adjust expected values in certain tests for UTC, where the expected values had
previously been expressed in NZ time.

When creating a temp DB for test fixtures, create the DB connection with
timezone UTC.
2012-03-27 10:29:07 -07:00
Fred Condo
82bb12b5d3 MINOR: Explicitly declare $adapter in DbDatetimeTest 2012-03-27 10:28:10 -07:00
Andrew O'Neil
1a36f92bb9 MINOR: Fix tests on PHPUnit 3.4 2012-03-27 15:38:36 +02:00
Andrew O'Neil
de2832e65f ENHANCEMENT: Allow Object::create() to be called with late static binding.
This allows DataList::create('SiteTree') as equivalent to Object::create('DataList', 'SiteTree'), without
having to have a create() function on DataList. Required for E_STRICT compliance.
2012-03-27 17:57:42 +13:00
Sean Harvey
c02b4418bb BUGFIX Using DateField "dmyfields" option, if you set empty
day/month/year values, valueObj on DateField will contain erroneous values.
Check that all the value inputs aren't null or empty values BEFORE
calling Zend_Date on the value.
2012-03-27 14:46:09 +13:00
Sam Minnee
2576944a45 API CHANGE: Added DataObject::relField(), which pushes the "relation dot syntax" code of TableListField/GridField back to the model.
BUGFIX: Made DataObject::relObject() more flexible; allowable thanks to new ORM.
2012-03-24 14:04:08 +13:00
Nicolaas
dee3939cf7 BUGFIX: Fix the broken perform readonly transformation which was always showing NO (#6453) 2012-03-24 13:35:19 +13:00
Sean Harvey
02c8019bb8 ENHANCEMENT Introduce Database::prepStringForDB(), used by
DBField::prepValueForDB() and StringField::prepValueForDB() to ensure
the field value is escaped correctly for the database. This means
databases like MSSQL can introduce an "N" prefix (marking text as
unicode to be saved correctly) by overloading the
prepStringForDB method. MySQL, PostgreSQL and SQLite3
operate as usual.
2012-03-20 21:20:35 +13:00
Sean Harvey
9b0009643a MINOR Added tests for SS_Map testing value method instead of value field 2012-03-15 17:42:42 +13:00
Ingo Schommer
71c026c75a MINOR Removed SiteTree dependency from SSViewerTest (fixes #6907) 2012-03-14 16:11:23 +01:00
Andrew O'Neil
6db08cbc36 MINOR: Fix tests on PHPUnit 3.4 2012-03-14 16:05:19 +13:00
AngryPHPNerd
42f8d9f77a - Readded check for _config.php in ClassManifest.
- Added UnitTest for files with underscore prefix.
2012-03-13 23:38:34 +01:00
Ingo Schommer
73efe8522b MINOR Fixed hardcoded fixture IDs in GridFieldDetailFormTest 2012-03-12 11:15:06 +01:00
Sam Minnee
7de5bf55e0 API CHANGE: Updated throwExceptionOnBadDataType setter to be standard setThrowExceptionOnBadDataType(), added getThrowExceptionOnBadDataType(). 2012-03-10 14:44:12 +13:00
Sam Minnee
f670576cad MINOR: Fix test to rely less on known test data keys (breaks SQLite) 2012-03-10 14:42:25 +13:00
Fred Condo
df050eda5d BUGFIX: Correct testSetNullAndZeroValues() of DatetimeTest
- Code was assuming NZ time zone
- Set the default timezone to UTC for the test
- Correct the expected times for the epoch from noon to 00:00:00 UTC
2012-03-09 15:41:11 -08:00
Fred Condo
6e6890f689 Clarify failure messages to distinguish string and numeric zero tests 2012-03-09 15:41:11 -08:00
Ingo Schommer
4e1c8bdb32 Merge branch 'fieldlist-fortemplate' of https://github.com/sminnee/sapphire
Conflicts:
	forms/FieldList.php
2012-03-09 17:03:02 +01:00
Sam Minnee
317756d92a Merge branch 'feature/config' of https://github.com/silverstripe-scienceninjas/sapphire into config 2012-03-09 19:22:34 +13:00
Sam Minnee
d896c7dc03 MINOR: Removed PHP 5.3-only code from SSViewerTest. 2012-03-09 18:32:10 +13:00
Hamish Friedlander
d89544f3f6 MINOR: Disable tests in ObjectStaticTest that break 2012-03-09 18:16:45 +13:00
Hamish Friedlander
bc3f5ac329 BUGFIX: DataObjectTest needs its extensions to use the new static-on-object method to keep the ordering as it expects 2012-03-09 18:16:45 +13:00
Hamish Friedlander
d355cd5baf ENHANCEMENT: Add config layer - the Config access class itself, and the ConfigManfiest builder which parses in the yaml config files 2012-03-09 18:13:56 +13:00
Sam Minnee
37684837b8 MINOR: Fixed tests to suit GridField and DataList API changes 2012-03-09 18:11:50 +13:00
Sam Minnee
f288575919 MINOR: Removed obsolete test. 2012-03-09 18:11:26 +13:00
Sam Minnée
9302137125 Merge pull request #233 from halkyon/master
Fixed regression where PasswordEncryption field not set on Member
2012-03-08 20:49:21 -08:00
Sean Harvey
d28da56e19 BUGFIX Fixed regression where Member::PasswordEncryption field wouldn't be set to the default 2012-03-09 17:29:57 +13:00
Stig Lindqvist
34e7e9a05e MINOR Fix of GridFieldDefaultConfigTest 2012-03-09 17:07:41 +13:00
Sam Minnee
a55e06f6b5 API CHANGE: Introduce SS_Limitable class for adding to SS_Lists that have limit capability.
API CHANGE: Deprecated SS_List::getRange() in favour of SS_Limitable::limit().
API CHANGE: Introduce SS_Limitable::limit($limit, $offset = 0) as the only modern way of specifying limits; deprecate all others.
2012-03-09 17:07:40 +13:00
Sean Harvey
033a1e593a MINOR Fixed naming of test classes 2012-03-09 16:55:20 +13:00
Sean Harvey
e78419cef1 MINOR Fixed tests for GridFieldToolbarHeaderTest 2012-03-09 16:47:35 +13:00
Sean Harvey
9b4b34c4f9 MINOR Fixed broken tests in GridFieldDetailFormTest 2012-03-09 16:37:25 +13:00
Stig Lindqvist
2ab12affec Merge pull request #210 from sminnee/form-visiblefields
Form::VisibleFields() and FieldList::VisibleFields()
2012-03-08 19:24:25 -08:00
Sam Minnée
f01982a829 Merge pull request #219 from halkyon/master
Fixed HtmlEditorField not inserting file/page links correctly due to broken shortcodes
2012-03-08 18:46:03 -08:00
Sam Minnee
ba93028b01 API CHANGE: Added Form::VisibleFields() and FieldList::VisibleFields(), which list everything except hidden fields, to assist with the creation of custom form layouts. 2012-03-09 15:41:42 +13:00
Sean Harvey
0df958f81d MINOR Fixed tests to use commas as delimiter for shortcodes, also test spaces still work as well 2012-03-09 15:00:03 +13:00
Sam Minnee
a071456837 Merge branch 'master' of github.com:silverstripe/sapphire
Conflicts:
	tests/forms/gridfield/GridFieldDetailFormTest.php
	tests/forms/gridfield/GridFieldPopupFormsTest.yml
2012-03-09 14:37:32 +13:00
Sean Harvey
49267dbbc4 ENHANCEMENT Shortcodes now support commas as delimiter for attributes (thanks aoneil for help with the regex!) (trac #6868)
BUGFIX HtmlEditorField not inserting shortcodes correctly (trac #6868)
2012-03-09 14:25:42 +13:00
Stig Lindqvist
09d6fa7bb3 API CHANGE Renamed GridFieldDefaultColumns to GridFieldDataColumns #6921 2012-03-09 14:07:40 +13:00
Stig Lindqvist
6d0b0d6788 API CHANGE Removing GridFieldDeleteAction and moved functionality into GridFieldRemoveButton #6921 2012-03-09 13:55:49 +13:00
Stig Lindqvist
8b82dae06c API CHANGE: Renaming of gridfield components #6921 2012-03-09 12:54:02 +13:00
Ingo Schommer
e5f02337cd MINOR Testing nested detail forms in GridField 2012-03-09 00:06:14 +01:00
Stig Lindqvist
8b2213d56c MINOR Added per-record canView, canDelete, canCreate and canEdit checks on gridfield and gridfield components #6890 2012-03-09 10:58:01 +13:00
Ingo Schommer
f9323b398c BUGFIX Type-safe checks for Controller::join_links(), allowing arguments with a value of "0" 2012-03-08 22:20:37 +01:00
Sam Minnee
5800db0239 API CHANGE: Allow for the creation of custom GridField fragments. (#6911) 2012-03-09 10:03:53 +13:00
Ingo Schommer
e4a6dd5850 Merge branch 'integration'
Conflicts:
	forms/gridfield/GridField.php
2012-03-08 20:25:21 +01:00
Ingo Schommer
ac20bfaf99 MINOR Renamed GridFieldAction_Edit to GridFieldEditAction, GridFieldAction_Delete to GridFieldDeleteAction, to make it clearer that there's no parent class/concept called "GridFieldAction". There's only the GridFieldActionProvider interface, as well as the GridField_FormAction (which is a related, but different kettle of fish). 2012-03-08 18:22:25 +01:00
Normann Lou
d35d7507ff FEATURE SSF-25 : enable to remove component from a GridFieldConfig. 2012-03-08 20:29:18 +13:00
Sam Minnee
1fd8d19e28 API CHANGE: FormAction::FieldHolder() now returns just the Field(), so that a FieldList::forTemplate() returns a sensible result for an action list. 2012-03-08 10:02:57 +13:00
Sam Minnee
e4dbf8065b API CHANGE: Added FieldList::forTemplate(), so that by default a FieldList will be rendered in its template as a concatenation of FieldHolder values.
API CHANGE: Removed unnecessary HiddenFieldList class.
2012-03-08 10:00:54 +13:00
Ingo Schommer
8690e531a5 MINOR Reverted MemberTest assertion, previously broken by recent ManyManyList and Member foreign key refactoring 2012-03-07 01:23:41 +01:00
Andrew O'Neil
58309cb2ec MINOR: Tests for add and edit forms of GridField 2012-03-07 10:48:09 +13:00
Ingo Schommer
51bae9e4a6 ENHANCEMENT Allowing to save ManyManyList with multiple foreign keys (e.g. required to add to an overloaded Group->Members() relationship) 2012-03-06 21:38:33 +01:00
Ingo Schommer
1201f6c8bb BUGFIX Saving records in ListboxField->saveInto() and PermissionCheckboxSetField->saveInto() so we have a database ID to relate to (was previously customised in MemberTableField->saveComplexTableField(), which is now deprecated) 2012-03-06 01:23:34 +01:00
Ingo Schommer
bb6d4c506e BUGFIX Fixed HasManyList and ManyManyList queries for relationships on new records (was returning all available records due to the SQL filtering ignoring ID=0) 2012-03-06 01:23:34 +01:00
Julian Seidenberg
a715785a42 ENHANCEMENT: SSF-106 adding the ability to turn off and on the "add new" button on the GridFieldTitle 2012-03-06 11:19:46 +13:00
Hamish Friedlander
374ed19406 API CHANGE: Change variable expose method in TemplateGlobalProvider and TemplateIteratorProvider to (a) not clash with each other and, (b) be less generic 2012-03-06 09:31:57 +13:00
Hamish Friedlander
2c65d3a398 BUGFIX: Add casting support to global and iterator variable injection 2012-03-06 09:31:57 +13:00
Hamish Friedlander
156d2226fc BUGFIX: Replaced deprecated DataObjectSet use with ArrayLists in SSViewerTest 2012-03-06 09:31:56 +13:00
Hamish Friedlander
91f4ba15f1 ENHANCEMENT: supporting "current scope" loop and with: (with Children) (loop) $Title (end_loop) (end_with) 2012-03-06 09:31:55 +13:00
Hamish Friedlander
28bb83552a API-CHANGE: moving iterator support from ViewableData to SSViewer. New set of unit tests for iterator support functions. 2012-03-06 09:31:55 +13:00
Hamish Friedlander
927dbbe717 API-CHANGE: Global template variables can now be called directly using SSViewer_DataPresenter instead of needing to inherit off ViewableData 2012-03-06 09:11:46 +13:00
Ingo Schommer
5d565dcfa3 ENHANCEMENT Added ListboxField->setDisabledItems() and setDefaultItems() (similar to CheckboxSetField API) 2012-03-05 16:11:29 +01:00
Ingo Schommer
344899ab77 Revert "ENHANCEMENT Support numeric array values in CheckboxSetField (?Field[]=val1&Field[]=val2 instead of ?Field[val1]=1&Field[val2]=1)" - data handling with numeric/associative arrays too clumsy, fixed up ListboxField instead
This reverts commit 8fa266462f.
2012-03-05 10:55:44 +01:00
Ingo Schommer
6e3ceefbb8 ENHANCEMENT Relationship saving in ListboxField (preparing for chosen.js usage), escaping commas in payload when serialising multiple values into a single field 2012-03-05 10:55:09 +01:00
Sean Harvey
b3d977f0e7 Merge remote-tracking branch 'upstream/master' into file_shortcodes 2012-03-03 10:24:06 +13:00
Ingo Schommer
299bf8b9c6 Merge branch 'integration' 2012-03-02 20:53:06 +01:00
Ingo Schommer
8fa266462f ENHANCEMENT Support numeric array values in CheckboxSetField (?Field[]=val1&Field[]=val2 instead of ?Field[val1]=1&Field[val2]=1) 2012-03-02 20:46:22 +01:00
Ingo Schommer
e5c4b0a36b ENHANCEMENT Hierarchy->Breadcrumbs() 2012-03-02 20:46:19 +01:00
Ingo Schommer
424da6abe1 API CHANGE Moved NZGovtPasswordValidator to new 'securityextras' module 2012-03-02 00:28:22 +01:00
Ingo Schommer
88039ffb81 MINOR GridFieldRelationAddTest (SSF-53) 2012-03-01 17:57:14 +01:00
Sean Harvey
898c8f5497 ENHANCEMENT [file_link id=n] shortcode support for file links in HtmlEditorField 2012-03-01 22:20:58 +13:00
Ingo Schommer
586ca7374f Merge pull request #202 from halkyon/date_changes
Date changes
2012-02-29 13:02:30 -08:00
Ingo Schommer
68914efb8d MINOR SSViewer->testCastingHelpers() 2012-02-29 21:06:43 +01:00
Ingo Schommer
386bbf8095 MINOR Fixed GridFieldTest (broke due to changes in the default config) 2012-02-28 18:20:21 +01:00
Sean Harvey
58d48583a9 ENHANCEMENT Date::DayOfMonth() now supports ordinal argument, so you can get somehing like "10th" or "2nd". Also supported in Date::RangeString 2012-02-24 20:38:11 +13:00
Sean Harvey
8fdc531345 BUGFIX Ensure Date and Datetime field types actually set NULL, false, empty string values correctly instead of "1970-01-01" which gets saved to the database instead of NULL.
BUGFIX Datetime::Nice() and casting methods return NULL when there is no value, to be consistent with Date::Nice() and so on
2012-02-24 20:37:58 +13:00
Dominik Beerbohm
edf6cd6d83 API CHANGE: Remove ArrayData::forTemplate(), because it has little usefulness corrupts ViewableData customisation. 2012-02-24 16:35:12 +13:00
Ingo Schommer
3b72f598a2 MINOR Added CSS class for identifying column in GridFieldDefaultColumns 2012-02-23 23:29:58 +01:00
Ingo Schommer
9df1487d8f ENHANCEMENT Allow to batch-add components via GridFieldConfig->addComponents() 2012-02-23 23:29:57 +01:00
Ingo Schommer
9190bc4893 ENHANCEMENT Support for <legend> tags in CompositeField 2012-02-17 13:35:53 +01:00
Ingo Schommer
b417daf7af ENHANCEMENT Custom tags for CompositeField, which allows for nesting <fieldset> elements (not possible through the toplevel-only FieldList/FieldSet class) 2012-02-17 13:35:53 +01:00
Will Rossiter
fa1923dfa4 Merge pull request #195 from simonwelsh/html2raw-fix
BUGFIX Convert::html2raw() not correctly stripping script and style tags
2012-02-16 14:25:40 -08:00
Sean Harvey
b1acd0520d MINOR Fixed tests using PostgreSQL as the database 2012-02-16 12:19:33 +13:00
Sean Harvey
f1a67a87de MINOR Fixed broken test using PostgreSQL as the database 2012-02-16 12:18:36 +13:00
Simon Welsh
7658e902fc BUGFIX Convert::html2raw() not correctly stripping script and style tags 2012-02-15 07:55:52 +13:00
Ingo Schommer
5220a46fd0 ENHANCEMENT Inserting image via new dialog with ajax field retrieval and GridField file selection. Rewritten to jQuery.entwine and using the new HTML editor abstraction layer. 2012-02-14 13:53:35 +01:00
Ingo Schommer
c422e06b60 MINOR Removed GridField->requireDefaultCSS() idiom, not used elsewhere (or used for JS in the same class), should be handled through Requirements class instead 2012-02-14 13:53:32 +01:00
Ingo Schommer
3866f561f5 ENHANCEMENT Using GridField for file selection in "insert image" dialog
API CHANGE Combined HTMLEditorField_Toolbar->FlashForm() and ImageForm() into new MediaForm() to handle both file types
2012-02-14 13:30:52 +01:00
Fred Condo
d370423825 Clean up trailing ?> per coding standard
All sapphire but the lang directory
2012-02-12 12:40:16 -08:00
Sean Harvey
c5452a7d4c MINOR Fixed broken tests in PostgreSQL 2012-02-11 14:40:39 +13:00
Sean Harvey
753bed5294 MINOR Fixed broken tests in PostgreSQL 2012-02-11 14:25:13 +13:00
Ingo Schommer
91b0c7b3ba Merge pull request #187 from silverstripe-scienceninjas/story/datadifferencetest-fix
MINOR DataDifferenceTest should not test whitespace
2012-02-10 15:43:40 -08:00
Sean Harvey
591dd4efa9 BUGFIX SS_Map::keys() and SS_Map::values() are identical, keys() should return the *keys* not the values #6818 2012-02-11 11:46:20 +13:00
Stig Lindqvist
03abde46be MINOR DataDifferenceTest should not test whitespace 2012-02-10 23:27:06 +01:00
Ingo Schommer
1d4ac6842f Merge pull request #184 from chillu/ss-log-tweaks
SS_Log: String args, extra data logging, "in line of..." formatting
2012-02-10 14:22:40 -08:00
Ingo Schommer
448c5fd7b9 Merge branch 'story/SSF-28' 2012-02-08 15:35:34 +01:00
Ingo Schommer
c00f0406e9 ENHANCEMENT Attaching files from /assets through UploadField 2012-02-08 15:34:41 +01:00
Ingo Schommer
a0d583291c MINOR Fixed UploadField->managesRelation() when no record is set 2012-02-08 11:27:10 +01:00
Sam Minnee
d1a39b0b1a BUGFIX: Fixed operation of the onlyDeletedFromStage parameter of Hierarchy::liveChildren(). 2012-02-08 18:38:37 +13:00
Ingo Schommer
1b4dda491a MINOR Moving File->OwnerID setting to model layer 2012-02-08 01:04:56 +01:00
Ingo Schommer
24e2003e35 ENHANCEMENT Allow logging of extra data in SS_Log::log() (currently only displayed through SS_LogEmailWriter) 2012-02-06 23:38:37 +01:00
Ingo Schommer
c0d187071a ENHANCEMENT New UploadField class to replace FileIframeField, ImageField and SimpleImageField 2012-02-03 01:00:08 +01:00
Ingo Schommer
618d767dcb API CHANGE Removed XML escaping in DBField->LowerCase() and UpperCase(), in order to consistently allow SSViewer to deal with casting. Affects subclasses like Text, Varchar and HTMLText.
API CHANGE Deprecated StringField->Lower() and Upper(), use String->LowerCase() and UpperCase() instead. Moved methods from DBField to StringField.
2012-01-31 16:11:55 +01:00
Ingo Schommer
e1e5546ab6 BUGFIX Casting return values on text helper methods in StringField, Text, Varchar 2012-01-31 16:11:55 +01:00
Ingo Schommer
5fe86be311 ENHANCEMENT Added GridFieldConfig->getComponentsByType() and getComponentByType() 2012-01-30 15:47:26 +01:00
Stig Lindqvist
7f09b6931b API CHANGE DataList::subtract and DataQuery::subtract for subtracting a list from another list
Minor Stripped out ManyManyList tests from DataListTest into it's own test case
2012-01-26 17:59:43 +13:00
Ingo Schommer
cb74dbccfc MINOR Removed overzealous value validation in ListboxField, should silently ignore unknown values (lacking better referential integrity measures in the underlying model layer) 2012-01-19 12:13:18 +01:00
Sam Minnee
d296a9411d Merge remote-tracking branch 'refs/remotes/scienceninjas/story/sort-by-relation-on-datalist' 2012-01-10 17:33:04 +13:00
Sam Minnee
b311fbf038 MINOR: Always flush the manifest when using sapphire/test/bootstrap.php 2012-01-10 17:28:11 +13:00
Sam Minnee
65299afd27 MINOR: Removed database coupling from GridFieldTest. 2012-01-10 17:00:02 +13:00
Sam Minnee
6a08a82c9c MINOR: Removed notice-level errors from form field construction. 2012-01-10 16:58:27 +13:00
Sam Minnee
489191b44f BUGFIX: Fixed notice-level errors in GridField, exposed by test failures. 2012-01-10 16:39:12 +13:00
Sam Minnée
c2da56d4a1 Merge pull request #136 from simonwelsh/54_fixes
BUGFIX Generate valid PHP when $includeDebuggingComments is true.
2012-01-09 19:09:45 -08:00
Sam Minnee
88f645ef59 Merge remote-tracking branch 'refs/remotes/scienceninjas/pull/gridfield-tests' 2012-01-10 16:02:06 +13:00
Sam Minnee
34cc18e66b MINOR: Added a test for GridField_URLHandler components. 2012-01-10 11:10:38 +13:00
Stig Lindqvist
3c516b7b97 API CHANGE: Refactored GridField modifiers into GridField_ColumnProvider, GridField_HTMLProvider, GridField_ActionProvider, and GridField_DataModifier interfaces, all added as components in the config.
API CHANGE: Simplified state handling so that it's just a key store. Affectors are replaced with GridField_ActionProviders. API CHANGE: Removed GridField state manipulation actions instead opting for GridField_ActionProvider actions.
API CHANGE: Removed support for modifiers that add "body" rows, instead having core support for generating the body rows hardcoded into the GridField.
API CHANGE: Allow modification of columns across the whole GridField with the GridField_ColumnProvider interface.
API CHANGE: Renamed GridField_AlterAction to GridField_Action, and added actionName/args parameters, since it can be used for all actions (including batch actions and row actions)
API CHANGE: Removed GridFieldRow class.
2012-01-09 13:30:34 +13:00
Stig Lindqvist
ea4b9fe939 MINOR Added tests for GridField with minor changes to support them
MINOR Added docblocks
2012-01-07 04:59:34 +01:00
Sam Minnée
9a1644f9e1 Merge pull request #148 from ajshort/pull-2
Added GroupedList
2012-01-06 16:19:20 -08:00
Sam Minnée
2c770a6f8f Merge pull request #146 from simonwelsh/namespace-manifest
BUGFIX Namespaced classes were always having their namespace prepended t...
2012-01-06 15:58:46 -08:00
Sean Harvey
3d8079c1b5 API CHANGE Removed GeoIP functionality from sapphire. This now belongs in a separate "silverstripe-geoip" GitHub repository: https://github.com/silverstripe-labs/silverstripe-geoip 2012-01-02 18:00:36 +01:00
Ingo Schommer
4056b94f75 BUGFIX Improved ClassInfo::ancestry() performance through in-memory caching and removal of unnecessary is_object() check - get_class() will complain if its not passed an object already) 2012-01-02 16:49:33 +01:00
Ingo Schommer
72694d8349 ENHANCEMENT Custom form attributes through Form->setAttribute() 2012-01-02 16:49:33 +01:00
Ingo Schommer
b5421d9598 ENHANCEMENT Allowing custom attributes in (most) FormField implementations, which allows for HTML5 data attributes 2012-01-02 16:48:14 +01:00
Ingo Schommer
b36ad3b876 MINOR Testing nested if blocks in SSViewerTest 2012-01-02 16:48:13 +01:00
Sean Harvey
19e9b19a1a BUGFIX Ensure TextareaField template is encoding characters correctly 2012-01-02 16:48:13 +01:00
Sean Harvey
9e548f501e API CHANGE FormField::Field() and FormField::FieldHolder() now render into templates on each FormField instead of creating HTML from PHP 2012-01-02 16:48:13 +01:00
Ingo Schommer
b3c08dba12 API CHANGE Deprecated FieldSet-specific methods from Form, namely dateFieldByName(), unsetDataFieldByName(), unsetFieldFromTab(), resetField() 2012-01-02 16:47:59 +01:00
ajshort
5242ed1051 FEATURE: Added GroupedList for grouping lists into sub-lists by common values of a field. 2011-12-26 19:48:53 +11:00
ajshort
3478e4f9e6 ENHANCEMENT: Made the form enctype configurable via a method Form->setEncType().
API CHANGE: Deprecated Form->FormEncType() in favour of Form->getEncType().
MINOR: Added enctypes as constants to the Form class.
2011-12-26 18:36:24 +11:00
Ingo Schommer
565e2ab318 Merge pull request #143 from Innovatif/sapphire
---

BUGFIX Having <header tag in HTML causes requirements to double. See http://www.silverstripe.org/general-questions/show/17524
2011-12-23 16:36:01 +01:00
Ingo Schommer
7d245c3803 MINOR Reduced unnecessary autoloading 2011-12-23 10:31:35 +01:00
Simon Welsh
dd546a9888 BUGFIX Merge request arrays recursively 2011-12-23 17:48:49 +13:00
Simon Welsh
27a51ed7ed BUGFIX Namespaced classes were always having their namespace prepended to their base class 2011-12-23 10:24:42 +13:00
Stig Lindqvist
f59d11c91e MINOR DataList::sort() can sort by relation name 2011-12-18 04:28:09 +01:00
Simon Welsh
04c8e2b762 BUGFIX Generate valid PHP when $includeDebuggingComments is true. 2011-12-17 17:35:26 +13:00
Sam Minnee
5a157a6365 API CHANGE: Deprecate SubstringFilter in favour of PartialMatchFilter. 2011-12-17 16:42:30 +13:00
Stig Lindqvist
9bf247cc33 API CHANGE Introduced DataQuery::whereAny() and SQLQuery::whereAny() 2011-12-17 16:42:30 +13:00
Stig Lindqvist
aafdb8e01c API CHANGE All SS_List implementators supports filter, exclude and sort methods 2011-12-17 16:42:29 +13:00
Hamish Friedlander
45c25e93b4 MINOR: Disable PhpSyntaxTest until we decide whether to re-write it or remove it 2011-12-17 15:40:06 +13:00
Hamish Friedlander
be9286fbc4 Merge pull request #132 from simonwelsh/namespace-manifest 2011-12-17 15:40:06 +13:00
Ingo Schommer
1d92172931 BUGFIX Returning 'first last' in ViewableData->FirstLast() if item is both at the same time 2011-12-17 02:32:21 +01:00
Simon Welsh
97f8cc4ab3 BUGFIX Skip NamespacedClassManifestTest on PHP versions before 5.3 2011-12-17 14:26:03 +13:00
Simon Welsh
3e6a91a07f ENHANCEMENT Allow ClassManifest to handle classes with namespaces, or that extend classes in namspaces or that implement interfaces in namespaces. 2011-12-17 14:03:53 +13:00
Ingo Schommer
3f28582ee8 MINOR Added URLSegmentFilterTest->testReplacements() 2011-12-17 01:13:27 +01:00
Ingo Schommer
0c3af80514 BUGFIX Better handling of multibyte strings in LimitCharacters(), removed code duplication by more flexible base implementation at StringField->LimitCharacters() (Merge pull request #121 from edlund/sapphire) 2011-12-17 00:40:13 +01:00
Sam Minnee
70d40cf4df BUGFIX: Removed use of base "Exception" class in order to avoid failures on PHPUnit 3.6. 2011-12-17 11:51:40 +13:00
Ingo Schommer
1b544a46a3 MINOR Backported bootstrap.php changes from CI setup (creates a FakeController to avoid empty controller stacks, fake empty session global) 2011-12-04 13:35:06 +01:00
Ingo Schommer
34686ca1dc BUGFIX Restoring system error handlers in bootstrap.php so running tests through the phpunit binary behaves the same way as TestRunner (specifically to fix DeprecationTest on our CI infrastructure) 2011-12-04 13:10:28 +01:00
Ingo Schommer
a8f57be2f2 Merge pull request #118 from silverstripe/multibyte-urlsegment
URLSegmentFilter API (sapphire/master)
2011-12-02 02:20:59 -08:00
Ingo Schommer
9b27a4c1be ENHANCEMENT More flexible URL filtering through new URLSegmentFilter API. Support for multibyte URL segments through URLPathFilter::$default_allow_multibyte. Abstraction from Convert::raw2url() (and SiteTree->generateURLSegment()) 2011-11-29 11:04:08 +01:00
Ingo Schommer
dec86b7e6c MINOR Using assertType() for PHPUnit 3.4 compat in DataListTest 2011-11-15 16:52:15 +01:00
Ingo Schommer
322d98306b MINOR Whitespace 2011-11-15 16:51:17 +01:00
Ingo Schommer
ea7310c36a MINOR Specifically turning off Transliterator in FileNameFilterTest, was assumed to be on regardless of setting (surfaced by d1ebe1ce9) 2011-11-14 16:30:53 +01:00
Ingo Schommer
d30b4b1d00 BUGFIX Respecting api_access on has_one relations in RestfulServer
BUGFIX Limiting fields according to api_access on relation object (rather than the "root" object) in RestfulServer
BUGFIX Limit listing of has_one relations in RestfulServer to actual relation (was listing all objects before)
BUGFIX Creating correct object instances in RestfulServer->getHandler() for relation queries
2011-11-13 14:09:44 +01:00
Fred Condo
5f1faec3e2 BUGFIX: regex-escape strings to prevent regex syntax errors
Apply preg_quote to each generator name and to $this->Name so that their use in a
regular expression will not cause run-time errors.

Provided fixture and test.
2011-10-31 11:34:33 -07:00
Sam Minnee
7978dd5d40 MINOR: Removed WebserverRoutingTest as it does more harm than good (checked with Stig and Ingo) 2011-10-31 11:45:54 +13:00
Stig Lindqvist
260a9e230c BUGFIX Versioned returns error on singleton($className)->summaryFields()
This solves a bugfix when calling singleton($className)->summaryFields() and Versioned kicks back. It is needed to by the GridField functionality to get default columns to show.

This is due to DataExtension calls ClassName::extraStatics() when calling ::load_extra_statics() statically, we need to pass in class and extension.
2011-10-31 11:17:37 +13:00
Sean Harvey
016c70a6e9 MINOR Fixed broken SS_MapTest in PostgreSQL. Need to sort the IDs before asserting the DataList contents. 2011-10-30 12:50:52 +13:00
Ingo Schommer
96d18efa58 MINOR Replaced calls to deprecated FormField->Name() with getName() 2011-10-29 13:27:11 +02:00
Sean Harvey
f2fba45a77 MINOR Fixed broken GridFieldPresenterTest assuming IDs 2011-10-30 00:13:27 +13:00
Sean Harvey
2f4b630340 MINOR Fixed broken test in PostgreSQL where assumption of IDs sorted isn't always the case 2011-10-29 23:53:24 +13:00
Sean Harvey
8f96ea7c9c MINOR Fixed hardcoded IDs in DataListTest which fail in PostgreSQL 2011-10-29 18:27:26 +13:00
Sam Minnee
5ed14915bb BUGFIX: Fixed DataList::find() for find by ID and find multiple times. 2011-10-29 17:36:39 +13:00
Sam Minnee
ec73555db4 MINOR: Text fix. 2011-10-29 17:36:38 +13:00
Sam Minnee
0d683dd8ef MINOR: Removed use of deprecated join() in favour of innerJoin() and leftJoin(). 2011-10-29 17:36:38 +13:00
Sam Minnee
22e5617ee2 MINOR: Moved from use of deprecated SQLMap to SS_Map. 2011-10-29 17:36:37 +13:00
Sam Minnee
c8ce6f9f55 BUGFIX: Don't create unnecessary aliases in generated SQL. 2011-10-29 17:36:37 +13:00
Sam Minnee
3e3188f81a MINOR: Update tests for deprecated functions to explicitly disable deprecation errors. 2011-10-29 17:34:32 +13:00
Sam Minnee
a49b56a348 MINOR: Removed usage of deprecated FormField::Name() 2011-10-29 17:34:32 +13:00
Sam Minnee
a4ee0f4dad ENHANCMEMENT: Added SS_Map to replace SQLMap.
API CHANGE: Deprecate SQLMap.
2011-10-29 17:34:32 +13:00
Sam Minnee
4c93c3be19 ENHANCEMENT: Allow Deprecation::notice() to be called without passing release number. 2011-10-29 17:34:31 +13:00
Sean Harvey
f4643e1b4a MINOR Added double quotes around column names in AggregateTest 2011-10-29 17:28:46 +13:00
Simon Welsh
9dac9e5675 When relying on the order of returned objects, sort explicitly as it is nondeterminate for non-MySQL. 2011-10-29 15:24:06 +13:00
Simon Welsh
2c0257e9b9 Cast the header value to string as PHPUnit can't handle it being NULL. 2011-10-29 15:24:06 +13:00
Simon Welsh
c8f1379407 Merge branch 'master' of git://github.com/silverstripe/sapphire 2011-10-29 13:55:50 +13:00
Simon Welsh
ca074eb7ba Changes default MySQL storage engine to InnoDB. File requires MyISAM for FulltextSearch. 2011-10-29 13:34:45 +13:00
Sam Minnée
244f0707b1 Merge pull request #82 from silverstripe-scienceninjas/release/gridfield-pagination
ENHANCEMENT Release of DataGridPagination
2011-10-28 16:34:33 -07:00
Simon Welsh
1eab669f9b Fucntion signatures should match when containing arrays (PHP5.4 bug) 2011-10-29 12:07:58 +13:00
Stig Lindqvist
83e90aaafe ENHANCEMENT Release of DataGridPagination
This class extends the DataGridPresenter with the behaviour and looks of a paginated Datagrid.
2011-10-28 17:34:15 +13:00
Hamish Friedlander
cf408d766a Merge pull request #80 from silverstripe-scienceninjas/release/datagrid-renaming
API CHANGE: Rename DataGrid to GridField to be more in line with other field class names
2011-10-27 20:55:30 -07:00
Stig Lindqvist
b229c17e1d ENHANCEMENT Renamed DataGrid to GridField 2011-10-28 16:35:39 +13:00
Sam Minnée
ca29cf9b72 Merge pull request #72 from stojg/lookupfieldtest
MINOR Fix test to use the non deprecated way of fetching database records
2011-10-27 20:13:25 -07:00
Sam Minnée
499f6d4887 Merge pull request #79 from silverstripe-scienceninjas/release/datalist-test-improvements
MINOR Added more tests to the DataList to improve the coverage.
2011-10-27 20:11:41 -07:00
Stig Lindqvist
4123d2c6ab MINOR Added more tests to the DataList to improve the coverage. 2011-10-28 16:07:19 +13:00
Stig Lindqvist
e38dd08ea5 MINOR: Fix docblocks to reference SS_List instead of (now deprecated) DataObjectSet where appropriate 2011-10-28 15:58:55 +13:00
Hamish Friedlander
e5ea2ea94d ENHANCEMENT: Add Deprecation class to handle throwing deprecation notices nicely on methods that are still in use in framework or cms 2011-10-28 15:58:54 +13:00
Stig Lindqvist
d6f7b55f04 MINOR Fix test to use the non deprecated way of fetching database records 2011-10-22 16:47:39 +02:00
Ingo Schommer
e2bf21ba1a BUGFIX Escaping base URLs for anchor links rewritten by SSViewer::process() with the 'rewriteHashlinks' option enabled (which is a framework default, and necessary because of the use of a <base> tag). Also added escaping for base URLs rendered through the 'php' variation of 'rewriteHashlinks' 2011-10-18 11:42:55 +02:00
Ingo Schommer
c630f83344 BUGFIX Setting level in DataObject->getChangedFields() to 'value change' rather than 'type change' for CompositeFields, so they save correctly (fixes #6726, thanks frankmullenger) 2011-10-07 22:57:23 +02:00
Ingo Schommer
dcf59959d8 MINOR Removed dependency of DatagridFunctionalTest on ContentController (sapphire vs. cms) 2011-10-07 14:37:15 +02:00
Ingo Schommer
cc61551dae MINOR Using raw SQL queries in DBDatetimeTest as SQLQuery returns false if no explicit FROM part is provided (previously working API was broken in 4171015d) 2011-10-07 14:12:52 +02:00
Ingo Schommer
3a5b3af7c6 BUGFIX Fixed tag stacking in Diff.php thirdparty lib (AIR-71) 2011-10-07 14:12:52 +02:00
Ingo Schommer
40db114218 MINOR Resetting date/time defaults for DateFieldTest, TimeFieldTest, DatetimeFieldTest 2011-10-07 14:12:51 +02:00
Ingo Schommer
c89bdbb268 ENHANCEMENT Added user timezone support to DatetimeField 2011-10-07 14:12:50 +02:00
Ingo Schommer
8302af1ea8 ENHANCEMENT Added Database->getLock() and Database->releaseLock() for application-level advisory locks 2011-10-07 14:12:50 +02:00
Ingo Schommer
f37640b493 BUGFIX Added support for array values in LookupField, to ensure it works correctly when used as a readonly representation of ListboxField (AIR-39) 2011-10-07 14:12:49 +02:00
Ingo Schommer
715638333e API CHANGE Obeying existing memory_limit settings in increase_memory_limmit_to(). Introduced set_increase_memory_limit_max() and set_increase_time_limit_max() 2011-10-07 14:12:48 +02:00
Ingo Schommer
2ec2c97766 ENHANCEMENT Allowing diffs of has_one relationship in DataDifferencer (AIR-24) 2011-10-07 14:12:48 +02:00
Ingo Schommer
4d31ac65a0 ENHANCEMENT Allowing array values in ListboxField->setValue(), serialising into comma-separated list of values (AIR-35) 2011-10-07 14:12:47 +02:00
Ingo Schommer
007eb259e0 MINOR Added DataDifferencerTest, starting by testing array-based values (AIR-39) 2011-10-07 14:12:47 +02:00
Ingo Schommer
da0ac49d5f API CHANGE Rewriting underscores to dashes in files uploaded through Upload->load(), Folder->addUploadToFolder() or Image->loadUploadedImage(). Transliterating non-ASCII characters automatically (turn off via FileNameFilter::$default_use_transliterator=false)
ENHANCEMENT New FileNameFilter class for a more customisable way to influence filename filtering in Upload->load(), Folder->addUploadToFolder() or Image->loadUploadedImage()
2011-10-07 14:12:46 +02:00
Ingo Schommer
afeccbc9cb ENHANCEMENT Added File::get_class_for_file_extension() instead of hardcoding it in Folder->constructChild(). Allows for custom classes in files uploaded through core functionality like the Upload and FileField logic. 2011-10-07 14:12:45 +02:00
Stig Lindqvist
b1b1615a58 ENHANCEMENT Datagrid renders ArrayList according to Datagrid#setModelClass() 2011-09-29 14:15:02 +13:00
Stig Lindqvist
1811fc2746 MINOR Cleaning up code of Datagrid with related classes with more tests 2011-09-29 12:16:15 +13:00
Jean-Fabien
197913842c ENHANCEMENT First cut at data grid with the data presenter 2011-09-28 17:49:14 +13:00
Stig Lindqvist
85cdb3771c FEATURE Added initial commit of Datagrid with tests 2011-09-28 12:33:02 +13:00
Stig Lindqvist
8d7bfd4ffa MINOR Fixed DataObjectTest to use ManyManyList when testing relation manipulations 2011-09-28 12:33:02 +13:00
Will Rossiter
1732a17114 Merged new-orm into datagrid 2011-09-26 16:47:54 +13:00
Will Rossiter
60ea09bb42 BUGFIX: prevent TestRunner from dying when running through sake and loading FullTestSuite 2011-09-26 16:08:31 +13:00
Ingo Schommer
2651a1ba81 MINOR Marking Director::extract_request_headers() public because we can't unit test protected methods in PHP 5.2 2011-09-19 16:01:33 +02:00
ajshort
a60f03f28e ENHANCEMENT Sapphire Doesn't Read HTTP Headers (fixes #6311) 2011-09-19 14:49:55 +02:00
Ingo Schommer
ce8e72cf0e MINOR Removing executable flag from all files (thanks miiihi) 2011-09-18 22:04:02 +02:00
Stig Lindqvist
0aeda5c924 MINOR: Fixed DateTest to work on Centos installation with another default date.timezone than Pacific/Auckland
Checking for PHP version and using the correct function for setting timezone
2011-08-30 00:39:44 +02:00
Ingo Schommer
dfb0504d0d BUGFIX Setting "Content-Length" header in HTTPResponse to avoid problems with proxies timing out 2011-07-26 08:25:09 +02:00
Ingo Schommer
908eeb4811 MINOR Fixed SQL quoting in DbDatetimeTest (broke PostgreSQL) 2011-05-31 08:18:50 +12:00
Ingo Schommer
e1931c107f MINOR Updated MemberTest to accept new default date formats caused by Zend/CLDR upgrade (from 'MM/dd/yyyy' to a less ambiguous 'MMM d, y') 2011-05-31 07:55:12 +12:00
Ingo Schommer
0f7b115d33 MINOR Updated MemberDatetimeOptionsetFieldTest, i18nTest, MoneyTest to accept new default date formats caused by Zend/CLDR upgrade (from 'MM/dd/yyyy' to a less ambiguous 'MMM d, y') 2011-05-30 21:33:27 +12:00
Ingo Schommer
0adac9d40b ENHANCEMENT Allowing filtered arguments on specific functions like mysql_connect() in SS_Backtrace 2011-05-26 22:04:01 +12:00
Sam Minnee
878b348a0f Merge branch 'master' into new-orm
Conflicts:
	docs/en/reference/built-in-page-controls.md
	model/SQLQuery.php
2011-05-26 17:08:10 +12:00
Ingo Schommer
4f9065918a MINOR Fixed CheckboxSetTest (broken by wrossiter in 771e93ef18) 2011-05-24 08:58:36 +12:00
Ingo Schommer
00b1bf8ef7 MINOR Fixed DataObjectTest->testNewClassInstance() to use same ancestry classes, broken in dc367258 2011-05-20 08:38:21 +12:00
Ingo Schommer
67ec23677a MINOR Fixed RestfulServerTest 2011-05-19 15:17:38 +12:00
Ingo Schommer
11b409aac8 MINOR Using SQLQuery wrapper in DbDatetimeTest to provide better cross-db support, specifically correct LIMIT syntax in MSSQL (previously broken in a9b13509) 2011-05-19 11:38:43 +12:00
Ingo Schommer
a2d334ca0c MINOR Fixed fixture ordering in RestfulServerTest to work with PostgreSQL 2011-05-19 11:09:06 +12:00
ajshort
1f6f7f0862 API CHANGE: Deprecated CompositeField->FieldSet() in favour of CompositeField->FieldList().
MINOR: Replaced usage of FieldSet with FieldList.
MINOR: Renamed FieldSetTest to FieldListTest.
2011-05-11 17:51:54 +10:00
ajshort
f0676c7d56 API CHANGE: Updated FieldSet to use ArrayList rather then DataObjectSet.
MINOR: Updated FieldSetTest since position information is no longer available on iterated objects.
2011-05-06 08:30:54 +10:00
ajshort
2294ef5820 API CHANGE: Deprecated DataObjectSet in favour of DataList or ArrayList.
MINOR: Moved DataObjectSet tests to ArrayListTest.
2011-05-06 00:52:50 +10:00
ajshort
b3fc458101 ENHANCEMENT: Made it possible to sort by multiple fields in ArrayList::sort(). 2011-05-06 00:24:33 +10:00
ajshort
462689a4e6 ENHANCEMENT: Added ArrayList->removeDuplicates(). 2011-05-05 20:53:07 +10:00
ajshort
99a2baf3f8 MINOR: Updated ArrayList->getRange() to return an ArrayList instance. 2011-05-05 20:41:06 +10:00
ajshort
3f132a105b API CHANGE: Replaced DataObjectSet instances with ArrayList. 2011-05-05 20:40:24 +10:00
ajshort
9f87294427 ENHANCEMENT: Added exists(), replace(), merge(), push(), pop(), unshift() and shift() methods to ArrayList. 2011-05-05 17:48:12 +10:00
ajshort
7e7677bbba FEATURE: Added ArrayList to allow an array of arrays or objects to be handled as a list. 2011-05-04 00:06:42 +10:00
ajshort
577be1e6fc MINOR: Explicitly sort objects in DataListTest to prevent test failures across different DB's. 2011-05-03 21:59:51 +10:00
ajshort
c025ce7a4a MINOR: Replaced usage of deprecated toDropdownMap() with map(). 2011-05-03 13:05:27 +10:00
ajshort
04e30243d0 MINOR: Updated MemberTest to work with a standard array iterator. 2011-05-03 12:16:40 +10:00
ajshort
54a5fc6a74 BUGFIX: Fixed the manifest not parsing interfaces which extended from multiple interfaces. 2011-05-02 10:37:26 +10:00
Ingo Schommer
37774d4103 ENHANCEMENT Added ClassManifest->getModules(), and removed limitation to toplevel modules in ClassManifest->handleFile() (necessary to detect new sapphire/admin/ "submodule") 2011-05-01 20:23:07 +12:00
Sam Minnee
2f79961988 MINOR: Moved tests for DataList into DataListTest. 2011-05-01 17:12:50 +12:00
ajshort
2365bfc652 MINOR: Moved model tests into the tests/model directory. 2011-05-01 15:26:30 +12:00
ajshort
3fbb29a6c5 FEATURE: Added PaginatedList, which wraps around a data list or set to provide pagination functionality. This replaces the pagination functionality baked into DataObjectSet.
API CHANGE: Removed pagination related methods from DataObjectSet and implemented them on PaginatedList.
API CHANGE: Removed DataObjectSet::parseQueryLimit(), this is now implemented as PaginatedList::setPaginationFromQuery().
API CHANGE: Deprecated DataObjectSet::TotalItems in favour of Count().
ENHANCEMENT: Added FirstLink and LastLink to PaginatedList.
MINOR: Updated documentation, and added a how-to on paginating items.
2011-05-01 15:26:29 +12:00
Sam Minnee
6915e58a39 BUGFIX: Fix SQLQuery::queriedTables() and added test. 2011-05-01 15:26:29 +12:00
Sam Minnee
0de6dbc848 BUGFIX: Fixed Permission::add_to_hidden_permissions() and Permission::remove_from_hidden_permissions() 2011-05-01 15:26:28 +12:00
Sam Minnee
7efd19e7cb BUGFIX: Fixed DataList arrayaccess. 2011-05-01 15:26:28 +12:00
Sam Minnee
4a061fd071 ENHANCEMENT: Refactored MemberTableList field to make better use of DataList and ManyManyList. Refactored ComplexTableField and TableListField to, stripping out as much model logic as possible. 2011-05-01 15:26:28 +12:00
Sam Minnee
3a17d5c427 API CHANGE: Add removeByID(), canSortBy(), and byID() to DataList and its subclasses. 2011-05-01 15:26:01 +12:00
Sam Minnee
c615c4eb91 ENHANCEMENT: First cut of running SearchContext through DataList/DataQuery. Note that the eventual goal is probably to ditch SearchContext entirely. 2011-05-01 15:25:58 +12:00
Sam Minnee
319d2f4952 ENHANCEMENT: Refactored TableListField and subclasses to rely on the DataList to handle data manipulatation.
API CHANGE: A DataList can be passed as the 2nd argument to the constructor; this is the recommended approach for editing non-relations.
API CHANGE: You can't set a custom query; only a custom DataList.
API CHANGE: You can't have one of these fields editing data that doesn't correspond to a DataList - there must be some kind of DataObject behind it.
API CHANGE: If the field's name corresponds to a relation on the object being edited, then the relation is used as the data set - all the source* parameters are ignored.
API CHANGE: relationAutoSetting only works if your form has had the corresponding data object loaded with $form->loadDataFrom().
API CHANGE: relationAutoSetting can't be turned off; attach a non-relation DataList instead.
2011-05-01 15:25:45 +12:00
Sam Minnee
de1494e3a8 ENHANCEMENT: Implemented DataList as the successor of DataObjectSet. DataList doesn't execute the query until it's actually needed, allowing for a more flexible ORM.
API CHANGE: augmentSQL is now passed a DataQuery object from which query parameters can be extracted.
API CHANGE: DataObjectDecorators that manipulate the query can now define augmentDataQueryCreation().
API CHANGE: The container class argument for DataObject::get() is deprecated.
API CHANGE: DataObject::buildSQL() and DataObject::extendedSQL() are deprecated; just use DataObject::get() now.
API CHANGE: DataObject::instance_get() and DataObject::instance_get_one() are deprecated, and can no longer be overloaded.
API CHANGE: DataObject::buildDataObjectSet() is deprecated.
API CHANGE: Cant't call manual manipulation methods on DataList such as insertFirst()
2011-05-01 15:25:45 +12:00
Sam Minnee
5dd03ca9fb MINOR: Added additional tests for the ORM. 2011-05-01 15:25:14 +12:00
Sam Minnee
3619eae9eb MINOR: Don't couple GroupTest to the Member_GroupSet object. 2011-05-01 15:25:14 +12:00
Ingo Schommer
79e0634537 Merge branch 'cms-ui-preparation' 2011-04-28 22:48:02 +12:00
ajshort
3a1c2df4e7 API CHANGE: Renamed DataObjectDecorator to DataExtension.
API CHANGE: Renamed LeftAndMainDecorator to LeftAndMainExtension.
MINOR: Replaced all references to decorators with extension.
2011-04-26 11:01:38 +10:00
Ingo Schommer
583f669c68 API CHANGE Adjusting to split of SiteTree->getCMSFields() into getSettingsFields(), and new tab paths ("Root.Content" instead of "Root.Content.Main") 2011-04-24 11:46:49 +12:00
Ingo Schommer
d5efacbf56 BUGFIX Less fragile 'newness' check on Group->Code in Group->onBeforeWrite() (fixes #6595) 2011-04-14 21:38:07 +12:00
Ingo Schommer
fcca1d454d MINOR Moved TransactionTest->testReadonlyTransaction() to PostgreSQLDatabase driver, which is the only one that actually supports it. We can't have tests failing for all other databases by default for this optional feature which can't be detected through the Database API. 2011-04-06 23:18:31 +12:00
Ingo Schommer
9b29616710 API CHANGE Rearranged files in sapphire to reflect core dependencies more accurately, and have the tests/ folder mirror its folder structure 2011-03-31 09:56:21 +13:00
Ingo Schommer
f4a16d3c77 MINOR Making HTTPTest less fragile around global state. Improved test readability. 2011-03-31 08:37:48 +13:00
Ingo Schommer
2870eb9212 MINOR Changed $fixture_path to relative filenames in all sapphire test cases in order to allow easier file moving and less verbosity in tests 2011-03-30 23:04:48 +13:00
Ingo Schommer
14e1341df6 ENHANCEMENT Added support for SapphireTest::$fixture_file paths relative to current class location ('MyTest.yml' or '../otherfolder/MyTest.yml'). Added SapphireTest->getCurrentAbsolutePath() and getCurrentRelativePath() for easy access within unit tests 2011-03-30 20:05:22 +13:00
Julian Seidenberg
eaa6c6c49d API-CHANGE: removing protected object_to_array method (use get_object_vars instead) 2011-03-30 18:16:17 +13:00
Julian Seidenberg
dec5c0ae60 API CHANGE: TextareaField doesn't have hidden value on read-only transformation. Added hidden fields in a way that doesn't break unit tests too severely (fixes #5056, thanks jshipman) 2011-03-30 18:16:17 +13:00
Julian Seidenberg
0b93a8f7cf API-CHANGE: Allowing non-standard path for session store 2011-03-30 18:16:16 +13:00
Julian Seidenberg
5efdc60029 API-CHANGE: Renaming a folder did not update the folder's filename on the disk. This is now fixed. There is now a one-to-one mapping between a folder and its "Title" label. Files still can have a Title that is different from the Filename (fixes #6088, thanks Pike) 2011-03-30 18:16:16 +13:00
Julian Seidenberg
a204c136fe API CHANGE: JSONDataFormatter builds JSON itself, changing it to use Convert::array2json() instead (fixes #5162, thanks sharvey) 2011-03-30 18:16:12 +13:00
Julian Seidenberg
f94be66cb2 BUGFIX: HTMLText.Summary() will return nothing if there's an image at the beginning. Regex to strip out the image and unit tests (fixes #6436, thanks webbower) 2011-03-30 18:12:31 +13:00
Julian Seidenberg
341245dd4a ENHANCEMENT Allowing custom HTMLCleaner implementations via Diff:: and new TidyHTMLCleaner and PurifierHTMLCleaner classes 2011-03-30 18:02:25 +13:00
Ingo Schommer
0d39a888a1 MINOR Removed references to ContentController from documentatin 2011-03-29 18:20:14 +13:00
Ingo Schommer
95dcc74c10 MINOR Removed reliance of sapphire/admin unit tests on SiteTree and CMSMain 2011-03-29 18:20:10 +13:00
Ingo Schommer
65e7b83421 MINOR Made login form redirection test in SecurityTest explicit, rather than implicit through testLogInAsSomeoneElse() 2011-03-29 18:08:33 +13:00
Ingo Schommer
29afbea69d BUGFIX Fixed ComplexTableFieldTest to work without a valid root url (which breaks the AddForm() redirection) 2011-03-29 18:07:59 +13:00
Ingo Schommer
b78b1309c9 MINOR Removing SiteTree dependency from FulltextSearchableTest 2011-03-29 18:07:58 +13:00
Ingo Schommer
67cc18f5bf MINOR Optional dependency on ThumbnailStripField in HtmlEditorField, preparing the split of this field into a "basic" and "cms" version 2011-03-29 18:07:58 +13:00
Ingo Schommer
41e51abd9a MINOR Made HtmlEditorField dependency to SiteTree optional (to be moved into separate aspect, or down to DBField/model layer) 2011-03-29 18:07:58 +13:00
Ingo Schommer
a9b13509d2 MINOR Removed dependency on SiteTree in various unit tests 2011-03-29 18:07:58 +13:00
Ingo Schommer
ecc28cb565 MINOR Moved MigrateSiteTreeLinkingTask from 'sapphire' to 'cms' module 2011-03-29 18:07:57 +13:00
Ingo Schommer
764c5a842b MINOR Moved Widget, WidgetArea and related files from 'sapphire' to 'cms' module 2011-03-29 18:07:57 +13:00
Ingo Schommer
1c213906cb MINOR Removed unnecessary SiteTree dependency from TransactionTest 2011-03-29 18:07:57 +13:00
Ingo Schommer
d93025d668 MINOR Moved File->BackLinkTracking feature from 'sapphire' to 'cms' 2011-03-29 18:07:57 +13:00
Ingo Schommer
d61444e976 API CHANGE Moved Translatable class into new 'translatable' module 2011-03-29 18:07:56 +13:00
Ingo Schommer
8847beded2 MINOR Moved SearchFormTest and ContentControllerSearchExtensionTest into 'cms' module 2011-03-29 18:07:56 +13:00
Paul Meyrick
251c1df63a MINOR Fixed SSViewerTest->testCurrentTheme() not to rely on SiteConfig 2011-03-29 18:07:55 +13:00
Paul Meyrick
dc36725869 MINOR Using BlankPage template in SecurityTest, BasicAuthTest to remove ContentController dependency
MINOR Checking for SiteTree class existence in Security, Translatable
MINOR Checking for ContentController existence in FulltextSearchable
MINOR Removed unnecessary ContentController tests from ObjectTest
MINOR Replaced CMS specific examples in PermissionCheckboxSetFieldTest, DataObjectTest
MINOR Changed SecurityTest to make assertions against Security/login rather than relying on redirection from admin/cms
2011-03-29 18:07:55 +13:00
Ingo Schommer
7f06f97761 MINOR Moved WidgetArea (and related tests) to "cms" module 2011-03-29 18:07:55 +13:00
Ingo Schommer
204fd2c4ce MINOR Moved SiteTree, SiteTreeDecorator, SiteConfig, ErrorPage, RedirectorPage, VirtualPage (and related tests) to "cms" module 2011-03-29 18:07:55 +13:00
Ingo Schommer
5bf5b744d8 MINOR Moved ContentController, ModelAsController, NestedController, RootURLController (and related tests) to "cms" module 2011-03-29 18:07:55 +13:00
Ingo Schommer
1a598fe39e MINOR Removed obsolete 'usetestmanifest' flag from documentation and RestfulServiceTest 2011-03-28 08:14:03 +13:00
ajshort
bd2a54769c MINOR: Updated WebserverRoutingTest to use Security/ping to test if the server is accesible, since ?usetestmanifest is no longer available. 2011-03-25 14:59:34 +11:00
Hamish Friedlander
2f1ffe2f6f BUGFIX: Manifest test fixtures were interfering with other tests 2011-03-25 14:07:18 +13:00
ajshort
eb1a3fe75a API CHANGE: Separated the actual CURL request generation code from RestfulService::request() into RestfulService::curlRequest().
MINOR: Updated RestfulServiceTest to use a mock service rather than the actual site. This eliminates the need for ?usetestmanifesst.
2011-03-24 21:31:00 +11:00
ajshort
1a0ced4adc MINOR: Updated the i18n tests to use mock template and class manifests. 2011-03-24 21:31:00 +11:00
ajshort
c34105438c FEATURE: Replaced the template manifest with SS_TemplateLoader, which finds templates from a stack of SS_TemplateManifest objects. 2011-03-24 21:30:57 +11:00
ajshort
76f0fc0c92 FEATURE: Added SS_TemplateManifest, which finds all templates within a directory organised by theme and type. 2011-03-24 21:30:20 +11:00
ajshort
07b1308cd4 MINOR: Made it possible to disable caching on a class manifest via a constructor parameter, and used this in ClassManifestTest. 2011-03-24 20:14:43 +11:00
ajshort
bc0a1b7a05 MINOR: Updated various methods to use new manifest methods rather than ManifestBuilder functions or globals. 2011-03-24 20:14:43 +11:00
ajshort
0c78935db4 API CHANGE: Replaced ManifestBuilder::load_test_manifest() calls with new function TestRunner::use_test_manifest(), which pushes a test manifest onto the class loader. 2011-03-24 20:14:43 +11:00
ajshort
184da5bbcc FEATURE: Replaced ManifestBuilder (and related bootstrap code) with a new SS_ClassLoader class which loads classes and interfaces from a stack of SS_ClassManifest instances. 2011-03-24 20:14:42 +11:00
ajshort
c685893251 ENHANCEMENT: Added a SS_ClassManifest class which finds all config files, classes and interfaces in a directory, as well as constructing descendant and implementor information. 2011-03-24 20:14:42 +11:00
ajshort
ecc6840344 ENHANCEMENT: Added a ManifestFileFinder class, which is an extension to SS_FileFinder which takes into account modules, exclude files and lang/test/themes/assets dirs. 2011-03-24 20:14:42 +11:00
ajshort
852920237e MINOR: Updated ClassInfo::allClasses() and ::exists() to use $_CLASS_MANIFEST rather than $_ALL_CLASSES. This means results from ClassInfo::allClasses() are now lowercase. 2011-03-24 20:14:42 +11:00
ajshort
a0f66099ed FEATURE: Added the SS_FileFinder class for finding files within a directory true that match a set of rules. 2011-03-24 20:14:42 +11:00
ajshort
5c972b231d API CHANGE: Moved ManifestBuilder::get_themes() to SSViewer::get_themes(). 2011-03-24 20:14:41 +11:00
ajshort
803e67b87d API CHANGE: Refactored ClassInfo::subclassesFor() to traverse the child tree, rather than needing to store a list of every classes descendants.
API CHANGE: Updated ClassInfo::subclassesFor() so all the array keys are consistently the same as the values.
2011-03-24 20:14:41 +11:00
ajshort
f55cc7ec67 MINOR: Refactored ClassInfo::dataClassesFor() to use existing methods rather than creating the class array itself. 2011-03-24 20:14:41 +11:00
ajshort
eba1a85ead MINOR: Refactored ClassInfo::ancestry() to use inbuilt PHP methods rather than the parent manifest. 2011-03-24 20:14:41 +11:00
ajshort
0d03348926 API CHANGE: Refactored ClassInfo::baseDataClass() to use inbuilt PHP methods, and throw an exception if the passed class is not a subclass of DataObject. 2011-03-24 20:14:38 +11:00
Ingo Schommer
0b40bda1cc MINOR Changed TreeDropdownField markup from <div href="..."> to <div data-url-tree="..."> in order to support other URLs (e.g. reordering) - important for the main CMS tree 2011-03-22 18:15:03 +13:00
Ingo Schommer
35100c3e11 ENHANCEMENT Allow submitting form data alongside TreeDropdownField ajax request, which can be used to retain state 2011-03-22 18:13:13 +13:00
Ingo Schommer
7bda1ecab6 ENHANCEMENT Allowing JSTestDriver execution in tests/javascript/ by adding bash scripts and new Makefile command ("make jasmine") 2011-03-22 18:05:43 +13:00
Ingo Schommer
aefc60e406 MINOR Removed fixtures for TreeDropdownField, inlining them instead: loading files doesn't work with JSTestDriver 2011-03-22 18:05:43 +13:00
Ingo Schommer
4591503da6 BUGFIX Getting TreeDropdownField.js javascript tests to work with async jstree events 2011-03-22 18:05:42 +13:00
Ingo Schommer
e7ad682cf2 MINOR Added javascript tests for TreeDropdownField.js 2011-03-22 18:05:22 +13:00
Ingo Schommer
d099c7e5ba BUGFIX Unregistering custom Authenticators in SecurityTest->setUp() 2011-03-21 18:13:01 +13:00
Ingo Schommer
09283fba88 BUGFIX Fixed DataObject->isEmpty() to only inspect custom fields (excluding "ClassName" etc), and use DBField->hasValue() for more type-specific emptyness checks 2011-03-21 18:13:01 +13:00
Ingo Schommer
2b6357737b MINOR Added DataObjectTest->testToMap() 2011-03-21 18:13:01 +13:00
Ingo Schommer
a7e9be3bc4 BUGFIX Fixing SecurityTest to clear any custom settings in Security::$force_database_is_ready before making assertions 2011-03-21 18:12:59 +13:00
phalkun
8fd309a5ea BUGFIX: In some circumstances, parts of the entities were cut off thus display the LimitCharacters-ed text incorrectly 2011-03-21 17:49:27 +13:00
Hamish Friedlander
88535a43c5 BUGFIX: Clean up escaped character handling in SSViewer, and rework the Text rule to avoid a segfault problem with pcre regular expressions 2011-03-17 13:31:56 +13:00
Ingo Schommer
dd6f9ed005 MINOR Moved readonly section of TransactionTest into postgresql/ module 2011-03-14 16:45:52 +13:00
Ingo Schommer
2184acf17d Revert "MINOR Replaced assertType() calls with assertInstanceOf(), deprecated in PHPUnit 3.6 (throws warnings as of 3.5.10)" - cased too many problems with mixed build environments that require PHP 3.4
This reverts commit 65f6104cd6.
2011-03-11 15:06:09 +13:00
Ingo Schommer
0a4aa9dc17 BUGFIX Renamed MySQLDatabase->clear_cached_fieldlist() to clearCachedFieldList() and moved to parent Database class in order to avoid breaking other database drivers (broken in 360176d2 by gmunn) 2011-03-11 14:22:59 +13:00
Hamish Friedlander
f5b867a35d Merge branch 'ssviewer-rewrite' 2011-03-10 17:52:10 +13:00
Hamish Friedlander
29c06edd23 ENHANCEMENT: Add back in partial caching 2011-03-10 15:04:07 +13:00
Ingo Schommer
498e5758bf BUGFIX Avoid privilege escalation from EDIT_PERMISSIONS to ADMIN through TreeMultiselectField (in Member->getCMSFields()) by checking for admin groups in Member->onChangeGroups() 2011-03-09 15:49:41 +13:00
Julian Seidenberg
9ea7e6899a ENHANCEMENT Replaced Prototype show/hide functionality in ConfirmedPasswordField with jQuery. Added additional test case for show/hide markup. 2011-03-08 18:31:00 +13:00
Sam Minnee
d045970d83 Merge remote branch 'origin/master' 2011-02-22 10:57:59 +13:00
Sam Minnee
27246ce982 MINOR: Fixed 2.4 mergeback 2011-02-22 10:53:58 +13:00
Ingo Schommer
662c5259e5 BUGFIX Fixed Group->collateAncestorIDs() handling of orphans (fixes #6413) 2011-02-22 00:19:23 +13:00
Ingo Schommer
65f6104cd6 MINOR Replaced assertType() calls with assertInstanceOf(), deprecated in PHPUnit 3.6 (throws warnings as of 3.5.10) 2011-02-21 18:49:09 +13:00
Hamish Friedlander
20ba97f8ff BUGFIX: Empty if blocks are allowed (were hacky way of doing negation, now replaced by not) 2011-02-21 16:19:10 +13:00