Merge branch 'staging' into ooPassword
This commit is contained in:
commit
580731d560
8 changed files with 64 additions and 82 deletions
|
@ -103,7 +103,7 @@ define([
|
|||
])*/
|
||||
])
|
||||
]),
|
||||
h('div.cp-version-footer', "CryptPad v3.5.0 (Falkland-wolf)")
|
||||
h('div.cp-version-footer', "CryptPad v3.6.0 (GoldenFrog)")
|
||||
]);
|
||||
};
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
& {
|
||||
// Share modal
|
||||
.msg.cp-inline-radio-group {
|
||||
overflow: unset !important;
|
||||
.radio-group {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
|
|
@ -12,6 +12,12 @@
|
|||
flex-wrap: wrap;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
&:not(.large) {
|
||||
.cp-usergrid-grid {
|
||||
margin: -3px;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
}
|
||||
&.cp-usergrid-empty {
|
||||
.cp-usergrid-grid, .cp-usergrid-filter {
|
||||
display: none;
|
||||
|
@ -42,17 +48,12 @@
|
|||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 5px;
|
||||
margin-bottom: 6px;
|
||||
margin-right: 6px;
|
||||
margin: 3px;
|
||||
cursor: default;
|
||||
transition: order 0.5s, background-color 0.5s;
|
||||
margin-top: 1px;
|
||||
.tools_unselectable();
|
||||
|
||||
&:nth-child(6n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&.cp-selected {
|
||||
background-color: @colortheme_alertify-primary;
|
||||
color: @colortheme_alertify-primary-text;
|
||||
|
@ -79,6 +80,7 @@
|
|||
width: 140px;
|
||||
height: 35px;
|
||||
flex-flow: row;
|
||||
margin: 0;
|
||||
margin-right: 15px;
|
||||
margin-bottom: 1px;
|
||||
&:nth-child(3n) {
|
||||
|
|
2
package-lock.json
generated
2
package-lock.json
generated
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "cryptpad",
|
||||
"version": "3.5.0",
|
||||
"version": "3.6.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "cryptpad",
|
||||
"description": "realtime collaborative visual editor with zero knowlege server",
|
||||
"version": "3.5.0",
|
||||
"version": "3.6.0",
|
||||
"license": "AGPL-3.0+",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
|
|
@ -595,54 +595,38 @@ define([
|
|||
}, opts);
|
||||
|
||||
var input = h('input.cp-password-input', attributes);
|
||||
//var reveal = UI.createCheckbox('cp-password-reveal', Messages.password_show);
|
||||
var eye = h('span.fa.fa-eye.cp-password-reveal');
|
||||
|
||||
/*
|
||||
$(reveal).find('input').on('change', function () {
|
||||
if($(this).is(':checked')) {
|
||||
$(input).prop('type', 'text');
|
||||
$(input).focus();
|
||||
return;
|
||||
}
|
||||
$(input).prop('type', 'password');
|
||||
$(input).focus();
|
||||
});
|
||||
*/
|
||||
var $eye = $(eye);
|
||||
var $input = $(input);
|
||||
|
||||
if (displayEye) {
|
||||
$(eye).mousedown(function () {
|
||||
$(input).prop('type', 'text');
|
||||
$(input).focus();
|
||||
$eye.mousedown(function () {
|
||||
$input.prop('type', 'text');
|
||||
$input.focus();
|
||||
}).mouseup(function(){
|
||||
$(input).prop('type', 'password');
|
||||
$(input).focus();
|
||||
$input.prop('type', 'password');
|
||||
$input.focus();
|
||||
}).mouseout(function(){
|
||||
$(input).prop('type', 'password');
|
||||
$(input).focus();
|
||||
$input.prop('type', 'password');
|
||||
$input.focus();
|
||||
});
|
||||
} else {
|
||||
$(eye).click(function () {
|
||||
if ($(this).hasClass('fa-eye')) {
|
||||
$(input).prop('type', 'text');
|
||||
$(input).focus();
|
||||
$(this).removeClass('fa-eye').addClass('fa-eye-slash');
|
||||
$eye.click(function () {
|
||||
if ($eye.hasClass('fa-eye')) {
|
||||
$input.prop('type', 'text');
|
||||
$input.focus();
|
||||
$eye.removeClass('fa-eye').addClass('fa-eye-slash');
|
||||
return;
|
||||
}
|
||||
$(input).prop('type', 'password');
|
||||
$(input).focus();
|
||||
$(this).removeClass('fa-eye-slash').addClass('fa-eye');
|
||||
$input.prop('type', 'password');
|
||||
$input.focus();
|
||||
$eye.removeClass('fa-eye-slash').addClass('fa-eye');
|
||||
});
|
||||
}
|
||||
/*if (displayEye) {
|
||||
$(reveal).hide();
|
||||
} else {
|
||||
$(eye).hide();
|
||||
}*/
|
||||
|
||||
return h('span.cp-password-container', [
|
||||
input,
|
||||
//reveal,
|
||||
eye
|
||||
]);
|
||||
};
|
||||
|
@ -685,12 +669,6 @@ define([
|
|||
|
||||
var LOADING = 'cp-loading';
|
||||
|
||||
/*var getRandomTip = function () {
|
||||
if (!Messages.tips || !Object.keys(Messages.tips).length) { return ''; }
|
||||
var keys = Object.keys(Messages.tips);
|
||||
var rdm = Math.floor(Math.random() * keys.length);
|
||||
return Messages.tips[keys[rdm]];
|
||||
};*/
|
||||
var loading = {
|
||||
error: false,
|
||||
driveState: 0,
|
||||
|
@ -700,7 +678,7 @@ define([
|
|||
config = config || {};
|
||||
var loadingText = config.loadingText;
|
||||
var todo = function () {
|
||||
var $loading = $('#' + LOADING); //.show();
|
||||
var $loading = $('#' + LOADING);
|
||||
$loading.css('display', '');
|
||||
$loading.removeClass('cp-loading-hidden');
|
||||
$('.cp-loading-spinner-container').show();
|
||||
|
@ -963,19 +941,21 @@ define([
|
|||
$.extend(markOpts, opts.mark || {});
|
||||
|
||||
var input = h('input', inputOpts);
|
||||
var $input = $(input);
|
||||
var mark = h('span.cp-checkmark-mark', markOpts);
|
||||
var $mark = $(mark);
|
||||
var label = h('span.cp-checkmark-label', labelTxt);
|
||||
|
||||
$(mark).keydown(function (e) {
|
||||
$mark.keydown(function (e) {
|
||||
if (e.which === 32) {
|
||||
e.stopPropagation();
|
||||
e.preventDefault();
|
||||
$(input).prop('checked', !$(input).is(':checked'));
|
||||
$(input).change();
|
||||
$input.prop('checked', !$input.is(':checked'));
|
||||
$input.change();
|
||||
}
|
||||
});
|
||||
|
||||
$(input).change(function () { $(mark).focus(); });
|
||||
$input.change(function () { $mark.focus(); });
|
||||
|
||||
return h('label.cp-checkmark', labelOpts, [
|
||||
input,
|
||||
|
@ -1049,28 +1029,30 @@ define([
|
|||
setHTML(h('div.cp-corner-footer'), footer)
|
||||
]);
|
||||
|
||||
var $popup = $(popup);
|
||||
|
||||
$(minimize).click(function () {
|
||||
$(popup).addClass('cp-minimized');
|
||||
$popup.addClass('cp-minimized');
|
||||
});
|
||||
$(maximize).click(function () {
|
||||
$(popup).removeClass('cp-minimized');
|
||||
$popup.removeClass('cp-minimized');
|
||||
});
|
||||
|
||||
if (opts.hidden) {
|
||||
$(popup).addClass('cp-minimized');
|
||||
$popup.addClass('cp-minimized');
|
||||
}
|
||||
if (opts.big) {
|
||||
$(popup).addClass('cp-corner-big');
|
||||
$popup.addClass('cp-corner-big');
|
||||
}
|
||||
|
||||
var hide = function () {
|
||||
$(popup).hide();
|
||||
$popup.hide();
|
||||
};
|
||||
var show = function () {
|
||||
$(popup).show();
|
||||
$popup.show();
|
||||
};
|
||||
var deletePopup = function () {
|
||||
$(popup).remove();
|
||||
$popup.remove();
|
||||
};
|
||||
|
||||
$('body').append(popup);
|
||||
|
|
|
@ -685,8 +685,6 @@ define([
|
|||
}));
|
||||
}
|
||||
|
||||
// XXX problem with the hardcoded ": " here
|
||||
// possibly duplicate translation keys
|
||||
if (data.tags && Array.isArray(data.tags)) {
|
||||
$d.append(h('div.cp-app-prop', [Messages.fm_prop_tagsList, h('br'), h('span.cp-app-prop-content', data.tags.join(', '))]));
|
||||
}
|
||||
|
@ -698,7 +696,7 @@ define([
|
|||
if (data.atime) {
|
||||
$d.append(h('div.cp-app-prop', [Messages.fm_lastAccess, h('br'), h('span.cp-app-prop-content', new Date(data.atime).toLocaleString())]));
|
||||
}
|
||||
|
||||
|
||||
if (common.isLoggedIn()) {
|
||||
// check the size of this file...
|
||||
var bytes = 0;
|
||||
|
@ -792,8 +790,8 @@ define([
|
|||
placeholder: Messages.share_filterFriend
|
||||
});
|
||||
|
||||
var div = h('div.cp-usergrid-container' + noOthers, [
|
||||
h('label', label),
|
||||
var div = h('div.cp-usergrid-container' + noOthers + (config.large?'.large':''), [
|
||||
label ? h('label', label) : undefined,
|
||||
h('div.cp-usergrid-filter', (config.noFilter || config.noSelect) ? undefined : [
|
||||
inputFilter,
|
||||
buttonSelect,
|
||||
|
@ -1043,7 +1041,7 @@ define([
|
|||
present: present
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
var getLinkValue = function (initValue) {
|
||||
var val = initValue || {};
|
||||
var edit = val.edit !== undefined ? val.edit : Util.isChecked($rights.find('#cp-share-editable-true'));
|
||||
|
@ -1080,7 +1078,7 @@ define([
|
|||
var linkButtons = [
|
||||
makeCancelButton(),
|
||||
!config.sharedFolder && {
|
||||
className: 'secondary', // XXX style this diferently than cancel
|
||||
className: 'secondary',
|
||||
name: Messages.share_linkOpen,
|
||||
onClick: function () {
|
||||
saveValue();
|
||||
|
@ -1125,7 +1123,7 @@ define([
|
|||
onClose: config.onClose,
|
||||
});
|
||||
|
||||
// Share with contacts tab
|
||||
// Share with contacts tab
|
||||
|
||||
var hasFriends = Object.keys(config.friends || {}).length !== 0;
|
||||
var onFriendShare = Util.mkEvent();
|
||||
|
@ -1137,7 +1135,7 @@ define([
|
|||
|
||||
onFriendShare.reg(saveValue);
|
||||
|
||||
// XXX Don't display access rights if no contacts
|
||||
// XXX Don't display access rights if no contacts
|
||||
var contactsContent = h('div.cp-share-modal');
|
||||
$(contactsContent).append(friendsList);
|
||||
|
||||
|
@ -1174,11 +1172,12 @@ define([
|
|||
}];
|
||||
|
||||
var embed = h('div.cp-share-modal', embedContent);
|
||||
var $embed = $(embed);
|
||||
|
||||
// update values for link preview when radio btns change
|
||||
$(embed).find('#cp-embed-link-preview').val(getEmbedValue());
|
||||
$embed.find('#cp-embed-link-preview').val(getEmbedValue());
|
||||
$rights.find('input[type="radio"]').on('change', function () {
|
||||
$(embed).find('#cp-embed-link-preview').val(getEmbedValue());
|
||||
$embed.find('#cp-embed-link-preview').val(getEmbedValue());
|
||||
});
|
||||
|
||||
var frameEmbed = UI.dialog.customModal(embed, {
|
||||
|
@ -1211,8 +1210,7 @@ define([
|
|||
var modal = UI.dialog.tabs(tabs);
|
||||
$(modal).find('.alertify-tabs-titles').after(rights);
|
||||
|
||||
// XXX
|
||||
// disable edit share options if you don't have edit rights
|
||||
// disable edit share options if you don't have edit rights
|
||||
if (!hashes.editHash) {
|
||||
$rights.find('#cp-share-editable-false').attr('checked', true);
|
||||
$rights.find('#cp-share-editable-true').removeAttr('checked').attr('disabled', true);
|
||||
|
@ -1287,7 +1285,7 @@ define([
|
|||
onClick: function () {
|
||||
var v = getLinkValue();
|
||||
var success = Clipboard.copy(v);
|
||||
if (success) { UI.log(Messages.shareSuccess);
|
||||
if (success) { UI.log(Messages.shareSuccess);
|
||||
}
|
||||
},
|
||||
keys: [13]
|
||||
|
@ -1299,7 +1297,7 @@ define([
|
|||
onClose: config.onClose,
|
||||
});
|
||||
|
||||
// share with contacts tab
|
||||
// share with contacts tab
|
||||
var hasFriends = Object.keys(config.friends || {}).length !== 0;
|
||||
|
||||
var friendsObject = hasFriends ? createShareWithFriends(config, null, getLinkValue) : {
|
||||
|
@ -1374,7 +1372,6 @@ define([
|
|||
return modal;
|
||||
};
|
||||
|
||||
|
||||
UIElements.createInviteTeamModal = function (config) {
|
||||
var common = config.common;
|
||||
var hasFriends = Object.keys(config.friends || {}).length !== 0;
|
||||
|
@ -2351,7 +2348,7 @@ define([
|
|||
prettyUsage = Messages._getKey('formattedMB', [usage]);
|
||||
prettyLimit = Messages._getKey('formattedMB', [limit]);
|
||||
}
|
||||
|
||||
|
||||
if (quota < 0.8) { $usage.addClass('cp-limit-usage-normal'); }
|
||||
else if (quota < 1) { $usage.addClass('cp-limit-usage-warning'); }
|
||||
else { $usage.addClass('cp-limit-usage-above'); }
|
||||
|
@ -3531,15 +3528,16 @@ define([
|
|||
if (isError) { error = setHTML(h('p.cp-password-error'), Messages.password_error); }
|
||||
var info = h('p.cp-password-info', Messages.password_info);
|
||||
var password = UI.passwordInput({placeholder: Messages.password_placeholder});
|
||||
var $password = $(password);
|
||||
var button = h('button', Messages.password_submit);
|
||||
cfg = cfg || {};
|
||||
|
||||
if (cfg.value && !isError) {
|
||||
$(password).find('.cp-password-input').val(cfg.value);
|
||||
$password.find('.cp-password-input').val(cfg.value);
|
||||
}
|
||||
|
||||
var submit = function () {
|
||||
var value = $(password).find('.cp-password-input').val();
|
||||
var value = $password.find('.cp-password-input').val();
|
||||
UI.addLoadingScreen();
|
||||
common.getSframeChannel().query('Q_PAD_PASSWORD_VALUE', value, function (err, data) {
|
||||
if (!data) {
|
||||
|
@ -3547,7 +3545,7 @@ define([
|
|||
}
|
||||
});
|
||||
};
|
||||
$(password).find('.cp-password-input').on('keydown', function (e) { if (e.which === 13) { submit(); } });
|
||||
$password.find('.cp-password-input').on('keydown', function (e) { if (e.which === 13) { submit(); } });
|
||||
$(button).on('click', function () { submit(); });
|
||||
|
||||
|
||||
|
@ -3561,7 +3559,7 @@ define([
|
|||
]);
|
||||
UI.errorLoadingScreen(block);
|
||||
|
||||
$(password).find('.cp-password-input').focus();
|
||||
$password.find('.cp-password-input').focus();
|
||||
};
|
||||
|
||||
var crowdfundingState = false;
|
||||
|
|
|
@ -167,7 +167,6 @@ define([
|
|||
if (fd.rtChannel) {
|
||||
removeOwnedChannel(fd.rtChannel, function () {});
|
||||
}
|
||||
// XXX fd.lastVersion to delete the encrypted cp?
|
||||
}
|
||||
if (fd.lastVersion) { toClean.push(Hash.hrefToHexChannelId(fd.lastVersion)); }
|
||||
if (fd.rtChannel) { toClean.push(fd.rtChannel); }
|
||||
|
|
Loading…
Reference in a new issue