gnowledge/gstudio — pull request #365 by sunnychaudhari (2014-04-15 10:40:01+00:00)
Title: User Shelf Implemented

User shelf is implemented , now user can create a shelf add shelf items to it and make their own choice of record and maintain it using shelf

User can create a shelf on click of shelf icon which is right side panel of every page.
For adding the shelf items user need to create a shelf first and then user can add his own choice of resources in it.
Also the user can remove the shelf items from shelf on click of remove button for already added shelf item.

Every user is related with its own shelves using "has_shelf" RT
All shelves which the user has created are GS instances and are member of shelf GST

user --> has_shelf --> shelves

## Inverse relation ##
user <-- shelf_of <-- shelves

user can see its own shelves in user dashboard as well, some more features regarding manipulation on shelves from user dashboard will be implemented very soon.

```
node_details_base.html --> included shelf div and template included shelf.html
shelf.html --> shelf display template which is on right side panel of every resource
userDashboard.html --> Displayed the user shelves in user dashboard page
ajax-urls.py --> url included for an ajax call on adding and removing shelf items
ajax_views.py --> shelf() added for manipulations with shelves
page.py --> user shelves manipulated and displayed for page instances
group.py --> user shelves manipulated and displayed for group instances
file.py --> user shelves manipulated and displayed for file instances
userDashboard.py --> user shelves are manipulated and displayed in user dashboard page

```
[NOTE: For any event in shelf it doesnt reflects in shelf div, it requires to refresh the whole page again then only you can see the shelves and its contents , this is a bug, and it will be resolved in next commit ]