-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconvertorController.js
More file actions
64 lines (62 loc) · 2.26 KB
/
convertorController.js
File metadata and controls
64 lines (62 loc) · 2.26 KB
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
/*jslint node: true, browser: true */
"use strict";
function ConvertorController() {
var convertorView = new ConvertorView(),
convertorModel = new ConvertorModel(),
updateConvertorDisplay = function () {
convertorView.showValue(convertorModel.getCurrentValue(), convertorModel.getHome());
},
evalConvertor = function () {
convertorView.showValue(convertorModel.evaluate(), convertorModel.getVis());
},
clearConvertor = function () {
convertorModel.clear();
},
setHome = function (currency) {
convertorModel.setHome(currency);
},
setVis = function (currency) {
convertorModel.setVis(currency);
},
setCut = function (cut) {
convertorModel.setCut(cut);
},
addDigit = function (digit) {
convertorModel.addDigit(digit);
},
makeMenu = function () {
convertorView.makeMenu(convertorModel.getCurrencies(), convertorModel.getCuts(), convertorModel.getHome(), convertorModel.getVis());
};
this.init = function () {
convertorView.setEvalClickCallback(function () {
evalConvertor();
});
convertorView.setClearClickCallback(function () {
clearConvertor();
updateConvertorDisplay();
});
convertorView.setNumClickCallback(function (element) {
addDigit(element.innerHTML);
updateConvertorDisplay();
});
convertorModel.fetchData(function () {
makeMenu();
convertorView.setSelectFromClickCallback(function (element) {
setHome(element.value);
element.checked = true;
updateConvertorDisplay();
});
convertorView.setSelectToClickCallback(function (element) {
setVis(element.value);
element.checked = true;
updateConvertorDisplay();
});
convertorView.setCutClickCallback(function () {
setCut(this.value);
});
});
updateConvertorDisplay();
};
}
var convertorController = new ConvertorController();
window.addEventListener('load', convertorController.init(), false);