Browse Source

moving sharing email code to core

tags/v5.0.0alpha1
Thomas Mueller 11 years ago
parent
commit
162a2c0fba
4 changed files with 60 additions and 64 deletions
  1. 0
    39
      apps/files_sharing/ajax/email.php
  2. 1
    25
      apps/files_sharing/js/share.js
  3. 36
    0
      core/ajax/share.php
  4. 23
    0
      core/js/share.js

+ 0
- 39
apps/files_sharing/ajax/email.php View File

@@ -1,39 +0,0 @@
<?php
OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck();
OCP\JSON::checkAppEnabled('files_sharing');

// read post variables
$user = OCP\USER::getUser();
$type = $_POST['type'];
$link = $_POST['link'];
$file = $_POST['file'];
$to_address = $_POST['toaddress'];

// enable l10n support
$l = OC_L10N::get('files_sharing');

// setup the email
$subject = (string)$l->t('User %s shared a file with you', $user);
if ($type === 'dir')
$subject = (string)$l->t('User %s shared a folder with you', $user);

$text = (string)$l->t('User %s shared the file "%s" with you. It is available for download here: %s', array($user, $file, $link));
if ($type === 'dir')
$text = (string)$l->t('User %s shared the folder "%s" with you. It is available for download here: %s', array($user, $file, $link));

// handle localhost installations
$server_host = OCP\Util::getServerHost();
if ($server_host === 'localhost')
$server_host = "example.com";

$default_from = 'sharing-noreply@' . $server_host;
$from_address = OCP\Config::getUserValue($user, 'settings', 'email', $default_from );

// send it out now
try {
OCP\Util::sendMail($to_address, $to_address, $subject, $text, $from_address, $user);
OCP\JSON::success();
} catch (Exception $exception) {
OCP\JSON::error(array('data' => array('message' => $exception->getMessage())));
}

+ 1
- 25
apps/files_sharing/js/share.js View File

@@ -33,28 +33,4 @@ $(document).ready(function() {
});
OC.Share.loadIcons('file');
}

$('#emailPrivateLink').live('submit', function(event) {
event.preventDefault();
var link = $('#linkText').val();
var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source');

var file = $('tr').filterAttr('data-id', String(itemSource)).data('file');
var email = $('#email').val();
if (email != '') {
$.post(OC.filePath('files_sharing', 'ajax', 'email.php'), { toaddress: email, link: link, type: itemType, file: file }, function(result) {
if (result && result.status == 'success') {
$('#email').css('font-weight', 'bold');
$('#email').animate({ fontWeight: 'normal' }, 2000, function() {
$(this).val('');
}).val('Email sent');
} else {
OC.dialogs.alert(result.data.message, 'Error while sharing');
}
});
}
});


});
});

+ 36
- 0
core/ajax/share.php View File

@@ -69,6 +69,42 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
($return) ? OC_JSON::success() : OC_JSON::error();
}
break;
case 'email':
// read post variables
$user = OCP\USER::getUser();
$type = $_POST['itemType'];
$link = $_POST['link'];
$file = $_POST['file'];
$to_address = $_POST['toaddress'];

// enable l10n support
$l = OC_L10N::get('core');

// setup the email
$subject = (string)$l->t('User %s shared a file with you', $user);
if ($type === 'dir')
$subject = (string)$l->t('User %s shared a folder with you', $user);

$text = (string)$l->t('User %s shared the file "%s" with you. It is available for download here: %s', array($user, $file, $link));
if ($type === 'dir')
$text = (string)$l->t('User %s shared the folder "%s" with you. It is available for download here: %s', array($user, $file, $link));

// handle localhost installations
$server_host = OCP\Util::getServerHost();
if ($server_host === 'localhost')
$server_host = "example.com";

$default_from = 'sharing-noreply@' . $server_host;
$from_address = OCP\Config::getUserValue($user, 'settings', 'email', $default_from );

// send it out now
try {
OCP\Util::sendMail($to_address, $to_address, $subject, $text, $from_address, $user);
OCP\JSON::success();
} catch (Exception $exception) {
OCP\JSON::error(array('data' => array('message' => $exception->getMessage())));
}
break;
}
} else if (isset($_GET['fetch'])) {
switch ($_GET['fetch']) {

+ 23
- 0
core/js/share.js View File

@@ -555,4 +555,27 @@ $(document).ready(function() {
});
});


$('#emailPrivateLink').live('submit', function(event) {
event.preventDefault();
var link = $('#linkText').val();
var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source');
var file = $('tr').filterAttr('data-id', String(itemSource)).data('file');
var email = $('#email').val();
if (email != '') {
$.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'email', toaddress: email, link: link, itemType: itemType, itemSource: itemSource, file: file}, function(result) {
if (result && result.status == 'success') {
$('#email').css('font-weight', 'bold');
$('#email').animate({ fontWeight: 'normal' }, 2000, function() {
$(this).val('');
}).val(t('core','Email sent'));
} else {
OC.dialogs.alert(result.data.message, t('core', 'Error while sharing'));
}
});
}
});


});

Loading…
Cancel
Save