<?php    /* shortening functions */

    
Function short_create($url$site NULL$short NULL)
    {
        
/* create a short URL with optional short name */
        
if (!$site)
            
$site "t0.tv";
        
$t_url "http://" $site "/api/shorten";
        
$t_url .= "?u=" urlencode($url);
        if (
$short != NULL)
            
$t_url .= "&s=" urlencode($short);
        
$result = @file_get_contents($t_urlfalse);
        
$json = @json_decode($result);
        if (isset(
$json->error))
            return 
"ERROR:" $json->error;
        return 
$json->short_url;
    }

    Function 
short_info($site$short)
    {
        
/* fetch info about a short URL */
        
$url "http://" $site "/api/info";
        
$url .= "?u=" urlencode($short);
        
$url .= "&t=" urlencode($site);
        
$result = @file_get_contents($urlfalse);
        
$json = @json_decode($result);
        return 
$json;
    }

    
/* USAGE
     *
     * $short_url = short_create($url);
     * $short_url = short_create($url, $site);
     * $short_url = short_create($url, $site, $short);
     *
     * will return 'ERROR:' followed by the error upon failure, or a http://
     * link upon success.
     *
     *
     * $short_info = short_info($site, $short);
     *
     * will return the following values:
     *   $short_info->error        the error message (if the call fails)
     *   $short_info->short_url
     *   $short_info->long_url
     *   $short_info->info_url
     *   $short_info->clicks
     *   $short_info->last_click
     *
     * see API documentation for explanations of these values.
     */
?>