1
0
Fork 0
mirror of synced 2024-07-04 06:00:53 +12:00
appwrite/public/scripts/views/general/setup.js

45 lines
1.4 KiB
JavaScript
Raw Normal View History

(function(window) {
window.ls.container.get("view").add({
selector: "data-setup",
2020-02-19 11:13:09 +13:00
controller: function(element, console, form, alerts, router) {
element.addEventListener("submit", function(event) {
event.preventDefault();
2019-05-09 18:54:39 +12:00
let loaderId = alerts.add({ text: 'Creating new project...', class: "" }, 0);
let formData = form.toJson(element);
2019-05-09 18:54:39 +12:00
formData["name"] =
formData["name"] || (element.dataset["defaultName"] || "");
2019-05-09 18:54:39 +12:00
2020-01-31 12:51:01 +13:00
console.teams.create(formData["name"] || "").then(
function(data) {
2020-02-17 20:16:11 +13:00
let team = data["$id"];
2019-05-09 18:54:39 +12:00
formData = JSON.parse(
JSON.stringify(formData).replace(
new RegExp("{{teamId}}", "g"),
team
)
); //convert to JSON string
2019-05-09 18:54:39 +12:00
2020-01-31 12:51:01 +13:00
console.projects.create(formData["name"], team).then(
function(project) {
alerts.remove(loaderId);
2020-02-19 11:13:09 +13:00
//router.change("/console/home?project=" + project["$id"]);
2020-02-17 20:16:11 +13:00
window.location.href = "/console/home?project=" + project["$id"];
},
function() {
throw new Error("Failed to setup project");
}
);
},
function() {
throw new Error("Setup failed creating project team");
}
);
});
}
});
})(window);