lib/vendor/sugar.js
function(f, localeCode) {
      if(isString(f)) {
        localeCode = f;
        f = null;
      }
      return formatDate(this, f, true, localeCode);
    }
function(f, localeCode) {
      if(isString(f)) {
        localeCode = f;
        f = null;
      }
      return formatDate(this, f, true, localeCode);
    }
function ( f , localeCode ) { if ( isString ( f ) ) { localeCode = f ; f = null ; } return formatDate ( this , f , true , localeCode ) ; }
*
@method relative([fn], [locale] = currentLocale)
@returns String
@short Returns a relative date string offset to the current time.
@extra [fn] can be passed to provide for more granular control over the resulting string. [fn] is passed 4 arguments: the adjusted value, unit, offset in milliseconds, and a localization object. As an alternate syntax, [locale] can also be passed as the first (and only) parameter. For more, see @date_format.
@example

Date.create('90 seconds ago').relative() -> 1 minute ago
Date.create('January').relative()        -> ex. 5 months ago
Date.create('January').relative('ja')    -> 3ヶ月前
Date.create('120 minutes ago').relative(function(val,unit,ms,loc) {
// value = 2, unit = 3, ms = -7200, loc = [current locale object]
});                                      -> ex. 5 months ago

*
* @method relative ( [ fn ] [ locale ] = currentLocale ) @returns String @short Returns a relative date string offset to the current time . @extra [ fn ] can be passed to provide for more granular control over the resulting string . [ fn ] is passed 4 arguments : the adjusted value unit offset in milliseconds and a localization object . As an alternate syntax [ locale ] can also be passed as the first ( and only ) parameter . For more see @date_format . @example