Okay this works....ish!?
import datetime
from datetime import datetime
from datetime import timedelta
FIXED_WEEK_1 = "15/04/2019"
W1 = timedelta(days=7)
W2 = timedelta(days=14)
W3 = timedelta(days=21)
W4 = timedelta(days=28)
W5 = timedelta(days=35)
BOX_1 = 0
BOX_2 = 0
BOX_3 = 0
BOX_4 = 0
week_one_raw = datetime.strptime(FIXED_WEEK_1, '%d/%m/%Y')
week_one_refined = week_one_raw
week_two_refined = week_one_raw + W1
week_three_refined = week_two_refined + W1
week_four_refined = week_three_refined + W1
week_to_pay_refined = week_four_refined + W1
if BOX_1 == 1:
week_one_refined = week_one_raw + W1
week_two_refined = week_one_refined + W1
week_three_refined = week_two_refined + W1
week_four_refined = week_three_refined + W1
week_to_pay_refined = week_four_refined + W1
if BOX_1 == 0:
week_one_refined = week_one_raw
week_two_refined = week_one_raw + W1
week_three_refined = week_two_refined + W1
week_four_refined = week_three_refined + W1
week_to_pay_refined = week_four_refined + W1
if BOX_2 == 1:
week_one_refined = week_one_refined
week_two_refined = week_two_refined + W1
week_three_refined = week_two_refined + W1
week_four_refined = week_three_refined + W1
week_to_pay_refined = week_four_refined + W1
if BOX_2 == 0:
week_one_refined = week_one_refined
week_two_refined = week_two_refined
week_three_refined = week_three_refined
week_four_refined = week_four_refined
week_to_pay_refined = week_four_refined + W1
if BOX_3 == 1:
week_one_refined = week_one_refined
week_two_refined = week_two_refined
week_three_refined = week_three_refined +W1
week_four_refined = week_four_refined + W1
week_to_pay_refined = week_four_refined + W1
if BOX_3 == 0:
week_one_refined = week_one_refined
week_two_refined = week_two_refined
week_three_refined = week_three_refined
week_four_refined = week_four_refined
week_to_pay_refined = week_four_refined + W1
if BOX_4 == 1:
week_one_refined = week_one_refined
week_two_refined = week_two_refined
week_three_refined = week_three_refined
week_four_refined = week_four_refined +W1
week_to_pay_refined = week_four_refined +W1
if BOX_4 == 0:
week_one_refined = week_one_refined
week_two_refined = week_two_refined
week_three_refined = week_three_refined
week_four_refined = week_four_refined
week_to_pay_refined = week_four_refined + W1
print (week_one_refined)
print (week_two_refined)
print (week_three_refined)
print (week_four_refined)
print (week_to_pay_refined)
This code works and skips the correct weeks depending on whether the box variables are set to 0 or 1. This would work with a check box which was controlled by a submit button running the code above as a def and the checkboxes all returning 0 or 1 values.
Except if two check boxes are checked...then it doesn't skip two weeks ahead...damn it ....so close