Code Monkey home page Code Monkey logo

kicker's People

Contributors

algorithmicentropy avatar anel950 avatar annerei avatar davidrisch avatar davids1999 avatar doenator310 avatar dominikseus avatar dose-dev avatar f-lair avatar froestelchen avatar jola00 avatar julian-fuchs avatar lixfel avatar lukasr456 avatar mariusalexander avatar martina-scheffler avatar programonaut avatar varg-sec avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

dendevel

kicker's Issues

GroupMenu Issues

  • Group menu lines are not centered
  • Too long group names won't be shortened
  • Group close button is misplaced

Fix new user registration

Can not register new users, due to missing id in the phone number input html.
Js script also never checks confirm password input.

Long titles on small screens

The title of a page (in the navbar) often gets wrapped when the window is not wide enough. One example is page/group_creation. This needs to be handled differently: smaller font, truncating with a ellipsis, maybe both?

Add features

Please add the following features to html_creator.createHtml():

  • A paramter to include a list of js files ['example', ' input_validator' ]
  • A parameter to include an arbitary string in the header

Suggestion: Function signature createHtml(html, title, options) where options is a dict with the optinal parameters: js, extra_header

Add XSS prevention

  • Add function to sanitize html (server side). Consider using https://www.npmjs.com/package/sanitize-html
  • Use that function in queryand queryAsync (src/database). It should escape all strings returned by those function (create a helper function for that). This should be enabled by default, but it must be possible to disable it via a parameter.

Navbar on page/imprint

Since #76 the navbar requires a logged in user. page/imprint needs to work even without a user. Currently the navbar is disabled for that page.

  • If there is a user, the navbar should work normally
  • Without a user, there should be a cut down version of the navbar: A title and a link to the login page

Typo in DB/Match

The column 'round_id' in the Match table is wrongly named 'tound_id'.

Add apiPost function

Please add an apiPost(data) -> response function replacing this code from js/register_credentials.js

const rawResponse = await fetch('/api', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({ // this is the parameter vvv
      action: 'validateInput',
      name: document.getElementById('nameInput').value,
      email: document.getElementById('mailInput').value,
      password: document.getElementById('passwordInput').value
    })
  })

  const content = await rawResponse.json() // return this value

That function should be in a new js file in /js. It should be included in the standard header defined in html_creator.

Real groups in the right menu

  • Fill the list in the right menu group_select with the real groups from the database
  • Clicking should set a cookie, see src/account_util.setGroup() and reload the page

Swiss matchmaking logic

src/tournament.js should also implement functionality to add rounds to tournaments using the swiss matchmaking system

Functional page/group_edit

The submits button on the page group_edit should result in an two different api calls. These calls should insert into the database or delete from it.

Real gui page/account

page/account is currently using plain html. It should look similar to other pages.

Small GUI fixes

Text of buttons are shifted.
The top of the first division is on some pages not visible

fix spelling (registration page)

Still a spelling error after clicking on ok without entering anything:
Ungültige Email Addresse -> Ungültige E-Mail-Adresse

And in some of the other error messages:
Email -> E-Mail
Password -> Passwort

Add Logout

After logging in successfully a logout button should be included in the sidebar from Task 1.7

Tournament participants

  • in api/create_tournamentthe participants should be saved to the database
  • in src/tournament only the participants should be placed in generated matches

Problematic playernumbers in tournament creation

src/tournament implements functionality to create all matches for 2v2 and 1v1 deathmatch tournaments.
The code will not return correct results if the playernumber validates following constraints:

  • number of players % 4 == 0 (2v2 match mode)

  • number of players % 2 == 0 (1v1 match mode)

These and other edge cases (0 players, ...) need proper error handling (client and server)

Fix nav-bar

Burger menu does not close.
Burger menu and group selection menu have different styles.

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.