-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
66 lines (56 loc) · 1.6 KB
/
main.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
/**
* Created by av186014 on 12/5/17.
* Game rules = https://thenamegame-generator.com/the-name-game-rules.html
*/
var nameGameButton = document.getElementById('btnNameGame');
function isVowel(letter) {
var vowels = ['a', 'e', 'i', 'o', 'u'],
result = false;
for (var i = 0; i < vowels.length; i++) {
if (vowels[i] === letter) {
result = true;
break;
}
}
return result;
}
var convertName = function(event) {
var name = document.getElementById('name').value,
resultContainer = document.getElementById('nameGameResult'),
isB = false,
isF = false,
isM = false,
shortName = '',
output = '',
firstLtr = '',
bStr = 'bo-',
fStr = 'fo-',
mStr = 'mo-';
if (name) {
shortName = name.toLowerCase();
firstLtr = name[0].toLowerCase();
if (!isVowel(firstLtr)) {
shortName = name.substr(1).toLowerCase();
}
isB = firstLtr === 'b';
isF = firstLtr === 'f';
isM = firstLtr === 'm';
bStr = isB ? bStr : bStr + 'b';
fStr = isF ? fStr : fStr + 'f';
mStr = isM ? mStr : mStr + 'm';
output = '<p>' + name + ', ' + name + ', ' + bStr + shortName + '<br />';
output += 'Banana-fana ' + fStr + shortName + '<br />';
output += 'Fee-fi-' + mStr + shortName + '<br />';
output += name + '!</p>';
resultContainer.innerHTML = output;
} else {
resultContainer.innerHTML = '<p>No name provided</p>';
}
};
var handleKeypress = function(event) {
if (event.which === 13) {
convertName();
}
};
nameGameButton.addEventListener('click', convertName);
document.addEventListener('keypress', handleKeypress);