Drupal Contract - Foreclosure Website w/ Google Maps | Global Connect

jerseychump's picture
Employment type: 
Contract
Telecommute: 
Allowed

Contact me: jyukes+drupal ats gmail.com 609-3 three 5-7103 Jay Yukes

Drupal/PHP/MySQL/Google Maps Mashup
- ecommerce integration with Authorize.net
- Maps integration with google maps
- sortable/page able result sets

ALL DESIGN AND GRAPHICS WILL BE SUPPLIED!!

DIFFERENT SCREENS OR MODULES

  • Advertising Copy
    -- have a modularized website that allows editing of various
    presentation components so updates to advertising copy aren't tedious

  • Session Infrastructure
    -- everytime a user comes back to the site we should test if cookies are enabled
    -- generate a session id (s_unique) and create a new record in Session table
    -- if previous session cookie is available, load data from the previous session
    --- the last username they logged in with (ud_email) -- their username will be filled in for them, they will only have to type the password
    --- their billing level (ud_user_type)
    --- the last location they searched (s_last_search) -- store geocoded VH coordinates
    --- auto detect their current location based on IP (maxmind.com GeoIP) (s_remote_ip, s_remote_location) -- store geocoded VH coordinates
    --- their referer, where they came to our website from (s_referer)
    --- their affiliate, which partner of ours they visited (s_affiliate)

  • Geocoding Address Translation to Vertical / Horizontal Coordinates
    -- geocode all address data that is uploaded in the information lists
    -- geocode all search locations as typed in by user -- by zip, city, or address
    -- get free geocoding using Census Data / Tiger information (www.geocoder.us)
    -- use more accurate Google or Yahoo information (Google@ http://brainoff.com/gmaps/mgeocoder.html , Yahoo @ http://developer.yahoo.com/maps/rest/V1/geocode.html)

  • Map Displaying Opportunities
    -- use location from either last searched location (s_last_search), if not present use (s_remote_location)
    -- search and present maps in 300 x 200 resolution with plots of available opportunities - default view at city level
    --- plot the first 100 opportunities that are closest to the search location
    --- Google maps available @ (http://www.google.com/apis/maps/)
    --- Yahoo maps available @ (http://developer.yahoo.com/maps/)
    --- click on location icon should provide detail about that location
    --- click on detail location should forward to location detail page

  • List Displaying Opportunities
    -- display a set of opportunities in list format
    -- display OppData columns in list format with recordset behavior 1-50, 51-100...
    -- hide premium only OppData fields from free users
    -- allow sort by all criteria
    -- Next / Previous - page through results
    -- optional allow download of results to Excel

  • Search Module
    -- allow search and filtering by all criteria -- record age, address/city/zip, within NN miles,
    -- allow sort by all criteria

  • Signup Now
    -- capture email address, all UserData fields, and password
    -- create Free account and login user

  • Login Module
    -- populate email if present in cookie
    -- check password and populate session information

  • Forgot Password?
    -- phone # to call for support

  • Logged In - User Only
    -- provide link to free report
    -- Buy Now - select user type + take credit card details
    -- all previous lists available since signup date - download to Excel
    -- Search Module - full data revealed for dates they have had access
    -- User Preferences Module

  • Buy Now Module
    -- select which product to buy
    -- take credit card details (UserData)
    -- send request to Authorize.net payment gateway and receive authorization code
    -- create Billing Data record, update ud_usertype, and increment ud_type_expiration

  • User Preferences Modules
    -- a bunch of check boxes so they can pick which emails they want to receive
    -- New Updates and Bonus Offers - (our advertising messages) (ud_new_offers)
    -- Notify of Monthly Lists (ud_new_monthly)
    -- Notify of New Opportunities Daily (ud_new_daily)
    -- Change Password box
    -- Change Email Address box
    -- Display User's Affiliate Link
    -- Report showing Affiliate success - # of clicks, and accounts by type and total revenue by month

  • Upload Information List - Admin Only
    -- provide ability for administrator to upload Excel spreadsheet or CSV lists that we intend to resell to clients
    -- hardcode columns so upload format is consistent
    -- input name and description of the file, we will later present to user (e.g. Name: April 2007 - XYZ County RecordType)
    -- store each record from the file in OppData table
    -- store the file for download in FileData table
    -- optionally send out email alerts to those that have subscribed

  • Manage Users - Admin Only
    -- sortable list of all users, with search box and filter
    -- allow Disable, Change Password, Create New User
    -- Change Affiliate Active state (every user can be an affiliate) and Payout Rate
    -- download all email addresses by user type or all and obeying user email preferences - so we can send email offers

  • Reports - Admin Only
    -- should have date filters and search filters
    -- show count of number of locations logged in by user -- ability to detect users that have shared their password
    -- show affiliates and number of signups by account type and total affiliate revenue
    -- total active users by type, and total revenues by user type by month

DATABASE SCHEMA

  • Session Table
    -- s_sid, ud_sid, s_unique, s_first_visit_time, s_expiration_time, s_page_count, s_referer, ud_affiliate_sid, s_remote_ip, s_remote_location, s_last_search

  • OppData table
    -- od_sid, od_date, od_record_type, od_address, od_city, od_state, od_zip, od_owner_city, od_owner_state, od_owner_zip,
    -- fields only displayed to premium users: od_geovertical, od_geohorizontal, od_address, od_former_name, od_former_age, od_former_birth, od_former_date, od_owner_name, od_owner_address, od_owner_telephone1, od_owner_telephone2, od_owner_telelphone3

  • FileData table
    -- fd_sid, fd_date, fd_file_type, fd_name, fd_description, fd_size

  • UserData table
    -- ud_sid, ud_email, ud_password, ud_user_type (admin, free, gold, silver, platinum), ud_type_expiration, ud_user_location, ud_first_visit, ud_last_visit, ud_active
    -- ud_got_free_report
    -- Credit Card Information - ud_cctype, ud_ccnumber, ud_ccexpiration, ud_ccname, ud_ccaddress, ud_cccity, ud_ccstate, ud_cczip
    -- Billable? - ud_billable
    -- Email? ud_new_offers, ud_new_monthly, ud_new_daily
    -- Affiliate data? ud_referer_match_pattern, ud_payout_rate, ud_affiliate_active

  • Billing Data table
    -- bd_sid, bd_date, bd_year, bd_month, ud_sid, bd_charge, bd_authcode, ud_affiliate_sid