View Code? Open in Web Editor
NEW
TewMa is a web application for finding people who want to prepare for exams but don’t want to read alone.
Home Page: https://tewma-meeting.herokuapp.com/
Python 73.53%
CSS 2.91%
HTML 23.56%
tewma-project's Introduction
📈 My GitHub Stats
tewma-project's People
Watchers
tewma-project's Issues
For represent the UserMeeting object.
create .env which put some setting in there.
optional task.
Create a participant page to show participants in a specific meeting.
Add the button in detail of the meeting to navigate to a participant page.
User can add file on the creation page.
create a user creative page.
navigate that page.
Add some test for register
Test when authenticated user tries to access a register page (response code and messages).
Create meeting form test
Test when an unauthenticated user tries to access a create meeting page (response code).
Test when an authenticated user tries to access a create meeting page (response code).
Test when the user forgets to input on each field (response code).
Test when the user input on each field completely in the form (response code and messages).
create login and logout page
when not logged in show the registration and login button on the navigation bar
when logged in show the profile and logout button instead
create a profile page
Registration Test
Can users view the registration page?
Testing when user enter the invalid input on each field.
Testing when the user registers with a weak password.
Testing when users register with an existing username.
Login Test
Can users view the login page?
Testing when users not input the username or password.
Testing when the user inputs the wrong password.
Testing when the user tries to login with a not existing account.
Logout test
Can the authenticated user view the logout page?
Can the not authenticated user view the logout page?
Testing when logout, the user must not authenticated.
View Test
Testing the message when the user is registered successful or not successful.
Testing when the user tries to access the profile.
-Create a Development Plan for every iteration.
Add the decorators @login_required
for create_meet()
in users/views.py
def date_meeting (self ):
return self .start_time .strftime ('%d %B %Y' )
< td > {{ meet.date_meeting }}</ td >
I found the bug while I work on #56 . On the meeting detail page, it showed the date does not match in Asia/Bangkok timezone
So I fixed that bug by using date format instead in the user-creation branch
< td > {{ meet.start_time|date:"D d M Y" }}</ td >
Do we still have to keep date_meeting()
?
On a participants page. The user can see a profile picture and user name of each user that join in that meeting.
Picture and username both of them have a link to a specific profile.
The user has a button to leave the appointment on the detail page.
Add profile class in users/models.py
Create one to one relationship with the existing user model by using OneToOneField
Create an image field in the profile
Serve user-uploaded media files from MEDIA_ROOT
for more detail
Update profile.html
to show the image
Divide the tests into separate file
Create tests for appointment/views.py
IndexViewTest
If the user is not authenticated, show Welcome, AnonymousUser
If the argument in get_date() is not date object (str) return a date object with a specific date
MeetingListTest
If no meeting should see noting
If has end meeting but access in wrong URL should see noting.
If has future meeting but access in the wrong URL should see nothing.
If access to the correct URL and has a meeting on that day should see the detail.
MeetingDetailView
Even after the meeting's closing days, the user still sees that meeting.
Users can see future meetings.
JoinningTest
Test when the user joining for the first time.
Test when the user already join in the meeting.
LeavingTest
Test when test user press the leaving button but not join before.
JoinAndLeaveTest
If you join and leave and then join again. It has to show the success message.
If you join and leave and then leave again. It has to show the error message.
MeetingParticipantTest
If has one joining user in a specific meeting. it should show that the user in that meeting
Create Github Repository.
Add other team members.
Add Django initial file.
Add TravisCI and Codecov to project.
add a searching bar on the homepage to search the subject.
def get_date (req_day ):
"""Return specific date object if parameter is a date object, return today otherwise."""
if req_day :
year , month = (int (x ) for x in req_day .split ('-' ))
return date (year , month , day = 1 )
return datetime .today ()
the docstring of this method should be resolved because req_day
is True when req_day
is not the date object
Improve and style on every page.
Add Django signal to auto-create user profile for more detail
use django.db.models.signals.post_save
to send the signal when user model call save()
user can update their profile
if the user upload the large picture, resize it
if the user changes the picture, delete the old picture with django_cleanup
Divide the models into separate file
Create a test for the search bar.
When the user has been created. The user must have a profile
Default image must be anonymous.png
Unauthenticated user can't see the profile page
Authenticated user can see their profile page
-Add a button that can change month
Show list of meeting in that day.
can navigate to each meeting detail.
plan on the wiki page.
create tasks in Github projects
I think our tests in appointment will increase in the future. It would be nice if we separate the test files.
start the user app
work with user model for registration
redirect to the home page (waiting for that) and show the message when sign up has successful
create base.html in users app (maybe not use)
use django-crispy-forms to overhaul the style in the registration page.
the mockup is added to the project proposal.
Show list of
Subject
Location
Time
Link for more detail
Create an index page.
Navigate page's url.
Create a method that returns the meeting list in a day in Meeting list.
Add highlight keyword in the result page
Show how many results in the result page
optional: suggestion in search bar
Test representation of the Meeting object
Can get a URL from the Meeting object?
Can get the meeting date?
Iteration 4 and Iteration 5.
Divide the views into separate file
Use bootstrap to create navigation bar in base.html
Add href in navbar-brand to home page
Add Registration button in the navigation bar for link to the registration page
Test the represent string of this model.
Create sidebar
Show profile picture.
more optional: will be add
Overriding LoginView and add SuccessMessageMixin to show a message when login is successful.
Change URL to the new Overriding LoginView
Add some function to disappear and transition the message when press the x button.
make a new model to handle users in one meeting.