HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/src/app/services/experience.service.ts
import { Injectable } from '@angular/core';
import { ApiService } from './api.service';
import { UtilsService } from './utils.service';
import { TranslateService } from '@ngx-translate/core';
import { Router } from '@angular/router';

@Injectable({
  providedIn: 'root'
})
export class ExperienceService {

  plan: any = {};
  academyParameters = [];

  constructor(
    private utilsService: UtilsService,
    private router: Router,
    public api: ApiService,
    public translateService: TranslateService,
  ) { }

  //-------------------------------------------api_functions------------------------------------------------------------
  async get(type) {
    return new Promise(async (resolve, reject) => {
      let seq = this.api.get("experience/get/" + type, await this.utilsService.getAccessToken());
      (await seq).subscribe(
        (experiences: any) => {
          resolve(experiences);
        },
        (error) => {
          reject(error);
        }
      );
    });
  }

  async detail(experienceId) {
    return new Promise(async (resolve, reject) => {
      let seq = this.api.get("experience/detail/" + experienceId, await this.utilsService.getAccessToken());
      (await seq).subscribe(
        (experience: any) => {
          resolve(experience);
        },
        (error) => {
          reject(error);
        }
      );
    });
  }

  async payments(type) {
    return new Promise(async (resolve, reject) => {
      let seq = this.api.get("experience/payments/" + type, await this.utilsService.getAccessToken());
      (await seq).subscribe(
        (payments: any) => {
          resolve(payments);
        },
        (error) => {
          reject(error);
        }
      );
    });
  }

  async students(data) {
    return new Promise(async (resolve, reject) => {
      let seq = this.api.get("experience/students", await this.utilsService.getAccessToken(), data);
      (await seq).subscribe(
        (students: any) => {
          resolve(students);
        },
        (error) => {
          reject(error);
        }
      );
    });
  }

  async guardians(type) {
    return new Promise(async (resolve, reject) => {
      let seq = this.api.get("experience/guardians/" + type, await this.utilsService.getAccessToken());
      (await seq).subscribe(
        (guardians: any) => {
          resolve(guardians);
        },
        (error) => {
          reject(error);
        }
      );
    });
  }

  enroll(formData) {
    return new Promise(async (resolve, reject) => {
      return (await this.api.post("experience/enroll", formData, await this.utilsService.getAccessToken())).subscribe(
        (res: any) => {
          resolve(res);
        },
        (err) => {
          reject(err);
          console.error("error provider enroll: ", err);
        }
      );
    });
  }

  renew(form) {
    return new Promise(async (resolve, reject) => {
      return (await this.api.post("experience/renew", form, await this.utilsService.getAccessToken())).subscribe(
        (res: any) => {
          resolve(res);
        },
        (err) => {
          reject(err);
          console.error("error provider renew: ", err);
        }
      );
    });
  }
  //-------------------------------------------END api_functions---------------------------------------------------------

  //--------------------------------------functional_functions----------------------------------------------------------
  goToPaymentGateway(experiencePaymentId: number, assignedPaymentGateway?: number) {
    this.router.navigate(["/payment-gateway-selection"], { state: { experiencePaymentId: experiencePaymentId, assignedPaymentGateway: assignedPaymentGateway } });
  }
  //--------------------------------------END functional_functions----------------------------------------------------------
}