ykdojo / editdojo

(I'm no longer working on this - currently working on https://github.com/ykdojo/defaang)

Home Page:https://www.csdojo.io/edit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Create a sign up form where the new user selects which language they are learning

ykdojo opened this issue · comments

commented

We're going to start with just Japanese and English.

commented

I'm going to work on this next.

commented

People should be able to select one of "both Japanese and English," "only Japanese", or "only English".

commented

UI text for this:

Select your languages

I'm learning...

  • Japanese or English, or both

I'm fluent in...

  • Japanese or English, or both (make this UI general enough so we can add more languages later)

NOTE: People need to select at least one language in each category.
Also add something like the following:

NOTE: It's currently only available for Japanese and English. If you want to practice writing in other languages, please sign up for our waiting list here: https://www.csdojo.io/wait

commented

Working on this now, as well as #41

commented

Made some bare UI at 1abbd84
image

commented

TODO Next: When someone selects English or Japanese, a plus sign should appear for people to select another language. (but not the same one twice)

commented

Also, TODO: We should fix the style a bit so it looks better.

commented

Just found this. I'm thinking of using it: https://developer.snapappointments.com/bootstrap-select/

commented

Experimented with it a little bit, and it looks really good. However, it looks like bootstrap-select and material-kit try to fight with each other when I try to use them at the same time. Will need to figure out a way to make them work at the same time.

commented

Okay, the problem is this:

In order for us to use bootstrap-select, we need to use the plain bootstrap CSS and JS files.

So, there's no easy way to use bootstrap-select and material-kit at the same time.

I still really like how material-kit looks, so I think I'll prioritize that.

Instead of using bootstrap-select, I'll add a bit of code so we can do multi-selecting.. At least that's my plan right now. Or maybe we can look for another multi-select library.

commented

People can now select multiple languages. (d6cd571)

image

Now we will have to:
A) Fix the style so it looks nicer
B) Write some backend code so people can actually sign up

commented

Oops. Actually, this code contained a bug. When you select Japanese and immediately change it to English, it keeps creating more and more select elements. Will need to fix it... maybe I'll take care of this tomorrow.

commented

Fixed it (1e47642). This works well now. We still need to fix the styles though-- will make this a new issue.

image

commented

Done. The new issue for fixing the looks of this is #45.

commented

Actually, this is not quite done yet. Still need to make backend and database changes.

commented

Just started working on this.

commented

Looks like we'll need to use fixtures to load initial language data.
https://docs.djangoproject.com/en/2.1/howto/initial-data/

commented

Just submitted these commits:

Will probably work on it some more tomorrow.

commented

TODO next: create a relationship between users and languages (each user can be fluent in one or more languages, as well as learning one or more languages)

commented

Next: Connect the UI to the database so the user is able to select which languages they are learning / fluent in

commented

(NOTE: you can get learning_languages of a user with user.learning_languages, for example.)

commented

Done for now: 6ea8ef2

Still need to fix the redirect that happens when the POST request is successful. I'll create a new issue for it.