diff options
Diffstat (limited to 'core/js/shareitemmodel.js')
-rw-r--r-- | core/js/shareitemmodel.js | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/core/js/shareitemmodel.js b/core/js/shareitemmodel.js index e0d44586613..ff0d3a6d800 100644 --- a/core/js/shareitemmodel.js +++ b/core/js/shareitemmodel.js @@ -656,7 +656,7 @@ } var permissions = this.get('possiblePermissions'); - if(!_.isUndefined(data.reshare) && !_.isUndefined(data.reshare.permissions)) { + if(!_.isUndefined(data.reshare) && !_.isUndefined(data.reshare.permissions) && data.reshare.uid_owner !== OC.currentUser) { permissions = permissions & data.reshare.permissions; } @@ -723,6 +723,26 @@ permissions: permissions, allowPublicUploadStatus: allowPublicUploadStatus }; + }, + + /** + * Parses a string to an valid integer (unix timestamp) + * @param time + * @returns {*} + * @internal Only used to work around a bug in the backend + */ + _parseTime: function(time) { + if (_.isString(time)) { + // skip empty strings and hex values + if (time === '' || (time.length > 1 && time[0] === '0' && time[1] === 'x')) { + return null; + } + time = parseInt(time, 10); + if(isNaN(time)) { + time = null; + } + } + return time; } }); |