Commit Graph

124 Commits

Author SHA1 Message Date
Ingo Schommer
5865fd19d1 MINOR fixed php notice error in DataObject
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64319 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-15 22:57:33 +00:00
Ingo Schommer
a24ccecb69 FEATURE Added ForeignKey and used it in relation- and databasefield getters in DataObject
FEATURE Added FormScaffolder for more flexible scaffolding of FieldSets from DataObject metadata
API CHANGE Removed DataObject->addScaffoldRelationFields(), now in separate class FormScaffolder
API CHANGE Changed parameters for DataObject->scaffoldSearchFields() to unify them with scaffoldFormFields()
API CHANGE Added optional $params parameter to DataObject->getCMSFields() to be passed on to scaffoldFormFields()
API CHANGE Renamed DataObject->getFormFields() to getFrontEndFields()
ENHANCEMENT Added $params parameter to all DBField->scaffoldFormField() subclasses
API CHANGE Added third optional parameter $object to DBField::create() to comply with ForeignKey and PrimaryKey constructors

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64157 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-13 22:20:41 +00:00
Ingo Schommer
8cc5625708 ENHANCEMENT Ability to add title constructor arguments to Tab and TabSet classes to resolve i18n issues with untranslated or unreferencable Tabs (see #2359)
ENHANCEMENT Support for $field_labels in relation tabs created by DataObject->addScaffoldRelationFields()
ENHANCEMENT Type checking and user errors for Tab and TabSet constructor arguments
ENHANCEMENT Supporting titles in FieldSet->findOrMakeTab()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64073 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-10 16:00:50 +00:00
Ingo Schommer
5f50fee5e9 BUGFIX Making sure that DataObject->has*Field() methods always return an array, in order not to fail any array_key_exists() checks
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64000 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 14:39:24 +00:00
Ingo Schommer
b1b909103e BUGFIX Fixing DataObject->hasField() to find fields in inherited database tables by using hasDatabaseField().
BUGFIX Fixing DataObject->hasField() to detect dynamic getters by using hasMethod("get$fieldName") 
ENHANCEMENT Re-enabled two test cases in DataObjectSet as a result of the above fixes 


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63999 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 14:38:46 +00:00
Hayden Smith
3f6a86738b Added PHP doc for the ValidationException thrown by DataObject::write
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63892 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 20:50:28 +00:00
Hayden Smith
fc2c16efdf DataObject::write now throws a ValidationException rather than calling user_error if the call to DataObject::validate fails. This allows the validation exception to be caught and handled by tests or other controllers.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63891 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 20:42:09 +00:00
Sean Harvey
9f0718f6df BUGFIX: Fixed array_key_exists check in DataObject->setField that was failing when DataObject->record was not yet initialised by DataObject->setField.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63813 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 02:25:26 +00:00
Hayden Smith
634ed7b70c Merged from branches/nzct-trunk. Use 'svn log -c <changeset> -g' for full commit message. Merge includes stability fixes and minor refactor of TableListField and ComplexTableField.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63806 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 02:00:12 +00:00
Sam Minnee
09cbef9146 BUGFIX: Fixed bug in getCMSFields scaffolding of relations
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63739 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-07 04:03:24 +00:00
Ingo Schommer
e1e2329c90 ENHANCEMENT Consistently allowing for $restrictFields and $fieldClasses parameters passed to DataObject->scaffoldFormFields(), DataObject->scaffoldSearchFields(), DataObject->scaffoldCMSFields()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63651 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-05 19:22:54 +00:00
Ingo Schommer
7da3497668 ENHANCEMENT Using DataObject->Title for has_one dropdowns generated in DataObject->scaffoldFormFields()
MINOR Removed scaffolded header field in DataObject->scaffoldFormFields()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63632 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-03 22:47:06 +00:00
Ingo Schommer
df199ebc2b ENHANCEMENT Added DataObject->scaffoldCMSFields() to simplify overloading of getCMSFields(). scaffoldCMSFields() automatically converts scaffoldFormFields() to a tabset
ENHANCEMENT Added DataObject->fieldLabel() and removed $fieldname parameter from DataObject->fieldLabels($fieldName) to simplify overloading of fieldLabels() for i18n

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63630 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-03 18:38:52 +00:00
Ingo Schommer
02ae284e10 FEATURE Added DataObject->getFormFields() - uses DataObject->scaffoldFormFields() by default. Added DataObjectDecorator->updateFormFields() for easy customization
ENHANCEMENT Calling DataObjectDecorator->updateCMSFields() in DataObject->getCMSFields() - was previously only called in SiteTree instances

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63623 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-03 16:21:09 +00:00
Ingo Schommer
1307d3da41 BUGFIX Making sure that Dataobject->getManyManyJoin() inserts a valid database table for the relation - not all component classes returned by ComponentSet->ownerClass are valid tables (see r54797 and r60909 for previous commits on this issue)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63621 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-03 16:11:46 +00:00
Ingo Schommer
370343016f ENHANCEMENT Only list ID field in DataObject->summaryFields() if no summaryfields are defined (or can be autodetected). Listing all fields was not feasible, as some subclasses have more fields than fits the column layout
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63620 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-03 16:01:51 +00:00
Ingo Schommer
882b4bc4e1 ENHANCEMENT Checking for instanceof DataObject instead of has_one() in DataObject->update() to support virtual relations as well (fix to r63531)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63554 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-02 22:47:01 +00:00
Ingo Schommer
892becb520 ENHANCMENT Checking for valid has_one relationship on dot-notation-usage in DataObject->update
MINOR Documentation in DataObject

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63531 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-02 13:58:08 +00:00
Sam Minnee
a231c15669 BUGFIX: Fixed DataObject::dbObject() operation with CompositeDbFields
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63509 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-02 03:28:01 +00:00
Sam Minnee
cba8e71170 ENHANCEMENT: Added support for dot syntax to DataObject::update()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63493 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-02 00:45:13 +00:00
Sam Minnee
ca884b809d BUGFIX #2753: Couldn't have fields named the same as methods
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63432 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-01 00:55:25 +00:00
Ingo Schommer
bf896a2cfd API CHANGE Deprecated DataObject->fieldExists() - please use hasField(), hasDatabaseField(), hasOwnTableDatabaseField()
ENHANCEMENT Added DataObject->hasOwnTableDatabaseField(), replaced legacy usage of fieldExists()
ENHANCEMENT Renamed cached static "fieldExists" to "_cache_hasOwnTableDatabaseField"
ENHANCEMENT Added DataObjectTest test cases for checking various field existence levels
API CHANGE Deprecated DataObject->listOfFields() - use custom code instead

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63337 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-30 00:20:30 +00:00
Sean Harvey
bd6a645857 MINOR: Fix phpdoc parsing error
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63125 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-26 04:26:06 +00:00
Sean Harvey
525e5b14c6 MINOR: Fix phpdoc parsing error
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63122 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-26 04:19:45 +00:00
Sam Minnee
fcc687fff2 MINOR: Added some more api doku for DataObject::
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@62877 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-23 00:17:58 +00:00
Sam Minnee
fd88d31d9d BUGFIX: More robust setting of defaults; necessary due to altered ViewableData::__isset()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@62875 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-23 00:10:41 +00:00
Ingo Schommer
73dd86bd8e ENHANCEMENT Using optional $member parameter for DataObject::can*() methods
MINOR Added documentation to DataObject about permission handling


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@62841 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-22 16:02:03 +00:00
Sam Minnee
d072e280e4 Merged branches/roa into trunk
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@62321 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-12 04:49:15 +00:00
Normann Lou
417ab6400d FEATURE: relate groups with column selections in SearchForm of CRM Admin
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@61605 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-27 04:11:58 +00:00
Normann Lou
6a897d7bfa getSummaryFields() will also get those summary fields defined in Member's decorator applied to the results and export
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@61509 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-26 01:45:52 +00:00
Sam Minnee
2d0233f2b1 Added table references to many-many join used by scaffolder, to remove 'ambiguous column' bugs
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60909 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-18 00:49:44 +00:00
Sam Minnee
b92b2a5887 Fixed saving of blank values to the has_one relations on versioned objects
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60830 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-15 03:08:03 +00:00
Ingo Schommer
125ca5801b BUGFIX Fixed DataObject::fieldLabels() to detect labels on inherited database fields
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60726 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-14 04:43:47 +00:00
Ingo Schommer
4dc20e699d ENHANCEMENT Removed recently added DataObject::$result_permissions and replaced with more specific TableListField::permissions_for_object()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60724 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-14 04:43:15 +00:00
Saophalkun Ponlu
7063547b58 API CHANGE: Allow DataObject searchablefields to be decorated with updateSearchableFields
API CHANGE: Allow Group CMS fields to be decorated with updateCMSFields
API CHANGE: TableListField utility links no longer have target=_blank

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60665 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-13 23:57:53 +00:00
Hayden Smith
130ecfe5aa Merged [47044]: Introduces modifications to Sapphire's form handling that allows it to ignore fields marked as Disabled when saving the contents of a form's fields to a DataObject.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60469 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-12 02:58:48 +00:00
Sam Minnee
0bd9bc4ff8 Merged changes from 2.2.2-assets - everything except the asset refactoring
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60468 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-12 02:51:33 +00:00
Ingo Schommer
4904969c60 MINOR Removed DataObject->mapRelationshipObjects() - incomplete functionality
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60400 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 05:37:56 +00:00
Sam Minnee
9cb17cd5d1 BUGFIX: Changes to DataObject::get_one() caching to try and fix segfaults
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60397 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 05:31:13 +00:00
Ingo Schommer
010c91af0a MINOR removed obsolete code from DataObject.php
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60367 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 04:01:00 +00:00
Ingo Schommer
4735f91ab8 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60352 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 03:39:14 +00:00
Ingo Schommer
b932a251b1 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60338 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 03:13:53 +00:00
Ingo Schommer
b6abd40783 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60330 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 03:03:52 +00:00
Ingo Schommer
624540a2d0 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60314 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 02:25:44 +00:00
Ingo Schommer
ad4d506f82 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60287 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 00:14:48 +00:00
Ingo Schommer
bf9f349210 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60276 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-11 00:03:57 +00:00
Ingo Schommer
124a6e3934 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60268 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-10 23:53:56 +00:00
Ingo Schommer
8d0166e298 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60265 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-10 23:29:30 +00:00
Ingo Schommer
95d4634e2e (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60264 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-10 23:17:51 +00:00
Ingo Schommer
46bbde18e7 (merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60261 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-10 23:03:35 +00:00