function saveOptions(e) {
  e.preventDefault();

  var defaultUser = document.getElementById('defaultUser').value;
  var quietHours = document.getElementById('quietHours').value;
  var pollInterval = document.getElementById('pollInterval').value;

  chrome.storage.sync.set({
    defaultUser: defaultUser,
    quietHours: quietHours,
    pollInterval: pollInterval
  }, function() {
    // Update status to let user know options were saved.
    var status = document.getElementById('status');
    status.textContent = 'Options saved.';
    setTimeout(function() {
      status.textContent = '';
    }, 3000);
  });

  return false;
}

function restoreOptions() {
  chrome.storage.sync.get({
    defaultUser: '0',
    quietHours: '',
    pollInterval: '1'
  }, function(items) {
    document.getElementById('defaultUser').value = items.defaultUser;
    document.getElementById('quietHours').value = items.quietHours;
      document.getElementById('pollInterval').value = items.pollInterval || 1;
  });
}

function defaultOptions() {
  document.getElementById('defaultUser').value = 0;
  document.getElementById('quietHours').value = '';
  document.getElementById('pollInterval').value = 1;
}

function main() {
  if (!chrome || !chrome.storage || !chrome.storage.sync) {
    var status = document.getElementById('status');
    status.style.cssText = 'color:red;';
    status.textContent = 'Error: Could not load settings. Please upgrade Chrome.';
    return;
  }
  document.addEventListener('DOMContentLoaded', restoreOptions);
  document.getElementById('defaults').addEventListener('click', defaultOptions);
  document.getElementById('optionsForm').addEventListener('submit', saveOptions);
}

main();

@@ -1,16 +1,385 @@
+function restoreOptions() %7B%0A  chrome.storage.sync.get(%7B%0A    defaultUser: '0',%0A    quietHours: '',%0A    pollInterval: '1'%0A  %7D, function(items) %7B%0A    document.getElementById('defaultUser').value = items.defaultUser;%0A    document.getElementById('quietHours').value = items.quietHours;%0A      document.getElementById('pollInterval').value = items.pollInterval %7C%7C 1;%0A  %7D);%0A%7D%0A%0A
 function saveOpt
@@ -411,16 +411,31 @@
 ult();%0A%0A
+  // Normalize%0A
   var de
@@ -446,16 +446,37 @@
 tUser = 
+Math.max(0, parseInt(
 document
@@ -503,32 +503,39 @@
 aultUser').value
+) %7C%7C 0)
 ;%0A  var quietHou
@@ -605,16 +605,39 @@
 erval = 
+Math.max(0, parseFloat(
 document
@@ -673,16 +673,23 @@
 ').value
+) %7C%7C 1)
 ;%0A%0A  chr
@@ -1057,389 +1057,68 @@
 %0A%0A  
-return false;%0A%7D%0A%0Afunction restoreOptions() %7B%0A  chrome.storage.sync.get(%7B%0A    defaultUser: '0',%0A    quietHours: '',%0A    pollInterval: '1'%0A  %7D, function(items) %7B%0A    document.getElementById('defaultUser').value = items.defaultUser;%0A    document.getElementById('quietHours').value = items.quietHours;%0A      document.getElementById('pollInterval').value = items.pollInterval %7C%7C 1;%0A  %7D)
+// Show normalized values%0A  restoreOptions();%0A  return false
 ;%0A%7D%0A

Add normalization and show the normalized values on save.