});
});
}
+
+ removeNonPublicUsers(courseID: Number) {
+ return new Promise((resolve, reject) => {
+ const acmcu_ids = [];
+
+ this.getUsers([courseID]).subscribe(nonPublicUser => {
+ if(nonPublicUser && nonPublicUser.usr_role().is_public() !== 't') acmcu_ids.push(nonPublicUser.id());
+ }, err => {
+ reject(err);
+ }, () => {
+ resolve(acmcu_ids);
+ if (acmcu_ids.length) {
+ this.pcrud.search('acmcu', {course: courseID, id: acmcu_ids}).subscribe(userToDelete => {
+ userToDelete.isdeleted(true);
+ this.pcrud.autoApply(userToDelete).subscribe(val => {
+ console.debug('deleted: ' + val);
+ }, err => {
+ console.log("Error: " + err);
+ reject(err);
+ }, () => {
+ console.log("Resolving");
+ resolve(userToDelete);
+ });
+ });
+ }
+ });
+ });
+ }
- resetItemFields(material, course_lib) {
- this.pcrud.retrieve('acp', material.item(),
- {flesh: 3, flesh_fields: {acp: ['call_number']}}).subscribe(copy => {
- if (material.original_status()) {
- copy.status(material.original_status());
- }
- if (copy.circ_modifier() !== material.original_circ_modifier()) {
- copy.circ_modifier(material.original_circ_modifier());
- }
- if (material.original_location()) {
- copy.location(material.original_location());
- }
- if (material.original_callnumber()) {
- this.pcrud.retrieve('acn', material.original_callnumber()).subscribe(cn => {
- this.updateItem(copy, course_lib, cn.label(), true);
- });
- } else {
- this.updateItem(copy, course_lib, copy.call_number().label(), false);
- }
- });
- }
-
updateItem(item: IdlObject, courseLib, callNumber, updatingVolume) {
return new Promise((resolve, reject) => {