Binary studio academy 2013 php group (denis)

Post on 25-Dec-2014

1.141 views 1 download

description

Graduation project of Binary Studio Academy 2013. PHP group. Corporate social network Read more @ binary-studio.com

Transcript of Binary studio academy 2013 php group (denis)

Binary Studio Academy 2013

Social networking sites are most popular for sharing information between friends, relatives, teachers… etc.

The task was to create a corporate social network which will be useful and convenient. Our project was realized by using PHP,

yii2 framework, MySQL, JavaScript and other opportunities of web programming.

YII provides the ability to control access based on roles (RBAC). This feature is used in the application.

At this moment there are two roles:

• user • administrator.

After authorization user sees his profile and posts he has created.

User can: • edit his personal data • upload and crop his avatar • change password, which will come to his email • view other users’ profiles.

Every user has his own gallery, where he can create albums and upload photos to them(AJAX). We used some libraries to implement the gallery: • viewing photos - "blueimp-gallery" library • downloading photos - "fine-uploader" library.

"Jcrop" library helps crop the pictures. User can upload photos one by one or several, or simply drag and drop photos onto the page. The downloaded images are stored on a clouded resource cloudinary.com.

Every user can view posts. He can also create, edit and delete his own posts. Every post has likes (implemented by using AJAX technology). If some user enjoyed the post, he can like it. On the top of posts feed there are topical posts.

User can delete posts just on the posts feed page.

User can see has he already liked post or not.

There is library in our project, where user can: • view books • search books by any word in the search box located in the top of the table • order books Books can be sorted by tags. User sees the status of the books: available, taken or booked.

Functions such as searching, browsing books, sorting by tags, book adding directly in the table is implemented by using Backbone.js.

It is possible to vote for book. Before that user sees books rating and voting form.

After voting user sees how persents voted for each mark. Voting was implemented by using AJAX technology

Book reservation is designed for ordering books from the library for the selected time interval. User can order books browsing information about a particular book. In the list user sees a list of orders and their status.

The calendar shows only active orders with the ability to filter by year, month, week, day. To implement the calendar it was used 3rd party library, which takes JSON data file and performs display these data on the calendar.

Sending reminders to users is also implemented (by JobManager).

Admin has all the abilities that user has. And of course he has some extra abilities. Admin is only person who can:

• invite user to network

• edit any personal information about any user

• update, delete any post • give topical status to posts

• CRUD tags

• create new library’s books • delete, update information about books

In the calendar administrator sees all active orders. Administrator can: • edit, delete any order • reserve book for any user in the system • "close" order when the book is returned.

Thanks for attention