twosigma/angular-gravatar

Name: angular-gravatar

Owner: Two Sigma

Description: Easy-to-use and flexible Angular.js directive for Gravatar images

Created: 2016-02-17 16:24:39.0

Updated: 2016-02-17 16:24:40.0

Pushed: 2016-02-17 16:25:32.0

Homepage:

Size: 104

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Bower version NPM version

Build Status Code Climate

angular-gravatar

Angular.JS directive for Gravatar.

Copyright © 2015, Sebastian Wallin sebastian.wallin@gmail.com

Requirements
Install with Bower
r install angular-gravatar
Install with NPM
install angular-gravatar
Usage

Include angular-gravatar.js in your application.

ipt src="bower_components/angular-gravatar/build/angular-gravatar.js"></script>

Add the module ui.gravatar as a dependency to your app:

app = angular.module('app', ['ui.gravatar']);

Then use the directive on an image tag and it will set the correct src attribute for you.

 using a scope variable //-->
 gravatar-src="user.email" gravatar-size="100">
 or a string directly //-->
 gravatar-src="'sebastian.wallin@gmail.com'" gravatar-size="100">

If the source is already an MD5 hash, it will be left untouched (thanks @thewarpaint)

Binding Once

If you know that the source is not going to change, you can use the gravatar-src-once instead:

 gravatar-src-once="user.email">

Note: this directive will watch for a non falsy value and then stop watching.

Configuration

The options that are sent along to Gravatar can be set either directly in the directive as seen above with size or configured as default parameters via the gravatarServiceProvider:

lar.module('ui.gravatar').config([
ravatarServiceProvider', function(gravatarServiceProvider) {
gravatarServiceProvider.defaults = {
  size     : 100,
  "default": 'mm'  // Mystery man as default for missing avatars
};

// Use https endpoint
gravatarServiceProvider.secure = true;

// Force protocol
gravatarServiceProvider.protocol = 'my-protocol';

// Override URL generating function
gravatarServiceProvider.urlFunc = function(options) {
  // Code to generate custom URL
};


Note that by default, no explicit protocol is set. This means that the image will use the protocol with which the page is loaded. For example; if the page url is http://www.example.com the image will be loaded over http, but if the page url is https://www.example.com the image will be loaded over https.

Anyway, you can force the protocol you want (for https use secure = true instead of protocol = 'https' because gravatar url differs for secure/no secure). For example, if you are developing a mobile app with Cordova you should use http. Otherwise directive will use file protocol and fail.

All the available options can be seen over at the Gravatar docs for image requests

License

MIT

Contributors

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.