Skip to content

Commit 09101b2

Browse files
author
Marco Rinck
committed
finalize doc for server messages config
1 parent d2bf4c2 commit 09101b2

File tree

2 files changed

+29
-9
lines changed

2 files changed

+29
-9
lines changed

README.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -189,11 +189,31 @@ app.config(['growlProvider', '$httpProvider', function(growlProvider, $httpProvi
189189
````
190190

191191
This adds a pre-defined angularJS HTTP interceptor that is called on every HTTP request and looks if response contains
192-
messages. Messages f rom the server need to satisfy these requirements:
192+
messages. Interceptor looks in response for a "messages" array of objects with "text" and "severity" key. This is an example
193+
response which results in 3 growl messages:
194+
195+
````json
196+
{
197+
"someOtherData": {...},
198+
"messages": [
199+
{"text":"this is a server message", "severity": "warn"},
200+
{"text":"this is another server message", "severity": "info"},
201+
{"etext":"and another", "severity": "error"}
202+
]
203+
}
204+
````
193205

194-
* response needs to have a "messages" attribute of type array in root of response
195-
* every message needs to have these attributes:
196-
* text - message text
197-
* severity - severity of message, needs to be one of the following strings: "warn", "info", "error", "success"
206+
You can configure the keys, the interceptor is looking for like this:
207+
208+
````javascript
209+
var app = angular.module("demo", ["angular-growl"]);
210+
211+
app.config(["growlProvider", "$httpProvider", function(growlProvider, $httpProvider) {
212+
growlProvider.messagesKey("my-messages");
213+
growlProvider.messageTextKey("messagetext");
214+
growlProvider.messageSeverityKey("severity-level");
215+
$httpProvider.responseInterceptors.push(growlProvider.serverMessagesInterceptor);
216+
}]);
217+
````
198218

199219
Server messages will be created with default TTL.

demo/demo.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
var app = angular.module("demo", ["angular-growl", "ngAnimate", "ngMockE2E"]);
22

3-
app.config(["growlProvider", "$httpProvider", "$injector", function(growlProvider, $httpProvider) {
4-
growlProvider.globalTimeToLive(10000);
3+
app.config(["growlProvider", "$httpProvider", function(growlProvider, $httpProvider) {
4+
growlProvider.globalTimeToLive(2000);
55
growlProvider.messagesKey("my-messages");
66
growlProvider.messageTextKey("messagetext");
77
growlProvider.messageSeverityKey("severity-level");
@@ -15,8 +15,8 @@ app.run(function($httpBackend) {
1515
$httpBackend.when('GET', '/mockbackend').respond({
1616
someData: "fhsdfshfshdfs",
1717
"my-messages": [
18-
{"messagetext":"this is a server messages", "severity-level": "warn"},
19-
{"messagetext":"this is another server messages", "severity-level": "info"},
18+
{"messagetext":"this is a server message", "severity-level": "warn"},
19+
{"messagetext":"this is another server message", "severity-level": "info"},
2020
{"messagetext":"and another", "severity-level": "error"}
2121
]
2222
});

0 commit comments

Comments
 (0)