import { Injectable } from '@angular/core'; import { HttpWrapperService } from './http-wrapper.service'; import { ApiResult } from '../resources/utility_models/api_result'; import { SoldTournamentTicket, User, RestrictedTerms, _systemLog, Discount, UserDiscount, WhiteListedEmail, SystemLogsFilter, TourneePaypal, ImportedArdaConUser, TournamentManagerZonePermissions } from 'tournee.businesslogic'; @Injectable() export class SystemAdminService { constructor(private http: HttpWrapperService) {} getWhitelist() { return this.http.secureGet>>('/systemadmin/whitelist'); } updateWhitelist(data: WhiteListedEmail) { return this.http.securePut>>('/systemadmin/whitelist', data); } addWhitelist(data: WhiteListedEmail) { return this.http.securePost>>('/systemadmin/whitelist', data); } deleteWhitelist(id: string) { return this.http.secureDelete>>('/systemadmin/whitelist/' + id); } getRestrictedTerms() { return this.http.secureGet>>('/systemadmin/restrictedterms'); } updateRestrictedTerms(data: RestrictedTerms) { return this.http.securePut>>('/systemadmin/restrictedterms', data); } getLogs(filter: SystemLogsFilter) { return this.http.secureGet>>('/systemadmin/logs/' + filter.log_type + '/' + filter.send_object() ); } saveDiscount(data: Discount) { return this.http.securePost>>('/systemadmin/discounts', data); } deleteDiscount(data: Discount) { return this.http.secureDelete>>('/systemadmin/discounts/' + data.id); } getDiscounts() { return this.http.secureGet>>('/systemadmin/discounts'); } saveTournamentManagerZonePermissions(data: TournamentManagerZonePermissions) { return this.http.securePost>>('/systemadmin/tournamentmanagerzonepermissions', data); } getTournamentManagerZonePermissions() { return this.http.secureGet>>('/systemadmin/tournamentmanagerzonepermissions'); } deleteTournamentManagerZonePermissions(data: TournamentManagerZonePermissions) { return this.http.secureDelete>>('/systemadmin/tournamentmanagerzonepermissions/' + data.zone_name); } saveUserDiscount(data: UserDiscount) { return this.http.securePost>>('/systemadmin/userdiscounts', data); } getUserDiscounts(user_id: string) { return this.http.secureGet>>('/systemadmin/userdiscounts/' + user_id); } deleteUserDiscount(data: UserDiscount) { return this.http.secureDelete>>('/systemadmin/userdiscounts/' + data.id + '/' + data.user.id); } deleteUser(user: User) { return this.http.secureDelete>('/systemadmin/users/' + user.id); } cancelTicket(ticket: SoldTournamentTicket) { return this.http.secureDelete>('/systemadmin/tickets/' + ticket.sold_ticket_id); } getTourneePaypal() { return this.http.secureGet>>('/systemadmin/tourneepaypal'); } saveTourneePaypal(data: TourneePaypal) { return this.http.securePost>>('/systemadmin/tourneepaypal', data); } importArdaConUsers(users: Array) { return this.http.securePost>('/systemadmin/users/ardaconimport', users); } getUploadedArdaConUsers() { return this.http.secureGet>>('/systemadmin/users/ardaconimport'); } }