Merge pull request #13042 from annando/support-probe
New hook "support_probe"
This commit is contained in:
commit
9e13ef4021
|
@ -638,6 +638,14 @@ Hook data:
|
||||||
- **uid** (input): the user id to revoke the block for.
|
- **uid** (input): the user id to revoke the block for.
|
||||||
- **result** (output): a boolean value indicating wether the operation was successful or not.
|
- **result** (output): a boolean value indicating wether the operation was successful or not.
|
||||||
|
|
||||||
|
### support_probe
|
||||||
|
|
||||||
|
Called to assert whether a connector addon provides probing capabilities.
|
||||||
|
|
||||||
|
Hook data:
|
||||||
|
- **protocol** (input): shorthand for the protocol. List of values is available in `src/Core/Protocol.php`.
|
||||||
|
- **result** (output): should be true if the connector provides follow capabilities, left alone otherwise.
|
||||||
|
|
||||||
### storage_instance
|
### storage_instance
|
||||||
|
|
||||||
Called when a custom storage is used (e.g. webdav_storage)
|
Called when a custom storage is used (e.g. webdav_storage)
|
||||||
|
@ -907,6 +915,7 @@ Here is a complete list of all hook callbacks with file locations (as of 24-Sep-
|
||||||
Hook::callAll('revoke_follow', $hook_data);
|
Hook::callAll('revoke_follow', $hook_data);
|
||||||
Hook::callAll('block', $hook_data);
|
Hook::callAll('block', $hook_data);
|
||||||
Hook::callAll('unblock', $hook_data);
|
Hook::callAll('unblock', $hook_data);
|
||||||
|
Hook::callAll('support_probe', $hook_data);
|
||||||
|
|
||||||
### src/Core/Logger/Factory.php
|
### src/Core/Logger/Factory.php
|
||||||
|
|
||||||
|
|
|
@ -397,6 +397,7 @@ Eine komplette Liste aller Hook-Callbacks mit den zugehörigen Dateien (am 01-Ap
|
||||||
Hook::callAll('revoke_follow', $hook_data);
|
Hook::callAll('revoke_follow', $hook_data);
|
||||||
Hook::callAll('block', $hook_data);
|
Hook::callAll('block', $hook_data);
|
||||||
Hook::callAll('unblock', $hook_data);
|
Hook::callAll('unblock', $hook_data);
|
||||||
|
Hook::callAll('support_probe', $hook_data);
|
||||||
|
|
||||||
### src/Core/Logger/Factory.php
|
### src/Core/Logger/Factory.php
|
||||||
|
|
||||||
|
|
|
@ -305,4 +305,26 @@ class Protocol
|
||||||
|
|
||||||
return $hook_data['result'];
|
return $hook_data['result'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns whether the provided protocol supports probing for contacts
|
||||||
|
*
|
||||||
|
* @param $protocol
|
||||||
|
* @return bool
|
||||||
|
* @throws HTTPException\InternalServerErrorException
|
||||||
|
*/
|
||||||
|
public static function supportsProbe($protocol): bool
|
||||||
|
{
|
||||||
|
if (in_array($protocol, self::NATIVE_SUPPORT)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
$hook_data = [
|
||||||
|
'protocol' => $protocol,
|
||||||
|
'result' => null
|
||||||
|
];
|
||||||
|
Hook::callAll('support_probe', $hook_data);
|
||||||
|
|
||||||
|
return $hook_data['result'] === true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -463,7 +463,7 @@ class Profile extends BaseModule
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (in_array($contact['network'], Protocol::NATIVE_SUPPORT)) {
|
if (Protocol::supportsProbe($contact['network'])) {
|
||||||
$contact_actions['updateprofile'] = [
|
$contact_actions['updateprofile'] = [
|
||||||
'label' => $this->t('Refetch contact data'),
|
'label' => $this->t('Refetch contact data'),
|
||||||
'url' => 'contact/' . $contact['id'] . '/updateprofile?t=' . $formSecurityToken,
|
'url' => 'contact/' . $contact['id'] . '/updateprofile?t=' . $formSecurityToken,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user