Commit graph

62 commits

Author SHA1 Message Date
Miodec
e2c8733ed3 added wpm ranges to burst heatmap legend
closes #3338
2022-07-15 14:27:12 +02:00
Miodec
45ffa96e67 changed initial class 2022-07-15 14:05:15 +02:00
Aaron
c1c7b97127
Update Links to Use New Org Name (#3327)
* Renamed command line setting timer-progress bar

* Use new org name
2022-07-09 14:14:42 +02:00
Miodec
c62673837f reordered settings 2022-07-06 13:01:40 +02:00
YummyOreo
e794bbd68d
Adds a reset account button to the settings page (#3206) YummyOreo
* adds reset button

* moves it up above the delete button

* i am blind

* i cant move stuff

* adds reset for the profile

* Adds reseting for ape keys, and presets, also adds more resets in the user settings

* Delets all ape keys not just one

* Prevents conflicts for delete endpoints

* changes from reset to deleteAll in ape keys

* Refactors the code to use Promise.all

* adds reloading

* unit tests ape key deletion

* fixes some bugs

* Fixes type o

* More typeo fixes

* Returns nothing for reset user

* Simplifies code

* changes from reset to deleteAll for all but users

* Checks db not the memory

* fixes typo

* fixes the tests

* fixes

* fixes bugs and refactors some code

* adds requireFreshToken to the authentication

* migrates all reseting to the user endpoint

* removes the delete all for ape unit test

* to lazy to make commit message

* parallelize the calls to the db (I think)

* also resetting config

* also resetting discordid and avatar

* using unset

* updated wording

* level 1 message

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-07-06 12:59:40 +02:00
devkennyy
27a7358a11
🚧Improve tab usability (#3296) devkennyy
* 🚸Call `screenshot` after `Enter` is pressed

`screenshot` is only called on click which does not support tab usage.

* 🐛 Make `Contact` and `Donate` fields tabbable

* ️ Open leaderboard popup on `Enter` keypress

* ️ Open support popup on `Enter` keypress

* ️ Open contact popup on `Enter` keypress

* ✏️ Rename `Donate` field to `Support`

* ️ Hide `contact` and `support` popups on `Escape`
2022-07-06 12:32:21 +02:00
Miodec
e60b2ae093 updated lazy mode description 2022-06-29 11:33:14 +02:00
Miodec
5bbb6a62a4 improved quick restart esc
pressing tab now opens the command line
you can still insert tab as character (shift tab to open the commandline if text has tab)
closes #3233
2022-06-28 17:57:43 +02:00
Miodec
c4bd171f1a replaced manual background filters save with automatic
closes #3253
2022-06-28 13:02:44 +02:00
Miodec
05c03936fe clicking mail on the about page opens contact popup 2022-06-27 15:12:15 +02:00
Miodec
1855578925 updated more links 2022-06-27 15:09:27 +02:00
Miodec
47bae76e1c updated hrefs for consistency 2022-06-27 15:07:46 +02:00
Çağatay Yiğit Şahin
a744a03073
fix the links in the footer for profile pages (#3249) 2022-06-27 15:06:24 +02:00
Evan
104786363f
use camelCase instead of dash separation (#3239) Ferotiq 2022-06-27 11:57:35 +02:00
smunky
8a6aecb127
rework captcha (#3224) devkennyy rizwanmustafa miodec
* rework captcha

* resolve conversations

* load captcha when needed

* Fix errors

* Create captchacontroller

* Fix errors

* using captcha controller in quote submit

* removed prettier ignore

* updated report quote popup

Co-authored-by: Rizwan Mustafa <rizwanmustafa0000@gmail.com>
Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-25 21:06:10 +02:00
Miodec
63bf85ac1c fixed first tab on results page focusing sign in instead of the restart button 2022-06-25 16:39:16 +02:00
Miodec
31cfeef2a9 removed leaderboards route for now 2022-06-25 12:31:31 +02:00
Jack
6499cedc28
Reworked route controller (#3220) miodec
* rewrote route controller

* showing loading by default

* links which are not external need data line attribute

* need to rewrite this

* page controller takes a page as parameter
removed page type

* default export

* going through the route controller instead of changing page directly

* resolving all code paths

* using navigate

* added 404, leaderboards route

* changed leaderboards button to a link

* removed click handler

* added page about route

* removed default export,
added settings page route

* removing pointer events from everything inside links

* navigating to account when on login page

* fixed console logs, using async

* added login and account pages

* moved code to their own functions

* allowing async functions

* defaulting content visible

* async

* fixed 404 not navigating correctly

* setting public path to root

* fixed paths

* using uid passed in through url params

* added 404 page, profile routes

* removed comment

* moved discord link flow to url handler

* allowing html

* not resetting state

* removed function

* handling logo click

* removed comments

* reomoved comments

* removed comments

* removed comments

* using new router

* basic 404 page

* buttons whicha are links have no underline

* correctly handling the take me back button

* updated button

* removed comments

* fixed account page profile link button

* updated 404

* removed comments

* removed comments

* removed comments
2022-06-24 22:12:52 +02:00
Jack
66074c8314
Inventory badge selection (#3210) bruception miodec
* Fixed badges not showing on all time leaderboards

* updated types to support inventory and single badge id

* Add badge selection

* Fix bug

* Remove unnecessary prefill

* using new inventory system

* added no balloon option

* updated text color

* not showing balloon

* updated styling for showing badges selection

* Add badge selection

Co-authored-by: Bruception <bberr022@fiu.edu>
2022-06-23 18:00:53 +02:00
Jack
d26d7d0555
Converted badges to inventory (#3209)
* added inventory type

* new badges

* fixed badges not showing on all time leaderboards

* sending the selected badge id to daily lb

* returning inventory in profiles

* updated types to support inventory and single badge id

* fixed all badges not showing on profile page

* removed await

* smol refactor
2022-06-23 15:47:15 +02:00
Miodec
d8a246c8f0 showing all badges on profile 2022-06-23 00:33:12 +02:00
Miodec
de37ca7cbe added note about avatars to the edit profile popup 2022-06-22 15:12:50 +02:00
smunky
3e614d3984
replaced edit with save (#3191) 2022-06-21 19:25:28 -04:00
Bruce Berrios
db9dcafc25
Add User Profiles (#3174)
* profile

* rounded table corners

* rounded leaderboards corners

* wider page by default

* v3

* font changes

* new pbtables

* blank by default

* showing pb popup

* removed some quotes

* rounding displayed acc

* removed created date (will be shown in profile)

* added profile module that fills the profile element

* updating font size in the middle of the swap to make the change not noticeable

* lowered max font size

* showing if user is banned,
not displaying most details if user is banned

* pbs not selectable

* renamed global stats to time typing

* completed previous commit

* changed function parameters

* only hiding when social is missing

* smaller badge

* aligning quick results
spanning time if wide

* larger badge

* fixed function parameters

* moved to root

* media queries

* Add user profile API (#3123) bruception

* Add flattenObjectDeep

* Add user profile API

* Bump coverage

* Add user profile configuration and rate limits

* Rename profile -> profileDetails

* Simplify

* Filter personal bests

* Handle banned users

* Add banned user test

* new profile layout system
"none" layout finished

* better "none" layout

* "socials" layout

* larger gap

* bioandkey layout done

* "both" layout finished

* final touches

* Add profile editing (#3135)

* Add profile editing

* lowered font size
increased right padding

* updated configuration schema

* moved discord integration to users object in configuration

* added warning comment

* rendering new lines

* edit popup styling

* Sanitize ZAlgo text

* Use trim

* Replace more than 2 spaces with two spaces

* Trim first

* Add profanity detection

* Ass

* Removed some profanities

* Update profanity detection

Co-authored-by: Miodec <bartnikjack@gmail.com>

* Add profile routing (#3143) bruception miodec

* Add profile routing

* removed check (also fixes circular deps)

* change page in special cases

* Hydrate profiles

* Link leaderboards to profiles

* Add failed to load div

* Dont refresh page

* always calling middle callback

* moved profile css into its own file

* fixed one media query

* added preloader, changed default layout

* added reset function
changed function name
updating profile before the page is shown, not after

* resetting after the page is hidden and before its updated

* Fix logic to not delete user if DB goes down (#3171)

* Dont route to account if uid equals current user uid

* temporairly allowing quicktab

* added copy link button

* only increasing padding on the account page

* set max height

* handling copy link button

* only showing avatar if it exists

* 1000 instead of 100

* removing placeholder if image request was successful

Co-authored-by: Miodec <bartnikjack@gmail.com>

* Fix quote length field

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-21 12:01:55 +02:00
kenny
bb31d75c4b
removed swapEscAndTab, replaced quickTab with quickRestart (#3139) devkennyy
* Add leaderboard language selection (#3124) bruception

* Adds leaderboard language selection

* Update mesage

* fixed disabled select2 styling

* changed button positioning

* fixed media queries

* Add languages

Co-authored-by: Miodec <bartnikjack@gmail.com>

* remove references of swapEscToTab

* Custom Filters [FrontEnd] (#3106) nocommentcode

* Add Create and Delete functions for Filter Presets to `Users` ape endpoint
- deleteFilterPreset
- addFilterPreset

* Added name and _id fields to the `ResultFilter` interface in the front end

This matches the `ResultFilter` interface in the backend
Added the new fields for the default filter
Added checks in result-filter.ts to not update the ui based on these fields

* Added new-filter-preset-popup

This popup is displayed when creating a new filter preset
It allows the user to select a name.

* Added Filter Preset Buttons in account page html

- Added the Filter Preset button
- Added the filter preset region
- Added the new and delete buttons

* Added Filter Presets to DB Snapshot

* Implemented Custom Fileter Creation, Selection and Deletion flow

- Users can now create a custom filter based on the current settings
- Users will be prompted to select a name for the filter
- User can click on any custom filter and the current filter will be updated
- User can delete a custom filter while it is selected

* Implemented Filter Preset Creation, Selection and Deletion flow

- Users can now create a filter preset based on the current settings
- Users will be prompted to select a name for the filter
- User can click on any filter preset and the current filter will be updated
- User can delete a filter preset while it is selected

* adjusted styling

* removed margin

* removed icon

* added media query

* popup wording

* automatically replacing _ when displaying and creating preset

* using loader and notifications

* fixed bork

* fixed sometimes not being able to delete preset

* make preset popup look like tags popup

Co-authored-by: Miodec <bartnikjack@gmail.com>

* added pace caret: last closes #3113

* Add rate limits to forgot password (#3129) mehdidev

* Added New Quotes

* Add More Quotes

* Add rate limit to forgot password

* Use Prettier

* Change canCall to let so that lint doesn't flag me for the 69th time

* change forgotPassword() to async & remove console.log's

* If this doesn't fix everything idk what to do

* reduced nesting, using function to create error message

* updated notification

Co-authored-by: Miodec <bartnikjack@gmail.com>

* added: code_opencl language (#3132) codybloemhard

* added: code_opencl language;

* fixed: duplicate word in code_opencl;

* fixed: another duplicate in code_opencl;

* Include language in notification (#3134)

* Add 20 more Indonesian quotes, 151-170 (#3136) R0merol

* Added 20 more quotes (151-170)

* Fixed quote length (id: 155, 157)

* using completed events language instead of current config

* add hedge theme (#3137) devkennyy

* create hedge theme

* update _list.json

* fixed sub alt color issues

* update colors

* updated colors

Co-authored-by: Miodec <bartnikjack@gmail.com>

* replaced quickTab with quickRestart

* updated keytips and statements

* update keytips

* moved keytip update to ui module

* not opening command line if quick restart is esc

* calling update keytips when changing quick restart

* handling restarting with quick restart escape

* updated settings page to reflect new quick restart setting

* swapping legacy values

* removed line which caused circular dependencies

* reordered files to fix event not firing

* handling closing with escape before opening

* not doing anything if a modal is visible

Co-authored-by: Bruce Berrios <58147810+Bruception@users.noreply.github.com>
Co-authored-by: Miodec <bartnikjack@gmail.com>
Co-authored-by: Malo Hamon <hamon.malo@gmail.com>
Co-authored-by: Mehdi Hussain <mehdi@mehdi.us>
Co-authored-by: Cody Bloemhard <cblmhrd@live.nl>
Co-authored-by: R0merol <farisfrontiers@gmail.com>
2022-06-16 23:57:34 +02:00
Miodec
3da4eb45c0 added pace caret: last closes #3113 2022-06-15 19:35:01 +02:00
Malo Hamon
f02649ae9f
Custom Filters [FrontEnd] (#3106) nocommentcode
* Add Create and Delete functions for Filter Presets to `Users` ape endpoint
- deleteFilterPreset
- addFilterPreset

* Added name and _id fields to the `ResultFilter` interface in the front end

This matches the `ResultFilter` interface in the backend
Added the new fields for the default filter
Added checks in result-filter.ts to not update the ui based on these fields

* Added new-filter-preset-popup

This popup is displayed when creating a new filter preset
It allows the user to select a name.

* Added Filter Preset Buttons in account page html

- Added the Filter Preset button
- Added the filter preset region
- Added the new and delete buttons

* Added Filter Presets to DB Snapshot

* Implemented Custom Fileter Creation, Selection and Deletion flow

- Users can now create a custom filter based on the current settings
- Users will be prompted to select a name for the filter
- User can click on any custom filter and the current filter will be updated
- User can delete a custom filter while it is selected

* Implemented Filter Preset Creation, Selection and Deletion flow

- Users can now create a filter preset based on the current settings
- Users will be prompted to select a name for the filter
- User can click on any filter preset and the current filter will be updated
- User can delete a filter preset while it is selected

* adjusted styling

* removed margin

* removed icon

* added media query

* popup wording

* automatically replacing _ when displaying and creating preset

* using loader and notifications

* fixed bork

* fixed sometimes not being able to delete preset

* make preset popup look like tags popup

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-15 14:47:52 +02:00
Bruce Berrios
0f7a25422a
Add leaderboard language selection (#3124) bruception
* Adds leaderboard language selection

* Update mesage

* fixed disabled select2 styling

* changed button positioning

* fixed media queries

* Add languages

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-15 01:30:46 +02:00
Bruce Berrios
603455d6eb
Add logic to handle fetching previous daily leaderboards (#3087)
* Add logic to handle fetching previous daily leaderboards

* Add basic select controls for time range

* Fix issue

* updated styling

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-09 21:04:10 +02:00
Miodec
af3e3274b0 added badge controller
added bades to leaderboards
updated media queries to accomodate badges
2022-06-08 02:02:14 +02:00
Bruce Berrios
4dc6f1e791
Update discord avatar (#3068)
* Update avatar

* Remove linking notification

* fixed spacing

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-06-03 19:42:00 +02:00
Miodec
398d4eb63c showing discord avatar in menu if avatar hash is saved in the db 2022-06-03 17:46:04 +02:00
Bruce Berrios
0ef52ed9da
Add daily leaderboards (#3023) bruception
* Setup daily leaderboards backend (#2987) bruception

* Setup daily leaderboards backend

* Add enabled checks

* Consistent naming

* Add initial unit tests

* Use more flexible daily leaderboard rule logic

* Fix seed rule

* Add LRU Cache + Rank Calculation

* Use native functions

* Optional daily leaderboard rank

* Proper status code for invalid lb mode

* Add result criteria check

* Make daily leaderboard cache size configurable

* Add Ape endpoint for daily leaderboard (#2997)

* support for switching to viewing daily lbs

* test

* buttons

* only checking daily if user has more than 2 hours typed

* updated structure

* setting rank if its undefined

* only when daily

* storing uid

* fixed media queries

* Daily leaderboards pagination (#3006)

* Pagination

* Remove with scores

* Add daily leaderboard rank (#3014) Bruception

* Add daily leaderboard rank

* Remove unused import

* Use object instead

* Add client logic

* Add limit checks

* Announce top daily leaderboard results (#3017)

* Add rank in daily leaderboard results (#3022)

* not showing lb memory and top % on daily

* Fix rank pagination

* Actual fix

* showing new rank

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-05-26 16:30:11 +02:00
Miodec
c12579eb4a removed wrapper 2022-05-24 16:06:16 +02:00
Miodec
784e49bfa8 automatically wrapping input in wrapper
changing padding when indicator is visible
2022-05-24 16:05:32 +02:00
Rizwan Mustafa
d7812d1b1b
Disable signup button by default and enable only on all correct checks (#3020) rizwanmustafa
* Disable signup button by default and enable only on all correct checks

* Refactor code

* remove debug log

* null when hidden

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-05-24 15:29:22 +02:00
Rizwan Mustafa
9c5652113c
Add checks for password and email on signup and add field indicators for them (#3011) rizwanmustafa
* Add password length and strength check

* Change regex

* Add indicator

* Fix bug

* Revert autocomplete change

* Add indicator for verify password

* Add indicator for emails

* Reorder code

* Remove indicators when fields are empty

* Show notification when email invalid on signup
2022-05-23 23:48:09 +02:00
Miodec
48fffe1b99 created input indicator class to be used in many places 2022-05-23 22:04:06 +02:00
Miodec
521a1f94eb removed das banner, added das to support links 2022-05-10 20:02:38 +02:00
Bruce Berrios
9026893571
Add favorite quotes mode (#2945) bruception
* Add favorite quotes mode

* Remove unnecessary repeated fn call

* resetting quote length to -1 when no favorites found

* fixed quote favoriting broken

* starting hidden

* showing/hiding button depending on login state

* added command to commandline

* removed comment

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-05-08 11:58:58 +02:00
Miodec
4fda636a08 added auto name check to the register page 2022-05-04 01:04:04 +02:00
Rizwan Mustafa
0dac742efb
Update some document links (#2919)
* Update some document links

* Updated repo link
2022-05-03 13:44:39 +02:00
Miodec
2b1bfcd0b7 fixed spacing 2022-04-29 22:58:02 +02:00
Miodec
9ebf824e7a added section about advertisers 2022-04-27 20:47:51 +02:00
MyBeansAreBaked
35f63c3973
Defaults analytics to be unchecked (#2891)
To conform with GDPR, tracking MUST be opt-in, and disabled by default.
2022-04-27 16:59:59 +02:00
Tobias Kendlbacher
6ec8645b8c
Fix a typo (#2887)
In settings: changed 'conset' to 'consent'
2022-04-27 07:46:53 -05:00
Miodec
374251bc39 showing requested styles and client version on no css warning 2022-04-26 15:03:09 +02:00
Miodec
96f64039e7 added more classes that should be picked up by cookie popup blocking extensions 2022-04-26 14:43:54 +02:00
Miodec
0f347e9100 added hidden message about cookie popup blocking extensions 2022-04-26 14:21:10 +02:00
Miodec
a585adae24 added cookie popup 2022-04-25 16:11:24 +02:00