summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/ajax/share.php16
-rw-r--r--lib/private/share/share.php15
2 files changed, 28 insertions, 3 deletions
diff --git a/core/ajax/share.php b/core/ajax/share.php
index f84325dc17e..22f483ec0e1 100644
--- a/core/ajax/share.php
+++ b/core/ajax/share.php
@@ -359,8 +359,24 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
)
);
}
+ $contactManager = \OC::$server->getContactsManager();
+ $addressBookContacts = $contactManager->search($_GET['search'], ['CLOUD', 'FN']);
+ foreach ($addressBookContacts as $contact) {
+ if (isset($contact['CLOUD'])) {
+ foreach ($contact['CLOUD'] as $cloudId) {
+ $shareWith[] = array(
+ 'label' => $contact['FN'] . ' (' . $cloudId . ')',
+ 'value' => array(
+ 'shareType' => \OCP\Share::SHARE_TYPE_REMOTE,
+ 'shareWith' => $cloudId
+ )
+ );
+ }
+ }
+ }
}
+
$sorter = new \OC\Share\SearchResultSorter((string)$_GET['search'],
'label',
\OC::$server->getLogger());
diff --git a/lib/private/share/share.php b/lib/private/share/share.php
index 954071fdd6c..b2ac9ee6a42 100644
--- a/lib/private/share/share.php
+++ b/lib/private/share/share.php
@@ -1703,11 +1703,20 @@ class Share extends Constants {
$row['permissions'] &= ~\OCP\Constants::PERMISSION_SHARE;
}
// Add display names to result
+ $row['share_with_displayname'] = $row['share_with'];
if ( isset($row['share_with']) && $row['share_with'] != '' &&
- isset($row['share_with']) && $row['share_type'] === self::SHARE_TYPE_USER) {
+ $row['share_type'] === self::SHARE_TYPE_USER) {
$row['share_with_displayname'] = \OCP\User::getDisplayName($row['share_with']);
- } else {
- $row['share_with_displayname'] = $row['share_with'];
+ } else if(isset($row['share_with']) && $row['share_with'] != '' &&
+ $row['share_type'] === self::SHARE_TYPE_REMOTE) {
+ $addressBookEntries = \OC::$server->getContactsManager()->search($row['share_with'], ['CLOUD']);
+ foreach ($addressBookEntries as $entry) {
+ foreach ($entry['CLOUD'] as $cloudID) {
+ if ($cloudID === $row['share_with']) {
+ $row['share_with_displayname'] = $entry['FN'];
+ }
+ }
+ }
}
if ( isset($row['uid_owner']) && $row['uid_owner'] != '') {
$row['displayname_owner'] = \OCP\User::getDisplayName($row['uid_owner']);