Commit Graph

65 Commits

Author SHA1 Message Date
LoveEevee
3fea149353 ImportSongs: Add Google Drive support
- Adds a new page for importing custom songs, where it is possible to pick a local folder (desktop only) or a Google Drive folder (desktop and Android)
  - This feature is disabled on iOS due to the lack of OGG audio support in the browser
- In order to not get rate limited, a TJA file is parsed for metadata only when the song is clicked in the song selection, rather than all at once at import time
- The instance maintainer will need to provide the API credentials in the config.py file to enable this feature
  - This requires a new project to be created at console.cloud.google.com
  - Drive API will have to be enabled
  - API and OAuth keys should be created
    - API key can be restricted to only have Google Drive and Google Picker APIs
    - OAuth Client ID should have Web Application type and JavaScript origins set
    - Editing the OAuth consent screen to have a name and icon is recommended
      - It is semi-required to submit the consent screen for verification as the permission to download all of the Drive files will be asked.
      - Note that the email of the maintainer is publicly visible on the consent screen
  - The project number can be found in the IAM & Admin settings page
2020-10-29 08:07:56 +03:00
Bui
224bf25fc0
Merge pull request #224 from N-Field/patch-preview-int
fix 400 errors from /api/preview
2020-05-09 17:29:53 +01:00
Bui
f346e05312
Merge pull request #214 from MarNicGit/DynamicCategories
Dynamic categories
2020-05-09 17:24:23 +01:00
purerosefallen
992a44be36
typo 2020-05-06 21:13:24 +08:00
purerosefallen
6a93ad2735
byte limit 2020-05-06 21:12:49 +08:00
purerosefallen
61dc667705
fix /api/preview 2020-05-06 21:05:55 +08:00
LoveEevee
f83fab41e3 Bug fixes
- Fixed touch multiplayer drum being too small and nameplate drawing on top of it
- Fixed #lyric lines being forced to be lowercase and appearing too early
- Fixed exiting session while someone else is using netplay sending you to difficulty selection of the song that the netplay person has selected
- Fixed ≠MM title on song select not having the first symbol rotated
- Fixed nameplate cache in song select and in game not getting cleared
- Increased ping timeout for multiplayer

Admin page fixes
- Add meta viewport tag so that the admin pages can be opened on mobile
- On song list, songs that are not enabled are now marked
- Disable tabbing through diverge notes checkboxes in courses when adding or editing a song
- Add Hash to song adding
- Display an error if a local chart file has not been found while calculating hash
- If calculating the hash results in an error, do not discard all other changes
2020-04-17 04:53:53 +03:00
mnvdk
85d6e70ff6 Dynamic songskin loading for categories 2020-04-14 23:01:47 +02:00
Bui
d98b2d9697
Merge pull request #209 from N-Field/fix-session-redis
Fix crash when using non-localhost redis
2020-04-06 09:39:19 +01:00
purerosefallen
99c906d1ad
load redis properly in session 2020-04-06 16:36:00 +08:00
Bui
008bfbe418
fix admin level for song edit 2020-04-06 06:36:08 +01:00
LoveEevee
cd288d4fa4 Add custom Don
- Registered users can customise the colour of their Don and it will appear for other players
- Bug fixes:
  - Add lyrics checkbox to admin page
  - 2P shows above "creative" or "with lyrics" labels
  - Prevent accidental alt and menu keyboard presses from triggering browser menus
  - Fixed mouse hitboxes on difficulty selection
  - Clean cached sounds and lyrics when another song is loading
  - Fixed debug jumping to the top-left of the screen when hidden
  - Fixed server volume not being applied to songs
2020-04-04 16:48:58 +03:00
LoveEevee
8d8a4577d2 Admin: Fix hashing if songs baseurl is not absolute 2020-03-18 06:54:42 +03:00
LoveEevee
54a98b77d9 Fix logging out and the Remember me checkbox 2020-03-17 11:07:29 +03:00
Bui
841e9d37d1 add csrftoken api route 2020-03-17 04:03:10 +00:00
Bui
816833bac0 handle csrf error 2020-03-17 02:18:18 +00:00
Bui
1e7477dd96 anti-csrf 2020-03-17 02:10:47 +00:00
Bui
873bd1a73e hashexception 2020-03-17 01:27:54 +00:00
Bui
fe90a35625 generate hashes on server 2020-03-17 01:27:06 +00:00
Bui
5a68978ec4 implement song addition/deletion 2020-03-16 23:30:44 +00:00
Bui
c5f85d0d87 allow null category id 2020-03-15 16:25:38 +00:00
Bui
61e521dda3 update song edit page 2020-03-15 16:16:18 +00:00
Bui
0fd0cb97a0 log out other sessions after password change 2020-03-14 14:02:11 +00:00
LoveEevee
7f1bb9d357 Multiplayer improvements and reupload score on error
- In multiplayer you will play at the bottom if you joined second
- Add a dialog to song select that score has not been saved
- Uploads the score when logged in again
- Translate error messages from the server
2020-03-14 07:50:04 +03:00
LoveEevee
ad62ac800c Some bug fixes 2020-03-13 08:32:53 +03:00
Bui
73b8da36ab fix registration bug 2020-03-13 03:54:27 +00:00
Bui
62aca02aab bugfixes 2020-03-13 03:19:26 +00:00
Bui
7519b1c4c2 account system backend, db rewrite 2020-03-13 02:45:42 +00:00
LoveEevee
1759772831 ScoreStorage: Use hashes instead of song titles 2020-03-07 04:48:30 +03:00
Bui
750dc66245 improve category jump 2020-02-22 13:09:07 +00:00
Bui
0ac923d245 check existence of maker_id 2019-11-25 01:24:06 +00:00
Bui
42f22a4f09 allow anonymous makers 2019-11-25 00:58:07 +00:00
Bui
67e418bc4d SongSelect: Add maker identification
requires maker_id(int) column in songs table, and a new "makers" table with maker_id(int), name(text), url(text)
2019-11-24 23:51:58 +00:00
LoveEevee
cb64777012 SongSelect: Add Settings
- Resolution can be adjusted, as well as touch drum animation on mobile
- A translation text file "songtitle.txt" can be imported
  - Titles and translated titles are each on their own line, if a line begins with a language code, it will translate the song title that is above
  - An example file can be found here: https://gist.github.com/LoveEevee/65fe66f0b54c0536f96fd2f4862984d4
- The page will fail to load if version on the page does not match /api/config
- Disabled Tab key while playing, before hitting it would focus the version link
- Fix forcing branches in debug not working
- Fixed not being able to click on songs that do not have oni but have ura
- Fix unexpected category being used as a fallback
- Fix verticalText and layeredText not accepting anything except strings
2019-04-04 23:40:11 +03:00
LoveEevee
61a5d6d496 SoundBuffer: Set song volume
- Requires a new column in the database after preview: `volume` REAL
- The value is a volume multiplier, if the value is set to null or 1 there will be no change
- The volume can be set in debugger
- Imported TJA files are now read from disk every time the song is played, freeing some memory and making it easier to create charts
- Correctly parse TJA files with alphabet notes, added "A" and "B" notes, which appear as DON (Big) and KA (Big) respectively
2019-03-16 00:34:48 +03:00
LoveEevee
1aecc7d52f SongSelect: Use seconds for previews 2019-02-21 01:42:18 +03:00
Bui
3a28d967b9 move song previews to the database 2019-02-20 22:02:44 +00:00
Bui
ace0f2030c cache / 2019-02-14 10:36:39 +00:00
Bui
d92cd6f3a2 add view caching 2019-02-14 10:31:23 +00:00
Bui
4be9334be3 solidify default git repo 2019-02-06 18:49:25 +00:00
LoveEevee
da40fd58ff ImportSongs: Custom assets 2019-02-03 15:04:25 +03:00
Bui
7b9de52d06 use songs_baseurl when returning preview url 2019-02-02 07:41:06 +00:00
LoveEevee
05720b27f9 SongSelect: Translatable song titles 2019-01-25 04:42:05 +03:00
Bui
ac23292fe7 change version var name 2018-12-05 21:55:28 +00:00
Bui
1806fb338e add query string to view requests 2018-12-05 21:47:35 +00:00
LoveEevee
f25aee9643 SongBg: Add don backgrounds 2018-12-02 18:25:42 +03:00
LoveEevee
e43821ba48 SongBg: Add song skins 2018-11-26 01:42:24 +03:00
Bui
a3ebf990fe fix song preview generation
closes #74
2018-11-18 19:53:51 +00:00
Bui
1619622257 use urlparse for preview url joining 2018-11-12 11:34:49 +00:00
LoveEevee
b6552ea25f SongSelect: Add sub-titles 2018-11-10 22:12:29 +03:00