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/leal.service.ts
import { Injectable } from '@angular/core';
import { StorageService } from './storage.service';
import { ApiService } from "./api.service";

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

  constructor(public api: ApiService, private storage: StorageService) { }

  userValidation(user) {
    this.storage.get("token").then(async (token) => {
      if (token) {
        (await this.login(token.access_token)).subscribe(
          async (resp) => {
            /* Se verifica que el usuario no posee el coin_uid de acceso a leal, 
            sino se envia a registar y/o actualizar solo si ya posee el dato de documento necesario en el API */
            if (resp['r'] && !user.coin_uid && user.document) {
              (await this.register(token.access_token, {})).subscribe(
                async (dataRegister) => {
                  if (dataRegister['uid']) {
                    user.coin_uid = dataRegister['uid'];
                    this.storage.set("infoUser", user);
                  } else {
                    (await this.update(token.access_token)).subscribe(
                      (dataUpdate) => {
                        if (dataUpdate['uid']) {
                          user.coin_uid = dataUpdate['uid'];
                          this.storage.set("infoUser", user);
                        }
                      },
                      (errorUpdate) => {
                        console.log("Error update leal", errorUpdate);
                      }
                    );
                  }
                },
                (errorRegister) => {
                  console.log("Error register leal", errorRegister);
                }
              );
            }
          },
          (error) => {
            console.log("Error login leal", error);
          }
        );
      }
    });
  }

  login(token: string) {
    return this.api.post("leal/login", {}, token);
  }

  coins(token: string, uid) {  
    return this.api.get(`leal/coins/${uid}`, token);
  }

  register(token: string, user) {
    return this.api.post("leal/user/register", user, token);
  }

  update(token: string) {
    return this.api.get("leal/user/update", token);
  }

  generateOTP(token: string, user:any) {
    return this.api.post("leal/payment/generateOTP", user, token);
  }

  generateOrderPaymentCoins(token: string, data:any) {
    return this.api.post("leal/payment/generateOrderPaymentCoins", data, token);
  }

}