ReferenceError: Effect is not defined

Describe the problem you’re having:

Fresh install, stuck at “Loading, please wait: 80%” with the following error in the console. This happens in both Firefox and Chrome, extensions are disabled.

ReferenceError: Effect is not defined
at Object.hideReadCat (http://servername/tt-rss/js/FeedTree.js?1520499839636:423:8)
at http://servername/tt-rss/js/FeedTree.js?1520499839636:440:11
at Array.forEach ()
at Array.each (http://servername/tt-rss/lib/prototype.js?1517559441:861:12)
at Object.hideRead (http://servername/tt-rss/js/FeedTree.js?1520499839636:439:10)
at Object. (http://servername/tt-rss/js/FeedTree.js?1520499839636:222:10)
at Object. (http://servername/tt-rss/lib/dojo/dojo.js?1517559441:8:32980)
at Object._268 [as _expandNode] (http://servername/tt-rss/lib/dojo/dojo.js?1517559441:8:59340)
at Object.selectFeed (http://servername/tt-rss/js/FeedTree.js?1520499839636:357:23)
at selectFeed (http://servername/tt-rss/index.php:336:86)

tt-rss version (including git commit id):
v17.12 (2c51fac)

Platform (i.e. Linux distro, PHP, PostgreSQL, etc) versions:
CentOS Linux release 7.4.1708 (Core), php-5.4.16-43.el7_4, postgresql-9.2.23-3.el7_4

The update feed script is run by systemd and I could briefly see my feed names after importing OPML from Feedly, but then I hit this.

Thanks,

Torkil

i don’t know why scriptaculous (the library that provides Effect class) is not loaded on your system or tt-rss starts running before dependencies are loaded, neither of those should happen.

check for errors related to scriptaculous.js in browser error console and httpd log files. could be a permission issue or something like that.

Hmm I can find no other errors in the browser error log but the one already posted and I get this in the server log, which seems fine?

==> access.log <==
1520575974|servername|GET /tt-rss/ HTTP/1.1|200|107935
1520575974|servername|GET /tt-rss/css/default.css?1517559440 HTTP/1.1|200|8580
1520575974|servername|GET /tt-rss/lib/prototype.js?1517559441 HTTP/1.1|200|46112
1520575974|servername|GET /tt-rss/lib/scriptaculous/scriptaculous.js?1517559441&load=effects,controls HTTP/1.1|200|1498
1520575974|servername|GET /tt-rss/lib/dojo/tt-rss-layer.js?1517559441 HTTP/1.1|200|124589
1520575974|servername|GET /tt-rss/lib/dijit/themes/claro/claro.css?1517559441 HTTP/1.1|200|18109
1520575975|servername|GET /tt-rss/lib/dojo/dojo.js?1517559441 HTTP/1.1|200|48071
1520575975|servername|GET /tt-rss/errors.php?1517559440&mode=js HTTP/1.1|200|970
1520575975|servername|GET /tt-rss/images/indicator_tiny.gif HTTP/1.1|200|723
1520575975|servername|GET /tt-rss/images/error.png HTTP/1.1|200|666
1520575975|servername|GET /tt-rss/images/new_version.png HTTP/1.1|200|372
1520575975|servername|GET /tt-rss/lib/scriptaculous/effects.js HTTP/1.1|200|61
1520575975|servername|GET /tt-rss/lib/scriptaculous/controls.js HTTP/1.1|200|61
1520575975|servername|GET /tt-rss/lib/dojo/nls/tt-rss-layer_en-us.js?1520575975476 HTTP/1.1|200|1858
1520575975|servername|GET /tt-rss/lib/dijit/form/MultiSelect.js?1520575975476 HTTP/1.1|200|940
1520575975|servername|GET /tt-rss/lib/dijit/form/ComboBox.js?1520575975476 HTTP/1.1|200|153
1520575975|servername|GET /tt-rss/js/FeedTree.js?1520575975476 HTTP/1.1|200|3681
1520575975|servername|GET /tt-rss/lib/dojo/selector/lite.js?1520575975476 HTTP/1.1|200|2021
1520575975|servername|GET /tt-rss/lib/dojo/resources/blank.gif?1520575975476 HTTP/1.1|200|43
1520575976|servername|POST /tt-rss/backend.php HTTP/1.1|200|8887
1520575976|servername|GET /tt-rss/images/blank_icon.gif HTTP/1.1|200|80
1520575976|servername|GET /tt-rss/lib/dijit/icons/images/loadingAnimation.gif HTTP/1.1|200|1341
1520575977|servername|GET /tt-rss/backend.php?op=pref_feeds&method=getfeedtree&mode=2 HTTP/1.1|200|74602
1520575977|servername|GET /tt-rss/feed-icons/190.ico?1520498586 HTTP/1.1|200|3638
1520575977|servername|GET /tt-rss/feed-icons/195.ico?1520498528 HTTP/1.1|200|3638
1520575977|servername|GET /tt-rss/feed-icons/197.ico?1520499679 HTTP/1.1|200|4920
1520575977|servername|GET /tt-rss/feed-icons/185.ico?1520498571 HTTP/1.1|200|3638
1520575977|servername|GET /tt-rss/feed-icons/206.ico?1520498574 HTTP/1.1|200|3638

Mvh.

Torkil

yeah, going by the log the file is being sourced successfully.

if you do typeof Effect in browser console does it also return undefined? idk what could be the cause here.
do you have anything unusual on your server or client machines? an over-eager AV, maybe content-security-policy headers on the server? also if you’re not running over SSL you could be MITMed one way or another which breaks tt-rss.

personally i would try booting a linux distro and connecting directly to the server through vpn (or at least ssl) to rule out a potential MITM.