move goToMenuOption to Helpers.js
fix refresh groups list issue when groups are deleted/edited etc. added ajax delete to delete the group from the db when delete is clicked on ui. group form is hidden on new page. #30
This commit is contained in:
parent
62e2aa1136
commit
ce6ac53e8f
@ -5,30 +5,34 @@
|
|||||||
self.helpers = new Helpers();
|
self.helpers = new Helpers();
|
||||||
self.uiPages = {
|
self.uiPages = {
|
||||||
overview: "overview",
|
overview: "overview",
|
||||||
|
group: "groups",
|
||||||
home: function () { return this.overview; }
|
home: function () { return this.overview; }
|
||||||
};
|
};
|
||||||
self.apiEndpoints = {
|
self.apiEndpoints = {
|
||||||
|
deleteGroups:"/api/groups/delete",
|
||||||
getGroups: "/api/groups",
|
getGroups: "/api/groups",
|
||||||
editGroup: "/api/groups/edit"
|
editGroup: "/api/groups/edit"
|
||||||
};
|
};
|
||||||
self.goToMenuOption = function (menu) { location.hash = menu; console.log("goToMenuOption: " + menu); };
|
|
||||||
self.clearGroupForm = function (data, event) {
|
self.clearGroupForm = function (data, event) {
|
||||||
|
self.goToMenuOption(self.uiPages.group);
|
||||||
self.groupEditItem({ Id: -1, Name: "" });
|
self.groupEditItem({ Id: -1, Name: "" });
|
||||||
};
|
};
|
||||||
self.hideGroupForm = function (data, event) {
|
self.hideGroupForm = function (data, event) {
|
||||||
|
self.helpers.goToMenuOption(self.uiPages.group);
|
||||||
self.groupEditItem(null);
|
self.groupEditItem(null);
|
||||||
};
|
};
|
||||||
self.groupFormHidden = ko.computed(function () {
|
self.groupFormHidden = ko.computed(function () {
|
||||||
return self.groupEditItem() == null;
|
return self.groupEditItem() == null;
|
||||||
}, self);
|
}, self);
|
||||||
self.editGroupClick = function (data, event) {
|
self.editGroupClick = function (data, event) {
|
||||||
|
self.helpers.goToMenuOption(self.uiPages.group);
|
||||||
self.groupEditItem(data);
|
self.groupEditItem(data);
|
||||||
};
|
};
|
||||||
self.getGroups = function () {
|
self.getGroups = function () {
|
||||||
var url = self.helpers.createRequestUrl(self.apiEndpoints.getGroups, null, false);
|
var url = self.helpers.createRequestUrl(self.apiEndpoints.getGroups, null, false);
|
||||||
$.getJSON(url, function (res) {
|
$.getJSON(url, function (res) {
|
||||||
self.groupsList(res);
|
self.groupsList(res);
|
||||||
console.log(res);
|
//console.log(res);
|
||||||
}).fail(function (resp, status, error) {
|
}).fail(function (resp, status, error) {
|
||||||
console.log("error - getGroups");
|
console.log("error - getGroups");
|
||||||
//var errObj = self.processRequestFailure(resp, status, error);
|
//var errObj = self.processRequestFailure(resp, status, error);
|
||||||
@ -36,20 +40,38 @@
|
|||||||
//self.goToMenuOption(self.uiPages.home());
|
//self.goToMenuOption(self.uiPages.home());
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
self.deleteGroup = function (groupId) {
|
||||||
|
var url = self.helpers.createRequestUrl(self.apiEndpoints.deleteGroups,
|
||||||
|
[{ key: "groupId", value: groupId }],
|
||||||
|
false,
|
||||||
|
false);
|
||||||
|
$.ajax({
|
||||||
|
url: url,
|
||||||
|
type: 'DELETE',
|
||||||
|
success: function (result) {
|
||||||
|
console.log("deleted " + groupId);
|
||||||
|
self.helpers.goToMenuOption(self.uiPages.home());
|
||||||
|
self.clearGroupForm();
|
||||||
|
// Do something with the result
|
||||||
|
}
|
||||||
|
});
|
||||||
|
console.log("delete: " + groupId);
|
||||||
|
};
|
||||||
self.submitGroupEdit = function(group) {
|
self.submitGroupEdit = function(group) {
|
||||||
var url = self.helpers.createRequestUrl(self.apiEndpoints.editGroup, null, false);
|
var url = self.helpers.createRequestUrl(self.apiEndpoints.editGroup, null, false);
|
||||||
$.post(url, group, function () {
|
$.post(url, group, function () {
|
||||||
}, "json")
|
}, "json")
|
||||||
.done(function () {
|
.done(function () {
|
||||||
self.groupEditItem(null);
|
self.groupEditItem(null);
|
||||||
self.goToMenuOption(self.uiPages.home());
|
self.helpers.goToMenuOption(self.uiPages.home());
|
||||||
})
|
})
|
||||||
.fail(function (resp, status, error) {
|
.fail(function (resp, status, error) {
|
||||||
self.goToMenuOption(self.uiPages.home());
|
self.helpers.goToMenuOption(self.uiPages.home());
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
Sammy(function () {
|
Sammy(function () {
|
||||||
this.get("#overview", function () {
|
this.get("#overview", function () {
|
||||||
|
self.clearGroupForm();
|
||||||
self.getGroups();
|
self.getGroups();
|
||||||
});
|
});
|
||||||
this.post("#editgroup", function () {
|
this.post("#editgroup", function () {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user