Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2019-11-13 17:43:11 +0300
committerRoeland Jago Douma <roeland@famdouma.nl>2019-11-27 16:33:13 +0300
commit444c9b6744f00a0fb8ac31cf0c827c150719bc68 (patch)
treeb4f283ae7a6f7996dc279cc5eabb173c9cc2bad9 /apps/files_sharing/src
parentefce1fdfaca81353414c2a752dcebfa3ca4135e6 (diff)
Add settings front and split sharing entry config
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to 'apps/files_sharing/src')
-rw-r--r--apps/files_sharing/src/components/SharingEntry.vue22
-rw-r--r--apps/files_sharing/src/components/SharingEntryLink.vue22
-rw-r--r--apps/files_sharing/src/mixins/SharesMixin.js22
-rw-r--r--apps/files_sharing/src/services/ConfigService.js55
4 files changed, 97 insertions, 24 deletions
diff --git a/apps/files_sharing/src/components/SharingEntry.vue b/apps/files_sharing/src/components/SharingEntry.vue
index 09d09d607fe..cde7d2ed2b1 100644
--- a/apps/files_sharing/src/components/SharingEntry.vue
+++ b/apps/files_sharing/src/components/SharingEntry.vue
@@ -213,6 +213,28 @@ export default {
set: function(checked) {
this.updatePermissions(this.canEdit, checked)
}
+ },
+
+ /**
+ * Does the current share have an expiration date
+ * @returns {boolean}
+ */
+ hasExpirationDate: {
+ get: function() {
+ return this.config.isDefaultInternalExpireDateEnforced || !!this.share.expireDate
+ },
+ set: function(enabled) {
+ this.share.expireDate = enabled
+ ? this.config.defaultInternalExpirationDateString !== ''
+ ? this.config.defaultInternalExpirationDateString
+ : moment().format('YYYY-MM-DD')
+ : ''
+ }
+ },
+
+ dateMaxEnforced() {
+ return this.config.isDefaultInternalExpireDateEnforced
+ && moment().add(1 + this.config.defaultInternalExpireDate, 'days')
}
},
diff --git a/apps/files_sharing/src/components/SharingEntryLink.vue b/apps/files_sharing/src/components/SharingEntryLink.vue
index 407d674e77a..ddfe953e339 100644
--- a/apps/files_sharing/src/components/SharingEntryLink.vue
+++ b/apps/files_sharing/src/components/SharingEntryLink.vue
@@ -380,6 +380,28 @@ export default {
},
/**
+ * Does the current share have an expiration date
+ * @returns {boolean}
+ */
+ hasExpirationDate: {
+ get: function() {
+ return this.config.isDefaultExpireDateEnforced || !!this.share.expireDate
+ },
+ set: function(enabled) {
+ this.share.expireDate = enabled
+ ? this.config.defaultExpirationDateString !== ''
+ ? this.config.defaultExpirationDateString
+ : moment().format('YYYY-MM-DD')
+ : ''
+ }
+ },
+
+ dateMaxEnforced() {
+ return this.config.isDefaultExpireDateEnforced
+ && moment().add(1 + this.config.defaultExpireDate, 'days')
+ },
+
+ /**
* Is the current share password protected ?
* @returns {boolean}
*/
diff --git a/apps/files_sharing/src/mixins/SharesMixin.js b/apps/files_sharing/src/mixins/SharesMixin.js
index d012f35591d..a0ec0748951 100644
--- a/apps/files_sharing/src/mixins/SharesMixin.js
+++ b/apps/files_sharing/src/mixins/SharesMixin.js
@@ -83,23 +83,6 @@ export default {
computed: {
/**
- * Does the current share have an expiration date
- * @returns {boolean}
- */
- hasExpirationDate: {
- get: function() {
- return this.config.isDefaultExpireDateEnforced || !!this.share.expireDate
- },
- set: function(enabled) {
- this.share.expireDate = enabled
- ? this.config.defaultExpirationDateString !== ''
- ? this.config.defaultExpirationDateString
- : moment().format('YYYY-MM-DD')
- : ''
- }
- },
-
- /**
* Does the current share have a note
* @returns {boolean}
*/
@@ -118,11 +101,6 @@ export default {
return moment().add(1, 'days')
},
- dateMaxEnforced() {
- return this.config.isDefaultExpireDateEnforced
- && moment().add(1 + this.config.defaultExpireDate, 'days')
- },
-
/**
* Datepicker lang values
* https://github.com/nextcloud/nextcloud-vue/pull/146
diff --git a/apps/files_sharing/src/services/ConfigService.js b/apps/files_sharing/src/services/ConfigService.js
index 7058c714776..7e0ae960c64 100644
--- a/apps/files_sharing/src/services/ConfigService.js
+++ b/apps/files_sharing/src/services/ConfigService.js
@@ -58,7 +58,7 @@ export default class Config {
}
/**
- * Get the default expiration date as string
+ * Get the default link share expiration date as string
*
* @returns {string}
* @readonly
@@ -76,6 +76,24 @@ export default class Config {
}
/**
+ * Get the default internal expiration date as string
+ *
+ * @returns {string}
+ * @readonly
+ * @memberof Config
+ */
+ get defaultInternalExpirationDateString() {
+ let expireDateString = ''
+ if (this.isDefaultInternalExpireDateEnabled) {
+ const date = window.moment.utc()
+ const expireAfterDays = this.defaultInternalExpireDate
+ date.add(expireAfterDays, 'days')
+ expireDateString = date.format('YYYY-MM-DD')
+ }
+ return expireDateString
+ }
+
+ /**
* Are link shares password-enforced ?
*
* @returns {boolean}
@@ -120,6 +138,28 @@ export default class Config {
}
/**
+ * Is internal shares expiration enforced ?
+ *
+ * @returns {boolean}
+ * @readonly
+ * @memberof Config
+ */
+ get isDefaultInternalExpireDateEnforced() {
+ return OC.appConfig.core.defaultInternalExpireDateEnforced === true
+ }
+
+ /**
+ * Is there a default expiration date for new internal shares ?
+ *
+ * @returns {boolean}
+ * @readonly
+ * @memberof Config
+ */
+ get isDefaultInternalExpireDateEnabled() {
+ return OC.appConfig.core.defaultInternalExpireDateEnabled === true
+ }
+
+ /**
* Are users on this server allowed to send shares to other servers ?
*
* @returns {boolean}
@@ -142,7 +182,7 @@ export default class Config {
}
/**
- * Get the default days to expiration
+ * Get the default days to link shares expiration
*
* @returns {int}
* @readonly
@@ -153,6 +193,17 @@ export default class Config {
}
/**
+ * Get the default days to internal shares expiration
+ *
+ * @returns {int}
+ * @readonly
+ * @memberof Config
+ */
+ get defaultInternalExpireDate() {
+ return OC.appConfig.core.defaultInternalExpireDate
+ }
+
+ /**
* Is resharing allowed ?
*
* @returns {boolean}