Merge pull request #8522 from owncloud/sharing_ux_improvements
Sharing ux improvements
This commit is contained in:
commit
dab3cb65cf
|
@ -11,7 +11,7 @@
|
||||||
margin-right:112px;
|
margin-right:112px;
|
||||||
position:absolute;
|
position:absolute;
|
||||||
right:0;
|
right:0;
|
||||||
width:320px;
|
width:420px;
|
||||||
z-index:500;
|
z-index:500;
|
||||||
padding:16px;
|
padding:16px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,13 @@ foreach(OC_App::getEnabledApps() as $app) {
|
||||||
$apps_paths[$app] = OC_App::getAppWebPath($app);
|
$apps_paths[$app] = OC_App::getAppWebPath($app);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$defaultExpireDateEnabled = \OCP\Config::getAppValue('core', 'shareapi_default_expire_date', 'no');
|
||||||
|
$defaultExpireDate = $enforceDefaultExpireDate = null;
|
||||||
|
if ($defaultExpireDateEnabled === 'yes') {
|
||||||
|
$defaultExpireDate = \OCP\Config::getAppValue('core', 'shareapi_expire_after_n_days', '7');
|
||||||
|
$enforceDefaultExpireDate = \OCP\Config::getAppValue('core', 'shareapi_enforce_expire_date', 'no');
|
||||||
|
}
|
||||||
|
|
||||||
$array = array(
|
$array = array(
|
||||||
"oc_debug" => (defined('DEBUG') && DEBUG) ? 'true' : 'false',
|
"oc_debug" => (defined('DEBUG') && DEBUG) ? 'true' : 'false',
|
||||||
"oc_isadmin" => OC_User::isAdminUser(OC_User::getUser()) ? 'true' : 'false',
|
"oc_isadmin" => OC_User::isAdminUser(OC_User::getUser()) ? 'true' : 'false',
|
||||||
|
@ -67,6 +74,14 @@ $array = array(
|
||||||
'versionstring' => OC_Util::getVersionString(),
|
'versionstring' => OC_Util::getVersionString(),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
"oc_appconfig" => json_encode(
|
||||||
|
array("core" => array(
|
||||||
|
'defaultExpireDateEnabled' => $defaultExpireDateEnabled,
|
||||||
|
'defaultExpireDate' => $defaultExpireDate,
|
||||||
|
'defaultExpireDateEnforced' => $enforceDefaultExpireDate,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
"oc_defaults" => json_encode(
|
"oc_defaults" => json_encode(
|
||||||
array(
|
array(
|
||||||
'entity' => $defaults->getEntity(),
|
'entity' => $defaults->getEntity(),
|
||||||
|
|
|
@ -219,7 +219,18 @@ OC.Share={
|
||||||
html += '<div id="link">';
|
html += '<div id="link">';
|
||||||
html += '<input type="checkbox" name="linkCheckbox" id="linkCheckbox" value="1" /><label for="linkCheckbox">'+t('core', 'Share link')+'</label>';
|
html += '<input type="checkbox" name="linkCheckbox" id="linkCheckbox" value="1" /><label for="linkCheckbox">'+t('core', 'Share link')+'</label>';
|
||||||
html += '<br />';
|
html += '<br />';
|
||||||
|
|
||||||
|
var defaultExpireMessage = '';
|
||||||
|
if ((itemType === 'folder' || itemType === 'file') && oc_appconfig.core.defaultExpireDateEnabled === 'yes') {
|
||||||
|
if (oc_appconfig.core.defaultExpireDateEnforced === 'yes') {
|
||||||
|
defaultExpireMessage = t('core', 'The public link will expire no later than {days} days after it is created', {'days': oc_appconfig.core.defaultExpireDate}) + '<br/>';
|
||||||
|
} else {
|
||||||
|
defaultExpireMessage = t('core', 'By default the public link will expire after {days} days', {'days': oc_appconfig.core.defaultExpireDate}) + '<br/>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
html += '<input id="linkText" type="text" readonly="readonly" />';
|
html += '<input id="linkText" type="text" readonly="readonly" />';
|
||||||
|
|
||||||
html += '<input type="checkbox" name="showPassword" id="showPassword" value="1" style="display:none;" /><label for="showPassword" style="display:none;">'+t('core', 'Password protect')+'</label>';
|
html += '<input type="checkbox" name="showPassword" id="showPassword" value="1" style="display:none;" /><label for="showPassword" style="display:none;">'+t('core', 'Password protect')+'</label>';
|
||||||
html += '<div id="linkPass">';
|
html += '<div id="linkPass">';
|
||||||
html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Password')+'" />';
|
html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Password')+'" />';
|
||||||
|
@ -239,6 +250,7 @@ OC.Share={
|
||||||
html += '<div id="expiration">';
|
html += '<div id="expiration">';
|
||||||
html += '<input type="checkbox" name="expirationCheckbox" id="expirationCheckbox" value="1" /><label for="expirationCheckbox">'+t('core', 'Set expiration date')+'</label>';
|
html += '<input type="checkbox" name="expirationCheckbox" id="expirationCheckbox" value="1" /><label for="expirationCheckbox">'+t('core', 'Set expiration date')+'</label>';
|
||||||
html += '<input id="expirationDate" type="text" placeholder="'+t('core', 'Expiration date')+'" style="display:none; width:90%;" />';
|
html += '<input id="expirationDate" type="text" placeholder="'+t('core', 'Expiration date')+'" style="display:none; width:90%;" />';
|
||||||
|
html += '<div id="defaultExpireMessage">'+defaultExpireMessage+'</div>';
|
||||||
html += '</div>';
|
html += '</div>';
|
||||||
dropDownEl = $(html);
|
dropDownEl = $(html);
|
||||||
dropDownEl = dropDownEl.appendTo(appendTo);
|
dropDownEl = dropDownEl.appendTo(appendTo);
|
||||||
|
@ -490,19 +502,20 @@ OC.Share={
|
||||||
$('#linkPassText').attr('placeholder', '**********');
|
$('#linkPassText').attr('placeholder', '**********');
|
||||||
}
|
}
|
||||||
$('#expiration').show();
|
$('#expiration').show();
|
||||||
|
$('#defaultExpireMessage').show();
|
||||||
$('#emailPrivateLink #email').show();
|
$('#emailPrivateLink #email').show();
|
||||||
$('#emailPrivateLink #emailButton').show();
|
$('#emailPrivateLink #emailButton').show();
|
||||||
$('#allowPublicUploadWrapper').show();
|
$('#allowPublicUploadWrapper').show();
|
||||||
},
|
},
|
||||||
hideLink:function() {
|
hideLink:function() {
|
||||||
$('#linkText').hide('blind');
|
$('#linkText').hide('blind');
|
||||||
|
$('#defaultExpireMessage').hide();
|
||||||
$('#showPassword').hide();
|
$('#showPassword').hide();
|
||||||
$('#showPassword+label').hide();
|
$('#showPassword+label').hide();
|
||||||
$('#linkPass').hide();
|
$('#linkPass').hide();
|
||||||
$('#emailPrivateLink #email').hide();
|
$('#emailPrivateLink #email').hide();
|
||||||
$('#emailPrivateLink #emailButton').hide();
|
$('#emailPrivateLink #emailButton').hide();
|
||||||
$('#allowPublicUploadWrapper').hide();
|
$('#allowPublicUploadWrapper').hide();
|
||||||
$('#expirationDate').hide();
|
|
||||||
},
|
},
|
||||||
dirname:function(path) {
|
dirname:function(path) {
|
||||||
return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
|
return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
|
||||||
|
@ -734,6 +747,9 @@ $(document).ready(function() {
|
||||||
OC.dialogs.alert(t('core', 'Error unsetting expiration date'), t('core', 'Error'));
|
OC.dialogs.alert(t('core', 'Error unsetting expiration date'), t('core', 'Error'));
|
||||||
}
|
}
|
||||||
$('#expirationDate').hide('blind');
|
$('#expirationDate').hide('blind');
|
||||||
|
if (oc_appconfig.core.defaultExpireDateEnforced === 'no') {
|
||||||
|
$('#defaultExpireMessage'). show('blind');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -756,6 +772,10 @@ $(document).ready(function() {
|
||||||
expirationDateField.tipsy({gravity: 'n', fade: true});
|
expirationDateField.tipsy({gravity: 'n', fade: true});
|
||||||
expirationDateField.tipsy('show');
|
expirationDateField.tipsy('show');
|
||||||
expirationDateField.addClass('error');
|
expirationDateField.addClass('error');
|
||||||
|
} else {
|
||||||
|
if (oc_appconfig.core.defaultExpireDateEnforced === 'no') {
|
||||||
|
$('#defaultExpireMessage'). hide('blind');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -132,7 +132,8 @@ table.grid td.date{
|
||||||
span.securitywarning {color:#C33; font-weight:bold; }
|
span.securitywarning {color:#C33; font-weight:bold; }
|
||||||
span.connectionwarning {color:#933; font-weight:bold; }
|
span.connectionwarning {color:#933; font-weight:bold; }
|
||||||
table.shareAPI td { padding-bottom: 0.8em; }
|
table.shareAPI td { padding-bottom: 0.8em; }
|
||||||
table.shareAPI input#shareapi_expire_after_n_days {width: 25px;}
|
table.shareAPI input#shareapiExpireAfterNDays {width: 25px;}
|
||||||
|
table.shareAPI .indent { padding-left: 2em; }
|
||||||
|
|
||||||
#mail_settings p label:first-child {
|
#mail_settings p label:first-child {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
|
|
@ -31,6 +31,14 @@ $(document).ready(function(){
|
||||||
OC.AppConfig.setValue('core', $(this).attr('name'), value);
|
OC.AppConfig.setValue('core', $(this).attr('name'), value);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('#shareapiDefaultExpireDate').change(function() {
|
||||||
|
$("#setDefaultExpireDate").toggleClass('hidden', !this.checked);
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#allowLinks').change(function() {
|
||||||
|
$("#publicLinkSettings").toggleClass('hidden', !this.checked);
|
||||||
|
});
|
||||||
|
|
||||||
$('#security').change(function(){
|
$('#security').change(function(){
|
||||||
$.post(OC.filePath('settings','ajax','setsecurity.php'), { enforceHTTPS: $('#forcessl').val() },function(){} );
|
$.post(OC.filePath('settings','ajax','setsecurity.php'), { enforceHTTPS: $('#forcessl').val() },function(){} );
|
||||||
});
|
});
|
||||||
|
|
|
@ -217,15 +217,31 @@ if (!$_['internetconnectionworking']) {
|
||||||
<input type="checkbox" name="shareapi_allow_links" id="allowLinks"
|
<input type="checkbox" name="shareapi_allow_links" id="allowLinks"
|
||||||
value="1" <?php if ($_['allowLinks'] === 'yes') print_unescaped('checked="checked"'); ?> />
|
value="1" <?php if ($_['allowLinks'] === 'yes') print_unescaped('checked="checked"'); ?> />
|
||||||
<label for="allowLinks"><?php p($l->t('Allow links'));?></label><br/>
|
<label for="allowLinks"><?php p($l->t('Allow links'));?></label><br/>
|
||||||
<em><?php p($l->t('Allow users to share items to the public with links')); ?></em>
|
|
||||||
</td>
|
<div <?php ($_['allowLinks'] === 'yes') ? print_unescaped('class="indent"') : print_unescaped('class="hidden indent"');?> id="publicLinkSettings">
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td <?php if ($_['shareAPIEnabled'] == 'no') print_unescaped('class="hidden"');?>>
|
|
||||||
<input type="checkbox" name="shareapi_allow_public_upload" id="allowPublicUpload"
|
<input type="checkbox" name="shareapi_allow_public_upload" id="allowPublicUpload"
|
||||||
value="1" <?php if ($_['allowPublicUpload'] == 'yes') print_unescaped('checked="checked"'); ?> />
|
value="1" <?php if ($_['allowPublicUpload'] == 'yes') print_unescaped('checked="checked"'); ?> />
|
||||||
<label for="allowPublicUpload"><?php p($l->t('Allow public uploads'));?></label><br/>
|
<label for="allowPublicUpload"><?php p($l->t('Allow public uploads'));?></label><br/>
|
||||||
<em><?php p($l->t('Allow users to enable others to upload into their publicly shared folders')); ?></em>
|
|
||||||
|
<input type="checkbox" name="shareapi_default_expire_date" id="shareapiDefaultExpireDate"
|
||||||
|
value="1" <?php if ($_['shareDefaultExpireDateSet'] === 'yes') print_unescaped('checked="checked"'); ?> />
|
||||||
|
<label for="shareapiDefaultExpireDate"><?php p($l->t('Set default expiration date'));?></label><br/>
|
||||||
|
<div id="setDefaultExpireDate" <?php ($_['shareDefaultExpireDateSet'] === 'no') ? print_unescaped('class="hidden indent"') : print_unescaped('class="indent"');?>>
|
||||||
|
<?php p($l->t( 'Expire after ' )); ?>
|
||||||
|
<input type="text" name='shareapi_expire_after_n_days' id="shareapiExpireAfterNDays" placeholder="<?php p('7')?>"
|
||||||
|
value='<?php p($_['shareExpireAfterNDays']) ?>' />
|
||||||
|
<?php p($l->t( 'days' )); ?>
|
||||||
|
<input type="checkbox" name="shareapi_enforce_expire_date" id="shareapiEnforceExpireDate"
|
||||||
|
value="1" <?php if ($_['shareEnforceExpireDate'] == 'yes') print_unescaped('checked="checked"'); ?> />
|
||||||
|
<label for="shareapiEnforceExpireDate"><?php p($l->t('Enforce expiration date'));?></label><br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<em><?php p($l->t('Allow users to share items to the public with links')); ?></em>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -255,22 +271,6 @@ if (!$_['internetconnectionworking']) {
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td <?php if ($_['shareAPIEnabled'] == 'no') print_unescaped('class="hidden"');?>>
|
|
||||||
<input type="checkbox" name="shareapi_default_expire_date" id="shareapi_default_expire_date"
|
|
||||||
value="1" <?php if ($_['shareDefaultExpireDateSet'] == 'yes') print_unescaped('checked="checked"'); ?> />
|
|
||||||
<label for="shareapi_default_expire_date"><?php p($l->t('Set default expiration date'));?></label><br/>
|
|
||||||
<?php p($l->t( 'Expire after ' )); ?>
|
|
||||||
<input type="text" name='shareapi_expire_after_n_days' id="shareapi_expire_after_n_days" placeholder="<?php p('7')?>"
|
|
||||||
value='<?php p($_['shareExpireAfterNDays']) ?>' />
|
|
||||||
<?php p($l->t( 'days' )); ?>
|
|
||||||
<input type="checkbox" name="shareapi_enforce_expire_date" id="shareapi_enforce_expire_date"
|
|
||||||
value="1" <?php if ($_['shareEnforceExpireDate'] == 'yes') print_unescaped('checked="checked"'); ?> />
|
|
||||||
<label for="shareapi_enforce_expire_date"><?php p($l->t('Enforce expiration date'));?></label><br/>
|
|
||||||
<em><?php p($l->t('Expire shares by default after N days')); ?></em>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue