Skip to main content

A simple Django app which allow you notify everything to user or users

Project description

Django webline Notifications
===========================
###Screen shot
![screen shot](http://i.imgur.com/TxoZeaG.png)

###What is Django webline Notifications
This is a django application to notify user about events.
You can simply inform user about all kind of updates.

###Features
* Chose notification status and color
* Thumbnail for notification
* Notification has a URL, can passed in other notifications
* Send group (to list of users) notification

##How to install
###Downloading the package
Probably the best way to install is by using PIP:

```
$ pip install django-webline-notifications
```
If you want to clone the main repository:

```
$ git clone https://github.com/alireza-molaee/django-webline-notifications.git
$ cd django-webline-notifications
$ python setup.py install
```
###install on django
now you can add django-simple-notifications to the settings.py file:

```
INSTALLED_APPS = (
...
'webline-notifications',
'django.contrib.admin',
)
```
Then run migrations:

```
$ python manage.py migrate webline-notifications
```
Then collectstatic:

```
$ python manage.py collectstatic
```
now if run server you can see notifications in django admin:

```
$ python manage.py runserver
```
##Settings
you can limit archive notification for all user by `WEBLINE_NOTIFICATIONS_LIMIT` default is `False` it mean (no limit)
for example `myproject.settings.py`:

```
...
WEBLINE_NOTIFICATIONS_LIMIT = 50
...
```

##Usage
to notify every thing you want:

1. import Notification
2. use Notification.send to send notification

```
from webline_notification.model import Notification

Notification.send(
...
)
```
#####send option:

1. list of user:
list of user object that you want to receive this notification `[obj, obj, ...]`
2. content:
a small text about event `'some one join us'`
3. icon:
icon css class `'fa-info'`
4. color:
color hex id `'#c3c3c3'`
5. link:
you notification can have a url to where reason of event `'http://www.google.com/'` *(optional)*

you can use default color in Notification `Notification.COLOR_DANGER`
you can filter notification by color in django admin if you use default color

#####defult colors:

* <span style="color:#f39c12;">COLOR_WARNING</span>
* <span style="color:#f56954;">COLOR_DANGER</span>
* <span style="color:#00c0ef;">COLOR_INFO</span>
* <span style="color:#00a65a;">COLOR_SUCCESS</span>
* <span style="color:#3c8dbc;">COLOR_PRIMARY</span>
* <span style="color:#d2d6de;">COLOR_GRAY</span>
* <span style="color:#111111;">COLOR_BLACK</span>

#####example:

```
from webline_notifications.models import Notification
from django.contrib.auth.models import User

user = User.objects.get(pk=1)

Notification.send(
[user],
'foo',
'fa-info',
Notification.COLOR_DANGER,
url='http://www.google.com/'
)
```



##TODO
- [x] add test for models
- [x] add template tags to use any template
- [x] add view to change see status
- [x] add test for view
- [ ] add default settings
- [ ] font files
- [x] default notification count to show
- [x] max of notification can be archived
- [x] handle events by AJAX

Project details


Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page