Skip to content

Commit

Permalink
Merge pull request marcorinck#18 from MilosMosovsky/master
Browse files Browse the repository at this point in the history
Add option to reverse order messages
  • Loading branch information
Jan Stevens committed Jun 18, 2014
2 parents 2bed838 + b3dc31a commit 0f71446
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 3 deletions.
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,18 @@ app.controller("demoCtrl", ['$scope', 'growl', function($scope, growl) {

##Configuration

###Reverse ordered messages [default: false]

Ability to reverse order of messages (default ordering is newest on the bottom ).

````javascript
var app = angular.module('myApp', ['angular-growl']);

app.config(['growlProvider', function(growlProvider) {
growlProvider.globalReversedOrder(true);
}]);
````

###Only unique messages [default: true]

Accept only unique messages as a new message. If a message is already displayed (text and severity are the same) then this
Expand Down
10 changes: 9 additions & 1 deletion src/growlDirective.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,15 @@ angular.module("angular-growl").directive("growl", ["$rootScope", "$sce",
function addMessage(message) {
$timeout(function() {
message.text = $sce.trustAsHtml(String(message.text));
$scope.messages.push(message);

/** abillity to reverse order (newest first ) **/
if(growl.reverseOrder())
{
$scope.messages.unshift(message);
} else {
$scope.messages.push(message);
}


if (message.ttl && message.ttl !== -1) {
$timeout(function() {
Expand Down
19 changes: 17 additions & 2 deletions src/growlFactory.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ angular.module("angular-growl").provider("growl", function() {
_inline = false,
_position = 'top-right',
_disableCloseButton = false,
_disableIcons = false;
_disableIcons = false,
_reverseOrder = false;

/**
* set a global timeout (time to live) after which messages will be automatically closed
Expand Down Expand Up @@ -53,6 +54,15 @@ angular.module("angular-growl").provider("growl", function() {
_disableIcons = disableIcons;
};

/**
* set whether message ordering is reversed
*
* @param {bool} reverseOrder
*/
this.globalReversedOrder = function (reverseOrder) {
_reverseOrder = reverseOrder;
};

/**
* set the key in server sent messages the serverMessagesInterecptor is looking for variables to inject in the message
*
Expand Down Expand Up @@ -249,6 +259,10 @@ angular.module("angular-growl").provider("growl", function() {
return _onlyUniqueMessages;
}

function reverseOrder() {
return _reverseOrder;
}

function inlineMessages() {
return _inline;
}
Expand All @@ -264,8 +278,9 @@ angular.module("angular-growl").provider("growl", function() {
success: success,
addServerMessages: addServerMessages,
onlyUnique: onlyUnique,
reverseOrder : reverseOrder,
inlineMessages: inlineMessages,
position: position,
position: position
};
}];
});

0 comments on commit 0f71446

Please sign in to comment.