#!/bin/sh

. ../common/ajax_common

WORK_DIR="${RAMDISK}/tmp/quick_config"


load_interface_list()
{
    # name mode zone
    ${FLOWEYE} if list | grep -v "swgrp" | awk \
    'BEGIN{
    dot = "";
        printf "[";
    }{
        col = 1;
        printf "%s", dot;
        printf "{";
        printf "\"name\":\"%s\",", $1;
        printf "\"zone\":\"%s\"", $3;
        printf "}";
        if (dot == "") dot = ",";
    }END{
        printf "]";
    }'
}



quick_config()
{
    conf_file="${WORK_DIR}/quick.conf"
    mkdir -p ${WORK_DIR}

    echo "mode=\"${CGI_mode}\"" > ${conf_file}
    echo "config=\"${CGI_config}\"" >> ${conf_file}

    ${RAMDISK}/app/webui/bin/pa_quick_config >/dev/null 2>&1 &
    
    WEB_LOGGER "򵼵" "mode=${CGI_mode}"
    retjson 0 "ɹ"
}


query_config_stat()
{
    stat="run"
    msg=""
    stat_file="${WORK_DIR}/quick.stat"

    [ -f "${stat_file}" ] && . ${stat_file}

    case "${stat}" in
        "error")
            [ "${msg}" = "" ] && msg="÷"
            retjson 1 "${msg}"
            ;;
        "ok")
            #rm -rf ${WORK_DIR}
            retjson 0 "DONE" "${msg}"
            ;;
        *)
            retjson 0 "RUN" "${msg}"
            ;;
    esac
}


case "${CGI_action}" in

    "load_interface_list")
        retjson 0 "OK" "`load_interface_list`"
        ;;

    "query_config_stat")
        query_config_stat
        ;;

    "quick_config")
        action_check
        quick_config
        ;;

    *)
        retjson 1 "UNKNOW_ACTION"
        ;;
esac
