Your task will be to build a File/Media System with a Download Manager (restricting who can download files) in Laravel.
# Basics
- use MySQL, Eloquent ORM & SoftDeletes
- cross-browser & mobile compatible
- implement a simple ajax-powered search (searching user, title, description & array of tags)
- I'll take care of slugs and tagging
# Permissions
Use entrust to implement:
- can_view_files
- can_edit_files
- can_bulk_edit_files (for moderators)
- can_bulk_mark_files (for moderators, spam)
- can_upload_files
- can_download_files
- can_delete_files (soft delete only)
- can_bulk_delete_files (for moderators, soft delete only)
- can_manage_files (optional permanent delete, also sees soft deleted files)
I think they are pretty self-explanatory.
# View: index
- Toggleable between Grid (Default) and List view (paginated)
- Filter by Filetype, upload date, download count & rating
- Sort ASC & DESC
- select/deselect all button and action dropdown (intended for moderators and admins)
--- bulk edit selected (can_bulk_edit_files)
--- mark selected as spam (can_bulk_mark_files)
--- delete selected (can_delete_files)
--- delete selected permanently (can_manage_files only)
--- restore selected (can_manage_files only)
- items (like WordPress media manager):
--- on hover show buttons for delete, report/spam, view/edit modal, select
--- on hover show rating
--- on click -> open Quick View modal (load via Ajax/Angular, see attached drawing in ZIP-file)
- search field
# View: show-file
- Show same like Quick View modal plus ratings overview, revisions list, ratings, write/edit rating, related files, other files by user.
- Show a little pencil icon next to editable contents like title or description, on click open a modal where user can edit those contents
- keep a history of those edits (don't make them a revision)
# Uploads
- upload either via Add Files button or drag and drop on index view
- bulk upload up to 10 files at a time (like on WordPress Media Manager)
- add options to config file which filetypes can be uploaded, what size each file can have, preview image sizes (like in WordPress, preview-xs, preview-sm, preview-md, preview-lg)
- automatically generate small, cropped preview images depending on set image sizes (where possible, otherwhise use a default with filetype icon)
# Revisions
Implement a simple revision system, where all users who have can_upload_file permission can upload newer versions of a file together with a short note of what has changed (like "Fixed typos").
On the show-file view, there should be a section, where all revisions are listed and downloadable.
# Attaching files to other Models
Files should be attachable to other models, therefor implement a Many To Many Polymorphic Relation via a `files_pivot` table (and of course FileableTrait & FileableInterface for attachable models like a post or sth).
There should be at least an attachFile() and a detachFile() method available.
# Download Manager / Restrictions
By default all files are only downloadable for logged in users (with permission (can_download_files), guests can only view but not download.
Furthermore Users with can_manage_files permission can always set files to be publicly accessible.
# File storage: Amazon AWS S3
Implement via Laravels Filesystem / Cloud Storage
see [login to view URL] (flysystem)
# Requirements
- use Laravel 5.1 or higher
- use Bootstrap 3.3.x
- use FontAwesome 4.x
- use jQuery 2.x
- use AngularJS (in case necessary)
- use valid HTML5
- provide well structured SCSS files
- make responsive
- well commented code (PHPDoc)
- meet PHP Coding Standards (see [login to view URL])
Of course if you have any further ideas or think we should do sth differently, I'm shall be glad to hear them.
Hello Sir.
I am full stack developer and my ranking is 6th in freelancer.
I have enough experience with web developing for 7+years.
Client satisfaction is my top priority.
I will complete your project perfectly in your deadline.
I am ready to start the work, and it will be great pleasure for me to work for you.
Please get in touch.
Looking forward to hear from you.
Best Regards
KCHG
Let's discuss over freelancer Personal Message Box for the proper estimation of cost and time.
I am myself developer so you will directly work with me. No mediators. No managers. No subcontractors.
see my recent work for the technical expertise along with reviews & feedback on my profile page.
The requirements are pretty explanatory and exhaustive. I would suggest using some Packagist packages and achieving some of the requirements. We can discuss the others in-depth
I want to discuss this project with you further, let me know the best suitable time for you to schedule the meeting, Feel free to message me at any time, i used to be online 14 hrs in a day on this website so probably you will get a quick response from my end.
Dear Sir/ Madam,
My name is Henry - the owner of PHAMTECH Co.
My team is really interested in this project as it is exactly within our scope of expertise: We are web/ app design & development company located in Hochiminh city, VIETNAM.
Working with a team who has both in-house DESIGNERS and PROGRAMMERS means that you can take advantage of both: Our designers could help revise the design even in coding process, which is a GREAT benefit for any ongoing project.
+ We plan and build. We don't use prebuilt templates which produce conflicting codes and bugs and hurt the system in the long term.
+ Our team is 100% in-house. We don't outsource projects elsewhere. So you pay for the real service - not marketing fee.
In short, if you need an experienced team who offers *real English* communication, beautiful design & optimized code, premium after-service, in time and to budget, then we are the choice. If you need something based on solely ONE of the above criteria, then we're still happy if you decide to give another freelancer a chance. Just bookmark our Freelancer profile https://www.freelancer.com/u/phamtech211.html and come back in case the selected freelancer can't meet your demands.
Best wishes,
Henry.
Hello.I am senior Frontend and Backend developer.
I have 6 + years experience of PHP, CI, Laravel,ROR, AngularJS,NodeJS and latest technologies.
on my experience, schedule is very important,
when i accept the project, i make my plan and work with my plan.
So my client get working result every day from me.
My duty is to satisfy the client.
And i hope long term work with clients.
if you want high quality result for your project, please contact me and discuss about your project in detail.
i guarantee high quality result.
my English skill is very high and have good communication condition.
i can full time work for your project.
i am ready to start your project immediately,
i am waiting for you now.
Thank you.
Regard~
Good afternoon, we are EXPERTS in that type of user media websites! We have experience in Laravel and all other PHP Framworks . Also JS framworks like Angular JS. Good guidelines, we can follow the and deliver it in short time. Lets disucss your project, we have a 4.5 rating and 20 very good reviews. let me give you our website, references etc so you can find out more about us and the way we work. Thanks