Mongoose plugin for generating gravatar.com urls
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.gitignore
.travis.yml
History.md
Makefile
Readme.md
index.js
package.json

Readme.md

mongoose-gravatar

Mongoose plugin to dynamically generate gravatar urls.

Build Status

Installation

  $ npm install mongoose-gravatar

Usage example

Setup

var gravatar = require('mongoose-gravatar');
var UserSchema = new Schema({ email: String });

// Extend User's Schema with gravatar plugin
UserSchema.plugin(gravatar);

// or... provide some default options for plugin
UserSchema.plugin(gravatar, { secure: true, default: "retro", size: 245 });

// or... custom schema property
UserSchema = new Schema({ primaryEmail: String });
UserSchema.plugin(gravatar, { property: 'primaryEmail' });

// ...

Retrieving Gravatar from User Model

var author = new User({ email: 'jorge@ups.com' });

// retrieves a normal gravatar url
author.gravatar()
// out: 'http://www.gravatar.com/avatar/23463b99b62a72f26ed677cc556c44e8'

// retrieves a secure (https) gravatar url
author.gravatar({ secure: true })
// out: 'https://secure.gravatar.com/avatar/23463b99b62a72f26ed677cc556c44e8'

// sets size to 150px width and height
author.gravatar({ size: 150 });
// out: 'http://www.gravatar.com/avatar/23463b99b62a72f26ed677cc556c44e8?s=150'

// With provided options at plugin level...
author.gravatar()
// out: https://secure.gravatar.com/avatar/23463b99b62a72f26ed677cc556c44e8?d=retro&s=245

Plugin specific options

  • property: Schema property, optional, defaults to email

API options list

The following are the list of options allowed for .gravatar() model method.

  • secure: Compiles a secure url for gravatars. Check gravatar.com docs for more info.
  • email: Returns a gravatar url for a different email than the model's.
  • size: Determines the size of the image delivered by gravatar.com. Check gravatar.com docs for more info.
  • default: Sets a default image when email has no avatar registered at gravatar.com. Check gravatar.com docs for more info.
  • forcedefault: Forces default image. Check gravatar.com docs for more info.
  • rating: Sets self-rated image policy. Check gravatar.com docs for more info.

Test

  $ npm install --dev
  $ make test

License

MIT