Coder Social home page Coder Social logo

fsxfreak / club-suite Goto Github PK

View Code? Open in Web Editor NEW
13.0 13.0 0.0 18.73 MB

Club Suite is a platform where you can create a club, manage your club's finances, keep track of members, and plan events.

License: MIT License

Python 53.42% HTML 25.18% CSS 20.50% JavaScript 0.90%
club club-management django organization python student

club-suite's People

Contributors

aftermathk avatar arangama avatar fsxfreak avatar jcjacky avatar jiaxiwuaccount avatar leotheg avatar rbouhadd avatar shijiefan avatar stonecoldnicole avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

club-suite's Issues

[FRONTEND] Club view page

Take Kevin's club_view templates (@kevinzavier can you comment which ones they were?) and add and modify as necessary to fit the wireframe. #40 necessarily needs a button to join teh club.

[FRONTEND] club resignation

After #66 is completed, display as a table the clubs that the user is part of through the variable {{ user.clubs }}

optional: make sure the page shows a confirmation dialog to resign from a club, and then post to {% url suite:edit_profile' %} with input name='resign' value='club_name_goes_here'`

[GENERAL] urls.py additions

Should create view_events.py to the url /club/[regex]/event,
and view_event_create.py to correspond to the url '/club/[regex]/event/create'.

For the [regex] stuff, check out the example of
url(r'^club/(?P<clubid>[\w-]+)/$', views.ClubView.as_view(), name='club_view'),
where the ?P<clubid> stuff is the regex. Ask @kevinzavier for help with that.

[DATABASE] more queries

  • helper function to find upcoming events for a club ordered by start time, most recent to oldest.

  • given a user, find all events that the user has attended, ordered by start time, most recent to oldest.

  • given a user and a club, find all events that the user has attended, ordered by start time, most recent to oldest.

  • given a user, return all club objects that the user is a member of.

[BACKEND] view_account.py

Render account.html, accomodate GET and POST request from the /account url. Make sure it is defined correctly in urls.py.

[BACKEND] Officer/general dashboard permissions

After #10 is implemented, here are some notes I sent to David ---

one thing that would be good to look into on the dashborad would be taking permissions defined by the PermissionsMixin and differentiating the dashboard according to those

#33

that would be after jiaxi and shijie implement those, but good to look into as i have no idea how to use the permissions in the view lol

[TESTING] Possible Enchancements

RegistrationForms:

  • Add First Name and Last Name fields [ADDED]
  • Add error messages for "Password less than 8 characters" and "Password is too common" [ADDED]

(Will add more as we find them)

qry_searchclubs:

  • [BUG] only searches clubs from club description, not name [SOLVED]

[Added: 2/23/17]
qry_searchclubs:

  • [BUG] private clubs are also found

[BACKEND] Dashboard

Link /dashboardin urls py to view_dashboard.py, which should render dashboard.html with the Account and User context.

[BACKEND] Club joining capability

After #28 is finished, users should be able to search for clubs, and view them (@kevinzavier) and there should be a button to request to join the club, as per [OA0]. Perhaps currently we want to automatically approve a user request to join.

[DATABASE] Account Model

Account model - create new Account model in mdl_user.py that has a one-to-one relationship with class User(). User should handle administrative stuff (email, password, name) and Account should have personal details.

[BACKEND] officer managing clubs

  • on the roster, if a user is an officer for that club, should have additional buttons on each user for promotion, demotion, and removal from club.
  • on the club view page, officers should have access to event creation. waiting on #46.

perhaps also show to officers members who have pending status, so they can remove? need to revise #40 to set members to "pending" status.

[DATABASE] Create common queries

Backend needs queries for the following:

  • Roster (how to list all users for a club?)
  • Club search (given club name, which clubs do we filter out and return?)

[BACKEND] database integrity/unique IDs

database integrity. currently looking through most of the models, there is are no designated fields with primary_key=True and/or unique=True. For example, in the Club model, a logical constraint would be that the club name should be unique=True. It is also missing a club_id field, which should have primary_key=True, so other model queries can refer to them uniquely.

check through the other models to see if there should be any other similar fields.

[FRONTEND] Dashboard

dashboard.html

context accessible from {{ user.[some field] }}, when implemented from the backend, which should refer to the Account model.

Refer to Ramsey's wireframe.

[FRONTEND] about.html

about page ready to go, probably just want a nice looking blurb with photos of the whole team on the page. Grab some pics from @AftermathK, and @kevinzavier should know how to manage the static image files here.

[BACKEND] member managing clubs

create a new view and template for managing clubs, to be linked to from the dashboard.

on this view, list all clubs that a member is part of.

[DATABASE] improve mdl_club.py

#20 applies to club_description
club_type should be enumerated? Currently the passerby can speciffy whatever club type they want, don't we want it to be PUBLIC/PRIVATE?

[FRONTEND] account.html

Should contain a form that POST to {% url account %}, editing all the details of the Account model.

[DATABASE] rudimentary notification form.

Officers need to be able to be notified whenever a member requests to join their club.

Therefore there should be some kind of database table that stores messages for officers of a club so perhaps they can approve users joining their club, or approve promotions.

Testing

The new tests have import errors. How do I fix this?

[FRONTEND] club_roster.html

roster requires prettifying.

access to the club through the club object, member level in role object, and user/account information in role.uid object.

[TESTING] test queries

For each of the queries in #24 that @Jcjacky and @ShijieFan come up with, test if they return expected values. For example, if Users are associated with a Club, querying for all uesrs in a club should return a set of all users in that club. That needs to be tested.

[FRONTEND] club_join.html

Prettify the club_join.html page, and perhaps leave some comments down here on what fields should be added to the page, so perhaps an officer can see whatever the prospective member has written down. Low priority.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.