mrt:accounts-ui-bootstrap-3-blaze

v0.3.10Published 10 years ago

This package has not had recent updates. Please investigate it's current state before committing to using it in your project.

meteor-accounts-ui-bootstrap-3

Meteor accounts-ui styled with Twitter's Bootstrap 3, now with multi-language support.

Installation

With Meteor 0.9:

$ meteor add ian:bootstrap-3
$ meteor add ian:accounts-ui-bootstrap-3

You will also need at least one accounts plugin: meteor add accounts-password, meteor add accounts-github, etc.

How to use

Add {{> loginButtons}} to your template

Example:

1<div class="navbar navbar-default" role="navigation">
2	<div class="navbar-header">
3		<a class="navbar-brand" href="#">Project name</a>
4        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
5            <span class="sr-only">Toggle navigation</span>
6            <span class="icon-bar"></span>
7            <span class="icon-bar"></span>
8            <span class="icon-bar"></span>
9        </button>
10	</div>
11	<div class="navbar-collapse collapse">
12		<ul class="nav navbar-nav">
13			<li class="active"><a href="#">Link</a></li>
14		</ul>
15		<ul class="nav navbar-nav navbar-right">
16			{{> loginButtons}} <!-- here -->
17		</ul>
18	</div>
19</div>

You can also configure Accounts.ui to your liking as you would with the official accounts-ui package.

Add additional logged in actions

You can add additional markup to the logged in dropdown, e.g. to edit the user's account or profile, by defining a _loginButtonsAdditionalLoggedInDropdownActions template and specifying the corresponding events.

1<template name="_loginButtonsAdditionalLoggedInDropdownActions">
2	<button class="btn btn-default btn-block" id="login-buttons-edit-profile">Edit profile</button>
3</template>
1Template._loginButtonsLoggedInDropdown.events({
2	'click #login-buttons-edit-profile': function(event) {
3		Router.go('profileEdit');
4	}
5});

Note that the dropdown will close since we're not stopping the propagation of the click event.

Localization

The default language is English, but this package also comes with translations to many other languages built in. If you want to change the language run one of the following on the client:

1accountsUIBootstrap3.setLanguage('es'); // for Spanish
2accountsUIBootstrap3.setLanguage('ca'); // for Catalan
3accountsUIBootstrap3.setLanguage('fr'); // for French
4accountsUIBootstrap3.setLanguage('de'); // for German
5accountsUIBootstrap3.setLanguage('it'); // for Italian
6accountsUIBootstrap3.setLanguage('pt'); // for Portuguese
7accountsUIBootstrap3.setLanguage('ru'); // for Russian
8accountsUIBootstrap3.setLanguage('el'); // for Greek

If you want to implement your own language, use the map function like so:

1accountsUIBootstrap3.map('es', {
2    _resetPasswordDialog: {
3      title: 'Restablece tu contraseña',
4      cancel: 'Cancelar',
5      submit: 'Guardar'
6    },
7    _enrollAccountDialog: {
8      title: 'Escribe una contraseña',
9      cancel: 'Cerrar',
10      submit: 'Guardar contraseña'
11    },
12    // ...
13})

You can use the translation files in the i18n folder as an example.

Screenshots

Sign In Sign Up Configure Login Service