Jump to content

µTorrent WebUI


Ultima

Recommended Posts

Just wanted to let Ultima know that I have finally figured out all my issues!

And ofcourse they were all me, being dumb and all :)

- IE iframe bug was due to not having a doctype in the parent of the iframe (still developing this, just a shortcut I shouldn't have taken)

- The latest webui problems I had were caused by my apache config skills. I proxypassed it to /utorrent/ and just read up on it again and as stated in the actual thread (haven't seen that before) this does not work. /gui/ does.

Sorry for taking up your time Ultima but I'm glad I figured it all out.

The only one that has high prio for me is getting a generic solution for what I like to call a login pass through (automatic login with curl or something). Taking a shot @ it today I hope, maybe trying out glype in the process.

Also took a quick scan @ lord alderaan's code. There's as he said a lot in there, I have to filter out the login stuff and were he does it, still.

Link to comment
Share on other sites

Hey joz I'm still not clear on how exactly you incorporated the webui in your server console...

In any case, if you ReverseProxy it to /utorrent/ you should change the webui.js in the webui.js.gz in the webui.zip because the javascript in there is hardcoded to go to /gui. I thought you already knew that or I would have said so before.

As to the Webui-Shell code. It might be a mess to look at but basically what it does is A) catch all requests to a certain path (/gui/*) using a rewriter rule and direct it to a single php script (webui_shell/index.php). Of course I pass the originally requested path. And B) let that script then get the file or list or pass the command to µtorrent using cURL.

The reason the Webui-Shell does all this is because it has to be able to change stuff on the fly. Like not passing on commands that a user isn't allowed to do or filtering torrents that a user isn't allowed to see from the list. etc.

Of course you aren't interested in that last bit. But maybe you'd like the basic setup. Sadly it's interwoven with all the other stuff so there isn't really a single file or place in the code to look. The main files to look at though are inc/user/webui.php and index.php.

Trac is down... again lol. But you can always download the actual package and look at the files yourself. Link is in the topic.

Creating something similar is gonna take you quite some time though :P

Link to comment
Share on other sites

Hi Lord Alderaan,

I have been thinking about this some more and yeah I think you're right it's gonna be some job to get done, especially since I need to be supporting several different logins (different sites which means different login forms but also different methods as ASP.net login, basic auth etc.).

I have really not taken that much time to dig through your code but I will, been busy as usual.

I was kinda hoping there was something opensource that already does this sorta stuff but apperently yours is the closest I can find. Already got your realese version downloaded, good enough for me ;) Thanks!

About the console I work on it's not that fancy, just a simple iframe. The actual page is just about 80 pixels high, beneath that is all iframe, webui also gets loaded in it as well as all other third patry apps but also my own coded parts.

Has a couple advantages such as not having to reload the resource intensive menu.

Link to comment
Share on other sites

Yeah but the iframe loads a php page from your server right? With the code to access the actual API?

In any case, we're going slightly off-topic here. But feel free to start a new topic about the coding aspect (of the µTorrent panel in ur server app) or poke me privately (email or IRC). I don't often have time but I am willing to think about problems and offer suggestions.

Link to comment
Share on other sites

v0.370 WIP (2010-01-25)

+ Feature: "Reset" item in listview column header context menu

+ Feature: Configurable search list (uTorrent 2.1 and newer only)

+ Feature: Scheduler table (uTorrent 2.1 and newer only)

+ Feature: Seeds/Peers column

+ Feature: Tab icons

+ Feature: Transfer Cap settings

~ Change: Add some missing settings to Preferences dialog

~ Change: Distinguish queued downloads and queued seeds in Status column

~ Change: Failure tweaks (exponential backoff, retry limit, hammer prevention)

~ Change: Most settings now applied on-the-fly without browser reload

~ Change: Respect gui.tall_category_list

~ Change: Slightly darker alternate list background color

~ Change: Slightly more natural keyboard/mouse shortcuts on Mac OS X

~ Change: Slightly smoother control resizing on browser window resize in IE

~ Change: Tweaked column resizing/reordering to be slightly less flaky

~ Change: Use ISO 639-1 for language code designation

* Fix: Double-clicking on a queued torrent doesn't stop it

* Fix: Regression where using listview scrollbar deselects selected items

First post, as usual. I decided to bump the version number because I've been refactoring a bunch of code. Most of the effort has been in rewriting the column handling code in the listviews, because they were horrendously unscalable and unmaintainable before. It should be somewhat better now. As a whole, though, the listview code is still pretty ugly, and will still need further refactoring. This build is just a stopping point to take a breather, and to make sure I haven't broken things too horribly.

The scheduler and search engine list customization are, as noted in the changelog, 2.1 only, because only 2.1 exposes those settings to WebUI (sort-of anyway).

"Slightly more natural keyboard/mouse shortcuts on Mac OS X" means that on that platform, WebUI will use Ctrl+Click to show the context menu, and the Apple/Meta key will be used in place of Ctrl as normally used on other platforms for the usual things (like selecting multiple items in the listviews, or Meta+P for opening Preferences -- yeah yeah, Mac users are probably used to Meta+, for Preferences, but whatever :P).

Link to comment
Share on other sites

v0.370 WIP (2010-01-27)

* Fix: File priority not updating after priority change

* Fix: Status column always shows "Checked 0%" while torrent being checked

* Fix: Status column not sorting intuitively in some situations

* Fix: Torrent jobs list progress bar not updating

Some regression fixes. I hope I didn't break anything further...

Link to comment
Share on other sites

v0.370 WIP (2010-01-27)

* Fix: File priority not updating after priority change

* Fix: Status column always shows "Checked 0%" while torrent being checked

* Fix: Status column not sorting intuitively in some situations

* Fix: Torrent jobs list progress bar not updating

Some regression fixes. I hope I didn't break anything further....

Hi Ultima, when I try to increase or decrease the width of the columns I get this error in the logger tab:

JS error: [1] 'metricX' is undefined

Link to comment
Share on other sites

Er, well, I guess the problem comes in two parts:

1. You're using IE (it happens only on IE)

2. I missed one particular instance of the variable when I renamed it (I'm no fan of global search/replace... so I do it manually)

Since it's not a major issue, I'm not going to reupload a full webui.zip to fix it.

http://sites.google.com/site/ultimasites/files/utorrent-webui.stable.2010012823182420.js.gz?attredirects=0

Grab this file, rename it as stable.js.gz, and replace the copy in webui.zip.

Link to comment
Share on other sites

Er, well, I guess the problem comes in two parts:

1. You're using IE (it happens only on IE)

2. I missed one particular instance of the variable when I renamed it (I'm no fan of global search/replace... so I do it manually)

Since it's not a major issue, I'm not going to reupload a full webui.zip to fix it.

http://sites.google.com/site/ultimasites/files/utorrent-webui.stable.2010012823182420.js.gz?attredirects=0

Grab this file, rename it as stable.js.gz, and replace the copy in webui.zip.

Yes I'm using IE ... Thanks to your help now works perfectly.

Thanks much for your prompt assistance and your work.

Link to comment
Share on other sites

Why webui 0.370 WIP saves all files from .torrent file in root uTorrent default torrent folder, ignoring first-level dir from .torrent file???

Original webui 0.361 saved in subfolder correctly!

Example:

Default torrent folder in config: D:\Torrents

in .torrent file

House M.D. s06 (LostFilm.TV)\House.M.D.s06e01.rus.LostFilm.TV.avi
House M.D. s06 (LostFilm.TV)\House.M.D.s06e02.rus.LostFilm.TV.avi
House M.D. s06 (LostFilm.TV)\House.M.D.s06e03.rus.LostFilm.TV.avi
......
House M.D. s06 (LostFilm.TV)\House.M.D.s06e10.rus.LostFilm.TV.avi

Original webui 0.361 saved correctly

D:\Torrents\House M.D. s06 (LostFilm.TV)\House.M.D.s06e01.rus.LostFilm.TV.avi
D:\Torrents\House M.D. s06 (LostFilm.TV)\House.M.D.s06e02.rus.LostFilm.TV.avi
D:\Torrents\House M.D. s06 (LostFilm.TV)\House.M.D.s06e03.rus.LostFilm.TV.avi
D:\Torrents\......
D:\Torrents\House M.D. s06 (LostFilm.TV)\House.M.D.s06e10.rus.LostFilm.TV.avi

This version webui 0.370 WIP seved so (this not correct)...

D:\Torrents\House.M.D.s06e01.rus.LostFilm.TV.avi
D:\Torrents\House.M.D.s06e02.rus.LostFilm.TV.avi
D:\Torrents\House.M.D.s06e03.rus.LostFilm.TV.avi
D:\Torrents\......
D:\Torrents\House.M.D.s06e10.rus.LostFilm.TV.avi

As this correct?

Link to comment
Share on other sites

This has nothing to do with v0.370, because WebUI itself does not control where files are saved, and torrent adding has not changed in any significant manner since v0.361. The only change is that it now supports token authentication correctly -- which is completely unrelated.

Besides which, I've already confirmed that it does add the directory name correctly for the torrent using µTorrent 2.0 with WebUI v0.370. Your problem lies with the version of µTorrent you're running or the settings you're using, not the version of WebUI.

Link to comment
Share on other sites

Besides which, I've already confirmed that it does add the directory name correctly for the torrent using µTorrent 2.0 with WebUI v0.370. Your problem lies with the version of µTorrent you're running or the settings you're using, not the version of WebUI.

I it is correct you have understood that all depend on versions most uTorrent?

Link to comment
Share on other sites

@Renanbg:

Divider positioning and control sizing on window resize was completely overhauled, so you will almost definitely need to reset the UI by pressing Esc.


@rlmicrosa:

Must be related to the altered resize procedure. It's now much more precise about where it places the torrent jobs list -- down to the pixel (or should be anyway, across the browsers that I have tested it with). What that means is that it might be less forgiving with browsers that render a bit unexpectedly. For example, if the list is to the right of the expected position by 1 pixel, it'll flow downward below the category list instead. Definitely happened while I was testing it on some other browsers (IE6... heh, I should stop caring about that piece of junk already).

To be honest, WebUI isn't designed for mobile devices. It expects right-click and/or keyboard presses for various interactions, and some things can't be accessed in any other way -- which leaves most (if not all) mobile devices in the cold. As Lord Alderaan suggested, you might be better off using an alternate UI instead that is better suited for mobile devices, but I'll consider looking into mitigating the issue for WebUI anyway. No guarantees or promises about it though.

Link to comment
Share on other sites

I Used the old webui version that support Utorrent 1.6.1. I can go through the javascript files in there and replace "/gui/" with "/utorrent/". It can use with a lot of user pass apache port 80.

In the new version how can i change the javascript like the old webui version to use New Utorrent.

Thx

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...