ezsystems/ezp-next — pull request #145 by pspanja (2012-11-20 18:59:29+00:00)
Title: Path identification string

This PR implements updating ```ezcontentobject_tree.path_identification_string```.

The column holds what is basically URL alias path of a location, that is calculated using main languages and ```urlalias_compat``` transformation of string to URL alias. It is not exposed in PAPI but handled only for compatibility reasons. Ideally handling would be done entirely in storage layer, but as name schema resolving is done on service level there is no easy way to do that.

Implementation updates ```path_identification_string``` from URLAliasHandler::publishUrlAliasForLocation() method. The method implementation has one internal parameter added (it not in interface) to indicate main language and trigger update of path identification string. This parameter is then being passed in services when calling the method on:

* creating new location for content
* publishing content version
* updating metadata (changing main language of the content)

PR also contains some fixes:

* LocationGateway::moveSubtreeNodes() is fixed for case when parent location is on root level.
* Locations were sometimes created with ```ezcontentobject_tree.contentobject_is_published``` set to 0. Legacy storage impl. ignores this and now locations are always being created with this column set to 1.