Merge branch 'master' of github.com:nextcloud/passman into improve-otp-implementation

This commit is contained in:
binsky 2023-01-03 19:11:53 +01:00
commit 4c5271854f
93 changed files with 1113 additions and 564 deletions

View file

@ -1,9 +1,10 @@
[main]
host = https://www.transifex.com
host = https://www.transifex.com
lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja
[nextcloud.passman]
[o:nextcloud:p:nextcloud:r:passman]
file_filter = translationfiles/<lang>/passman.po
source_file = translationfiles/templates/passman.pot
source_lang = en
type = PO
type = PO

View file

@ -19,7 +19,7 @@ Features:
- Import from various password managers (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )
For an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)
]]></description>
<version>2.4.1</version>
<version>2.4.2</version>
<licence>agpl</licence>
<author homepage="https://github.com/brantje">Sander Brand</author>
<author homepage="https://github.com/animalillo">Marcos Zuriaga</author>
@ -42,7 +42,7 @@ For an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)
<database>pgsql</database>
<database min-version="5.5">mysql</database>
<lib>openssl</lib>
<nextcloud min-version="20" max-version="24"/>
<nextcloud min-version="20" max-version="25"/>
</dependencies>
<background-jobs>

View file

@ -189,6 +189,7 @@ class TranslationController extends ApiController {
'generation.settings' => $this->trans->t('Password generation settings'),
'password.generation.length' => $this->trans->t('Password length'),
'password.generation.min_digits' => $this->trans->t('Minimum amount of digits'),
'password.generation.on_create' => $this->trans->t('Generate password on creation'),
'password.generation.uppercase' => $this->trans->t('Use uppercase letters'),
'password.generation.lowercase' => $this->trans->t('Use lowercase letters'),
'password.generation.digits' => $this->trans->t('Use numbers'),

View file

@ -8,5 +8,11 @@
height: 34px; }
#passwordSharingSettings #requests-table {
width: 100%; }
#passwordSharingSettings .link {
cursor: pointer; }
#passwordSharingSettings .link.accept:hover {
color: var(--color-error); }
#passwordSharingSettings .link.ignore:hover {
color: var(--color-primary); }
/*# sourceMappingURL=admin.css.map */

View file

@ -1,6 +1,6 @@
{
"version": 3,
"mappings": "AAGM,wCAAE;EACA,OAAO,EAAE,GAAG;AAGhB,kDAAkB;EAChB,KAAK,EAAE,KAAK;AAEd,uDAAwB;EACtB,KAAK,EAAE,KAAK;EACZ,uEAAgB;IACd,MAAM,EAAE,IAAI;AAIlB,wCAAe;EACb,KAAK,EAAE,IAAI",
"mappings": "AAGM,wCAAE;EACA,OAAO,EAAE,GAAG;AAGhB,kDAAkB;EAChB,KAAK,EAAE,KAAK;AAEd,uDAAwB;EACtB,KAAK,EAAE,KAAK;EACZ,uEAAgB;IACd,MAAM,EAAE,IAAI;AAIlB,wCAAe;EACb,KAAK,EAAE,IAAI;AAEb,8BAAM;EACJ,MAAM,EAAE,OAAO;AAEjB,2CAAmB;EACjB,KAAK,EAAE,kBAAkB;AAE3B,2CAAmB;EACjB,KAAK,EAAE,oBAAoB",
"sources": ["../sass/admin.scss"],
"names": [],
"file": "admin.css"

View file

@ -417,7 +417,7 @@
.vault_wrapper {
margin: 0 auto auto auto;
max-width: 420px;
max-width: 450px;
-webkit-border-radius: 5px;
border-radius: 5px;
background-clip: padding-box;
@ -490,10 +490,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#content {
padding-top: 47px !important;
#inner-app-content {
padding-top: 58px !important;
height: 100%;
width: 100%; }
width: 100%;
display: flex; }
.icon-image-size {
width: 16px; }
@ -510,7 +511,7 @@
#app-sidebar {
height: auto; }
#app-sidebar .sidebar {
display: inline-block; }
display: flex; }
#app-sidebar .sidebar .sidebar-icon {
margin-right: 15px; }
#app-sidebar .sidebar .sidebar-icon .icon-image-size {
@ -518,26 +519,26 @@
#app-sidebar .sidebar .sidebar-icon i {
width: 44px; }
#app-sidebar .sidebar .sidebar-label {
float: right;
line-height: 44px; }
float: right; }
.vaultlist_sidebar_hidden {
width: 100vw !important;
margin-left: 0px !important; }
#app-content {
margin-left: 300px;
position: sticky;
overflow-x: hidden; }
@media only screen and (max-width: 769px) {
@media only screen and (max-width: 1024px) {
#app-content {
width: 100vw; } }
@media only screen and (min-width: 770px) {
@media only screen and (min-width: 1025px) {
#app-content {
width: calc(100vw - 300px); } }
#app-content #app-content-wrapper {
min-height: 95%;
height: 100%;
display: flex;
height: calc(100vh - 49px); }
width: 100%;
padding-right: 15px; }
#app-content #app-content-wrapper #passman-controls {
text-align: center;
border-bottom: 1px solid #c9c9c9; }
@ -853,6 +854,8 @@
padding-right: 10px; }
#app-content #app-content-wrapper .edit_credential .import-selection select {
margin-left: 15px; }
#app-content #app-content-wrapper .credential-revisions div.crumb > a {
max-width: initial !important; }
#app-content #app-content-wrapper .main_list {
flex: 1;
float: left;
@ -878,7 +881,6 @@
#app-content #app-content-wrapper .app_sidebar h2 {
margin-bottom: 10px;
font-weight: 400;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 90%; }
@ -1081,7 +1083,7 @@
opacity: 1 !important;
z-index: 140; }
.nav-trashbin a.active {
background-image: var(--icon-delete-e9322d); }
background-image: var(--icon-delete-color-red); }
.nav-trashbin a .fa {
margin-right: 15px; }
@ -1180,6 +1182,20 @@
.shared_table .fa-trash:hover {
color: #ce3702; }
.tags {
float: left; }
.tags .tag {
background-color: rgba(240, 240, 240, 0.9);
padding: 4px;
font-size: 11px; }
tags-input .tags {
width: 100%; }
tags-input .tags .input {
width: auto !important; }
tags-input .tags .tag-item {
color: var(--color-text-lighter); }
/**
* Nextcloud - passman
*
@ -1201,6 +1217,9 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
.ng-app-frame {
display: block !important; }
.spacer-top-30 {
margin-top: 30px; }
@ -1255,6 +1274,23 @@
h3 {
font-weight: bold; }
.setting-group label, .setting-group input {
display: block; }
.setting-group input[type="text"], .setting-group input[type="password"], .setting-group textarea {
width: 100%; }
.setting-group.margin-bottom-25 {
margin-bottom: 25px; }
.setting-group.margin-bottom-10 {
margin-bottom: 10px; }
.display-grid {
display: grid; }
.password-settings-padding-left-fix {
padding-left: 0 !important; }
/**
* Nextcloud - passman
*
@ -1411,18 +1447,17 @@ h3 {
#passman-controls {
box-sizing: border-box;
position: fixed;
margin: -45px 0 0;
margin: -58px 8px 0 0;
right: 0;
left: 0;
border-bottom: 1px solid #c9c9c9;
padding: 0 !important;
background-color: rgba(255, 255, 255, 0.95);
z-index: 50;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
height: 44px !important; }
min-height: 58px !important;
padding-right: 20px !important; }
@media only screen and (max-width: 769px) {
#passman-controls .breadcrumb {
padding-left: 15px; } }
@ -1434,8 +1469,7 @@ h3 {
width: 100%; } }
@media only screen and (min-width: 1024px) {
#app-navigation + #app-content #passman-controls {
left: 300px;
width: calc( 100% - 300px ) !important; } }
left: 308px; } }
#passman-controls .button, #passman-controls, #passman-controls input[type='submit'], #passman-controls input[type='text'], #passman-controls input[type='password'], #passman-controls select {
box-sizing: border-box;
display: inline-block;

File diff suppressed because one or more lines are too long

View file

@ -42,7 +42,8 @@ header {
.tab_container {
padding-top: 10px;
margin-bottom: 20px; }
margin-bottom: 60px;
overflow: scroll; }
.tab_container div {
margin-bottom: 5px;
overflow: hidden; }

View file

@ -1,6 +1,6 @@
{
"version": 3,
"mappings": "AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,MAAO;EACL,OAAO,EAAE,IAAI;;AAOf,gBAAiB;EACf,WAAW,EAAE,CAAC;;AAIhB,YAAa;EACX,WAAW,EAAE,CAAC;EACd,UAAU,EAAE,IAAI;;AAGlB,oBAAqB;EACnB,UAAU,EAAE,kBAAkB;;AAGhC,sBAAuB;EACrB,YAAY,EAAE,IAAI;;AAGpB,6BAA8B;EAC5B,YAAY,EAAE,CAAC;EACf,kEAAO;IACL,MAAM,EAAE,OAAO;;AAInB,cAAe;EACb,WAAW,EAAE,IAAI;EAOjB,aAAa,EAAE,IAAI;EALnB,kBAAI;IACF,aAAa,EAAE,GAAG;IAClB,QAAQ,EAAE,MAAM;;AAMpB,cAAe;EACb,UAAU,EAAE,IAAI;;AAGlB,aAAc;EACZ,KAAK,EAAE,KAAK;EACZ,UAAU,EAAE,KAAK;EACjB,aAAa,EAAE,GAAG;EAClB,SAAS,EAAE,IAAI;;AAGjB,0BAA2B;EACzB,OAAO,EAAE,IAAI;;AAGf,YAAa;EACX,OAAO,EAAE,IAAI",
"mappings": "AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,MAAO;EACL,OAAO,EAAE,IAAI;;AAOf,gBAAiB;EACf,WAAW,EAAE,CAAC;;AAIhB,YAAa;EACX,WAAW,EAAE,CAAC;EACd,UAAU,EAAE,IAAI;;AAGlB,oBAAqB;EACnB,UAAU,EAAE,kBAAkB;;AAGhC,sBAAuB;EACrB,YAAY,EAAE,IAAI;;AAGpB,6BAA8B;EAC5B,YAAY,EAAE,CAAC;EACf,kEAAO;IACL,MAAM,EAAE,OAAO;;AAInB,cAAe;EACb,WAAW,EAAE,IAAI;EACjB,aAAa,EAAE,IAAI;EACnB,QAAQ,EAAE,MAAM;EAEhB,kBAAI;IACF,aAAa,EAAE,GAAG;IAClB,QAAQ,EAAE,MAAM;;AAIpB,cAAe;EACb,UAAU,EAAE,IAAI;;AAGlB,aAAc;EACZ,KAAK,EAAE,KAAK;EACZ,UAAU,EAAE,KAAK;EACjB,aAAa,EAAE,GAAG;EAClB,SAAS,EAAE,IAAI;;AAGjB,0BAA2B;EACzB,OAAO,EAAE,IAAI;;AAGf,YAAa;EACX,OAAO,EAAE,IAAI",
"sources": ["../sass/bookmarklet.scss"],
"names": [],
"file": "bookmarklet.css"

View file

@ -241,13 +241,13 @@ $(document).ready(function () {
$.get(OC.generateUrl('apps/passman/admin/delete-requests'), function (requests) {
var table = $('#requests-table tbody');
$.each(requests, function (k, request) {
var accept = $('<span class="link">[Accept]&nbsp;</span>');
var accept = $('<span class="link accept">[Accept]&nbsp;</span>');
accept.click(function () {
var _self = this;
acceptDeleteRequest(_self, request);
});
var ignore = $('<span class="link">[Ignore]</span>');
var ignore = $('<span class="link ignore">[Ignore]</span>');
ignore.click(function () {
var _self = this;
ignoreDeleteRequest(_self, request);

File diff suppressed because one or more lines are too long

24
l10n/an.js Normal file
View file

@ -0,0 +1,24 @@
OC.L10N.register(
"passman",
{
"Done" : "Feito",
"Username" : "Nombre d'usuario",
"Actions" : "Azions",
"Size" : "Grandario",
"Disabled" : "Desactivau",
"Public key" : "Clau pública",
"Read" : "Leyer",
"Write" : "Escribir",
"Files" : "Archivos",
"Pending" : "Pendién",
"Details" : "Detalles",
"Cancel" : "Canzelar",
"Settings" : "Configurazión",
"Password" : "Clau",
"Email" : "Correu electronico",
"Delete" : "Borrar",
"Share" : "Compartir",
"Never" : "Nunca",
"Tags" : "Etiquetas"
},
"nplurals=2; plural=(n != 1);");

22
l10n/an.json Normal file
View file

@ -0,0 +1,22 @@
{ "translations": {
"Done" : "Feito",
"Username" : "Nombre d'usuario",
"Actions" : "Azions",
"Size" : "Grandario",
"Disabled" : "Desactivau",
"Public key" : "Clau pública",
"Read" : "Leyer",
"Write" : "Escribir",
"Files" : "Archivos",
"Pending" : "Pendién",
"Details" : "Detalles",
"Cancel" : "Canzelar",
"Settings" : "Configurazión",
"Password" : "Clau",
"Email" : "Correu electronico",
"Delete" : "Borrar",
"Share" : "Compartir",
"Never" : "Nunca",
"Tags" : "Etiquetas"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Настройки за генериране на пароли",
"Password length" : "Дължина на паролата",
"Minimum amount of digits" : "Минимален брой цифри",
"Generate password on creation" : "Генериране на парола при създаване",
"Use uppercase letters" : "Главни букви",
"Use lowercase letters" : "Малки букви",
"Use numbers" : "Цифри",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Настройки за генериране на пароли",
"Password length" : "Дължина на паролата",
"Minimum amount of digits" : "Минимален брой цифри",
"Generate password on creation" : "Генериране на парола при създаване",
"Use uppercase letters" : "Главни букви",
"Use lowercase letters" : "Малки букви",
"Use numbers" : "Цифри",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Nastavení vytváření hesel",
"Password length" : "Délka hesla",
"Minimum amount of digits" : "Nejmenší počet číslic",
"Generate password on creation" : "Při vytvoření vytvořit heslo",
"Use uppercase letters" : "Použít velká písmena",
"Use lowercase letters" : "Použít malá písmena",
"Use numbers" : "Použít čísla",
@ -335,7 +336,7 @@ OC.L10N.register(
"Unable to get version info" : "Nepodařilo se získat informace o verzi",
"Passman is a full featured password manager." : "Passman je správce hesel s mnoha funkcemi.",
"Passman is a full featured password manager.\nFeatures:\n- Vaults\n- Vault key is never sent to the server\n- Browser extension for easy access to passwords\n- Android app for on the road access\n- Credentials are client side encrypted with 256bit AES\n- Credentials are server side encrypted with 256bit AES\n- Ability to add custom fields to credentials\n- Built-in OTP (One Time Password) generator\n- Password analyzer\n- Share passwords internally and via link in a secure manner.\n- Import from various password managers (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )\nFor an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)" : "Passman je plně vybavený správce hesel.\nFunkce:\n- Trezory\n- Klíč k trezoru není nikdy odesílán na server\n- Rozšíření do webového prohlížeče pro snadný přístup k heslům\n- Aplikace pro Android pro přístup na cestách\n- Přihlašovací údaje jsou na straně klienta šifrovány algoritmem 256 bit AES\n- Přihlašovací údaje jsou na straně serveru šifrovány algoritmem 256 bit AES\n- Možnost přidávat si do přihlašovacích údajů uživatelsky určené kolonky\n- Vestavěné vytváření OTP (jednorázového hesla)\n- Analyzátor stupně bezpečnosti hesel\n- Bezpečné sdílení hesel interně nebo prostřednictvím odkazu.\n- Import z různých správců hesel (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )\nUkázka této aplikace je k dispozici na [https://demo.passman.cc](https://demo.passman.cc)",
"Passman Settings" : "Nastavení pro passman",
"Passman Settings" : "Nastavení pro Passman",
"GitHub version:" : "nejnovější verze (na GitHub):",
"A newer version of Passman is available" : "Je k dispozici nová verze aplikace Passman",
"Password sharing" : "Sdílení hesel",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Nastavení vytváření hesel",
"Password length" : "Délka hesla",
"Minimum amount of digits" : "Nejmenší počet číslic",
"Generate password on creation" : "Při vytvoření vytvořit heslo",
"Use uppercase letters" : "Použít velká písmena",
"Use lowercase letters" : "Použít malá písmena",
"Use numbers" : "Použít čísla",
@ -333,7 +334,7 @@
"Unable to get version info" : "Nepodařilo se získat informace o verzi",
"Passman is a full featured password manager." : "Passman je správce hesel s mnoha funkcemi.",
"Passman is a full featured password manager.\nFeatures:\n- Vaults\n- Vault key is never sent to the server\n- Browser extension for easy access to passwords\n- Android app for on the road access\n- Credentials are client side encrypted with 256bit AES\n- Credentials are server side encrypted with 256bit AES\n- Ability to add custom fields to credentials\n- Built-in OTP (One Time Password) generator\n- Password analyzer\n- Share passwords internally and via link in a secure manner.\n- Import from various password managers (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )\nFor an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)" : "Passman je plně vybavený správce hesel.\nFunkce:\n- Trezory\n- Klíč k trezoru není nikdy odesílán na server\n- Rozšíření do webového prohlížeče pro snadný přístup k heslům\n- Aplikace pro Android pro přístup na cestách\n- Přihlašovací údaje jsou na straně klienta šifrovány algoritmem 256 bit AES\n- Přihlašovací údaje jsou na straně serveru šifrovány algoritmem 256 bit AES\n- Možnost přidávat si do přihlašovacích údajů uživatelsky určené kolonky\n- Vestavěné vytváření OTP (jednorázového hesla)\n- Analyzátor stupně bezpečnosti hesel\n- Bezpečné sdílení hesel interně nebo prostřednictvím odkazu.\n- Import z různých správců hesel (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )\nUkázka této aplikace je k dispozici na [https://demo.passman.cc](https://demo.passman.cc)",
"Passman Settings" : "Nastavení pro passman",
"Passman Settings" : "Nastavení pro Passman",
"GitHub version:" : "nejnovější verze (na GitHub):",
"A newer version of Passman is available" : "Je k dispozici nová verze aplikace Passman",
"Password sharing" : "Sdílení hesel",

View file

@ -14,7 +14,7 @@ OC.L10N.register(
"Credential updated" : "Brugeroplysninger opdateret",
"Credential recovered" : "Brugeroplysninger genskabt",
"Credential destroyed" : "Brugeroplysninger ødelagt",
"Invalid QR code" : "Invalid QR kode",
"Invalid QR code" : "Ugyldig QR kode",
"Starting export" : "Starter eksportering ",
"Decrypting credentials" : "Dekrypterer brugeroplysninger",
"Done" : "Færdig",
@ -33,7 +33,7 @@ OC.L10N.register(
"Example of imported credential" : "Eksempel på importerede brugeroplysninger",
"Go back to importers." : "Gå tilbage til importerer",
"Revision deleted" : "Revision slettet",
"Revision restored" : "Noten genskabt",
"Revision restored" : "Revision genskabt",
"Save in Passman" : "Gem i Passman",
"Settings saved" : "Indstillinger gemt",
"General settings" : "Generelle indstillinger",
@ -59,8 +59,8 @@ OC.L10N.register(
"Copy to clipboard" : "Kopier til udklipsholder",
"Copied to clipboard!" : "Kopieret til udklipsholder!",
"Generate password" : "Generer password",
"Copy password to clipboard" : "Kopier password til udklipsholder",
"Password copied to clipboard!" : "Password kopieret til udklipsholder!",
"Copy password to clipboard" : "Kopier adgangskode til udklipsholder",
"Password copied to clipboard!" : "Adgangskode kopieret til udklipsholder!",
"Complete" : "Færdig",
"Username" : "Brugernavn",
"Repeat password" : "Gentag adgangskode",
@ -93,7 +93,7 @@ OC.L10N.register(
"Week(s)" : "Uge(er)",
"Month(s)" : "Månede(er)",
"Year(s)" : "År",
"Password generation settings" : "Password genereringsindstillinger",
"Password generation settings" : "Adgangskode genereringsindstillinger",
"Password length" : "Adgangskode længde",
"Minimum amount of digits" : "Minumun antal af tal",
"Use uppercase letters" : "Benyt store bogstaver",
@ -128,8 +128,8 @@ OC.L10N.register(
"Yes, delete my precious passwords" : "Ja, slet mine tidligere adgangskoder",
"Import type" : "Importer type",
"Import" : "Importér",
"Private Key" : "Private Key",
"Public key" : "Public key",
"Private Key" : "Privat nøgle",
"Public key" : "Offentlig nøgle",
"Key size" : "Nøgle størrelse",
"Save keys" : "Gem nøgle",
"Generate sharing keys" : "Opret dele nøgler",
@ -203,7 +203,7 @@ OC.L10N.register(
"Repeat vault password" : "Gentag boks password",
"Create vault" : "Opret boks",
"Go back to vaults" : "Gå tilbage til boks",
"Please input the password for" : "Indtast venligst password for",
"Please input the password for" : "Indtast venligst adgangskode for",
"Decrypt vault" : "Dekrypter boks",
"Seems you lost the vault password and you're unable to log in." : "Det lader til at du har mistet dit boks password og ikke er i stand til at logge ind",
"Change vault" : "Ændre boks",
@ -241,12 +241,17 @@ OC.L10N.register(
"%1$s has been recovered by %2$s" : "%1$s er blevet gendannet af %2$s",
"You recovered %1$s" : "Du gendannede %1$s",
"%1$s has been permanently deleted by %2$s" : "%1$s er blevet slettet permanent af %2$s",
"You permanently deleted %1$s" : "Du slettede permanent %1$s",
"%s has been shared with a link" : "%ser blevet delt med et link",
"Passwords" : "Adgangskoder",
"Remind me later" : "Påmind mig senere",
"Ignore" : "Ignorér",
"Passman" : "Passman",
"Passman Settings" : "Passman indstillinger",
"A newer version of Passman is available" : "En nyere version af Passman er tilgængelig",
"Password sharing" : "Password deling",
"Check for new versions" : "Tjek for nye versioner",
"Destination account" : "Destination konto",
"An error occurred!" : "Der er opstået en fejl!",
"Reason" : "Grund",
"E-mail" : "E-mail",

View file

@ -12,7 +12,7 @@
"Credential updated" : "Brugeroplysninger opdateret",
"Credential recovered" : "Brugeroplysninger genskabt",
"Credential destroyed" : "Brugeroplysninger ødelagt",
"Invalid QR code" : "Invalid QR kode",
"Invalid QR code" : "Ugyldig QR kode",
"Starting export" : "Starter eksportering ",
"Decrypting credentials" : "Dekrypterer brugeroplysninger",
"Done" : "Færdig",
@ -31,7 +31,7 @@
"Example of imported credential" : "Eksempel på importerede brugeroplysninger",
"Go back to importers." : "Gå tilbage til importerer",
"Revision deleted" : "Revision slettet",
"Revision restored" : "Noten genskabt",
"Revision restored" : "Revision genskabt",
"Save in Passman" : "Gem i Passman",
"Settings saved" : "Indstillinger gemt",
"General settings" : "Generelle indstillinger",
@ -57,8 +57,8 @@
"Copy to clipboard" : "Kopier til udklipsholder",
"Copied to clipboard!" : "Kopieret til udklipsholder!",
"Generate password" : "Generer password",
"Copy password to clipboard" : "Kopier password til udklipsholder",
"Password copied to clipboard!" : "Password kopieret til udklipsholder!",
"Copy password to clipboard" : "Kopier adgangskode til udklipsholder",
"Password copied to clipboard!" : "Adgangskode kopieret til udklipsholder!",
"Complete" : "Færdig",
"Username" : "Brugernavn",
"Repeat password" : "Gentag adgangskode",
@ -91,7 +91,7 @@
"Week(s)" : "Uge(er)",
"Month(s)" : "Månede(er)",
"Year(s)" : "År",
"Password generation settings" : "Password genereringsindstillinger",
"Password generation settings" : "Adgangskode genereringsindstillinger",
"Password length" : "Adgangskode længde",
"Minimum amount of digits" : "Minumun antal af tal",
"Use uppercase letters" : "Benyt store bogstaver",
@ -126,8 +126,8 @@
"Yes, delete my precious passwords" : "Ja, slet mine tidligere adgangskoder",
"Import type" : "Importer type",
"Import" : "Importér",
"Private Key" : "Private Key",
"Public key" : "Public key",
"Private Key" : "Privat nøgle",
"Public key" : "Offentlig nøgle",
"Key size" : "Nøgle størrelse",
"Save keys" : "Gem nøgle",
"Generate sharing keys" : "Opret dele nøgler",
@ -201,7 +201,7 @@
"Repeat vault password" : "Gentag boks password",
"Create vault" : "Opret boks",
"Go back to vaults" : "Gå tilbage til boks",
"Please input the password for" : "Indtast venligst password for",
"Please input the password for" : "Indtast venligst adgangskode for",
"Decrypt vault" : "Dekrypter boks",
"Seems you lost the vault password and you're unable to log in." : "Det lader til at du har mistet dit boks password og ikke er i stand til at logge ind",
"Change vault" : "Ændre boks",
@ -239,12 +239,17 @@
"%1$s has been recovered by %2$s" : "%1$s er blevet gendannet af %2$s",
"You recovered %1$s" : "Du gendannede %1$s",
"%1$s has been permanently deleted by %2$s" : "%1$s er blevet slettet permanent af %2$s",
"You permanently deleted %1$s" : "Du slettede permanent %1$s",
"%s has been shared with a link" : "%ser blevet delt med et link",
"Passwords" : "Adgangskoder",
"Remind me later" : "Påmind mig senere",
"Ignore" : "Ignorér",
"Passman" : "Passman",
"Passman Settings" : "Passman indstillinger",
"A newer version of Passman is available" : "En nyere version af Passman er tilgængelig",
"Password sharing" : "Password deling",
"Check for new versions" : "Tjek for nye versioner",
"Destination account" : "Destination konto",
"An error occurred!" : "Der er opstået en fejl!",
"Reason" : "Grund",
"E-mail" : "E-mail",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Einstellungen zur Passwortgenerierung",
"Password length" : "Passwortlänge",
"Minimum amount of digits" : "Minimale Anzahl an Zeichen",
"Generate password on creation" : "Passwort bei Erstellung generieren",
"Use uppercase letters" : "Großbuchstaben verwenden",
"Use lowercase letters" : "Kleinbuchstaben verwenden",
"Use numbers" : "Zahlen verwenden",
@ -297,7 +298,7 @@ OC.L10N.register(
"Mark as Compromised" : "Als kompromittiert markieren",
"Compromised!" : "Kompromittiert!",
"This password is compromised. You can only remove this warning by changing the password." : "Dieses Passwort wurde kompromittiert. Die Warnung kann nur durch eine Änderung des Passwortes entfernt werden.",
"email" : "E-Mail",
"email" : "E-Mail-Adresse",
"Description" : "Beschreibung",
"Custom Search:" : "Benutzerdefinierte Suche:",
"Revert to defaults" : "Zurücksetzen auf Standardwerte",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Einstellungen zur Passwortgenerierung",
"Password length" : "Passwortlänge",
"Minimum amount of digits" : "Minimale Anzahl an Zeichen",
"Generate password on creation" : "Passwort bei Erstellung generieren",
"Use uppercase letters" : "Großbuchstaben verwenden",
"Use lowercase letters" : "Kleinbuchstaben verwenden",
"Use numbers" : "Zahlen verwenden",
@ -295,7 +296,7 @@
"Mark as Compromised" : "Als kompromittiert markieren",
"Compromised!" : "Kompromittiert!",
"This password is compromised. You can only remove this warning by changing the password." : "Dieses Passwort wurde kompromittiert. Die Warnung kann nur durch eine Änderung des Passwortes entfernt werden.",
"email" : "E-Mail",
"email" : "E-Mail-Adresse",
"Description" : "Beschreibung",
"Custom Search:" : "Benutzerdefinierte Suche:",
"Revert to defaults" : "Zurücksetzen auf Standardwerte",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Einstellungen zur Passwortgenerierung",
"Password length" : "Passwortlänge",
"Minimum amount of digits" : "Minimale Anzahl an Zeichen",
"Generate password on creation" : "Passwort bei Erstellung generieren",
"Use uppercase letters" : "Großbuchstaben verwenden",
"Use lowercase letters" : "Kleinbuchstaben verwenden",
"Use numbers" : "Zahlen verwenden",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Einstellungen zur Passwortgenerierung",
"Password length" : "Passwortlänge",
"Minimum amount of digits" : "Minimale Anzahl an Zeichen",
"Generate password on creation" : "Passwort bei Erstellung generieren",
"Use uppercase letters" : "Großbuchstaben verwenden",
"Use lowercase letters" : "Kleinbuchstaben verwenden",
"Use numbers" : "Zahlen verwenden",

View file

@ -1,6 +1,7 @@
OC.L10N.register(
"passman",
{
"Generating sharing keys (%s/2)" : "Δημιουργία κλειδιών διαμοιρασμού (Βήμα %s/2)",
"Incorrect vault password!" : "Εσφαλμένος κωδικός θαλάμου!",
"Passwords do not match" : "Δεν ταιριάζουν τα συθηματικά",
"General" : "Γενικά",
@ -18,6 +19,7 @@ OC.L10N.register(
"Invalid QR code" : "Με έγκυρος κώδικας QR",
"Starting export" : "Έναρξη εξαγωγής",
"Decrypting credentials" : "Αποκρυπτογράφηση διαπιστευτηρίων",
"Failed to decrypt {{credential}}" : "Απέτυχε η αποκρυπτογράφηση {{credential}}",
"Done" : "Ολοκληρώθηκε",
"File read." : "Ανάγνωση αρχείου.",
"Proceed with the following steps to import your file" : "Συνεχίστε με τα ακόλουθα βήματα για την εισαγωγή του αρχείου σας",
@ -35,6 +37,7 @@ OC.L10N.register(
"The first 5 lines of the CSV are shown." : "Προβάλλονται οι πρώτες 5 γραμμές του CSV.",
"Assign the proper fields to each column." : "Καθορίστε τα κατάλληλα πεδία σε κάθε στήλη.",
"Example of imported credential" : "Παράδειγμα εισαχθέντος διαπιστευτηρίου",
"Missing an importer? Click here to try it with the generic CSV importer." : "Λείπει ενα στοιχείο; Κάντε εδώ κλικ για να το δοκιμάσετε με τη γενική εισαγωγή CSV.",
"Go back to importers." : "Επιστροφή στους εισαγωγείς.",
"Revision deleted" : "Διαγράφηκε η αναθεώρηση",
"Revision restored" : "Η αναθεώρηση επαναφέρθηκε",
@ -76,6 +79,7 @@ OC.L10N.register(
"Use this icon" : "Χρήση αυτού του εικονιδίου",
"Delete current icon" : "Διαγραφή τρέχων εικονιδίου",
"Get icon from page" : "Αποκτήστε το εικονίδιο από τη σελίδα",
"This may take a few seconds …" : "Αυτό μπορεί να πάρει μερικά δευτερόλεπτα …",
"There was an error fetching the icon!" : "Σφάλμα κατά την ανάκτηση του εικονιδίου!",
"Selected icon" : "Επιλεγμένο εικονίδιο",
"Field label" : "Ετικέτα πεδίου",
@ -135,6 +139,7 @@ OC.L10N.register(
"Vault password" : "Κωδικός πρόσβασης κρύπτης ",
"This process is irreversible" : "Αυτή η ενέργεια είναι μη αναστρέψιμη",
"Delete my precious passwords" : "Διαγραφή των πολύτιμων συνθηματικών μου",
"Deleting {{password}} …" : "Γίνεται διαγραφή {{password}} …",
"Yes, delete my precious passwords" : "Ναι, διαγραφή των πολύτιμων συνθηματικών μου",
"Import type" : "Τύπος εισαγωγής",
"Import" : "Εισαγωγή",
@ -153,6 +158,7 @@ OC.L10N.register(
"A total of {{scan_result}} weak credentials were found." : "Συνολικά βρέθηκαν {{scan_result}} αδύναμα διαπιστευτήρια.",
"Score" : "Αποτέλεσμα",
"Action" : "Ενέργεια",
"Search users …" : "Αναζήτηση χρηστών …",
"Missing users? Only users that have vaults are shown." : "Λείπουν χρήστες; Εμφανίζονται μόνο οι χρήστες που έχουν κρύπτη.",
"Cyphering" : "Κρυπτογράφηση",
"Uploading" : "Γίνεται μεταφόρτωση",
@ -167,14 +173,19 @@ OC.L10N.register(
"Enable link sharing" : "Ενεργοποίηση διαμοιρασμού συνδέσμου",
"Share until date" : "Διαμοιρασμός έως την ημερομηνία",
"Expire after views" : "Λήξη μετά από προβολές",
"Click \"Share\" first" : "Κάντε πρώτα κλικ στο \"Διαμοιρασμός\"",
"Show files" : "Εμφάνιση αρχείων",
"Details" : "Λεπτομέρειες",
"Hide details" : "Απόκρυψη λεπτομερειών",
"Password score" : "Βαθμολογία κωδικού πρόσβασης",
"Cracking times" : "Σύνολο παραβιάσεων",
"100/hour" : "100/ώρα",
"Throttled online attack" : "Επίθεση online περιορισμού (Throttled) ",
"10/second" : "10/δευτερόλεπτο",
"Unthrottled online attack" : "Επίθεση online μη περιορισμού (Unthrottled) ",
"10k/second" : "10k/δευτερόλεπτο",
"Offline attack, slow hash, many cores" : "Επίθεση εκτός σύνδεσης, αργό hash, πολλοί πυρήνες",
"10B/second" : "10B/δευτερόλεπτο",
"Offline attack, fast hash, many cores" : "Επίθεση εκτός σύνδεσης, γρήγορο hash, πολλοί πυρήνες",
"Match sequence" : "Ακολουθία ομοίων",
"See match sequence" : "Εμφάνιση ακολουθίας ομοίων",
@ -204,6 +215,7 @@ OC.L10N.register(
"Showing deleted since" : "Εμφάνιση διεγραμμένων από",
"Beginning" : "Έναρξη",
"Showing {{number_filtered}} of {{credential_number}} credentials" : "Εμφάνιση {{number_filtered}} από {{credential_number}} διαπιστευτηρίων",
"Search for credential …" : "Αναζήτηση για διαπιστευτήρια …",
"Account" : "Λογαριασμός",
"Password" : "Συνθηματικό",
"OTP" : "OTP",
@ -244,6 +256,7 @@ OC.L10N.register(
"Password strength must be at least: {{strength}}" : "Η ισχύς του κωδικού πρόσβασης πρέπει να είναι: {{strength}}",
"Please give your new vault a name." : "Παρακαλώ ονομάστε την νέα σα κρύπτη.",
"Repeat vault password" : "Επαναλάβετε τον κωδικό κρύπτης",
"Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later." : "Τα κλειδιά κοινής χρήσης σας θα έχουν ισχύ 1024 bit, την οποία μπορείτε να αλλάξετε στις \"Ρυθμίσεις\" αργότερα.",
"Create vault" : "Δημιουργία κρύπτης",
"Go back to vaults" : "Πίσω στις κρύπτες",
"Please input the password for" : "Παρκαλώ εισάγεται τον κωδικό για",
@ -279,6 +292,7 @@ OC.L10N.register(
"Someone has shared a credential with you." : "Κάποιος διαμοιράστηκε τα διαπιστευτήρια μαζί σας.",
"Click here to request it" : "Κάντε κλικ εδώ για να το αιτηθείτε",
"Loading …" : "Φόρτωση...",
"Oops! Credential not found. Maybe it expired." : "Ουπς! Το διαπιστευτήριο δεν βρέθηκε. Ίσως έχει λήξει.",
"Mark as Compromised" : "Επισήμανση ως συμβιβασμένου",
"Compromised!" : "Με κίνδυνο!",
"This password is compromised. You can only remove this warning by changing the password." : "Ο κωδικός είναι διακινδυνεμένος. Μπορείτε να αφαιρέσετε αυτή την προειδοποίηση αλλάζοντας τον κωδικό.",
@ -330,6 +344,7 @@ OC.L10N.register(
"Enable HTTPS check" : "Ενεργοποίηση ελέγχου HTTPS",
"Disable context menu" : "Απενεργοποήηση μενού περιβάλλοντος",
"Disable JavaScript debugger" : "Απενεργοποιήστε τον εντοπισμό σφαλμάτων JavaScript",
"Enable global search" : "Ενεργοποίηση παγκόσμιας αναζήτησης",
"Allow users on this server to share passwords with a link" : "Επιτρέψτε στους χρήστες του διακομιστή να μοιράζονται κωδικούς πρόσβασης με σύνδεσμο",
"Allow users on this server to share passwords with other users" : "Επιτρέψτε στους χρήστες του διακομιστή να μοιράζονται κωδικούς πρόσβασης με άλλους χρήστες",
"Move credentials from one account to another" : "Μετακίνηση διαπιστευτηρίων από έναν λογαριασμό σε άλλον",

View file

@ -1,4 +1,5 @@
{ "translations": {
"Generating sharing keys (%s/2)" : "Δημιουργία κλειδιών διαμοιρασμού (Βήμα %s/2)",
"Incorrect vault password!" : "Εσφαλμένος κωδικός θαλάμου!",
"Passwords do not match" : "Δεν ταιριάζουν τα συθηματικά",
"General" : "Γενικά",
@ -16,6 +17,7 @@
"Invalid QR code" : "Με έγκυρος κώδικας QR",
"Starting export" : "Έναρξη εξαγωγής",
"Decrypting credentials" : "Αποκρυπτογράφηση διαπιστευτηρίων",
"Failed to decrypt {{credential}}" : "Απέτυχε η αποκρυπτογράφηση {{credential}}",
"Done" : "Ολοκληρώθηκε",
"File read." : "Ανάγνωση αρχείου.",
"Proceed with the following steps to import your file" : "Συνεχίστε με τα ακόλουθα βήματα για την εισαγωγή του αρχείου σας",
@ -33,6 +35,7 @@
"The first 5 lines of the CSV are shown." : "Προβάλλονται οι πρώτες 5 γραμμές του CSV.",
"Assign the proper fields to each column." : "Καθορίστε τα κατάλληλα πεδία σε κάθε στήλη.",
"Example of imported credential" : "Παράδειγμα εισαχθέντος διαπιστευτηρίου",
"Missing an importer? Click here to try it with the generic CSV importer." : "Λείπει ενα στοιχείο; Κάντε εδώ κλικ για να το δοκιμάσετε με τη γενική εισαγωγή CSV.",
"Go back to importers." : "Επιστροφή στους εισαγωγείς.",
"Revision deleted" : "Διαγράφηκε η αναθεώρηση",
"Revision restored" : "Η αναθεώρηση επαναφέρθηκε",
@ -74,6 +77,7 @@
"Use this icon" : "Χρήση αυτού του εικονιδίου",
"Delete current icon" : "Διαγραφή τρέχων εικονιδίου",
"Get icon from page" : "Αποκτήστε το εικονίδιο από τη σελίδα",
"This may take a few seconds …" : "Αυτό μπορεί να πάρει μερικά δευτερόλεπτα …",
"There was an error fetching the icon!" : "Σφάλμα κατά την ανάκτηση του εικονιδίου!",
"Selected icon" : "Επιλεγμένο εικονίδιο",
"Field label" : "Ετικέτα πεδίου",
@ -133,6 +137,7 @@
"Vault password" : "Κωδικός πρόσβασης κρύπτης ",
"This process is irreversible" : "Αυτή η ενέργεια είναι μη αναστρέψιμη",
"Delete my precious passwords" : "Διαγραφή των πολύτιμων συνθηματικών μου",
"Deleting {{password}} …" : "Γίνεται διαγραφή {{password}} …",
"Yes, delete my precious passwords" : "Ναι, διαγραφή των πολύτιμων συνθηματικών μου",
"Import type" : "Τύπος εισαγωγής",
"Import" : "Εισαγωγή",
@ -151,6 +156,7 @@
"A total of {{scan_result}} weak credentials were found." : "Συνολικά βρέθηκαν {{scan_result}} αδύναμα διαπιστευτήρια.",
"Score" : "Αποτέλεσμα",
"Action" : "Ενέργεια",
"Search users …" : "Αναζήτηση χρηστών …",
"Missing users? Only users that have vaults are shown." : "Λείπουν χρήστες; Εμφανίζονται μόνο οι χρήστες που έχουν κρύπτη.",
"Cyphering" : "Κρυπτογράφηση",
"Uploading" : "Γίνεται μεταφόρτωση",
@ -165,14 +171,19 @@
"Enable link sharing" : "Ενεργοποίηση διαμοιρασμού συνδέσμου",
"Share until date" : "Διαμοιρασμός έως την ημερομηνία",
"Expire after views" : "Λήξη μετά από προβολές",
"Click \"Share\" first" : "Κάντε πρώτα κλικ στο \"Διαμοιρασμός\"",
"Show files" : "Εμφάνιση αρχείων",
"Details" : "Λεπτομέρειες",
"Hide details" : "Απόκρυψη λεπτομερειών",
"Password score" : "Βαθμολογία κωδικού πρόσβασης",
"Cracking times" : "Σύνολο παραβιάσεων",
"100/hour" : "100/ώρα",
"Throttled online attack" : "Επίθεση online περιορισμού (Throttled) ",
"10/second" : "10/δευτερόλεπτο",
"Unthrottled online attack" : "Επίθεση online μη περιορισμού (Unthrottled) ",
"10k/second" : "10k/δευτερόλεπτο",
"Offline attack, slow hash, many cores" : "Επίθεση εκτός σύνδεσης, αργό hash, πολλοί πυρήνες",
"10B/second" : "10B/δευτερόλεπτο",
"Offline attack, fast hash, many cores" : "Επίθεση εκτός σύνδεσης, γρήγορο hash, πολλοί πυρήνες",
"Match sequence" : "Ακολουθία ομοίων",
"See match sequence" : "Εμφάνιση ακολουθίας ομοίων",
@ -202,6 +213,7 @@
"Showing deleted since" : "Εμφάνιση διεγραμμένων από",
"Beginning" : "Έναρξη",
"Showing {{number_filtered}} of {{credential_number}} credentials" : "Εμφάνιση {{number_filtered}} από {{credential_number}} διαπιστευτηρίων",
"Search for credential …" : "Αναζήτηση για διαπιστευτήρια …",
"Account" : "Λογαριασμός",
"Password" : "Συνθηματικό",
"OTP" : "OTP",
@ -242,6 +254,7 @@
"Password strength must be at least: {{strength}}" : "Η ισχύς του κωδικού πρόσβασης πρέπει να είναι: {{strength}}",
"Please give your new vault a name." : "Παρακαλώ ονομάστε την νέα σα κρύπτη.",
"Repeat vault password" : "Επαναλάβετε τον κωδικό κρύπτης",
"Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later." : "Τα κλειδιά κοινής χρήσης σας θα έχουν ισχύ 1024 bit, την οποία μπορείτε να αλλάξετε στις \"Ρυθμίσεις\" αργότερα.",
"Create vault" : "Δημιουργία κρύπτης",
"Go back to vaults" : "Πίσω στις κρύπτες",
"Please input the password for" : "Παρκαλώ εισάγεται τον κωδικό για",
@ -277,6 +290,7 @@
"Someone has shared a credential with you." : "Κάποιος διαμοιράστηκε τα διαπιστευτήρια μαζί σας.",
"Click here to request it" : "Κάντε κλικ εδώ για να το αιτηθείτε",
"Loading …" : "Φόρτωση...",
"Oops! Credential not found. Maybe it expired." : "Ουπς! Το διαπιστευτήριο δεν βρέθηκε. Ίσως έχει λήξει.",
"Mark as Compromised" : "Επισήμανση ως συμβιβασμένου",
"Compromised!" : "Με κίνδυνο!",
"This password is compromised. You can only remove this warning by changing the password." : "Ο κωδικός είναι διακινδυνεμένος. Μπορείτε να αφαιρέσετε αυτή την προειδοποίηση αλλάζοντας τον κωδικό.",
@ -328,6 +342,7 @@
"Enable HTTPS check" : "Ενεργοποίηση ελέγχου HTTPS",
"Disable context menu" : "Απενεργοποήηση μενού περιβάλλοντος",
"Disable JavaScript debugger" : "Απενεργοποιήστε τον εντοπισμό σφαλμάτων JavaScript",
"Enable global search" : "Ενεργοποίηση παγκόσμιας αναζήτησης",
"Allow users on this server to share passwords with a link" : "Επιτρέψτε στους χρήστες του διακομιστή να μοιράζονται κωδικούς πρόσβασης με σύνδεσμο",
"Allow users on this server to share passwords with other users" : "Επιτρέψτε στους χρήστες του διακομιστή να μοιράζονται κωδικούς πρόσβασης με άλλους χρήστες",
"Move credentials from one account to another" : "Μετακίνηση διαπιστευτηρίων από έναν λογαριασμό σε άλλον",

View file

@ -1,6 +1,7 @@
OC.L10N.register(
"passman",
{
"Generating sharing keys (%s/2)" : "Generating sharing keys (%s/2)",
"Incorrect vault password!" : "Incorrect vault password!",
"Passwords do not match" : "Passwords do not match",
"General" : "General",
@ -18,9 +19,11 @@ OC.L10N.register(
"Invalid QR code" : "Invalid QR code",
"Starting export" : "Starting export",
"Decrypting credentials" : "Decrypting credentials",
"Failed to decrypt {{credential}}" : "Failed to decrypt {{credential}}",
"Done" : "Done",
"File read." : "File read.",
"Proceed with the following steps to import your file" : "Proceed with the following steps to import your file",
"Skipping unlabeled credential" : "Skipping unlabeled credential",
"Adding {{credential}}" : "Adding {{credential}}",
"Added {{credential}}" : "Added {{credential}}",
"Skipping credential, missing label on line {{line}}" : "Skipping credential, missing label on line {{line}}",
@ -34,6 +37,7 @@ OC.L10N.register(
"The first 5 lines of the CSV are shown." : "The first 5 lines of the CSV are shown.",
"Assign the proper fields to each column." : "Assign the proper fields to each column.",
"Example of imported credential" : "Example of imported credential",
"Missing an importer? Click here to try it with the generic CSV importer." : "Missing an importer? Click here to try it with the generic CSV importer.",
"Go back to importers." : "Go back to importers.",
"Revision deleted" : "Revision deleted",
"Revision restored" : "Revision restored",
@ -75,6 +79,7 @@ OC.L10N.register(
"Use this icon" : "Use this icon",
"Delete current icon" : "Delete current icon",
"Get icon from page" : "Get icon from page",
"This may take a few seconds …" : "This may take a few seconds …",
"There was an error fetching the icon!" : "There was an error fetching the icon!",
"Selected icon" : "Selected icon",
"Field label" : "Field label",
@ -105,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Password generation settings",
"Password length" : "Password length",
"Minimum amount of digits" : "Minimum amount of digits",
"Generate password on creation" : "Generate password on creation",
"Use uppercase letters" : "Use uppercase letters",
"Use lowercase letters" : "Use lowercase letters",
"Use numbers" : "Use numbers",
@ -134,6 +140,7 @@ OC.L10N.register(
"Vault password" : "Vault password",
"This process is irreversible" : "This process is irreversible",
"Delete my precious passwords" : "Delete my precious passwords",
"Deleting {{password}} …" : "Deleting {{password}} …",
"Yes, delete my precious passwords" : "Yes, delete my precious passwords",
"Import type" : "Import type",
"Import" : "Import",
@ -152,6 +159,7 @@ OC.L10N.register(
"A total of {{scan_result}} weak credentials were found." : "A total of {{scan_result}} weak credentials were found.",
"Score" : "Score",
"Action" : "Action",
"Search users …" : "Search users …",
"Missing users? Only users that have vaults are shown." : "Missing users? Only users that have vaults are shown.",
"Cyphering" : "Cyphering",
"Uploading" : "Uploading",
@ -166,14 +174,19 @@ OC.L10N.register(
"Enable link sharing" : "Enable link sharing",
"Share until date" : "Share until date",
"Expire after views" : "Expire after views",
"Click \"Share\" first" : "Click \"Share\" first",
"Show files" : "Show files",
"Details" : "Details",
"Hide details" : "Hide details",
"Password score" : "Password score",
"Cracking times" : "Cracking times",
"100/hour" : "100/hour",
"Throttled online attack" : "Throttled online attack",
"10/second" : "10/second",
"Unthrottled online attack" : "Unthrottled online attack",
"10k/second" : "10k/second",
"Offline attack, slow hash, many cores" : "Offline attack, slow hash, many cores",
"10B/second" : "10B/second",
"Offline attack, fast hash, many cores" : "Offline attack, fast hash, many cores",
"Match sequence" : "Match sequence",
"See match sequence" : "See match sequence",
@ -203,6 +216,7 @@ OC.L10N.register(
"Showing deleted since" : "Showing deleted since",
"Beginning" : "Beginning",
"Showing {{number_filtered}} of {{credential_number}} credentials" : "Showing {{number_filtered}} of {{credential_number}} credentials",
"Search for credential …" : "Search for credential …",
"Account" : "Account",
"Password" : "Password",
"OTP" : "OTP",
@ -243,11 +257,13 @@ OC.L10N.register(
"Password strength must be at least: {{strength}}" : "Password strength must be at least: {{strength}}",
"Please give your new vault a name." : "Please give your new vault a name.",
"Repeat vault password" : "Repeat vault password",
"Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later." : "Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later.",
"Create vault" : "Create vault",
"Go back to vaults" : "Go back to vaults",
"Please input the password for" : "Please input the password for",
"Set this vault as the default." : "Set this vault as the default.",
"Log into this vault automatically." : "Log into this vault automatically.",
"Log out of this vault automatically after:" : "Log out of this vault automatically after:",
"Decrypt vault" : "Decrypt vault",
"Seems you lost the vault password and you're unable to log in." : "Seems you lost the vault password and you're unable to log in.",
"If you want this vault to be removed you can request that here." : "If you want this vault to be removed you can request that here.",
@ -278,6 +294,9 @@ OC.L10N.register(
"Someone has shared a credential with you." : "Someone has shared a credential with you.",
"Click here to request it" : "Click here to request it",
"Loading …" : "Loading …",
"Oops! Credential not found. Maybe it expired." : "Oops! Credential not found. Maybe it expired.",
"Mark as Compromised" : "Mark as Compromised",
"Compromised!" : "Compromised!",
"This password is compromised. You can only remove this warning by changing the password." : "This password is compromised. You can only remove this warning by changing the password.",
"email" : "email",
"Description" : "Description",
@ -327,6 +346,7 @@ OC.L10N.register(
"Enable HTTPS check" : "Enable HTTPS check",
"Disable context menu" : "Disable context menu",
"Disable JavaScript debugger" : "Disable JavaScript debugger",
"Enable global search" : "Enable global search",
"Allow users on this server to share passwords with a link" : "Allow users on this server to share passwords with a link",
"Allow users on this server to share passwords with other users" : "Allow users on this server to share passwords with other users",
"Move credentials from one account to another" : "Move credentials from one account to another",
@ -344,6 +364,7 @@ OC.L10N.register(
"Expires:" : "Expires:",
"Connection to server lost" : "Connection to server lost",
"Problem loading page, reloading in 5 seconds" : "Problem loading page, reloading in 5 seconds",
"Saving …" : "Saving …",
"Dismiss" : "Dismiss",
"seconds ago" : "seconds ago"
},

View file

@ -1,4 +1,5 @@
{ "translations": {
"Generating sharing keys (%s/2)" : "Generating sharing keys (%s/2)",
"Incorrect vault password!" : "Incorrect vault password!",
"Passwords do not match" : "Passwords do not match",
"General" : "General",
@ -16,9 +17,11 @@
"Invalid QR code" : "Invalid QR code",
"Starting export" : "Starting export",
"Decrypting credentials" : "Decrypting credentials",
"Failed to decrypt {{credential}}" : "Failed to decrypt {{credential}}",
"Done" : "Done",
"File read." : "File read.",
"Proceed with the following steps to import your file" : "Proceed with the following steps to import your file",
"Skipping unlabeled credential" : "Skipping unlabeled credential",
"Adding {{credential}}" : "Adding {{credential}}",
"Added {{credential}}" : "Added {{credential}}",
"Skipping credential, missing label on line {{line}}" : "Skipping credential, missing label on line {{line}}",
@ -32,6 +35,7 @@
"The first 5 lines of the CSV are shown." : "The first 5 lines of the CSV are shown.",
"Assign the proper fields to each column." : "Assign the proper fields to each column.",
"Example of imported credential" : "Example of imported credential",
"Missing an importer? Click here to try it with the generic CSV importer." : "Missing an importer? Click here to try it with the generic CSV importer.",
"Go back to importers." : "Go back to importers.",
"Revision deleted" : "Revision deleted",
"Revision restored" : "Revision restored",
@ -73,6 +77,7 @@
"Use this icon" : "Use this icon",
"Delete current icon" : "Delete current icon",
"Get icon from page" : "Get icon from page",
"This may take a few seconds …" : "This may take a few seconds …",
"There was an error fetching the icon!" : "There was an error fetching the icon!",
"Selected icon" : "Selected icon",
"Field label" : "Field label",
@ -103,6 +108,7 @@
"Password generation settings" : "Password generation settings",
"Password length" : "Password length",
"Minimum amount of digits" : "Minimum amount of digits",
"Generate password on creation" : "Generate password on creation",
"Use uppercase letters" : "Use uppercase letters",
"Use lowercase letters" : "Use lowercase letters",
"Use numbers" : "Use numbers",
@ -132,6 +138,7 @@
"Vault password" : "Vault password",
"This process is irreversible" : "This process is irreversible",
"Delete my precious passwords" : "Delete my precious passwords",
"Deleting {{password}} …" : "Deleting {{password}} …",
"Yes, delete my precious passwords" : "Yes, delete my precious passwords",
"Import type" : "Import type",
"Import" : "Import",
@ -150,6 +157,7 @@
"A total of {{scan_result}} weak credentials were found." : "A total of {{scan_result}} weak credentials were found.",
"Score" : "Score",
"Action" : "Action",
"Search users …" : "Search users …",
"Missing users? Only users that have vaults are shown." : "Missing users? Only users that have vaults are shown.",
"Cyphering" : "Cyphering",
"Uploading" : "Uploading",
@ -164,14 +172,19 @@
"Enable link sharing" : "Enable link sharing",
"Share until date" : "Share until date",
"Expire after views" : "Expire after views",
"Click \"Share\" first" : "Click \"Share\" first",
"Show files" : "Show files",
"Details" : "Details",
"Hide details" : "Hide details",
"Password score" : "Password score",
"Cracking times" : "Cracking times",
"100/hour" : "100/hour",
"Throttled online attack" : "Throttled online attack",
"10/second" : "10/second",
"Unthrottled online attack" : "Unthrottled online attack",
"10k/second" : "10k/second",
"Offline attack, slow hash, many cores" : "Offline attack, slow hash, many cores",
"10B/second" : "10B/second",
"Offline attack, fast hash, many cores" : "Offline attack, fast hash, many cores",
"Match sequence" : "Match sequence",
"See match sequence" : "See match sequence",
@ -201,6 +214,7 @@
"Showing deleted since" : "Showing deleted since",
"Beginning" : "Beginning",
"Showing {{number_filtered}} of {{credential_number}} credentials" : "Showing {{number_filtered}} of {{credential_number}} credentials",
"Search for credential …" : "Search for credential …",
"Account" : "Account",
"Password" : "Password",
"OTP" : "OTP",
@ -241,11 +255,13 @@
"Password strength must be at least: {{strength}}" : "Password strength must be at least: {{strength}}",
"Please give your new vault a name." : "Please give your new vault a name.",
"Repeat vault password" : "Repeat vault password",
"Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later." : "Your sharing keys will have a strength of 1024 bit, which you can change in \"Settings\" later.",
"Create vault" : "Create vault",
"Go back to vaults" : "Go back to vaults",
"Please input the password for" : "Please input the password for",
"Set this vault as the default." : "Set this vault as the default.",
"Log into this vault automatically." : "Log into this vault automatically.",
"Log out of this vault automatically after:" : "Log out of this vault automatically after:",
"Decrypt vault" : "Decrypt vault",
"Seems you lost the vault password and you're unable to log in." : "Seems you lost the vault password and you're unable to log in.",
"If you want this vault to be removed you can request that here." : "If you want this vault to be removed you can request that here.",
@ -276,6 +292,9 @@
"Someone has shared a credential with you." : "Someone has shared a credential with you.",
"Click here to request it" : "Click here to request it",
"Loading …" : "Loading …",
"Oops! Credential not found. Maybe it expired." : "Oops! Credential not found. Maybe it expired.",
"Mark as Compromised" : "Mark as Compromised",
"Compromised!" : "Compromised!",
"This password is compromised. You can only remove this warning by changing the password." : "This password is compromised. You can only remove this warning by changing the password.",
"email" : "email",
"Description" : "Description",
@ -325,6 +344,7 @@
"Enable HTTPS check" : "Enable HTTPS check",
"Disable context menu" : "Disable context menu",
"Disable JavaScript debugger" : "Disable JavaScript debugger",
"Enable global search" : "Enable global search",
"Allow users on this server to share passwords with a link" : "Allow users on this server to share passwords with a link",
"Allow users on this server to share passwords with other users" : "Allow users on this server to share passwords with other users",
"Move credentials from one account to another" : "Move credentials from one account to another",
@ -342,6 +362,7 @@
"Expires:" : "Expires:",
"Connection to server lost" : "Connection to server lost",
"Problem loading page, reloading in 5 seconds" : "Problem loading page, reloading in 5 seconds",
"Saving …" : "Saving …",
"Dismiss" : "Dismiss",
"seconds ago" : "seconds ago"
},"pluralForm" :"nplurals=2; plural=(n != 1);"

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Ajustes de generación de contraseñas",
"Password length" : "Longitud de contraseña",
"Minimum amount of digits" : "Cantidad mínima de dígitos",
"Generate password on creation" : "Generar contraseña al crear",
"Use uppercase letters" : "Usar letras mayúsculas",
"Use lowercase letters" : "Usar letras minúsculas",
"Use numbers" : "Usar numeros",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Ajustes de generación de contraseñas",
"Password length" : "Longitud de contraseña",
"Minimum amount of digits" : "Cantidad mínima de dígitos",
"Generate password on creation" : "Generar contraseña al crear",
"Use uppercase letters" : "Usar letras mayúsculas",
"Use lowercase letters" : "Usar letras minúsculas",
"Use numbers" : "Usar numeros",

View file

@ -46,7 +46,7 @@ OC.L10N.register(
"Password settings" : "تنظیمات گذرواژه",
"Import credentials" : "اعتبار واردات",
"Export credentials" : "اعتبارنامه صادرات",
"Sharing" : "اشتراک گذاری",
"Sharing" : "هم‌رسانی",
"Are you sure you want to leave? This will destroy all your credentials" : "آیا مطمئن هستی که می خواهی ترک کنی؟ این اعتبار همه اعتبارات شما را از بین می برد",
"Old password field incorrect!" : "فیلد رمز عبور قدیمی نادرست است!",
"New password does not match!" : "رمز عبور جدید مطابقت ندارد!",

View file

@ -44,7 +44,7 @@
"Password settings" : "تنظیمات گذرواژه",
"Import credentials" : "اعتبار واردات",
"Export credentials" : "اعتبارنامه صادرات",
"Sharing" : "اشتراک گذاری",
"Sharing" : "هم‌رسانی",
"Are you sure you want to leave? This will destroy all your credentials" : "آیا مطمئن هستی که می خواهی ترک کنی؟ این اعتبار همه اعتبارات شما را از بین می برد",
"Old password field incorrect!" : "فیلد رمز عبور قدیمی نادرست است!",
"New password does not match!" : "رمز عبور جدید مطابقت ندارد!",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Paramètres de génération du mot de passe",
"Password length" : "Longueur du mot de passe",
"Minimum amount of digits" : "Nombre minimum de chiffres",
"Generate password on creation" : "Générer le mot de passe à la création",
"Use uppercase letters" : "Utiliser des lettres majuscules",
"Use lowercase letters" : "Utiliser des lettres minuscules",
"Use numbers" : "Utiliser des chiffres",
@ -219,7 +220,7 @@ OC.L10N.register(
"Account" : "Compte",
"Password" : "Mot de passe",
"OTP" : "OTP",
"Email" : "Courriel",
"Email" : "E-mail",
"URL" : "URL",
"Notes" : "Notes",
"Expiry time" : "Heure d'expiration",
@ -297,7 +298,7 @@ OC.L10N.register(
"Mark as Compromised" : "Marquer comme compromis",
"Compromised!" : "Compromis !",
"This password is compromised. You can only remove this warning by changing the password." : "Ce mot de passe est compromis. Vous ne pouvez supprimer cet avertissement qu'en modifiant votre mot de passe.",
"email" : "email",
"email" : "e-mail",
"Description" : "Description",
"Custom Search:" : "Recherche personnalisée",
"Revert to defaults" : "Restaurer les valeurs par défaut",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Paramètres de génération du mot de passe",
"Password length" : "Longueur du mot de passe",
"Minimum amount of digits" : "Nombre minimum de chiffres",
"Generate password on creation" : "Générer le mot de passe à la création",
"Use uppercase letters" : "Utiliser des lettres majuscules",
"Use lowercase letters" : "Utiliser des lettres minuscules",
"Use numbers" : "Utiliser des chiffres",
@ -217,7 +218,7 @@
"Account" : "Compte",
"Password" : "Mot de passe",
"OTP" : "OTP",
"Email" : "Courriel",
"Email" : "E-mail",
"URL" : "URL",
"Notes" : "Notes",
"Expiry time" : "Heure d'expiration",
@ -295,7 +296,7 @@
"Mark as Compromised" : "Marquer comme compromis",
"Compromised!" : "Compromis !",
"This password is compromised. You can only remove this warning by changing the password." : "Ce mot de passe est compromis. Vous ne pouvez supprimer cet avertissement qu'en modifiant votre mot de passe.",
"email" : "email",
"email" : "e-mail",
"Description" : "Description",
"Custom Search:" : "Recherche personnalisée",
"Revert to defaults" : "Restaurer les valeurs par défaut",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Jelszó-előállítási beállítások",
"Password length" : "Jelszóhossz",
"Minimum amount of digits" : "Számjegyek legkisebb száma",
"Generate password on creation" : "Jelszó előállítása létrehozáskor",
"Use uppercase letters" : "Nagybetűk használata",
"Use lowercase letters" : "Kisbetűk használata",
"Use numbers" : "Számok használata",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Jelszó-előállítási beállítások",
"Password length" : "Jelszóhossz",
"Minimum amount of digits" : "Számjegyek legkisebb száma",
"Generate password on creation" : "Jelszó előállítása létrehozáskor",
"Use uppercase letters" : "Nagybetűk használata",
"Use lowercase letters" : "Kisbetűk használata",
"Use numbers" : "Számok használata",

View file

@ -11,6 +11,7 @@ OC.L10N.register(
"Username" : "Nama pengguna",
"File" : "Berkas",
"Add" : "Masukkan",
"Value" : "Nilari",
"Type" : "tipe",
"Actions" : "Tindakan",
"Filename" : "Nama berkas",

View file

@ -9,6 +9,7 @@
"Username" : "Nama pengguna",
"File" : "Berkas",
"Add" : "Masukkan",
"Value" : "Nilari",
"Type" : "tipe",
"Actions" : "Tindakan",
"Filename" : "Nama berkas",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "パスワード生成設定",
"Password length" : "パスワード長",
"Minimum amount of digits" : "最小の桁数",
"Generate password on creation" : "作成時にパスワードを生成",
"Use uppercase letters" : "大文字を使用する",
"Use lowercase letters" : "小文字を使用する",
"Use numbers" : "数字を使用する",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "パスワード生成設定",
"Password length" : "パスワード長",
"Minimum amount of digits" : "最小の桁数",
"Generate password on creation" : "作成時にパスワードを生成",
"Use uppercase letters" : "大文字を使用する",
"Use lowercase letters" : "小文字を使用する",
"Use numbers" : "数字を使用する",

View file

@ -9,11 +9,13 @@ OC.L10N.register(
"Add" : "Rnu",
"Type" : "Anaw",
"Filename" : "Isem n ufaylu",
"Size" : "Teɣzi",
"Expiration date" : "Azemz n tagara",
"User" : "Aseqdac",
"Files" : "Ifuyla",
"Pending" : "Yegguni",
"Details" : "Talqayt",
"Hide details" : "Ffer tilɣa",
"Save" : "Sekles",
"Cancel" : "Sefsex",
"Settings" : "Iɣewwaṛen",

View file

@ -7,11 +7,13 @@
"Add" : "Rnu",
"Type" : "Anaw",
"Filename" : "Isem n ufaylu",
"Size" : "Teɣzi",
"Expiration date" : "Azemz n tagara",
"User" : "Aseqdac",
"Files" : "Ifuyla",
"Pending" : "Yegguni",
"Details" : "Talqayt",
"Hide details" : "Ffer tilɣa",
"Save" : "Sekles",
"Cancel" : "Sefsex",
"Settings" : "Iɣewwaṛen",

View file

@ -68,6 +68,7 @@ OC.L10N.register(
"Add tag" : "태그 추가",
"Pick an icon" : "아이콘 선택",
"Use this icon" : "이 아이콘 사용",
"This may take a few seconds …" : "이 작업은 몇 초 정도 소요됩니다 ...",
"Selected icon" : "선택한 아이콘",
"Field label" : "필드 레이블",
"Field value" : "필드 값",
@ -306,6 +307,7 @@ OC.L10N.register(
"Requested by" : "요청한 사용자",
"Reason" : "이유",
"Click here to request\n\t\t\t\t\tit" : "여기를 누르면 요청할 수\n\t\t\t\t\t있습니다",
"Loading&hellip;" : "불러오는 중&hellip;",
"E-mail" : "이메일",
"Connection to server lost" : "서버와의 연결이 끊어짐",
"Problem loading page, reloading in 5 seconds" : "페이지 불러오기 오류, 5초 후 새로 고침",

View file

@ -66,6 +66,7 @@
"Add tag" : "태그 추가",
"Pick an icon" : "아이콘 선택",
"Use this icon" : "이 아이콘 사용",
"This may take a few seconds …" : "이 작업은 몇 초 정도 소요됩니다 ...",
"Selected icon" : "선택한 아이콘",
"Field label" : "필드 레이블",
"Field value" : "필드 값",
@ -304,6 +305,7 @@
"Requested by" : "요청한 사용자",
"Reason" : "이유",
"Click here to request\n\t\t\t\t\tit" : "여기를 누르면 요청할 수\n\t\t\t\t\t있습니다",
"Loading&hellip;" : "불러오는 중&hellip;",
"E-mail" : "이메일",
"Connection to server lost" : "서버와의 연결이 끊어짐",
"Problem loading page, reloading in 5 seconds" : "페이지 불러오기 오류, 5초 후 새로 고침",

View file

@ -138,6 +138,7 @@ OC.L10N.register(
"Description" : "Apraksts",
"Error while saving field" : "Kļūda, saglabājot lauku",
"You created %1$s" : "Jūs izveidojāt %1$s",
"%1$s has been updated by %2$s" : "%1$s ir atjauninājis %2$s",
"You updated %1$s" : "Tu atjaunināji %1$s",
"%3$s has renamed %1$s to %2$s" : "%3$s pārsauca %1$s uz %2$s",
"You renamed %1$s to %2$s" : "Tu pārdēvēji %1$s uz %2$s",

View file

@ -136,6 +136,7 @@
"Description" : "Apraksts",
"Error while saving field" : "Kļūda, saglabājot lauku",
"You created %1$s" : "Jūs izveidojāt %1$s",
"%1$s has been updated by %2$s" : "%1$s ir atjauninājis %2$s",
"You updated %1$s" : "Tu atjaunināji %1$s",
"%3$s has renamed %1$s to %2$s" : "%3$s pārsauca %1$s uz %2$s",
"You renamed %1$s to %2$s" : "Tu pārdēvēji %1$s uz %2$s",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Ustawienia generatora haseł",
"Password length" : "Długość hasła",
"Minimum amount of digits" : "Minimalna liczba znaków",
"Generate password on creation" : "Generuj hasło podczas tworzenia",
"Use uppercase letters" : "Użyj dużych liter",
"Use lowercase letters" : "Użyj małych liter",
"Use numbers" : "Użyj cyfr",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Ustawienia generatora haseł",
"Password length" : "Długość hasła",
"Minimum amount of digits" : "Minimalna liczba znaków",
"Generate password on creation" : "Generuj hasło podczas tworzenia",
"Use uppercase letters" : "Użyj dużych liter",
"Use lowercase letters" : "Użyj małych liter",
"Use numbers" : "Użyj cyfr",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Configurações de geração de senha",
"Password length" : "Comprimento da senha",
"Minimum amount of digits" : "Quantidade mínima de dígitos",
"Generate password on creation" : "Gerar senha na criação",
"Use uppercase letters" : "Usar letras maiúsculas",
"Use lowercase letters" : "Usar letras minúsculas",
"Use numbers" : "Usar números",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Configurações de geração de senha",
"Password length" : "Comprimento da senha",
"Minimum amount of digits" : "Quantidade mínima de dígitos",
"Generate password on creation" : "Gerar senha na criação",
"Use uppercase letters" : "Usar letras maiúsculas",
"Use lowercase letters" : "Usar letras minúsculas",
"Use numbers" : "Usar números",

View file

@ -66,10 +66,24 @@ OC.L10N.register(
"Loading …" : "A carregar...",
"email" : "email",
"Description" : "Descrição",
"%1$s has been created by %2$s" : "%1$sfoi criado por %2$s",
"You created %1$s" : "Criou %1$s",
"%1$s has been updated by %2$s" : "%1$sfoi atualizado por %2$s",
"You updated %1$s" : "Atualizou %1$s",
"You reverted %1$s back to the revision of %3$s" : "Reverteu %1$spara a revisão %3$s",
"You renamed %1$s to %2$s" : "Alterou o nome %1$s para%2$s",
"%1$s has been deleted by %2$s" : "%1$sfoi eliminado por %2$s",
"You deleted %1$s" : "Eliminou %1$s",
"%1$s has been recovered by %2$s" : "%1$sfoi recuperado por %2$s",
"You recovered %1$s" : "Recuperou %1$s",
"%1$s has been permanently deleted by %2$s" : "%1$sfoi eliminado permanentemente por %2$s",
"You permanently deleted %1$s" : "Eliminou permanentemente %1$s",
"The password of %1$s has expired, renew it now." : "A palavra-passe de %1$sexpirou. Renovar agora.",
"%s has been shared with a link" : "%s partilhou uma hiperligação",
"Passwords" : "Palavras-passe",
"Your credential \"%s\" expired, click here to update the credential." : "A sua credencial \"%s\" expirou. Click aqui para atualizar a sua credencial.",
"Remind me later" : "Lembrar-me mais tarde",
"Ignore" : "Ignorar",
"Allow users on this server to share passwords with a link" : "Permitir que os utilizadores neste servidor partilhem as palavras-passe com uma hiperligação",
"An error occurred!" : "Ocorreu um erro!",
"E-mail" : "Correio Eletrónico",

View file

@ -64,10 +64,24 @@
"Loading …" : "A carregar...",
"email" : "email",
"Description" : "Descrição",
"%1$s has been created by %2$s" : "%1$sfoi criado por %2$s",
"You created %1$s" : "Criou %1$s",
"%1$s has been updated by %2$s" : "%1$sfoi atualizado por %2$s",
"You updated %1$s" : "Atualizou %1$s",
"You reverted %1$s back to the revision of %3$s" : "Reverteu %1$spara a revisão %3$s",
"You renamed %1$s to %2$s" : "Alterou o nome %1$s para%2$s",
"%1$s has been deleted by %2$s" : "%1$sfoi eliminado por %2$s",
"You deleted %1$s" : "Eliminou %1$s",
"%1$s has been recovered by %2$s" : "%1$sfoi recuperado por %2$s",
"You recovered %1$s" : "Recuperou %1$s",
"%1$s has been permanently deleted by %2$s" : "%1$sfoi eliminado permanentemente por %2$s",
"You permanently deleted %1$s" : "Eliminou permanentemente %1$s",
"The password of %1$s has expired, renew it now." : "A palavra-passe de %1$sexpirou. Renovar agora.",
"%s has been shared with a link" : "%s partilhou uma hiperligação",
"Passwords" : "Palavras-passe",
"Your credential \"%s\" expired, click here to update the credential." : "A sua credencial \"%s\" expirou. Click aqui para atualizar a sua credencial.",
"Remind me later" : "Lembrar-me mais tarde",
"Ignore" : "Ignorar",
"Allow users on this server to share passwords with a link" : "Permitir que os utilizadores neste servidor partilhem as palavras-passe com uma hiperligação",
"An error occurred!" : "Ocorreu um erro!",
"E-mail" : "Correio Eletrónico",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Настройки создания пароля",
"Password length" : "Длина пароля",
"Minimum amount of digits" : "Минимальное число цифр",
"Generate password on creation" : "Генерировать пароль при создании",
"Use uppercase letters" : "Использовать верхний регистр",
"Use lowercase letters" : "Использовать нижний регистр",
"Use numbers" : "Использовать числа",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Настройки создания пароля",
"Password length" : "Длина пароля",
"Minimum amount of digits" : "Минимальное число цифр",
"Generate password on creation" : "Генерировать пароль при создании",
"Use uppercase letters" : "Использовать верхний регистр",
"Use lowercase letters" : "Использовать нижний регистр",
"Use numbers" : "Использовать числа",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Nastavenia vytvorenia hesla",
"Password length" : "Dĺžka hesla",
"Minimum amount of digits" : "Minimálny počet číselných znakov",
"Generate password on creation" : "Generovať heslo pri vytváraní",
"Use uppercase letters" : "Použiť veľké znaky",
"Use lowercase letters" : "Použiť malé znaky",
"Use numbers" : "Použiť číselné znaky",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Nastavenia vytvorenia hesla",
"Password length" : "Dĺžka hesla",
"Minimum amount of digits" : "Minimálny počet číselných znakov",
"Generate password on creation" : "Generovať heslo pri vytváraní",
"Use uppercase letters" : "Použiť veľké znaky",
"Use lowercase letters" : "Použiť malé znaky",
"Use numbers" : "Použiť číselné znaky",

View file

@ -21,6 +21,7 @@ OC.L10N.register(
"Done" : "Klar",
"File read." : "Filen läst.",
"Proceed with the following steps to import your file" : "Utför följande steg för att importera din fil",
"Skipping unlabeled credential" : "Lämnar omärkta behörigheter",
"Adding {{credential}}" : "Lägger till {{credential}}",
"Added {{credential}}" : "La till {{credential}}",
"Skipping credential, missing label on line {{line}}" : "Hoppar över uppgifterna, etikett saknas på rad {{line}}",
@ -151,7 +152,7 @@ OC.L10N.register(
"Result" : "Resultat",
"A total of {{scan_result}} weak credentials were found." : "Totalt {{scan_result}} svaga lösenord hittades.",
"Score" : "Poäng",
"Action" : "Action",
"Action" : "Aktion",
"Missing users? Only users that have vaults are shown." : "Saknas användare? Endast användare med valv visas.",
"Cyphering" : "Cyphering",
"Uploading" : "Laddar upp",
@ -220,6 +221,7 @@ OC.L10N.register(
"Use regex" : "Använd reguljära uttryck",
"You have incoming share requests." : "Du har inkommande delningsförfrågningar",
"If you want to put the credential in another vault," : "Om du vill lägga uppgifterna i ett annat valv,",
"log out of this vault and log into the vault you want the shared credential in." : "Loggar ut från detta valv och loggar in i det valv som du vill ha delade behörigheter i,",
"Permissions" : "Behörigheter",
"Received from" : "Mottaget från",
"Date" : "Datum",
@ -229,6 +231,13 @@ OC.L10N.register(
"Your vault has been locked for {{time}} because of {{tries}} failed attempts!" : "Ditt valv har blivit låst i {{time}} pga {{tries}} misslyckade försök!",
"Hello there!" : "Hallå där!",
"It does not seem that you have any passwords. Do you want to add one?" : "Det verkar inte som om du har några lösenord. Vill du lägga till ett?",
"You don't have good credentials" : "Du har inga bra behörigheter",
"You don't have medium credentials" : "Du har inte mellan behörigheter",
"You don't have bad credentials" : "Du har inga dåliga autentisieringsuppgifter",
"You don't have expired credentials" : "Du har inga utgågna autentiseringsuppgifter",
"You don't have deleted credentials" : "Du har inga borttagna behörigheter",
"There are no credentials with your selected tags" : "Det finns inga autentiseringsuppgifter med din markerade taggar",
"There are no credentials matching" : "Inga inloggningsuppgifter som matchar",
"Last accessed" : "Senast öppnad",
"Never" : "Aldrig",
"No vaults found, why not create one?" : "Inga valv hittades, varför inte skapa ett?",
@ -271,6 +280,7 @@ OC.L10N.register(
"Click here to request it" : "Klicka här för att begära det",
"Loading …" : "Läser in …",
"Compromised!" : "Komprimerad!",
"This password is compromised. You can only remove this warning by changing the password." : "Detta lösenord är läckt. Du kan endast ta bort den här varningen genom att byta lösenordet",
"email" : "e-post",
"Description" : "Beskrivning",
"Custom Search:" : "Anpassad sökning:",

View file

@ -19,6 +19,7 @@
"Done" : "Klar",
"File read." : "Filen läst.",
"Proceed with the following steps to import your file" : "Utför följande steg för att importera din fil",
"Skipping unlabeled credential" : "Lämnar omärkta behörigheter",
"Adding {{credential}}" : "Lägger till {{credential}}",
"Added {{credential}}" : "La till {{credential}}",
"Skipping credential, missing label on line {{line}}" : "Hoppar över uppgifterna, etikett saknas på rad {{line}}",
@ -149,7 +150,7 @@
"Result" : "Resultat",
"A total of {{scan_result}} weak credentials were found." : "Totalt {{scan_result}} svaga lösenord hittades.",
"Score" : "Poäng",
"Action" : "Action",
"Action" : "Aktion",
"Missing users? Only users that have vaults are shown." : "Saknas användare? Endast användare med valv visas.",
"Cyphering" : "Cyphering",
"Uploading" : "Laddar upp",
@ -218,6 +219,7 @@
"Use regex" : "Använd reguljära uttryck",
"You have incoming share requests." : "Du har inkommande delningsförfrågningar",
"If you want to put the credential in another vault," : "Om du vill lägga uppgifterna i ett annat valv,",
"log out of this vault and log into the vault you want the shared credential in." : "Loggar ut från detta valv och loggar in i det valv som du vill ha delade behörigheter i,",
"Permissions" : "Behörigheter",
"Received from" : "Mottaget från",
"Date" : "Datum",
@ -227,6 +229,13 @@
"Your vault has been locked for {{time}} because of {{tries}} failed attempts!" : "Ditt valv har blivit låst i {{time}} pga {{tries}} misslyckade försök!",
"Hello there!" : "Hallå där!",
"It does not seem that you have any passwords. Do you want to add one?" : "Det verkar inte som om du har några lösenord. Vill du lägga till ett?",
"You don't have good credentials" : "Du har inga bra behörigheter",
"You don't have medium credentials" : "Du har inte mellan behörigheter",
"You don't have bad credentials" : "Du har inga dåliga autentisieringsuppgifter",
"You don't have expired credentials" : "Du har inga utgågna autentiseringsuppgifter",
"You don't have deleted credentials" : "Du har inga borttagna behörigheter",
"There are no credentials with your selected tags" : "Det finns inga autentiseringsuppgifter med din markerade taggar",
"There are no credentials matching" : "Inga inloggningsuppgifter som matchar",
"Last accessed" : "Senast öppnad",
"Never" : "Aldrig",
"No vaults found, why not create one?" : "Inga valv hittades, varför inte skapa ett?",
@ -269,6 +278,7 @@
"Click here to request it" : "Klicka här för att begära det",
"Loading …" : "Läser in …",
"Compromised!" : "Komprimerad!",
"This password is compromised. You can only remove this warning by changing the password." : "Detta lösenord är läckt. Du kan endast ta bort den här varningen genom att byta lösenordet",
"email" : "e-post",
"Description" : "Beskrivning",
"Custom Search:" : "Anpassad sökning:",

View file

@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "Parola üretme ayarları",
"Password length" : "Parola uzunluğu",
"Minimum amount of digits" : "En az rakam sayısı",
"Generate password on creation" : "Eklenirken parola oluşturulsun",
"Use uppercase letters" : "Büyük harfler kullanılsın",
"Use lowercase letters" : "Küçük harfler kullanılsın",
"Use numbers" : "Rakamlar kullanılsın",

View file

@ -108,6 +108,7 @@
"Password generation settings" : "Parola üretme ayarları",
"Password length" : "Parola uzunluğu",
"Minimum amount of digits" : "En az rakam sayısı",
"Generate password on creation" : "Eklenirken parola oluşturulsun",
"Use uppercase letters" : "Büyük harfler kullanılsın",
"Use lowercase letters" : "Küçük harfler kullanılsın",
"Use numbers" : "Rakamlar kullanılsın",

View file

@ -10,73 +10,175 @@ OC.L10N.register(
"Error loading file" : "Помилка завантаження файлу",
"An error occurred during decryption" : "Під час розшифрування сталася помилка",
"Credential created!" : "Магістрант створено!",
"Credential deleted" : "Облікові дані вилучено",
"Credential updated" : "Дані авторизації оновлено",
"Credential recovered" : "Дані авторизації відновлено",
"Invalid QR code" : "Недійсний QR-код",
"Starting export" : "Початок експорту",
"Done" : "Готово",
"Importing" : "Імпорт",
"Select CSV file" : "Виберіть файл CSV",
"Settings saved" : "Налаштування збережено",
"General settings" : "Загальні налаштування",
"Sharing" : "Поділитись",
"Password settings" : "Параметри пароля",
"Export credentials" : "Експортувати дані авторизації",
"Sharing" : "Поділитися",
"Share with users and groups" : "Поділитися з користувачами та групами",
"Share link" : "Поширити посилання",
"Share link" : "Поділитися посиланням",
"Are you sure you want to leave? This will corrupt this credential" : "Дійсно вийти? Це призведе до того, що дані авторизації стануть недійсними",
"Credential unshared" : "Доступ до даних авторизації скасовано",
"Saved!" : "Збережено!",
"Poor" : "Погано",
"Weak" : "Слабкий",
"Good" : "Добре",
"Strong" : "Сильно",
"Toggle visibility" : "Змінити подання",
"Copy to clipboard" : "Скопіювати в буфер обміну ",
"Copied to clipboard!" : "Скопійовано в буфер обміну! ",
"Generate password" : "Створити пароль",
"Copy password to clipboard" : "Скопіювати пароль в буфер обміну ",
"Password copied to clipboard!" : "Пароль скопійовано в буфер обміну! ",
"Complete" : "Завершено ",
"Username" : "Логін",
"Repeat password" : "Повторіть пароль",
"Add tag" : "Додати позначку",
"This may take a few seconds …" : "Може тривати кілька секунд...",
"Field label" : "Мітка поля",
"Field value" : "Значення поля",
"Choose a file" : "Виберіть файл",
"Text" : "Текст",
"File" : "Файл",
"Add" : "Додати",
"Value" : "Значення",
"Type" : "Тип",
"Actions" : "Дії",
"Empty" : "Порожньо",
"Filename" : "Ім'я файлу",
"Upload date" : "Дата вивантаження",
"Size" : "Розмір",
"Secret" : "Секретне",
"Expiration date" : "Термін дії",
"No expiration date set" : "Не встановлено терміну дії",
"Renew interval" : "Інтервал оновлення",
"Disabled" : "Вимкнено",
"Day(s)" : "День (дні(в))",
"Week(s)" : "Тиждень (тижні)",
"Month(s)" : "Місяць (місяці)",
"Year(s)" : "Рік (роки)",
"Password length" : "Довжина пароля",
"Minimum amount of digits" : "Мінімальна кількість цифр",
"Use uppercase letters" : "Використовуйте великі літери",
"Use lowercase letters" : "Використовуйте малі літери ",
"Use numbers" : "Використовуйте цифри",
"Use special characters" : "Використовуйте спеціальні символи",
"Export" : "Експорт",
"Rename vault" : "Перейменувати сховище",
"Change" : "Змінити",
"Old vault password" : "Старий пароль до сховища",
"New vault password" : "Новий пароль до сховища",
"Processing" : "Опрацювання",
"Total progress" : "Загалом",
"About Passman" : "Про Passman",
"Version" : "Версія",
"Donate to support development" : "Пожертвуйте на розвиток проєкту",
"Delete vault" : "Вилучити сховище ",
"Vault password" : "Пароль для сховища",
"This process is irreversible" : "Цю операцію неможливо буде скасувати",
"Import type" : "Вид імпорту",
"Import" : "Імпорт",
"Read progress" : "Поступ зчитування",
"Upload progress" : "Триває завантаження",
"Private Key" : "Приватний ключ",
"Public key" : "Відкритий ключ",
"Key size" : "Розмір ключа",
"Save keys" : "Зберегти ключі",
"Generating sharing keys" : "Створення ключів доступу",
"Minimum password stength" : "Мінімальна довжина пароля",
"Start scan" : "Розпочати сканування",
"Result" : "Результат",
"Score" : "Оцінка",
"Action" : "Дія ",
"Uploading" : "Uploading",
"User" : "Користувач",
"Read" : "Читати",
"Write" : "Запис",
"Files" : "Файли",
"Revisions" : "Ревізії",
"Pending" : "Очікування",
"Enable link sharing" : "Увімкнути посилання для спільного доступу",
"Share until date" : "Доступ спливає",
"Show files" : "Показати файли",
"Details" : "Деталі",
"Hide details" : "Приховати деталі",
"Password score" : "Стійкість паролю",
"Match sequence" : "Послідовність збігу",
"Pattern" : "Шаблон",
"Matched word" : "Знайдено слово",
"Dictionary name" : "Назва словника",
"Reversed" : "Повернуто",
"by" : "від",
"No revisions found." : "Відсутні ревізії.",
"Label" : "Мітка",
"Delete revision" : "Вилучити ревізії",
"Save" : "Зберегти",
"Cancel" : "Скасувати",
"Settings" : "Налаштування",
"Share credential {{credential}}" : "Поділитися даними авторизації {{credential}}",
"Unshare" : "Закрити доступ",
"Showing deleted since" : "Елементи, які було вилучено від",
"Account" : "Обліковий запис",
"Password" : "Пароль",
"OTP" : "Одноразовий пароль",
"Email" : "Електронна пошта",
"URL" : "URL-адреса",
"URL" : "URL",
"Notes" : "Нотатки",
"Changed" : "Змінено",
"Created" : "Створено",
"Edit" : "Редашувати",
"Delete" : "Вилучити",
"Share" : "Поділитися",
"Share" : "Спільний доступ",
"Recover" : "Відновити",
"Destroy" : "Знищити",
"Use regex" : "Використовуйте regex",
"You have incoming share requests." : "Отримано запит на доступ до даних авторизації",
"Permissions" : "Дозволи ",
"Received from" : "Отримано від",
"Date" : "Date",
"Accept" : "Прийняти",
"Decline" : "Відхилити",
"Last accessed" : "Останній доступ",
"Never" : "Ніколи",
"Password strength must be at least: {{strength}}" : "Довжина пароля повинна бути не менше: {{strength}}",
"Please give your new vault a name." : "Будь ласка, дайте своєму новому сховищу назву.",
"Repeat vault password" : "Повторити пароль до сховища",
"Create vault" : "Створити сховище ",
"Go back to vaults" : "Повернутися до сховищ",
"Please input the password for" : "Будь ласка, введіть пароль для",
"Logout" : "Вийти",
"Donate" : "Пожертвувати кошти",
"Tags" : "Позначки",
"Someone has shared a credential with you." : "З вами поділилися даними авторизації.",
"Loading …" : "Завантаження...",
"email" : "електронна пошта",
"Description" : "Опис",
"A Passman item has been created, modified or deleted" : "Створено, змінено або вилучено елемент Passman",
"You created %1$s" : "Вами створено %1$s",
"%1$s has been updated by %2$s" : "%1$s було оновлено на %2$s ",
"You updated %1$s" : "Ви оновили %1$s",
"You renamed %1$s to %2$s" : "Ви перейменували %1$s на %2$s ",
"You deleted %1$s" : "Ви вилучили %1$s",
"You recovered %1$s" : "Вами відновлено %1$s ",
"You permanently deleted %1$s" : "Ви назавжди вилучили %1$s ",
"Passwords" : "Паролі",
"Remind me later" : "Нагадати пізніше",
"Ignore" : "Ігнорувати",
"Unable to get version info" : "Не вдається отримати інформацію про версію ",
"Passman Settings" : "Налаштування Passman",
"A newer version of Passman is available" : "Доступна нова версія Passman",
"Check for new versions" : "Перевірте наявність нових версій",
"Disable context menu" : "Вимкнути контекстне меню",
"An error occurred!" : "Сталася помилка!",
"Reason" : "Причина",
"E-mail" : "Електронна пошта",
"Expires:" : "Термін дії до:",
"Connection to server lost" : "З'єднання з сервером втрачено",

View file

@ -8,73 +8,175 @@
"Error loading file" : "Помилка завантаження файлу",
"An error occurred during decryption" : "Під час розшифрування сталася помилка",
"Credential created!" : "Магістрант створено!",
"Credential deleted" : "Облікові дані вилучено",
"Credential updated" : "Дані авторизації оновлено",
"Credential recovered" : "Дані авторизації відновлено",
"Invalid QR code" : "Недійсний QR-код",
"Starting export" : "Початок експорту",
"Done" : "Готово",
"Importing" : "Імпорт",
"Select CSV file" : "Виберіть файл CSV",
"Settings saved" : "Налаштування збережено",
"General settings" : "Загальні налаштування",
"Sharing" : "Поділитись",
"Password settings" : "Параметри пароля",
"Export credentials" : "Експортувати дані авторизації",
"Sharing" : "Поділитися",
"Share with users and groups" : "Поділитися з користувачами та групами",
"Share link" : "Поширити посилання",
"Share link" : "Поділитися посиланням",
"Are you sure you want to leave? This will corrupt this credential" : "Дійсно вийти? Це призведе до того, що дані авторизації стануть недійсними",
"Credential unshared" : "Доступ до даних авторизації скасовано",
"Saved!" : "Збережено!",
"Poor" : "Погано",
"Weak" : "Слабкий",
"Good" : "Добре",
"Strong" : "Сильно",
"Toggle visibility" : "Змінити подання",
"Copy to clipboard" : "Скопіювати в буфер обміну ",
"Copied to clipboard!" : "Скопійовано в буфер обміну! ",
"Generate password" : "Створити пароль",
"Copy password to clipboard" : "Скопіювати пароль в буфер обміну ",
"Password copied to clipboard!" : "Пароль скопійовано в буфер обміну! ",
"Complete" : "Завершено ",
"Username" : "Логін",
"Repeat password" : "Повторіть пароль",
"Add tag" : "Додати позначку",
"This may take a few seconds …" : "Може тривати кілька секунд...",
"Field label" : "Мітка поля",
"Field value" : "Значення поля",
"Choose a file" : "Виберіть файл",
"Text" : "Текст",
"File" : "Файл",
"Add" : "Додати",
"Value" : "Значення",
"Type" : "Тип",
"Actions" : "Дії",
"Empty" : "Порожньо",
"Filename" : "Ім'я файлу",
"Upload date" : "Дата вивантаження",
"Size" : "Розмір",
"Secret" : "Секретне",
"Expiration date" : "Термін дії",
"No expiration date set" : "Не встановлено терміну дії",
"Renew interval" : "Інтервал оновлення",
"Disabled" : "Вимкнено",
"Day(s)" : "День (дні(в))",
"Week(s)" : "Тиждень (тижні)",
"Month(s)" : "Місяць (місяці)",
"Year(s)" : "Рік (роки)",
"Password length" : "Довжина пароля",
"Minimum amount of digits" : "Мінімальна кількість цифр",
"Use uppercase letters" : "Використовуйте великі літери",
"Use lowercase letters" : "Використовуйте малі літери ",
"Use numbers" : "Використовуйте цифри",
"Use special characters" : "Використовуйте спеціальні символи",
"Export" : "Експорт",
"Rename vault" : "Перейменувати сховище",
"Change" : "Змінити",
"Old vault password" : "Старий пароль до сховища",
"New vault password" : "Новий пароль до сховища",
"Processing" : "Опрацювання",
"Total progress" : "Загалом",
"About Passman" : "Про Passman",
"Version" : "Версія",
"Donate to support development" : "Пожертвуйте на розвиток проєкту",
"Delete vault" : "Вилучити сховище ",
"Vault password" : "Пароль для сховища",
"This process is irreversible" : "Цю операцію неможливо буде скасувати",
"Import type" : "Вид імпорту",
"Import" : "Імпорт",
"Read progress" : "Поступ зчитування",
"Upload progress" : "Триває завантаження",
"Private Key" : "Приватний ключ",
"Public key" : "Відкритий ключ",
"Key size" : "Розмір ключа",
"Save keys" : "Зберегти ключі",
"Generating sharing keys" : "Створення ключів доступу",
"Minimum password stength" : "Мінімальна довжина пароля",
"Start scan" : "Розпочати сканування",
"Result" : "Результат",
"Score" : "Оцінка",
"Action" : "Дія ",
"Uploading" : "Uploading",
"User" : "Користувач",
"Read" : "Читати",
"Write" : "Запис",
"Files" : "Файли",
"Revisions" : "Ревізії",
"Pending" : "Очікування",
"Enable link sharing" : "Увімкнути посилання для спільного доступу",
"Share until date" : "Доступ спливає",
"Show files" : "Показати файли",
"Details" : "Деталі",
"Hide details" : "Приховати деталі",
"Password score" : "Стійкість паролю",
"Match sequence" : "Послідовність збігу",
"Pattern" : "Шаблон",
"Matched word" : "Знайдено слово",
"Dictionary name" : "Назва словника",
"Reversed" : "Повернуто",
"by" : "від",
"No revisions found." : "Відсутні ревізії.",
"Label" : "Мітка",
"Delete revision" : "Вилучити ревізії",
"Save" : "Зберегти",
"Cancel" : "Скасувати",
"Settings" : "Налаштування",
"Share credential {{credential}}" : "Поділитися даними авторизації {{credential}}",
"Unshare" : "Закрити доступ",
"Showing deleted since" : "Елементи, які було вилучено від",
"Account" : "Обліковий запис",
"Password" : "Пароль",
"OTP" : "Одноразовий пароль",
"Email" : "Електронна пошта",
"URL" : "URL-адреса",
"URL" : "URL",
"Notes" : "Нотатки",
"Changed" : "Змінено",
"Created" : "Створено",
"Edit" : "Редашувати",
"Delete" : "Вилучити",
"Share" : "Поділитися",
"Share" : "Спільний доступ",
"Recover" : "Відновити",
"Destroy" : "Знищити",
"Use regex" : "Використовуйте regex",
"You have incoming share requests." : "Отримано запит на доступ до даних авторизації",
"Permissions" : "Дозволи ",
"Received from" : "Отримано від",
"Date" : "Date",
"Accept" : "Прийняти",
"Decline" : "Відхилити",
"Last accessed" : "Останній доступ",
"Never" : "Ніколи",
"Password strength must be at least: {{strength}}" : "Довжина пароля повинна бути не менше: {{strength}}",
"Please give your new vault a name." : "Будь ласка, дайте своєму новому сховищу назву.",
"Repeat vault password" : "Повторити пароль до сховища",
"Create vault" : "Створити сховище ",
"Go back to vaults" : "Повернутися до сховищ",
"Please input the password for" : "Будь ласка, введіть пароль для",
"Logout" : "Вийти",
"Donate" : "Пожертвувати кошти",
"Tags" : "Позначки",
"Someone has shared a credential with you." : "З вами поділилися даними авторизації.",
"Loading …" : "Завантаження...",
"email" : "електронна пошта",
"Description" : "Опис",
"A Passman item has been created, modified or deleted" : "Створено, змінено або вилучено елемент Passman",
"You created %1$s" : "Вами створено %1$s",
"%1$s has been updated by %2$s" : "%1$s було оновлено на %2$s ",
"You updated %1$s" : "Ви оновили %1$s",
"You renamed %1$s to %2$s" : "Ви перейменували %1$s на %2$s ",
"You deleted %1$s" : "Ви вилучили %1$s",
"You recovered %1$s" : "Вами відновлено %1$s ",
"You permanently deleted %1$s" : "Ви назавжди вилучили %1$s ",
"Passwords" : "Паролі",
"Remind me later" : "Нагадати пізніше",
"Ignore" : "Ігнорувати",
"Unable to get version info" : "Не вдається отримати інформацію про версію ",
"Passman Settings" : "Налаштування Passman",
"A newer version of Passman is available" : "Доступна нова версія Passman",
"Check for new versions" : "Перевірте наявність нових версій",
"Disable context menu" : "Вимкнути контекстне меню",
"An error occurred!" : "Сталася помилка!",
"Reason" : "Причина",
"E-mail" : "Електронна пошта",
"Expires:" : "Термін дії до:",
"Connection to server lost" : "З'єднання з сервером втрачено",

View file

@ -1,29 +1,34 @@
OC.L10N.register(
"passman",
{
"General" : "Umumiy",
"Error loading file" : "Faylni yuklashda xato",
"Done" : "Bajarildi",
"Share link" : "Ulanishni ulashing",
"Saved!" : "Saqlangan!",
"Username" : "Foydalanuvchi nomi",
"File" : "Fayl",
"Add" : "Qo'shish",
"Uploading" : "Yuklash",
"Files" : "Fayllar",
"Pending" : "Kutilmoqda",
"Save" : "Saqlash",
"Cancel" : "Bekor qilish",
"Settings" : "Sozlamalar",
"Unshare" : "Ajablanmaslik",
"Password" : "Parol",
"Notes" : "Eslatmalar",
"Delete" : "O'chir",
"Tags" : "Teglar",
"email" : "elektron pochta",
"Passwords" : "Parollar",
"Connection to server lost" : "Serverga ulanish yo'qoldi",
"Dismiss" : "Tashlab qo'ymang",
"seconds ago" : "soniya oldin"
"General" : "General",
"Error loading file" : "Error loading file",
"Done" : "Done",
"Settings saved" : "Settings saved",
"Sharing" : "Ulashish",
"Share link" : "Share link",
"Saved!" : "Saved!",
"Username" : "Username",
"File" : "File",
"Add" : "Add",
"Actions" : "Actions",
"Size" : "Size",
"Uploading" : "Uploading",
"Files" : "Files",
"Pending" : "Pending",
"Details" : "Details",
"Save" : "Save",
"Cancel" : "Cancel",
"Settings" : "Settings",
"Unshare" : "Unshare",
"Password" : "Password",
"Notes" : "Notes",
"Delete" : "Delete",
"Tags" : "Tags",
"email" : "email",
"Passwords" : "Passwords",
"Connection to server lost" : "Connection to server lost",
"Dismiss" : "Dismiss",
"seconds ago" : "seconds ago"
},
"nplurals=1; plural=0;");

View file

@ -1,27 +1,32 @@
{ "translations": {
"General" : "Umumiy",
"Error loading file" : "Faylni yuklashda xato",
"Done" : "Bajarildi",
"Share link" : "Ulanishni ulashing",
"Saved!" : "Saqlangan!",
"Username" : "Foydalanuvchi nomi",
"File" : "Fayl",
"Add" : "Qo'shish",
"Uploading" : "Yuklash",
"Files" : "Fayllar",
"Pending" : "Kutilmoqda",
"Save" : "Saqlash",
"Cancel" : "Bekor qilish",
"Settings" : "Sozlamalar",
"Unshare" : "Ajablanmaslik",
"Password" : "Parol",
"Notes" : "Eslatmalar",
"Delete" : "O'chir",
"Tags" : "Teglar",
"email" : "elektron pochta",
"Passwords" : "Parollar",
"Connection to server lost" : "Serverga ulanish yo'qoldi",
"Dismiss" : "Tashlab qo'ymang",
"seconds ago" : "soniya oldin"
"General" : "General",
"Error loading file" : "Error loading file",
"Done" : "Done",
"Settings saved" : "Settings saved",
"Sharing" : "Ulashish",
"Share link" : "Share link",
"Saved!" : "Saved!",
"Username" : "Username",
"File" : "File",
"Add" : "Add",
"Actions" : "Actions",
"Size" : "Size",
"Uploading" : "Uploading",
"Files" : "Files",
"Pending" : "Pending",
"Details" : "Details",
"Save" : "Save",
"Cancel" : "Cancel",
"Settings" : "Settings",
"Unshare" : "Unshare",
"Password" : "Password",
"Notes" : "Notes",
"Delete" : "Delete",
"Tags" : "Tags",
"email" : "email",
"Passwords" : "Passwords",
"Connection to server lost" : "Connection to server lost",
"Dismiss" : "Dismiss",
"seconds ago" : "seconds ago"
},"pluralForm" :"nplurals=1; plural=0;"
}

View file

@ -52,6 +52,7 @@ OC.L10N.register(
"Files" : "Tệp tin",
"Pending" : "Đang dừng",
"Details" : "Thông tin",
"Hide details" : "Ẩn chi tiết",
"by" : "bởi",
"Label" : "Nhãn",
"Save" : "Lưu",

View file

@ -50,6 +50,7 @@
"Files" : "Tệp tin",
"Pending" : "Đang dừng",
"Details" : "Thông tin",
"Hide details" : "Ẩn chi tiết",
"by" : "bởi",
"Label" : "Nhãn",
"Save" : "Lưu",

View file

@ -27,11 +27,11 @@ OC.L10N.register(
"Adding {{credential}}" : "添加 {{credential}}",
"Added {{credential}}" : "已添加 {{credential}}",
"Skipping credential, missing label on line {{line}}" : "跳過身分驗證,{{line}} 行缺少標籤",
"Parsed {{num}} credentials, starting to import" : "解析 {{num}} 個身分驗證,開始導入",
"Parsed {{num}} credentials, starting to import" : "解析 {{num}} 個身分驗證,開始導入",
"Importing" : "正在導入",
"Start import" : "開始導入",
"Select CSV file" : "選擇 CSV 檔案",
"Parsed {{rows}} lines from CSV file" : "從 CSV 檔案解析了 {{rows}} 行",
"Parsed {{rows}} lines from CSV file" : "從 CSV 檔案解析了 {{rows}} 行",
"Skip first row" : "跳過第一行",
"You need to assign the label field before you can start the import." : "開始導入之前需要先賦值標籤字段。",
"The first 5 lines of the CSV are shown." : "顯示 CSV 的前 5 行。",
@ -110,6 +110,7 @@ OC.L10N.register(
"Password generation settings" : "生成密碼設置",
"Password length" : "密碼長度",
"Minimum amount of digits" : "最小數字位數",
"Generate password on creation" : "創建時産生密碼",
"Use uppercase letters" : "使用大寫字母 ",
"Use lowercase letters" : "使用小寫字母",
"Use numbers" : "使用數字",

View file

@ -25,11 +25,11 @@
"Adding {{credential}}" : "添加 {{credential}}",
"Added {{credential}}" : "已添加 {{credential}}",
"Skipping credential, missing label on line {{line}}" : "跳過身分驗證,{{line}} 行缺少標籤",
"Parsed {{num}} credentials, starting to import" : "解析 {{num}} 個身分驗證,開始導入",
"Parsed {{num}} credentials, starting to import" : "解析 {{num}} 個身分驗證,開始導入",
"Importing" : "正在導入",
"Start import" : "開始導入",
"Select CSV file" : "選擇 CSV 檔案",
"Parsed {{rows}} lines from CSV file" : "從 CSV 檔案解析了 {{rows}} 行",
"Parsed {{rows}} lines from CSV file" : "從 CSV 檔案解析了 {{rows}} 行",
"Skip first row" : "跳過第一行",
"You need to assign the label field before you can start the import." : "開始導入之前需要先賦值標籤字段。",
"The first 5 lines of the CSV are shown." : "顯示 CSV 的前 5 行。",
@ -108,6 +108,7 @@
"Password generation settings" : "生成密碼設置",
"Password length" : "密碼長度",
"Minimum amount of digits" : "最小數字位數",
"Generate password on creation" : "創建時産生密碼",
"Use uppercase letters" : "使用大寫字母 ",
"Use lowercase letters" : "使用小寫字母",
"Use numbers" : "使用數字",

View file

@ -104,6 +104,7 @@ OC.L10N.register(
"Accept" : "接受",
"Decline" : "拒絕",
"Never" : "絕不",
"Logout" : "登出",
"Donate" : "斗內",
"Tags" : "標籤",
"Expired" : "已過期",

View file

@ -102,6 +102,7 @@
"Accept" : "接受",
"Decline" : "拒絕",
"Never" : "絕不",
"Logout" : "登出",
"Donate" : "斗內",
"Tags" : "標籤",
"Expired" : "已過期",

View file

@ -18,4 +18,13 @@
#requests-table{
width: 100%;
}
.link {
cursor: pointer;
}
.link.accept:hover {
color: var(--color-error);
}
.link.ignore:hover {
color: var(--color-primary);
}
}

View file

@ -70,19 +70,20 @@
#passman-controls {
box-sizing: border-box;
position: fixed;
margin: -45px 0 0;
margin: -58px 8px 0 0;
right: 0;
left: 0;
border-bottom: 1px solid #c9c9c9;
padding: 0 !important;
background-color: rgba(255, 255, 255, .95);
//background-color: rgba(255, 255, 255, .95);
z-index: 50;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
min-height: 58px !important;
//height: auto!important;
padding-right: 20px !important;
height: 44px !important;
.breadcrumb{
//Move Homeicon to the right to prevent overlap with burgermenu
@media only screen and (max-width: 769px) {
@ -100,8 +101,8 @@
}
@media only screen and (min-width: 1024px){
#app-navigation+#app-content #passman-controls {
left: 300px;
width: calc( 100% - 300px ) !important;
left: 308px;
//width: calc( 100% - 300px ) !important;
}
}
#passman-controls .button, #passman-controls, #passman-controls input[type='submit'], #passman-controls input[type='text'], #passman-controls input[type='password'], #passman-controls select {

View file

@ -24,7 +24,7 @@ header {
display: none;
}
#content {
#inner-app-content {
}
@ -55,13 +55,13 @@ header {
.tab_container {
padding-top: 10px;
margin-bottom: 60px;
overflow: scroll;
div {
margin-bottom: 5px;
overflow: hidden;
}
margin-bottom: 20px;
}
.vault_wrapper {

View file

@ -21,10 +21,11 @@
*/
//override nc style to fix wrong offset
#content {
padding-top: 47px !important; // 45px but +2 because of borders
#inner-app-content {
padding-top: 58px !important; // 45px but +2 because of borders
height: 100%;
width: 100%;
display: flex;
}
//fix for different heights of passwordicon
@ -50,7 +51,7 @@
#app-sidebar{
height: auto;
.sidebar{
display: inline-block;
display: flex;
.sidebar-icon {
margin-right: 15px;
.icon-image-size{
@ -62,7 +63,6 @@
}
.sidebar-label{
float:right;
line-height: 44px;
}
}
}
@ -72,13 +72,12 @@
margin-left: 0px !important;
}
#app-content {
position: sticky;
margin-left: 300px;
@media only screen and (max-width: 769px) {
@media only screen and (max-width: 1024px) {
width: 100vw;
}
@media only screen and (min-width: 770px) {
@media only screen and (min-width: 1025px) {
width: calc(100vw - 300px);
}
@ -86,10 +85,11 @@
//width: 100%;
#app-content-wrapper {
min-height: 95%;
height: 100%;
display:flex;
//hack for missing separatorbar when app-sidebar is opened
height: calc(100vh - 49px);
width: 100%;
padding-right: 15px;
#passman-controls {
text-align: center;
@ -508,6 +508,12 @@
}
.credential-revisions {
div.crumb > a {
max-width: initial!important;
}
}
.main_list{
flex:1;
float:left;
@ -536,7 +542,6 @@
h2 {
margin-bottom: 10px;
font-weight: 400;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 90%;

View file

@ -53,7 +53,7 @@
a {
&.active{
//border-left: 3px solid #0082c9;
background-image: var(--icon-delete-e9322d);
background-image: var(--icon-delete-color-red);
}
//background-color: #fff !important;
opacity: 1 !important;

View file

@ -20,6 +20,9 @@
*
*/
.ng-app-frame {
display: block!important;
}
.spacer-top-30{
margin-top: 30px;
}
@ -87,3 +90,23 @@
h3 {
font-weight: bold;
}
.setting-group {
label, input {
display: block;
}
input[type="text"], input[type="password"], textarea {
width: 100%;
}
}
.setting-group.margin-bottom-25 {
margin-bottom: 25px;
}
.setting-group.margin-bottom-10 {
margin-bottom: 10px;
}
.display-grid {
display: grid;
}
.password-settings-padding-left-fix{
padding-left: 0 !important;
}

View file

@ -66,4 +66,24 @@
.fa-trash:hover {
color: #ce3702;
}
}
}
.tags {
float: left;
.tag {
background-color: rgba(240, 240, 240, .9);
padding: 4px;
font-size: 11px;
}
}
tags-input {
.tags {
width: 100%;
.input {
width: auto!important;
}
.tag-item {
color: var(--color-text-lighter);
}
}
}

View file

@ -38,7 +38,7 @@
.vault_wrapper{
margin:0 auto auto auto;
max-width: 420px;
max-width: 450px;
@include border-radius(5px);
box-shadow: 0 1px 1px #777;
background: #eee;
@ -110,4 +110,4 @@
.vault_wrapper{
width: 90%;
}
}
}

View file

@ -120,7 +120,7 @@ style('passman', 'app');
/*build-css-end*/
?>
<div id="app" ng-app="passmanApp" ng-controller="MainCtrl">
<div id="app" ng-app="passmanApp" ng-controller="MainCtrl" style="display: flex;">
<div id="logoutTimer"></div>
<div id="warning_bar" class="warning_bar template-hidden" ng-if="using_http && http_warning_hidden == false" ng-init="removeHiddenStyles()">
{{ 'http.warning' | translate }}
@ -233,7 +233,7 @@ style('passman', 'app');
<div id="app-content" ng-class="{'vaultlist_sidebar_hidden': !selectedVault}">
<div id="app-content-wrapper">
<div id="content" ng-view="">
<div id="inner-app-content" ng-view="">
</div>
</div>

View file

@ -1,15 +1,16 @@
<div class="main_list" off-click-filter="'.download-js-link, .sidebar-shown, #app-sidebar'">
<div class="main_list credential-revisions" off-click-filter="'.download-js-link, .sidebar-shown, #app-sidebar'">
<div id="passman-controls">
<div class="actions creatable">
<div class="breadcrumb">
<div class="crumb svg ui-droppable">
<a ng-click="logout()"><i class="fa fa-home"></i></a>
<div class="crumb svg crumbhome">
<a ng-click="logout()" class="icon-home">Home</a>
<span style="display: none;"></span>
</div>
<div class="crumb svg">
<a ng-click="cancelRevision()">{{active_vault.name}}</a>
</div>
<div class="crumb svg last">
<a ng-if="storedCredential.credential_id">{{ 'showing.revisions' | translate}} "{{revision.credential_data.label}}"</a>
<a ng-if="storedCredential.credential_id">{{ 'showing.revisions' | translate}} "{{storedCredential.label}}"</a>
</div>
</div>
</div>
@ -35,205 +36,205 @@
ng-show="selectedRevision">
<span class="close icon-close" ng-click="closeSelected()"
alt="Close"></span>
<b ng-show="selectedRevision">{{ 'revision.of' | translate}} {{selectedRevision.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}</b>
<div class="credential-data">
<div class="row" ng-show="selectedRevision.credential_data.label">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'label' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.label"></span></div>
</div>
<b ng-show="selectedRevision">{{ 'revision.of' | translate}} {{selectedRevision.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}</b>
<div class="credential-data">
<div class="row" ng-show="selectedRevision.credential_data.label">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'label' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.label"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.username">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'account' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.username"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.username">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'account' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.username"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.password">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'password' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
<div class="row" ng-show="selectedRevision.credential_data.password">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'password' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
<span credential-field value="selectedRevision.credential_data.password" secret="'true'">
</span>
</div>
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.otp.secret">
<div class="col-xs-4 col-md-3 col-lg-3">{{'otp' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span otp-generator
otp="selectedRevision.credential_data.otp"></span></div>
<div class="row" ng-show="selectedRevision.credential_data.otp.secret">
<div class="col-xs-4 col-md-3 col-lg-3">{{'otp' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span otp-generator
otp="selectedRevision.credential_data.otp"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.email">
<div class="col-xs-4 col-md-3 col-lg-3">{{'email' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.email"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.url">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'url' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.url"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.description">
<div class="col-xs-4 col-md-3 col-lg-3">{{'notes' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field value="selectedRevision.credential_data.description_html"></span></div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.files.length > 0">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'files' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><div ng-repeat="file in selectedRevision.credential_data.files"
class="link" ng-click="downloadFile(selectedRevision.credential_data, file)">
{{file.filename}} ({{file.size | bytes}})
</div></div>
</div>
<div class="row" ng-repeat="field in selectedRevision.credential_data.custom_fields">
<div class="col-xs-4 col-md-3 col-lg-3">{{field.label}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
<span credential-field value="field.value" secret="field.secret" ng-if="field.field_type !== 'file' || !field.field_type"></span>
<span ng-if="field.field_type === 'file'" class="link" ng-click="downloadFile(selectedCredential, field.value)">{{field.value.filename}} ({{field.value.size | bytes}})</span>
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.email">
<div class="col-xs-4 col-md-3 col-lg-3">{{'email' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.email"></span></div>
<div class="row" ng-show="selectedRevision.credential_data.expire_time > 0">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'expire.time' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.expire_time * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.url">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'url' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field
value="selectedRevision.credential_data.url"></span></div>
<div class="row" ng-show="selectedRevision.credential_data.changed">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'changed' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.changed * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.description">
<div class="col-xs-4 col-md-3 col-lg-3">{{'notes' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><span credential-field value="selectedRevision.credential_data.description_html"></span></div>
<div class="row" ng-show="selectedRevision.credential_data.created">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'created' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.files.length > 0">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'files' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9"><div ng-repeat="file in selectedRevision.credential_data.files"
class="link" ng-click="downloadFile(selectedRevision.credential_data, file)">
{{file.filename}} ({{file.size | bytes}})
</div></div>
</div>
<div class="row" ng-repeat="field in selectedRevision.credential_data.custom_fields">
<div class="col-xs-4 col-md-3 col-lg-3">{{field.label}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
<span credential-field value="field.value" secret="field.secret" ng-if="field.field_type !== 'file' || !field.field_type"></span>
<span ng-if="field.field_type === 'file'" class="link" ng-click="downloadFile(selectedCredential, field.value)">{{field.value.filename}} ({{field.value.size | bytes}})</span>
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.expire_time > 0">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'expire.time' | translate }}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.expire_time * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.changed">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'changed' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.changed * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row" ng-show="selectedRevision.credential_data.created">
<div class="col-xs-4 col-md-3 col-lg-3">{{ 'created' | translate}}</div>
<div class="col-xs-8 col-md-9 col-lg-9">
{{selectedRevision.credential_data.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="tags">
<span class="tag" ng-repeat="tag in selectedRevision.credential_data.tags">{{tag.text}}</span>
</div>
<div class="row">
<div class="col-xs-12">
<div class="tags">
<span class="tag" ng-repeat="tag in selectedRevision.credential_data.tags">{{tag.text}}</span>
</div>
</div>
</div>
<!--
<table class="revision-details">
<tr ng-show="selectedRevision.credential_data.label">
<td>
{{ 'label' | translate}}
</td>
<td>
{{selectedRevision.credential_data.label}}
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.username">
<td>
{{ 'account' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.credential_data.username"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.password">
<td>
{{ 'password' | translate}}
</td>
<td>
<span credential-field value="selectedRevision.credential_data.password"
secret="'true'"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.otp.secret">
<td>
{{ 'otp' | translate}}
</td>
<td>
<span otp-generator
otp="selectedRevision.credential_data.otp"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.email">
<td>
{{ 'email' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.credential_data.email"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.url">
<td>
{{ 'url' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.url"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.files.length > 0">
<td>
{{ 'files' | translate}}
</td>
<td>
<div ng-repeat="file in selectedRevision.credential_data.files"
class="link" ng-click="downloadFile(file)">
{{file.filename}} ({{file.size | bytes}})
</div>
</td>
</tr>
<tr ng-repeat="field in selectedRevision.credential_data.custom_fields">
<td>
{{field.label}}
</td>
<td>
<span credential-field value="field.value"
secret="field.secret"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.changed">
<td>
{{ 'changed' | translate}}
</td>
<td>
{{selectedRevision.credential_data.changed * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.created">
<td>
{{ 'created' | translate}}
</td>
<td>
{{selectedRevision.credential_data.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</td>
</tr>
</table>
-->
<div ng-show="selectedRevision">
<button class="button" ng-click="restoreRevision(selectedRevision)" >
<span class="fa fa-edit"></span> {{ 'restore.revision' | translate}}
</button>
<button class="button" ng-click="deleteRevision(selectedRevision)" >
<span class="fa fa-trash"></span> {{ 'delete.revision' | translate}}
</button>
</div>
</div>
<!--
<table class="revision-details">
<tr ng-show="selectedRevision.credential_data.label">
<td>
{{ 'label' | translate}}
</td>
<td>
{{selectedRevision.credential_data.label}}
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.username">
<td>
{{ 'account' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.credential_data.username"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.password">
<td>
{{ 'password' | translate}}
</td>
<td>
<span credential-field value="selectedRevision.credential_data.password"
secret="'true'"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.otp.secret">
<td>
{{ 'otp' | translate}}
</td>
<td>
<span otp-generator
otp="selectedRevision.credential_data.otp"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.email">
<td>
{{ 'email' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.credential_data.email"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.url">
<td>
{{ 'url' | translate}}
</td>
<td>
<span credential-field
value="selectedRevision.url"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.files.length > 0">
<td>
{{ 'files' | translate}}
</td>
<td>
<div ng-repeat="file in selectedRevision.credential_data.files"
class="link" ng-click="downloadFile(file)">
{{file.filename}} ({{file.size | bytes}})
</div>
</td>
</tr>
<tr ng-repeat="field in selectedRevision.credential_data.custom_fields">
<td>
{{field.label}}
</td>
<td>
<span credential-field value="field.value"
secret="field.secret"></span>
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.changed">
<td>
{{ 'changed' | translate}}
</td>
<td>
{{selectedRevision.credential_data.changed * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</td>
</tr>
<tr ng-show="selectedRevision.credential_data.created">
<td>
{{ 'created' | translate}}
</td>
<td>
{{selectedRevision.credential_data.created * 1000 | date:'dd-MM-yyyy @ HH:mm:ss'}}
</td>
</tr>
</table>
-->
<div ng-show="selectedRevision">
<button class="button" ng-click="restoreRevision(selectedRevision)" >
<span class="fa fa-edit"></span> {{ 'restore.revision' | translate}}
</button>
<button class="button" ng-click="deleteRevision(selectedRevision)" >
<span class="fa fa-trash"></span> {{ 'delete.revision' | translate}}
</button>
</div>
</div>

View file

@ -1,8 +1,9 @@
<div id="passman-controls">
<div class="breadcrumb">
<div class="breadcrumb">
<div class="crumb svg ui-droppable" data-dir="/">
<a ng-click="logout()"><i class="fa fa-home"></i></a>
<div class="crumb svg crumbhome">
<a ng-click="logout()" class="icon-home">Home</a>
<span style="display: none;"></span>
</div>
<div class="crumb svg" data-dir="/Test">
<a ng-click="cancel()">{{ active_vault.name }}</a>

View file

@ -1,36 +1,46 @@
<div class="row">
<div class="col-xs-12 col-md-6">
<label >{{ 'label' | translate}}</label>
<div class="icon-label">
<div class="icon-picker" icon-picker="storedCredential"></div>
<input type="text" class="form-control" ng-model="storedCredential.label">
<div class="setting-group">
<label >{{ 'label' | translate}}</label>
<div class="icon-label">
<div class="icon-picker" icon-picker="storedCredential"></div>
<input type="text" class="form-control" ng-model="storedCredential.label">
</div>
</div>
<label>{{ 'username' | translate}}</label>
<div>
<div class="setting-group">
<label>{{ 'username' | translate}}</label>
<input type="text" ng-model="storedCredential.username">
</div>
<label>{{ 'email' | translate}}</label>
<div>
<div class="setting-group">
<label>{{ 'email' | translate}}</label>
<input type="text" ng-model="storedCredential.email">
</div>
<label>{{ 'password' | translate}}</label>
<div>
<password-gen ng-model="storedCredential.password" settings="pwSettings" callback="pwGenerated"></password-gen>
<ng-password-meter password="storedCredential.password"></ng-password-meter>
<div class="setting-group">
<label>{{ 'password' | translate}}</label>
<div>
<password-gen ng-model="storedCredential.password" settings="pwSettings" callback="pwGenerated"></password-gen>
<ng-password-meter password="storedCredential.password"></ng-password-meter>
</div>
</div>
<div>
<div class="setting-group">
<label>{{ 'password.r' | translate}}</label>
<input type="password" ng-model="storedCredential.password_repeat">
</div>
<label>{{ 'url' | translate}}</label>
<div>
<div class="setting-group">
<label>{{ 'url' | translate}}</label>
<input type="text" ng-model="storedCredential.url">
</div>
</div>
<div class="col-xs-12 col-md-6">
<label>{{ 'notes' | translate}}</label>
<div>
<div class="setting-group">
<label>{{ 'notes' | translate}}</label>
<textarea class="credential_textarea" ng-model="storedCredential.description"></textarea>
</div>
<label>{{ 'add.tag' | translate}}</label>
@ -40,8 +50,9 @@
</tags-input>
</div>
</div>
<div class="col-xs-12 col-md-6">
<button class="compromised-button" ng-click="compromise()">{{ 'compromised.label' | translate}}</button>
<button class="btn-danger compromised-button" ng-click="compromise()">{{ 'compromised.label' | translate}}</button>
<div class="compromised-details" ng-show="storedCredential.compromised">
<div class="icon-error-color icon"></div>
<div class="text">{{ 'compromised.warning' | translate }}</div>

View file

@ -10,7 +10,7 @@
<div class="row files" ng-if="storedCredential.files.length > 0">
<div class="col-xs-12 table">
<table>
<thead use-theme>
<thead>
<tr>
<th class="field_label">{{ 'file.name' | translate }}</th>
<th class="field_value">{{ 'upload.date' | translate}}</th>
@ -32,4 +32,4 @@
</tr>
</table>
</div>
</div>
</div>

View file

@ -1,17 +1,21 @@
<div class="row">
<div class="col-xs-12 col-md-5 col-lg-5">
<label>{{ 'password' | translate}}</label>
<div>
<password-gen ng-model="storedCredential.password"
settings="pwSettings" callback="pwGenerated"></password-gen>
<ng-password-meter
password="storedCredential.password"></ng-password-meter>
<div class="setting-group">
<label>{{ 'password' | translate}}</label>
<div>
<password-gen ng-model="storedCredential.password"
settings="pwSettings" callback="pwGenerated"></password-gen>
<ng-password-meter
password="storedCredential.password"></ng-password-meter>
</div>
</div>
<label>{{ 'password.r' | translate}}</label>
<div>
<div class="setting-group">
<label>{{ 'password.r' | translate}}</label>
<input type="password" ng-model="storedCredential.password_repeat">
</div>
<label>{{ 'expire.date' | translate}}</label>
<div>
<span datetime-picker ng-model="storedCredential.expire_time" class="link"
@ -48,44 +52,37 @@
<input type="number" ng-model="pwSettings.length" min="1">
</label>
<br>
<label>
<span class="label">{{'password.generation.min_digits' | translate}}</span><br />
<input type="number" ng-model="pwSettings.minimumDigitCount" min="0">
</label>
</div>
<div class="col-xs-12 col-sm-6 col-lg-6">
<label>
<input type="checkbox"
ng-model="pwSettings.useUppercase">
<span class="label sm">{{ 'password.generation.uppercase' | translate}}</span>
</label>
<label>
<input
ng-model="pwSettings.useLowercase" type="checkbox"
id="lower">
<span class="label sm">{{ 'password.generation.lowercase' | translate}}</span>
</label>
<label>
<input ng-model="pwSettings.useDigits" type="checkbox"
id="digits">
<span class="label sm">{{ 'password.generation.digits' | translate}}</span>
</label>
<label>
<input type="checkbox" id="special"
<div class="col-xs-12 col-sm-6 col-lg-6 display-grid">
<input id="pwSettings.useUppercase" class="checkbox" type="checkbox"
ng-model="pwSettings.useUppercase">
<label for="pwSettings.useUppercase">{{'password.generation.uppercase' | translate}}</label>
<input id="pwSettings.useLowercase" class="checkbox" type="checkbox"
ng-model="pwSettings.useLowercase">
<label for="pwSettings.useLowercase">{{'password.generation.lowercase' | translate}}</label>
<input id="pwSettings.useDigits" class="checkbox" type="checkbox"
ng-model="pwSettings.useDigits">
<label for="pwSettings.useDigits">{{'password.generation.digits' | translate}}</label>
<input id="pwSettings.useSpecialChars" class="checkbox" type="checkbox"
ng-model="pwSettings.useSpecialChars">
<span class="label sm">{{ 'password.generation.special' | translate}}</span>
</label>
<label>
<input type="checkbox" id="ambig"
<label for="pwSettings.useSpecialChars">{{'password.generation.special' | translate}}</label>
<input id="pwSettings.avoidAmbiguousCharacters" class="checkbox" type="checkbox"
ng-model="pwSettings.avoidAmbiguousCharacters">
<span class="label sm">{{ 'password.generation.ambiguous' | translate}}</span>
</label>
<label>
<input type="checkbox" ng-model="pwSettings.requireEveryCharType"
id="reqevery">
<span class="label sm">{{ 'password.generation.require_same' | translate}}</span>
</label>
<label for="pwSettings.avoidAmbiguousCharacters">{{'password.generation.ambiguous' | translate}}</label>
<input id="pwSettings.requireEveryCharType" class="checkbox" type="checkbox"
ng-model="pwSettings.requireEveryCharType">
<label for="pwSettings.requireEveryCharType">{{'password.generation.require_same' | translate}}</label>
</div>
</div>
</div>

View file

@ -11,7 +11,7 @@
</select></label>
<div><b>{{selectedExporter.description}}</b></div>
<div ng-show="selectedExporter" class="nopadding">
<div ng-show="selectedExporter" class="nopadding setting-group">
<label>{{ 'export.confirm.text' | translate }}</label>
<input type="password" ng-model="confirm_key">
<br />

View file

@ -1,48 +1,59 @@
<div class="row">
<div class="col-xs-12 col-md-6">
<h3>{{ 'rename.vault' | translate}}</h3>
<label>{{ 'rename.vault.name' | translate}}</label>
<input type="text" ng-model="$parent.new_vault_name">
<button ng-click="saveVaultSettings()">
{{ 'change' | translate}}
</button>
<h3>{{ 'change.vault.key' | translate}}</h3>
<label>{{ 'old.vault.password' | translate}}</label>
<input type="password" ng-model="oldVaultPass">
<label>{{ 'new.vault.password' | translate}}</label>
<input type="password" ng-model="newVaultPass" />
<ng-password-meter password="newVaultPass" score="vault_key_score"></ng-password-meter>
<label>{{ 'new.vault.pw.r' | translate}}</label>
<input type="password" ng-model="newVaultPass2">
<div ng-show="error || vault_key_score.score < minimal_value_key_strength" class="error">
<ul>
<li>{{error}}</li>
<li ng-show="vault_key_score.score < minimal_value_key_strength">{{'min.vault.key.strength' | translate:required_score}}</li>
</ul>
</div>
<button ng-click="changeVaultPassword(oldVaultPass,newVaultPass,newVaultPass2)" ng-disabled="vault_key_score.score < minimal_value_key_strength"
>{{ 'change' | translate}}
</button>
<div ng-show="change_pw.total > 0">
{{'warning.leave' | translate}}<br />
{{ 'processing' | translate}} {{cur_state.process}}
<div progress-bar="cur_state.calculated" index="cur_state.current" total="cur_state.total"></div>
{{ 'total.progress' | translate}}
<div progress-bar="change_pw.percent" index="change_pw.done" total="change_pw.total"></div>
<div class="setting-group margin-bottom-25">
<h3>{{ 'rename.vault' | translate}}</h3>
<label>{{ 'rename.vault.name' | translate}}</label>
<input type="text" ng-model="$parent.new_vault_name">
<button ng-click="saveVaultSettings()">
{{ 'change' | translate}}
</button>
</div>
<h3>{{'delete.vault' | translate}}</h3>
<b>{{ 'vault.remove.notice' | translate }}</b>
<label>{{'vault.password' | translate}}</label>
<input type="password" ng-model="$parent.delete_vault_password">
<input type="checkbox" ng-model="$parent.confirm_vault_delete"> {{'delete.vault.checkbox' | translate}}<br />
<button class="btn btn-danger" ng-click="delete_vault()">{{'delete.vault.confirm' | translate}}</button>
<div ng-show="remove_pw">
{{'deleting.pw' | translate:translationData}}
<div progress-bar="remove_pw.percent" index="remove_pw.done" total="remove_pw.total"></div>
<div class="setting-group margin-bottom-25">
<h3>{{ 'change.vault.key' | translate}}</h3>
<label>{{ 'old.vault.password' | translate}}</label>
<input type="password" ng-model="oldVaultPass">
<label>{{ 'new.vault.password' | translate}}</label>
<input type="password" ng-model="newVaultPass" />
<ng-password-meter password="newVaultPass" score="vault_key_score"></ng-password-meter>
<label>{{ 'new.vault.pw.r' | translate}}</label>
<input type="password" ng-model="newVaultPass2">
<div ng-show="error || vault_key_score.score < minimal_value_key_strength" class="error">
<ul>
<li>{{error}}</li>
<li ng-show="vault_key_score.score < minimal_value_key_strength">{{'min.vault.key.strength' | translate:required_score}}</li>
</ul>
</div>
<button ng-click="changeVaultPassword(oldVaultPass,newVaultPass,newVaultPass2)" ng-disabled="vault_key_score.score < minimal_value_key_strength"
>{{ 'change' | translate}}
</button>
<div ng-show="change_pw.total > 0">
{{'warning.leave' | translate}}<br />
{{ 'processing' | translate}} {{cur_state.process}}
<div progress-bar="cur_state.calculated" index="cur_state.current" total="cur_state.total"></div>
{{ 'total.progress' | translate}}
<div progress-bar="change_pw.percent" index="change_pw.done" total="change_pw.total"></div>
</div>
</div>
<div class="setting-group">
<h3>{{'delete.vault' | translate}}</h3>
<b>{{ 'vault.remove.notice' | translate }}</b>
<label>{{'vault.password' | translate}}</label>
<input type="password" ng-model="$parent.delete_vault_password">
<input id="confirmVaultDelete" class="checkbox" type="checkbox"
ng-model="$parent.confirm_vault_delete">
<label for="confirmVaultDelete">{{'delete.vault.checkbox' | translate}}</label>
<button class="btn btn-danger" ng-click="delete_vault()">{{'delete.vault.confirm' | translate}}</button>
<div ng-show="remove_pw">
{{'deleting.pw' | translate:translationData}}
<div progress-bar="remove_pw.percent" index="remove_pw.done" total="remove_pw.total"></div>
</div>
</div>
</div>
<div class="col-xs-12 col-md-6">
<h3>{{ 'about.passman' | translate}}</h3>
@ -59,4 +70,4 @@
</div>
<div><p ng-bind-html="bookmarklet" style="margin-top: 5px"></p></div>
</div>
</div>
</div>

View file

@ -47,4 +47,4 @@
</div>
</div>
</div>
<div ng-include="'views/partials/forms/settings/generic_csv_import.html'" ng-show="showGenericImport"></div>
<div ng-include="'views/partials/forms/settings/generic_csv_import.html'" ng-show="showGenericImport"></div>

View file

@ -1,57 +1,52 @@
<div class="password_settings">
<div class="col-xs-12 col-sm-5 col-lg-4 password-settings-padding-left-fix">
<label>
<span class="label">{{ 'password.generation.length' | translate}}</span><br />
<input type="number" ng-model="vault_settings.pwSettings.length" min="1">
<div class="setting-group margin-bottom-10">
<label>
<span class="label">{{ 'password.generation.length' | translate}}</span><br />
<input type="number" ng-model="vault_settings.pwSettings.length" min="1">
</label>
</div>
</label>
<label>
<span class="label">{{ 'password.generation.min_digits' | translate}}</span><br />
<input type="number" ng-model="vault_settings.pwSettings.minimumDigitCount" min="0">
<div class="setting-group margin-bottom-10">
<label>
<span class="label">{{ 'password.generation.min_digits' | translate}}</span><br />
<input type="number" ng-model="vault_settings.pwSettings.minimumDigitCount" min="0">
</label>
</div>
</label>
<label>
<span class="label">Generate password on creation</span><br />
<input type="checkbox" ng-model="vault_settings.pwSettings.generateOnCreate" min="0">
</label>
<input id="pwSettings.generateOnCreate" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.generateOnCreate">
<label for="pwSettings.generateOnCreate">{{'password.generation.on_create' | translate}}</label>
<br>
</div>
<div class="col-xs-12 col-sm-6 col-lg-6">
<label>
<input type="checkbox"
ng-model="vault_settings.pwSettings.useUppercase">
<span class="label sm">{{ 'password.generation.uppercase' | translate}}</span>
</label>
<label>
<input
ng-model="vault_settings.pwSettings.useLowercase" type="checkbox"
id="lower">
<span class="label sm">{{ 'password.generation.lowercase' | translate}}</span>
</label>
<label>
<input ng-model="vault_settings.pwSettings.useDigits" type="checkbox"
id="digits">
<span class="label sm">{{ 'password.generation.digits' | translate}}</span>
</label>
<label>
<input type="checkbox" id="special"
ng-model="vault_settings.pwSettings.useSpecialChars">
<span class="label sm">{{ 'password.generation.special' | translate}}</span>
</label>
<label>
<input type="checkbox" id="ambig"
ng-model="vault_settings.pwSettings.avoidAmbiguousCharacters">
<span class="label sm">{{ 'password.generation.ambiguous' | translate}}</span>
</label>
<label>
<input type="checkbox" ng-model="vault_settings.pwSettings.requireEveryCharType"
id="reqevery">
<span class="label sm">{{ 'password.generation.require_same' | translate}}</span>
</label>
<div class="col-xs-12 col-sm-6 col-lg-6 display-grid">
<input id="pwSettings.useUppercase" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.useUppercase">
<label for="pwSettings.useUppercase">{{'password.generation.uppercase' | translate}}</label>
<input id="pwSettings.useLowercase" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.useLowercase">
<label for="pwSettings.useLowercase">{{'password.generation.lowercase' | translate}}</label>
<input id="pwSettings.useDigits" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.useDigits">
<label for="pwSettings.useDigits">{{'password.generation.digits' | translate}}</label>
<input id="pwSettings.useSpecialChars" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.useSpecialChars">
<label for="pwSettings.useSpecialChars">{{'password.generation.special' | translate}}</label>
<input id="pwSettings.avoidAmbiguousCharacters" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.avoidAmbiguousCharacters">
<label for="pwSettings.avoidAmbiguousCharacters">{{'password.generation.ambiguous' | translate}}</label>
<input id="pwSettings.requireEveryCharType" class="checkbox" type="checkbox"
ng-model="vault_settings.pwSettings.requireEveryCharType">
<label for="pwSettings.requireEveryCharType">{{'password.generation.require_same' | translate}}</label>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<button class="button" ng-click="saveVaultSettings()">{{ 'save' | translate}}</button>
</div>
</div>
</div>

View file

@ -25,4 +25,4 @@
</label>
</div>
</div>
</div>
</div>

View file

@ -1,7 +1,9 @@
<div class="row">
<div class="col-xs-12 col-md-6">
<label><input type="checkbox" ng-model="share_settings.linkSharing.enabled">
{{ 'enable.link.sharing' | translate}}.</label><br/>
<input id="linkSharing.enabled" class="checkbox" type="checkbox"
ng-model="share_settings.linkSharing.enabled">
<label for="linkSharing.enabled">{{'enable.link.sharing' | translate}}</label><br>
<div class="pull-left col-xs-6 nopadding">
<span credential-field value="share_link" secret="false" use-input="true" input-placeholder="'click.share' | translate" ></span>
</div>
@ -36,4 +38,4 @@
</table>
</div>
</div>
</div>
</div>

View file

@ -1,8 +1,9 @@
<div id="passman-controls">
<div class="breadcrumb">
<div class="breadcrumb">
<div class="crumb svg ui-droppable" data-dir="/">
<a ng-click="logout()"><i class="fa fa-home"></i></a>
<div class="crumb svg crumbhome">
<a ng-click="logout()" class="icon-home">Home</a>
<span style="display: none;"></span>
</div>
<div class="crumb svg">
<a ng-click="cancel()">{{ active_vault.name }}</a>

View file

@ -1,8 +1,9 @@
<div id="passman-controls">
<div class="actions creatable">
<div class="breadcrumb">
<div class="crumb svg ui-droppable" data-dir="/">
<a ng-click="logout()"><i class="fa fa-home"></i></a>
<div class="crumb svg crumbhome">
<a ng-click="logout()" class="icon-home">Home</a>
<span style="display: none;"></span>
</div>
<div class="crumb svg" data-dir="/Test">
<a ng-click="cancel()">{{ active_vault.name }}</a>

View file

@ -2,20 +2,20 @@
<div id="passman-controls" ng-class="{ 'sidebar-shown': selectedCredential }">
<div class="breadcrumb">
<div class="breadcrumb">
<div class="crumb svg ui-droppable" data-dir="/">
<a ng-click="logout()"><i class="fa fa-home"></i></a>
<div class="crumb svg crumbhome">
<a ng-click="logout()" class="icon-home">Home</a>
<span style="display: none;"></span>
</div>
<div class="crumb svg" ng-click="clearState()">
<a>{{active_vault.name}}</a>
</div>
</div>
<div class="addCredential" ng-hide="delete_time>0">
<button ng-click="addCredential()"><i class="fa fa-plus"></i></button>
</div>
<div class="addCredential" ng-hide="delete_time>0">
<button ng-click="refresh()"><i class="fa fa-refresh"></i></button>
</div>
<div class="addCredential" ng-hide="delete_time>0">
<button ng-click="refresh()"><i class="fa fa-refresh"></i></button>
</div>
</div>
<div class="title" credential-counter="filtered_credentials" vault="active_vault" delete-time="delete_time" filters="filterOptions"></div>
@ -23,8 +23,10 @@
<div class="searchboxContainer" ng-init="filterOptionShown = false;" off-click="filterOptionShown = false;">
<input type="text" ng-model="filterOptions.filterText" class="searchbox" id="searchBox"
placeholder="{{'search.credential' | translate}}" select-on-click clear-btn ng-click="filterOptionShown = true;">
<div class="searchOptions" ng-show="filterOptionShown">
<input type="checkbox" ng-model="filterOptions.useRegex"> {{ 'use.regex' | translate }}
<input id="filterOptions.useRegex" class="checkbox" type="checkbox" ng-model="filterOptions.useRegex">
<label for="filterOptions.useRegex">{{'use.regex' | translate}}</label>
</div>
</div>
@ -39,7 +41,7 @@
<div class="loaderContainer" ng-if="show_spinner">
<div class="loader" use-theme type="'border-bottom-color'"></div>
</div>
<div ng-init="menuOpen = false;">
<div class="credential-table-wrapper" ng-init="menuOpen = false;">
<table class="credential-table"
ng-if="view_mode === 'list'">
<tr ng-repeat="credential in filtered_credentials | orderBy:'label'"
@ -72,8 +74,7 @@
<li class="credential"
ng-repeat="credential in filtered_credentials | orderBy:'label'"
ng-if="credential.hidden == 0 && showCredentialRow(credential)"
ng-click="selectCredential(credential)"
use-theme type="'border-color'">
ng-click="selectCredential(credential)">
<div class="credential_content">
<div>
<span class="icon" ng-if="credential.url">
@ -102,15 +103,15 @@
</div>
</div>
<!--nopassword-hint for missing tagresults -->
<!--nopassword-hint for missing tagresults -->
<div ng-if="getListSizes().listsize_wout_deleted==0 && no_credentials_label.all && !show_spinner && selectedtags.length>0" class="nopasswords" ng-hide="delete_time>0">
<div>{{ 'vault.hint.list.notags' | translate}}</div>
</div>
<!--nopassword-hint for missing searchresults -->
<div ng-if="getListSizes().listsize_wout_deleted==0 && no_credentials_label.all && !show_spinner && selectedtags.length==0 && filterOptions.filterText!=''" class="nopasswords" ng-hide="delete_time>0">
<div>{{ 'vault.hint.list.nosearch' | translate}} <b>'{{filterOptions.filterText}}'</b></div>
</div>
<!--nopassword-hint for missing searchresults -->
<div ng-if="getListSizes().listsize_wout_deleted==0 && no_credentials_label.all && !show_spinner && selectedtags.length==0 && filterOptions.filterText!=''" class="nopasswords" ng-hide="delete_time>0">
<div>{{ 'vault.hint.list.nosearch' | translate}} <b>'{{filterOptions.filterText}}'</b></div>
</div>
@ -157,45 +158,45 @@
<h2 class="sidebar-label">{{selectedCredential.label}}</h2>
</div>
<div credential-template="selectedCredential"></div>
<div credential-template="selectedCredential"></div>
<div ng-show="selectedCredential">
<div>
<button class="button"
ng-click="editCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-edit"></span> {{ 'edit' | translate}}
</button>
<button class="button"
ng-click="deleteCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-trash"></span> {{ 'delete' | translate}}
</button>
<button class="button"
ng-click="shareCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && selectedCredential.acl === undefined &&
<div ng-show="selectedCredential">
<div>
<button class="button"
ng-click="editCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-edit"></span> {{ 'edit' | translate}}
</button>
<button class="button"
ng-click="deleteCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-trash"></span> {{ 'delete' | translate}}
</button>
<button class="button"
ng-click="shareCredential(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && selectedCredential.acl === undefined &&
(settings.user_sharing_enabled === 1 || settings.user_sharing_enabled === '1' || settings.link_sharing_enabled === 1 || settings.link_sharing_enabled === '1')">
<span class="fa fa-share"></span> {{ 'share' | translate}}
</button>
<span class="fa fa-share"></span> {{ 'share' | translate}}
</button>
<button class="button"
ng-click="getRevisions(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.HISTORY)">
<span class="fa fa-undo"></span> {{ 'revisions' | translate}}
</button>
<button class="button"
ng-click="getRevisions(selectedCredential)"
ng-if="selectedCredential.delete_time == 0 && hasPermission(selectedCredential.acl.permissions, permissions.permissions.HISTORY)">
<span class="fa fa-undo"></span> {{ 'revisions' | translate}}
</button>
<button class="button"
ng-if="selectedCredential.delete_time > 0"
ng-click="recoverCredential(selectedCredential) && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-recycle"></span> {{'recover' | translate}}
</button>
<button class="button"
ng-if="selectedCredential.delete_time > 0"
ng-click="destroyCredential(selectedCredential)">
<span class="fa fa-bomb"></span> {{'destroy' | translate}}
</button>
</div>
</div>
<button class="button"
ng-if="selectedCredential.delete_time > 0"
ng-click="recoverCredential(selectedCredential) && hasPermission(selectedCredential.acl.permissions, permissions.permissions.WRITE)">
<span class="fa fa-recycle"></span> {{'recover' | translate}}
</button>
<button class="button"
ng-if="selectedCredential.delete_time > 0"
ng-click="destroyCredential(selectedCredential)">
<span class="fa fa-bomb"></span> {{'destroy' | translate}}
</button>
</div>
</div>
</div>
<div class="share_popup" style="display: none" title="{{ 'sharereq.title' | translate }}">

View file

@ -96,27 +96,20 @@
</div>
<div class="login_opts">
<div>
<label>
<input type="checkbox" ng-checked="default_vault"
ng-click="toggleDefaultVault()">
{{ 'vault.default' | translate}}
</label>
<input id="selectVaultAsDefault" class="checkbox" type="checkbox"
ng-checked="default_vault" ng-click="toggleDefaultVault()">
<label for="selectVaultAsDefault">{{ 'vault.default' | translate}}</label>
</div>
<div>
<label>
<input type="checkbox"
ng-checked="remember_vault_password"
ng-click="toggleRememberPassword()">
{{ 'vault.auto.login' | translate}}
</label>
<input id="rememberVaultPassword" class="checkbox" type="checkbox"
ng-checked="remember_vault_password" ng-click="toggleRememberPassword()">
<label for="rememberVaultPassword">{{ 'vault.auto.login' | translate}}</label>
</div>
<div>
<label>
<input type="checkbox"
ng-checked="auto_logout_timer"
ng-click="toggleAutoLogout()">
{{ 'auto.logout' | translate}}
</label>
<input id="enableAutoLogoutTimer" class="checkbox" type="checkbox"
ng-checked="auto_logout_timer" ng-click="toggleAutoLogout()">
<label for="enableAutoLogoutTimer">{{ 'auto.logout' | translate}}</label>
<select ng-model="logout_timer" ng-change="selectLogoutTimer(logout_timer)">
<option value="0">Never</option>
<option value="30">30 minutes</option>
@ -141,4 +134,4 @@
</div>
</div>
</div>
</div>