/*
 * Copyright 2019 Igalia, S.L.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */



var values = {
    ac: false,
    recirculation: false,
    rear: false,
    front: false
};

var paths = {
    ac: PATHS.airConditioning,
    recirculation: PATHS.recirculation,
    rear: PATHS.rearDefroster,
    front: PATHS.frontDefroster,
};

var nodes = {}

export function init() {
    nodes[PATHS.airConditioning] = document.getElementById('ac');
    nodes[PATHS.recirculation] = document.getElementById('recirculation');
    nodes[PATHS.frontDefroster] = document.getElementById('front');
    nodes[PATHS.rearDefroster] = document.getElementById('rear');
    nodes['up'] = document.getElementById('up');
    nodes['down'] = document.getElementById('down');
    nodes['right'] = document.getElementById('right');
}

export function update(path, value) {
    if (path == PATHS.leftAirDistribution) {
        if (value == 'UP') {
            nodes['up'].setAttribute('value', true);
            nodes['down'].setAttribute('value', false);
            nodes['right'].setAttribute('value', false);
        } else if (value == 'DOWN') {
            nodes['down'].setAttribute('value', true);
            nodes['up'].setAttribute('value', false);
            nodes['right'].setAttribute('value', false);

        } else if (value == 'MIDDLE') {
            nodes['right'].setAttribute('value', true);
            nodes['up'].setAttribute('value', false);
            nodes['down'].setAttribute('value', false);
        }
    } else {
        var node = nodes[path];
        node.setAttribute('value', value);
    }
}

export function toggle(node) {
    var key = node.getAttribute('key');
    values[key] = !values[key];
    if (key == 'up') {
        KUKSA.set(PATHS.leftAirDistribution, 'UP');
    } else if (key == 'down') {
        KUKSA.set(PATHS.leftAirDistribution, 'DOWN');
    } else if (key == 'right') {
        KUKSA.set(PATHS.leftAirDistribution, 'MIDDLE');
    } else {
        KUKSA.set(paths[key], values[key]);
    }
}
