Skip to main content

Topic: CaTRoX (QWR Edition): fb2k theme (Read 666 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • TheQwertiest
  • [*][*][*]
CaTRoX (QWR Edition): fb2k theme
CaTRoX (QWR Edition)


CUI theme based on the design and color scheme of eXtremeHunter1972's infamous CaTRoX theme!

Features:
 - Three player modes: Full, Playlist and Art.
 - Custom JScript playlist with extensive customization.
 - Borderless player window.
 - Integrated foo_youtube support.
 - Integrated Library Tree and YouTube Manager scripts.
 - And more!

See Installation Guide to get started!

Download link: https://github.com/TheQwertiest/CaTRoX_QWR/releases

Included 3rd party scripts
 - YouTube Track Manager (Panel_YT.js): https://hydrogenaud.io/index.php/topic,105522.0.html by WilB.
 - Library Tree (Panel_Library.js): https://hydrogenaud.io/index.php/topic,110938.0.html by WilB.
 - Various samples from foo_jscript_panel: https://github.com/19379/foo-jscript-panel/tree/master/foo_jscript_panel/samples/complete/js by marc2003.

Credits
 - eXtremeHunter1972: original CaTRoX theme (http://extremehunter1972.deviantart.com/art/CaTRoX-1-April-2014-368146015).
 - marc2003: original foo_jscript_panel, sample scripts and various JS consultations.
 - WilB: YouTube Track Manager script and Library Tree script.
 - Respective authors of the components used in the theme.

  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #1
Some bugs.  :P

1)
thumbs doesn't download anything because this line in thumbs.js points to a file that doesn't exist - you chose not to bundle any files with your component.

Code: [Select]
this.vbs_file = fb.ComponentPath + 'samples\\complete\\vbs\\download.vbs';

2)
last.fm similar artists crashes because you've updated lodash without adding bind to this map function...

Code: [Select]
this.data = _(_.get(_.jsonParseFile(this.filename), 'similarartists.artist', []))
.map(function (item) {
return {
name : item.name,
width : _.textWidth(item.name, panel.fonts.normal),
url : this.properties.link.value == 0 ? item.url : 'artist HAS ' + item.name
};
}, this)
  .value();

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #2
Some bugs.  :P
1)
thumbs doesn't download anything because this line in thumbs.js points to a file that doesn't exist - you chose not to bundle any files with your component.
2)
last.fm similar artists crashes because you've updated lodash without adding bind to this map function...

Thanks! =)
So much for the smooth release...


  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #3
Another thing... because the site hosting panel stack splitter has gone, you should post a link to this thread in the uploads section:

https://hydrogenaud.io/index.php/topic,114249.0.html



  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #4
Another thing... because the site hosting panel stack splitter has gone, you should post a link to this thread in the uploads section:
https://hydrogenaud.io/index.php/topic,114249.0.html
That's weird: http://foo2k.chottu.net/ is accessible for me as well as link to PSS

  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #5
That IS weird. Last time I looked it was just a holding page. As you can see from the thread I linked to, that was some months ago.

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #6
Version: 4.0.2
Link: https://github.com/TheQwertiest/CaTRoX_QWR/releases/tag/v4.0.2
Changelog:
    Changed
    • First theme launch now sets window size according to player mode.
    • Spectrum visualization is now enabled by default.
    • Updated theme.fcl.
    Fixed
    • Fixed crash on LAST tab when 'similar artists' mode is chosen.
    • Fixed bug: 'thumbs' panel on BIO tab was not downloading images.

Kudos @marc2003 for bug hunting =)

Re: CaTRoX (QWR Edition): fb2k theme
Reply #7
JScript Panel (Cover Panel)
JavaScript 运行时错误:
正则表达式中缺少 ']'
File: ...\js\lodash.min.js
Line: 1, Col: 6969
<source text only available at compile time>

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #8
JScript Panel (Cover Panel)
JavaScript 运行时错误:
正则表达式中缺少 ']'
File: ...\js\lodash.min.js
Line: 1, Col: 6969
<source text only available at compile time>
What OS and IE version do you have?

Did you import theme.fcl?

Re: CaTRoX (QWR Edition): fb2k theme
Reply #9
What OS and IE version do you have?

Did you import theme.fcl?
windows 10 pro insider per 17035 + IE 11.1000.17035.0.
I import theme.fcl.

Panel_yt.js file encoding needs to be converted to UTF-8 with BOM.

Re: CaTRoX (QWR Edition): fb2k theme
Reply #10
(1)Playlist modes > Click on the volume bar
 “setInterval”未定义
...\js\volume.js
Line: 141, Col: 21

(2)Display > Columns UI > Layout > Mini > OK, > Aw,crashed...

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #11
(1)Playlist modes > Click on the volume bar
 “setInterval”未定义
...\js\volume.js
Line: 141, Col: 21
Welp, hard to test everything myself ^^.

Quote
(2)Display > Columns UI > Layout > Mini > OK, > Aw,crashed...
Heh, this one is a relic of old times, I even forgot that it existed :D

Thanks for the bug reports. These two will be fixed soon.

JScript Panel (Cover Panel)
JavaScript 运行时错误:
正则表达式中缺少 ']'
File: ...\js\lodash.min.js
Line: 1, Col: 6969
<source text only available at compile time>
Does it crash on fb2k launch?
Try selecting\creating empty playlist and reloading fb2k. Does it crash in such case as well?

Quote
Panel_yt.js file encoding needs to be converted to UTF-8 with BOM.
Why though? Does it break something when it is without BOM?

Still at my wits end about lodash crash in Cover Panel though...
Oooohkay.... Now I'm getting somewhere - it seems this has something to do with character encoding. Probably you have a track with kanji characters selected, which somehow breaks lodash.
  • Last Edit: 23 November, 2017, 11:09:34 AM by TheQwertiest

  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #12
Try the standard (not minified) version and then you'll see where the problem is.

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #13
Try the standard (not minified) version and then you'll see where the problem is.
Well, I know, where the problem is: https://github.com/lodash/lodash/blob/4.17.4/lodash.js#L253
I've even found a mention of the problem: https://github.com/lodash/lodash/issues/2625

But still wondering what actually causes it and how to fix it. :\

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #14
Version: 4.0.2a
Link: https://github.com/TheQwertiest/CaTRoX_QWR/releases/tag/v4.0.2a
Changelog:
    Changed
    • Updated theme.fcl.
    • Removed unused CUI layout.
    Fixed
    • Fixed crash when clicking on volume bar in Playlist Mode.

Kudos @always.beta  ;)

Re: CaTRoX (QWR Edition): fb2k theme
Reply #15
4.0.2a has the same problem. I need to convert panel_yt.js and lodash.min.js file codes to utf-8 with BOM before I can use it normally.
The panel_yt.js file 884 line has full-width characters.
Still crashes when clicking on volume bar in Playlist Mode, PREPROCESSOR is still missing the timeout-shim.js file.
  • Last Edit: 24 November, 2017, 12:51:39 AM by always.beta

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #16
4.0.2a has the same problem. I need to convert panel_yt.js and lodash.min.js file codes to utf-8 with BOM before I can use it normally.
The panel_yt.js file 884 line has full-width characters.
Still crashes when clicking on volume bar in Playlist Mode, PREPROCESSOR is still missing the timeout-shim.js file.
Damn, wrong .fcl uploaded...
Does adding BOM fix the crash in Cover Panel?

  • Coreda
  • [*][*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #17
Always nice to see JScript Panel see some use, and with a dark theme, too.

Re: CaTRoX (QWR Edition): fb2k theme
Reply #18
Does adding BOM fix the crash in Cover Panel?
Yes, it will fix the crash in Cover Panel. (Almost all of the panels on startup have this error, not just the cover panel.  :D )

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #19
Version: 4.0.2b
Link: https://github.com/TheQwertiest/CaTRoX_QWR/releases/tag/v4.0.2b
Changelog:
    Fixed
    • Fixed UTF8 encoding related crashes.
    • First time launch resizes window properly now .
    • Updated theme.fcl:
      • Fixed crash when clicking on volume bar in Playlist Mode ( again ).

Kudos @always.beta  :P

  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #20
That lodash thing was bugging me so I looked in to it some more...

a) that lodash file is not the original from source. It's been mangled in some way and I'm almost certain the original would have worked correctly without adding a BOM.

b) having said that, utf8 files without BOM (like the youtube script) are not handled correctly in the preprocessor section and this is a component issue which needs to be fixed.
  • Last Edit: 24 November, 2017, 11:39:29 AM by marc2003

  • TheQwertiest
  • [*][*][*]
Re: CaTRoX (QWR Edition): fb2k theme
Reply #21
a) that lodash file is not the original from source. It's been mangled in some way and I'm almost certain the original would have worked correctly without adding a BOM.
Welp, I used CDNJS to get lodash, but I doubt that CDN choice really matters here, since the original problem was caused by invalid unicode decoding of the script file. Who knows though, I might be wrong, but I don't have a VM with chinese locale to test it properly ¯\_(ツ)_/¯

[EDIT]: On the second thought, you are probably right, since the problematic line is handled differently in minified version from CDNJS compared to vanilla one: it replaced all unicode character codes with the actual characters, which is very likely to be the source of problem...
  • Last Edit: 24 November, 2017, 12:19:00 PM by TheQwertiest

  • marc2003
  • [*][*][*][*][*]
  • Developer
Re: CaTRoX (QWR Edition): fb2k theme
Reply #22
It's more luck than judgement no one else has noticed/complained about this.

A most simple test which shows the shortcoming:

Save as a.js (plain UTF8 without BOM in your foobar profile)
Code: [Select]
var a = "’";

Then in a fresh panel...
Code: [Select]
// ==PREPROCESSOR==
// @import "%fb2k_profile_path%a.js"
// ==/PREPROCESSOR==

fb.trace(a);

outputs this..

Code: [Select]
’

edit: I have now fixed this for the next release. Luckily the functions for handling it were already in place - I never would have figured it out myself.  :'(



  • Last Edit: 24 November, 2017, 12:40:16 PM by marc2003