LocationService
Location service, used for complex subtree operations.
Methods¶
                 copySubtree()
            ¶
copySubtree()
            ¶
    
        Copies the subtree starting from $subtree as a new subtree of $targetLocation.
Only the items on which the user has read access are copied.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $subtree | Location | - | the subtree denoted by the location to copy | 
| $targetParentLocation | Location | - | the target parent location for the copy operation | 
Return values
The newly created location of the copied subtree
Tags
                 count()
            ¶
count()
            ¶
    
        Counts total number of items matching the filter.
|  |  | 
Return the count of items that would be returned by LocationService::find() method.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $filter | Filter | - | - | 
| $languages | array<int, string>|null | null | a list of language codes to be added as additional constraints. If skipped, by default, unless SiteAccessAware layer has been disabled, languages set for a SiteAccess in a current context will be used. | 
Return values
int
                 createLocation()
            ¶
createLocation()
            ¶
    
        Creates the new $location in the content repository for the given content.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $contentInfo | ContentInfo | - | - | 
| $locationCreateStruct | LocationCreateStruct | - | - | 
Return values
the newly created Location
Tags
                 deleteLocation()
            ¶
deleteLocation()
            ¶
    
        Deletes $location and all its descendants.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
Tags
                 find()
            ¶
find()
            ¶
    
        Fetch a LocationList from the Repository filtered by the given conditions.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $filter | Filter | - | - | 
| $languages | array<int, string>|null | null | a list of language codes to be added as additional constraints. If skipped, by default, unless SiteAccessAware layer has been disabled, languages set for a SiteAccess in a current context will be used. | 
Return values
                 getAllLocationsCount()
            ¶
getAllLocationsCount()
            ¶
    
        Get the total number of all existing Locations. Can be combined with loadAllLocations.
|  |  | 
Return values
int
Total number of Locations
                 getLocationChildCount()
            ¶
getLocationChildCount()
            ¶
    
        Returns the number of children which are readable by the current user of a location object.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
Return values
int
                 getSubtreeSize()
            ¶
getSubtreeSize()
            ¶
    
        Return the subtree size of a given location.
|  |  | 
Warning! This method is not permission aware by design.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
Return values
int
                 hideLocation()
            ¶
hideLocation()
            ¶
    
        Hides the $location and marks invisible all descendants of $location.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
Return values
$location, with updated hidden value
Tags
                 loadAllLocations()
            ¶
loadAllLocations()
            ¶
    
        Bulk-load all existing Locations, constrained by $limit and $offset to paginate results.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $offset | int | 0 | - | 
| $limit | int | 25 | - | 
Return values
array<int, Location>
                 loadLocation()
            ¶
loadLocation()
            ¶
    
        Loads a location object from its $locationId.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $locationId | mixed | - | - | 
| $prioritizedLanguages | array<string|int, string>|null | null | Filter on and use as prioritized language code on translated properties of returned object. | 
| $useAlwaysAvailable | bool|null | null | Respect always available flag on content when filtering on $prioritizedLanguages. | 
Return values
Tags
                 loadLocationByRemoteId()
            ¶
loadLocationByRemoteId()
            ¶
    
        Loads a location object from its $remoteId.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $remoteId | string | - | - | 
| $prioritizedLanguages | array<string|int, string>|null | null | Filter on and use as prioritized language code on translated properties of returned object. | 
| $useAlwaysAvailable | bool|null | null | Respect always available flag on content when filtering on $prioritizedLanguages. | 
Return values
Tags
                 loadLocationChildren()
            ¶
loadLocationChildren()
            ¶
    
        Loads children which are readable by the current user of a location object sorted by sortField and sortOrder.
|  |  | 
Use this method with caution. It performs heavy queries on the database. Consider using SearchService::findLocations() with ChildrenQueryType as an alternative.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
| $offset | int | 0 | the start offset for paging | 
| $limit | int | 25 | the number of locations returned | 
| $prioritizedLanguages | array<string|int, string>|null | null | Used as prioritized language code on translated properties of returned object. | 
Return values
                 loadLocationList()
            ¶
loadLocationList()
            ¶
    
        Loads several location objects from its $locationIds.
|  | 
Returned list of Locations will be filtered by what is found and what current user has access to.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $locationIds | array<string|int, mixed> | - | - | 
| $prioritizedLanguages | array<int, string>|null | null | Filter on and use as prioritized language code on translated properties of returned objects. | 
| $useAlwaysAvailable | bool|null | null | Respect always available flag on content when filtering on $prioritizedLanguages. | 
Return values
array<int, Location>|iterable<string|int, Location>
                 loadLocations()
            ¶
loadLocations()
            ¶
    
        Loads the locations for the given content object.
|  |  | 
If a $rootLocation is given, only locations that belong to this location are returned. The location list is also filtered by permissions on reading locations.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $contentInfo | ContentInfo | - | - | 
| $rootLocation | Location | null | - | 
| $prioritizedLanguages | array<string|int, string>|null | null | Used as prioritized language code on translated properties of returned object. | 
Return values
array<string|int, Location>
An array of Location
Tags
                 loadParentLocationsForDraftContent()
            ¶
loadParentLocationsForDraftContent()
            ¶
    
        Load parent Locations for Content Draft.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $versionInfo | VersionInfo | - | - | 
| $prioritizedLanguages | array<string|int, string>|null | null | Used as prioritized language code on translated properties of returned object. | 
Return values
array<string|int, Location>
List of parent Locations
                 moveSubtree()
            ¶
moveSubtree()
            ¶
    
        Moves the subtree to $newParentLocation.
If a user has the permission to move the location to a target location he can do it regardless of an existing descendant on which the user has no permission.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
| $newParentLocation | Location | - | - | 
Tags
                 newLocationCreateStruct()
            ¶
newLocationCreateStruct()
            ¶
    
        Instantiates a new location create class.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $parentLocationId | mixed | - | the parent under which the new location should be created | 
Return values
                 newLocationUpdateStruct()
            ¶
newLocationUpdateStruct()
            ¶
    
        Instantiates a new location update class.
|  |  | 
Return values
                 swapLocation()
            ¶
swapLocation()
            ¶
    
        Swaps the contents held by $location1 and $location2.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location1 | Location | - | - | 
| $location2 | Location | - | - | 
Tags
                 unhideLocation()
            ¶
unhideLocation()
            ¶
    
        Unhides the $location.
This method and marks visible all descendants of $locations until a hidden location is found.
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
Return values
$location, with updated hidden value
Tags
                 updateLocation()
            ¶
updateLocation()
            ¶
    
        Updates $location in the content repository.
|  |  | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| $location | Location | - | - | 
| $locationUpdateStruct | LocationUpdateStruct | - | - | 
Return values
the updated Location