/**
 * Build Plugin Metabox
 */
function wpbitly_build_metabox($post, $args)
{
    global $wpbitly;
    $shortlink = $args['args'][0];
    echo '<label class="screen-reader-text" for="new-tag-post_tag">WP Bit.ly</label>';
    echo '<p style="margin-top: 8px;"><input type="text" id="wpbitly-shortlink" name="_wpbitly" size="32" autocomplete="off" value="' . $shortlink . '" style="margin-right: 4px; color: #aaa;" /></p>';
    $url = sprintf($wpbitly->url['clicks'], $shortlink, $wpbitly->options['bitly_username'], $wpbitly->options['bitly_api_key']);
    $bitly_response = wpbitly_curl($url);
    echo '<h4 style="margin-left: 4px; margin-right: 4px; padding-bottom: 3px; border-bottom: 4px solid #eee;">Shortlink Stats</h4>';
    if (is_array($bitly_response) && $bitly_response['status_code'] == 200) {
        echo "<p>Global Clicks: <strong>{$bitly_response['data']['clicks'][0]['global_clicks']}</strong><br/>";
        echo "<p>User Clicks: <strong>{$bitly_response['data']['clicks'][0]['user_clicks']}</strong></p>";
    } else {
        echo '<p class="error" style="padding: 4px;">There was a problem retrieving stats!</p>';
    }
}
function wpbitly_options_validate($input)
{
    $option_parameters = wpbitly_get_option_parameters();
    global $wpbitly_options;
    $valid_input = $wpbitly_options;
    // Bit.ly Username
    $valid_input['bitly_username'] = wp_filter_nohtml_kses($input['bitly_username']);
    // Bit.ly API Key
    $valid_input['bitly_api_key'] = wp_filter_nohtml_kses($input['bitly_api_key']);
    // Post Types
    if (!isset($input['post_types'])) {
        $input['post_types'] = array();
    } else {
        foreach ($input['post_types'] as $post_type) {
            if (!in_array($post_type, $option_parameters['post_types']['valid_options'])) {
                unset($input[$post_type]);
            }
        }
    }
    $valid_input['post_types'] = $input['post_types'];
    // Admin Toolbar Link
    $valid_input['enable_admin_toolbar_shortlink'] = isset($input['enable_admin_toolbar_shortlink']) ? true : false;
    // Validate Bit.ly API handshake
    if (!empty($valid_input['bitly_username']) && !empty($valid_input['bitly_api_key'])) {
        global $wpbitly;
        $url = sprintf($wpbitly->url['validate'], $valid_input['bitly_username'], $valid_input['bitly_api_key']);
        $wpbitly_validate = wpbitly_curl($url);
        if (is_array($wpbitly_validate) && $wpbitly_validate['data']['valid'] == 1) {
            $valid = true;
        }
    }
    $valid_input['wpbitly_invalid'] = true === $valid ? false : true;
    return $valid_input;
}