Nextcloud PHP API (stable18)

Share_Backend_Collection extends Share_Backend

Interface for collections of of items implemented by another share backend.

Extends the Share_Backend interface.

Tags
since
5.0.0

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
since
5.0.0
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
since
5.0.0
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
since
5.0.0
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
since
8.0.0
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
since
5.0.0
Return values
bool|null

Source

Return false if the item does not exist for the user

Search results