import Vue from 'vue/dist/vue.esm.js';
import axios from 'axios';
import {
getData
} from "../../utilities";
import * as UIkit from "uikit";
export default function (elem) {
const data = getData(elem, ["id", "activepanel", "alreadyregistered"]);
const app = new Vue({
el: elem,
mounted: function () {
this.switchPanel(data.activepanel || "profile");
$(elem).removeClass("uk-hidden");
if (data.alreadyregistered) {
Vue.nextTick(() => {
UIkit.modal("#already-registered").show();
});
}
},
data: {
discord_id: data.id,
panels: {
profile: {
name: "My Profile",
selected: true,
visible: true
}
}
},
methods: {
switchPanel: function (panel) {
_.each(this.panels, (info, key) => {
if (key == panel) {
Vue.set(info, "visible", true);
Vue.set(info, "selected", true);
} else {
Vue.set(info, "visible", false);
Vue.set(info, "selected", false);
}
});
if (panel === "landing") {
history.pushState('', 'Player Dashboard | Exile Server Manager', `/users/${this.discord_id}`);
} else {
history.pushState('', 'Player Dashboard | Exile Server Manager', `/users/${this.discord_id}/${panel}`);
}
},
discordIconFallback: function (e) {
e.target.src = "https://discordapp.com/assets/6debd47ed13483642cf09e832ed0bc1b.png";
},
cancelTransfer: function () {
axios.post(`/users/${this.discord_id}/cancel_transfer`).catch(err => console.log(err));
}
}
});
}