mirror of
https://github.com/bitwarden/web
synced 2025-12-06 00:03:28 +00:00
Update 2017-06-16T19:32:17.077Z
This commit is contained in:
@@ -3,7 +3,12 @@
|
||||
<i class="fa fa-shield"></i> <b>bit</b>warden
|
||||
</div>
|
||||
<div class="login-box-body">
|
||||
<p class="login-box-msg">Lost your authenticator app?</p>
|
||||
<p class="login-box-msg">
|
||||
Lost your authenticator app?
|
||||
<a href="https://help.bitwarden.com/article/lost-two-step-device/" target="_blank">
|
||||
Help me!
|
||||
</a>
|
||||
</p>
|
||||
<div class="text-center" ng-show="success">
|
||||
<div class="callout callout-success">
|
||||
Two-step login has been successfully disabled on your account.
|
||||
|
||||
@@ -44,12 +44,12 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="users(collection)">
|
||||
<a href="#" stop-click ng-click="users(collection)">
|
||||
<i class="fa fa-fw fa-users"></i> Users
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="delete(collection)" class="text-red">
|
||||
<a href="#" stop-click ng-click="delete(collection)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
@@ -57,7 +57,7 @@
|
||||
</div>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<a href="javascript:void(0)" ng-click="edit(collection)">
|
||||
<a href="#" stop-click ng-click="edit(collection)">
|
||||
{{collection.name}}
|
||||
</a>
|
||||
</td>
|
||||
|
||||
@@ -23,12 +23,12 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li ng-show="!user.accessAll">
|
||||
<a href="javascript:void(0)" ng-click="remove(user)" class="text-red">
|
||||
<a href="#" stop-click ng-click="remove(user)" class="text-red">
|
||||
<i class="fa fa-fw fa-remove"></i> Remove
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="user.accessAll">
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
No options...
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -44,12 +44,12 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="users(group)">
|
||||
<a href="#" stop-click ng-click="users(group)">
|
||||
<i class="fa fa-fw fa-users"></i> Users
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="delete(group)" class="text-red">
|
||||
<a href="#" stop-click ng-click="delete(group)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
@@ -57,7 +57,7 @@
|
||||
</div>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<a href="javascript:void(0)" ng-click="edit(group)">
|
||||
<a href="#" stop-click ng-click="edit(group)">
|
||||
{{group.name}}
|
||||
</a>
|
||||
</td>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li ng-show="user.organizationUserId">
|
||||
<a href="javascript:void(0)" ng-click="remove(user)" class="text-red">
|
||||
<a href="#" stop-click ng-click="remove(user)" class="text-red">
|
||||
<i class="fa fa-fw fa-remove"></i> Remove
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -37,27 +37,27 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="edit(user)">
|
||||
<a href="#" stop-click ng-click="edit(user)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="groups(user)" ng-if="useGroups">
|
||||
<a href="#" stop-click ng-click="groups(user)" ng-if="useGroups">
|
||||
<i class="fa fa-fw fa-sitemap"></i> Groups
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="user.status === 1">
|
||||
<a href="javascript:void(0)" ng-click="confirm(user)">
|
||||
<a href="#" stop-click ng-click="confirm(user)">
|
||||
<i class="fa fa-fw fa-check"></i> Confirm
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="user.status === 0">
|
||||
<a href="javascript:void(0)" ng-click="reinvite(user)">
|
||||
<a href="#" stop-click ng-click="reinvite(user)">
|
||||
<i class="fa fa-fw fa-envelope-o"></i> Re-send Invitation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="delete(user)" class="text-red">
|
||||
<a href="#" stop-click ng-click="delete(user)" class="text-red">
|
||||
<i class="fa fa-fw fa-remove"></i> Remove
|
||||
</a>
|
||||
</li>
|
||||
@@ -68,7 +68,7 @@
|
||||
<letter-avatar data="{{user.name || user.email}}"></letter-avatar>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0)" ng-click="edit(user)">{{user.email}}</a>
|
||||
<a href="#" stop-click ng-click="edit(user)">{{user.email}}</a>
|
||||
<i class="fa fa-unlock text-muted" ng-show="user.accessAll"
|
||||
title="Can Access All Items"></i>
|
||||
<div ng-if="user.name"><small class="text-muted">{{user.name}}</small></div>
|
||||
|
||||
@@ -42,23 +42,23 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="editCollections(login)">
|
||||
<a href="#" stop-click ng-click="editCollections(login)">
|
||||
<i class="fa fa-fw fa-cubes"></i> Collections
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="removeLogin(login, collection)" class="text-red"
|
||||
<a href="#" stop-click ng-click="removeLogin(login, collection)" class="text-red"
|
||||
ng-if="collection.id">
|
||||
<i class="fa fa-fw fa-remove"></i> Remove
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="deleteLogin(login)" class="text-red">
|
||||
<a href="#" stop-click ng-click="deleteLogin(login)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
@@ -66,7 +66,7 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<a href="#" stop-click ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<div class="text-sm text-muted">{{login.username}}</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
required api-field />
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="email">Email - <a href="javascript:void(0)" ng-click="changeEmail()">change</a></label>
|
||||
<label for="email">Email - <a href="#" stop-click ng-click="changeEmail()">change</a></label>
|
||||
<input type="text" id="email" ng-model="model.email" class="form-control" readonly />
|
||||
</div>
|
||||
<div class="form-group" show-errors>
|
||||
@@ -121,13 +121,13 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="leaveOrganization(org)" class="text-red">
|
||||
<a href="#" stop-click ng-click="leaveOrganization(org)" class="text-red">
|
||||
<i class="fa fa-fw fa-sign-out"></i> Leave
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<a href="javascript:void(0)" ng-click="viewOrganization(org)">
|
||||
<a href="#" stop-click ng-click="viewOrganization(org)">
|
||||
<letter-avatar data="{{org.name}}" round="false" avwidth="25" avheight="25"
|
||||
avclass="img-rounded" fontsize="10"></letter-avatar>
|
||||
{{org.name}}
|
||||
|
||||
@@ -28,12 +28,12 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addEdit($index)">
|
||||
<a href="#" stop-click ng-click="addEdit($index)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="delete($index)" class="text-red">
|
||||
<a href="#" stop-click ng-click="delete($index)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
@@ -76,19 +76,19 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-if="!globalDomain.excluded"
|
||||
<a href="#" stop-click ng-if="!globalDomain.excluded"
|
||||
ng-click="toggleExclude(globalDomain)">
|
||||
<i class="fa fa-fw fa-remove"></i> Exclude
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-if="globalDomain.excluded"
|
||||
<a href="#" stop-click ng-if="globalDomain.excluded"
|
||||
ng-click="toggleExclude(globalDomain)">
|
||||
<i class="fa fa-fw fa-plus"></i> Include
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="customize(globalDomain)">
|
||||
<a href="#" stop-click ng-click="customize(globalDomain)">
|
||||
<i class="fa fa-fw fa-cut"></i> Customize
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1,4 +1,29 @@
|
||||
<section class="content-header">
|
||||
<div class="btn-group pull-right">
|
||||
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown"
|
||||
ng-disabled="bulkActionLoading">
|
||||
<i class="fa fa-refresh fa-spin" ng-show="bulkActionLoading"></i>
|
||||
Bulk Actions <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="#" stop-click ng-click="bulkMove()">
|
||||
<i class="fa fa-fw fa-share"></i> Move Selected
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" stop-click ng-click="bulkDelete()">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete Selected
|
||||
</a>
|
||||
</li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li>
|
||||
<a href="#" stop-click ng-click="unselectAll()">
|
||||
<i class="fa fa-fw fa-minus-square-o"></i> Unselect All
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<h1>
|
||||
My Vault
|
||||
<small>
|
||||
@@ -14,7 +39,7 @@
|
||||
<p>Loading...</p>
|
||||
</div>
|
||||
<div class="box box-primary" ng-class="{'collapsed-box': favoriteCollapsed}" style="margin-bottom: 40px;"
|
||||
ng-show="vaultFolders.length && (!main.searchVaultText || favoriteLogins.length)">
|
||||
ng-show="vaultFolders.length && folderIdFilter === undefined && (!main.searchVaultText || favoriteLogins.length)">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">
|
||||
<i class="fa fa-star"></i>
|
||||
@@ -28,7 +53,7 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addLogin(null, true)">
|
||||
<a href="#" stop-click ng-click="addLogin(null, true)">
|
||||
<i class="fa fa-fw fa-plus-circle"></i> Add Login
|
||||
</a>
|
||||
</li>
|
||||
@@ -57,32 +82,42 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="!login.organizationId">
|
||||
<a href="javascript:void(0)" ng-click="share(login)">
|
||||
<a href="#" stop-click ng-click="share(login)">
|
||||
<i class="fa fa-fw fa-share-alt"></i> Share
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.organizationId && login.edit">
|
||||
<a href="javascript:void(0)" ng-click="collections(login)">
|
||||
<a href="#" stop-click ng-click="collections(login)">
|
||||
<i class="fa fa-fw fa-cubes"></i> Collections
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.password">
|
||||
<a href="#" stop-click ngclipboard ngclipboard-error="clipboardError(e)"
|
||||
data-clipboard-text="{{login.password}}">
|
||||
<i class="fa fa-fw fa-clipboard"></i> Copy Password
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.edit">
|
||||
<a href="javascript:void(0)" ng-click="deleteLogin(login)" class="text-red">
|
||||
<a href="#" stop-click ng-click="deleteLogin(login)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<i class="fa fa-share-alt text-muted" title="Shared" ng-show="login.organizationId"></i>
|
||||
<div class="text-sm text-muted">{{login.username}}</div>
|
||||
<td class="action-select">
|
||||
<input type="checkbox" value="{{::login.id}}" name="loginSelection" />
|
||||
</td>
|
||||
<td ng-click="select($event)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)" stop-prop>{{login.name}}</a>
|
||||
<i class="fa fa-share-alt text-muted" title="Shared" ng-show="login.organizationId"
|
||||
stop-prop></i><br />
|
||||
<span class="text-sm text-muted" stop-prop>{{login.username}}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -90,7 +125,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box" ng-class="{'collapsed-box': folder.collapsed}" ng-repeat="folder in vaultFolders track by folder.id"
|
||||
<div class="box" ng-class="{'collapsed-box': folder.collapsed}"
|
||||
ng-repeat="folder in filteredVaultFolders = (vaultFolders | filter: folderFilter) track by folder.id"
|
||||
ng-show="vaultFolders.length && (!main.searchVaultText || folderLogins.length)">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">
|
||||
@@ -105,17 +141,22 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addLogin(folder)">
|
||||
<a href="#" stop-click ng-click="addLogin(folder)">
|
||||
<i class="fa fa-fw fa-plus-circle"></i> Add Login
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="folder.id">
|
||||
<a href="javascript:void(0)" ng-click="editFolder(folder)">
|
||||
<a href="#" stop-click ng-click="editFolder(folder)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit Folder
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" stop-click ng-click="selectFolder(folder, $event)">
|
||||
<i class="fa fa-fw fa-check-square-o"></i> Select All
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="canDeleteFolder(folder)">
|
||||
<a href="javascript:void(0)" ng-click="deleteFolder(folder)" class="text-red">
|
||||
<a href="#" stop-click ng-click="deleteFolder(folder)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete Folder
|
||||
</a>
|
||||
</li>
|
||||
@@ -144,33 +185,43 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="!login.organizationId">
|
||||
<a href="javascript:void(0)" ng-click="share(login)">
|
||||
<a href="#" stop-click ng-click="share(login)">
|
||||
<i class="fa fa-fw fa-share-alt"></i> Share
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.organizationId && login.edit">
|
||||
<a href="javascript:void(0)" ng-click="collections(login)">
|
||||
<a href="#" stop-click ng-click="collections(login)">
|
||||
<i class="fa fa-fw fa-cubes"></i> Collections
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.password">
|
||||
<a href="#" stop-click ngclipboard ngclipboard-error="clipboardError(e)"
|
||||
data-clipboard-text="{{login.password}}">
|
||||
<i class="fa fa-fw fa-clipboard"></i> Copy Password
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.edit">
|
||||
<a href="javascript:void(0)" ng-click="deleteLogin(login)" class="text-red">
|
||||
<a href="#" stop-click ng-click="deleteLogin(login)" class="text-red">
|
||||
<i class="fa fa-fw fa-trash"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<i class="fa fa-star text-muted" title="Favorite" ng-show="login.favorite"></i>
|
||||
<i class="fa fa-share-alt text-muted" title="Shared" ng-show="login.organizationId"></i>
|
||||
<div class="text-sm text-muted">{{login.username}}</div>
|
||||
<td class="action-select" ng-click="select($event)">
|
||||
<input type="checkbox" value="{{::login.id}}" name="loginSelection" stop-prop />
|
||||
</td>
|
||||
<td ng-click="select($event)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)" stop-prop>{{login.name}}</a>
|
||||
<i class="fa fa-star text-muted" title="Favorite" ng-show="login.favorite" stop-prop></i>
|
||||
<i class="fa fa-share-alt text-muted" title="Shared" ng-show="login.organizationId" stop-prop></i>
|
||||
<br />
|
||||
<span class="text-sm text-muted" stop-prop>{{login.username}}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -179,3 +230,28 @@
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<aside class="control-sidebar control-sidebar-light">
|
||||
<div class="tab-content">
|
||||
<ul class="control-sidebar-menu">
|
||||
<li>
|
||||
<a href="#" stop-click ng-click="clearFilters()">
|
||||
Clear All Filters
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<h3 class="control-sidebar-heading">
|
||||
<i class="fa fa-folder fa-fw"></i> Folders
|
||||
</h3>
|
||||
<div ng-show="loading && !vaultFolders.length">
|
||||
<p>Loading...</p>
|
||||
</div>
|
||||
<ul class="control-sidebar-menu" ng-show="!loading && vaultFolders.length">
|
||||
<li ng-repeat="folder in vaultFolders track by folder.id">
|
||||
<a href="#" stop-click ng-click="filterFolder(folder)">
|
||||
<i class="fa fa-check" ng-if="folder.id === folderIdFilter"></i>
|
||||
{{folder.name}}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
34
app/vault/views/vaultMoveLogins.html
Normal file
34
app/vault/views/vaultMoveLogins.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" ng-click="close()" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title">
|
||||
<i class="fa fa-share"></i> Move Logins
|
||||
</h4>
|
||||
</div>
|
||||
<form name="form" ng-submit="form.$valid && save()" api-form="savePromise">
|
||||
<div class="modal-body">
|
||||
<div class="callout callout-danger validation-errors" ng-show="form.$errors">
|
||||
<h4>Errors have occurred</h4>
|
||||
<ul>
|
||||
<li ng-repeat="e in form.$errors">{{e}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<p>
|
||||
Select a folder that you would like to move the <b>{{count}}</b> selected
|
||||
<span ng-pluralize count="count" when="{'1': 'login', 'other': 'logins'}"></span> to.
|
||||
</p>
|
||||
<div class="form-group" show-errors>
|
||||
<label for="folder">Folder</label>
|
||||
<select id="folder" name="FolderId" ng-model="folderId" class="form-control" api-field>
|
||||
<option ng-repeat="folder in folders | orderBy: folderSort" value="{{folder.id}}">
|
||||
{{folder.name}}
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="submit" class="btn btn-primary btn-flat" ng-disabled="form.$loading">
|
||||
<i class="fa fa-refresh fa-spin loading-icon" ng-show="form.$loading"></i>Save
|
||||
</button>
|
||||
<button type="button" class="btn btn-default btn-flat" ng-click="close()">Close</button>
|
||||
</div>
|
||||
</form>
|
||||
@@ -58,17 +58,23 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">
|
||||
<a href="#" stop-click ng-click="editLogin(login)">
|
||||
<i class="fa fa-fw fa-pencil"></i> Edit
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.edit">
|
||||
<a href="javascript:void(0)" ng-click="editCollections(login)">
|
||||
<a href="#" stop-click ng-click="editCollections(login)">
|
||||
<i class="fa fa-fw fa-cubes"></i> Collections
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.password">
|
||||
<a href="#" stop-click ngclipboard ngclipboard-error="clipboardError(e)"
|
||||
data-clipboard-text="{{login.password}}">
|
||||
<i class="fa fa-fw fa-clipboard"></i> Copy Password
|
||||
</a>
|
||||
</li>
|
||||
<li ng-show="login.edit">
|
||||
<a href="javascript:void(0)" ng-click="removeLogin(login, collection)"
|
||||
<a href="#" stop-click ng-click="removeLogin(login, collection)"
|
||||
ng-if="collection.id" class="text-red">
|
||||
<i class="fa fa-fw fa-remove"></i> Remove
|
||||
</a>
|
||||
@@ -77,7 +83,7 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0)" ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<a href="#" stop-click ng-click="editLogin(login)">{{login.name}}</a>
|
||||
<i class="fa fa-star text-muted" title="Favorite" ng-show="login.favorite"></i>
|
||||
<div class="text-sm text-muted">{{login.username}}</div>
|
||||
</td>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-edge fa-lg fa-fw fa-li"></i> Edge
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
@@ -87,7 +87,7 @@
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-windows fa-lg fa-fw fa-li"></i> Windows
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
@@ -106,13 +106,13 @@
|
||||
<div class="col-sm-6">
|
||||
<ul class="fa-ul">
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-windows fa-lg fa-fw fa-li"></i> Desktop Windows
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-apple fa-lg fa-fw fa-li"></i> Desktop macOS
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
@@ -122,13 +122,13 @@
|
||||
<div class="col-sm-6">
|
||||
<ul class="fa-ul">
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-linux fa-lg fa-fw fa-li"></i> Desktop Linux
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)">
|
||||
<a href="#" stop-click>
|
||||
<i class="fa fa-terminal fa-lg fa-fw fa-li"></i> CLI
|
||||
<small class="text-muted">(coming soon)</small>
|
||||
</a>
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
<div class="navbar-custom-menu">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a ui-sref="frontend.logout">Log Out</a></li>
|
||||
<li class="control-sidebar-show">
|
||||
<a href="#" stop-click ng-click="toggleControlSidebar()"><i class="fa fa-bars"></i></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -50,7 +53,7 @@
|
||||
</a>
|
||||
<ul class="treeview-menu" ng-class="{'menu-open': $state.includes('backend.org.vault')}">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addOrganizationLogin()">
|
||||
<a href="#" stop-click ng-click="addOrganizationLogin()">
|
||||
<i class="fa fa-plus-circle fa-fw"></i> New Login
|
||||
</a>
|
||||
</li>
|
||||
@@ -62,7 +65,7 @@
|
||||
</a>
|
||||
<ul class="treeview-menu" ng-class="{'menu-open': $state.includes('backend.org.collections')}">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addOrganizationCollection()">
|
||||
<a href="#" stop-click ng-click="addOrganizationCollection()">
|
||||
<i class="fa fa-plus-circle fa-fw"></i> New Collection
|
||||
</a>
|
||||
</li>
|
||||
@@ -74,7 +77,7 @@
|
||||
</a>
|
||||
<ul class="treeview-menu" ng-class="{'menu-open': $state.includes('backend.org.people')}">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="inviteOrganizationUser()">
|
||||
<a href="#" stop-click ng-click="inviteOrganizationUser()">
|
||||
<i class="fa fa-plus-circle fa-fw"></i> Invite a User
|
||||
</a>
|
||||
</li>
|
||||
@@ -86,7 +89,7 @@
|
||||
</a>
|
||||
<ul class="treeview-menu" ng-class="{'menu-open': $state.includes('backend.org.groups')}">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addOrganizationGroup()">
|
||||
<a href="#" stop-click ng-click="addOrganizationGroup()">
|
||||
<i class="fa fa-plus-circle fa-fw"></i> New Group
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
<div class="navbar-custom-menu">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a ui-sref="frontend.logout">Log Out</a></li>
|
||||
<li class="control-sidebar-show">
|
||||
<a href="#" stop-click ng-click="toggleControlSidebar()"><i class="fa fa-bars"></i></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -43,12 +46,12 @@
|
||||
<a ui-sref="backend.user.vault"><i class="fa fa-lock fa-fw"></i> <span>My Vault</span></a>
|
||||
<ul class="treeview-menu" ng-class="{'menu-open': $state.includes('backend.user.vault')}">
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addLogin()">
|
||||
<a href="#" stop-click ng-click="addLogin()">
|
||||
<i class="fa fa-plus-circle fa-fw"></i> New Login
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:void(0)" ng-click="addFolder()">
|
||||
<a href="#" stop-click ng-click="addFolder()">
|
||||
<i class="fa fa-folder fa-fw"></i> New Folder
|
||||
</a>
|
||||
</li>
|
||||
@@ -116,7 +119,7 @@
|
||||
</div>
|
||||
<ul class="list-inline" ng-if="orgs.length">
|
||||
<li ng-repeat="org in orgs | orderBy: ['name'] track by org.id">
|
||||
<a href="javascript:void(0)" ng-click="viewOrganization(org)">
|
||||
<a href="#" stop-click ng-click="viewOrganization(org)">
|
||||
<letter-avatar data="{{org.name}}" avclass="img-responsive img-rounded" round="false"
|
||||
avheight="40" avwidth="40" bgcolor="#2c3b41" avborder="true"
|
||||
borderstyle="3px solid #1a2226"></letter-avatar>
|
||||
|
||||
2
css/vault.min.css
vendored
2
css/vault.min.css
vendored
File diff suppressed because one or more lines are too long
75
index.html
75
index.html
@@ -1,45 +1,72 @@
|
||||
<!DOCTYPE html>
|
||||
<html ng-app="bit">
|
||||
<html ng-app="bit" ng-csp>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="Content-Security-Policy" content="
|
||||
default-src
|
||||
'self';
|
||||
script-src
|
||||
'self'
|
||||
https://www.google-analytics.com
|
||||
https://js.stripe.com
|
||||
https://maxcdn.bootstrapcdn.com
|
||||
https://ajax.googleapis.com;
|
||||
style-src
|
||||
'self'
|
||||
'unsafe-inline'
|
||||
https://maxcdn.bootstrapcdn.com
|
||||
https://fonts.googleapis.com;
|
||||
img-src
|
||||
'self'
|
||||
data:
|
||||
https://q.stripe.com
|
||||
https://haveibeenpwned.com
|
||||
https://chart.googleapis.com
|
||||
https://www.google-analytics.com;
|
||||
font-src
|
||||
'self'
|
||||
https://maxcdn.bootstrapcdn.com
|
||||
https://fonts.gstatic.com;
|
||||
child-src
|
||||
'self'
|
||||
https://js.stripe.com;
|
||||
frame-src
|
||||
'self'
|
||||
https://js.stripe.com;
|
||||
connect-src
|
||||
*;">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
||||
<base href="/" />
|
||||
|
||||
<title page-title>bitwarden.com Password Manager</title>
|
||||
|
||||
<script src="https://js.stripe.com/v2/"></script>
|
||||
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
|
||||
<meta name="x-stylesheet-test-bs" content="" class="invisible" />
|
||||
<script>!function(a,b,c){var d,e=document,f=e.getElementsByTagName('SCRIPT'),g=f[f.length-1].previousElementSibling,h=e.defaultView&&e.defaultView.getComputedStyle?e.defaultView.getComputedStyle(g):g.currentStyle;if(h&&h[a]!==b)for(d=0;d<c.length;d++)e.write('<link rel="stylesheet" href="'+c[d]+'"/>')}('visibility','hidden',['lib\/bootstrap\/css\/bootstrap.min.css?v=pyvdbt65hfr']);</script>
|
||||
<script>!function(a,b,c){var d,e=document,f=e.getElementsByTagName('SCRIPT'),g=f[f.length-1].previousElementSibling,h=e.defaultView&&e.defaultView.getComputedStyle?e.defaultView.getComputedStyle(g):g.currentStyle;if(h&&h[a]!==b)for(d=0;d<c.length;d++)e.write('<link rel="stylesheet" href="'+c[d]+'"/>')}('visibility','hidden',['lib\/bootstrap\/css\/bootstrap.min.css?v=6v7ijvh1tt9']);</script>
|
||||
|
||||
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" />
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" />
|
||||
<meta name="x-stylesheet-test-fa" content="" class="fa" />
|
||||
<script>!function(a,b,c){var d,e=document,f=e.getElementsByTagName('SCRIPT'),g=f[f.length-1].previousElementSibling,h=e.defaultView&&e.defaultView.getComputedStyle?e.defaultView.getComputedStyle(g):g.currentStyle;if(h&&h[a]!==b)for(d=0;d<c.length;d++)e.write('<link rel="stylesheet" href="'+c[d]+'"/>')}('font-family','FontAwesome',['lib\/font-awesome\/css\/font-awesome.min.css?v=pyvdbt65hfr']);</script>
|
||||
<script>!function(a,b,c){var d,e=document,f=e.getElementsByTagName('SCRIPT'),g=f[f.length-1].previousElementSibling,h=e.defaultView&&e.defaultView.getComputedStyle?e.defaultView.getComputedStyle(g):g.currentStyle;if(h&&h[a]!==b)for(d=0;d<c.length;d++)e.write('<link rel="stylesheet" href="'+c[d]+'"/>')}('font-family','FontAwesome',['lib\/font-awesome\/css\/font-awesome.min.css?v=6v7ijvh1tt9']);</script>
|
||||
|
||||
<link rel="stylesheet" href="css/vault.min.css?v=pyvdbt65hfr" />
|
||||
<link rel="stylesheet" href="css/vault.min.css?v=6v7ijvh1tt9" />
|
||||
</head>
|
||||
<body ng-controller="mainController as main" class="layout-boxed skin-blue sidebar-mini {{main.bodyClass}}">
|
||||
<body ng-controller="mainController as main" class="layout-boxed skin-blue sidebar-mini {{main.bodyClass}}"
|
||||
ng-class="{'using-control-sidebar': main.usingControlSidebar,
|
||||
'control-sidebar-open': main.usingControlSidebar && main.openControlSidebar}">
|
||||
<div ui-view></div>
|
||||
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
|
||||
<script>(window.jQuery||document.write('<script src="lib\/jquery\/jquery.min.js?v=pyvdbt65hfr"><\/script>'));</script>
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
|
||||
<script>(window.jQuery||document.write('<script src="lib\/jquery\/jquery.min.js?v=6v7ijvh1tt9"><\/script>'));</script>
|
||||
|
||||
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
|
||||
<script>((window.jQuery&&window.jQuery.fn&&window.jQuery.fn.modal)||document.write('<script src="lib\/bootstrap\/js\/bootstrap.min.js?v=pyvdbt65hfr"><\/script>'));</script>
|
||||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
|
||||
<script>((window.jQuery&&window.jQuery.fn&&window.jQuery.fn.modal)||document.write('<script src="lib\/bootstrap\/js\/bootstrap.min.js?v=6v7ijvh1tt9"><\/script>'));</script>
|
||||
|
||||
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.6.3/angular.min.js"></script>
|
||||
<script>(window.angular||document.write('<script src="lib\/angular\/angular.min.js?v=pyvdbt65hfr"><\/script>'));</script>
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.3/angular.min.js"></script>
|
||||
<script>(window.angular||document.write('<script src="lib\/angular\/angular.min.js?v=6v7ijvh1tt9"><\/script>'));</script>
|
||||
|
||||
<script src="js/lib.min.js?v=pyvdbt65hfr"></script>
|
||||
<script src="js/app.min.js?v=pyvdbt65hfr"></script>
|
||||
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-81915606-3', 'auto');
|
||||
</script>
|
||||
<script src="js/lib.min.js?v=6v7ijvh1tt9"></script>
|
||||
<script src="js/bw.min.js?v=6v7ijvh1tt9"></script>
|
||||
<script src="js/app.min.js?v=6v7ijvh1tt9"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
10
js/app.min.js
vendored
10
js/app.min.js
vendored
File diff suppressed because one or more lines are too long
1
js/bw.min.js
vendored
Normal file
1
js/bw.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,t,n,a,o,c,s){e.GoogleAnalyticsObject=o,e[o]=e[o]||function(){(e[o].q=e[o].q||[]).push(arguments)},e[o].l=1*new Date,c=t.createElement(n),s=t.getElementsByTagName(n)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",s.parentNode.insertBefore(c,s)}(window,document,"script",0,"ga"),ga("create","UA-81915606-3","auto");var AdminLTEOptions={controlSidebarOptions:{selector:"#adminlte-fakeselector"}};
|
||||
Reference in New Issue
Block a user