lp1895706 - Unarchive Course Button handles correctly
[evergreen-equinox.git] / Open-ILS / src / eg2 / src / app / staff / share / course.service.ts
index 6d8ed30..5b832a8 100644 (file)
@@ -230,23 +230,25 @@ export class CourseService {
             const acmcu_ids = [];
             
             this.getUsers([courseID]).subscribe(nonPublicUser => {
-                if(nonPublicUser.usr_role().is_public() !== 't') acmcu_ids.push(nonPublicUser.id());
+                if(nonPublicUser && nonPublicUser.usr_role().is_public() !== 't') acmcu_ids.push(nonPublicUser.id());
             }, err => {
                 reject(err);
             }, () => {
                 resolve(acmcu_ids);
-                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);
+                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);
+                        });
                     });
-                });
+                }
             });
         });
     }