I want to closely replicate the functionality of a site located at yardtour(dot)harvard(dot)edu/tour/ as a web hosting service.
A user admin (UA) could register and create a number of "tours" defined my the super admin (SA) (me). The script would allow for unlimited number of UA's. Each UA can create a maximum of X tours (as defined by the SA via a SA admin interface. All registered UA's would be view able and editable by the SA via the SA adimin area. The SA can edit each UA's info including the maximum number of tours they can have on their account.
This site example is one tour. All tours would flow almost exactly as this one does ,but with some additions/changes. All features would flow/act/operate as they do in the example, unless otherwise indicated below.
>>Note the there is a landing page that uses a cookie that tracks your progress and where you have been. if you start the tour and leave, when you come back it asks you if you want to continue the tour or start over. If you select continue, it brings you to the map page that indicates the checked icons (occurs when you pass a "detail" page. Clicking the right arrow at the top of the page leads you through "map/approach" pages which show the map with blue check.
>>Additions / Exceptions/Details
*The UA would need to be able to indicate which tours would display on the /tour/ home screen as options for the end user.
*Needs to have a live current location icon (blue standard Gmaps). should have a show/hide toggle. This should move as the person moves along the path. It is critical that a technology that provides accurate mobile location services is used.
*Needs to have route lines under the icons, that show point to point tour stops (the example app does not seem to do this). Should be able to toggle show/hide. these lines should follow roads (best route) if available. These routes should be dragable by the UA via their admin area (so they can reroute OR just draw lines in the event that the tour is not on roads (eg. like the example tour is on a campus and Google maps would not route on the sidewalks ;) )
*In the example app, icons are blank before they are checked. We would like the icons to be numbered in order of the Tour stops until at that tour stop (would turn red as it does in the example)
*UA needs to be able to add POI's along the tour. These are not "tour stops" but could be restaurants, other attractions, etc. The UA should be able to add categories and upload images for each category. Likely they would add a "POI" as they would a "Tour Stop", but would not enter the same detail. When adding they would need to be able to indicate if it was a POI or a Tour Stop. if a POI, the non tour stop related fields would be grayed out (inactivated).
*UA would need to be able to upload each element of each record. One additional elemet would be audio. If audio was uploaded for a "tour stop" the audio player should appear persistently at the bottom of the screen as long as the user is on that "tour Stop". The audio should continue to play as long as the user is on that "Tour Stop".
*Theming - All implementations will be the same but I want the UA to have the ability to choose thememing which would include:
- /tour/ page color of top bar and color of page.
- overview, map/approach, detail pages. Area behind the arrows and text. Should have a color control, and arrow color control.
- overview, map/approach pages. color of area to the right of the image behind the text.
- detail page - color of tabs,
*For each stop the UA should be able to set the zoom.
*For each stop the UA should be able to automatically get the map icon placed OR to drag and drop in the event that the map is automatically placed in the wrong spot.
*The thumbnail icon on each "Tour stop" should be automatically sized / optimized for the thumbnail when uploaded.
*SA should be able to manage the Legend text and icons (appears at the bottom of each page) AND the icons on detail pages.
*Each component of each Tour stop need to be uploaded or entered by the UA, including, Youtube video embedding (by simply adding the youtube url, not the entire embed code, the text for each detail tab, captions for the video, and images.
Skills: youtube, video