Hamish Friedlander
904fd2d5dc
API Make Object::config use late static binding
...
Can now be used in instance scope, like:
$this->config()->db
and in static scope, like:
Page::config()->db
2013-02-27 15:13:59 +13:00
Robert Curry
cc1a5824f2
Fix deprecated use of has_extension
2013-02-07 14:30:46 +13:00
Simon Welsh
94be5c6d87
FIX Handle namespaced classes in Object::parse_class_spec()
2012-12-18 15:00:45 +13:00
Sean Harvey
7042d87fd1
Remove deprecated Object::set_uninherited()
2012-11-16 14:34:20 +13:00
Andrew O'Neil
0c8de0a1de
APICHANGE: Use late static binding for Object::has_extension()
2012-11-07 11:07:55 +13:00
Andrew O'Neil
6dd6a5c188
APICHANGE: Use late static binding for Object::remove_extension()
2012-11-07 11:07:55 +13:00
Andrew O'Neil
fdea5321c7
APICHANGE: add_extension() is now called directly on the class, instead of on Object
2012-11-07 11:07:55 +13:00
Sam Minnee
1f7fc1f76a
FIX Remove instances of lines longer than 120c
...
The entire framework repo (with the exception of system-generated files) has been amended to respect the 120c line-length limit. This is in preparation for the enforcement of this rule with PHP_CodeSniffer.
2012-09-30 17:18:13 +13:00
Ingo Schommer
e2f073f38a
Method visibility according to coding conventions
2012-09-20 10:46:59 +02:00
Sam Minnée
93cdb83ac8
Merge pull request #738 from simonwelsh/lsb-53-30
...
FIX Removes version checking for LSB in Object::static_lookup()
2012-08-27 21:07:29 -07:00
Simon Welsh
e159a68f89
FIX Removes version checking for LSB in Object::static_lookup()
...
Late static binding was added in PHP 5.3, not 5.4. As such, the check for 5.4
and then fallback to Reflection isn't needed.
2012-08-23 17:51:29 +12:00
Hamish Friedlander
fa37c448a5
API Reverse config extra statics control flow
...
Config system used to provide an add_static_source method, which was intended for
use by Extensions to add statics. But extensions for a class arent initialised
until at least one instance of that class is created, so before that the
Config system didnt include values from extensions
This patch reverses the control flow, so that the Config system explictly asks
each Object for its additional config sources via the new method
get_extra_config_sources. This method returns an array that can contain
string names of classes and also raw associative arrays.
The developer visible change is that Extension#add_to_class has been
deprecated. Instead there is a new method, get_extra_config, which has
the same method signature but needs to guarantee that it doesnt
cause side effects. Additionally there is no need to call
parent::get_extra_config - this is handled automatically.
2012-08-23 09:29:13 +12:00
Ingo Schommer
712f28bc78
Scoped deprecation messages ( fixes #7645 )
2012-07-13 11:37:35 +02:00
Sam Minnee
114ebb6953
API CHANGE: Don't have any instance caching in singleton(), rely on Injector for this.
2012-06-11 22:41:12 +12:00
Marcus Nyeholt
ae7fc6f4d2
RECOMMIT This is a recommit of a previously merged, but reverted, commit. The initial commit had problems when running "tests/all flush=all" when dev/build would re-analyse a bunch of stuff; fixes to address this went into https://github.com/silverstripe/sapphire/pull/487 , but for some reason the actual base changes didn't, so I'm re-submitting them in a separate pull.
...
BUGFIX Versioned's constructor doesn't provide suitable defaults. Previously a bug/feature in singleton, where it would pass null,true as params to strong_create, which would then get passed through as params to Versioned's constructor, meant that the code still executed fine (as was set to something that wasn't an array, so the null and true were instead taken as args). The fact that the usage of singleton(Versioned) never really used the classes code, purely for value lookup, meant that this never propagated errors. I've now switched singleton() to use the injector for retrieving values, which means these dud values are no longer passed through
CHANGE Given that Config::inst is an implementation of the singleton pattern itself, I've removed the extra call to singleton(). A side effect of this is that it gets around a possibly nasty circular reference with the dependency injector (which relies on the config object); in future, this dependency structure should really be structured from the DI directly.
MINOR Change singleton and strong_create to use dependency injector
2012-06-03 20:41:00 +10:00
Sean Harvey
c3eabffcb9
MINOR Use shorthand {class}::get() syntax instead of DataList::create()
...
in core code.
2012-05-28 21:13:42 +12:00
Sean Harvey
29e04a1049
Revert "BUGFIX Versioned's constructor doesn't provide suitable defaults. Previously a bug/feature in singleton, where it would pass null,true as params to strong_create, which would then get passed through as params to Versioned's constructor, meant that the code still executed fine (as was set to something that wasn't an array, so the null and true were instead taken as args). The fact that the usage of singleton(Versioned) never really used the classes code, purely for value lookup, meant that this never propagated errors. I've now switched singleton() to use the injector for retrieving values, which means these dud values are no longer passed through"
...
This reverts commit 5eaca340b4
.
2012-05-23 09:52:57 +12:00
Marcus Nyeholt
5eaca340b4
BUGFIX Versioned's constructor doesn't provide suitable defaults. Previously a bug/feature in singleton, where it would pass null,true as params to strong_create, which would then get passed through as params to Versioned's constructor, meant that the code still executed fine (as was set to something that wasn't an array, so the null and true were instead taken as args). The fact that the usage of singleton(Versioned) never really used the classes code, purely for value lookup, meant that this never propagated errors. I've now switched singleton() to use the injector for retrieving values, which means these dud values are no longer passed through
...
CHANGE Given that Config::inst is an implementation of the singleton pattern itself, I've removed the extra call to singleton(). A side effect of this is that it gets around a possibly nasty circular reference with the dependency injector (which relies on the config object); in future, this dependency structure should really be structured from the DI directly.
MINOR Change singleton and strong_create to use dependency injector
2012-05-22 19:09:35 +10:00
Marcus Nyeholt
b269badfbe
FEATURE: Added dependency injector for managing creation of new objects and their dependencies.
...
API CHANGE: Pass Object::create() calls to Injector::create().
API CHANGE: Add "RequestProcessor" injection point in Director, that Director will call preRequest() and postRequest() on.
2012-05-18 12:39:57 +12:00
Sean Harvey
5702007da1
MINOR Fixing comment to be more concise.
2012-05-04 11:11:36 +12:00
Ingo Schommer
20a837947f
MINOR Using PHP version constants rather than version_compare() in Object::static_lookup(), since its called 10k times on an average CMS load that makes a difference of about 3% (with APC)
2012-05-04 00:26:09 +02:00
Sean Harvey
4c6be2931b
BUGFIX Removing use of deprecated Object static functions like
...
get_static(), set_static(), uninherited() etc. Replace with equivalent
Config system get(), update()
2012-04-18 23:10:57 +12:00
Simon Welsh
f07258f3cf
MINOR Update @package values to match renaming sapphire
2012-04-15 10:50:19 +12:00
Simon Welsh
3a6341a251
API-CHANGE sapphire folder can now be renamed.
2012-04-15 10:50:19 +12:00
Sean Harvey
4c1aba8542
BUGFIX Object::get_extensions() is now declared as static, as it was
...
never an instance method
2012-04-12 12:02:13 +12:00
Ingo Schommer
40d73127ae
MINOR Using late static binding instead of Object::create() calls
2012-04-04 17:10:31 +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
f63497d6f9
ENHANCEMENT Extension arguments are now passed through to add_to_class()
...
static function on Extension classes.
BUGFIX FulltextSearchable didn't pass through arguments, use now
available $args parameter with FulltextSearchable::add_to_class()
2012-03-12 16:14:47 +13:00
Hamish Friedlander
05cf5a833b
MINOR: Dump deprecation notices introduced by the config system to 3.1.0 as it breaks heaps of code
2012-03-09 18:16:45 +13:00
Hamish Friedlander
876f4c5299
API CHANGE: Modify extensions system to support new config system. Statics are now declared directly on extensions, and there is an add_to_class method extensions can hook into to modify class configuration
2012-03-09 18:16:44 +13:00
Hamish Friedlander
0ab171d7c0
API CHANGE: Add config property on Object as shortcut to objects own properties
2012-03-09 18:13:57 +13:00
Hamish Friedlander
1b05a337b8
API CHANGE: Strip out old static accessors from Object
2012-03-09 18:13:56 +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
adbcf61c56
MINOR: Minor fixes after new SS_List interfaces cleanup
2012-03-09 17:50:32 +13:00
Sam Minnee
da64123116
MINOR: Removed use of deprecated ClassInfo::is_subclass_of
2011-10-29 17:34:32 +13:00
Sam Minnee
e5afa25522
MINOR: Use Deprecation class to indicate deprecated methods in core.
2011-10-29 17:34:31 +13:00
Stig Lindqvist
3a11bb2f66
MINOR Do not call a constructor if there aren't one.
...
This will fix a lot of unittests failing.
2011-10-27 18:13:41 +02:00
Fred Condo
9bd499617b
Spelling correction
...
Found and fixed all misspellings of "[Hh]ierarchy"
2011-10-18 15:32:52 -07:00
Sam Minnee
0601384cda
BUGFIX: Reapply decorator statics if it has been removed and re-added. (merged from r100706)
2011-10-07 14:12:50 +02:00
Ingo Schommer
ea9faeccf7
API CHANGE Removed Object->cacheToFileWithArgs(), please use Object->cacheToFile() with the $arguments param
2011-05-01 20:23:07 +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
Simon Welsh
44dabbb865
Landing pull request 3. BUGFIX: Object::__call() checking the wrong static. Fixes #6438
2011-04-25 23:11:09 +12:00
ajshort
969aa0b51e
MINOR: Replaced deprecated ClassInfo::is_subclass_of() calls.
2011-03-24 20:14:41 +11:00
Will Rossiter
0b54ce3450
ENHANCEMENT: #5248 improved the handling of attaching invalid extensions to dataobjects.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@115174 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-12-19 23:04:44 +00:00
Sean Harvey
a5f5617ab2
API CHANGE Removed deprecated method Object::extInstance(), please use Object::getExtensionInstance() instead
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@115056 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-12-15 04:30:00 +00:00
Sean Harvey
744791219e
MINOR #6256 Removed PHP version < 5.1.3 functionality workaround from Object::create() and Object::strong_create()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@115055 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-12-15 04:27:43 +00:00
Sam Minnee
890ac94a6a
MINOR: Several changes merged from branches/2.4
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112060 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-13 01:35:19 +00:00
Sam Minnee
3db905bc42
BUGFIX: Update Object::parse_class_spec() to handle arrays. (from r101105)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@111587 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-04 04:47:08 +00:00
Sam Minnee
310272bc7e
BUGFIX: call_user_func_array changed to PHP 5.1 compatible notation (from r101099)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@111586 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-04 04:46:55 +00:00
Sam Minnee
cc355a4f18
API CHANGE: Replaced eval based creation of extension and field objects with Object::create_from_string().
...
API CHANGE: Introduced new function Object::create_from_string() to instantiate an object from a string like 'Int(50)' (from r101093)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@111585 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-04 04:46:41 +00:00
Sam Minnee
ec067ab08a
API CHANGE: Pass the full extension string as the 2nd argument to DataObjectDecorator::extraStatics() (from r101043)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@111568 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-04 04:32:30 +00:00
Ingo Schommer
7e8a2c10c9
MINOR Changed places of Object::extInstance() to Object::getExtensionInstance() and added a notice if extInstance is used in future (from r100487)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@105575 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-05-25 03:55:30 +00:00
Ingo Schommer
69543bb575
BUGFIX #4929 : Fixed Object::add_static_vars() for uninherited static.s (from r97586)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@102510 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-04-12 22:00:25 +00:00
Ingo Schommer
007b309e62
BUGFIX: Reset the methods applied to classes after adding/removing extensions. (from r89957) (from r96726)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@102348 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-04-12 01:50:38 +00:00
Andrew Short
d4acf7c938
MINOR: Removed unnecessary extension instance check in Object->__construct(), since Extensions no longer inherit from Object.
...
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@88772 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-13 01:44:21 +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
81eeef25e8
ENHANCEMENT: Improved performance of Object::uninherited_static()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84159 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 06:44:47 +00:00
Sam Minnee
70dc433d38
ENHANCEMENT: Improved performance of Object::allMethodNames() and Object::addMethodsFrom()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84158 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 06:13:33 +00:00
Sam Minnee
01640b32ae
BUGFIX: Ameneded r84151 so that the application order of extensions is the same as it was previously.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84156 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 05:41:01 +00:00
Sam Minnee
60fde4ad54
BUGFIX: Ameneded r84151 so that the application order of extensions is the same as it was previously.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@84155 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-11 05:27:30 +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
Sam Minnee
a72f7b2173
ENHANCEMENT: Added ClassInfo::is_subclass_of() for better performance
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83789 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-05 04:01:22 +00:00
Sam Minnee
27a5961cba
BUGFIX: Reverted broken optimisation in r83439
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83477 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-03 01:46:46 +00:00
Sam Minnee
93d45d9b4d
ENHANCEMENT: Improved performance of Object instantation.
...
API CHANGE: Extensions can no longer be extended with more Extensions (that would be a really bad idea, now it doesn't work at all, for performance)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83439 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-31 05:40:31 +00:00
Tom Rix
1eb80b7498
MAJOR ENHANCEMENT VirtualPages now pass all unknown method calls, and property gets on to the original item if the virtual page doesn't have it/them.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83160 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-29 23:21:59 +00:00
Sam Minnee
3a4518c804
BUGFIX: Fix static application for translatable
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@81693 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-13 05:25:04 +00:00
Sam Minnee
6a52153b9f
BUGFIX #4285 : Fixed application of decorators when add_extension not used.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@81676 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-13 03:56:26 +00:00
Sam Minnee
2000087dd6
BUGFIX: Fixed application of parameterised extensions with Object::add_extension()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@81173 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-07 01:28:47 +00:00
Sean Harvey
9272a28050
BUGFIX Object::add_extension() should only load statics for extensions of DataObject, since it is specific to DataObjectDecorator
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@79433 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-17 08:37:05 +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
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
Sean Harvey
b20b6e0f95
Merged from 2.3
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@76269 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-05-06 06:36:16 +00:00
Ingo Schommer
9f0be3eb7b
API CHANGE Deprecated Object->extInstance(), use getExtensionInstance() instead
...
ENHANCEMENT Added Object->getExtensionInstances()
ENHANCEMENT Added Object::get_extensions()
ENHANCEMENT Unsetting class caches when using Object::add_extension() to avoid problems with defineMethods etc.
BUGFIX Fixed extension comparison with case sensitivity and stripping arguments in Object::has_extension()
BUGFIX Unsetting all cached singletons in Object::remove_extension() to avoid outdated extension_instances
MINOR Documentation in Object
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73900 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-31 22:27:53 +00:00
Sam Minnee
a28ea0a69e
ENHANCEMENT: Added Object::combined_static(), which gets all values of a static property from each class in the hierarchy
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73473 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-21 05:10:05 +00:00
Sam Minnee
b09fac7f9b
BUGFIX: Don't throw an error if a non-existent cache file is cleared
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73089 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-16 04:31:53 +00:00
Sam Minnee
67a1c6cda3
ENHANCEMENT: Added Object::clearCache() to clear a cache
...
BUGFIX: Make object cache testing more robust
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73059 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-15 01:09:59 +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
b7d394008e
MINOR Merged from branches/2.3
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69957 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-10 11:35:50 +00:00
Sam Minnee
ece0130baa
Merged pre-2.3-oct08
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66352 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-21 01:06:21 +00:00
Sam Minnee
3d9532db83
Merged branches/2.3
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66108 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-18 01:48:37 +00:00
Ingo Schommer
c30b5812d1
API CHANGE Don't include NULL returns in decorated methods called through Object->extend(), meaning empty method bodies in decorators won't confuse permission checks through $myObj->extend('canView') etc.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65451 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-07 12:09:39 +00:00
Ingo Schommer
0465365b51
MINOR Restructured code in Object.php to consistently have properties and important methods like __call() at the top of definitions (no logic changes). Added minor documentation.
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65058 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:12:23 +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
aeab0115a0
(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@59927 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-06 03:43:48 +00:00
Ingo Schommer
d713777d73
API CHANGE LeftAndMain.php: Removed $extra_menu_items, $replaced_menu_items, $removed_menu_items (all handled in $menu_items now)
...
API CHANGE Deprecated menu manipulation through Object::addStaticVars(), changed internal representation of menu_item array to always use associative arrays
ENHANCEMENT Added LeftAndMain::add_menu_item(), LeftAndMain::replace_menu_item(), LeftAndMain::remove_menu_item()
ENHANCEMENT Moved default menu items from LeftAndMain->MainMenu() to cms/_config.php
ENHANCEMENT Added ReportAdmin::has_reports()
ENHANCEMENT Object::addStaticVars() can replace the whole array optionally
ENHANCEMENT Object::stat() optionally returns uncached results
ENHANCEMENT Moved Object::useCustomClass('SSDateTime') from Object.php to sapphire/_config.php
ENHANCEMENT Misc documentation and formatting in LeftAndMain and Object classes
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@52171 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-04-05 03:43:58 +00:00
Sam Minnee
3014401e11
Merged revisions 51462 via svnmerge from
...
svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.2.2
........
r51462 | sminnee | 2008-03-19 18:01:55 +1300 (Wed, 19 Mar 2008) | 1 line
Make Object::hasMethod() and Object::__call() case-insensitive, and added tests for it
........
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@51468 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-03-19 20:39:07 +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
84d1d57df5
Merged revisions 45654 via svnmerge from
...
svn://svn.silverstripe.com/silverstripe/modules/sapphire/branches/2.1.0-rc3oriwave2
........
r45654 | sminnee | 2007-11-26 17:00:26 +1300 (Mon, 26 Nov 2007) | 2 lines
Redirect to legislation section when there are only legislation pages
Allow selection of folder when inserting files / images
........
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@49788 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-19 00:36:26 +00:00
Sam Minnee
9a68af98cd
simon_w: #1954 - Added object caching methods
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@49175 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-07 03:02:52 +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
fa9a258bd2
Merged revisions 46139 via svnmerge from
...
svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.2.1
........
r46139 | aoneil | 2007-12-03 11:28:34 +1300 (Mon, 03 Dec 2007) | 2 lines
#1942 - Object::uninherited() fix for PHP 5.1.2
........
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@46814 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-12-13 22:33:25 +00:00
Andrew O'Neil
f7127c90bc
#1586 - Object.php contains request parameter 'debugmethods'
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@44487 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-11-07 23:46:00 +00:00
Andrew O'Neil
70db5d36a0
Hack to fix Fatal error: Call to undefined method stdClass::allMethodNames() (merged from 2.0.2 branch, r42505)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@42921 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-10-02 04:52:31 +00:00
Ingo Schommer
9b75ec925a
mlanthaler: Bugfix: Fixed bug "Fatal error: Access to undeclared static property: Controller::$db in ../sapphire/core/Object.php(282) : eval()'d code on line 1". Could be implemented better if we require support for PHP 5.1 because then we can avoid the exception by calling ReflectionClass::hasProperty() respectively ReflectionClass::getStaticPropertyValue() ( http://www.php.net/manual/en/language.oop5.reflection.php ).
...
(merged from branches/gsoc)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@41972 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-09-16 00:19:54 +00:00
Ingo Schommer
b358c50f2f
mlanthaler: Bugfix: If DataObject::add_extension() is used more than once per class, previously the extensions were overwritten and so only the last one was usable.
...
(merged from branches/gsoc)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@41951 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-09-15 21:34:40 +00:00
Sam Minnee
ee3c18afcf
Added missing changes for r40228
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@40234 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-08-16 06:37:49 +00:00