diff options
author | John Molakvoæ <skjnldsv@protonmail.com> | 2021-10-18 18:19:37 +0200 |
---|---|---|
committer | John Molakvoæ <skjnldsv@protonmail.com> | 2021-10-20 11:53:45 +0200 |
commit | 873e8e219cb7d9c0651260a3b4f138618a22f31e (patch) | |
tree | da2ffc73b5c6f9255d60f84eb2cbe73a7cdefc60 /lib/private/Contacts | |
parent | 3ce3c0f117e7f5b02e55eb2c9aa0a1e7f7fe3508 (diff) | |
download | nextcloud-server-873e8e219cb7d9c0651260a3b4f138618a22f31e.tar.gz nextcloud-server-873e8e219cb7d9c0651260a3b4f138618a22f31e.zip |
Add appName to contactsmenu action API
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
Diffstat (limited to 'lib/private/Contacts')
-rw-r--r-- | lib/private/Contacts/ContactsMenu/ActionFactory.php | 9 | ||||
-rw-r--r-- | lib/private/Contacts/ContactsMenu/Actions/LinkAction.php | 20 |
2 files changed, 26 insertions, 3 deletions
diff --git a/lib/private/Contacts/ContactsMenu/ActionFactory.php b/lib/private/Contacts/ContactsMenu/ActionFactory.php index 8e139f6486c..5218582802c 100644 --- a/lib/private/Contacts/ContactsMenu/ActionFactory.php +++ b/lib/private/Contacts/ContactsMenu/ActionFactory.php @@ -32,13 +32,15 @@ class ActionFactory implements IActionFactory { * @param string $icon * @param string $name * @param string $href + * @param string $appName * @return ILinkAction */ - public function newLinkAction($icon, $name, $href) { + public function newLinkAction(string $icon, string $name, string $href, string $appName = ''): ILinkAction { $action = new LinkAction(); $action->setName($name); $action->setIcon($icon); $action->setHref($href); + $action->setAppName($appName); return $action; } @@ -46,9 +48,10 @@ class ActionFactory implements IActionFactory { * @param string $icon * @param string $name * @param string $email + * @param string $appName * @return ILinkAction */ - public function newEMailAction($icon, $name, $email) { - return $this->newLinkAction($icon, $name, 'mailto:' . $email); + public function newEMailAction(string $icon, string $name, string $email, string $appName = ''): ILinkAction { + return $this->newLinkAction($icon, $name, 'mailto:' . $email, $appName); } } diff --git a/lib/private/Contacts/ContactsMenu/Actions/LinkAction.php b/lib/private/Contacts/ContactsMenu/Actions/LinkAction.php index a50318903ac..a38bad9d82f 100644 --- a/lib/private/Contacts/ContactsMenu/Actions/LinkAction.php +++ b/lib/private/Contacts/ContactsMenu/Actions/LinkAction.php @@ -38,6 +38,9 @@ class LinkAction implements ILinkAction { /** @var int */ private $priority = 10; + /** @var string */ + private $appName; + /** * @param string $icon absolute URI to an icon */ @@ -88,6 +91,22 @@ class LinkAction implements ILinkAction { } /** + * @param string $appName + * @since 23.0.0 + */ + public function setAppName(string $appName) { + $this->appName = $appName; + } + + /** + * @return string + * @since 23.0.0 + */ + public function getAppName(): string { + return $this->appName; + } + + /** * @return array */ public function jsonSerialize() { @@ -95,6 +114,7 @@ class LinkAction implements ILinkAction { 'title' => $this->name, 'icon' => $this->icon, 'hyperlink' => $this->href, + 'appName' => $this->appName, ]; } } |