The project for you:
Using CakePHP 2.2.4 I have built several modules that users can contribute to if they are a fan or moderator of a particular page. The modules I’m concerned about for this task are called Photos and Videos. I also deployed the CakePHP Media plugin for handling media uploads but I found that this plugin is flawed. When uploading a photo, a thumbnail is not create which it is supposed to and all of my video files are being uploaded as “corrupt”. It also lacks other features I am looking for. What I’m needing for you is to either develop or employ a media plugin that includes the following features:
- Upon upload, original file is saved and thumbnail is created and saved (this is for photos…it would be nice if a poster could be created from video uploads but not necessary).
- Thumbnail size and other settings such as path to uploads file, acceptable file types, file size limits, etc should be stored and accessed from a database table so that I can create an admin area and edit these at will. Photos and Videos will have separate database tables. You will NOT be responsible for creating the admin area.
- Jquery to show upload status (either per file or total overall)
- There should be three upload forms. One for the Photos module to accommodate multiple file uploads (up to 10 at one time). Another for the Videos module for single file uploads. The last is a general upload form that includes the progress bar for other file upload needs I have in other places of the application.
- A nice to have (not a must have) would be the ability to drag and drop files into the Photos uploader.
- Upon successful upload, user should be redirected to a page where they can assign a title and or caption to each photo they uploaded. For videos, since it is one upload at a time, they should enter this information on the same page as the upload form.
- This plugin needs to accept many mime-types including those for photos, video, documents, archived packages, etc.
- Plugin should have a helper function for embedding videos.
- The form needs to recognize if the user is viewing a fan page and if so make sure the photo(s) or video remains assigned to that page (ie: set page_id in photos or videos table equal to current page, just as you would do user_id).
- The same goes to photo and video albums. If user is viewing an album page and clicks to upload a video/photos, the album should be a hidden field in the form and pre-populated with the current album_id. Else, have a drop down list of all albums for the given page. (Video albums and photo albums are separate).
- The photo gallery index and album index view should display rows of thumbnails in a paginated set. The number of thumbnails per page should be another setting in the database.
- The photo view should resize the photo to fit within my template and upon click, popup the full-size version of the photo with a semi-transparent black overlay that covers the rest of the page underneath.
- Under the image in the view page there should be a carousel that displays the 3 images before AND after the current photo within that album so a user can easily click on the next photo or whichever one they want. The number of images to display (in this case, 3) should also be set in the database
- Please develop and test this on your own server. I can give you database table names and structure to match mine and any other information you need so that it can transfer over to my system without a glitch.
- Milestones will be given 1.) upon completion of this plugin and 2.) upon successful testing of this plugin on my system.
- Please show me WORKING links of your most recent CakePHP projects AND any media PHP/MySQL projects (even if they are non-CakePHP) so I know you are capable. Please detail exactly what you did.
The title includes "other tasks" because I would like to hire the same developer for multiple projects and I briefly listed those projects but I exceeded the charcter limit. So yes there are more opportunities for the hired developer upon successful completion of this project. Please bid for THIS project only.