shokoanime / shoko-webui Goto Github PK
View Code? Open in Web Editor NEWRepository for the Web UI used in Shoko Server.
Repository for the Web UI used in Shoko Server.
Currently the user stays logged in with a 401: Unauthorized message being shown. Instead if the user account is updated outside of the Web UI, the user should be logged out.
Also it seems to have caused another bug as I can log in with the new username but still get the 401: Unauthorized message.
Both with uncheck (default) or checked top right check box the queues wont refresh both the Queued Commands and Sepereate queue list (not the "action" button refresh them)
They only load (refresh) on first log in
Its probably because for somewhat reason the 'path' is empty in old call.
I updated /api/dashboard with proper output about files but webui side need tweak as they results a bit different from what it used to.
used to be:
file: [ {id: int, path: string, success: bool } ]
is now (the part you are interested, excluding more information that are provided with same calls outside dashboard)
file: [ { id: int, filename: string, recognized: bool, ... } ]
Its spining but no results
Issue
No login error on user names that don't exist on the JMMServer end.
To reproduce
Enter a username which does not exist in JMMServer which will display no notification and leave both the username and password filled.
Expected results
Inline or popup notification which lets user know it has used invalid login information.
I would suggest to stick to repo name
"jmmserver webui" or event "jmmserver-webui-{version_of_webui}"
When clicking on profile menu (user name) and menu drop down, it wont hide until you pick something from that menu or once again click on menu.
Could we hide menu when you click on anything else ?
Could you please add log viewer ?
/api/log/get
/api/log/get/(int)
ShokoAnime/ShokoServer@c1bc66f
Also if its possible please write "ERROR / DEBUG / WARNING" in colors ex. Red / Blue / Orange or whatever EC will approve - as he is "The Designer" ;-)
The Files count only updates when you switch the tab, staying on the Dashboard tab for example will not update the files count even after all commands have been processed.
WebUI probably didn't use much of those that get deprecated but in case I just wanted to ping you that some of them are old and been replaced with new ones and in few next update those deprecated (they are marked in few ways) will be removed from api.
Also you should be happy that there have been added a lot of parameters that can be pass to api and resolve in big performance boost and webui also could benefit from it by using async ask page of data
limit
number of items to return
offset
starting number of item from list
offset + limit
give you paging but you already had that on logs
level
you can control on how many levels of object you can get ex. api/filter will return you all filters, with all groups attach to them and so on.. so the minimal usage is leve=1
, default the value is 0
and this result in full tree
Those are probably the most important
Nothing except filters/series/ep/file was touched so probably only few that webui use.
The api/version call was also changed a bit so it also return module version and webui channel/version ;-)
It should be defualt turn on, also why would we want to turn that of anyway ?
autoupdate handle by jmmserver
/api/webui/update - will start the process
/api/webui/latest - will return latest version
When login successful I get
ERROR
You broke the Web UI, congratulations.
Using latest jmmserver
Currently latest is 0.1.2. that is the version I have and it still show me the button
This is just an idea:
Adding option to webui that make title as the status of current queue ?
maybe progres like 120/1000? percent ? and if all 3 queues are idle "finished" so you can have it pin on browser and see the progress without looking in tab itself.
should be visible on main panel, or there should be menu from drop down user menu "about" and there should be version.
One or both options
Remember about wizard
and remember about checking api version also somewhere between
i think we need a way to rename a show or add a show to the rename queue from the series page (in collection and pinned)
that way it will be faster to rename files than to remember the name and typing it into the search in the rename tab.... or copy paste it.
to be able to just rename it or add it to the queue from the series page itself makes it a bit easier and alot faster in general.
After login in address bar is redirected to http://127.0.0.1:8111/dashboard instead of http://127.0.0.1:8111/webui/dashboard
is not updated and throw update button to show up
Our current notifications are very basic, instead we should look into adapting a style similar to this style.
http://www.jqueryscript.net/other/Growl-Style-Message-Toaster-Plugin-For-jQuery-notify.html
When there is a new notification, it will slide in from the right at which the point the user can manually close it or let it fade away after X seconds with X being a user input. For situations where there might be multiple notifications at once or in short succession, we can show 3-5 and then have them start stacking on each other. We do have the global notifications button at the top which updates in realtime showing the user how many new notifcations there are, similar to how the Workers show how many tasks remain.
Down the line we could even add a report center that further expands on notifications.
it reports to be 0.1.2
with infomation and setting about current loged user.
change password
maybe mal/anidb related things ? dunno
I have an error 404 on localhost:8111.
I downloaded and extracted ShokoServer-WebUI in "JMMServer install directory"/webui and I deleted index.html and restarted JMM Server.
There is other operations to see the webUI ?
When login page is loaded please set focus on login name form - as its possible ;-) and would help a lot
ShokoAnime/ShokoServer@b204cba
Please add proper buttons so people testing webui can also test LogRotator before it gets GUI buttons ;-)
It is possible to use Travis CI to make release builds automatically, all that is needed is some configuration and when commit gets tagged it will automatically create a release. The difference is that the resulting file will have to be downloaded from release assets and not from the repository itself.
Both work correct now
GET /api/config/export
return full body of proper settings.json but don't read settings.json - it would be great to be able to download it thru webui or have it in alike textbox that you could copy
POST /api/config/import
- it would be great to have ability to have same textbox as export and be able to past it there also you could tweak settings by hand this way while pasting it.
Having it formated in that textbox as proper json would be even better but normal text is great for start.
This is just a general list so we know what needs to be added. As discussed a lot of settings from Desktop will be added so if unclear check the desktop settings section.
We should also work on improving the settings and not just copying them over.
Web UI Settings
Log Rotator
~~~- Type~~~
~~~- Port~~~
~~~- Server Address~~~
~~~- Database Name~~~
~~~- Username~~~
~~~- Password~~~
---
**Windows Only Settings**
- Start With Windows
- Minimize To Tray
- Start Minimized
---
~~~**AniDB Login Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/130)
- ~~~Username~~~
- ~~~Password~~~
- ~~~Port~~~
- ~~~AvDump Key~~~
- ~~~AvDump Port~~~
~~~**AniDB Image Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/131)
- ~~~Download AniDB Poster~~~ (no setting, and also makes no sense)
- ~~~Download Character Images~~~
- ~~~Download Creator Images~~~
- ~~~Creator images~~~ (added)
- ~~~Release group~~~ (added)
~~~**AniDB MyList Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/131)
- ~~~Add Files~~~
- ~~~Storage State Options~~~
- ~~~Delete Action Options~~~
- ~~~Mylist Sync Options~~~
- ~~~Local Sync Options~~~
~~~**AniDB Updates**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/131)
- ~~~Update MyList Every X (6/12/24 Hours, Week, Month)~~~
- ~~~Get MyList Stats Every X (6/12/24 Hours, Week, Month)~~~
- ~~~Update Anime and Episode Info Every X (6/12/24 Hours, Week, Month)~~~
- ~~~Update Files With Missing Info Every X (6/12/24 Hours, Week, Month)~~~
---
~~~**TvDB Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/135)
- ~~~Download Fanart~~~
- ~~~Download Wide Banners~~~
- ~~~Download Posters~~~
- ~~~Max Fanart~~~
- ~~~Max Wide Banners~~~
- ~~~Max Posters~~~
- ~~~Update Data Every X (6/12/24 Hours, Week, Month)~~~
- ~~~TvDB Language~~~
---
~~~**MAL Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/136)
- ~~~Username~~~
- ~~~Password~~~
- ~~~Sync Watched States (Yes/No checkbox)~~~
- ~~~Sync Ratings (Yes/No checkbox)~~~ (not a separate setting)
- ~~~Never Decrease Series Status~~~
---
~~~**Trakt Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/136)
- ~~~Trakt PIN~~~ (new auth is used PIN is deprecated)
- ~~~Update Data Every X (6/12/24 Hours, Week, Month)~~~
---
~~~**Movie DB Settings**~~~ (Done https://github.com/ShokoAnime/ShokoServer-WebUI/pull/136)
- ~~~Download Fanart~~~
- ~~~Download Posters~~~
- ~~~Max Fanart~~~
- ~~~Max Posters~~~
---
**Preferred Language Settings**
- See JMM Desktop
---
**Relation Settings**
- See JMM Desktop
---
**Web Cache**
- See JMM Desktop
Ability to pick in settings which version you want to install (stable or unstable)
From https://developer.github.com/v3/repos/releases/ I only see that there is latest or GET /repos/:owner/:repo/releases/tags/:tag
so the unstable would have to have same tag - which is possible.
This could end up usefull for testing things as it would be easier than downloading and replacing things on remote hosts.
What do you think ?
/api/version - check { api: int } for compatibility if api is same of lower than supported version then pass thru if not show update button
Do we need user to auth to update webui or we pass him without login/pass ?
As the update now detects and redirects, after the initial redirect to login screen (which has cached version as you said before) you are unable to login without refreshing it manually. (0.1.4 -> 0.1.5)
We are reusing top section and folders overview from main page, the new thing is series files in a folder.
could you update version in releases ?
using fanarts as "thumbnails" for movie files without a thumb.
so if the movie is not on the tvdb for thumbnails it will use a fanart image in a 16:9 ratio (if we can) to use as a thumbnail. that way its never empty. and many of the movies already have tmdb pages that host fanarts like that :D
Currently only the username is needed to login.
/api/version will return:
{
{name: api, version: 1}
{name: jmmserver, version: 3.6.0.0}
}
This way you can populate data on loginscreen
Two different ideas. The top one uses a pop-up to show the different filter options and general log options while the bottom one has it's own row for them.
In terms of the actual filter options and log options, the ones I put are just temporary. We can decide on the actual ones later as well as what else we need to add.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.