mirror of https://github.com/nextcloud/contacts
Fix create addressbook not visible.
This commit is contained in:
parent
7be3158616
commit
0146816788
|
@ -7,7 +7,12 @@ app.controller('addressbooklistCtrl', ['$scope', 'AddressBookService', 'Settings
|
|||
|
||||
ctrl.createAddressBook = function() {
|
||||
if(ctrl.newAddressBookName) {
|
||||
AddressBookService.create(ctrl.newAddressBookName);
|
||||
AddressBookService.create(ctrl.newAddressBookName).then(function() {
|
||||
AddressBookService.getAddressBook(ctrl.newAddressBookName).then(function(addressBook) {
|
||||
ctrl.addressBooks.push(addressBook);
|
||||
scope.$apply();
|
||||
});
|
||||
});
|
||||
}
|
||||
};
|
||||
}]);
|
||||
|
|
|
@ -1475,6 +1475,14 @@ var Client = (function () {
|
|||
options.xhr = options.xhr || this.xhr;
|
||||
return calendars.syncCaldavAccount(account, options);
|
||||
}
|
||||
}, {
|
||||
key: 'getAddressBook',
|
||||
value: function getAddressBook() {
|
||||
var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
|
||||
|
||||
options.xhr = options.xhr || this.xhr;
|
||||
return contacts.getAddressBook(options);
|
||||
}
|
||||
}, {
|
||||
key: 'createAddressBook',
|
||||
value: function createAddressBook() {
|
||||
|
@ -1551,6 +1559,7 @@ exports.Client = Client;
|
|||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true
|
||||
});
|
||||
exports.getAddressBook = getAddressBook;
|
||||
exports.createAddressBook = createAddressBook;
|
||||
exports.deleteAddressBook = deleteAddressBook;
|
||||
exports.renameAddressBook = renameAddressBook;
|
||||
|
@ -1656,6 +1665,19 @@ var listAddressBooks = _co2['default'].wrap(regeneratorRuntime.mark(function cal
|
|||
}));
|
||||
|
||||
exports.listAddressBooks = listAddressBooks;
|
||||
|
||||
function getAddressBook(options) {
|
||||
var addressBookUrl = _url2['default'].resolve(options.url, options.displayName);
|
||||
var req = request.propfind({
|
||||
props: [{ name: 'displayname', namespace: ns.DAV }, { name: 'owner', namespace: ns.DAV }, { name: 'getctag', namespace: ns.CALENDAR_SERVER }, { name: 'resourcetype', namespace: ns.DAV }, { name: 'sync-token', namespace: ns.DAV },
|
||||
//{ name: 'groups', namespace: ns.OC },
|
||||
{ name: 'invite', namespace: ns.OC }],
|
||||
depth: 1
|
||||
});
|
||||
|
||||
return options.xhr.send(req, addressBookUrl);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return {Promise} promise will resolve when the addressBook has been created.
|
||||
*
|
||||
|
|
|
@ -73,6 +73,11 @@ export class Client {
|
|||
return calendars.syncCaldavAccount(account, options);
|
||||
}
|
||||
|
||||
getAddressBook(options={}) {
|
||||
options.xhr = options.xhr || this.xhr;
|
||||
return contacts.getAddressBook(options);
|
||||
}
|
||||
|
||||
createAddressBook(options={}) {
|
||||
options.xhr = options.xhr || this.xhr;
|
||||
return contacts.createAddressBook(options);
|
||||
|
|
|
@ -56,6 +56,24 @@ export let listAddressBooks = co.wrap(function *(account, options) {
|
|||
return addressBooks;
|
||||
});
|
||||
|
||||
export function getAddressBook(options) {
|
||||
let addressBookUrl = url.resolve(options.url, options.displayName);
|
||||
var req = request.propfind({
|
||||
props: [
|
||||
{ name: 'displayname', namespace: ns.DAV },
|
||||
{ name: 'owner', namespace: ns.DAV },
|
||||
{ name: 'getctag', namespace: ns.CALENDAR_SERVER },
|
||||
{ name: 'resourcetype', namespace: ns.DAV },
|
||||
{ name: 'sync-token', namespace: ns.DAV },
|
||||
//{ name: 'groups', namespace: ns.OC },
|
||||
{ name: 'invite', namespace: ns.OC }
|
||||
],
|
||||
depth: 1
|
||||
});
|
||||
|
||||
return options.xhr.send(req, addressBookUrl);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return {Promise} promise will resolve when the addressBook has been created.
|
||||
*
|
||||
|
|
|
@ -177,7 +177,12 @@ app.controller('addressbooklistCtrl', ['$scope', 'AddressBookService', 'Settings
|
|||
|
||||
ctrl.createAddressBook = function() {
|
||||
if(ctrl.newAddressBookName) {
|
||||
AddressBookService.create(ctrl.newAddressBookName);
|
||||
AddressBookService.create(ctrl.newAddressBookName).then(function() {
|
||||
AddressBookService.getAddressBook(ctrl.newAddressBookName).then(function(addressBook) {
|
||||
ctrl.addressBooks.push(addressBook);
|
||||
scope.$apply();
|
||||
});
|
||||
});
|
||||
}
|
||||
};
|
||||
}]);
|
||||
|
@ -800,6 +805,19 @@ app.factory('AddressBookService', ['DavClient', 'DavService', 'SettingsService',
|
|||
return addressBooks[0];
|
||||
},
|
||||
|
||||
getAddressBook: function(displayName) {
|
||||
return DavService.then(function(account) {
|
||||
return DavClient.getAddressBook({displayName:displayName, url:account.homeUrl}).then(function(addressBook) {
|
||||
addressBook = new AddressBook({
|
||||
url: addressBook[0].href,
|
||||
data: addressBook[0]
|
||||
});
|
||||
addressBook.displayName = displayName;
|
||||
return addressBook;
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
create: function(displayName) {
|
||||
return DavService.then(function(account) {
|
||||
return DavClient.createAddressBook({displayName:displayName, url:account.homeUrl});
|
||||
|
|
|
@ -40,6 +40,19 @@ app.factory('AddressBookService', ['DavClient', 'DavService', 'SettingsService',
|
|||
return addressBooks[0];
|
||||
},
|
||||
|
||||
getAddressBook: function(displayName) {
|
||||
return DavService.then(function(account) {
|
||||
return DavClient.getAddressBook({displayName:displayName, url:account.homeUrl}).then(function(addressBook) {
|
||||
addressBook = new AddressBook({
|
||||
url: addressBook[0].href,
|
||||
data: addressBook[0]
|
||||
});
|
||||
addressBook.displayName = displayName;
|
||||
return addressBook;
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
create: function(displayName) {
|
||||
return DavService.then(function(account) {
|
||||
return DavClient.createAddressBook({displayName:displayName, url:account.homeUrl});
|
||||
|
|
Loading…
Reference in New Issue