Name: Check-In Is Active
Tag Name: checkinisactive
Tag Type: Inline

Description:
====================================
Checks if the check-in window has started for a specific schedule or the schedule for a specific group.


Documentation:
====================================
<p><strong>Usage:</strong></p>
<pre>{[ checkinisactive groupid:'1234' ]}</pre>
<p>&nbsp; &nbsp; - or -</p>
<pre>{[ checkinisactive scheduleid:'123' ]}</pre>
<p><strong>Returns:</strong></p>
<p>True or False, depending on whether the check-in window is currently open.</p>


Shortcode Markup:
====================================
{%- if groupid and groupid != '' -%}
    {%- assign group = groupid | GroupById -%}
    {%- assign groupSchedule = group.Schedule -%}
{%- elseif scheduleid and scheduleid != '' -%}
    {%- schedule id:'{{ scheduleid }}' -%}
        {%- assign groupSchedule = schedule -%}
    {%- endschedule -%}
{%- endif -%}

{%- assign openOffset = groupSchedule.CheckInStartOffsetMinutes | Times:-1 | AsString | Default:'-30' | AsInteger -%}
{%- assign closeOffset = groupSchedule.CheckInEndOffsetMinutes | AsString | Default:'30' | AsInteger -%}
{%- assign now = 'Now' | Date:'M/dd/yyyy h:mm:ss tt' | AsDateTime -%}
{%- if groupSchedule.iCalendarContent != empty -%}
    {%- assign nextStartDateTime =  groupSchedule.iCalendarContent | DatesFromICal:1,'startdatetime' | Index:0 %}
{%- endif -%}

{%- if nextStartDateTime -%}
    {%- assign openDateTime = nextStartDateTime | DateAdd:openOffset,'m' -%}
    {%- assign closeDateTime = nextStartDateTime | DateAdd:closeOffset,'m' -%}
    {%- if now >= openDateTime and now <= closeDateTime -%}{{ 'true' | AsBoolean }}{%- else -%}{{ 'false' | AsBoolean }}{%- endif -%}
{%- elseif groupSchedule.WeeklyDayOfWeek -%}
    {%- assign dayOfWeek = now | Date:'dddd' -%}
    {%- if dayOfWeek == groupSchedule.WeeklyDayOfWeek -%}
        {%- if groupSchedule.WeeklyTimeOfDay -%}
            {%- assign startDateTime = 'Now' | Date:'M/dd/yyyy' | Append:' ' | Append:groupSchedule.WeeklyTimeOfDay | Date:'M/dd/yyyy h:mm:ss tt' -%}
        {%- else -%}
            {%- assign startDateTime = 'Now' | Date:'M/dd/yyyy 00:00:00' -%}
        {%- endif -%}
        {%- assign openDateTime = startDateTime | DateAdd:openOffset,'m' -%}
        {%- assign closeDateTime = startDateTime | DateAdd:closeOffset,'m' -%}
        {%- if now >= openDateTime and now <= closeDateTime -%}{{ 'true' | AsBoolean }}{%- else -%}{{ 'false' | AsBoolean }}{%- endif -%}
    {%- else -%}{{ 'false' | AsBoolean }}{%- endif -%}
{%- else -%}{{ 'false' | AsBoolean }}{%- endif -%}
Parameters:
====================================
groupid (empty value)
scheduleid (empty value)


Enabled Lava Commands: 
====================================
RockEntity