mirror of
https://github.com/nextcloud/passman.git
synced 2025-10-03 10:14:31 +08:00
Link sharing almost works
This commit is contained in:
parent
d944901cca
commit
6fe0ea1e97
4 changed files with 25 additions and 19 deletions
|
@ -77,8 +77,8 @@ angular.module('passmanApp')
|
|||
linkSharing: {
|
||||
enabled: false,
|
||||
settings: {
|
||||
type: 'null', // can be date or view_amount or null (for no expire)
|
||||
amount: null,
|
||||
expire_time: 0,
|
||||
expire_views: 0,
|
||||
acl: link_acl
|
||||
}
|
||||
},
|
||||
|
@ -193,6 +193,18 @@ angular.module('passmanApp')
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
if($scope.share_settings.linkSharing.enabled){
|
||||
var shareObj = {
|
||||
item_id: '',
|
||||
permissions: $scope.share_settings.linkSharing.settings.acl.getAccessLevel(),
|
||||
expire_timestamp: $scope.share_settings.linkSharing.settings.expire_time,
|
||||
expire_views: $scope.share_settings.linkSharing.settings.expire_views
|
||||
};
|
||||
ShareService.createPublicSharedCredential(shareObj).then(function(){
|
||||
|
||||
});
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
|
|
|
@ -73,6 +73,12 @@ angular.module('passmanApp')
|
|||
return response.data;
|
||||
})
|
||||
},
|
||||
createPublicSharedCredential: function (shareObj) {
|
||||
var queryUrl = OC.generateUrl('apps/passman/api/v2/sharing/public');
|
||||
return $http.post(queryUrl, shareObj).then(function (response) {
|
||||
return response.data;
|
||||
})
|
||||
},
|
||||
getPublicSharedCredential: function (credential_guid) {
|
||||
var queryUrl = OC.generateUrl('apps/passman/api/v2/sharing/public/credential/' + credential_guid);
|
||||
return $http.get(queryUrl).then(function (response) {
|
||||
|
|
|
@ -89,7 +89,7 @@ angular.module('views/partials/forms/share_credential/basics.html', []).run(['$t
|
|||
angular.module('views/partials/forms/share_credential/link_sharing.html', []).run(['$templateCache', function($templateCache) {
|
||||
'use strict';
|
||||
$templateCache.put('views/partials/forms/share_credential/link_sharing.html',
|
||||
'<div class="row"><div class="col-xs-12 col-md-6"><input type="checkbox" ng-model="share_settings.linkSharing.enabled"> Enable link sharing.<br><input type="text" ng-model="share_link" select-on-click ng-if="share_settings.linkSharing.enabled"><div ng-if="share_settings.linkSharing.enabled">Expire settings:<select ng-model="share_settings.linkSharing.settings.type"><option value="null">Does not expire</option><option value="view_amount">Expire after a certain amount of views</option><option value="date">Expire after a date</option></select></div><div ng-show="share_settings.linkSharing.settings.type == \'date\'">Share until date <span datetime-picker ng-model="share_settings.linkSharing.settings.value" class="link" future-only ng-show="!share_settings.linkSharing.settings.value" close-on-select="false">No expire date set</span></div><div ng-show="share_settings.linkSharing.settings.type == \'view_amount\'">Share until views <input type="number" ng-model="share_settings.linkSharing.settings.value"></div><div ng-if="share_settings.linkSharing.enabled"><table><tr><td><input type="checkbox" ng-click="setPermission(share_settings.linkSharing.settings.acl, default_permissions.permissions.FILES)" ng-checked="hasPermission(share_settings.linkSharing.settings.acl, default_permissions.permissions.FILES)"></td><td>Show files</td></tr></table></div></div></div>');
|
||||
'<div class="row"><div class="col-xs-12 col-md-6"><input type="checkbox" ng-model="share_settings.linkSharing.enabled"> Enable link sharing.<br><input type="text" ng-model="share_link" select-on-click ng-if="share_settings.linkSharing.enabled"><div ng-show="share_settings.linkSharing.enabled">Share until date <span datetime-picker ng-model="share_settings.linkSharing.settings.expire_time" class="link" future-only close-on-select="false">No expire date set</span></div><div ng-show="share_settings.linkSharing.enabled">Share until views <input type="number" ng-model="share_settings.linkSharing.settings.expire_views"></div><div ng-if="share_settings.linkSharing.enabled"><table><tr><td><input type="checkbox" ng-click="setPermission(share_settings.linkSharing.settings.acl, default_permissions.permissions.FILES)" ng-checked="hasPermission(share_settings.linkSharing.settings.acl, default_permissions.permissions.FILES)"></td><td>Show files</td></tr></table></div></div></div>');
|
||||
}]);
|
||||
|
||||
angular.module('views/partials/password-meter.html', []).run(['$templateCache', function($templateCache) {
|
||||
|
|
|
@ -4,32 +4,20 @@
|
|||
Enable link sharing.<br/>
|
||||
<input type="text" ng-model="share_link" select-on-click
|
||||
ng-if="share_settings.linkSharing.enabled">
|
||||
<div ng-if="share_settings.linkSharing.enabled">
|
||||
Expire settings:
|
||||
<select ng-model="share_settings.linkSharing.settings.type">
|
||||
<option value="null">Does not expire</option>
|
||||
<option value="view_amount">Expire after a certain amount of
|
||||
views
|
||||
</option>
|
||||
<option value="date">Expire after a date</option>
|
||||
</select>
|
||||
</div>
|
||||
<div ng-show="share_settings.linkSharing.settings.type == 'date'">
|
||||
<div ng-show="share_settings.linkSharing.enabled">
|
||||
Share until date
|
||||
<span datetime-picker
|
||||
ng-model="share_settings.linkSharing.settings.value"
|
||||
ng-model="share_settings.linkSharing.settings.expire_time"
|
||||
class="link"
|
||||
future-only
|
||||
ng-show="!share_settings.linkSharing.settings.value"
|
||||
|
||||
close-on-select="false"
|
||||
> No expire date set</span>
|
||||
|
||||
</div>
|
||||
<div ng-show="share_settings.linkSharing.settings.type == 'view_amount'">
|
||||
<div ng-show="share_settings.linkSharing.enabled">
|
||||
Share until views
|
||||
<input type="number"
|
||||
ng-model="share_settings.linkSharing.settings.value">
|
||||
ng-model="share_settings.linkSharing.settings.expire_views">
|
||||
</div>
|
||||
<div ng-if="share_settings.linkSharing.enabled">
|
||||
<table>
|
||||
|
|
Loading…
Add table
Reference in a new issue