Addressbook as a view (not modal)
This commit is contained in:
parent
c6e459add3
commit
32d99e3e36
14 changed files with 330 additions and 237 deletions
56
src/js/controllers/addressbook.js
Normal file
56
src/js/controllers/addressbook.js
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('addressbookListController', function($scope, $log, $timeout, addressbookService, lodash, popupService) {
|
||||
|
||||
var contacts;
|
||||
|
||||
$scope.initAddressbook = function() {
|
||||
addressbookService.list(function(err, ab) {
|
||||
if (err) $log.error(err);
|
||||
|
||||
$scope.isEmptyList = lodash.isEmpty(ab);
|
||||
|
||||
contacts = [];
|
||||
lodash.each(ab, function(v, k) {
|
||||
contacts.push({
|
||||
name: lodash.isObject(v) ? v.name : v,
|
||||
address: k,
|
||||
email: lodash.isObject(v) ? v.email : null
|
||||
});
|
||||
});
|
||||
|
||||
$scope.addressbook = lodash.clone(contacts);
|
||||
});
|
||||
};
|
||||
|
||||
$scope.findAddressbook = function(search) {
|
||||
if (!search || search.length < 2) {
|
||||
$scope.addressbook = contacts;
|
||||
$timeout(function() {
|
||||
$scope.$apply();
|
||||
}, 10);
|
||||
return;
|
||||
}
|
||||
|
||||
var result = lodash.filter(contacts, function(item) {
|
||||
var val = item.name;
|
||||
return lodash.includes(val.toLowerCase(), search.toLowerCase());
|
||||
});
|
||||
|
||||
$scope.addressbook = result;
|
||||
};
|
||||
|
||||
$scope.remove = function(addr) {
|
||||
$timeout(function() {
|
||||
addressbookService.remove(addr, function(err, ab) {
|
||||
if (err) {
|
||||
popupService.showAlert(err);
|
||||
return;
|
||||
}
|
||||
$scope.initAddressbook();
|
||||
$scope.$digest();
|
||||
});
|
||||
}, 100);
|
||||
};
|
||||
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue