|
|
|
|
|
|
|
|
// MLQRequire: { "Plugin": "Minecraft-Payment", "Type": "Service", "Name": "MinecraftPayService" }
|
|
|
|
|
|
class MinecraftUsers {
|
|
|
|
|
|
constructor() {
|
|
|
|
|
|
this.user = {};
|
|
|
|
|
|
this.subscriptionsStates = new Map();
|
|
|
|
|
|
}
|
|
|
|
|
|
onview(vnode) {
|
|
|
|
|
|
if (typeof (MinecraftUser) !== 'function')
|
|
|
|
|
|
LoadQueue.Start(() => { });
|
|
|
|
|
|
else
|
|
|
|
|
|
this.loadUser();
|
|
|
|
|
|
}
|
|
|
|
|
|
loadUser() {
|
|
|
|
|
|
var id = m.route.param('id');
|
|
|
|
|
|
if (id.match(/^[0-9]+$/))
|
|
|
|
|
|
id = +id;
|
|
|
|
|
|
else
|
|
|
|
|
|
return;
|
|
|
|
|
|
if (this.user.ID !== id) {
|
|
|
|
|
|
this.user = $.extend(true, new MinecraftUser(), MinecraftPayService.Users.find(o => o.ID === id)) || this.user;
|
|
|
|
|
|
if (this.user.ID) {
|
|
|
|
|
|
MinecraftPayAPI.GetAllSubscriptionStates({ params: { id } }).then(map => {
|
|
|
|
|
|
this.subscriptionsStates = map || this.subscriptionsStates;
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
m.redraw();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
UnlockServer(serverId) {
|
|
|
|
|
|
if (!this.subscriptionsStates.get(serverId)) {
|
|
|
|
|
|
Modal.YesNo('Delete minecraft user', __('Do you really want to unlock this server for this minecraft user?'), (c, e) => this.unlockServer(this.user.ID, serverId, c)).Show();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
unlockServer(userId, serverId, confirmed) {
|
|
|
|
|
|
if (confirmed) {
|
|
|
|
|
|
MinecraftPayAPI.SubscribeServer({ params: { id: userId, serverId } }).then(r => {
|
|
|
|
|
|
this.subscriptionsStates.set(serverId, r.Obj);
|
|
|
|
|
|
Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' }));
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
return undefined;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
// MLQRequire: { "Plugin": "Minecraft-Payment", "Type": "Service", "Name": "MinecraftPayService" } |
|
|
|
|
|
class MinecraftUsers { |
|
|
|
|
|
constructor() { |
|
|
|
|
|
this.user = {}; |
|
|
|
|
|
this.subscriptionsStates = new Map(); |
|
|
|
|
|
} |
|
|
|
|
|
onview(vnode) { |
|
|
|
|
|
if (typeof (MinecraftUser) !== 'function') |
|
|
|
|
|
LoadQueue.Start(() => { |
|
|
|
|
|
}); |
|
|
|
|
|
else |
|
|
|
|
|
this.loadUser(); |
|
|
|
|
|
} |
|
|
|
|
|
loadUser() { |
|
|
|
|
|
var id = m.route.param('id'); |
|
|
|
|
|
if (id.match(/^[0-9]+$/)) |
|
|
|
|
|
id = +id; |
|
|
|
|
|
else |
|
|
|
|
|
return; |
|
|
|
|
|
if (this.user.ID !== id) { |
|
|
|
|
|
this.user = $.extend(true, new MinecraftUser(), MinecraftPayService.Users.find(o => o.ID === id)) || this.user; |
|
|
|
|
|
if (this.user.ID) { |
|
|
|
|
|
MinecraftPayAPI.GetAllSubscriptionStates({ params: { id } }).then(map => { |
|
|
|
|
|
this.subscriptionsStates = map || this.subscriptionsStates; |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
m.redraw(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
UnlockServer(serverId) { |
|
|
|
|
|
if (!this.subscriptionsStates.get(serverId)) { |
|
|
|
|
|
Modal.YesNo('Delete minecraft user', __('Do you really want to unlock this server for this minecraft user?'), (c, e) => this.unlockServer(this.user.ID, serverId, c)).Show(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
unlockServer(userId, serverId, confirmed) { |
|
|
|
|
|
if (confirmed) { |
|
|
|
|
|
MinecraftPayAPI.SubscribeServer({ params: { id: userId, serverId } }).then(r => { |
|
|
|
|
|
this.subscriptionsStates.set(serverId, r.Obj); |
|
|
|
|
|
Toasts.Messaged(r.Message, Toast.Load({ Type: r.Success ? 'success' : 'danger' })); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
return undefined; |
|
|
|
|
|
} |
|
|
|
|
|
} |