mongoose-gravatar

0.3.0 • Public • Published

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

Package Sidebar

Install

npm i mongoose-gravatar

Weekly Downloads

10

Version

0.3.0

License

MIT

Last publish

Collaborators

  • cristiandouce