6c4a786a1d
Update README.md to fix typo
master
Kevin Whitaker
2019-02-14 20:03:05 +00:00
5e027dcdd8
Add LICENSE
Kevin Whitaker
2018-11-12 20:29:42 +00:00
c8ecca96e9
Disable replaygain until I can figure out why it's causing problems.
Kevin Whitaker
2017-02-27 18:17:16 -05:00
bc183449a3
Set log output is sent to file. Implment seemingly correct replain gain support.
Kevin Whitaker
2017-02-24 18:08:02 -05:00
e2ec2f2152
Worked changing password into admin.
Kevin Whitaker
2017-02-24 17:17:13 -05:00
d9ebd4fe75
limit tracks some more. Have track updated in title too.
Kevin Whitaker
2017-02-24 17:02:29 -05:00
4e34ce5d21
limit results at the sql level.
Kevin Whitaker
2017-02-23 21:58:20 -05:00
f389ebaf40
put in base of install root when installing.
Kevin Whitaker
2017-02-23 19:01:06 -05:00
3bb52e259b
Add basic readme.
Kevin Whitaker
2017-02-23 18:48:35 -05:00
f11f3de4e4
Support enter key in some text boxes as button click that matches.
Kevin Whitaker
2017-02-23 18:41:29 -05:00
f75419cfbd
Don't pull from request queue unless the next item also was already up for voting.
Kevin Whitaker
2017-02-23 18:37:32 -05:00
df0e044a96
Convert timer to javascript to cut down on requests.
Kevin Whitaker
2017-02-23 18:32:39 -05:00
4f3e3d74d2
Make clearer when user is created. Make sure clear logs button clicks.
Kevin Whitaker
2017-02-22 22:11:10 -05:00
8992875180
Fix a bug. Add some destructors. comment out one that causes problems.
Kevin Whitaker
2017-02-22 21:38:37 -05:00
8bb9728039
add config with higher upload limit. Add basic bash run script. Add cmake directives to put these in install location.
Kevin Whitaker
2017-02-22 20:48:39 -05:00
8db237cddd
Have users have upload permissions. Make sure upload tab only shows up then.
Kevin Whitaker
2017-02-22 20:40:09 -05:00
e1dbdf997e
Move extension checking into add method. Change scan results to not have booleans and cause issues with switches. Implement moving/checking/adding uploaded track to library.
Kevin Whitaker
2017-02-22 20:28:30 -05:00
4233e5fb36
Sanity checks. Make sure track isn't in vote batch and remove it from request queue if there.
Kevin Whitaker
2017-02-22 18:00:54 -05:00
e5b86cc4df
Make sure admin can remove tracks from the collection.
Kevin Whitaker
2017-02-22 17:45:21 -05:00
4f2a0c5d4d
Finish adding user creation to admin screen.
Kevin Whitaker
2017-02-21 01:31:07 -05:00
5a602cddaa
Add empty tabs to fill.
Kevin Whitaker
2017-02-21 00:26:16 -05:00
fc98ec671a
Make sure track path is saved to track view so sending it back won't crash. Keep track of users for requests to implement limited amounts of requests. Implement requesting with limits.
Kevin Whitaker
2017-02-19 22:21:05 -05:00
5b89f375b2
Implement basics of search using sql like. Now with so much data passing, curtail some object deletions.
Kevin Whitaker
2017-02-19 21:07:14 -05:00
8c8a6c30f1
Set up basic request layout to fill with logic.
Kevin Whitaker
2017-02-19 18:17:56 -05:00
c6c2eccec5
Refactor things so less manual layout is done where not needed. Yields proper boostrap panel.
Kevin Whitaker
2017-02-19 16:40:33 -05:00
4f2eb8232d
Now with more screens about to be added, move main interface to tab widgets.
Kevin Whitaker
2017-02-19 15:42:34 -05:00
48a33d31ec
Have backend also keep track of users who voted on a track to prevent duplicate voting. Add vote count next to vote button. Make sure these details are correct, event on refresh.
Kevin Whitaker
2017-02-19 12:43:35 -05:00
161e408a47
Implement vote sending to backend. Have trackdetails spit out a msotly complete audiotrack for voting. Fix voting to actually modify list. Fix js code to not break on songs with apostrophes.
Kevin Whitaker
2017-02-19 10:31:52 -05:00
1b82d58c5e
Override css settings messing up vertical alignment.
Kevin Whitaker
2017-02-19 09:49:35 -05:00
de6a151fd0
Clean up some things. Make skip vote longer. Put in js that should show notifications for skip requests.
Kevin Whitaker
2017-02-18 23:13:13 -05:00
249e34f3c7
Try to not have track details eat up more space than they should.
Kevin Whitaker
2017-02-18 22:40:52 -05:00
cc8c4bcb7e
Implement basics of voting ui. Change vote selection code to also inject cover before putting in list. Make sure player sends winning track to highlight on client.
Kevin Whitaker
2017-02-18 22:23:09 -05:00
d12e2471da
Allow changing track bg color easier.
Kevin Whitaker
2017-02-18 17:24:45 -05:00
25e4961f1a
Remove some of old styling for new bootstrap css.
Kevin Whitaker
2017-02-18 17:20:09 -05:00
6d038acf56
Use bootstrap theme. Remove progressbar css that no longer applies.
Kevin Whitaker
2017-02-18 16:08:16 -05:00
289c1790a7
Implement UI for track skipping.
Kevin Whitaker
2017-02-18 15:48:13 -05:00
1186b7a439
Mark a user logged in in DB when successful.
Kevin Whitaker
2017-02-18 14:39:16 -05:00
cb393b0c0d
Uncomment user actions and fix by finding active DB object instead of converting dead one. Use font-awesome to make icons for buttons. Implement rest of basic logic for login page. Some style fixings. Start adding skip controls.
Kevin Whitaker
2017-02-18 14:25:52 -05:00
c5e979e948
Make sql connection public to share same connection pool. Layout calls for user info from DB. Implement login path.
Kevin Whitaker
2017-02-18 00:27:24 -05:00
1279143931
Add a little animation when changing track details.
Kevin Whitaker
2017-02-17 20:02:20 -05:00
0fa26d83f6
Start tweaking alignments to make look a little better and take up proper spacing.
Kevin Whitaker
2017-02-17 19:47:30 -05:00
167b2f9084
add boost in because wt seems to now complain about it. Remove first song change message as it's unlikely anyone will encounter it with other events firing soon after. Start cleaning up some container/layout mess. Implement trackdetails and show this on the play controls.
Kevin Whitaker
2017-02-16 22:55:14 -05:00
b101657669
Have timer run and update progressbar to show playing track state.
Kevin Whitaker
2017-02-16 20:30:05 -05:00
53bc31ebb9
Start implementing web UI. Add track detail container. Comment out some old test code and DB code while more gets hooked up. Play/pause button is mostly implemented.
Kevin Whitaker
2017-02-15 00:47:58 -05:00
7668a923d8
Add code to try and make sure second votable track is different from first. Implement code to handle skip requests in player.
Kevin Whitaker
2017-02-13 21:47:52 -05:00
41fa567f82
Add untested play/pause event code and change web interface to know which happened.
Kevin Whitaker
2017-02-08 23:22:34 -05:00
35279008ee
Redo events so that the event can have needed info alongside it. Make sure when computer is picking tracks if no votes that it doesn't pick a song that just played if possible. Fix mislabeled method. Implement untest admin skip and vote code.
Kevin Whitaker
2017-02-08 23:05:13 -05:00
39a780cb95
Remove lots of DB calls just for getting the current track. Add update call for vote closing. Add some code to try and avoid having current playing track show up in votes again.
Kevin Whitaker
2017-02-08 21:30:23 -05:00
1a545af49f
Change track DB add method to give more details on failure when it happens.
Kevin Whitaker
2017-02-08 19:47:35 -05:00
71a2cd6321
Add taglib to project to get extra cover data(and possibly replace libgroove for this function). Remove oggs from accepted files until I can figure out cover data for them better. Add non-persisted field for this to audiotrack object and method to add this data to it in memory.
Kevin Whitaker
2017-02-08 00:56:32 -05:00
44df1cf607
Have sqlite connection object be pointers to help make sure correct destruction pattern happens.
Kevin Whitaker
2017-02-06 01:38:12 -05:00
166443f9ad
Test allowing oggs through the scanner. Clean up some transactions on first launch to prevent locking from a uncapped while loop. Also don't start the event loop without 3 tracks or voting can't happen.
Kevin Whitaker
2017-02-06 00:44:31 -05:00
dc37ef9e06
remove launch scan code I wasn't sure if I wanted.
Kevin Whitaker
2017-02-05 19:01:24 -05:00
47670aede8
Change percentages to allow a little more chance of different genre.
Kevin Whitaker
2017-02-05 18:38:31 -05:00
6882d5ba71
Use same next method to make cleaner than increment operator.
Kevin Whitaker
2017-02-05 18:23:24 -05:00
cb5b2f7ad6
Stop using pointers from DB as storage mechanism. Start storing copies of the object itself. Use commits after methods are done with transaction to hopefully help with DB issues. Don't use map because it requires too much about the key object I don't need. Add boolean that prevents vote end from being called constantly during it's 3 second window.
Kevin Whitaker
2017-02-05 18:20:03 -05:00
75c87c41f8
Write out event loop buckets. Implement nowplaying and voting to put in enough to be mostly self-running. Remove as much static as possible from groovemgr class to make less of a mess around how things are accessed. Try to solve concurrency issues in DB.
Kevin Whitaker
2017-02-05 00:04:29 -05:00
dff7fa145d
Fix music dir being set in bad place again. Update web calls that backend calls to match const requirements. Have playlist and player part of backend class now for better handling. Set up getting first vote list and sending.
Kevin Whitaker
2017-02-04 14:15:18 -05:00
9b2783238e
Add shutdown path for audio layer. Add basic event loop after setting up groove objects. Fix race condition bug by not setting path first.
Kevin Whitaker
2017-02-03 00:29:30 -05:00
685d1828ad
add limits to places where offsets to avoid some syntax problems. Rename grooveplayer class to avoid conflict with official libgroove class. Add admin event. Write start of event loop that picks initial song.
Kevin Whitaker
2017-02-01 22:13:40 -05:00
a38258a883
Add groove player to stuff linked in. Add some vars to hold player events to watch for in event loop. Implement first version of vote picking algorithm.
Kevin Whitaker
2017-01-31 22:06:58 -05:00
83efc750eb
Add code to add track to DB and remove old ones that are gone. Added fingerprint lib to link for id-ing tracks. Make sure DB is logical after these changes. Change music path due to complaints I don't quite understand.
Kevin Whitaker
2017-01-30 22:48:13 -05:00
50f30d494f
filesystem support works in c++11, but needs another lib linked. Add some namespacing to make easier to transition to official filesystem lib release. Move static var in wrong place. Add first method ot handle scanning.
Kevin Whitaker
2017-01-30 00:22:03 -05:00
f291b65a47
Force c++17 standard so we can use filesystem std lib. Currently will only work on gcc until cmake update.
Kevin Whitaker
2017-01-29 20:31:46 -05:00
ad26e8351f
Add more UI events and get backend threaded up.
Kevin Whitaker
2017-01-29 19:39:30 -05:00
ab4df84657
Added base of code to allow sending backend updates to connected clients.
Kevin Whitaker
2017-01-29 17:27:27 -05:00
22f1b90238
Add interface class to represent player interface. Have simple hide/show animation between. Put up more interface elements on login interface to show inteded ui.
Kevin Whitaker
2017-01-28 16:51:14 -05:00
93e095d46e
Have GroovePlayer init music db on creation. Make fields correctly be fk.
Kevin Whitaker
2017-01-28 14:41:08 -05:00
c8637f2af6
Add base db objects and login widget.
Kevin Whitaker
2017-01-28 12:01:26 -05:00
a60e2a0c34
Make GroovePlayer a singleton to avoid being created for each browser. Add login UI component to eventually hold landing screen. Actually start server with initial interface.
Kevin Whitaker
2017-01-28 00:56:22 -05:00
093f74a846
Add basic classes for application. Move source around and properly fix up build system to link and use correct c++ compiler version.
Kevin Whitaker
2017-01-27 22:44:36 -05:00
54029126a1
Added cmake build items for required libs.
Kevin Whitaker
2017-01-27 20:28:58 -05:00
ca53e4d706
initial project import from KDevelop
Kevin Whitaker
2017-01-27 19:29:54 -05:00