If anyone has any feedback for me, I would appreciate it - esp with regards to how i handled the "name"
variable. Thanks!
var customName = document.getElementById('customname');
var randomize = document.querySelector('.randomize');
var story = document.querySelector('.story');
function randomValueFromArray(array){
return array[Math.floor(Math.random()*array.length)];
}
var storyText =
"It was 94 farenheit outside, so " + insertX +
" went for a walk. When they got to " + insertY +
", they stared in horror for a few moments, then " + insertZ + ". " +
name + " saw the whole thing, but was not surprised — " + insertX +
" weighs 300 pounds, and it was a hot day.";
var name = "Bob";
var insertX = ["Willy the Goblin","Big Daddy","Father Christmas"];
var insertY = ["the soup kitchen","Disneyland","the White House"];
var insertZ = ["spontaneously combusted", "melted into a puddle on the sidewalk", "turned into a slug and crawled away"];
randomize.addEventListener('click', result);
function result() {
var newStory = storyText;
if(customName.value != '') {
var newName = customName.value;
var newStory = newStory.replace(name, newName);
}
var xItem = randomValueFromArray(insertX);
var yItem = randomValueFromArray(insertY);
var zItem = randomValueFromArray(insertZ);
var newStory = newStory.replace(undefined, xItem);
var newStory = newStory.replace(undefined, yItem);
var newStory = newStory.replace(undefined, zItem);
var newStory = newStory.replace(undefined, xItem);
if(document.getElementById("uk").checked) {
var weight = Math.round(300 * 0.0714286) + " stone";
var temperature = Math.round((94-32)*0.5556 ) + " centigrade";
var newStory = newStory.replace("94 farenheit", temperature);
var newStory = newStory.replace("300 pounds", weight);
}
story.textContent = newStory;
story.style.visibility = 'visible';
}