Packages/TYPO3.CMS.git
8 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

8 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"

8 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

8 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

8 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"

8 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"

8 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

8 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

8 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

8 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

8 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

8 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.

8 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

8 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()).

8 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.

8 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

8 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.

8 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.

8 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)

8 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

8 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.

8 years ago[+BUGFIX] Extbase (Object): constructor injection fails if default value for a depend...
Sebastian Kurfürst [Fri, 21 Jan 2011 13:01:39 +0000 (13:01 +0000)]
[+BUGFIX] Extbase (Object): constructor injection fails if default value for a dependency is NULL

In Container class the existence of a default value was checked with
isset($argumentInformation['defaultValue']) which returns false if
$argumentInformation['defaultValue'] === NULL.

This commit fixes this issue using array_key_exists() instead and adds a unit test.

Thanks to Lienhart Woitok for the patch!

Resolves: #11623

8 years ago[BUGFIX] Extbase (Object): Allow injection of prototypes via dependency injection
Sebastian Kurfürst [Fri, 21 Jan 2011 12:34:03 +0000 (12:34 +0000)]
[BUGFIX] Extbase (Object): Allow injection of prototypes via dependency injection

This change allows Injection of Prototypes into singletons
and prototypes. Now, all four cases are supported:

* Singletons which need Singletons (most common)
* Singletons which need Prototypes (very uncommon,
  as it usually hints at the fact that the injected
  prototype should be a singleton). In this case,
  WE WRITE A DEVLOG MESSAGE
* Prototypes which need Singletons
* Prototypes which need Prototypes

All cases above are covered with unit tests, both
when using setter injection and when using constructor
injection.

Additionally, I greatly improved the unit tests, and added
working cycle detection in case of prototype objects
depending on each other.

Resolves: #12013

8 years ago[+BUGFIX] Extbase (Persistence): Use sql_free_result() in Typo3DbBackend to free...
Marc Bastian Heinrichs [Fri, 21 Jan 2011 11:46:07 +0000 (11:46 +0000)]
[+BUGFIX] Extbase (Persistence): Use sql_free_result() in Typo3DbBackend to free result memory. Resolves #10957

8 years ago[~BUGFIX] Extbase (Persistence): fixed an wrong referenced exception (resolves #12403)
Felix Oertel [Fri, 21 Jan 2011 11:41:24 +0000 (11:41 +0000)]
[~BUGFIX] Extbase (Persistence): fixed an wrong referenced exception (resolves #12403)

8 years ago[~BUGFIX] Extbase (Persistence): make Tx_Extbase_Persistence_Repository::remove(...
Felix Oertel [Fri, 21 Jan 2011 11:28:44 +0000 (11:28 +0000)]
[~BUGFIX] Extbase (Persistence): make Tx_Extbase_Persistence_Repository::remove() handle freshly created objects right. (resolves #11128)

8 years ago[~FOLLOWUP] Extbase (Utility): allow clearPageCache() to clear single, multiple and...
Felix Oertel [Fri, 21 Jan 2011 09:42:47 +0000 (09:42 +0000)]
[~FOLLOWUP] Extbase (Utility): allow clearPageCache() to clear single, multiple and all pageCaches. (resolves 11978)

8 years ago[+BUGFIX] Extbase (MVC): UriBuilder automatically added a cHash even on links to...
Franz Koch [Thu, 20 Jan 2011 22:17:40 +0000 (22:17 +0000)]
[+BUGFIX] Extbase (MVC): UriBuilder automatically added a cHash even on links to nonCacheable actions where this is not needed/recommended (resolves #8565)

8 years ago[~BUGFIX] Extbase (Persistence): made union statement on comma seperated list use...
Felix Oertel [Thu, 20 Jan 2011 21:37:36 +0000 (21:37 +0000)]
[~BUGFIX] Extbase (Persistence): made union statement on comma seperated list use find_in_set (Thanks to Marc Bastian Heinrichs) (resolves #9772)

8 years ago[+TASK] Extbase (Utility): allow clearPageCache() to clear single, multiple and all...
Felix Oertel [Thu, 20 Jan 2011 21:11:50 +0000 (21:11 +0000)]
[+TASK] Extbase (Utility): allow clearPageCache() to clear single, multiple and all pageCaches.

8 years ago[+BUGFIX] Extbase (MVC): Improve Error Handling in Request Builder
Sebastian Kurfürst [Thu, 20 Jan 2011 06:17:23 +0000 (06:17 +0000)]
[+BUGFIX] Extbase (MVC): Improve Error Handling in Request Builder

In the RequestBuilder, there is no error-handling which you get,
in case you've forgotten to configure the controllerActions in ext_localconf.php.

This patch adds some exceptions - you can't go without this config and things will break lateron anyway.

Thanks to Felix Oertel for the Patch!

Resolves: #11302

8 years ago[+TASK] Extbase (DomainObject): Added unit test to check circular dependencies.
Jochen Rau [Wed, 19 Jan 2011 21:52:44 +0000 (21:52 +0000)]
[+TASK] Extbase (DomainObject): Added unit test to check circular dependencies.

Related to #9270.

8 years ago[+BUGFIX] Extbase (Persistence): remove superfluous require_once statements
Sebastian Kurfürst [Wed, 19 Jan 2011 07:46:26 +0000 (07:46 +0000)]
[+BUGFIX] Extbase (Persistence): remove superfluous require_once statements

There are some require_once of classes that already are covered by the
Core autoloaded. This is unnecessary and also a negatively affects
performance (because require_once is rather slow). That's why these
require_once statements are dropped.

Thanks to Oliver Klee for the patch!

Resolves: #12324

8 years ago[+BUGFIX] Extbase (Tests): Remove require_once of phpunit testclasses
Sebastian Kurfürst [Wed, 19 Jan 2011 07:42:38 +0000 (07:42 +0000)]
[+BUGFIX] Extbase (Tests): Remove require_once of phpunit testclasses

The phpunit extension already automatically includes the base test
classes. So the extbase base test classes do not need the require.

Thanks to Oliver Klee for the patch!

Resolves: #12323

8 years ago[+BUGFIX] Extbase (Utility): Make _LOCAL_LANG override work with dots
Sebastian Kurfürst [Tue, 18 Jan 2011 18:00:19 +0000 (18:00 +0000)]
[+BUGFIX] Extbase (Utility): Make _LOCAL_LANG override work with dots

When dealing with Locallang files, it is a common approach to
write locallang keys with dots, as example tx_foo.bar.
You can overwrite these keys easily by Typoscript _LOCAL_LANG,
and with this patch this also works with keys containing dots.

Thanks to Thomas Maroschik for the initial implementation!

Resolves: #12121

8 years ago[+BUGFIX] Extbase (Persistence): Fixed using the correct columnname for contains...
Marc Bastian Heinrichs [Tue, 18 Jan 2011 15:38:19 +0000 (15:38 +0000)]
[+BUGFIX] Extbase (Persistence): Fixed using the correct columnname for contains comparison with RELATION_HAS_MANY and empty parentKeyFieldName. Resolves #11048

8 years ago[+BUGFIX] extbase (Persistence): Added the missing pid property to the AbstractDomain...
Jochen Rau [Tue, 18 Jan 2011 14:52:18 +0000 (14:52 +0000)]
[+BUGFIX] extbase (Persistence): Added the missing pid property to the AbstractDomainModel.

* The pid property is a "special" property as the uid property.
* If your table does not contain a pid field, the property value will be NULL.
* There are now getPid() and setPid() methods available in the AbstractDomainObject.
* The support for workspaces ist still missing. You can't move objects from one page top another within a workspace view.

Related to #11361.

8 years ago[+BUGFIX] Extbase (Persistence): Language Oberlay now works with page table as well...
Jochen Rau [Tue, 18 Jan 2011 13:49:36 +0000 (13:49 +0000)]
[+BUGFIX] Extbase (Persistence): Language Oberlay now works with page table as well. Thanks to Andre Stoesel.

Resolves #11319.

8 years ago[+BUGFIX] Extbase (Reflection): Follow-up to r3854.
Jochen Rau [Tue, 18 Jan 2011 13:44:06 +0000 (13:44 +0000)]
[+BUGFIX] Extbase (Reflection): Follow-up to r3854.

Related to #10148.

8 years ago[+BUGFIX] Extbase (Persistence): The QueryObject gets cloned now in the getFirst...
Jochen Rau [Tue, 18 Jan 2011 11:34:28 +0000 (11:34 +0000)]
[+BUGFIX] Extbase (Persistence): The QueryObject gets cloned now in the getFirst() method of the QueryResult (as it was intended). Thanks to Sebastian Fischer. Resolves #11855.

8 years ago[+BUGFIX] Extbase (Bootstrap): Bootstrap calls initialize on reflectionService if...
Marc Bastian Heinrichs [Tue, 18 Jan 2011 10:44:41 +0000 (10:44 +0000)]
[+BUGFIX] Extbase (Bootstrap): Bootstrap calls initialize on reflectionService if it's already initialized. Resolves #12346, resolves #12156

8 years ago[+BUGFIX] Extbase (Persistence): Fix equals constraint with $caseSensitive FALSE...
Marc Bastian Heinrichs [Tue, 18 Jan 2011 10:39:51 +0000 (10:39 +0000)]
[+BUGFIX] Extbase (Persistence): Fix equals constraint with $caseSensitive FALSE (closing bracket missing). Thanks to Alexander Berl. Resolves #10781

8 years ago[+BUGFIX] Extbase (Reflection): ObjectAccess::isPropertyGettable works for ArrayAcces...
Sebastian Kurfürst [Tue, 18 Jan 2011 05:38:39 +0000 (05:38 +0000)]
[+BUGFIX] Extbase (Reflection): ObjectAccess::isPropertyGettable works for ArrayAccess objects

ObjectAccess::isPropertyGettable now returns TRUE if the object
implements ArrayAccess and has the specified property. This makes
getPropertyPath work correctly on ArrayAccess objects.

Resolves: #10148

8 years ago[+BUGFIX] Extbase [Persistence]: Fixed updating of 1:n related childs. Resolves ...
Jochen Rau [Tue, 18 Jan 2011 01:59:08 +0000 (01:59 +0000)]
[+BUGFIX] Extbase [Persistence]: Fixed updating of 1:n related childs. Resolves #9270, #9182, #10211.

Merge commit '3e5bbbba16521d06e49ad983ca52a7a9549eba91'

8 years ago[+FEATURE] Extbase (Configuration): Allow StoragePid to be manually defined by TS
Sebastian Kurfürst [Thu, 13 Jan 2011 19:25:21 +0000 (19:25 +0000)]
[+FEATURE] Extbase (Configuration): Allow StoragePid to be manually defined by TS

In certain cases, it is helpful to allow the storage PID
to be defined by TypoScript, so one could use stdWrap for example.
With this patch, this is possible.

Even better would be a more general solution, allowing processing
of arbitrary TS configuration with typoScript; but that's at the
moment not possible.

Credits go to Rens Admiraal for providing the patch!

Resolves: #8397

8 years ago[+BUGFIX] Extbase (Configuration): Fix warning in AbstractConfigurationManager
Sebastian Kurfürst [Thu, 13 Jan 2011 05:40:51 +0000 (05:40 +0000)]
[+BUGFIX] Extbase (Configuration): Fix warning in AbstractConfigurationManager

If there are no non cacheable actions defined for a controller, the AbstractConfigurationManager throws a warning when overriding switchable controller actions: array_intersect(): Argument 1 is not an array.

This change fixes the issue.
Resolves: #11631

8 years ago[+BUGFIX] Extbase (Object): Disabling Dependency Injection for injectSettings method
Sebastian Kurfürst [Thu, 13 Jan 2011 05:33:01 +0000 (05:33 +0000)]
[+BUGFIX] Extbase (Object): Disabling Dependency Injection for injectSettings method

Tx_Extbase_MVC_Controller_ActionController->resolveView() checks for the existence of
an injectSettings() method in a view class and calls it if found, passing on the
settings.
As Tx_Extbase_Object_Container_ClassInfoFactory->getInjectMethods() though
classifies that method as a method for dependency injection which of course fails
leading to an exception "Method is marked as setter for Dependency Injection, but
doesnt have a type annotation".

Bugfix: Make the DI container skip methods with the name
injectSettings(). This has the benefit of making sure nobody
will use that function for injections lateron, making upgrade to
FLOW3 more easy.

Resolves: #11011

8 years ago* Updating ChangeLog for 1.3.0beta4
Sebastian Kurfürst [Wed, 12 Jan 2011 15:46:12 +0000 (15:46 +0000)]
* Updating ChangeLog for 1.3.0beta4

8 years ago[+TASK] Extbase (Tests): Fixed a repository unit test so that it works in CLI mode
Bastian Waidelich [Wed, 12 Jan 2011 15:32:19 +0000 (15:32 +0000)]
[+TASK] Extbase (Tests): Fixed a repository unit test so that it works in CLI mode

8 years ago[+TASK] Extbase (Tests): Fixed Extbase unit tests
Bastian Waidelich [Wed, 12 Jan 2011 15:27:48 +0000 (15:27 +0000)]
[+TASK] Extbase (Tests): Fixed Extbase unit tests

Additionally some code cleanups and minor tweaks

This resolves: #10792

8 years ago[+BUGFIX] Extbase (Persistence): Hidden Records in Workspaces now work
Sebastian Kurfürst [Wed, 12 Jan 2011 05:02:08 +0000 (05:02 +0000)]
[+BUGFIX] Extbase (Persistence): Hidden Records in Workspaces now work

Before, if t3lib_pageSelect::getRecordOverlay returned FALSE (if
no translation is found), a fatal error occured:
PHP Catchable Fatal Error: Argument 2 passed to Tx_Extbase_Persistence_Mapper_DataMapper::getTargetType()
must be an array, boolean given, called in Persistence/Mapper/DataMapper.php

The patch fixes the issue.

Thanks to Michael Voehringer for the bugfix!

Resolves: #8679

8 years ago[~TASK] Extbase: Fixed line endings (Windows to Unix).
Jochen Rau [Tue, 4 Jan 2011 18:18:05 +0000 (18:18 +0000)]
[~TASK] Extbase: Fixed line endings (Windows to Unix).

8 years ago[~TASK] Fluid (Tests): Fixed some more testcase class names and some unit tests
Bastian Waidelich [Thu, 30 Dec 2010 23:50:39 +0000 (23:50 +0000)]
[~TASK] Fluid (Tests): Fixed some more testcase class names and some unit tests

Relates to #10792

8 years ago[+FEATURE] Extbase (Utility): Add support for custom specify custom plugin icon
Bastian Waidelich [Thu, 30 Dec 2010 14:06:28 +0000 (14:06 +0000)]
[+FEATURE] Extbase (Utility): Add support for custom specify custom plugin icon

Tx_Extbase_Utility_Extension::registerPlugin() now has a fourth parameter $pluginIconPathAndFilename
that you can set to the path of an icon, that will be displayed in the plugin dropdown in the backend.
You can use it like:
Tx_Extbase_Utility_Extension::registerPlugin(
$_EXTKEY,
'MyPlugin',
'My Plugin description',
t3lib_extMgm::extRelPath($_EXTKEY) . 'Resources/Public/Icons/someIcon.gif'
);

Thanks to Steffen Müller for the initial patches!

Resolves #11179

8 years ago* Raised Version Number to 1.3.0beta3.
Sebastian Kurfürst [Mon, 27 Dec 2010 07:38:16 +0000 (07:38 +0000)]
* Raised Version Number to 1.3.0beta3.

8 years ago[+BUGFIX] Extbase (Tests): Fixed Tx_Extbase_MVC_Controller_AbstractController_testcas...
Jochen Rau [Fri, 24 Dec 2010 14:51:42 +0000 (14:51 +0000)]
[+BUGFIX] Extbase (Tests): Fixed Tx_Extbase_MVC_Controller_AbstractController_testcase. Thanks to Oliver Klee. Resolves #11567.

8 years ago[BUGFIX] Extbase (Configuration): Make Extbase work again in Backend
Sebastian Kurfürst [Tue, 21 Dec 2010 10:48:06 +0000 (10:48 +0000)]
[BUGFIX] Extbase (Configuration): Make Extbase work again in Backend

In case the extbase configuration could not be loaded,
we add it explicitely so that it works in all circumstances.

8 years ago[TASK] Extbase (Bootstrap): Removed superfluous exception
Sebastian Kurfürst [Tue, 21 Dec 2010 09:34:41 +0000 (09:34 +0000)]
[TASK] Extbase (Bootstrap): Removed superfluous exception

8 years ago[TASK] Extbase (Object): Adjust doc comments
Sebastian Kurfürst [Mon, 20 Dec 2010 17:02:12 +0000 (17:02 +0000)]
[TASK] Extbase (Object): Adjust doc comments

still adding some documentation for the object container.

8 years ago[!!!][+TASK] Extbase (Object): Rewritten Object Container
Sebastian Kurfürst [Mon, 20 Dec 2010 16:56:37 +0000 (16:56 +0000)]
[!!!][+TASK] Extbase (Object): Rewritten Object Container

I have re-written the core of the Object Manager,
implementing proper dependency injection now, covered
by some unit tests (which could still be improved)...

Now, the object lifecycle method ("initializeObject")
is automatically called once an object has all of its
dependencies injected.

Additionally, Extbase (again) works in the backend
with an empty page tree.

Please thoroughly test this change!

8 years ago[+BUGFIX] Extbase (MVC): Improve Exception message
Sebastian Kurfürst [Mon, 20 Dec 2010 16:56:28 +0000 (16:56 +0000)]
[+BUGFIX] Extbase (MVC): Improve Exception message

If one misses the @dontvalidate annotation, he will
get a strange error which does not have a hint that
the @dontvalidate is missing. Now, the exception message
is extended.

8 years ago[+API] Extbase (Configuration): Adding getContentObject to API
Sebastian Kurfürst [Mon, 20 Dec 2010 16:56:23 +0000 (16:56 +0000)]
[+API] Extbase (Configuration): Adding getContentObject to API

8 years ago[+TASK] Extbase (Reflection): Added deprecation annotation to ObjectAccess::getAccess...
Bastian Waidelich [Thu, 2 Dec 2010 19:00:00 +0000 (19:00 +0000)]
[+TASK] Extbase (Reflection): Added deprecation annotation to ObjectAccess::getAccessiblePropertyNames()

To stay in sync with FLOW3, the methods getAccessibleProperties() and getAccessiblePropertyNames() to
getGettableProperties() and getGettablePropertyNames().
For compatibility reasons the old methods will stay in Extbase until version 1.5.
Note: you can now check wheter properties are settable as well

Relates to: #8534

8 years ago[+BUGFIX] Extbase (Reflection): Added PropertyNotAccessibleException that I forgot...
Bastian Waidelich [Thu, 2 Dec 2010 18:55:35 +0000 (18:55 +0000)]
[+BUGFIX] Extbase (Reflection): Added PropertyNotAccessibleException that I forgot to add in previous commit

Relates to: #8534

8 years ago[+FEATURE] Extbase (Reflection): Tx_Extbase_Reflection_ObjectAccess supports stdClass...
Bastian Waidelich [Thu, 2 Dec 2010 17:44:06 +0000 (17:44 +0000)]
[+FEATURE] Extbase (Reflection): Tx_Extbase_Reflection_ObjectAccess supports stdClass objects now

I've backported the ObjectAccess class and its unit tests from FLOW3.
Note: FLOW3's implementation allows to specify a third argument for the
method getPropertyPath() in order to support Closures.
This part is not backported as it's not compatible with PHP < 5.3.

8 years ago* Raising version to Extbase 1.3beta2a
Sebastian Kurfürst [Wed, 1 Dec 2010 12:47:57 +0000 (12:47 +0000)]
* Raising version to Extbase 1.3beta2a

8 years ago[+BUGFIX] Extbase (ConfigurationManager): FollowUp for #6067. Fixes a issue with...
Franz Koch [Wed, 1 Dec 2010 12:45:48 +0000 (12:45 +0000)]
[+BUGFIX] Extbase (ConfigurationManager): FollowUp for #6067. Fixes a issue with parsing flexform rootlevel keys not having child keys I recently came across

8 years ago[+BUGFIX] Extbase (Configuration): change the order of methods to determine the curre...
Franz Koch [Wed, 1 Dec 2010 12:35:09 +0000 (12:35 +0000)]
[+BUGFIX] Extbase (Configuration): change the order of methods to determine the current pageId for backend modules, which is used to fetch the TS framework configuration. Fixes #11205

8 years ago[+TASK] Extbase (Object): Make sure the class info cache is returning valid objects
Franz Koch [Wed, 1 Dec 2010 12:30:08 +0000 (12:30 +0000)]
[+TASK] Extbase (Object): Make sure the class info cache is returning valid objects

8 years ago* Raised version number to 1.3.0beta2
Sebastian Kurfürst [Wed, 1 Dec 2010 07:09:08 +0000 (07:09 +0000)]
* Raised version number to 1.3.0beta2
* Updated ChangeLog

8 years ago[+BUGFIX] Extbase (Persistence): Persistence_Backend::getIdentifierByObject should...
Sebastian Kurfürst [Wed, 1 Dec 2010 07:08:57 +0000 (07:08 +0000)]
[+BUGFIX] Extbase (Persistence): Persistence_Backend::getIdentifierByObject should work with LazyLoadingProxy

getIdentifierByObject should check if object is an instance of Tx_Extbase_Persistence_LazyLoadingProxy and should return the
identifier of the real object.

Resolves: #11194

8 years ago[+BUGFIX] Extbase (Configuration): slightly tweaked FrontendConfigurationManager...
Bastian Waidelich [Tue, 30 Nov 2010 15:37:12 +0000 (15:37 +0000)]
[+BUGFIX] Extbase (Configuration): slightly tweaked FrontendConfigurationManager (basically replaced explode() by t3lib_div::trimExplode() call)
[+TASK] Extbase (Tests): Added some unit tests for Backend- and FrontendConfigurationManager. To be continued

8 years ago[+BUGFIX] Extbase (DomainObject): added default __toString method to Tx_Extbase_Domai...
Marc Bastian Heinrichs [Tue, 30 Nov 2010 13:30:21 +0000 (13:30 +0000)]
[+BUGFIX] Extbase (DomainObject): added default __toString method to Tx_Extbase_DomainObject_AbstractDomainObject. Thanks to Marco Huber. Resolves #8083

8 years ago[+BUGFIX] Extbase (MVC): Fixed UriBuilder for handling LazyLoadingProxy objects as...
Marc Bastian Heinrichs [Tue, 30 Nov 2010 12:09:44 +0000 (12:09 +0000)]
[+BUGFIX] Extbase (MVC): Fixed UriBuilder for handling LazyLoadingProxy objects as arguments. Resolves #10705

8 years ago[+TASK] Extbase (Object): re-added Tx_Extbase_Object_Manager to gain more backwards...
Bastian Waidelich [Tue, 30 Nov 2010 12:06:03 +0000 (12:06 +0000)]
[+TASK] Extbase (Object): re-added Tx_Extbase_Object_Manager to gain more backwards compatibility. This class is marked deprecated and will be removed in Extbase 1.5

8 years ago[+BUGFIX] Extbase (Tests): tweaked ObjectContainer tests. Tests are failing deliberat...
Bastian Waidelich [Tue, 30 Nov 2010 12:02:39 +0000 (12:02 +0000)]
[+BUGFIX] Extbase (Tests): tweaked ObjectContainer tests. Tests are failing deliberately for now

The DI implementation has to be rewritten, as discussed.

This relates to: #11160

8 years ago[+BUGFIX] Extbase (Domain): fixed (non-breaking) method name for getting usergroup...
Marc Bastian Heinrichs [Tue, 30 Nov 2010 12:00:19 +0000 (12:00 +0000)]
[+BUGFIX] Extbase (Domain): fixed (non-breaking) method name for getting usergroup in Tx_Extbase_Domain_Model_FrontendUser. Resolves #11019

8 years ago[+BUGFIX] Extbase (Domain): Tx_Extbase_Domain_Model_FrontendUserGroup::getSubgroup...
Marc Bastian Heinrichs [Tue, 30 Nov 2010 11:50:21 +0000 (11:50 +0000)]
[+BUGFIX] Extbase (Domain): Tx_Extbase_Domain_Model_FrontendUserGroup::getSubgroup() returns wrong property. Resolves #11020

8 years ago[+BUGFIX] Extbase (MVC): re-enabled HMAC check for BE forms. The deactivation was...
Bastian Waidelich [Tue, 30 Nov 2010 11:31:40 +0000 (11:31 +0000)]
[+BUGFIX] Extbase (MVC): re-enabled HMAC check for BE forms. The deactivation was just a temporary fix - HMAC should work in BE mode just like in FE

8 years ago[TASK] Extbase (Configuration): Fix whitespaces
Sebastian Kurfürst [Tue, 30 Nov 2010 10:40:36 +0000 (10:40 +0000)]
[TASK] Extbase (Configuration): Fix whitespaces

Removed some trailing whitespaces.

8 years ago[+TASK] extbase (ConfigurationManager): Made FrontendConfigurationManager parse recur...
Felix Oertel [Tue, 30 Nov 2010 10:01:00 +0000 (10:01 +0000)]
[+TASK] extbase (ConfigurationManager): Made FrontendConfigurationManager parse recurring sections in flexforms right. Thanks to Franz Koch (resolves #6067)

8 years ago[+BUGFIX] Extbase (Configuration): Slightly tweaked AbstractConfigurationManager
Bastian Waidelich [Sat, 27 Nov 2010 15:19:07 +0000 (15:19 +0000)]
[+BUGFIX] Extbase (Configuration): Slightly tweaked AbstractConfigurationManager
[+TASK] Extbase (Tests): Added unit tests for AbstractConfigurationManager

Note: the ConfigurationManager now always overrides switchableControllerActions
when retrieving configuration for the current plugin. Before that only happened
when no extensionName/pluginName was specified.
Additionally: It's not possible anymore to specify new controllers in
switchableControllerAction configuration. That was the intended behavior.

8 years ago[+TASK] Extbase (Tests): Renamed test files from "*_testcase.php" to "*Test.php"
Bastian Waidelich [Sat, 27 Nov 2010 12:05:29 +0000 (12:05 +0000)]
[+TASK] Extbase (Tests): Renamed test files from "*_testcase.php" to "*Test.php"

8 years ago[+TASK] Extbase (Tests): Moving all Tests in "Unit" directory (2/2)
Bastian Waidelich [Sat, 27 Nov 2010 11:57:04 +0000 (11:57 +0000)]
[+TASK] Extbase (Tests): Moving all Tests in "Unit" directory (2/2)

8 years ago[+TASK] Extbase (Tests): Moving all Tests in "Unit" directory.
Bastian Waidelich [Sat, 27 Nov 2010 11:54:43 +0000 (11:54 +0000)]
[+TASK] Extbase (Tests): Moving all Tests in "Unit" directory.

This is the first step of a bigger unit test cleanup

8 years ago[+FEATURE] Extbase (MVC): add possibility to output FlashMessageQueue
Bastian Waidelich [Sat, 27 Nov 2010 11:31:56 +0000 (11:31 +0000)]
[+FEATURE] Extbase (MVC): add possibility to output FlashMessageQueue

Tx_Extbase_MVC_Controller_FlashMessages now internally uses the
t3lib_FlashMessageQueue that has been introduced with TYPO3 4.3.
This results in following changes:
- flashmessages are now treated globally, not in a per-extension-scope. As soon as you output the messages first, the session will be flushed
- a flashmessage is not a simple strings anymore, but consists of
message body and (optionally) title & severity.
You can specify title and severity like this:
$this->flashMessages->add('Your message', 'some title', t3lib_FlashMessage::WARNING);
- you can now output flashmessages in backend that were set from other TYPO3 classes
- a revised flashmessage ViewHelper allows you to render flashmessages in the style
of core flashmessages now (see Fluid changelog)

This resolves: #10821

8 years ago[+TASK] Extbase (Persistence): counting query results does not work with limit constr...
Bastian Waidelich [Wed, 24 Nov 2010 19:51:33 +0000 (19:51 +0000)]
[+TASK] Extbase (Persistence): counting query results does not work with limit constraints

Tx_Extbase_Persistence_Storage_Typo3DbBackend::getObjectCountByQuery() replaces the SELECT part of a query by COUNT(*) before executing a statement.
This did not work as expected in some cases, e.g. the LIMIT constraint was ignored by the count query.

This resolves: #10956

8 years ago[+TASK] Extbase (Persistence): findOneBy*() methods should return NULL if no item...
Bastian Waidelich [Wed, 24 Nov 2010 18:56:00 +0000 (18:56 +0000)]
[+TASK] Extbase (Persistence): findOneBy*() methods should return NULL if no item was found

This resolves: #10958

8 years ago[+TASK] Extbase (Core): Slightly improved error handling in bootstrap
Bastian Waidelich [Wed, 24 Nov 2010 18:48:53 +0000 (18:48 +0000)]
[+TASK] Extbase (Core): Slightly improved error handling in bootstrap

This resolves: #11055

8 years ago[+BUGFIX] Extbase (MVC): disable HMAC check for BE forms
Bastian Waidelich [Wed, 24 Nov 2010 18:47:53 +0000 (18:47 +0000)]
[+BUGFIX] Extbase (MVC): disable HMAC check for BE forms

8 years ago[~TASK] Extbase (Utility): Changed Tx_Extbase_Utility_TypoScript:convertPlainArrayToT...
Nikolas Hagelstein [Fri, 19 Nov 2010 14:23:48 +0000 (14:23 +0000)]
[~TASK] Extbase (Utility): Changed Tx_Extbase_Utility_TypoScript:convertPlainArrayToTypoScriptArray to self::convertPlainArrayToTypoScriptArray. Resolves #10538.

8 years ago[+BUGFIX] Extbase (MVC): UriBuilder: use current plugin if no pluginName has been...
Bastian Waidelich [Thu, 18 Nov 2010 18:30:31 +0000 (18:30 +0000)]
[+BUGFIX] Extbase (MVC): UriBuilder: use current plugin if no pluginName has been specified

If multiple plugins are found, that are configured to handle the specified action, Extbase will throw an Exception. Now, this only happens if the *current* plugin is does not contain the action.

This fixes: #10932

8 years ago* Updated version to 1.3.0beta1a
Bastian Waidelich [Wed, 17 Nov 2010 12:25:00 +0000 (12:25 +0000)]
* Updated version to 1.3.0beta1a
* Updated ChangeLog

8 years ago[+TASK] Extbase: Re-implement support for BE modules
Bastian Waidelich [Tue, 16 Nov 2010 23:39:14 +0000 (23:39 +0000)]
[+TASK] Extbase: Re-implement support for BE modules

This is a major rework of the backend module handling in Extbase.
It still needs some refinements and it does not yet support all
BE module features we were planning to support (see #5097 and #5098)
but it's a cleaner base for further development.
Previous Extbase BE modules should now work again.

This resolves: #10583

8 years ago[+BUGFIX]: Extbase (Persistence): Fixed typo from previous commit
Bastian Waidelich [Tue, 16 Nov 2010 13:12:35 +0000 (13:12 +0000)]
[+BUGFIX]: Extbase (Persistence): Fixed typo from previous commit

8 years ago[+BUGFIX] Extbase (Persistence): DataMapper cannot deal with QueryResults
Bastian Waidelich [Tue, 16 Nov 2010 12:55:19 +0000 (12:55 +0000)]
[+BUGFIX] Extbase (Persistence): DataMapper cannot deal with QueryResults

Tx_Extbase_Persistence_Mapper_DataMapper::mapResultToPropertyValue() expected
the query result to be an array. Changed this to handle instances of type
Tx_Extbase_Persistence_QueryResultInterface

Fixes: #10850

8 years ago* Raised version number to 1.3.0beta1
Sebastian Kurfürst [Tue, 16 Nov 2010 11:42:08 +0000 (11:42 +0000)]
* Raised version number to 1.3.0beta1

8 years ago* Updated ChangeLog
Sebastian Kurfürst [Tue, 16 Nov 2010 11:18:55 +0000 (11:18 +0000)]
* Updated ChangeLog

8 years ago[+BUGFIX] Extbase (Object): The Object Container now properly uses the TYPO3 caching...
Bastian Waidelich [Tue, 16 Nov 2010 11:07:09 +0000 (11:07 +0000)]
[+BUGFIX] Extbase (Object): The Object Container now properly uses the TYPO3 caching framework. By default the DI cache is now stored in database, just like the reflection cache

8 years ago* Updated ChangeLog
Sebastian Kurfürst [Tue, 16 Nov 2010 10:52:30 +0000 (10:52 +0000)]
* Updated ChangeLog