We would like to upgrade the website for our non-profit motorcycle group, currently hosted in Drupal 5 at www.floribamariders.com. We want to upgrade the site to Drupal 7, add new features and reinstall the site in a new hosting environment.
Please direct responses to webmaster (at) floribamariders.com, or use my contact form on Drupal.org.
Provider & Client Responsibilities
Provider Requirements
• Must have a track record of completed, paid projects
• With your bid, provide URLs for Drupal sites you have launched
• Must provide 2 references for prior projects. At least one of these references must be willing to talk with us via Skype/phone.
• Excellent English skills
Provider Nice-to-Haves
• You have uploaded patches to Drupal core or a Drupal contrib module
• Have deployed sites to Drupal Gardens
• It would be great if you're passionate about motorcycles!
Client Will Provide
• MySQL backup of the current site
• Zipped version of all files (PHP, .htaccess, uploaded images, etc.)
• FTP, shell and MySQL login info for two environments: dev and production
New Features
We want to do things "the Drupal way," migrating data from old Event and Image modules into CCK content types. Using ImageCache is important.
When our requirements are not in core, we prefer using contrib modules, as long as they are mature and well-maintained. In cases where a contrib module meets 90% of our needs but has not been upgraded to D7, you should upgrade the code to D7 and submit the patch back to the community through Drupal.org.
"Yahoo Groups" Functionality
This is the most important part of the project, so we're listing it separately. We currently use Yahoo Groups for mailing list discussion. The members like the fact that they can participate in the same thread via email and on web pages. Drupal does not offer this functionality in core, but it should be possible to accomplish this using contrib modules. This page describes the concept in detail.
Recreating Yahoo or Google Groups
http://drupal.org/node/260023#comment-849857
Users should be able to easily include images in their forum posts, and these images should appear inline with the post using the ImageCache module.
PayPal Integration
• Users with a certain permission level can create forms that automatically generate PayPal buttons with the appropriate dollar amount.
• Club members will interact with these forms and receive a custom PayPal link on a per-order basis, depending which options they choose.
• Example 1: Fall Rally Event
o Double bed deluxe: $50/night x 3 nights = $150
o Friday dinner: $10
o Saturday dinner: $15
o Total: $175
o This event participant would see a PayPal button that directs $175 to treasurer@floribamariders.com. The individual's order details should also carry across to PayPal.
• Example 2: Track Day at Talladega
o $120 if registered before June 1 (server should calculate price based on system date) for 1 day = $120
o $10 lunch
o Total: $130
• Example 3: Track Day at Barbers
o $250 if registered after October 1 (server should calculate price based on system date) for 1 day = $250
o Total: $250
• Example 4: Track Day at Barbers
o $450 if registered after October 1 (server should calculate price based on system date) for 2 days
o Total: $450
Upload Multiple Photos
Easily upload multiple photos and present them in an attractive manner using some lightbox module.
Embedded Media Field Module
Use Embedded Media Field module to pull data from Flickr, Smugmug and YouTube.
Facebook Integration
Add a Like button to every page
Quickly post a link to pages on FloribamaRiders.com to our Facebook group page
Google Analytics Module
Add Google Analytics module to site
Custom Content Types
The "Ride Report" content type should include fields for text, photos, as well as attachments of GPS files.
Hosting and Deployment
We are currently hosted at Pair Networks (pair.com). A key goal is for me to manage the site in the future with minimal work. One option we're considering is using Acquia's Drupal Gardens service because they automatically keep the Drupal version and modules up-to-date. If you determine that our requirements do not require modules outside of Drupal Gardens, you will move the site there. It not, we will continue hosting with either Pair or possibly WebEnabled.com.
You might choose to work in your own dev environment, but you should plan for deployment in two locations: our dev and production. These currently live on the same server, separated by different domain names, directories and MySQL databases.
Data Migration
You will be responsible for migrating the following content. You might perform upgrades in your dev environment from D5 to D6 and then to D7, or you might use the contrib "Migrate" module. We can discuss the best strategy.
• Users & passwords
• Blogs
• Content pages (These are our nodes using the "page" content type in Drupal 5.)
• Images (Migrate from old Image module to CCK.)
• Events (Migrate from old Event module to CCK.)
• WYSIWYG editor (Currently using FCKEditor, open to using TinyMCE.)
User Roles
The site currently has only one role in addition to the defaults. This role is called "site editor," and this includes some additional permissions like "administer forums" and "administer users." As the site develops, we might add a role or two, such as "payment administrator." This role would be able to create forms that connect to PayPal, as described under New Features.
Navigation Improvements
The site navigation currently resides entirely in a right-side menu. You will provide wireframes to help us decide on new navigation. Our goals are:
• Encourage users to engage with the site by featuring the social and dynamic content
• De-emphasize the static content
• Make it clear why a user should log in
• Once user logs in, present simple options of what they can do (Create blog entry or ride report, post a future motorcycle ride, participate in forums, upload images)
Template & CSS Development
Upgrade old D5 template to D7
Ensure the site is highly usable on mobile devices including iPhone, Android
• Site should auto-detect mobile browsers and send them to a custom theme, like Mobile Theme
Graphic Design
Functionality is more important than graphic design. If your firm has graphic design skills, feel free to include an estimate in your bid, but break that out as a separate line item. We're more interested in Drupal expertise and will probably not redesign the site at this point.
Schedule, Milestones & Payments
We anticipate the entire project will take roughly 45 days. Assuming we can get started on April 1, that puts a launch date as May 15. It's important to get the site up soon because the motorcycling season is here!
The project will include four milestones, and we will use Escrow.com to hold the funds. We will fund the escrow for each milestone prior to start of work and release the escrow upon milestone approval. If we are not satisfied with the project direction or quality, we will terminate the project. Payment for the second milestone will include deployment of the in-progress code to our dev server.
I am a developer with the skills to perform this work, but I have prior commitments to other projects. I will provide timely feedback and make decisions to keep the project moving.
Budget
We are a non-profit organization, so our budget is low, around $500-$1,000. We prefer providers who write realistic bids, educating us on the features available in our price range. Please do not provide an unrealistically low bid in hopes of increasing the price later.