mirror of
https://github.com/nextcloud/passman.git
synced 2025-10-14 15:36:16 +08:00
Use global namespace for importers
This commit is contained in:
parent
8b31278429
commit
d5a123abf4
9 changed files with 527 additions and 516 deletions
|
@ -1,9 +1,9 @@
|
||||||
// Importers should always start with this
|
var PassmanImporter = PassmanImporter || {};
|
||||||
if(!window['PassmanImporter']){
|
(function(window, $, PassmanImporter) {
|
||||||
var PassmanImporter = {}
|
'use strict';
|
||||||
}
|
|
||||||
|
|
||||||
PassmanImporter.parseRow_ = function(row) {
|
|
||||||
|
PassmanImporter.parseRow_ = function(row) {
|
||||||
// Strip leading quote.
|
// Strip leading quote.
|
||||||
row = row.trim();
|
row = row.trim();
|
||||||
var isQuoted = false;
|
var isQuoted = false;
|
||||||
|
@ -23,13 +23,13 @@ PassmanImporter.parseRow_ = function(row) {
|
||||||
row = row.split(',');
|
row = row.split(',');
|
||||||
}
|
}
|
||||||
return row;
|
return row;
|
||||||
};
|
};
|
||||||
PassmanImporter.htmlDecode = function(input){
|
PassmanImporter.htmlDecode = function(input){
|
||||||
var e = document.createElement('div');
|
var e = document.createElement('div');
|
||||||
e.innerHTML = input;
|
e.innerHTML = input;
|
||||||
return e.childNodes[0].nodeValue;
|
return e.childNodes[0].nodeValue;
|
||||||
};
|
};
|
||||||
PassmanImporter.toObject_ = function(headings, row) {
|
PassmanImporter.toObject_ = function(headings, row) {
|
||||||
var result = {};
|
var result = {};
|
||||||
for (var i = 0, ii = row.length; i < ii; i++) {
|
for (var i = 0, ii = row.length; i < ii; i++) {
|
||||||
headings[i] = headings[i].replace(',','_')
|
headings[i] = headings[i].replace(',','_')
|
||||||
|
@ -39,17 +39,17 @@ PassmanImporter.toObject_ = function(headings, row) {
|
||||||
result[headings[i]] = row[i];
|
result[headings[i]] = row[i];
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.join_ = function(arr, sep) {
|
PassmanImporter.join_ = function(arr, sep) {
|
||||||
var parts = [];
|
var parts = [];
|
||||||
for (var i = 0, ii = arr.length; i < ii; i++) {
|
for (var i = 0, ii = arr.length; i < ii; i++) {
|
||||||
arr[i] && parts.push(arr[i]);
|
arr[i] && parts.push(arr[i]);
|
||||||
}
|
}
|
||||||
return parts.join(sep);
|
return parts.join(sep);
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.newCredential = function () {
|
PassmanImporter.newCredential = function () {
|
||||||
var credential = {
|
var credential = {
|
||||||
'credential_id': null,
|
'credential_id': null,
|
||||||
'guid': null,
|
'guid': null,
|
||||||
|
@ -73,9 +73,9 @@ PassmanImporter.newCredential = function () {
|
||||||
'hidden': false
|
'hidden': false
|
||||||
};
|
};
|
||||||
return credential;
|
return credential;
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.readCsv = function( csv, hasHeadings ){
|
PassmanImporter.readCsv = function( csv, hasHeadings ){
|
||||||
hasHeadings = (hasHeadings === undefined) ? true : hasHeadings;
|
hasHeadings = (hasHeadings === undefined) ? true : hasHeadings;
|
||||||
var lines = [];
|
var lines = [];
|
||||||
var rows = csv.split('\n');
|
var rows = csv.split('\n');
|
||||||
|
@ -91,8 +91,9 @@ PassmanImporter.readCsv = function( csv, hasHeadings ){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return lines;
|
return lines;
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.readJson = function (string){
|
PassmanImporter.readJson = function (string){
|
||||||
return JSON.parse(string);
|
return JSON.parse(string);
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
|
@ -1,17 +1,16 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
PassmanImporter.clippers = {
|
||||||
PassmanImporter.clippers = {
|
|
||||||
info: {
|
info: {
|
||||||
name: 'Clipperz.is',
|
name: 'Clipperz.is',
|
||||||
id: 'clippers',
|
id: 'clippers',
|
||||||
description: 'Go to menu -> Export -> Download HTML + JSON. Fields will be imported as custom fields.'
|
description: 'Go to menu -> Export -> Download HTML + JSON. Fields will be imported as custom fields.'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.clippers.readFile = function (file_data) {
|
PassmanImporter.clippers.readFile = function (file_data) {
|
||||||
return new C_Promise(function() {
|
return new C_Promise(function() {
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
var re = /<textarea>(.*?)<\/textarea>/gi;
|
var re = /<textarea>(.*?)<\/textarea>/gi;
|
||||||
|
@ -55,4 +54,5 @@ PassmanImporter.clippers.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
// Define the importer
|
||||||
PassmanImporter.dashLaneCsv = {
|
PassmanImporter.dashLaneCsv = {
|
||||||
info: {
|
info: {
|
||||||
name: 'Dashlane 4 csv',
|
name: 'Dashlane 4 csv',
|
||||||
id: 'dashLaneCsv',
|
id: 'dashLaneCsv',
|
||||||
description: 'Create an csv export. Go to File -> export -> Unsecured archive (readable) in CSV format'
|
description: 'Create an csv export. Go to File -> export -> Unsecured archive (readable) in CSV format'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.dashLaneCsv.readFile = function (file_data) {
|
PassmanImporter.dashLaneCsv.readFile = function (file_data) {
|
||||||
return new C_Promise(function(){
|
return new C_Promise(function(){
|
||||||
var rows = file_data.split('\n');
|
var rows = file_data.split('\n');
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -45,4 +45,5 @@ PassmanImporter.dashLaneCsv.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
// Define the importer
|
||||||
PassmanImporter.keepassCsv = {
|
PassmanImporter.keepassCsv = {
|
||||||
info: {
|
info: {
|
||||||
name: 'KeePass csv',
|
name: 'KeePass csv',
|
||||||
id: 'keepassCsv',
|
id: 'keepassCsv',
|
||||||
description: 'Create an csv export with the following options enabled: http://i.imgur.com/CaeTA4d.png'
|
description: 'Create an csv export with the following options enabled: http://i.imgur.com/CaeTA4d.png'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.keepassCsv.readFile = function (file_data) {
|
PassmanImporter.keepassCsv.readFile = function (file_data) {
|
||||||
var p = new C_Promise(function(){
|
var p = new C_Promise(function(){
|
||||||
var parsed_csv = PassmanImporter.readCsv(file_data);
|
var parsed_csv = PassmanImporter.readCsv(file_data);
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -47,4 +47,5 @@ PassmanImporter.keepassCsv.readFile = function (file_data) {
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
});
|
});
|
||||||
return p;
|
return p;
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
// Define the importer
|
||||||
PassmanImporter.lastpassCsv = {
|
PassmanImporter.lastpassCsv = {
|
||||||
info: {
|
info: {
|
||||||
name: 'LastPass csv',
|
name: 'LastPass csv',
|
||||||
id: 'lastpassCsv',
|
id: 'lastpassCsv',
|
||||||
description: 'Create an csv export. Go to More options -> Advanced -> Export -> Last Pass CSV File'
|
description: 'Create an csv export. Go to More options -> Advanced -> Export -> Last Pass CSV File'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.lastpassCsv.readFile = function (file_data) {
|
PassmanImporter.lastpassCsv.readFile = function (file_data) {
|
||||||
return new C_Promise(function(){
|
return new C_Promise(function(){
|
||||||
var parsed_csv = PassmanImporter.readCsv(file_data);
|
var parsed_csv = PassmanImporter.readCsv(file_data);
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -36,4 +36,5 @@ PassmanImporter.lastpassCsv.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list)
|
this.call_then(credential_list)
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
|
@ -1,17 +1,16 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
PassmanImporter.passmanJson = {
|
||||||
PassmanImporter.passmanJson = {
|
|
||||||
info: {
|
info: {
|
||||||
name: 'Passman JSON',
|
name: 'Passman JSON',
|
||||||
id: 'passmanJson',
|
id: 'passmanJson',
|
||||||
description: 'Export the item in passman as passman json, with all fields enabled'
|
description: 'Export the item in passman as passman json, with all fields enabled'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.passmanJson.readFile = function (file_data) {
|
PassmanImporter.passmanJson.readFile = function (file_data) {
|
||||||
return new C_Promise(function(){
|
return new C_Promise(function(){
|
||||||
var parsed_json = PassmanImporter.readJson(file_data);
|
var parsed_json = PassmanImporter.readJson(file_data);
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -67,4 +66,5 @@ PassmanImporter.passmanJson.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
// Define the importer
|
// Define the importer
|
||||||
PassmanImporter.passpackCsv = {
|
PassmanImporter.passpackCsv = {
|
||||||
info: {
|
info: {
|
||||||
name: 'Passpack csv',
|
name: 'Passpack csv',
|
||||||
id: 'passpackCsv',
|
id: 'passpackCsv',
|
||||||
description: 'Go to Tools -> Export. Select Comma Separated Values, All entries then continue.'
|
description: 'Go to Tools -> Export. Select Comma Separated Values, All entries then continue.'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.passpackCsv.readFile = function (file_data) {
|
PassmanImporter.passpackCsv.readFile = function (file_data) {
|
||||||
return new C_Promise(function(){
|
return new C_Promise(function(){
|
||||||
var parsed_csv = PassmanImporter.readCsv(file_data, false);
|
var parsed_csv = PassmanImporter.readCsv(file_data, false);
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -49,4 +49,5 @@ PassmanImporter.passpackCsv.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
|
@ -1,17 +1,19 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
(function(window, $, PassmanImporter) {
|
||||||
}
|
'use strict';
|
||||||
|
// Define the importer
|
||||||
|
|
||||||
// Define the importer
|
// Define the importer
|
||||||
PassmanImporter.randomData = {
|
PassmanImporter.randomData = {
|
||||||
info: {
|
info: {
|
||||||
name: 'Random data',
|
name: 'Random data',
|
||||||
id: 'randomData',
|
id: 'randomData',
|
||||||
description: 'Create\'s 50 random credentials for testing purposes.'
|
description: 'Create\'s 50 random credentials for testing purposes.'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.randomData.readFile = function () {
|
PassmanImporter.randomData.readFile = function () {
|
||||||
return new C_Promise(function () {
|
return new C_Promise(function () {
|
||||||
var tags =
|
var tags =
|
||||||
['Social media',
|
['Social media',
|
||||||
|
@ -91,4 +93,5 @@ PassmanImporter.randomData.readFile = function () {
|
||||||
_this.call_then(credential_list);
|
_this.call_then(credential_list);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
|
@ -1,17 +1,19 @@
|
||||||
// Importers should always start with this
|
// Importers should always start with this
|
||||||
if (!window['PassmanImporter']) {
|
var PassmanImporter = PassmanImporter || {};
|
||||||
var PassmanImporter = {}
|
|
||||||
}
|
(function(window, $, PassmanImporter) {
|
||||||
// Define the importer
|
'use strict';
|
||||||
PassmanImporter.zohoCsv = {
|
|
||||||
|
// Define the importer
|
||||||
|
PassmanImporter.zohoCsv = {
|
||||||
info: {
|
info: {
|
||||||
name: 'ZOHO csv',
|
name: 'ZOHO csv',
|
||||||
id: 'zohoCsv',
|
id: 'zohoCsv',
|
||||||
description: 'Create an csv export. Go to Tools -> Export secrets -> Select "General CSV" and click "Export Secrets"'
|
description: 'Create an csv export. Go to Tools -> Export secrets -> Select "General CSV" and click "Export Secrets"'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PassmanImporter.zohoCsv.readFile = function (file_data) {
|
PassmanImporter.zohoCsv.readFile = function (file_data) {
|
||||||
return new C_Promise(function(){
|
return new C_Promise(function(){
|
||||||
var parsed_csv = PassmanImporter.readCsv(file_data, false);
|
var parsed_csv = PassmanImporter.readCsv(file_data, false);
|
||||||
var credential_list = [];
|
var credential_list = [];
|
||||||
|
@ -37,4 +39,5 @@ PassmanImporter.zohoCsv.readFile = function (file_data) {
|
||||||
}
|
}
|
||||||
this.call_then(credential_list);
|
this.call_then(credential_list);
|
||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
})(window, $, PassmanImporter);
|
||||||
|
|
Loading…
Add table
Reference in a new issue