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;
}