9 years agoMerge "[FEATURE] Add check for loaded DBAL to requirements check"
Marc Bastian Heinrichs [Sat, 9 Jul 2011 14:48:42 +0000 (16:48 +0200)]
Merge "[FEATURE] Add check for loaded DBAL to requirements check"

9 years ago[+BUGFIX] allow skipping of arguments in signal dispatch
Felix Oertel [Sat, 9 Jul 2011 13:00:50 +0000 (15:00 +0200)]
[+BUGFIX] allow skipping of arguments in signal dispatch

The SignalSlotDispatcher requires an array of arguments when dispatching a signal.
It should be perfectly fine to call it without.

Change-Id: Ifb8633ce9c62a545b2fabe6ed265e3749f5e8545

9 years ago[FEATURE] Add check for loaded DBAL to requirements check
Bastian Waidelich [Sat, 9 Jul 2011 13:16:47 +0000 (15:16 +0200)]
[FEATURE] Add check for loaded DBAL to requirements check

This adds a status report to ExtbaseRequirementsCheck that will
inform the user if the dbal Extension is installed.

Besides this slightly modifies the existing doc commend check
so it uses the new Bootstrap instead of the deprecated

Change-Id: I5fed623316b955853c7dabeca716ebc5be490952

9 years agoMerge "[+BUGFIX] ObjectStorage->toArray(): fix array pointer problem"
Claus Due [Fri, 1 Jul 2011 12:09:06 +0000 (14:09 +0200)]
Merge "[+BUGFIX] ObjectStorage->toArray(): fix array pointer problem"

9 years ago[TASK] Recreate ext_autoload.php
Bastian Waidelich [Thu, 30 Jun 2011 09:21:19 +0000 (11:21 +0200)]
[TASK] Recreate ext_autoload.php

Using the Extension Development Evaluator

Change-Id: Icb8ad8b2190dba8ea27a2bd36669d7bb71d2b4ee
Resolves: #27680

9 years ago[!!!][+FEATURE] (MVC): Modify MVC stack to use the new property mapper
Sebastian Kurfuerst [Tue, 21 Jun 2011 08:06:33 +0000 (10:06 +0200)]
[!!!][+FEATURE] (MVC): Modify MVC stack to use the new property mapper

* use Error_Result for validation errors and property mapping errors
* use new Property Mapper
* use new validation API
* removed @dontvalidate annotation, and replaced it by @ignorevalidation.

The new behavior is only exposed when the feature flag is enabled.
For testing this functionality, follow the instructions in the related issue.

This also brings the AbstractController and ActionController in sync with
FLOW3 again.

Resolves: #27656
Change-Id: I4c888f42eb6e366b2a939e129c6ae3b60eb03581

9 years ago[!!!][+FEATURE] (Validation): Adjusted and re-done Validation API
Sebastian Kurfuerst [Wed, 22 Jun 2011 14:56:51 +0000 (16:56 +0200)]
[!!!][+FEATURE] (Validation): Adjusted and re-done Validation API

* Completely reworked Validation API, adjusting all validators.
  Validators now return a Error_Result object.
* Validators can now be singletons or prototypes
* Validator options are passed in the constructor

The whole change is *backwards-compatible*, so all default validators can be
used with the new MVC stack in Extbase 1.4, and with the MVC stack in
compatibility mode.

The same goes for *custom validators* which extend *AbstractValidator*. They
are automatically upwards-compatible.

!!! If an extension author directly implemented the *ValidatorInterface*,
he needs to adjust his validator to support the new API.

Resolves: #27653
Change-Id: I6b3c9f4a629728f7e1fa2cd672f38f69c7321f52

9 years ago[+FEATURE] (Property): Add new property mapper
Sebastian Kurfuerst [Tue, 21 Jun 2011 07:20:44 +0000 (09:20 +0200)]
[+FEATURE] (Property): Add new property mapper

This changeset adds the new property mapper, alongside of the old one.
It is not used yet in the MVC framework.

Related: #27059
Change-Id: Ibc71a99a16f995ba608b1e1de61c7c9fcf4dc784

9 years ago[+FEATURE] (Persistence): Synchronize PersistenceManagerInterface more with FLOW3
Sebastian Kurfuerst [Wed, 22 Jun 2011 12:40:02 +0000 (14:40 +0200)]
[+FEATURE] (Persistence): Synchronize PersistenceManagerInterface more with FLOW3

* adds the methods getObjectByIdentifier and getIdentifierByObject directly to
  the Persistence Manager and interface, and marks it as public API.

Resolves: #27657
Change-Id: I14c4b5bad2d91d86801cb6ac873993f8e75a371b

9 years ago[+FEATURE] (Reflection): Object Access can now access private properties
Sebastian Kurfuerst [Wed, 22 Jun 2011 06:33:49 +0000 (08:33 +0200)]
[+FEATURE] (Reflection): Object Access can now access private properties

Resolves: #27652
Related: #27059
Change-Id: I93a31053f29e18791539033e262f32b41f21222e

9 years ago[+FEATURE] (Utility): synchronize TypeHandling class with FLOW3
Sebastian Kurfuerst [Tue, 21 Jun 2011 07:44:40 +0000 (09:44 +0200)]
[+FEATURE] (Utility): synchronize TypeHandling class with FLOW3

Also backports unit tests from FLOW3.

Resolves: #27651
Related: #27059
Change-Id: Ia76dfef73ad9833305a5493114cf99c99ce02157

9 years ago[!!!][FEATURE] Improve error and message handling
Sebastian Kurfuerst [Tue, 21 Jun 2011 07:17:14 +0000 (09:17 +0200)]
[!!!][FEATURE] Improve error and message handling

- Error\Result as base class for generic "Results" (used by validation
  and by Property Mapping)
- Error\Message as base class for a generic error message, with
  subclasses Error, Warning and Notice.

This is a backport of f25803698d14e994a8c6582c6d47299ded2ca567 from FLOW3.

Resolves: #27650
Related: #27059
Change-Id: I6882744fb0121f2faa7733b250bef88b34e550a9

9 years ago[TASK] (MVC, Property): Deprecation of the the old property mapper
Sebastian Kurfuerst [Tue, 21 Jun 2011 06:43:24 +0000 (08:43 +0200)]
[TASK] (MVC, Property): Deprecation of the the old property mapper

Related: #27059
Change-Id: I9d11777ee44194f05f9e5a70f761695298a5ad5f

9 years ago[+FEATURE] (Configuration): Feature flag implementation
Sebastian Kurfuerst [Thu, 30 Jun 2011 05:14:29 +0000 (07:14 +0200)]
[+FEATURE] (Configuration): Feature flag implementation

In order to provide new features and stay backwards-compatible at the same time,
the framework has to distinguish at some points between old code and new code
with breaking changes.
At these points, the feature flag should be used.

Note: This is right now only an INTERNAL API, not to be used by Extension
Developers yet. It is needed as a basis for the new Property Mapper and MVC
adjustments, but it this solution will be revised at the T3DD11.

Related: #27070
Related: #27059
Change-Id: I29d79efb359ae8e61a8e4c08cd04037296e33720

9 years ago[+BUGFIX] (Persistence): return correct objectCountByQuery when query
Marc Bastian Heinrichs [Sun, 6 Mar 2011 15:21:53 +0000 (16:21 +0100)]
[+BUGFIX] (Persistence): return correct objectCountByQuery when query
contains left join and no limit

When using DISTINCT with COUNT, the DISTINCT has to be inside the
COUNT otherwise the DISTINCT works only on the returned single number
of rows with doublets, what has no effect.

Fixes: #13075

Change-Id: Ie2359d593004e012ca71ac5769b8806b43596855

9 years agoMerge "[+BUGFIX] Cloning a ValueObject should not set its uid to NULL"
Stefan Neufeind [Sun, 26 Jun 2011 15:57:47 +0000 (17:57 +0200)]
Merge "[+BUGFIX] Cloning a ValueObject should not set its uid to NULL"

9 years ago[BUGFIX] Adapt cache configuration to 4.6
Christian Kuhn [Sun, 19 Jun 2011 11:40:35 +0000 (13:40 +0200)]
[BUGFIX] Adapt cache configuration to 4.6

Change-Id: Ifcc5f66cd61c32bf2bf219da21eea67939d3b77c
Resolves: #27546
Depends: #27506
Depends: #27536

9 years agoMerge "[BUGFIX] Fix case of setChildSortByFieldName in DataMapFactory"
Stefan Neufeind [Fri, 24 Jun 2011 01:16:11 +0000 (03:16 +0200)]
Merge "[BUGFIX] Fix case of setChildSortByFieldName in DataMapFactory"

9 years agoMerge "[+FEATURE] Extbase (MVC): Make response format configurable in TypoScript"
Stefan Neufeind [Fri, 24 Jun 2011 01:03:43 +0000 (03:03 +0200)]
Merge "[+FEATURE] Extbase (MVC): Make response format configurable in TypoScript"

9 years ago[+BUGFIX] (SignalSlot): Fix unit tests
Sebastian Kurfuerst [Thu, 23 Jun 2011 05:53:43 +0000 (07:53 +0200)]
[+BUGFIX] (SignalSlot): Fix unit tests

Resolves: #27550
Change-Id: Idddd477af6ff278473626455a963ebea925a4242

9 years ago[+BUGFIX] Make ObjectManager::isRegistered work
Sebastian Kurfuerst [Mon, 20 Jun 2011 08:56:40 +0000 (10:56 +0200)]
[+BUGFIX] Make ObjectManager::isRegistered work

This is a followup change to I7a31f93e9855bb1e36c5953e86c3aef7322f548f,
which introduced several unwanted behaviors, the main problem being that
isRegistered would not work for all objects being created implicitely through
dependency injection.

Furthermore, the change removes the @api annotations again, after discussing
that with Bastian, we do not see a benefit in providing that to the user right now.

Change-Id: Ibe4221c288daf9b10cc3f0decaa33bfccb5f9430

9 years ago[+FEATURE] backport SignalSlotDispatcher
Felix Oertel [Mon, 11 Apr 2011 23:20:26 +0000 (01:20 +0200)]
[+FEATURE] backport SignalSlotDispatcher

The SignalSlotDispatcher is a great way to have a centralized
EventHandler in Extbase. The SignalAspect was omitted as we don't
have AOP in Extbase. We have to dispatch all the Signals ourself.
Some exemplary Signals will be committed in another change.

The code of the SignalSlotDispatcher itself was backported

Change-Id: I7891ee06af495c73c6ec7883ee83fa4540d82350

9 years agoMerge "[+FEATURE] implement ObjectManager::isRegistered()"
Stefan Neufeind [Sun, 19 Jun 2011 14:21:58 +0000 (16:21 +0200)]
Merge "[+FEATURE] implement ObjectManager::isRegistered()"

9 years agoMerge "[+TASK] Extbase: Move static typoscript utility methods to a service"
Stefan Neufeind [Sun, 19 Jun 2011 14:10:52 +0000 (16:10 +0200)]
Merge "[+TASK] Extbase: Move static typoscript utility methods to a service"

9 years agoMerge "[+BUGFIX] Extbase (Validation): E-mail address with space at the end is invalid"
Stefan Neufeind [Sun, 19 Jun 2011 13:58:36 +0000 (15:58 +0200)]
Merge "[+BUGFIX] Extbase (Validation): E-mail address with space at the end is invalid"

9 years agoMerge "[+BUGFIX] Fix localization handling to support XLIFF"
Sebastian Kurfuerst [Sun, 19 Jun 2011 09:49:03 +0000 (11:49 +0200)]
Merge "[+BUGFIX] Fix localization handling to support XLIFF"

9 years agoMerge "[+BUGFIX] Throw exception if a class to be reflected does not exist"
Stefan Neufeind [Fri, 17 Jun 2011 10:42:01 +0000 (12:42 +0200)]
Merge "[+BUGFIX] Throw exception if a class to be reflected does not exist"

9 years ago[+BUGFIX] Fix localization handling to support XLIFF
Xavier Perseguers [Wed, 15 Jun 2011 04:52:50 +0000 (06:52 +0200)]
[+BUGFIX] Fix localization handling to support XLIFF

Localization handling changed in TYPO3 4.6 since XLIFF
translation files are used instead of locallang XML.
Direct access to the localization array needs to be
adjusted while keeping the compatibility with TYPO3 4.5.

Change-Id: I4fef5ca8702093bd789f3dbec291baada9ffc1a3
Resolves: #27411

9 years agoMerge "[TASK][!!!] Fix localization handling to support XLIFF"
Xavier Perseguers [Tue, 14 Jun 2011 18:39:00 +0000 (20:39 +0200)]
Merge "[TASK][!!!] Fix localization handling to support XLIFF"

9 years ago[+BUGFIX] Extbase (Validation): E-mail address with space at the end is invalid
Stefan Neufeind [Mon, 13 Jun 2011 20:35:38 +0000 (22:35 +0200)]
[+BUGFIX] Extbase (Validation): E-mail address with space at the end is invalid

Add regex-check for additional whitespaces at the end.

Thanks to Marc Bastian Heinrichs

Change-Id: I784c25d50cc3114e93a7d015d7dd5d538fb2315e
Resolves: #27305

9 years agoMerge "[TASK] Extbase (Validation): Clean up tests for FloatValidatorTest and Integer...
Bastian Waidelich [Tue, 14 Jun 2011 16:56:32 +0000 (18:56 +0200)]
Merge "[TASK] Extbase (Validation): Clean up tests for FloatValidatorTest and Integer ValidatorTest"

9 years agoMerge "[BUGFIX] Fix EmailAddressValidatorTest"
Bastian Waidelich [Tue, 14 Jun 2011 16:55:32 +0000 (18:55 +0200)]
Merge "[BUGFIX] Fix EmailAddressValidatorTest"

9 years agoMerge "[+BUGFIX] Extbase (Persistence): Use correct language-uid for translations"
Bastian Waidelich [Tue, 14 Jun 2011 16:42:48 +0000 (18:42 +0200)]
Merge "[+BUGFIX] Extbase (Persistence): Use correct language-uid for translations"

9 years ago[+BUGFIX] Throw exception if a class to be reflected does not exist
Stefan Neufeind [Sat, 11 Jun 2011 10:06:42 +0000 (12:06 +0200)]
[+BUGFIX] Throw exception if a class to be reflected does not exist

avoid fatal PHP-errors by throwing an exception.
Thanks to Felix Oertel.

Change-Id: Id2f864947650920b61cf98c53de751bf18bb90b8
Fixes: #8718

9 years agoRevert "[BUGFIX] Extbase does not restrict queries to use only properties",
Sebastian Kurfuerst [Tue, 14 Jun 2011 06:22:31 +0000 (08:22 +0200)]
Revert "[BUGFIX] Extbase does not restrict queries to use only properties",

as it breaks things.

Related: #8494

This reverts commit 0d34415882d31dfc2f1cb75f78d6cd96cb694286.

Change-Id: Ie086fe48f38903f11d977ffe03745338c36c3e04

9 years ago[TASK][!!!] Fix localization handling to support XLIFF
Xavier Perseguers [Tue, 14 Jun 2011 05:53:34 +0000 (07:53 +0200)]
[TASK][!!!] Fix localization handling to support XLIFF

Due to change in localization handling within Core, Extbase
must be updated to get strings when retrieving labels.

Change-Id: I5a52da13887e1dbd59790425e2bd5139f224e93a
Resolves: #27411

9 years ago[TASK] Extbase (Validation): Clean up tests for FloatValidatorTest and Integer Valida...
Stefan Neufeind [Sun, 12 Jun 2011 20:08:46 +0000 (22:08 +0200)]
[TASK] Extbase (Validation): Clean up tests for FloatValidatorTest and Integer ValidatorTest

Use data-providers and clean copy-n-paste errors from comments.

Change-Id: I26e5d5dce00a8cb3b683ca87d41638de67c426d5

9 years agoMerge "[BUGFIX] Extbase does not restrict queries to use only properties"
Jochen Rau [Sun, 12 Jun 2011 15:43:53 +0000 (17:43 +0200)]
Merge "[BUGFIX] Extbase does not restrict queries to use only properties"

9 years ago[+BUGFIX] Extbase (Persistence): Use correct language-uid for translations
Stefan Neufeind [Sat, 11 Jun 2011 23:31:38 +0000 (01:31 +0200)]
[+BUGFIX] Extbase (Persistence): Use correct language-uid for translations

Extbase uses $GLOBALS['TSFE']->sys_language_uid to fetch the correct
translation. This works for sys_language_mode "strict" but
sys_language_content would be the correct language-id to use in all

Thanks to Benjamin Mack.

Change-Id: I20bbb99f598aab3654668a7df2c23f856fd7c269
Resolves: #26521

9 years ago[BUGFIX] Fix EmailAddressValidatorTest
Lienhart Woitok [Sat, 11 Jun 2011 21:47:07 +0000 (23:47 +0200)]
[BUGFIX] Fix EmailAddressValidatorTest

The test for valid email addresses tried to iterate over a nonexistant array
of valid addresses instead of using the address passed by the data provider.
This fixes the test by testing with the value from the dataprovider.

Change-Id: If77015f7a0f811c678395a0b2113c90a3cd9d5f8

9 years ago[+FEATURE] Extbase (MVC): Make response format configurable in TypoScript
Stefan Neufeind [Sat, 11 Jun 2011 17:21:31 +0000 (19:21 +0200)]
[+FEATURE] Extbase (MVC): Make response format configurable in TypoScript

Allow configuring the response format via TypoScript, so it doesn't
necessarily need to be passed by URL. If a separate page is used
for a certain format/functionality this allows to configure the
desired format internally.

Thanks to Christian Zenker

Change-Id: Iec33afb8daae8074202cf1188ee0a32711ce7b18
Resolves: #9216

9 years ago[BUGFIX] Extbase does not restrict queries to use only properties
Stefan Neufeind [Sat, 11 Jun 2011 11:37:27 +0000 (13:37 +0200)]
[BUGFIX] Extbase does not restrict queries to use only properties

Check for restrictions and throw exceptions is needed.
Includes unittests.

Change-Id: I5886c402a08ad1e385092086a7755d61b567ec91
Resolves: #8494

9 years ago[BUGFIX] Docu, AbstractController: Clearer difference of forward/redirect
Stefan Neufeind [Fri, 10 Jun 2011 23:26:46 +0000 (01:26 +0200)]
[BUGFIX] Docu, AbstractController: Clearer difference of forward/redirect

Change-Id: Idc0c7b47cd39feab6f53a4275c752295b511d900
Resolves: #7900

9 years ago[BUGFIX] Fix case of setChildSortByFieldName in DataMapFactory
Stefan Neufeind [Fri, 10 Jun 2011 19:23:54 +0000 (21:23 +0200)]
[BUGFIX] Fix case of setChildSortByFieldName in DataMapFactory

Small case-fix in DataMapFactory

Change-Id: Ic438329d4dd2a7a3519bf77d5dd7022e8f4b3adb
Resolves: #27334

9 years agoMerge "[+BUGFIX] (Property) Fixed only adding objects to ObjectStorage"
Sebastian Kurfuerst [Thu, 9 Jun 2011 12:18:46 +0000 (14:18 +0200)]
Merge "[+BUGFIX] (Property) Fixed only adding objects to ObjectStorage"

9 years ago[+BUGFIX] (Property) Fixed only adding objects to ObjectStorage
Marc Bastian Heinrichs [Sun, 6 Mar 2011 18:06:53 +0000 (19:06 +0100)]
[+BUGFIX] (Property) Fixed only adding objects to ObjectStorage

The method transformToObject could return NULL, when value could not
be transformed. NULL should not be attached to ArrayObject or
ObjectStorage. Thanks to Thomas Maroschik.

Fixes: #13288

Change-Id: I3ac53571f831229d77ca6a228df4d91bb6cd5f77

9 years ago[+TASK] Extbase: Move static typoscript utility methods to a service
Bastian Waidelich [Tue, 7 Jun 2011 14:53:17 +0000 (16:53 +0200)]
[+TASK] Extbase: Move static typoscript utility methods to a service

Change-Id: Ifa6b40669f85083e3dd2ceddc2077a8ab784a1ef
Related: #13864

9 years ago[+TASK] Extbase: Move most of the static extension utility methods to a service
Bastian Waidelich [Tue, 22 Mar 2011 19:16:56 +0000 (20:16 +0100)]
[+TASK] Extbase: Move most of the static extension utility methods to a service

Change-Id: If7759c825126e1fbf78f034a7b9181348dbfee1a
Related: #13864

9 years ago[+BUGFIX] baseUri is added on external links
Sebastian Kurfuerst [Thu, 26 May 2011 17:13:31 +0000 (19:13 +0200)]
[+BUGFIX] baseUri is added on external links

On a redirect to an external URI via redirectToURI(),
the base URL is added by mistake.

Thanks to Michael Feinbier for this fix!

Change-Id: I641d5bd0de7ede81bf9ed6568290d554f9580138
Resolves: #10258

9 years ago[+BUGFIX] (Testing): Fix wrong doc comment in BaseTestCase
Sebastian Kurfuerst [Thu, 26 May 2011 16:36:41 +0000 (18:36 +0200)]
[+BUGFIX] (Testing): Fix wrong doc comment in BaseTestCase

Change-Id: I098d7328152213f36ee5e2d55bb92f981995823d
Resolves: #13695

9 years ago[+BUGFIX] Cloning a ValueObject should not set its uid to NULL
Xavier Perseguers [Wed, 18 May 2011 07:28:30 +0000 (09:28 +0200)]
[+BUGFIX] Cloning a ValueObject should not set its uid to NULL

After retrieving an entity referencing value objects, the returned
entity is "dirty" as _cleanProperties contains NULL as uid of the
corresponding value object. This dirty flag forces the persistence
layer to update the database and thus slows down the system with
unneeded queries. Furthermore, this causes unwanted cache clearing
if one has TCEMAIN.clearCacheCmd instructions.

Change-Id: I48ef6e84ee521e86df4d74666d65a062d473293b
Fixes: #26772

9 years ago[+BUGFIX] ObjectStorage->toArray(): fix array pointer problem
Claus Due [Mon, 16 May 2011 22:30:26 +0000 (00:30 +0200)]
[+BUGFIX] ObjectStorage->toArray(): fix array pointer problem

This changes direct iteration of $this->storage into
$storage = array_values($this->storage) then iteration, which
preserves the current array pointer while returning all array
values, not just the ones at and after the current array poitner.

Change-Id: I52c676b2660288d29d228044b92ada8ce6e3581b
Fixes: #9117

9 years ago[+BUGFIX] Persistence: Fixed building unionStatement from opposite
Marc Bastian Heinrichs [Sun, 20 Mar 2011 23:14:17 +0000 (00:14 +0100)]
[+BUGFIX] Persistence: Fixed building unionStatement from opposite

In function
the values "uid_local" and "uid_foreign" are hardcoded. For building
the query from the opposite side (MM_opposite_field is set), these
values have to be reversed. Thanks to Christian Zindel.

Fixes: #13782

Change-Id: I1230b9e8c567b7b038e3c9401af2e0178e566a81

9 years ago[+BUGFIX] Persistence: Update tstamp column on objects removal
Marc Bastian Heinrichs [Sun, 20 Mar 2011 18:54:51 +0000 (19:54 +0100)]
[+BUGFIX] Persistence: Update tstamp column on objects removal

When a object gets deleted from a repository, update the tstamp
column. Thanks to Michel Nederlof.

Fixes: #10634

Change-Id: I05eeb18b54ee54678e80bc5157041cceca4fdc6d

9 years ago[+BUGFIX] correct warning in ObjectStorage & LazyObjectStorage
Felix Oertel [Wed, 13 Apr 2011 13:06:32 +0000 (15:06 +0200)]
[+BUGFIX] correct warning in ObjectStorage & LazyObjectStorage

We got this little private warning, telling people to use
getFirst() instead of PHP's current() on objectStorages
but there is no getFirst(). Instead one can call rewind()
and current() on the ObjectStorage.

Change-Id: I1cdb392942ff800365b3dd87e703523cd3bac7b0

9 years agoMerge "[+TASK] improve exception message in Argument"
Sebastian Kurfuerst [Fri, 15 Apr 2011 06:16:22 +0000 (08:16 +0200)]
Merge "[+TASK] improve exception message in Argument"

9 years agoMerge "[+BUGFIX] Avoiding cHash for nonCacheable actions prevent action from being...
Bastian Waidelich [Wed, 13 Apr 2011 15:02:18 +0000 (17:02 +0200)]
Merge "[+BUGFIX] Avoiding cHash for nonCacheable actions prevent action from being called"

9 years ago[~CLEANUP] some smaller comment cleanups
Felix Oertel [Mon, 11 Apr 2011 21:43:13 +0000 (23:43 +0200)]
[~CLEANUP] some smaller comment cleanups

Change-Id: I915716879ef32bad2f43ede2c9621553c9a26b1e

9 years agoMerge "[~CLEANUP] apply naming convention for flexForms"
Felix Oertel [Tue, 12 Apr 2011 19:53:49 +0000 (21:53 +0200)]
Merge "[~CLEANUP] apply naming convention for flexForms"

9 years ago[+TASK] Extbase: Moved static cache utility class to a service
Bastian Waidelich [Fri, 18 Mar 2011 17:54:19 +0000 (18:54 +0100)]
[+TASK] Extbase: Moved static cache utility class to a service

Relates to: #13864

Change-Id: Ie5360a9e898d9173af7e5bcc567d98113f884421

9 years ago[+FEATURE] implement ObjectManager::isRegistered()
Felix Oertel [Mon, 11 Apr 2011 23:15:43 +0000 (01:15 +0200)]
[+FEATURE] implement ObjectManager::isRegistered()

The ObjectManager develops really fast these days. More Features
have to be back-ported. For now, especially for back-porting
the SignalSlotDispatcher, it's necessary to implement at least

This is a simple implementation as we don't use scopes and stuff
in Extbase yet.

No Unit-Tests yet as there are none in FLOW3. ;-)

Change-Id: I7a31f93e9855bb1e36c5953e86c3aef7322f548f

9 years ago[+TASK] improve exception message in Argument
Felix Oertel [Mon, 11 Apr 2011 10:13:30 +0000 (12:13 +0200)]
[+TASK] improve exception message in Argument

When mapping or trying to map objects, the propertyMapper
leaves error messages in the mappingResults for every mapping
that failed.

If the Argument fails to map one object required by the
controllerAction, it throws an exception but it does not
include the mapping errors. Thus it is hard to find the reason(s)
an object could not be mapped.

* add mapping errors to exception

Change-Id: Icfca5eab5c9b243900ab5f34efd002a938a6a39a

9 years agoMerge "[+BUGFIX] MVC: Make forwarding of objects work"
Sebastian Kurfuerst [Tue, 5 Apr 2011 06:32:21 +0000 (08:32 +0200)]
Merge "[+BUGFIX] MVC: Make forwarding of objects work"

9 years agoMerge "Performance tuning in container by moving some information into the cached...
Sebastian Kurfuerst [Tue, 5 Apr 2011 06:30:41 +0000 (08:30 +0200)]
Merge "Performance tuning in container by moving some information into the cached ClassInfo object."

9 years agoPerformance tuning in container by moving some information into the cached
Timo Schmidt [Mon, 21 Mar 2011 20:35:49 +0000 (21:35 +0100)]
Performance tuning in container by moving some information into the cached
ClassInfo object.

Change-Id: Iabd26579e774145cd39ee87edec3d3392e165ee5

9 years ago[~BUGFIX] avoid fe_user's type to be overridden
Felix Oertel [Wed, 30 Mar 2011 16:05:20 +0000 (18:05 +0200)]
[~BUGFIX] avoid fe_user's type to be overridden

Extbase's ext_tables.php overrides the fe_user's type in TCA ctrl-
section because of a wrong if-statement.

* Fix small mistake in if-condition

Change-Id: I61d47e9161b18fc05914bd93043f3d441fc8f033

9 years ago[+BUGFIX] Avoiding cHash for nonCacheable actions prevent action from being called
Bastian Waidelich [Tue, 22 Mar 2011 15:25:22 +0000 (16:25 +0100)]
[+BUGFIX] Avoiding cHash for nonCacheable actions prevent action from being called

With #8565 cHash is only appended for calls to cachable actions
This has the side effect, that calling non-cacheable actions
from a cached action on the same page fails to execute the
target action.
This fix reverts the changes from #8565 as we couldn't find
a better solution for now. See #13970 for details.

Change-Id: I0aebbca4a8df37ba7b7b5b63ceb0962990d814c7
Related: #13970

9 years agoMerge "[+BUGFIX] Persistence: return ObjectCount return value as an integer"
Sebastian Kurfuerst [Tue, 22 Mar 2011 07:46:08 +0000 (08:46 +0100)]
Merge "[+BUGFIX] Persistence: return ObjectCount return value as an integer"

9 years ago[+BUGFIX] MVC: Make forwarding of objects work
Marc Bastian Heinrichs [Mon, 21 Mar 2011 08:19:27 +0000 (09:19 +0100)]
[+BUGFIX] MVC: Make forwarding of objects work

When setValue() on Controller_Argument is used with an already mapped
object with the correct datatype, don't try to transform the value.

Fixes: #9687

Change-Id: I95310d85be36dc39bde815fddde042052033a3f4

9 years ago[~CLEANUP] correct function parameter types
Marc Bastian Heinrichs [Sun, 20 Mar 2011 22:45:15 +0000 (23:45 +0100)]
[~CLEANUP] correct function parameter types

Change-Id: I96c0a9ca6b5eddea312745bc1556a963ea7abf6c

9 years ago[+BUGFIX] Persistence: return ObjectCount return value as an integer
Marc Bastian Heinrichs [Sun, 20 Mar 2011 18:13:14 +0000 (19:13 +0100)]
[+BUGFIX] Persistence: return ObjectCount return value as an integer

As phpdoc states, the function getObjectCountByQuery should return an
integer and not just the number as string, which is the case when
returning the result of COUNT(*). Thanks to Georg Ringer.

Fixes: #13151

Change-Id: I40f0c675dea56949b154fbc1f29b32f25d2ca4cc

9 years agoMerge "[+FEATURE] Extbase: Enable Dependency Injection for Domain Models"
Bastian Waidelich [Mon, 14 Mar 2011 09:56:19 +0000 (10:56 +0100)]
Merge "[+FEATURE] Extbase: Enable Dependency Injection for Domain Models"

9 years ago[+BUGFIX] Revert incorrect deletion of Query::count() & Query::withUid()
Bastian Waidelich [Thu, 10 Mar 2011 10:33:33 +0000 (11:33 +0100)]
[+BUGFIX] Revert incorrect deletion of Query::count() & Query::withUid()

The methods Tx_Extbase_Persistence_Query::count() and
Tx_Extbase_Persistence_Query::withUid() are deprecated.
They have been removed in

But the deletion is incomplete and leads to a fatal error
We'll have to keep count() until version 1.5 according to the
TYPO3 release policy.

WithUid() is already deprecated since extbase 1.2 so it could
be removed with 1.4. But it has to be removed from the interface
and from all parts in the core that are still using it (currently two)

Relates: #13745

Change-Id: I390edfe3de1fe92a27723dcccdd6a6d098f5ac07

9 years ago[~CLEANUP] apply naming convention for flexForms
Felix Oertel [Wed, 9 Mar 2011 20:41:40 +0000 (21:41 +0100)]
[~CLEANUP] apply naming convention for flexForms

We agreed to write "flexForm" lowerCamelCased.

* change flexform to flexForm
* change Flexform to FlexForm

Change-Id: Ied2f298e345093106cc2d282544faf512ef91456

9 years agoMerge "[+TASK] Move FlexForm parsing to a dedicated Service"
Felix Oertel [Wed, 9 Mar 2011 20:11:40 +0000 (21:11 +0100)]
Merge "[+TASK] Move FlexForm parsing to a dedicated Service"

9 years ago[+TASK] Move FlexForm parsing to a dedicated Service
Felix Oertel [Mon, 14 Feb 2011 17:20:05 +0000 (18:20 +0100)]
[+TASK] Move FlexForm parsing to a dedicated Service

The protected FlexForm conversion methods in the FrontendConfigurationManager
are now moved to a Service class. This enables the re-use of this parsing methods
by other classes or 3rd party extensions

* move convertFlexFormContentToArray to Service class
* mark old methods deprecated
* implement unit test for FlexForm parsing

Thanks to Rens Admiraal.

Change-Id: I346e26f18d5ca5609eb69d6a869b61d746bdc9a0
Resolves: #13032

9 years agoMerge "[!!!][+BUGFIX] make backend-modules in web use new pagetree by default"
Felix Oertel [Wed, 9 Mar 2011 08:05:42 +0000 (09:05 +0100)]
Merge "[!!!][+BUGFIX] make backend-modules in web use new pagetree by default"

9 years ago[!!!][+BUGFIX] make backend-modules in web use new pagetree by default
Felix Oertel [Fri, 4 Mar 2011 09:36:01 +0000 (10:36 +0100)]
[!!!][+BUGFIX] make backend-modules in web use new pagetree by default

In TYPO3 4.5 the new pagetree was introduced. It's possible to use
this in an Extbase backend-module with the config option
'navigationComponentId' in Tx_Extbase_Utility_Extension::registerModule.

With introducing this as default config for modules in 'web', we make
all Extbase based backend-modules make use of the new pagetree.

Even though this is a breaking change, all backend-modules are asked
to use the new pagetree since TYPO3 4.5 anyway.

* make navigationComponentId=typo3-pagetree default config

Change-Id: I3f08134a58bf41c7940ac3050f6b4843988a30b4

9 years ago[~CLEANUP] smaller deprecated clean-ups
Felix Oertel [Thu, 3 Mar 2011 15:33:26 +0000 (16:33 +0100)]
[~CLEANUP] smaller deprecated clean-ups

As a backport Extbase is influenced by all the changes in FLOW. It's
important to keep both in sync and thus deprecate code which is not
in FLOW3 anymore or which has changed.

All deprecated annotations should now match the CGL and all removals
are terminated in the future.

* clean up deprecation annotation
* remove code which was deprecated long enough

Change-Id: Ic1b6217bc6c9100b6c48c5d30eca6068417265a8

9 years ago[+FEATURE] Extbase: Enable Dependency Injection for Domain Models
Bastian Waidelich [Tue, 8 Mar 2011 17:45:21 +0000 (18:45 +0100)]
[+FEATURE] Extbase: Enable Dependency Injection for Domain Models

In order to avoid the constructor to be called,
domain objects are created by using PHPs unserialize() function.
This has the side-effect, that we need to inject
dependencies "manually" for those.
This is accomplished by adding a helper function
getEmptyObject() to the Object Container.
Thanks to Pascal Jungblut for the patches!

Change-Id: I49edab54eb810abc894f3f59fe8c46cf4ddfa464
Fixes: #11311

9 years agoMerge "[+BUGFIX] (Persistence) Make Typo3QuerySettings exchangeable"
Bastian Waidelich [Mon, 7 Mar 2011 15:59:40 +0000 (16:59 +0100)]
Merge "[+BUGFIX] (Persistence) Make Typo3QuerySettings exchangeable"

9 years ago[+BUGFIX] (Persistence) Make Typo3QuerySettings exchangeable
Marc Bastian Heinrichs [Sun, 6 Mar 2011 15:59:07 +0000 (16:59 +0100)]
[+BUGFIX] (Persistence) Make Typo3QuerySettings exchangeable

Let objectManager create querySettings object by
Tx_Extbase_Persistence_QuerySettingsInterface in
Tx_Extbase_Persistence_QueryFactory and remove obsolete instanceof
check in Typo3DbBackend

Fixes: #13191

Change-Id: I5ba9dbafeb8baa13d028fdb4f15c7bc9c6dcbd91

9 years ago[+BUGFIX] (Persistence) clone setDefaultQuerySettings for new queries
Marc Bastian Heinrichs [Sun, 6 Mar 2011 15:25:47 +0000 (16:25 +0100)]
[+BUGFIX] (Persistence) clone setDefaultQuerySettings for new queries

If you set the default querySettings object for an repository the same
instance is used for any query-object created with createQuery
method. So any repository method modificating its (normaly) own
querySettings object will also modificate the defaultQuerySettings
object. Thanks to Benjamin Schulte

Fixes: #12702

Change-Id: I9c00e064dee4349735a52e1ae01c6b5d28774fe1

9 years agoMerge "[~BUGFIX] correct annotations of Tx_Extbase_Persistence_Mapper_DataMapper"
Bastian Waidelich [Mon, 7 Mar 2011 13:32:46 +0000 (14:32 +0100)]
Merge "[~BUGFIX] correct annotations of Tx_Extbase_Persistence_Mapper_DataMapper"

9 years agoMerge "[~TASK] (FlashMessages) finish the renaming of flashMessages"
Bastian Waidelich [Mon, 7 Mar 2011 13:26:22 +0000 (14:26 +0100)]
Merge "[~TASK] (FlashMessages) finish the renaming of flashMessages"

9 years ago[~BUGFIX] correct annotations of Tx_Extbase_Persistence_Mapper_DataMapper
Felix Oertel [Mon, 21 Feb 2011 20:37:22 +0000 (21:37 +0100)]
[~BUGFIX] correct annotations of Tx_Extbase_Persistence_Mapper_DataMapper

In several places the DataMapper is still annotated with it's old
classname Tx_Extbase_Persistence_DataMapper.

* replace remaining old annotations with new classname

Fixes: #13185

(Thanks to Simon Schaufelberger for the initial patch.)

Change-Id: I07cbd05be909e6d591ee1697b325b79a02a76d57

9 years ago[~TASK] (FlashMessages) finish the renaming of flashMessages
Felix Oertel [Thu, 3 Mar 2011 12:52:25 +0000 (13:52 +0100)]
[~TASK] (FlashMessages) finish the renaming of flashMessages

Membervariables holding Tx_Extbase_MVC_Controller_FlashMessages were
renamed from $flashMessage to $flashMessageContainer some time ago.
Not all declarations and getter, setter and injectors were tagged
deprecated back then.

* rename left over member variables
* tag all corresponding methods deprecated
* add call to t3lib_div::logDeprecatedFunction()
* make sure the new flashMessageContainer is used everywhere

Change-Id: Iac19c5aabed7d225362cf0a9cfa3740f37f2b3b8

9 years ago[+BUGFIX] (Configuration): Adjusted Interface to implementation
Sebastian Kurfuerst [Wed, 16 Feb 2011 06:20:41 +0000 (07:20 +0100)]
[+BUGFIX] (Configuration): Adjusted Interface to implementation

The ConfigurationManagerInterface and the ConfigurationManager
had a different API, but of course they should be the same.

Change-Id: Ifff624dfc9cb4d29482e10edae805a517b8e11b1

9 years ago[~TASK] Extbase: Raising version from 1.3.0 to 1.4.0-devel
Bastian Waidelich [Tue, 15 Feb 2011 15:43:04 +0000 (16:43 +0100)]
[~TASK] Extbase: Raising version from 1.3.0 to 1.4.0-devel

Change-Id: Ia92aa5568cced5acbcec671d7d278d4c9717446f

9 years ago[+TASK] Extbase (MVC): Removed duplicated code from RequestBuilder. Thanks to Peter...
Jochen Rau [Thu, 27 Jan 2011 15:47:33 +0000 (10:47 -0500)]
[+TASK] Extbase (MVC): Removed duplicated code from RequestBuilder. Thanks to Peter Niederlag.

Resolves #12569.

Change-Id: I4bc732dfa20ffde40d96012c6534de11bad6ec5f

9 years ago* Raising Version number to 1.3.0.
Sebastian Kurfürst [Wed, 26 Jan 2011 08:19:54 +0000 (08:19 +0000)]
* Raising Version number to 1.3.0.

9 years ago[+BUGFIX] Extbase (Tests): reset added t3lib_div instances in UriBuilder & Extension...
Bastian Waidelich [Tue, 25 Jan 2011 19:38:28 +0000 (19:38 +0000)]
[+BUGFIX] Extbase (Tests): reset added t3lib_div instances in UriBuilder & Extension tests

9 years ago[+BUGFIX] Extbase (Persistence): Fixed updating of related objects. Thanks to Björn...
Jochen Rau [Tue, 25 Jan 2011 18:48:24 +0000 (18:48 +0000)]
[+BUGFIX] Extbase (Persistence): Fixed updating of related objects. Thanks to Björn Steinbrück and Bastian Waidelich for digging into this issue. Resolves #9270, #9182, #10211.

This is the second attempt after having reverted the first one in r3920. The patch includes some clean-up. Important additional changes:
* The objects within an ObjectStorage are now added to the queue. This is necessary to persist changes made to those contained objects without having changed the composition of objects.
* Moved the _memorizeCleanState() from the AbstractEntity to the AbstractDomainObject. In theory ValueObjects are immutable, but we need this as sometimes ValueObjects are stored in two steps (1. to get a UID, 2. to persist its properties). Maybe we have to recheck this for 1.4.
* Fixed some possible problems with detecting an ObjectStorage (namely SplObjectStorage->getUid()).

9 years ago[+TASK] Extbase (Persistence): Added two properties to describe a weird PHP behavior...
Jochen Rau [Tue, 25 Jan 2011 18:48:14 +0000 (18:48 +0000)]
[+TASK] Extbase (Persistence): Added two properties to describe a weird PHP behavior if calling current() on an ObjectStorage.

9 years ago[+BUGFIX] Extbase (MVC): Fixed argument order of Tx_Extbase_Utility_Extension::isActi...
Bastian Waidelich [Tue, 25 Jan 2011 17:49:33 +0000 (17:49 +0000)]
[+BUGFIX] Extbase (MVC): Fixed argument order of Tx_Extbase_Utility_Extension::isActionCacheable() call in UriBuilder

9 years ago[+TASK] Extbase (DomainObject): Added setPid() and getPid() to the DomainObjectInterf...
Jochen Rau [Tue, 25 Jan 2011 05:08:50 +0000 (05:08 +0000)]
[+TASK] Extbase (DomainObject): Added setPid() and getPid() to the DomainObjectInterface and removed the "final" keyword.

Related to #11361.

9 years ago[~TASK] Extbase: Moved isActionCacheable() from UriBuilder to Utility/Extension helpe...
Bastian Waidelich [Mon, 24 Jan 2011 16:44:45 +0000 (16:44 +0000)]
[~TASK] Extbase: Moved isActionCacheable() from UriBuilder to Utility/Extension helper class

Moved the protected method to a public static functions in Tx_Extbase_Utility_Extension
and added respective unit tests.
Note: We're not happy with all the public static functions in Utility/Extension.php
but that's currently the place for those helper functions.

9 years ago[+TASK] Extbase (Utility): implemented validation of arguments passed to sql statemen...
Felix Oertel [Mon, 24 Jan 2011 08:16:33 +0000 (08:16 +0000)]
[+TASK] Extbase (Utility): implemented validation of arguments passed to sql statements in Tx_Extbase_Utility_Cache. (resolves #11978)

9 years ago* Updated ChangeLog and raised version number to 1.3.0RC1
Sebastian Kurfürst [Fri, 21 Jan 2011 13:42:25 +0000 (13:42 +0000)]
* Updated ChangeLog and raised version number to 1.3.0RC1

9 years ago[-TASK] Extbase (Persistence): Reverting commit r3883 and r3852.
Jochen Rau [Fri, 21 Jan 2011 13:03:07 +0000 (13:03 +0000)]
[-TASK] Extbase (Persistence): Reverting commit r3883 and r3852.

Related to #9270.