aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/ajax/share.php24
-rw-r--r--core/js/share.js20
2 files changed, 44 insertions, 0 deletions
diff --git a/core/ajax/share.php b/core/ajax/share.php
index be02c056357..6bac2867c48 100644
--- a/core/ajax/share.php
+++ b/core/ajax/share.php
@@ -261,6 +261,30 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
OC_JSON::success(array('data' => array('reshare' => $reshare, 'shares' => $shares)));
}
break;
+ case 'getShareWithEmail':
+ $result = array();
+ if (isset($_GET['search'])) {
+ $cm = OC::$server->getContactsManager();
+ if (!is_null($cm) && $cm->isEnabled()) {
+ $contacts = $cm->search($_GET['search'], array('FN', 'EMAIL'));
+ foreach ($contacts as $contact) {
+ $emails = $contact['EMAIL'];
+ if (!is_array($emails)) {
+ $emails = array($emails);
+ }
+
+ foreach($emails as $email) {
+ $result[] = array(
+ 'id' => $contact['ID'],
+ 'email' => $email,
+ 'displayname' => $contact['FN'],
+ );
+ }
+ }
+ }
+ }
+ OC_JSON::success(array('data' => $result));
+ break;
case 'getShareWith':
if (isset($_GET['search'])) {
$sharePolicy = OC_Appconfig::getValue('core', 'shareapi_share_policy', 'global');
diff --git a/core/js/share.js b/core/js/share.js
index 411f0d23c36..44c58a3f942 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -314,6 +314,26 @@ OC.Share={
.append( insert )
.appendTo( ul );
};
+ $('#email').autocomplete({
+ minLength: 1,
+ source: function (search, response) {
+ $.get(OC.filePath('core', 'ajax', 'share.php'), { fetch: 'getShareWithEmail', search: search.term }, function(result) {
+ if (result.status == 'success' && result.data.length > 0) {
+ response(result.data);
+ }
+ });
+ },
+ select: function( event, item ) {
+ $('#email').val(item.item.email);
+ return false;
+ }
+ })
+ .data("ui-autocomplete")._renderItem = function( ul, item ) {
+ return $( "<li>" )
+ .append( "<a>" + item.displayname + "<br>" + item.email + "</a>" )
+ .appendTo( ul );
+ };
+
} else {
html += '<input id="shareWith" type="text" placeholder="'+t('core', 'Resharing is not allowed')+'" style="width:90%;" disabled="disabled"/>';
html += '</div>';