helper-data-service.ts 26.7 KB
Newer Older
1
import {Http, Headers, RequestOptions} from '@angular/http';
2
3
import {Injectable, OnInit, OnDestroy} from '@angular/core';
import {BehaviorSubject} from "rxjs/Rx";
4
5
import 'rxjs/add/operator/map';
import { ICourseField } from '../store/coursefields/coursefields.types';
6
import { ISectorField } from '../store/sectorfields/sectorfields.types';
7
import { IRegion, IRegions, IRegionSchool } from '../store/regionschools/regionschools.types';
8
import { ISector, ISectors, ISectorCourse } from '../store/sectorcourses/sectorcourses.types';
Open Source Developer's avatar
Open Source Developer committed
9
//import { IClassField } from '../store/classfields/classfields.types';
10
import { AppSettings } from '../app.settings';
11
12
import { NgRedux, select } from 'ng2-redux';
import { IAppState } from '../store/store';
13
import { ILoginInfo, ILoginInfoToken } from '../store/logininfo/logininfo.types';
14
import { LOGININFO_INITIAL_STATE } from '../store/logininfo/logininfo.initial-state';
15
16
17
18
19


const HEADER = { headers: new Headers({ 'Content-Type': 'application/json' }) };

@Injectable()
20
export class HelperDataService implements OnInit, OnDestroy{
21
22

    private authToken: string;
23
24
    private authRole: string;
    private loginInfo$: BehaviorSubject<ILoginInfo>;
25
26
27
28

    constructor(
        private http: Http,
        private _ngRedux: NgRedux<IAppState>) {
29
            this.loginInfo$ = new BehaviorSubject(LOGININFO_INITIAL_STATE);
30

31
    };
32

33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
    ngOnInit() {
        this._ngRedux.select(state => {
            if (state.loginInfo.size > 0) {
                state.loginInfo.reduce(({}, loginInfoToken) => {
                    this.authToken = loginInfoToken.auth_token;
                    this.authRole = loginInfoToken.auth_role;
                    return loginInfoToken;
                }, {});
            }
            return state.loginInfo;
        }).subscribe(this.loginInfo$);
    }

    ngOnDestroy() {
        this.loginInfo$.unsubscribe();
    }
49
    createAuthorizationHeader(headers: Headers) {
50
        headers.append('Authorization', 'Basic ' + btoa(this.authToken + ':' + this.authToken));
51
52
    }

53
    getEpalUserData() {
54
55
56
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
57
        });
58
59
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
60
61
62
63
64
65
66
67
68
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/userdata`, options)
            .map(response => response.json());
    };

69
    sendVerificationCode(email) {
70
71
72
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
73
        });
74
75
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
        let headers = new Headers({
           "Content-Type": "application/json",
//            "Accept": "*/*",
//            "Access-Control-Allow-Credentials": "true",
        });
        this.createAuthorizationHeader(headers);
//        let options = new RequestOptions({ headers: headers, withCredentials: true });
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
            this.http.post(`${AppSettings.API_ENDPOINT}/epal/user/sendvercode`, {userEmail: email}, options)
            .map(response => response.json())
            .subscribe(data => {
                resolve(data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error Sending Verification Code"); // in case of failure show this message
                reject("Error Sending Verification Code");
            },
            () => console.log("Sending Verification Code"));//run this code in all cases); */
        });
    }

    verifyVerificationCode(verificationCode) {
99
100
101
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
102
        });
103
104
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
        let headers = new Headers({
           "Content-Type": "application/json",
//            "Accept": "*/*",
//            "Access-Control-Allow-Credentials": "true",
        });
        this.createAuthorizationHeader(headers);
//        let options = new RequestOptions({ headers: headers, withCredentials: true });
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
            console.log("verificationCode=" + verificationCode);
            this.http.post(`${AppSettings.API_ENDPOINT}/epal/user/verifyvercode`, {verificationCode: verificationCode}, options)
            .map(response => response.json())
            .subscribe(data => {
                resolve(<any>data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error Verifying Verification Code"); // in case of failure show this message
                reject("Error Verifying Verification Code");
            },
            () => console.log("Verifying Verification Code"));//run this code in all cases); */
        });
    }

128
    saveProfile(userProfile) {
129
130
131
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
132
        });
133
134
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
        let headers = new Headers({
           "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
            this.http.post(`${AppSettings.API_ENDPOINT}/epal/user/save`, {userProfile: userProfile}, options)
            .map(response => response.json())
            .subscribe(data => {
                resolve(data);
            },
            error => {
                console.log("Error Saving Profile");
                reject("Error Saving Profile");
            },
            () => console.log("Saving Profile"));
        });
    }

154
    getCourseFields() {
155

156
157
158
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
159
        });
160
161
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
162
163
164
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
165

166
167
168
169
            "Content-Type": "application/json",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
170
171
172
            "X-CSRF-Token": "EHu964c7gN7M399UfHiHHv06x1Tx5cl-P-9ZyMdmGbw",
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
173
        });
174
        this.createAuthorizationHeader(headers);
175
        let options = new RequestOptions({ headers: headers });
176
        return new Promise((resolve, reject) => {
177
            this.http.get(`${AppSettings.API_ENDPOINT}/coursefields/list`, options)
178
179
180
181
182
183
184
185
            .map(response => <ICourseField[]>response.json())
            .subscribe(data => {
                resolve(data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error HTTP GET Service"); // in case of failure show this message
                reject("Error HTTP GET Service");
            },
186
            () => console.log("Course Fields Received"));//run this code in all cases); */
187
188
        });
    };
189

190
    getSectorFields() {
191
192
193
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
194
        });
195
196
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
197
198
199
200
201
202
203
204
205
206
207
208
209
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
            "Content-Type": "application/json",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
            "X-CSRF-Token": "LU92FaWYfImfZxfldkF5eVnssdHoV7Aa9fg8K1bWYUc",
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
210
        return new Promise((resolve, reject) => {
211
            this.http.get(`${AppSettings.API_ENDPOINT}/sectorfields/list`, options)
212
213
214
215
216
217
218
219
220
221
222
223
            .map(response => <ISectorField[]>response.json())
            .subscribe(data => {
                resolve(data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error HTTP GET Service"); // in case of failure show this message
                reject("Error HTTP GET Service");
            },
            () => console.log("Sector Fields Received"));//run this code in all cases); */
        });
    };

224
    getRegionsWithSchools(classActive,courseActive) {
225
226
227
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
228
        });
229
230
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
231
232
233
234
235
236
237
238
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
            "Content-Type": "application/json",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
            "X-CSRF-Token": "LU92FaWYfImfZxfldkF5eVnssdHoV7Aa9fg8K1bWYUc",
239
240
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
241
        });
242
        this.createAuthorizationHeader(headers);
243
        let options = new RequestOptions({ headers: headers });
244
        return new Promise((resolve, reject) => {
245
            let getConnectionString = null;
246
247
248

            //if (courseActive === -1)
            if (classActive === 1)
249
              getConnectionString = `${AppSettings.API_ENDPOINT}/regions/list`;
250
251
252
              else if (classActive === 2)
                  getConnectionString = `${AppSettings.API_ENDPOINT}/sectorsperschool/list?sector_id=${courseActive}`;
            else if (classActive === 3)
253
254
              getConnectionString = `${AppSettings.API_ENDPOINT}/coursesperschool/list?course_id=${courseActive}`;

255
            this.http.get(getConnectionString, options)
256
257
258
259
260
261
262
263
264
                .map(response => response.json())
                .subscribe(data => {
                    resolve(this.transformRegionSchoolsSchema(data));
                }, // put the data returned from the server in our variable
                error => {
                    console.log("Error HTTP GET Service"); // in case of failure show this message
                    reject("Error HTTP GET Service");
                },
                () => console.log("region schools service"));//run this code in all cases); */
265
266
267
        });
    };

268
    getSectorsWithCourses() {
269
270
271
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
272
        });
273
274
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
275
276
277
278
279
280
281
282
283
284
285
286
287
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
            "Content-Type": "application/json",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
            "X-CSRF-Token": "LU92FaWYfImfZxfldkF5eVnssdHoV7Aa9fg8K1bWYUc",
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
288
        return new Promise((resolve, reject) => {
289
            this.http.get(`${AppSettings.API_ENDPOINT}/coursesectorfields/list`, options)
290
291
292
293
294
295
296
297
298
299
300
301
            .map(response => response.json())
            .subscribe(data => {
                resolve(this.transformSectorCoursesSchema(data));
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error HTTP GET Service"); // in case of failure show this message
                reject("Error HTTP GET Service");
            },
            () => console.log("region schools service"));//run this code in all cases); */
        });
    };

302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
    transformRegionSchoolsSchema(regionSchools: any) {
        let rsa = Array<IRegion>();
        let trackRegionId: string;
        let trackIndex: number;

        trackRegionId = "";
        trackIndex = -1;

        let j=0;
        regionSchools.forEach(regionSchool => {
            if (trackRegionId !== regionSchool.region_id) {
                trackIndex++;
                rsa.push(<IRegion>{'region_id': regionSchool.region_id, 'region_name': regionSchool.region_name, 'epals': Array<IRegionSchool>()});
                trackRegionId = regionSchool.region_id;
            }
317
            rsa[trackIndex].epals.push(<IRegionSchool>{'epal_id': regionSchool.epal_id, 'epal_name': regionSchool.epal_name, 'epal_special_case': regionSchool.epal_special_case, 'globalIndex': j, 'selected': false, 'order_id': 0});
318
319
320
321
322
            j++;
        });
        return rsa;
    }

323
324
325
326
327
328
329
330
331
332
333
334
    transformSectorCoursesSchema(sectorCourses: any) {
        let rsa = Array<ISector>();
        let trackSectorId: string;
        let trackIndex: number;

        trackSectorId = "";
        trackIndex = -1;

        let j=0;
        sectorCourses.forEach(sectorCourse => {
            if (trackSectorId !== sectorCourse.sector_id) {
                trackIndex++;
335
                rsa.push(<ISector>{'sector_id': sectorCourse.sector_id, 'sector_name': sectorCourse.sector_name, 'sector_selected': false, 'courses': Array<ISectorCourse>()});
336
337
338
339
340
341
342
343
                trackSectorId = sectorCourse.sector_id;
            }
            rsa[trackIndex].courses.push(<ISectorCourse>{'course_id': sectorCourse.course_id, 'course_name': sectorCourse.course_name, 'globalIndex': j, 'selected': false});
            j++;
        });
        return rsa;
    }

344
    getCriteria() {
345

346
347
348
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
349
        });
350
351
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
352
353
354
355
356
357
358
359
        let headers = new Headers({
            "Content-Type": "application/json",
            "X-CSRF-Token": "LU92FaWYfImfZxfldkF5eVnssdHoV7Aa9fg8K1bWYUc",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
            this.http.get(`${AppSettings.API_ENDPOINT}/criteria/list`, options)
360
            //this.http.get(`${AppSettings.API_ENDPOINT}/criteria/list?category=${category}`, options)
361
362
363
364
365
366
367
368
369
370
371
            .map(response => <ISectorField[]>response.json())
            .subscribe(data => {
                resolve(data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error HTTP GET Service"); // in case of failure show this message
                reject("Error HTTP GET Service");
            },
            () => console.log("Sector Fields Received"));//run this code in all cases); */
        });
    };
Open Source Developer's avatar
Open Source Developer committed
372

373
    getCurrentUser(oauthtoken, oauthrole) {
Open Source Developer's avatar
Open Source Developer committed
374
375

        this.authToken = oauthtoken;
376
        this.authRole = oauthrole;
Open Source Developer's avatar
Open Source Developer committed
377
378
379
380
381
382
383
384
385
386
387
388
389
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
            "Content-Type": "application/json",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
            "X-CSRF-Token": "LU92FaWYfImfZxfldkF5eVnssdHoV7Aa9fg8K1bWYUc",
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
390
           return new Promise((resolve, reject) => {
Open Source Developer's avatar
Open Source Developer committed
391
            this.http.get(`${AppSettings.API_ENDPOINT}/epal/curuser`, options)
Open Source Developer's avatar
Open Source Developer committed
392
393
            .map(response => response.json())
            .subscribe(data => {
394
                resolve(this.transformUserSchema(data, oauthtoken, oauthrole));
Open Source Developer's avatar
Open Source Developer committed
395
            }, // put the data returned from the server in our variable
Open Source Developer's avatar
Open Source Developer committed
396
            error => {
Open Source Developer's avatar
Open Source Developer committed
397
                console.log("Error HTTP GET Service"); // in case of failure show this message
Open Source Developer's avatar
Open Source Developer committed
398
399
                reject("Error HTTP GET Service");
            },
400
            () => console.log("UserName Received"));
Open Source Developer's avatar
Open Source Developer committed
401
        });
402
}
Open Source Developer's avatar
Open Source Developer committed
403

Open Source Developer's avatar
Open Source Developer committed
404

Open Source Developer's avatar
trans    
Open Source Developer committed
405
        transformUserSchema(userlogin:any,oauthtoken:string, oauthrole:string){
406
        let rsa = Array<ILoginInfoToken>();
407

408
409
            rsa.push(<ILoginInfoToken>{'auth_token': oauthtoken, 'auth_role': oauthrole, 'cu_name':userlogin.name});
        return rsa;
410

411
        }
Open Source Developer's avatar
Open Source Developer committed
412

413
    signOut() {
414
415
416
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
417
        });
418
419
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
420
421
422
        let headers = new Headers({
            //"Authorization": "Basic cmVzdHVzZXI6czNjckV0MFAwdWwwJA==", // encoded user:pass
            // "Authorization": "Basic bmthdHNhb3Vub3M6emVtcmFpbWU=",
Open Source Developer's avatar
Open Source Developer committed
423
424


Open Source Developer's avatar
Open Source Developer committed
425
           "Content-Type": "application/json",
426
427
428
429
430
431
432
433
434
435
436
            "Accept": "*/*",
            "Access-Control-Allow-Credentials": "true",
            // "Content-Type": "text/plain",  // try to skip preflight
            //"X-CSRF-Token": "hVtACDJjFRSyE4bgGJENHbXY0B9yNhF71Fw-cYHSDNY"
            //"X-CSRF-Token": "fj1QtF_Z_p6kE19EdCnN08zoSjVfcT4Up-ciW6I0IG8"
            "X-CSRF-Token": "EoAZ0APpIbbewK5MNzRrCFkvEeZZoGQsBslWFTrZ8bI",
//            "X-oauth-enabled": "true",
//            "X-Auth-Token": this.authToken
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers, withCredentials: true });
437
438
439
440
441
        let logoutRoute = '/oauth/logout';
        console.log(this.authRole);
        if (this.authRole === 'director')
            logoutRoute = '/cas/logout';

442
        return new Promise((resolve, reject) => {
443
            this.http.post(`${AppSettings.API_ENDPOINT}${logoutRoute}`, {}, options)
444
445
446
447
448
449
450
451
452
453
454
            .map(response => response)
            .subscribe(data => {
                resolve(data);
            }, // put the data returned from the server in our variable
            error => {
                console.log("Error Logout"); // in case of failure show this message
                reject("Error Logout");
            },
            () => console.log("Logging out"));//run this code in all cases); */
        });
    }
Open Source Developer's avatar
Open Source Developer committed
455
456


Open Source Developer's avatar
Open Source Developer committed
457
458


Open Source Developer's avatar
tranfer    
Open Source Developer committed
459
    getSubmittedPreviw() {
Open Source Developer's avatar
Open Source Developer committed
460

461

462
463
464
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
Open Source Developer's avatar
Open Source Developer committed
465
        });
466
467
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
Open Source Developer's avatar
Open Source Developer committed
468
469
        let headers = new Headers({
            "Content-Type": "application/json",
470
             "id": ""
Open Source Developer's avatar
Open Source Developer committed
471
472
473
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
Open Source Developer's avatar
tranfer    
Open Source Developer committed
474
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/subapplic`, options )
Open Source Developer's avatar
Open Source Developer committed
475
            .map(response => response.json());
Open Source Developer's avatar
Open Source Developer committed
476
    }
Open Source Developer's avatar
Open Source Developer committed
477

Open Source Developer's avatar
tranfer    
Open Source Developer committed
478

Open Source Developer's avatar
Open Source Developer committed
479
480
     getStudentDetails(headerid)
     {
Open Source Developer's avatar
Open Source Developer committed
481
         let headerIdNew = headerid.toString();
482
483
484
485
486
487
         this.loginInfo$.getValue().forEach(loginInfoToken => {
            this.authToken = loginInfoToken.auth_token;
            this.authRole = loginInfoToken.auth_role;
         });
         console.log("authToken=" + this.authToken);
         console.log("authRole=" + this.authRole);
Open Source Developer's avatar
Open Source Developer committed
488
489
490
491
492
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
Open Source Developer's avatar
Open Source Developer committed
493
494
495
496
497
498
499
500
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/student/`+headerIdNew, options )
            .map(response => response.json());
     }


 getEpalchosen(headerid)
     {
         let headerIdNew = headerid.toString();
501
502
503
504
505
506
         this.loginInfo$.getValue().forEach(loginInfoToken => {
            this.authToken = loginInfoToken.auth_token;
            this.authRole = loginInfoToken.auth_role;
         });
         console.log("authToken=" + this.authToken);
         console.log("authRole=" + this.authRole);
Open Source Developer's avatar
Open Source Developer committed
507
508
509
510
511
512
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/epalchosen/`+headerIdNew, options )
Open Source Developer's avatar
Open Source Developer committed
513
514
            .map(response => response.json());
     }
Open Source Developer's avatar
tranfer    
Open Source Developer committed
515
516


Open Source Developer's avatar
transf    
Open Source Developer committed
517
518
519
    getSectorPerSchool(SchoolId)
     {
         let SchoolIdNew = SchoolId.toString();
520
521
522
523
524
525
         this.loginInfo$.getValue().forEach(loginInfoToken => {
            this.authToken = loginInfoToken.auth_token;
            this.authRole = loginInfoToken.auth_role;
         });
         console.log("authToken=" + this.authToken);
         console.log("authRole=" + this.authRole);
Open Source Developer's avatar
transf    
Open Source Developer committed
526
527
528
529
530
531
532
533
534
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/sectorperSchool/`+SchoolIdNew, options )
            .map(response => response.json());
     }

Open Source Developer's avatar
trans    
Open Source Developer committed
535
536
537
538
     getSpecialityPerSchool(SchoolId, SectorId)
     {
         let SchoolIdNew = SchoolId.toString();
         let SectorIdNew = SectorId.toString();
539
540
541
542
543
544
         this.loginInfo$.getValue().forEach(loginInfoToken => {
            this.authToken = loginInfoToken.auth_token;
            this.authRole = loginInfoToken.auth_role;
         });
         console.log("authToken=" + this.authToken);
         console.log("authRole=" + this.authRole);
Open Source Developer's avatar
trans    
Open Source Developer committed
545
546
547
548
549
550
551
552
553
554
555
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/specialityperSchool/`+SchoolIdNew+'/'+SectorIdNew, options )
            .map(response => response.json());
     }



Open Source Developer's avatar
trans    
Open Source Developer committed
556
      getStudentPerSchool(SchoolId, SelectId, classId)
Open Source Developer's avatar
trans    
Open Source Developer committed
557
558
559
     {
         let SchoolIdNew = SchoolId.toString();
         let SelectIdNew = SelectId.toString();
560
561
562
563
564
565
566
567
568
569


         this.loginInfo$.getValue().forEach(loginInfoToken => {
            this.authToken = loginInfoToken.auth_token;
            this.authRole = loginInfoToken.auth_role;
         });
         console.log("authToken=" + this.authToken);
         console.log("authRole=" + this.authRole);


Open Source Developer's avatar
trans    
Open Source Developer committed
570
571
572
573
574
        let headers = new Headers({
            "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
Open Source Developer's avatar
trans    
Open Source Developer committed
575
        return this.http.get(`${AppSettings.API_ENDPOINT}/epal/studentperSchool/`+SchoolIdNew+'/'+SelectIdNew+'/'+classId, options )
Open Source Developer's avatar
trans    
Open Source Developer committed
576
577
578
            .map(response => response.json());
     }

Open Source Developer's avatar
transf    
Open Source Developer committed
579
580


Open Source Developer's avatar
trans    
Open Source Developer committed
581
582
583
    saveConfirmStudents(students)
    {
        console.log(students,"hds");
584
585
586
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
Open Source Developer's avatar
trans    
Open Source Developer committed
587
        });
588
589
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
Open Source Developer's avatar
trans    
Open Source Developer committed
590
591
592
593
594
595
        let headers = new Headers({
           "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
Open Source Developer's avatar
trans    
Open Source Developer committed
596
            this.http.post(`${AppSettings.API_ENDPOINT}/epal/confirmstudent`, {students}, options)
Open Source Developer's avatar
trans    
Open Source Developer committed
597
598
599
600
601
602
603
604
605
606
607
            .map(response => response.json())
            .subscribe(data => {
                resolve(data);
            },
            error => {
                console.log("Error Saving Profile");
                reject("Error Saving Profile");
            },
            () => console.log("Saving Profile"));
        });

608
    }
Open Source Developer's avatar
trans    
Open Source Developer committed
609
610


Open Source Developer's avatar
Open Source Developer committed
611

Open Source Developer's avatar
Open Source Developer committed
612
613
614
615
 saveCapacity(taxi,tomeas, specialit, capacity, schoolid)
    {

        console.log(taxi, capacity,"hds");
616
617
618
        this.loginInfo$.getValue().forEach(loginInfoToken => {
           this.authToken = loginInfoToken.auth_token;
           this.authRole = loginInfoToken.auth_role;
Open Source Developer's avatar
Open Source Developer committed
619
        });
620
621
        console.log("authToken=" + this.authToken);
        console.log("authRole=" + this.authRole);
Open Source Developer's avatar
Open Source Developer committed
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
        let headers = new Headers({
           "Content-Type": "application/json",
        });
        this.createAuthorizationHeader(headers);
        let options = new RequestOptions({ headers: headers });
        return new Promise((resolve, reject) => {
            this.http.post(`${AppSettings.API_ENDPOINT}/epal/savecapacity/`+taxi+'/'+tomeas+'/'+specialit+'/'+schoolid, {capacity}, options)
            .map(response => response.json())
            .subscribe(data => {
                resolve(data);
            },
            error => {
                console.log("Error Saving Capacity");
                reject("Error Saving Capacity");
            },
            () => console.log("Saving Capacity"));
        });

640
    }
Open Source Developer's avatar
Open Source Developer committed
641
642
643



Open Source Developer's avatar
Open Source Developer committed
644

645
}