Disable allow list for files and shared folders

pull/1/head
yflory 5 years ago
parent 597f417ad6
commit 9d5bf7e1bb

@ -167,7 +167,6 @@ define([
delete _friends[curve]; delete _friends[curve];
} }
}); });
// XXX if no more friends, display message...
if (!Object.keys(_friends).length) { if (!Object.keys(_friends).length) {
$div.append(h('div.cp-app-prop', [ $div.append(h('div.cp-app-prop', [
Messages.contacts, Messages.contacts,
@ -570,7 +569,7 @@ define([
}).filter(function (x) { return x; }); }).filter(function (x) { return x; });
nThen(function (waitFor) { nThen(function (waitFor) {
var msg = Messages.owner_addConfirm; var msg = Messages.owner_addConfirm; // XXX change to use allow list here
UI.confirm(msg, waitFor(function (yes) { UI.confirm(msg, waitFor(function (yes) {
if (!yes) { if (!yes) {
waitFor.abort(); waitFor.abort();
@ -896,6 +895,10 @@ define([
})); }));
} }
// Stop here for files: no allow list, no access request
// Also stop for shared folders
if (parsed.hashData.type !== 'pad' || parsed.type === 'drive') { return h('div', content); }
// Request edit access // Request edit access
if (data.roHref && !data.href) { if (data.roHref && !data.href) {
var requestButton = h('button.btn.btn-secondary.no-margin.cp-access-margin-right', var requestButton = h('button.btn.btn-secondary.no-margin.cp-access-margin-right',
@ -940,7 +943,7 @@ define([
var canMute = data.mailbox && owned === true && ( var canMute = data.mailbox && owned === true && (
(typeof (data.mailbox) === "string" && data.owners[0] === edPublic) || (typeof (data.mailbox) === "string" && data.owners[0] === edPublic) ||
data.mailbox[edPublic]); data.mailbox[edPublic]);
if (owned === true) { // XXX not for files if (owned === true) {
var cbox = UI.createCheckbox('cp-access-mute', Messages.access_muteRequests, !canMute); var cbox = UI.createCheckbox('cp-access-mute', Messages.access_muteRequests, !canMute);
var $cbox = $(cbox); var $cbox = $(cbox);
var spinner = UI.makeSpinner($cbox); var spinner = UI.makeSpinner($cbox);
@ -1038,7 +1041,8 @@ define([
Access.getAccessModal = function (common, opts, cb) { Access.getAccessModal = function (common, opts, cb) {
var data; var data;
var tab1, tab2, tab3; var tab1, tab2, tab3;
var owned = false; var disabled = false;
var allowDisabled = false;
var button = [{ var button = [{
className: 'cancel', className: 'cancel',
name: Messages.filePicker_close, name: Messages.filePicker_close,
@ -1054,7 +1058,10 @@ define([
data = _data; data = _data;
})); }));
}).nThen(function (waitFor) { }).nThen(function (waitFor) {
owned = isOwned(common, data); var owned = isOwned(common, data);
var parsed = Hash.parsePadUrl(data.href || data.roHref);
disabled = !owned || !parsed.hashData || parsed.hashData.type !== 'pad';
allowDisabled = parsed.type === 'drive';
getAccessTab(common, data, opts, waitFor(function (e, c) { getAccessTab(common, data, opts, waitFor(function (e, c) {
if (e) { if (e) {
@ -1066,18 +1073,19 @@ define([
}); });
})); }));
if (!owned) { return; } if (disabled) { return; }
// XXX if "file" ==> don't show "allow" and "owners"
getAllowTab(common, data, opts, waitFor(function (e, c) { if (!allowDisabled) {
if (e) { getAllowTab(common, data, opts, waitFor(function (e, c) {
waitFor.abort(); if (e) {
return void cb(e); waitFor.abort();
} return void cb(e);
tab2 = UI.dialog.customModal(c, { }
buttons: button tab2 = UI.dialog.customModal(c, {
}); buttons: button
})); });
}));
}
getOwnersTab(common, data, opts, waitFor(function (e, c) { getOwnersTab(common, data, opts, waitFor(function (e, c) {
if (e) { if (e) {
waitFor.abort(); waitFor.abort();
@ -1098,12 +1106,12 @@ define([
content: tab1 content: tab1
}, { }, {
title: Messages.access_allow, title: Messages.access_allow,
disabled: !owned, disabled: disabled || allowDisabled,
icon: "fa fa-list", icon: "fa fa-list",
content: tab2 content: tab2
}, { }, {
title: Messages.creation_owners, title: Messages.creation_owners,
disabled: !owned, disabled: disabled,
icon: "fa fa-id-badge", icon: "fa fa-id-badge",
content: tab3 content: tab3
}]); }]);

@ -900,10 +900,11 @@ define([
cb = cb || function () {}; cb = cb || function () {};
var sfId = Env.user.userObject.getSFIdFromHref(data.href); var sfId = Env.user.userObject.getSFIdFromHref(data.href);
if (sfId) { if (sfId) {
var sfData = Env.user.proxy[UserObject.SHARED_FOLDERS][sfId]; var sfData = getSharedFolderData(Env, sfId);
var sfValue = data.attr ? sfData[data.attr] : JSON.parse(JSON.stringify(sfData));
setTimeout(function () { setTimeout(function () {
cb(null, { cb(null, {
value: sfData[data.attr], value: sfValue,
atime: 1 atime: 1
}); });
}); });

Loading…
Cancel
Save