I am building a directory of businesses and want to not only publish a list of business hours, but also to publish if a business is currently open for business.
In a matrix, I have 7 rows with row_1 representing Sunday row_7 for Saturday. So I have two questions.
- Is this as concise as the code COULD be or is there a better way?
Is there a flaw in the conditional that tells whether a business is currently open? It seems to work right now, but not very tested.
{!-- Hours of Operation --} {exp:stash:set name="hours-of-operation"} The Current time is: {current_time format="%g:%i%a"}<br/> {hours_of_operation} {if row_count=="1"}Sunday{/if} {if row_count=="2"}Monday{/if} {if row_count=="3"}Tuesday{/if} {if row_count=="4"}Wednesday{/if} {if row_count=="5"}Thursday{/if} {if row_count=="6"}Friday{/if} {if row_count=="7"}Saturday{/if} {open_time format="%g:%i%a"} - {close_time format="%g:%i%a"}<br/> {/hours_of_operation} {/exp:stash:set} {!-- Hours of Operation --} {!-- Are we open? --} {exp:stash:set name="are-we-open"} {exp:mx_calc expression='{current_time format="%w"}+1'} {!-- matrix --} {hours_of_operation} {if row_count=="{calc_result}"} Today is: {current_time format="%l"}<br/> <strong> {if '{open_time format="%H%i"}' <= '{current_time format="%H%i"}' && '{close_time format="%H%i"}' <= '{current_time format="%H%i"}'} We are currently open!{if:else}We are currently closed. {/if} </strong><br/> Today's Hours are:<br/> <strong>{open_time format="%g:%i%a"} - {close_time format="%g:%i%a"}</strong><br/> {/if} {/hours_of_operation} {!-- matrix --} {/exp:mx_calc} {/exp:stash:set} {!-- Are we open? --}