Bootstrap Toggle

by Roman Fedytskyi

HTML

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://gitcdn.github.io/bootstrap-toggle/2.2.0/css/bootstrap-toggle.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.0/js/bootstrap-toggle.min.js"></script>
<script src="https://rawgit.com/localForage/localForage/master/dist/localforage.js"></script>
<form>
    <div class="checkbox">
        <label>
            <input id="online" type="checkbox"/>
            Online
        </label>
    </div>
</form>
<input type="text" id="input">
<button class="btn btn-success" id="send">send</button>

CSS

body { margin: 10px }

JavaScript

document.querySelector('#send').addEventListener('click', function() {
	var input = document.getElementById("input").value;

  if (checkOnline()) {
  		localforage.keys().then(function(res) {
        if (res.length) {
        	res.forEach(function(key) {
          	localforage.getItem(key).then(function(data) {
            	send(data);
              localforage.removeItem(key);
            });
          });
        } else {
        	send(input);
        }
      });
  } else {
    localforage.setItem('form', {
      input: input,
      date: new Date()
    }).then(function() {
    }).catch(function(err) {
      console.log('ERR: ', err);
    });
  }
});

function send(value) {
	console.log(value, ' ===> Server');
}

function checkOnline() {
	return document.getElementById("online").checked;
}