-
- if (strcasecmp(ua->argk[2], "current") == 0) {
- bsendmsg(ua, OKqstatus, ua->argk[2]);
- lock_jcr_chain();
- foreach_jcr(njcr) {
- if (njcr->JobId != 0) {
- bsendmsg(ua, DotStatusJob, njcr->JobId, njcr->JobStatus, njcr->JobErrors);
+
+ if (strcasecmp(ua->argk[1], "dir") == 0) {
+ if (strcasecmp(ua->argk[2], "current") == 0) {
+ ua->send_msg(OKqstatus, ua->argk[2]);
+ foreach_jcr(njcr) {
+ if (njcr->JobId != 0 && acl_access_ok(ua, Job_ACL, njcr->job->name())) {
+ ua->send_msg(DotStatusJob, edit_int64(njcr->JobId, ed1),
+ njcr->JobStatus, njcr->JobErrors);
+ }
+ }
+ endeach_jcr(njcr);
+ } else if (strcasecmp(ua->argk[2], "last") == 0) {
+ ua->send_msg(OKqstatus, ua->argk[2]);
+ if ((last_jobs) && (last_jobs->size() > 0)) {
+ job = (s_last_job*)last_jobs->last();
+ if (acl_access_ok(ua, Job_ACL, job->Job)) {
+ ua->send_msg(DotStatusJob, edit_int64(job->JobId, ed1),
+ job->JobStatus, job->Errors);
+ }