-
Notifications
You must be signed in to change notification settings - Fork 0
/
MainController.js
85 lines (74 loc) · 3.3 KB
/
MainController.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
function launcher() {
var templateConstructor = new TemplateConstructor();
templateConstructor.constructHeader();
templateConstructor.constructContent();
templateConstructor.constructFooter();
// start working with replaceble content here
var content = document.getElementById("content");
content.setAttribute("class", "container");
var mainPage = new MainPage();
content.innerHTML = mainPage.getHtml();
var footer = document.getElementById("footer");
var root = document.getElementById("root");
root.insertBefore(content, footer);
}
// Main menu navigation
function navigateTo(element) {
var action = element.getAttribute("id");
var pageContent;
// start drawing the required pg with content segment
switch (action) {
case "openBankAccount":
document.title = "Open bank account";
var openingBankAccountPage = new OpeningBankAccountPage();
pageContent = openingBankAccountPage.getHtml();
break;
case "viewBankAccount":
document.title = "Search in bank accounts";
var searchingInBankAccountsPage = new SearchingInBankAccountsPage();
pageContent = searchingInBankAccountsPage.getHtml();
var targetPage = "bankAccountDetails";
sessionStorage.setItem("targetPage", targetPage);
break;
case "updateBankAccount":
document.title = "Search in bank accounts";
var searchingInBankAccountsPage = new SearchingInBankAccountsPage();
pageContent = searchingInBankAccountsPage.getHtml();
var targetPage = "updateBankAccount";
sessionStorage.setItem("targetPage", targetPage);
break;
case "removeBankAccount":
document.title = "Search in bank accounts";
var searchingInBankAccountsPage = new SearchingInBankAccountsPage();
pageContent = searchingInBankAccountsPage.getHtml();
var targetPage = "removeBankAccount";
sessionStorage.setItem("targetPage", targetPage);
break;
case "viewBankAccountsInPages":
document.title = "Bank accounts";
// do the initial call to fetch data here
sessionStorage.removeItem("currentIndex");
var currentIndex = 0;
var userResourceClient = new UserResourceClient();
var bankAccounts = userResourceClient.getBriefBankAccountsInPages(currentIndex);
var viewingBankAccountsUsingPaginationPage = new ViewingBankAccountsUsingPaginationPage();
pageContent = viewingBankAccountsUsingPaginationPage.getHtml(bankAccounts);
sessionStorage.setItem("currentIndex", currentIndex);
break;
case "backToMain":
document.title = "Home";
var mainPage = new MainPage();
pageContent = mainPage.getHtml();
break;
default:
throw new Error("Unknown action !!!");
}
addContentToTemplate(pageContent);
}
function addContentToTemplate(pageContent) {
var root = document.getElementById("root");
var content = document.getElementById("content");
var footer = document.getElementById("footer");
content.innerHTML = pageContent;
root.insertBefore(content, footer);
}