aditbiswas1 / ie-site

2 stars 2 forks source link

Events Module #6

Open aditbiswas1 opened 10 years ago

aditbiswas1 commented 10 years ago

we could make a generic module for handling management of club events such as workshops, competitions, registrations for new recruitment. here's my first idea on how to model this, we could ideally make a Domain specific language for this...

events: name: overview: organizers: ladning_page_content: text field... tinyMCE content registrations_open : tick_box

event_round: event: one to many foreign key stage: eg, round 1, round 2, need a better variable name description: (optional) collaborators: select member from the event organizers subset internal_round : boolean, no form to be generated if internal

event_round_questions: event: foreign key <- event stage: foreign key <- event_round question: format: textfield, multiple choice etc.

registration:

basic details of registration

first name:
last name :
blah blah...
event:
status: select options from event round... keep changing this value to rounds from event_round to move candidate up rounds...alternate option to open, if there are no rounds for the event

registration_answers: registration: foreign key from registration event_round_question: foreign key from event_round_questions answer:

event view page will be of following format


event.name                   link_to_registrations
event.description

event.landing_page content

event_registration_view should be

event.name

registration_basic_details form
link to next form for round_questions per round in event_rounds

event_round_questions

event.name event_round.stage

event_round_registration_anwers form link to next form for round_questions per round in event_rounds or end of event


need to think of admin side for managing this, we could also alternatively make a realtime collaboration application for managing this, using angularjs n websockets or any other ideas.

aditbiswas1 commented 10 years ago

might be a weird module to write immediately, we might wanna just make a seperate thing for IE recruitments and deprecate that later after recruitments while we develop this. also forgot to add.. we can write some django signals, link it up with parts of this to send automated emails, whatsapp messages from the app whenever the ie-members update who got selected for next rounds or to inform everyone that a workshop is taking place etc.

rohitvarkey commented 10 years ago

This looks good. A question number field is also required in the event_round_question to know the order the questions need to be displayed. And how can you send automated whatsapp messages? That'll be super cool.

aditbiswas1 commented 10 years ago

oh ya, forgot that questions have to be ordered. for whatsapp i know there is a library calle yowsup which lets you build your own apps to send messages via whatsapp, we'll essentially just make the django server a whatsapp client.