<?php

if (isset($_POST['WuPhooey-username']) && isset($_POST['WuPhooey-api_key'])) {
    $username = $_POST['WuPhooey-username'];
    $api_key = $_POST['WuPhooey-api_key'];
    if (empty($username) || empty($api_key)) {
        echo 'Failed!';
    } else {
        include 'wufoo-api/WufooApiWrapper.php';
        $wrapper = new WufooApiWrapper($api_key, $username);
        try {
            $login = $wrapper->login($api_key);
            echo 'Success!';
        } catch (Exception $e) {
            echo 'Failed!';
        }
    }
} else {
    echo 'Failed!';
}
function wufoo_login($echo = true)
{
    if (!get_option('WuPhooey-api_key') || !get_option('WuPhooey-username')) {
        if ($echo) {
            echo '<div id="wuphooey-message" class="updated">Make sure you have filled in all the fields on the <a href="' . wufoo_link('settings') . '">Settings Page</a>.</div>';
        }
        return false;
    } else {
        $api_key = get_option('WuPhooey-api_key');
        $username = get_option('WuPhooey-username');
        $wrapper = new WufooApiWrapper($api_key, $username);
        if ($login_data = wufoo_cache_get('login', 60 * 60 * 24 * 30)) {
            if ($login_data['username'] == $username && $login_data['api_key'] == $api_key) {
                return $wrapper;
            } else {
                wufoo_cache_set('login', array('api_key' => $api_key, 'username' => $username));
            }
        }
        try {
            $login = $wrapper->login($api_key);
            wufoo_cache_set('login', array('api_key' => $api_key, 'username' => $username));
        } catch (Exception $e) {
            if ($echo) {
                echo '<div id="wuphooey-message" class="updated">Make sure you have added the right API Key on the <a href="' . wufoo_link('settings') . '">Settings Page</a>.</div>';
            }
            return false;
        }
        return $wrapper;
    }
}