Share_Backend_Collection extends Share_Backend
Interface for collections of of items implemented by another share backend.
Extends the Share_Backend interface.
Tags
Table of Contents
- formatItems() : array
- Converts the shared item sources back into the item in the specified format
- generateTarget() : string
- Get a unique name of the item for the specified user
- getChildren() : array
- Get the sources of the children of the item
- isShareTypeAllowed() : bool
- Check if a given share type is allowd by the back-end
- isValidSource() : bool|null
- Check if this $itemSource exist for the user
Methods
formatItems()
Converts the shared item sources back into the item in the specified format
public
formatItems(array $items, int $format[, mixed $parameters = null ]) : array
Parameters
- $items : array
-
Shared items
- $format : int
- $parameters : mixed = null
Tags
Return values
array —The items array is a 3-dimensional array with the item_source as the first key and the share id as the second key to an array with the share info.
The key/value pairs included in the share info depend on the function originally called: If called by getItem(s)Shared: id, item_type, item, item_source, share_type, share_with, permissions, stime, file_source
If called by getItem(s)SharedWith: id, item_type, item, item_source, item_target, share_type, share_with, permissions, stime, file_source, file_target
This function allows the backend to control the output of shared items with custom formats. It is only called through calls to the public getItem(s)Shared(With) functions.
generateTarget()
Get a unique name of the item for the specified user
public
generateTarget(string $itemSource, string|false $shareWith[, array|null $exclude = null ]) : string
Parameters
- $itemSource : string
- $shareWith : string|false
-
User the item is being shared with
- $exclude : array|null = null
-
List of similar item names already existing as shared items @deprecated since version OC7
Tags
Return values
string —Target name
This function needs to verify that the user does not already have an item with this name. If it does generate a new name e.g. name_#
getChildren()
Get the sources of the children of the item
public
getChildren(string $itemSource) : array
Parameters
- $itemSource : string
Tags
Return values
array —Returns an array of children each inside an array with the keys: source, target, and file_path if applicable
isShareTypeAllowed()
Check if a given share type is allowd by the back-end
public
isShareTypeAllowed(int $shareType) : bool
Parameters
- $shareType : int
-
share type
Tags
Return values
bool —The back-end can enable/disable specific share types. Just return true if the back-end doesn't provide any specific settings for it and want to allow all share types defined by the share API
isValidSource()
Check if this $itemSource exist for the user
public
isValidSource(string $itemSource, string $uidOwner) : bool|null
Parameters
- $itemSource : string
- $uidOwner : string
-
Owner of the item
Tags
Return values
bool|null —Source
Return false if the item does not exist for the user