$(function() { var input = $('#id_heure_debut') var min_value = input.attr('value').split(":") var is_morning = (min_value[0] <= 12) $.fn.editHeureValue = function(mod) { var value = input.attr('value').split(":"); var new_hour = parseInt(value[0]); var new_minutes = parseInt(value[1]) + mod; if (new_minutes >= 60) { new_hour += 1; new_minutes -= 60; } else if (new_minutes < 0) { new_hour -= 1; new_minutes += 60; }; if (new_hour >= 24) { new_hour -= 24; } else if (new_hour < 0) { new_hour += 24 }; value[0] = new_hour; value[1] = new_minutes; var test_value = value[0] * 10000 + value[1] * 100 + parseInt(value[2]); var test_min_value = min_value[0] * 10000 + min_value[1] *100 + parseInt(min_value[2]); console.log('test:', test_value, 'min:', test_min_value) if (test_value >= test_min_value || (!is_morning && test_value < 120000)) { input.attr('value', value.join(":")); console.log('updated!') }; }; $('#minus-5').click(function() { $.fn.editHeureValue(-5) console.log('minus 5') }); $('#plus-5').click(function() { $.fn.editHeureValue(5) console.log('plus 5') }); });