Your code did not work but i fixed it by replacing the code in adjustClock() to:
if (rtc.isrunning()) {
now = rtc.now();
rtc.adjust(DateTime(now.year(), now.month(), now.day(), currentHour, currentMinute, currentSecond));
} else {
rtc.adjust(DateTime(__DATE__, __TIME__));
}
This way the RTC is set to DATE/TIME when you first flash the firmware and after you can use the manual clock setting to adjust hour/minutes using the current date.