import { Injectable } from '@angular/core'; import { HttpWrapperService } from './http-wrapper.service'; import { ApiResult } from '../resources/utility_models/api_result'; import { Tournament } from 'tournee.businesslogic'; @Injectable() export class TournamentDocumentsService { constructor(private http: HttpWrapperService) {} get_bucket(tournament_id: string) { return this.http.insecureGet>>('/tournaments/documents/' + tournament_id); } upload_files_for_tournament(parent: Tournament) { return new Promise((resolve, reject) => { let promises = []; for (let i = 0; i < parent._documents_to_upload.length; i++) { const upload = parent._documents_to_upload[i]; let formData = new FormData(); formData.append('document', JSON.stringify(upload.document)); formData.append('file', upload.file); promises.push(this.http.securePostForm('/tournaments/' + parent.id + '/documents', formData)); } Promise .all(promises) .then((results) => { return resolve(true); }) .catch((error) => { console.log(error); return reject(error); }); }); } }