Вот зачем спрашивать совета, если делаешь по своему...
Ведь гораздо проще посчитать нужное количество дней, недель или месяцев, нежели высчитывать, а сколько там будет минут в них, тем более, что касательно месяцев, так в них разное количество минут будет, т.к., где 30 дней, где 31, а где и 28. Т.е., в твоем варианте добавляется обязательная проверка на наступления нового дня, недели, месяца. Вообщем, как писал ранее, считаем количество дней, недель, месяцев, в зависимости от выбранных настроек. Единственное, что я ранее упустил, не написал, так это обязательное обнуление всех переменный участвующих в подсчете перед входом в цикл.