Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>tags/v11.0RC2
@@ -235,8 +235,6 @@ class ViewController extends Controller { | |||
$params['owner'] = $storageInfo['owner']; | |||
$params['ownerDisplayName'] = $storageInfo['ownerDisplayName']; | |||
$params['isPublic'] = false; | |||
$params['mailNotificationEnabled'] = $this->config->getAppValue('core', 'shareapi_allow_mail_notification', 'no'); | |||
$params['mailPublicNotificationEnabled'] = $this->config->getAppValue('core', 'shareapi_allow_public_notification', 'no'); | |||
$params['allowShareWithLink'] = $this->config->getAppValue('core', 'shareapi_allow_links', 'yes'); | |||
$user = $this->userSession->getUser()->getUID(); | |||
$params['defaultFileSorting'] = $this->config->getUserValue($user, 'files', 'file_sorting', 'name'); |
@@ -16,8 +16,6 @@ | |||
<input type="hidden" name="ownerDisplayName" id="ownerDisplayName" value="<?php p($_['ownerDisplayName']); ?>" /> | |||
<input type="hidden" name="fileNotFound" id="fileNotFound" value="<?php p($_['fileNotFound']); ?>" /> | |||
<?php if (!$_['isPublic']) :?> | |||
<input type="hidden" name="mailNotificationEnabled" id="mailNotificationEnabled" value="<?php p($_['mailNotificationEnabled']) ?>" /> | |||
<input type="hidden" name="mailPublicNotificationEnabled" id="mailPublicNotificationEnabled" value="<?php p($_['mailPublicNotificationEnabled']) ?>" /> | |||
<input type="hidden" name="allowShareWithLink" id="allowShareWithLink" value="<?php p($_['allowShareWithLink']) ?>" /> | |||
<input type="hidden" name="defaultFileSorting" id="defaultFileSorting" value="<?php p($_['defaultFileSorting']) ?>" /> | |||
<input type="hidden" name="defaultFileSortingDirection" id="defaultFileSortingDirection" value="<?php p($_['defaultFileSortingDirection']) ?>" /> |
@@ -218,8 +218,6 @@ class ViewControllerTest extends TestCase { | |||
'defaultFileSortingDirection' => 'asc', | |||
'showHiddenFiles' => 0, | |||
'fileNotFound' => 0, | |||
'mailNotificationEnabled' => 'no', | |||
'mailPublicNotificationEnabled' => 'no', | |||
'allowShareWithLink' => 'yes', | |||
'appNavigation' => $nav, | |||
'appContents' => [ |
@@ -73,10 +73,10 @@ class Capabilities implements ICapability { | |||
} | |||
$res["public"] = $public; | |||
$res['user']['send_mail'] = $this->config->getAppValue('core', 'shareapi_allow_mail_notification', 'no') === 'yes'; | |||
$res['resharing'] = $this->config->getAppValue('core', 'shareapi_allow_resharing', 'yes') === 'yes'; | |||
$res['user']['send_mail'] = false; | |||
$res['group_sharing'] = $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes') === 'yes'; | |||
} | |||
@@ -188,24 +188,6 @@ class CapabilitiesTest extends \Test\TestCase { | |||
$this->assertFalse($result['public']['send_mail']); | |||
} | |||
public function testUserSendMail() { | |||
$map = [ | |||
['core', 'shareapi_enabled', 'yes', 'yes'], | |||
['core', 'shareapi_allow_mail_notification', 'no', 'yes'], | |||
]; | |||
$result = $this->getResults($map); | |||
$this->assertTrue($result['user']['send_mail']); | |||
} | |||
public function testUserNoSendMail() { | |||
$map = [ | |||
['core', 'shareapi_enabled', 'yes', 'yes'], | |||
['core', 'shareapi_allow_mail_notification', 'no', 'no'], | |||
]; | |||
$result = $this->getResults($map); | |||
$this->assertFalse($result['user']['send_mail']); | |||
} | |||
public function testResharing() { | |||
$map = [ | |||
['core', 'shareapi_enabled', 'yes', 'yes'], |
@@ -46,20 +46,6 @@ | |||
return publicUploadEnabled === 'yes'; | |||
}, | |||
/** | |||
* @returns {boolean} | |||
*/ | |||
isMailPublicNotificationEnabled: function() { | |||
return $('input:hidden[name=mailPublicNotificationEnabled]').val() === 'yes'; | |||
}, | |||
/** | |||
* @returns {boolean} | |||
*/ | |||
isMailNotificationEnabled: function() { | |||
return $('input:hidden[name=mailNotificationEnabled]').val() === 'yes'; | |||
}, | |||
/** | |||
* @returns {boolean} | |||
*/ |
@@ -332,7 +332,6 @@ | |||
hideFileListChecked: hideFileListChecked, | |||
publicUploadLabel: t('core', 'Allow upload and editing'), | |||
hideFileListLabel: t('core', 'Hide file listing'), | |||
mailPublicNotificationEnabled: isLinkShare && this.configModel.isMailPublicNotificationEnabled(), | |||
mailPrivatePlaceholder: t('core', 'Email link to person'), | |||
mailButtonText: t('core', 'Send') | |||
})); |
@@ -1,178 +0,0 @@ | |||
/* | |||
* Copyright (c) 2016 | |||
* | |||
* This file is licensed under the Affero General Public License version 3 | |||
* or later. | |||
* | |||
* See the COPYING-README file. | |||
* | |||
*/ | |||
/* globals escapeHTML, Handlebars */ | |||
(function() { | |||
if (!OC.Share) { | |||
OC.Share = {}; | |||
} | |||
var TEMPLATE = | |||
'{{#if shareAllowed}}' + | |||
' {{#if mailPublicNotificationEnabled}}' + | |||
'<form id="emailPrivateLink" class="emailPrivateLinkForm oneline">' + | |||
' <input id="email" class="emailField" value="{{email}}" placeholder="{{mailPrivatePlaceholder}}" type="text" />' + | |||
' <a id="emailButton" class="icon icon-mail hasTooltip" title="Send e-mail"></a>' + | |||
'</form>' + | |||
' {{/if}}' + | |||
'{{/if}}' | |||
; | |||
/** | |||
* @class OCA.Share.ShareDialogMailView | |||
* @member {OC.Share.ShareItemModel} model | |||
* @member {jQuery} $el | |||
* @memberof OCA.Sharing | |||
* @classdesc | |||
* | |||
* Represents the GUI of the share dialogue | |||
* | |||
*/ | |||
var ShareDialogMailView = OC.Backbone.View.extend({ | |||
/** @type {string} **/ | |||
id: 'shareDialogMailView', | |||
/** @type {OC.Share.ShareConfigModel} **/ | |||
configModel: undefined, | |||
/** @type {Function} **/ | |||
_template: undefined, | |||
/** @type {boolean} **/ | |||
showLink: true, | |||
events: { | |||
'click #emailButton': '_onEmailPrivateLink' | |||
}, | |||
initialize: function(options) { | |||
var view = this; | |||
this.model.on('change:linkShare', function() { | |||
view.render(); | |||
}); | |||
if(!_.isUndefined(options.configModel)) { | |||
this.configModel = options.configModel; | |||
} else { | |||
throw 'missing OC.Share.ShareConfigModel'; | |||
} | |||
_.bindAll( | |||
this, | |||
'_onEmailPrivateLink' | |||
); | |||
}, | |||
_onEmailPrivateLink: function(event) { | |||
event.preventDefault(); | |||
var $emailField = this.$el.find('.emailField'); | |||
var $emailButton = this.$el.find('.emailButton'); | |||
var email = $emailField.val(); | |||
if (email !== '') { | |||
$emailField.prop('disabled', true); | |||
$emailButton.prop('disabled', true); | |||
$emailField.val(t('core', 'Sending ...')); | |||
this.model.sendEmailPrivateLink(email).done(function() { | |||
$emailField.css('font-weight', 'bold').val(t('core','Email sent')); | |||
setTimeout(function() { | |||
$emailField.val(''); | |||
$emailField.css('font-weight', 'normal'); | |||
$emailField.prop('disabled', false); | |||
$emailButton.prop('disabled', false); | |||
}, 2000); | |||
}).fail(function() { | |||
$emailField.val(email); | |||
$emailField.css('font-weight', 'normal'); | |||
$emailField.prop('disabled', false); | |||
$emailButton.prop('disabled', false); | |||
}); | |||
} | |||
return false; | |||
}, | |||
render: function() { | |||
var linkShareTemplate = this.template(); | |||
var resharingAllowed = this.model.sharePermissionPossible(); | |||
var email = this.$el.find('.emailField').val(); | |||
if(!resharingAllowed | |||
|| !this.showLink | |||
|| !this.configModel.isShareWithLinkAllowed()) | |||
{ | |||
var templateData = {shareAllowed: false}; | |||
if (!resharingAllowed) { | |||
// add message | |||
templateData.noSharingPlaceholder = t('core', 'Resharing is not allowed'); | |||
} | |||
this.$el.html(linkShareTemplate(templateData)); | |||
return this; | |||
} | |||
var isLinkShare = this.model.get('linkShare').isLinkShare; | |||
this.$el.html(linkShareTemplate({ | |||
cid: this.cid, | |||
shareAllowed: true, | |||
mailPublicNotificationEnabled: isLinkShare && this.configModel.isMailPublicNotificationEnabled(), | |||
mailPrivatePlaceholder: t('core', 'Email link to person'), | |||
mailButtonText: t('core', 'Send link via email'), | |||
email: email | |||
})); | |||
var $emailField = this.$el.find('.emailField'); | |||
if (isLinkShare && $emailField.length !== 0) { | |||
$emailField.autocomplete({ | |||
minLength: 1, | |||
source: function (search, response) { | |||
$.get( | |||
OC.generateUrl('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 ) { | |||
$emailField.val(item.item.email); | |||
return false; | |||
} | |||
}) | |||
.data("ui-autocomplete")._renderItem = function( ul, item ) { | |||
return $('<li>') | |||
.append('<a>' + escapeHTML(item.displayname) + "<br>" + escapeHTML(item.email) + '</a>' ) | |||
.appendTo( ul ); | |||
}; | |||
} | |||
this.delegateEvents(); | |||
return this; | |||
}, | |||
/** | |||
* @returns {Function} from Handlebars | |||
* @private | |||
*/ | |||
template: function () { | |||
if (!this._template) { | |||
this._template = Handlebars.compile(TEMPLATE); | |||
} | |||
return this._template; | |||
} | |||
}); | |||
OC.Share.ShareDialogMailView = ShareDialogMailView; | |||
})(); |
@@ -173,7 +173,6 @@ | |||
hasCreatePermission: this.model.hasCreatePermission(shareIndex), | |||
hasUpdatePermission: this.model.hasUpdatePermission(shareIndex), | |||
hasDeletePermission: this.model.hasDeletePermission(shareIndex), | |||
wasMailSent: this.model.notificationMailWasSent(shareIndex), | |||
shareWith: shareWith, | |||
shareWithDisplayName: shareWithDisplayName, | |||
shareWithTitle: shareWithTitle, | |||
@@ -189,7 +188,6 @@ | |||
getShareeList: function() { | |||
var universal = { | |||
avatarEnabled: this.configModel.areAvatarsEnabled(), | |||
notifyByMailLabel: t('core', 'notify by email'), | |||
unshareLabel: t('core', 'Unshare'), | |||
canShareLabel: t('core', 'can reshare'), | |||
canEditLabel: t('core', 'can edit'), |
@@ -28,7 +28,6 @@ | |||
'<div class="shareeListView subView"></div>' + | |||
'<div class="linkShareView subView"></div>' + | |||
'<div class="expirationView subView"></div>' + | |||
'<div class="mailView subView"></div>' + | |||
'<div class="loading hidden" style="height: 50px"></div>'; | |||
var TEMPLATE_REMOTE_SHARE_INFO = | |||
@@ -70,9 +69,6 @@ | |||
/** @type {object} **/ | |||
shareeListView: undefined, | |||
/** @type {object} **/ | |||
mailView: undefined, | |||
events: { | |||
'input .shareWithField': 'onShareWithFieldChanged' | |||
}, | |||
@@ -109,8 +105,7 @@ | |||
resharerInfoView: 'ShareDialogResharerInfoView', | |||
linkShareView: 'ShareDialogLinkShareView', | |||
expirationView: 'ShareDialogExpirationView', | |||
shareeListView: 'ShareDialogShareeListView', | |||
mailView: 'ShareDialogMailView' | |||
shareeListView: 'ShareDialogShareeListView' | |||
}; | |||
for(var name in subViews) { | |||
@@ -383,9 +378,6 @@ | |||
this.shareeListView.$el = this.$el.find('.shareeListView'); | |||
this.shareeListView.render(); | |||
this.mailView.$el = this.$el.find('.mailView'); | |||
this.mailView.render(); | |||
this.$el.find('.hasTooltip').tooltip(); | |||
return this; |
@@ -417,49 +417,6 @@ | |||
return (share.permissions & permission) === permission; | |||
}, | |||
notificationMailWasSent: function(shareIndex) { | |||
/** @type OC.Share.Types.ShareInfo **/ | |||
var share = this.get('shares')[shareIndex]; | |||
if(!_.isObject(share)) { | |||
throw "Unknown Share"; | |||
} | |||
return share.mail_send === 1; | |||
}, | |||
/** | |||
* Send the link share information by email | |||
* | |||
* @param {string} recipientEmail recipient email address | |||
*/ | |||
sendEmailPrivateLink: function(recipientEmail) { | |||
var deferred = $.Deferred(); | |||
var itemType = this.get('itemType'); | |||
var itemSource = this.get('itemSource'); | |||
var linkShare = this.get('linkShare'); | |||
$.post( | |||
OC.generateUrl('core/ajax/share.php'), { | |||
action: 'email', | |||
toaddress: recipientEmail, | |||
link: linkShare.link, | |||
itemType: itemType, | |||
itemSource: itemSource, | |||
file: this.fileInfoModel.get('name'), | |||
expiration: linkShare.expiration || '' | |||
}, | |||
function(result) { | |||
if (!result || result.status !== 'success') { | |||
// FIXME: a model should not show dialogs | |||
OC.dialogs.alert(result.data.message, t('core', 'Error while sending notification')); | |||
deferred.reject(); | |||
} else { | |||
deferred.resolve(); | |||
} | |||
}); | |||
return deferred.promise(); | |||
}, | |||
/** | |||
* @returns {boolean} | |||
*/ |
@@ -34,8 +34,6 @@ describe('OC.Share.ShareDialogShareeListView', function () { | |||
oldAppConfig = _.extend({}, oc_appconfig.core); | |||
oc_appconfig.core.enforcePasswordForPublicLink = false; | |||
$('#testArea').append('<input id="mailNotificationEnabled" name="mailNotificationEnabled" type="hidden" value="yes">'); | |||
fileInfoModel = new OCA.Files.FileInfoModel({ | |||
id: 123, | |||
name: 'shared_file_name.txt', |
@@ -247,7 +247,7 @@ describe('OC.Share.ShareDialogView', function() { | |||
expect(slideToggleStub.callCount).toEqual(1); | |||
expect(slideToggleStub.getCall(0).thisValue.eq(0).attr('id')).toEqual('linkPass'); | |||
expect(fakeServer.requests.length).toEqual(0); | |||
// Now untoggle share by link | |||
dialog.$el.find('.linkCheckbox').click(); | |||
dialog.render(); | |||
@@ -402,76 +402,7 @@ describe('OC.Share.ShareDialogView', function() { | |||
expect($.datepicker._defaults.maxDate).toEqual(new Date(2014, 0, 27, 0, 0, 0, 0)); | |||
}); | |||
}); | |||
describe('send link by email', function() { | |||
var sendEmailPrivateLinkStub; | |||
var clock; | |||
beforeEach(function() { | |||
configModel.set({ | |||
isMailPublicNotificationEnabled: true | |||
}); | |||
shareModel.set('linkShare', { | |||
isLinkShare: true, | |||
token: 'tehtoken', | |||
permissions: OC.PERMISSION_READ, | |||
expiration: null | |||
}); | |||
sendEmailPrivateLinkStub = sinon.stub(dialog.model, "sendEmailPrivateLink"); | |||
clock = sinon.useFakeTimers(); | |||
}); | |||
afterEach(function() { | |||
sendEmailPrivateLinkStub.restore(); | |||
clock.restore(); | |||
}); | |||
it('displays form when sending emails is enabled', function() { | |||
$('input[name=mailPublicNotificationEnabled]').val('yes'); | |||
dialog.render(); | |||
expect(dialog.$('.emailPrivateLinkForm').length).toEqual(1); | |||
}); | |||
it('form not rendered when sending emails is disabled', function() { | |||
$('input[name=mailPublicNotificationEnabled]').val('no'); | |||
dialog.render(); | |||
expect(dialog.$('.emailPrivateLinkForm').length).toEqual(0); | |||
}); | |||
it('input cleared on success', function() { | |||
var defer = $.Deferred(); | |||
sendEmailPrivateLinkStub.returns(defer.promise()); | |||
$('input[name=mailPublicNotificationEnabled]').val('yes'); | |||
dialog.render(); | |||
dialog.$el.find('.emailPrivateLinkForm .emailField').val('a@b.c'); | |||
dialog.$el.find('#emailButton').trigger('click'); | |||
expect(sendEmailPrivateLinkStub.callCount).toEqual(1); | |||
expect(dialog.$el.find('.emailPrivateLinkForm .emailField').val()).toEqual('Sending ...'); | |||
defer.resolve(); | |||
expect(dialog.$el.find('.emailPrivateLinkForm .emailField').val()).toEqual('Email sent'); | |||
clock.tick(2000); | |||
expect(dialog.$el.find('.emailPrivateLinkForm .emailField').val()).toEqual(''); | |||
}); | |||
it('input not cleared on failure', function() { | |||
var defer = $.Deferred(); | |||
sendEmailPrivateLinkStub.returns(defer.promise()); | |||
$('input[name=mailPublicNotificationEnabled]').val('yes'); | |||
dialog.render(); | |||
dialog.$el.find('.emailPrivateLinkForm .emailField').val('a@b.c'); | |||
dialog.$el.find('#emailButton').trigger('click'); | |||
expect(sendEmailPrivateLinkStub.callCount).toEqual(1); | |||
expect(dialog.$el.find('.emailPrivateLinkForm .emailField').val()).toEqual('Sending ...'); | |||
defer.reject(); | |||
expect(dialog.$el.find('.emailPrivateLinkForm .emailField').val()).toEqual('a@b.c'); | |||
}); | |||
}); | |||
}); | |||
describe('check for avatar', function() { | |||
beforeEach(function() { |
@@ -464,107 +464,7 @@ describe('OC.Share.ShareItemModel', function() { | |||
}); | |||
}); | |||
describe('sendEmailPrivateLink', function() { | |||
it('succeeds', function() { | |||
/* jshint camelcase: false */ | |||
fetchReshareDeferred.resolve(makeOcsResponse([])); | |||
fetchSharesDeferred.resolve(makeOcsResponse([{ | |||
displayname_owner: 'root', | |||
expiration: null, | |||
file_source: 123, | |||
file_target: '/folder', | |||
id: 20, | |||
item_source: '123', | |||
item_type: 'folder', | |||
mail_send: '0', | |||
parent: null, | |||
path: '/folder', | |||
permissions: OC.PERMISSION_READ, | |||
share_type: OC.Share.SHARE_TYPE_LINK, | |||
share_with: null, | |||
stime: 1403884258, | |||
storage: 1, | |||
token: 'tehtoken', | |||
uid_owner: 'root' | |||
}])); | |||
OC.currentUser = 'root'; | |||
model.fetch(); | |||
var res = model.sendEmailPrivateLink('foo@bar.com'); | |||
expect(res.state()).toEqual('pending'); | |||
expect(fakeServer.requests.length).toEqual(1); | |||
expect(fakeServer.requests[0].url).toEqual(OC.generateUrl('core/ajax/share.php')); | |||
expect(OC.parseQueryString(fakeServer.requests[0].requestBody)).toEqual( | |||
{ | |||
action: 'email', | |||
toaddress: 'foo@bar.com', | |||
link: model.get('linkShare').link, | |||
itemType: 'file', | |||
itemSource: '123', | |||
file: 'shared_file_name.txt', | |||
expiration: '' | |||
} | |||
) | |||
fakeServer.requests[0].respond( | |||
200, | |||
{ 'Content-Type': 'application/json' }, | |||
JSON.stringify({status: 'success'}) | |||
); | |||
expect(res.state()).toEqual('resolved'); | |||
}); | |||
it('fails', function() { | |||
/* jshint camelcase: false */ | |||
fetchReshareDeferred.resolve(makeOcsResponse([])); | |||
fetchSharesDeferred.resolve(makeOcsResponse([{ | |||
displayname_owner: 'root', | |||
expiration: null, | |||
file_source: 123, | |||
file_target: '/folder', | |||
id: 20, | |||
item_source: '123', | |||
item_type: 'folder', | |||
mail_send: '0', | |||
parent: null, | |||
path: '/folder', | |||
permissions: OC.PERMISSION_READ, | |||
share_type: OC.Share.SHARE_TYPE_LINK, | |||
share_with: null, | |||
stime: 1403884258, | |||
storage: 1, | |||
token: 'tehtoken', | |||
uid_owner: 'root' | |||
}])); | |||
OC.currentUser = 'root'; | |||
model.fetch(); | |||
var res = model.sendEmailPrivateLink('foo@bar.com'); | |||
expect(res.state()).toEqual('pending'); | |||
expect(fakeServer.requests.length).toEqual(1); | |||
expect(fakeServer.requests[0].url).toEqual(OC.generateUrl('core/ajax/share.php')); | |||
expect(OC.parseQueryString(fakeServer.requests[0].requestBody)).toEqual( | |||
{ | |||
action: 'email', | |||
toaddress: 'foo@bar.com', | |||
link: model.get('linkShare').link, | |||
itemType: 'file', | |||
itemSource: '123', | |||
file: 'shared_file_name.txt', | |||
expiration: '' | |||
} | |||
) | |||
fakeServer.requests[0].respond( | |||
200, | |||
{ 'Content-Type': 'application/json' }, | |||
JSON.stringify({data: {message: 'fail'}, status: 'error'}) | |||
); | |||
expect(res.state()).toEqual('rejected'); | |||
}); | |||
}); | |||
describe('share permissions', function() { | |||
beforeEach(function() { | |||
oc_appconfig.core.resharingAllowed = true; | |||
@@ -635,7 +535,7 @@ describe('OC.Share.ShareItemModel', function() { | |||
addShareStub = sinon.stub(model, 'addShare'); | |||
updateShareStub = sinon.stub(model, 'updateShare'); | |||
}); | |||
afterEach(function() { | |||
afterEach(function() { | |||
addShareStub.restore(); | |||
updateShareStub.restore(); | |||
}); |
@@ -52,8 +52,6 @@ class Sharing implements ISettings { | |||
// Built-In Sharing | |||
'allowGroupSharing' => $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes'), | |||
'allowLinks' => $this->config->getAppValue('core', 'shareapi_allow_links', 'yes'), | |||
'allowMailNotification' => $this->config->getAppValue('core', 'shareapi_allow_mail_notification', 'no'), | |||
'allowPublicMailNotification' => $this->config->getAppValue('core', 'shareapi_allow_public_notification', 'no'), | |||
'allowPublicUpload' => $this->config->getAppValue('core', 'shareapi_allow_public_upload', 'yes'), | |||
'allowResharing' => $this->config->getAppValue('core', 'shareapi_allow_resharing', 'yes'), | |||
'allowShareDialogUserEnumeration' => $this->config->getAppValue('core', 'shareapi_allow_share_dialog_user_enumeration', 'yes'), |
@@ -80,11 +80,6 @@ | |||
value="1" <?php if ($_['onlyShareWithGroupMembers']) print_unescaped('checked="checked"'); ?> /> | |||
<label for="onlyShareWithGroupMembers"><?php p($l->t('Restrict users to only share with users in their groups'));?></label><br/> | |||
</p> | |||
<p class="<?php if ($_['shareAPIEnabled'] === 'no') p('hidden');?>"> | |||
<input type="checkbox" name="shareapi_allow_mail_notification" id="allowMailNotification" class="checkbox" | |||
value="1" <?php if ($_['allowMailNotification'] === 'yes') print_unescaped('checked="checked"'); ?> /> | |||
<label for="allowMailNotification"><?php p($l->t('Allow users to send mail notification for shared files to other users'));?></label><br/> | |||
</p> | |||
<p class="<?php if ($_['shareAPIEnabled'] === 'no') p('hidden');?>"> | |||
<input type="checkbox" name="shareapi_exclude_groups" id="shareapiExcludeGroups" class="checkbox" | |||
value="1" <?php if ($_['shareExcludeGroups']) print_unescaped('checked="checked"'); ?> /> |
@@ -62,55 +62,45 @@ class SharingTest extends TestCase { | |||
$this->config | |||
->expects($this->at(3)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_mail_notification', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(4)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_public_notification', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(5)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_public_upload', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(6)) | |||
->expects($this->at(4)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_resharing', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(7)) | |||
->expects($this->at(5)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_share_dialog_user_enumeration', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(8)) | |||
->expects($this->at(6)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_enabled', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(9)) | |||
->expects($this->at(7)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_default_expire_date', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(10)) | |||
->expects($this->at(8)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_expire_after_n_days', '7') | |||
->willReturn('7'); | |||
$this->config | |||
->expects($this->at(11)) | |||
->expects($this->at(9)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_enforce_expire_date', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(12)) | |||
->expects($this->at(10)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_exclude_groups', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(13)) | |||
->expects($this->at(11)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_public_link_disclaimertext', null) | |||
->willReturn('Lorem ipsum'); | |||
@@ -121,8 +111,6 @@ class SharingTest extends TestCase { | |||
[ | |||
'allowGroupSharing' => 'yes', | |||
'allowLinks' => 'yes', | |||
'allowMailNotification' => 'no', | |||
'allowPublicMailNotification' => 'no', | |||
'allowPublicUpload' => 'yes', | |||
'allowResharing' => 'yes', | |||
'allowShareDialogUserEnumeration' => 'yes', | |||
@@ -161,55 +149,45 @@ class SharingTest extends TestCase { | |||
$this->config | |||
->expects($this->at(3)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_mail_notification', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(4)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_public_notification', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(5)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_public_upload', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(6)) | |||
->expects($this->at(4)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_resharing', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(7)) | |||
->expects($this->at(5)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_allow_share_dialog_user_enumeration', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(8)) | |||
->expects($this->at(6)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_enabled', 'yes') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(9)) | |||
->expects($this->at(7)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_default_expire_date', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(10)) | |||
->expects($this->at(8)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_expire_after_n_days', '7') | |||
->willReturn('7'); | |||
$this->config | |||
->expects($this->at(11)) | |||
->expects($this->at(9)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_enforce_expire_date', 'no') | |||
->willReturn('no'); | |||
$this->config | |||
->expects($this->at(12)) | |||
->expects($this->at(10)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_exclude_groups', 'no') | |||
->willReturn('yes'); | |||
$this->config | |||
->expects($this->at(13)) | |||
->expects($this->at(11)) | |||
->method('getAppValue') | |||
->with('core', 'shareapi_public_link_disclaimertext', null) | |||
->willReturn('Lorem ipsum'); | |||
@@ -220,8 +198,6 @@ class SharingTest extends TestCase { | |||
[ | |||
'allowGroupSharing' => 'yes', | |||
'allowLinks' => 'yes', | |||
'allowMailNotification' => 'no', | |||
'allowPublicMailNotification' => 'no', | |||
'allowPublicUpload' => 'yes', | |||
'allowResharing' => 'yes', | |||
'allowShareDialogUserEnumeration' => 'yes', |