| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- /// <reference path="../../../../assets/plugins/mithril/mithril/generated/APIRequestImports.d.ts" />
- // MLQRequire: { "Type": "API", "Name": "MinecraftPayAPI" }
- // MLQRequire: { "Plugin": "Mithril", "Type": "Component", "Name": "Toasts" }
-
- class MinecraftPayService {
- public static INSTANCE: MinecraftPayService = new MinecraftPayService();
- public static Servers: MinecraftServer[] = [];
-
- private constructor() {
- LoadQueue.Start( () => {
- MinecraftPayAPI.GetAllServers().then( s => MinecraftPayService.Servers = s || [] );
- } );
- }
-
- public static CreateServer( server: MinecraftServer ) {
- MinecraftPayAPI.AddMinecraftServer( { post: { server } } ).then( r => {
- console.warn( r );
- if ( r.Success ) {
- this.Servers.push( r.Obj );
- }
- Toasts.Messaged( r.Message, Toast.Load( { Type: r.Success ? 'success' : 'danger' } ) );
- } );
- }
-
- public static UpdateServer( id: number, server: MinecraftServer ) {
- MinecraftPayAPI.UpdateServer( { post: { server }, params: { id } } ).then( r => {
- if ( r.Success ) {
- this.Servers[ this.Servers.findIndex( o => o.ID === r.Obj.ID ) ] = r.Obj;
- }
- Toasts.Messaged( r.Message, Toast.Load( { Type: r.Success ? 'success' : 'danger' } ) );
- } );
- }
-
- public static DeleteServer( id: number ) {
- MinecraftPayAPI.DeleteServer( { params: { id } } ).then( r => {
- if ( r.Success ) {
- this.Servers.splice( this.Servers.findIndex( o => o.ID === id ), 1 );
- }
- Toasts.Messaged( r.Message, Toast.Load( { Type: r.Success ? 'success' : 'danger' } ) );
- } );
- }
- }
|