#!/usr/clearos/sandbox/usr/bin/php
<?php

///////////////////////////////////////////////////////////////////////////////
// B O O T S T R A P
///////////////////////////////////////////////////////////////////////////////

$bootstrap = getenv('CLEAROS_BOOTSTRAP') ? getenv('CLEAROS_BOOTSTRAP') : '/usr/clearos/framework/shared';
require_once $bootstrap . '/bootstrap.php';

///////////////////////////////////////////////////////////////////////////////
// D E P E N D E N C I E S
///////////////////////////////////////////////////////////////////////////////

use \clearos\apps\gateway_management\DNSthingy as DNSthingy;

clearos_load_library('gateway_management/DNSthingy');

///////////////////////////////////////////////////////////////////////////////
// M A I N
///////////////////////////////////////////////////////////////////////////////

$dnsthingy = new DNSthingy();

if (!isset($argv[1]))
    $argv[1] = '';

switch ($argv[1]) {
    case 'enable':
        echo "Enabling...\n";
        $dnsthingy->enable();
        echo "Done.\n";
        break;

    case 'disable':
        echo "Disabling...\n";
        $dnsthingy->disable();
        echo "Done.\n";
        break;

    case 'register':
        echo "Registering...\n";
        $result = $dnsthingy->register();
        try {
            $json = json_decode($result['body']);
            $msg = $json->message . "\n";
        } catch (Exception $e) {
            $msg = "An error occurred.\n";
        }
        echo $msg;
        break;

    case 'fix':
        if ($dnsthingy->is_enabled()) {
            $status = 'Enabled';
        } else {
            $status = 'Disabled';
        }
        echo "Status: $status\n";

        $dnsthingy->setup();

        $dnsthingy->verify_setup();
        $issues = $dnsthingy->get_issues();
        if ($issues) {
            foreach ($issues as $issue) {
                echo "$issue\n";
            }
        }
        break;

    default:
        echo "Available params:\n";
        echo "  fix         - fix any issues\n";
        echo "  enable      - enable DNSthingy\n";
        echo "  disable     - disable DNSthingy\n";
        echo "  register    - register an account\n";
}

exit(0);
