Commit Graph

45 Commits

Author SHA1 Message Date
Sam Minnee
2a22e73615 API CHANGE: Pass the full extension string as the 2nd argument to DataObjectDecorator::extraStatics()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.4@101043 467b73ca-7a2a-4603-9d3b-597d59a354a9
2011-02-02 14:18:59 +13:00
Sam Minnee
9300e52969 API CHANGE #4929: Add $class argument to DataObjectDecorator::extraStatics()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.4@97582 467b73ca-7a2a-4603-9d3b-597d59a354a9
2011-02-02 14:18:14 +13:00
Sam Minnee
709f162f13 Merge branch 'master' of git@github.com:sminnee/sapphire
From: Sam Minnee <sam@silverstripe.com>

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90072 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-23 23:27:51 +00:00
Sam Minnee
d8113a667e API CHANGE: Extension no longer inherits from Object.
ENHANCEMENT: Object::__construct() performance improved slightly.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84160 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 08:35:14 +00:00
Sam Minnee
d5cf940d69 API CHANGE: Make Object::uninherited_static() have a separate execution path to Object::get_static(), for more reliable operation. The intention is that for any given static, you either use Object::get_static() or you use Object::uninherited_static() - not both.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84151 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 05:01:17 +00:00
Andrew O'Neil
742984cb49 BUGFIX: Allow extraDBFields() on decorators for compatibility, throw a deprecated notice
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@79599 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-19 00:58:02 +00:00
Sam Minnee
6bd759b4ca MINOR: Updated API docs for DataObjectDecorator explaining that they're not actually decorators.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@79452 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-17 22:21:43 +00:00
Sam Minnee
0540bec71f BUGFIX #4255 sharvey: Fix application of extra db fields by DataObjectDecorators.
API CHANGE #4255 sharvey: DataObjectDecorator::extraStatics() can no longer refer to $this because it's called staticly


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@79430 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-17 07:01:28 +00:00
Sam Minnee
116d2a38db MINOR: Removed documentation that is no longer relevant since ajshort's Object::get_static change.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@79107 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-13 04:41:46 +00:00
Sam Minnee
b2460de140 ENHANCEMENT: Removed circular references from extensions to improve garbage collection.
API CHANGE: The result of any extension returned by Object::extInstance() should have setOwner() called on it before calling a method, and clearOwner() after.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@78414 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-04 06:48:44 +00:00
Sam Minnee
2370dd0b38 BUGFIX: Fixed edge-case reliability with extension application.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@77828 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-05-26 03:46:04 +00:00
Sam Minnee
d8b46e5501 ENHANCEMENT: Allow altering of DataObject:$api_access by decorators.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@77787 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-05-26 00:52:54 +00:00
Sean Harvey
0ad370ac30 MINOR Removed user_error messages on DataObjectDecorator
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@77371 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-05-20 05:53:11 +00:00
Sean Harvey
7bf69a8689 MINOR Changed @deprecated 2.3 functions to @deprecated 2.4 and throw a notice if they are used
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@77370 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-05-20 05:48:46 +00:00
Ingo Schommer
697703aff8 ENHANCEMENT Added DataObjectDecorator->setOwner()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73882 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-31 19:31:21 +00:00
Sam Minnee
41fb93b344 ENHANCEMENT #3032 ajshort: Use static methods for accessing static data
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73036 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-14 00:16:32 +00:00
Andrew O'Neil
60f75c5ca4 Merged changes from 2.3 branch
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@71172 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-02-01 23:49:53 +00:00
Ingo Schommer
bc430a96df ENHANCEMENT Added Versioned::get_versionnumber_by_stage() (used in new CMSMain/SiteTree state checking)
ENHANCEMENT Added Versioned->flushCache() to empty get_versionnumber_by_stage() caches
ENHANCEMENT Making DataObject->flushCache() decoratable

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69409 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-17 22:38:47 +00:00
Ingo Schommer
137b76e271 API CHANGE Deprecated DataObjectDecorator->augmentBeforeWrite(), use DataObjectDecorator->onBeforeWrite()
API CHANGE Deprecated DataObjectDecorator->augmentPopulateDefaults(), use DataObjectDecorator->populateDefaults()
API CHANGE Deprecated DataObjectDecorator->augmentDefaultRecords(), use DataObjectDecorator->requireDefaultRecords()
API CHANGE Deprecated DataObjectDecorator->alternateCan(), use DataObjectDecorator->can()
API CHANGE Deprecated DataObjectDecorator->alternateCanAddChildren(), use DataObjectDecorator->canAddChildren()
API CHANGE Deprecated DataObjectDecorator->alternateCanView(), use DataObjectDecorator->canView()
API CHANGE Deprecated DataObjectDecorator->alternateCanDelete(), use DataObjectDecorator->canDelete()
API CHANGE Deprecated DataObjectDecorator->alternateCanEdit(), use DataObjectDecorator->canEdit()
API CHANGE Deprecated DataObjectDecorator->alternateCanCreate(), use DataObjectDecorator->canCreate()
ENHANCEMENT Added DataObject->onAfterDelete() and DataObjectDecorator->onAfterDelete()
ENHANCEMENT Added stub methods to DataObjectDecorator for documentation purposes

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65453 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-07 12:18:35 +00:00
Ingo Schommer
eb4c950655 BUGFIX Reverted auto-detection of i18n statics like $db in DataObject through provideI18nEntities() - was getting too complicated with decorated properties. Overload DataObject->fieldLabels() or DataObjectDecorator->updateFieldLabels() instead
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65071 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 20:01:49 +00:00
Ingo Schommer
09564b0132 API CHANGE Renamed DataObjectDecorator->loadExtraDBFields() to loadExtraStatics()
API CHANGE Renamed DataObjectDecorator->extraDBFields() to extraStatics()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65065 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:36:57 +00:00
Ingo Schommer
b5b11842f9 BUGFIX Checking for array existence before iterating through DataObjectDecorator->provideI18nEntities()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65063 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:27:33 +00:00
Ingo Schommer
d102a902b9 BUGFIX Collecting i18n entities for decorators separately from the decorated classes, as decorated properties like $db have to be stored in the module of the decorated, not in the module of the decorated class.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65057 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-01 23:16:45 +00:00
Ingo Schommer
fd7bc64107 ENHANCEMENT Removed DataObjectDecorator->updateSummaryFieldsExcludeExtra() - was a straight copy of updateSummaryFields()...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65056 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-01 23:00:50 +00:00
Normann Lou
27a868ebf2 APICHANGE: add updateFieldLabels() to DataObjectDecorator, so as that a dataobject could update fieldLables by its decorator.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64805 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-28 03:03:16 +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
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
Normann Lou
66b6a32c8d BUGFIX: not all decorators has a summary_fields defined, so the code need to deal with this.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@61975 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-09-04 23:10:20 +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
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
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
60860cc1b9 MINOR Unified @package PHPdoc (added where missing, removed duplicates)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@56212 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-06-15 13:33:53 +00:00
Sam Minnee
8b508319ab Merged revisions 52448 via svnmerge from
http://svn.silverstripe.com/open/modules/sapphire/branches/2.2.2

........
  r52448 | sminnee | 2008-04-10 13:50:28 +1200 (Thu, 10 Apr 2008) | 1 line
  
  #2387 - Fields specified in DataObjectDecor not saved in some cases
........


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@53518 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-04-26 06:52:36 +00:00
Ingo Schommer
109a9da3af Merged revisions 50265 via svnmerge from
svn://svn.silverstripe.com/silverstripe/modules/sapphire/branches/2.2.0-mesq

........
  r50265 | ischommer | 2008-02-27 15:18:45 +1300 (Wed, 27 Feb 2008) | 1 line
  
  documentation
........


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@52412 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-04-09 11:28:32 +00:00
Sam Minnee
4bbead3aa6 Merged revisions 50814 via svnmerge from
http://svn.silverstripe.com/open/modules/sapphire/branches/2.2.2

........
  r50814 | ischommer | 2008-03-11 10:37:31 +1300 (Tue, 11 Mar 2008) | 1 line
  
  documentation
........


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50885 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-03-11 03:29:49 +00:00
Ingo Schommer
5a313be83e Merged revisions 50805 via svnmerge from
svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.2.2

........
  r50805 | ischommer | 2008-03-11 10:23:53 +1300 (Tue, 11 Mar 2008) | 2 lines
  
  added $searchable_fields in preparation for a more generic search implementation, currently limited to Member.php and MemberTableField.php (mainly to fix bugs caused by r49774 and r47856)
  fixed weird indentation formatting in Member.php
........


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50802 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-03-10 21:28:35 +00:00
Matt Peel
7d13ba7fb8 Reverted geoffm's accidental commit to /open
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50107 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-25 02:10:37 +00:00
Geoff Munn
bf3c09bec6 First post
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50105 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-25 01:06:39 +00:00
Sam Minnee
b1d2e3906b API Documentation updates
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@47766 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-01-09 04:18:36 +00:00
Sam Minnee
d27937f448 Updated API documentation package tags
Fixed some whitespace

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@47725 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-01-08 06:37:50 +00:00
Andrew O'Neil
30efb8efc7 #1444 - DataObjectDecorator? Merge Fields HUGE PROBLEM (merged from 2.1.0 branch, r42210)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@42918 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-10-02 04:48:37 +00:00
Ingo Schommer
e7bc735774 mlanthaler: The validators for the Member extensions didn't work until now, these changes fix that issue.
(merged from branches/gsoc)


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@42144 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-09-16 16:55:47 +00:00
Ingo Schommer
9af317a264 mlanthaler: Bugfix: Indexes and defaults were not supported in DataObjectDecorators?.
(merged from branches/gsoc)


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@41973 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-09-16 00:20:31 +00:00
Sam Minnee
015a7dec45 Moved extension/decorator system from DataObject to Object, so that any object in the system can be extended
Added doWrite option to duplicate, so that writing can be disabled on a duplicated node
Added augmentBeforeWrite, so that extensions can do more onBeforeWrite stuff
Added set_context_obj() so that objects can give some 'context' to the decorators during particular operations
Created a super-class of DataObjectDecorator, Extension that isn't specifically targetted at DataObjects

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@40226 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-08-16 06:32:49 +00:00
Hayden Smith
4a5d9b03f8 Moved Sapphire module to open source path
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@39001 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-07-19 10:40:28 +00:00