1
0
mirror of https://github.com/bitwarden/web synced 2026-01-06 10:33:17 +00:00

remove sharing module. move subvaults

This commit is contained in:
Kyle Spearrin
2017-03-23 23:01:22 -04:00
parent d51eab779c
commit 1818dad0d1
12 changed files with 55 additions and 47 deletions

View File

@@ -178,7 +178,6 @@
animation: true,
templateUrl: 'app/vault/views/vaultShare.html',
controller: 'vaultShareController',
size: 'sm',
resolve: {
loginId: function () { return login.id; }
}

View File

@@ -0,0 +1,44 @@
angular
.module('bit.vault')
.controller('vaultSubvaultsController', function ($scope, apiService, cipherService, $analytics, $q) {
$scope.logins = [];
$scope.subvaults = [];
$scope.loading = true;
$scope.$on('$viewContentLoaded', function () {
var subvaultPromise = apiService.subvaults.listMe({}, function (subvaults) {
var decSubvaults = [];
for (var i = 0; i < subvaults.Data.length; i++) {
var decSubvault = cipherService.decryptSubvault(subvaults.Data[i], null, true);
decSubvaults.push(decSubvault);
}
$scope.subvaults = decSubvaults;
}).$promise;
var cipherPromise = apiService.ciphers.listSubvaults({}, function (ciphers) {
var decLogins = [];
for (var i = 0; i < ciphers.Data.length; i++) {
if (ciphers.Data[i].Type === 1) {
var decLogin = cipherService.decryptLoginPreview(ciphers.Data[i]);
decLogins.push(decLogin);
}
}
$scope.logins = decLogins;
}).$promise;
$q.all([subvaultPromise, cipherPromise]).then(function () {
$scope.loading = false;
});
});
$scope.filterBySubvault = function (subvault) {
return function (cipher) {
return cipher.subvaultIds.indexOf(subvault.id) > -1;
};
};
});

View File

@@ -47,7 +47,7 @@
<table class="table table-striped table-hover table-selectable">
<thead>
<tr>
<th style="width: 110px; min-width: 110px;"></th>
<th style="width: 75px; min-width: 75px;"></th>
<th>Name</th>
<th style="width: 300px;">Username</th>
</tr>
@@ -60,10 +60,6 @@
uib-tooltip="Delete">
<i class="fa fa-lg fa-trash"></i>
</button>
<button type="button" ng-click="editLogin(login)" class="btn btn-link btn-table"
uib-tooltip="View/Edit">
<i class="fa fa-lg fa-pencil"></i>
</button>
<button type="button" ng-click="share(login)" class="btn btn-link btn-table"
uib-tooltip="Share">
<i class="fa fa-lg fa-share-alt"></i>
@@ -71,7 +67,7 @@
</td>
<td ng-click="editLogin(login)">
<span ng-click="$event.stopPropagation()">
{{login.name}}
<a href="javascript:void(0)" ng-click="editLogin(login)">{{login.name}}</a>
<i class="fa fa-star text-muted" uib-tooltip="Favorite" ng-show="login.favorite"></i>
</span>
</td>

View File

@@ -0,0 +1,69 @@
<section class="content-header">
<h1>
Subvaults
<small>{{subvaults.length}} subvaults, {{logins.length}} logins</small>
</h1>
</section>
<section class="content">
<div ng-show="loading && !subvaults.length">
<p>Loading...</p>
</div>
<div ng-show="!loading && !subvaults.length">
<p>No subvaults.</p>
</div>
<div class="box" ng-repeat="subvault in subvaults | orderBy: ['name']"
ng-show="subvaults.length && (!main.searchVaultText || subvaultLogins.length)">
<div class="box-header with-border">
<h3 class="box-title">
<i class="fa fa-server"></i>
{{subvault.name}} <small>{{subvaultLogins.length}} logins</small>
</h3>
<div class="box-tools">
<button type="button" class="btn btn-box-tool" data-widget="collapse" uib-tooltip="Collapse/Expand">
<i class="fa fa-minus"></i>
</button>
</div>
</div>
<div class="box-body" ng-class="{'no-padding': subvaultLogins.length}">
<div ng-show="!subvaultLogins.length">
<p>No logins in this folder.</p>
<button type="button" ng-click="addLogin(subvault)" class="btn btn-default btn-flat">Add a Login</button>
</div>
<div class="table-responsive" ng-show="subvaultLogins.length">
<table class="table table-striped table-hover table-selectable">
<thead>
<tr>
<th style="width: 75px; min-width: 75px;"></th>
<th>Name</th>
<th style="width: 300px;">Username</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="login in subvaultLogins = (logins | filter: filterBySubvault(subvault) |
filter: (main.searchVaultText || '') | orderBy: ['name', 'username'])">
<td class="actions">
<button type="button" ng-click="deleteLogin(login)" class="btn btn-link btn-table"
uib-tooltip="Delete">
<i class="fa fa-lg fa-trash"></i>
</button>
<button type="button" ng-click="editLogin(login)" class="btn btn-link btn-table"
uib-tooltip="View/Edit">
<i class="fa fa-lg fa-pencil"></i>
</button>
</td>
<td ng-click="editLogin(login)">
<span ng-click="$event.stopPropagation()">
{{login.name}}
<i class="fa fa-star text-muted" uib-tooltip="Favorite" ng-show="login.favorite"></i>
</span>
</td>
<td ng-click="editLogin(login)">
<span ng-click="$event.stopPropagation()">{{login.username}}</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</section>