Commit Graph

617 Commits

Author SHA1 Message Date
Ingo Schommer
56cb10e1c5 BUGFIX Altering parent getCMSFields() results in RedirectorPage instead of starting with an empty FieldSet, as this discards any tabs and fields which are not explicitly mentioned in the implementation like the ability to create a translation.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70325 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-19 00:33:43 +00:00
Ingo Schommer
84a7b17cb4 ENHANCEMENT Disabled Translatab-e>augmentWrite() - was only needed for the blacklist fields implementation which is inactive for the moment
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70319 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-18 22:47:02 +00:00
Ingo Schommer
33066bffda BUGFIX Reverted special cases for Translatable in Versioned->canBeVersioned() (originally committed in r42119) - was checking for existence of underscores in table names as an indication of the "_lang" suffix, which is no longer needed. It was also a flawed assumption which tripped over classes like TranslatableTest_TestPage
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70318 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-18 22:46:16 +00:00
Ingo Schommer
bcac495926 ENHANCEMENT Recursively creating translations for parent pages to ensure that a translated page is still accessible by traversing the tree, e.g. in "cms translation mode" (in Translatable->onBeforeWrite())
ENHANCEMENT Simplified AllChildrenIncludingDeleted() to not require a special augmentAllChildrenIncludingDeleted() implementation: We don't combine untranslated/translated children any longer (which was used in CMS tree view), but rather just show translated records
ENHANCEMENT Ensuring uniqueness of URL segments by appending "-<langcode>" to new translations (in Translatable->onBeforeWrite())
ENHANCEMENT Added Translatable->alternateGetByUrl() as a hook into SiteTree::get_by_url()
ENHANCEMENT Adding link back to original page in CMS editform for translations
BUGFIX Excluding HiddenField instances from Translatable->updateCMSFields()
BUGFIX Don't require a record to be written (through exists()) when checking Translatable->isTranslation() or Translatable->hasTranslation()
MINOR Don't use createMethod() shortcut for Translatable->AllChildrenIncludingDeleted()
MINOR Added Translatable unit tests

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70306 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-16 04:14:34 +00:00
Ingo Schommer
7ccd1bbc24 ENHANCEMENT Looking for URLSegments in languages outside of default language in ModelAsController by implementing a new extension point in SiteTree::get_by_url(): DataObjectDecorator->alternativeMatches()
ENHANCEMENT Allowing non-default language URLs to be accessed without explicitly specifying the language in GET request

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70305 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-16 04:07:17 +00:00
Ingo Schommer
c67ef43f6c MINOR initializing local variables properly in Hierarchy
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70304 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-16 04:04:13 +00:00
Ingo Schommer
d5339af47c BUGFIX Falling back to Translatable::current_lang() if no $context object is given, in augmentAllChildrenIncludingDeleted() and AllChildrenIncludingDeleted()
MINOR phpdoc for Translatable
MINOR Added more Translatable unit tests

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70214 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-15 05:56:25 +00:00
Ingo Schommer
42fd02234d ENHANCEMENT Added Hierarchy->flushCache() to clear in-memory caches for allChildrenIncludingDeleted() and allChildren()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70213 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-15 05:54:10 +00:00
Ingo Schommer
5c1c90320d MINOR documentation
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70139 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-14 04:10:37 +00:00
Ingo Schommer
cb8308513b BUGFIX Disabled assumption that SQLQuery->filtersOnID() should only kick in when exactly one WHERE clause is given - this is very fragile and hard to test. It would return TRUE on $where = "SiteTree.ID = 5", but not on $where = array("Lang = 'de'", "SiteTree.ID = 5")
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70138 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-14 04:00:30 +00:00
Andrew O'Neil
196286a6c2 Fix typo
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70134 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-14 02:32:35 +00:00
Ingo Schommer
455ee11b5a API CHANGE Removed obsolete Translatable::table_exists()
ENHANCEMENT Made Translatable constructor arguments optional, as by default all database fields are marked translatable
MINOR More unit tests for Translatable

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70118 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-13 22:28:24 +00:00
Andrew O'Neil
aca51f68bc BUGFIX: Fix default language not being set
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70079 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-13 05:02:43 +00:00
Andrew O'Neil
2b6842e634 BUGFIX: Fixed URLs having to unique across languages
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70078 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-13 05:02:11 +00:00
Ingo Schommer
00619a02f9 API CHANGE Removed obsolete internal Translatable methods: hasOwnTranslatableFields(), allFieldsInTable()
ENHANCEMENT Removed $create flag in Translatable::getTranslation() and replaced with explit action createTranslation()
ENHANCEMENT Sorting return array of Translatable::getTranslatedLangs()
ENHANCEMENT Added a note about saving a page before creating a translation
MINOR Added phpdoc to Translatable

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70072 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-13 04:34:27 +00:00
Ingo Schommer
59f6133655 MINOR Added empty $db static on GhostPage - was causing weird side-effects when reinitializing decorated $db statics through Translatable
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@70071 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-13 04:31:14 +00:00
Andrew O'Neil
4c0227e105 #3340 - Add extra date functions
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69974 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-12 02:02:45 +00:00
Saophalkun Ponlu
824726c3f5 BUGFIX Allowing to pass direct ALTER TABLE notation into Database->requireField() as a fallback from array-syntax. This is necessary for external modules like gis which cant hook into core database abstraction routines. Specifically, the GeoPoint implementation broke /dev/build
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69971 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-11 22:20:51 +00:00
Ingo Schommer
1c40434a67 BUGFIX Fixed SQL quoting in Translatable
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69961 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-10 12:38:37 +00:00
Ingo Schommer
d3d6ae833d Merged, debugged and enhanced Translatable patches from branches/translatable at r64523, r64523, 64523, thanks wakeless!
API CHANGE Changed Translatable schema from auxilliary tables (SiteTree_lang, SiteTree_lang_Live) to automatically filtered records on the original table (SiteTree, SiteTree_Live), using $Lang and $OriginalID properties. Incompatible update to old schema, migration script is in the works.
API CHANGE Removed Translatable::get_one(), Translatable::write()
ENHANCEMENT Simplified Translatable tree generation by using getSiteTreeFor() in CMSMain->createtranslation()
ENHANCEMENT Added AllChildrenIncludingDeleted(), augmentNumChildrenCountQuery(),  augmentAllChildrenIncludingDeleted(), augmentStageChildren() to Translatable class to allow for more stable tree generation.
ENHANCEMENT Moved definition of Translatable schema from augmentDatabase() to Translatable->extraStatics()
ENHANCEMENT Changes to the CMS language selection refresh the whole admin interface instead of the tree only. This way we can add a URL parameter ?lang=<lang> to /admin, which makes the specific language bookmarkable and reloadable. Changes to LangSelector.js
ENHANCEMENT Added fallback to ModelAsController->getNestedController() to fetch page with matching URLSegment but different language in case no page is found in the current language.
ENHANCEMENT Added helper methods to Translatable: getTranslation(), hasTranslation(), isTranslation(), findOriginalIDs()
ENHANCEMENT Getters and setters for Translatable->getOriginalPage() etc.
ENHANCEMENT Hooking Translatable into ModelAsController and ContentController initialization in order to call choose_site_lang()
ENHANCEMENT Simplified Translatable->augmentSQL(), augmentWrite() by not using auxilliary tables
ENHANCEMENT Showing clickable links for Translations in Translatable->updateCMSFields()
BUGFIX Modifying Hierarchy/SiteTree Children getters to accept optional "context" which can be used to set a language explicitly through the $Lang property, rather than implicitly reyling on the static Translatable::current_lang()
BUGFIX Fixed TranslatableTest to work with new datamodel
BUGFIX Temporarily disabled cookie/session selection in Translatable::choose_site_lang() until we have a good test suite for the side effects.
MINOR Added "untranslated" CSS styles to tree nodes and marking them as inactive/grey


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69959 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-10 12:15:30 +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
Ingo Schommer
c8200f67ac BUGFIX Fixed SiteTree->getIsDeletedFromStage() to return false on non-numeric IDs (isNew())
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69857 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-07 23:01:38 +00:00
Ingo Schommer
0747fc6d52 MINOR merged from branches/2.3
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69856 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-07 23:00:54 +00:00
Ingo Schommer
fcda174ea2 BUGFIX Fixed DataObject->merge() behaviour when merging grandchildren classes of DataObject - was using customDatabaseFields() to merge only the db fields on specific class. Changed to inheritedDatabaseFields() and added unit test.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69801 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-07 01:25:43 +00:00
Ingo Schommer
c4250635bc BUGFIX Disabling batch selection of pages without publication rights in SiteTree->CMSTreeClasses()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69747 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-06 02:46:16 +00:00
Ingo Schommer
085346f0e0 MINOR Merged from branches/2.3
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69704 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-01-05 06:19:48 +00:00
Ingo Schommer
40215a9937 ENHANCEMENT Removed object state setting in CMSMain/SiteTree publication process: DeletedFromStage, CheckedPublicationDifferences, IsAddedToStage and added getters for them. Improves testability as we don't have to rely on random methods like MenuTitle() being called to set object state.
ENHANCEMENT Flushing cache in SiteTree->onAfterWrite() and SiteTree->onAfterDelete() to ensure the publication state is up to date


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69410 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-17 22:41:07 +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
Geoff Munn
fe0a640c39 API CHANGE: fulltext and unique indexes are now arrays
API CHANGE: db/build now no longer notifies you of changes which haven't actually happened.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@69303 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-17 00:40:24 +00:00
Sam Minnee
a8dca3908e Static caching merges from dnc branch
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@68900 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-15 01:30:41 +00:00
Ingo Schommer
0a017da580 BUGFIX Added stub PDODatabase implementations to avoid errors when batch-instanciating singletons
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@68166 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-10 07:33:27 +00:00
Ingo Schommer
9e145705bc MINOR Merged r68155 from branches/2.3
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@68164 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-10 07:28:04 +00:00
Ingo Schommer
d26f08b481 MINOR merged branches/2.3 into trunk
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@67465 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-04 22:38:32 +00:00
Andrew O'Neil
17e855da88 BUGFIX: Fix incomplete change in r66672
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@67152 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-02 04:32:19 +00:00
Sam Minnee
3a13be7703 BUGFIX: Fixed db/build comparison for enum values
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@67076 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-12-01 05:03:34 +00:00
Sam Minnee
d76638249e BUGFIX: Access tab - include 'inherit' in the option lists on top level pages if that is the current value. Otherwise you try and save a null which MySQL can cope with but stricter databases can't.
BUGFIX: Fixed posgresql syntax for tree-sort publishing.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66794 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-27 00:06:35 +00:00
Sam Minnee
1ad0bfb165 Improved boolean field handling for postgres
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66792 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-27 00:00:35 +00:00
Ingo Schommer
47a67a5a4e BUGFIX Wrong usage of Member::currentUser() in SiteTree->canEdit()
ENHANCEMENT Allowing to explicitly check SiteTree->can*() actions for a non-existing member without triggering Member::currentUser() fallback for better testability

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66672 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-25 22:23:47 +00:00
Ingo Schommer
aa7b5f4ee3 MINOR merged from branches/2.3 (googlesitemaps modularization)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66517 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-24 22:04:32 +00:00
Sam Minnee
75a237cd01 BUGFIX: Fixed SQLQuery::filtersOnId
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66509 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-24 19:48:11 +00:00
Sam Minnee
2e955b498e BUGFIX: Fixing tests
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66508 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-24 19:28:46 +00:00
Sam Minnee
96c5be8252 Updating queries to be more DB agnostic
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66507 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-24 09:31:14 +00:00
Sam Minnee
09e3145921 Fixed reading of booleans in postgres
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66432 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:49:25 +00:00
Sam Minnee
93438e0be2 API CHANGE: Adding double quotes to all table and field references (a work in progress)
API CHANGE: DataObject::get()'s GROUP BY clause is only generated for MySQL as it needs to be improved for other databases to accept it.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66427 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:28:16 +00:00
Sam Minnee
08e9e04f1a BUGFIX: Fixed access to changed format for SQLQuery::
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66425 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:26:38 +00:00
Sam Minnee
d2d22aa2d7 Updated boolean SQL value generation to be more db-agnostic
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66423 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:20:43 +00:00
Sam Minnee
5a98e83f7a API CHANGE: Updated DB::manipulate() to be more db-agnostic.
API CHANGE: Moved the meat of SQLQuery's SQL generation into Database::sqlQueryToString(), to be overloaded by different database implementations.
API CHANGE: Moved the implementation of ClassInfo::hasTable() and ClassInfo::getValidSubClasses() into Database::hasTable() and Database::enumValuesForField(), to be overloaded by different database implementations.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66422 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:20:02 +00:00
Sam Minnee
c7330dd231 Introduced array-based syntax for specifying field types (Merged branches/dbabs into trunk)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66403 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 01:01:03 +00:00
Sam Minnee
a3d3fb65a9 Updated SQL queries to be ansi compatable
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66401 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 00:31:06 +00:00
Sam Minnee
12e62c6329 ENHANCEMENT: Change MySQLDatabase connection to operate in ANSI SQL mode, to ease the transition to DB abstraction
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66399 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-22 03:51:04 +00:00
Sam Minnee
2984355f43 Merged branches/2.3 into trunk
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66395 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-22 03:33:00 +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
4e6036911e Merged branches/2.3
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66112 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-18 01:52:32 +00:00
Sam Minnee
5df7237a93 Fixed DataObject::hasDatabaseField() for built-in fields (Created, etc)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66110 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-18 01:49:29 +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
Will Rossiter
8052c5dce4 Merged pre-2.3-oct08 into trunk
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66080 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-17 22:59:17 +00:00
Sam Minnee
73a075a491 FEATURE #594: Added javascript-on-demand support
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65688 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-12 04:31:33 +00:00
Ingo Schommer
91c0ca0755 BUGFIX Adjusted Translatable to api changes from r65581
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65583 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-11 02:37:01 +00:00
Ingo Schommer
79a7e6d27a ENHANCEMENT Using actual classname in DataObjectSet->debug()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65582 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-11 02:36:30 +00:00
Sam Minnee
9565fec5ad FEATURE #2767 wakeless: Allow popuplation of non-DataObject tables with YamlFixture
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65555 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-10 23:18:31 +00:00
Ingo Schommer
5c9f0f120b BUGFIX Setting correct user locale in ImageField and FileIframeField - the controller is separate from the CMS context, so wasn't initialized with i18n (see #1727)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65539 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-10 19:54:30 +00:00
Ingo Schommer
5d9550c214 BUGFIX Making Metadata fields writeable in translation mode (see #2993)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65536 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-10 11:11:13 +00:00
Sam Minnee
58dbe416ee Merged from branches/2.2
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65523 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-10 03:51:35 +00:00
Ingo Schommer
9c9a461d67 BUGFIX Removed project-specific hack in DataObject->getManyManyComponentsQuery() as it was breaking Translatable saving
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65518 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-10 02:36:21 +00:00
Ingo Schommer
4452e9bb5b ENHANCEMENT Updated UpgradeSiteTreePermissionSchemaTask to rename obsolete database columns
ENHANCEMENT Calling UpgradeSiteTreePermissionSchemaTask from SiteTree->requireDefaultRecords as a temporary workaround for missing migration infrastructure. This means that upgrading the schema for 2.3 can be done without manual task triggers, just the usual dev/build (see http://open.silverstripe.com/ticket/2847#comment:4)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65495 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-09 23:58:48 +00:00
Ingo Schommer
117806756c ENHANCEMENT Added Database->renameField() and Database->dontRequireField()
ENHANCEMENT Added DatabaseTest

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65494 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-09 23:56:24 +00:00
Ingo Schommer
e6a95566d9 MINOR Removed obsolete code from MySQLDatabase
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65484 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-09 23:21:16 +00:00
Sam Minnee
4f6170c265 BUGFIX: Better initial-site-setup boundary condition checking needed after the manifest builder update
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65469 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-09 22:11:25 +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
Sam Minnee
5a0db59850 BUGFIX: Fixed broken dev/build compilation of manifest
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65394 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-06 20:57:07 +00:00
Normann Lou
2b0add5c72 APICHANGE: make DataObject::getField() visible to the public
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65388 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-06 06:32:05 +00:00
Sam Minnee
c1d6e82248 API CHANGE: Removed manifest's dependency on database, by removing hastable information [17:47:04]
dquote> API CHANGE: Deprecate ClassInfo::ready() in favour of Security::database_is_ready()
dquote> API CHANGE: Create DataObject::has_own_table() to determine whether a DataObject has a table without looking at it.
dquote> API CHANGE: Exclude /tests/ directories from the manifest entirely except when tests are being run.
dquote> API CHANGE: Added ?usetestmanifest=1 flag to access the test manifest outside of test execution.
dquote> API CHANGE: Simplified Core.php manifest include to just call ManifestBuilder::include_manifest() - manifest takes care of its own cache file

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65385 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-06 04:51:25 +00:00
Ingo Schommer
ccd149f689 BUGFIX Reverted text replacement performance improvement in SQLQuery - it was replacing more ocurrences via str_replace() than the previous implementation based on arrays, which broke queries augmented by Translatable (originally committed in r60468 and r54044)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65291 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-05 14:23:17 +00:00
Sam Minnee
33219fcad2 BUGFIX #2954 - Fixed support for negative numbers in decimal fields
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65269 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-05 04:10:48 +00:00
Will Rossiter
bb20921fef BUGFIX: fixed canPublish() so it actually got the member if none was passed and fixed notice with $results not existing
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65242 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-05 01:05:57 +00:00
Sam Minnee
5f177b9f08 BUGFIX #2056: Removed all references to deprecated Member::isAdmin()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65232 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-04 23:31:33 +00:00
Sam Minnee
72d90ab270 Set default edit rights on pages to be only administrators
API CHANGE: Use return value of alternateCanPublish()
BUGFIX: Fixed the Link() value for homepage
BUGFIX: Allow DBField::__construct() without a name
API CAHNGE: Allow augmentPopulateDefaults on data object decorators

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65229 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-04 23:17:14 +00:00
Ingo Schommer
ca6d92341e API CHANGE Changed SiteTree->Viewers to SiteTree->CanViewType, Changed SiteTree->Editors to SiteTree->CanEditType (see #2847)
API CHANGE Changed SiteTree->ViewersGroup has_one relationship to SiteTree->ViewerGroups has_many relationship (see #2847)
API CHANGE Changed SiteTree->EditorsGroup has_one relationship to SiteTree->EditorGroups has_many relationship (see #2847)
ENHANCEMENT Added 'Inherit' flag to SiteTree->CanViewType and SiteTree->CanEditType (see #2419)
ENHANCEMENT Added unit tests for SiteTree permissions
BUGFIX Checking recursively for permissions on children with SiteTree->canDelete()
BUGFIX Disallow SiteTree->canEdit() if SiteTree->canView() is not granted
Note: Use dev/tasks/UpgradeSiteTreePermissionSchemaTask/run to migrate legacy data to the new schema as outlined above

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65150 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-03 14:52:35 +00:00
Sam Minnee
c573d51d4c BUGFIX: Fixed bug with ID-less generation of YamlFixture entries that trigger $this->write() in setters
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65123 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-03 01:28:18 +00:00
Ingo Schommer
65d5cf088f ENHANCEMENT Scaffolding TextField instead of TextareaField in Text DBField due to size
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65092 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 21:07:09 +00:00
Ingo Schommer
3edc358ead ENHANCEMENT Added fieldLabels() overloading to various DataObject subclasses. Use this method instead of directly calling _t() in getCMSFields(), and use fieldLabel('MyField') to get the label for a specific FormField. This way, we can transparently support formfield scaffolding and re-use the labels for search fields automatically.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65072 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 20:04:10 +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
30f8c74283 API CHANGE Removed DataObjectSet->consolidate(), use DataObjectSet->toNestedArray()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65068 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:57:25 +00:00
Ingo Schommer
52ed342fc2 MINOR formatting
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65067 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:55:33 +00:00
Ingo Schommer
eb38e4d9c8 API CHANGE Removed DataObjectSet->consolidateString()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65066 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:55:12 +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
f06ae18409 API CHANGE Moved DataObject::get_by_url() to SiteTree::get_by_url()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65060 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:24:23 +00:00
Ingo Schommer
d19dd96793 API CHANGE Marked DataObject->filledOut() deprecated
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65059 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-02 00:17:39 +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
Ingo Schommer
4ecb895b0a ENHANCEMENT Added i18nEntityProvider interface (see comments in #1625) incl. unit tests
MINOR documentation for i18nTextCollector

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65022 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-01 13:26:08 +00:00
Ingo Schommer
7239db8c1b ENHANCEMENT Allowing translation of some static properties on DataObject and subclasses through DataObject->fieldLabels(). Part of the provideI18nEntities() work which was started in r64881 (see #1625)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65020 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-01 13:23:38 +00:00
Sean Harvey
e9f65ed8e1 BUGFIX Fixed wrong case of class names for ImageIFrameField causing errors
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64976 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-31 02:09:04 +00:00
Sam Minnee
cd699e3d89 API CHANGE #2857 - Renamed RequestHandlingData to RequestHandler
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64953 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-30 22:03:21 +00:00
Sam Minnee
672ca89c0b API CHANGE #2698 ajshort: URL handler only passes control to subclasses of RequestHandlingData
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64951 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-30 21:51:59 +00:00
Ingo Schommer
84db28eb10 FEATURE Collect i18n Entities from dynamic PHP code - useful to translate statics. Added DataObject->provideI18nEntities() and i18nTextCollector->collectFromEntityProviders(). See #1625
FEATURE Making DataObject attributes translatable through i18n class, e.g. $db and all relation statics. Use DataObject->fieldLabels() to access translated attributes.
ENHANCEMENT Ignoring entity-names with $ signs (most likely dynamic properties) in i18nTextCollector->collectFromCode()


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64881 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-29 21:07:17 +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
Normann Lou
bff5942338 BUGFIX: Fix YamlFixture issues when specifying IDs
BUGFIX: Fix DataObject::write() with a specified ID and forceInsert to be true

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64798 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-28 01:23:41 +00:00
Normann Lou
3966f9a794 APICHANGE: A Text db field, by default, should be rendered as a TextareaField in its scaffoldForm
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64792 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-28 00:32:51 +00:00
Sean Harvey
a6e6a4387d BUGFIX Renamed "Save & Publish" to "Save and Publish" since this value is used in the value attribute of input elements, properly parsed, this would produce &amp; instead of &
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64506 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-19 01:28:30 +00:00
Sean Harvey
7048077184 API CHANGE Removed HtmlOneLineField. This field has been deprecated for some time now, and it does not work.
API CHANGE Changed HTMLVarchar->scaffoldFormField() to use HtmlEditorField instead of HtmlOneLineField, which does not work.

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64504 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-19 00:18:55 +00:00
Sean Harvey
ee5b0e2447 MINOR ErrorPage removal of ShowInMenus explicitly being set - this is done using static $defaults on the class itself.
MINOR ErrorPage phpDoc updates - removal of non-existant token @usedby, replaced with @see
MINOR Code formatting changes to be more consistent

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64502 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-18 22:31:04 +00:00
Ingo Schommer
795fdb2169 BUGFIX Removed duplicate setValue() method on Time (was supposed to be deleted instead of renamed from setVal() to setValue())
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64467 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 23:19:39 +00:00
Ingo Schommer
768fc5a588 BUGFIX Adjusted HeaderField and LabelField implementation to new constructor arguments (see r64421)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64422 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 13:26:50 +00:00
Ingo Schommer
bc28a64e18 MINOR Changed visibility of SiteTree->getClassDropdown()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64418 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 13:00:02 +00:00
Ingo Schommer
edd087f80b API CHANGE Removed SiteTree->makelinksunique() and SiteTree->makelinksuniquequick() - use new SiteTreeMaintenanceTask
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64416 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 12:18:16 +00:00
Ingo Schommer
d80a6899e1 MINOR documentation
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64415 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 12:05:08 +00:00
Ingo Schommer
639dee8926 MINOR Removed unused DatabaseAdmin->makeURL()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64414 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 12:02:57 +00:00
Ingo Schommer
b46250b9dc MINOR documentation
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64413 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 12:02:41 +00:00
Ingo Schommer
049ab468e3 MINOR Misc deprecation notes
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64400 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 11:03:01 +00:00
Sean Harvey
1b09577c31 ENHANCEMENT Versioned::get_one_by_stage() and Versioned::get_by_stage() were missing parameters from their get_one() and get() counterparts in DataObject. Those parameters have been added. See ticket #2965 for the origin of this patch.
MINOR phpDoc for Versioned::get_by_stage() to be consistent with Versioned::get_one_by_stage()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64397 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 10:14:47 +00:00
Ingo Schommer
9b1db223ce API CHANGE Removed deprecated Datetime class, use SSDatetime instead (was conflicting with PHP 5.2 integrated classes)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64394 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:59:40 +00:00
Ingo Schommer
2d44f59816 API CHANGE Removed ViewableData->setVal(), use ViewableData->setValue()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64383 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:44:32 +00:00
Ingo Schommer
189501b775 MINOR Misc deprecation notices
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64382 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:44:08 +00:00
Ingo Schommer
0199294864 API CHANGE Removed DataObjectSet->append(), use DataObjectSet->push() or DataObjectSet->merge()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64378 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:40:55 +00:00
Ingo Schommer
f225180511 API CHANGE Removed Image_Saver
API CHANGE Removed Image->transferlegacycontent()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64376 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:38:05 +00:00
Ingo Schommer
62861b091b API CHANGE Removed DataObject->getLastWriteFields(), use DataObject->getChangedFields()
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64375 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 08:37:10 +00:00
Sean Harvey
050321cb3c MINOR Removed Group_Unsecure which was never used
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64369 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 05:43:57 +00:00
Sam Minnee
b91be01aa8 API CHANGE #551: Move code from CMSMain to SiteTree
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64351 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-16 03:21:58 +00:00
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
2d33fd160a BUGFIX Adjusted ForeignKey->scaffoldFormField() to new scaffolding notation ("ajaxSafe" instead of "ajax")
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64239 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-14 21:47:22 +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
Sam Minnee
57a84d5408 BUGFIX #2906 - Fixed manifest conflict in web-tests
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64153 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-13 21:34:38 +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
eb5cd150d8 BUGFIX YamlFixture->saveIntoDatabase(): In order to support reflexive relations which need a valid object ID, the record is written twice: first after populating all non-relational fields, then again after populating all relations (has_one, has_many, many_many). Fixes a bug where FileTest was testing onBeforeWrite() behaviour
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64005 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 15:14:03 +00:00
Ingo Schommer
320c30ba5d BUGFIX Writing record from yml before parsing relations in YamlFixture->saveIntoDatabase() to avoid missing lookups for reflexive relations on the same object
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64004 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 15:07:34 +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
Ingo Schommer
62e4870c7b API CHANGE Deprecated GhostPage
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63997 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 14:36:04 +00:00
Sam Minnee
866853f31a BUGFIX: Improved RedirectorPage's handling of invalid configuration options to prevent infinite loops and segfaults
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63939 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 01:46:17 +00:00
Josh Kosmala
3d4d4d0c42 BUGFIX: Fix broken breadcrumbs
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63920 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-09 00:28:36 +00:00
Sam Minnee
571e8d2b2c BUGFIX: Prevent misconfigured redirector pages from breaking static publishing
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63909 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 22:35:22 +00:00
Andrew O'Neil
bd1b9e4f73 BGFIX: #2527 - Fix mysql version detection on hosts with custom mysql version names (HakTom)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63904 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 22:05:56 +00:00
Andrew O'Neil
015385c526 MINOR: Add warning for deprecated function.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63898 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 21:33:43 +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
Sam Minnee
09cb773f5c BUGFIX: SiteTree::onAfterPublish() will still pass an object to the handlers on the first publish
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63823 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-08 03:36:38 +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