Music site: Theme required

1 BACKGROUND

1.1 The Company

Elastic Artists Agency (EAA) is a booking agency for bands and DJs (Artists). EAA represents over 100 Artists for which we negotiate performance fees with Promoters (who want to hire an Artist for an event), issue contracts, take a deposit from the Promoter, trouble-shoot etc.

1.2 Our internal Agency Management System (AMS)

Our internal processes are supported by a PHP and PostgreS-based application that allows us to log enquiries, book dates for Artists, issue contract, chase payments etc. This internal system is called AMS. The AMS holds data such as Artist names and Performance dates which the website must retrieve and display.

1.3 The Website

We now need a public website that shows a list of all our Artists, displays additional info for each Artist, shows which concerts Artists have coming up, streams selected songs of our Artists via a player, allows users to subscribe to a newsletter and provides general info on EAA (company background, team, recruitment etc). The site will have 1 pretty dynamic homepage displaying data from the AMS, ) 9 static pages (About Us, Team, Service, Jobs, Log-in Info, 4 Promoter Registration screens) and 1 Artist info page per Artist.

2 SCOPE

2.1 Create templates

The design will be delivered as Photoshop files. It is part of this assignment to create the templates for Drupal from this design. The site structure below shows the number of different templates required: 1 for the homepage, 1 for all static pages and 1 for the Artist information page.

2.2 Select suitable Drupal modules & adapt back-end

Select modules suitable from a performance/stability/support perspective and tweak the backend so it is friendly to use. The modules must support the following functionality:

2.2.1 Homepage

The homepage requires the following functionality:

1) Roster Box:
• View of all Artists in a list with multiple columns. The column width is dictated by the longest Artist name.
• The list must be scrollable to allow to grow the number of Artists EAA represents.
• The names of the Artists must be retrieved from the AMS.
2) Feature Box: The Feature box shows (a) company news if no Artist is selected and (b) Artist information if an Artist is selected.
(a) Company news:
• Can be text, links and images.
• It would be preferred if this could be handled relatively flexible.
• Must be easily editable through editorial interface.
(b) Artist information:
• The following information will be displayed in a structured way (i.e. following a template):
o name of Artist
o small image (must be able to be uploaded in a larger format and will automatically resized for the Feature Box)
o short paragraph describing the Artist
o various links (most links will be external, one link will be internal linking to a page with more detailed info for the Artist)
o name of the Agent representing the Artist (the name of the Agent is also a mailto-link)
• Some of this info must be retrieved from the AMS (agent name, agent’s email address), the rest will be managed through an editorial interface and db in Drupal (text, image, links).
• The contents of the Feature Box would ideally be uploaded to the browser in the background as soon as the Roster Box and the contents for the Feature Box and the Shows Box are loaded. This will give the user a more responsive experience browsing through the different Artists.
3) Shows Box:
• The Shows box shows (a) all upcoming shows across all Artists in the next n weeks (n can be configured) if no Artist is selected and (b) the upcoming shows for the Artist if an Artist is selected in the Roster box.
• The information must be pulled/pushed from the AMS.
• The Shows box potentially has automated scrolling.
4) Audio Streamer:
• Allows users to listen to audio streams of latest Elastic’s Artists (like the MySpace streamer). The user can select individual tracks.
• It must be possible for the administrator to easily upload and title audio tracks for streaming.
5) Newsletter: Ability to subscribe to email newsletter. The subscriber list is hosted by ConstantContact (who will provide a script which must be integrated into the page).
6) Artist/Promoter Logon: Ability to log into AMS for registered Promoters/Artists (only promoter logon has been developed so far, artist logon will follow soon).
7) Site Menu: Linking to the static pages of the site (About Us, Team, Service, Jobs, Log-in Info).

2.2.2 The Artist Page

When an Artist is selected from the roster list on the homepage, the feature box is populated with content relating to this Artist. Amongst that content is a link “more info” which leads the user to the that Artist Page. This means each Artist has it’s own Artist Page. The Artist Page has the following functionality:

• display Artist image (the system will resize the uploaded image automatically to the correct size)
• display paragraph of text
• show externally hosted videos (from youtube etc) with ability to add title name
• stream audio streams Ability to listen to streamed audio (with ability to add album cover image, song, album names, release year)
• display links with ability to give a name to the link
• provide download links for various files: Artist biographies, Artwork (= graphics), Photos

The design for this page is not yet completed, but a good example of how it will be is http://www.windishagency.com/artists/120_days.

The editorial interface must allow the administrator to:
• select for which Artists on the roster the Artist Page is available to the user through the “more info” link (we want to have the flexibility of NOT providing this page for every Artist)
• edit the contents of each individual Artist Page

2.2.3 Static Pages

There is a total of 9 static pages all of which follow the same template. The static pages About Us, Team, Service, Jobs and Log-in Info contain only text and images. Images and copy must be easily editable by the administrator. 3 of the 4 static pages for the Promoter Registration are forms, 1 is a “thank you” screen.

2.3 Integration with AMS

Part of the work is help to define the best way for exchanging data between the AMS and the Drupal-based web system. It will be sufficient to retrieve data on a daily basis (i.e. a real-time retrieval of data is not required). This could be achieved by either receiving or actively retrieving a daily file from AMS. The final solution to this question will be derived in a 3-way communication between the Drupal developer, the AMS developers and Elastic Artists.

Part of this assignment will then be to implement how the Drupal-based web system will use the file handed-over from AMS. The Drupal side implementation of any data retrieval from the AMS is part of the work. Should as part of the project be decided that the best approach is for the AMS to daily send/upload a file to the Drupal CMS, it is part of the work to cooperate with the AMS development team to develop and test the handover of data.

2.4 Testing & bug fixing

It is probably best if Elastic Artists has constant access to an environment made available by the Drupal developer. This will allow us to adopt an interactive feedback process throughout the development.

2.5 Implementation on 2 virtual servers (production and staging)

Part of the assignment will be to install the Drupal-based web system on 2 virtual servers (both running on the same physical machine). The servers will be set up by Elastic Artists hosting specialist.

2.6 Bug fixes during UAT

Once the development has been completed and installed on the 2 environments, Elastic Artist staff will perform UAT. Any bugs will be logged in the FlySpray bug tracker. Bugs will then have to be fixed first in the staging environment and then be rolled into production.

2.7 Documentation of CMS

The Drupal-based web system must be well documented including installation, integration with AMS etc.

3 REQUIREMENTS

The developer must have experience in all areas. It is acceptable to propose that the work be undertaken jointly by (1) a template specialist and (2) Drpal back-end specialist as these are admittedly very different skills.

This development seems to be very much a THEME rather than a SITE BUILT (but I don’t understand enough about this). However any new developments of this project can be posted back to the Drupal project.

4 QUOTE

Please submit your quote.