import devdi.props as props


def functions(pd):
    #######
    # GFW #
    #######
    loc = props.LOC_GFW
    # DIRK
    roo = props.ROO_DIR
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZGW, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])

    sml = pd.get(props.STG_MYA, loc, roo, props.FUN_MPP)
    tml = pd.get(props.STG_ZGW, loc, roo, props.FUN_DEL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[1])

    # FLOOR
    roo = props.ROO_FLO
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZGW, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])

    #######
    # FFW #
    #######
    loc = props.LOC_FFW
    # JULIAN
    roo = props.ROO_JUL
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZFW, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])
    # LIVINGROOM
    roo = props.ROO_LIV
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZFW, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])
    # SLEEP
    roo = props.ROO_SLP
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZFW, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])

    #######
    # FFE #
    #######
    loc = props.LOC_FFE
    # KITCHEN
    roo = props.ROO_KIT
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_CIR)
    sml.auto_off(600)
    # LIVINGROOM
    roo = props.ROO_LIV
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZFE, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])
    # SLEEP
    roo = props.ROO_SLP
    sml = pd.get(props.STG_SHE, loc, roo, props.FUN_MAL)
    tml = pd.get(props.STG_ZFE, loc, roo, props.FUN_MAL)
    sml.register_power_on_instance(tml, sml.PROPERTIES[0])
