Using [url removed, login to view] as an example, I want to build a site that is used to manage resources and people, specifically in the performing arts industry.
I'd like to use jQuery and plugins to help with code size and site maintainability. This service is currently called TroupeTime.
There are 3 levels of users, each of whom have different access levels to varying calendars:
- Venue/Subscriber: A venue pays a monthly fee to use this service. This high-level Subscriber gets a login to TroupeTime along with a subdomain (ie [url removed, login to view]) that contains all the calendars and login portal for other user types (see below). The Subscriber maintains a Master Calendar for each space in their venue (stages, rehearsal rooms, etc) and what shows will go on the main stage. Each event on this calendar will be a Performance or a Rehearsal. Only Subscribers can add Performance items to the Master Calendar. This Master Calendar will have 2 views:
Public - This can be optionally embedded on the Venue's own web site so that patrons visiting the site can see upcoming show dates and times, but not see rehearsal information.
Private - The Subscriber and all Admins can see what Performances and Rehearsals are going on with this Calendar.
- Directors/Admins: The Subscriber sets up a Group for each show in the season and assigns a director to be the Admin of that group. An Admin can add other Admins to their group (Assistant Director, Musical Director, etc). The director of a show can then go to his group's page ([url removed, login to view]) and perform 3 main tasks:
Add in all the cast and crew contact info (email addresses and names are mandatory). Each entry here will be called a Person.
List each Role (Character) in the show and assign Person(s) to each Role. A Rolecan consist of several Persons (ie if a part in the play has an understudy or is doubled, then several Persons will be assigned to one Role. Or, if there is a group of actors that comprise the "Chorus", then all those Persons will be associated with the "Chorus" Role)
Create a Rehearsal Calendar. The Admin has access to edit the Master calendar only to Add Rehearsals (not Performances) or Delete/Modify his Rehearsals he previously added. If he needs a rehearsal space for a given day, he can claim whatever's available on the master calendar and set in the time he needs it.
Along with rehearsal dates, the Admins can set rehearsal goals (i.e. "Run Act 1 Scenes 2-4", or "Songs 1, 2, and 6"). Each Scene and Song will have Characters that can be assigned to it. In this way, Cast Calendars (below) are automatically generated.
The Admin for a given show can edit the casting of the performances of his show (but can't add/delete performance events from the master calendar or change show times). The Admin will set Call Times (a time earlier than when the show starts so actors can get into costume or crew can set up lighting and so sound checks) for each Role and also set which Person will be playing the given Roles in the cases of understudies/doubles.
- Cast and Crew will be referred to as Cast. Each Cast member is a Person from the list the Admin/Director made, and they will be given an account on a per-show basis (their name and email may be different for another show even with the same venue if they sometimes use a pseudonym or different email addresses). Everyone in the Cast can go to the same Venue/Show URL ([url removed, login to view]) and log in using their email address (a default password will be sent to them that they can then change. There are no restrictions on passwords (we care about ease more than privacy for this type of account). Upon logging in, the user can update his name/email/phone for that show and also see a personalized calendar for their rehearsal and performance call times. This calendar will be generated based on what scenes and songs their characters are in.
10 freelancer đang chào giá trung bình $1115 cho công việc này
Hello, allow me to help you. I have worked on many projects with PHP + MYSQL,base knowledge of another Frameworks. So I can do this job for you. Please contact with me and we will work together. Thanks.