VERY new to this....need code help PLEASE!!!!!!

Before you go any further I suggest that you rewrite your current program without the delay() command. If you do not do it now you will regret it later. Whilst the delay() is occurring the Arduino can do nothing else such as reading buttons or temperatures etc.

So, how do you get rid of the delay() but still have a delay I hear you ask ? The answer is to use the principle shown by the BlinkWithoutDelay example in the IDE. Note the start time of an event, such as a relay turning on then periodically check if it is time to do something else, such as turn it off. If so, then do it, but if not do something else like reading inputs and reacting.

Using this principle it becomes easier to incorporate reading a switch and acting upon its input. Have you tried any of the examples in the IDE ? They will show how to read input and react to it.

Another concept that you will find helpful is that of a Finite State Machine. It sounds scary but isn't. At any one time your system is in one of several states (relay 1 on, relay 2 on etc) You write the program so that when it is in a particular state then actions or time passing cause a change of state and the program moves into that state. Combined with the use of millis() timing (BlinkWithoutDelay) this means that you can write a responsive and flexible program that is easier to maintain.

To implement the FSM I favour using switch/case over multiple if tests, using the current state number as the cases. To me it makes more sense but either way works.

Longer term you will almost certainly need to incorporate a Real Time Clock in your project because the Arduino is no good for accurate long term timing.

I realise that there is a lot to take in but take it slow and you will make progress towards your goal.