Serving a payment option for my minecraft server so I don't have to pay for it all alone
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

MinecraftPayService.js 3.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /// <reference path="../../../../assets/plugins/mithril/mithril/generated/APIRequestImports.d.ts" />
  2. // MLQRequire: { "Type": "API", "Name": "MinecraftPayAPI" }
  3. // MLQRequire: { "Plugin": "Mithril", "Type": "Component", "Name": "Toasts" }
  4. class MinecraftPayService {
  5. constructor() {
  6. LoadQueue.Start(() => {
  7. MinecraftPayAPI.GetAllServers().then(s => MinecraftPayService.Servers = s || []);
  8. MinecraftPayAPI.GetAllUsers().then(u => MinecraftPayService.Users = u || []);
  9. MinecraftPayAPI.GetAllCharges().then(mua => MinecraftPayService.UserAccounts = mua || []);
  10. });
  11. }
  12. static RefreshCharges() {
  13. LoadQueue.Start(() => {
  14. MinecraftPayAPI.GetAllCharges().then(mua => MinecraftPayService.UserAccounts = mua || []);
  15. });
  16. }
  17. static CreateServer(server) {
  18. MinecraftPayAPI.AddServer({ post: { server } }).then(r => {
  19. if (r.Success) {
  20. this.Servers.push(r.Obj);
  21. }
  22. Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
  23. });
  24. }
  25. static UpdateServer(id, server) {
  26. MinecraftPayAPI.UpdateServer({ post: { server }, params: { id } }).then(r => {
  27. if (r.Success) {
  28. this.Servers[this.Servers.findIndex(o => o.ID === r.Obj.ID)] = r.Obj;
  29. }
  30. Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
  31. });
  32. }
  33. static DeleteServer(id) {
  34. MinecraftPayAPI.DeleteServer({ params: { id } }).then(r => {
  35. if (r.Success) {
  36. this.Servers.splice(this.Servers.findIndex(o => o.ID === id), 1);
  37. }
  38. Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
  39. });
  40. }
  41. static CreateUser(user) {
  42. MinecraftPayAPI.AddUser({ post: { user } }).then(r => {
  43. if (r.Success) {
  44. this.Users.push(r.Obj);
  45. }
  46. Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
  47. });
  48. }
  49. // public static UpdateUser( id: number, user: MinecraftUser ) {
  50. // MinecraftPayAPI.UpdateUser( { post: { user }, params: { id } } ).then( r => {
  51. // if ( r.Success ) {
  52. // this.Users[ this.Users.findIndex( o => o.ID === r.Obj.ID ) ] = r.Obj;
  53. // }
  54. // Toasts.Messaged( r.Message, Toast.Load( { Type: r.Success ? 'success' : 'danger' } ) );
  55. // } );
  56. // }
  57. static DeleteUser(id) {
  58. MinecraftPayAPI.DeleteUser({ params: { id } }).then(r => {
  59. if (r.Success) {
  60. this.Users.splice(this.Users.findIndex(o => o.ID === id), 1);
  61. }
  62. Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
  63. });
  64. }
  65. }
  66. MinecraftPayService.INSTANCE = new MinecraftPayService();
  67. MinecraftPayService.Servers = [];
  68. MinecraftPayService.Users = [];
  69. MinecraftPayService.UserAccounts = [];