Some icons do not appear after migration

I. I would love to report a strange behaviour of Discourse. We use 2.7.0.beta7 and we recently migrated (or rather be said linked) from internal network to public internet. We have a strange issue here.
Most of the icons (those you click on) disappeared. Like this:

But, some of them are working fine. I tried to investigate, I could not find any pattern. Or I just don’t see any.

You can check it yourself here:

I would be super happy, if you can share any thought.
II. Also (but maybe that is not related problem) - the custom CSS editor does not work. I can see the css I added in past for a half of second, and then it is gone. Console is saying there is a problem with ace.js

Uncaught TypeError: is undefined
    i ace.js:1
    a ace.js:1
    y ace.js:1
    edit ace.js:1
    didInsertElement _admin-58c216d6bb14f7ee8451b6ef94ece0c6ea56c69b044ed8f4eea7934ec2ca3df8.js:315
    n ace.js:1
    a ace.js:1
    didInsertElement _admin-58c216d6bb14f7ee8451b6ef94ece0c6ea56c69b044ed8f4eea7934ec2ca3df8.js:303
    jQuery 10
    onreadystatechange _application-860b04b192b4dea3c5cb7e8d5e3d423bcf05a15ff2f4d8faf26a5d550ab169d2.js:10090
    c _application-860b04b192b4dea3c5cb7e8d5e3d423bcf05a15ff2f4d8faf26a5d550ab169d2.js:10083
    c _application-860b04b192b4dea3c5cb7e8d5e3d423bcf05a15ff2f4d8faf26a5d550ab169d2.js:10168
    jQuery 2
    c _application-860b04b192b4dea3c5cb7e8d5e3d423bcf05a15ff2f4d8faf26a5d550ab169d2.js:10130
    didInsertElement _admin-58c216d6bb14f7ee8451b6ef94ece0c6ea56c69b044ed8f4eea7934ec2ca3df8.js:302
    jQuery 26

:pray: With thanks in advance and kind greets :heart:

1 Like

What is the button with the missing icon above supposed to do? It looks like it might be a plugin or a theme component that adds it, and maybe it hasn’t registered the icon properly?

This can also be an issue with a plugin. One way to find out is to go to /safe-mode, disable all plugins and themes and see whether editing the CSS then works. If it does, it’s an issue with a plugin.

1 Like

There was a wrench icon (Topic Actions). Also, as you can (cannot) see on the screenshot, left to “Reply” text, you would normally see heart, chain, pen, bookmark…
I will check on your advice.
Update, tried in Safe mode, no change :frowning:

Hmm, yeah, that’s odd. Can you share which plugins are being used on your site?

Update: this is a really odd issue, it consistently affects icons in some places in the app but not others. Maybe try redeploying?

Yeah, it is very strange.
We use only these two plugins:

  • docker_manager v0.1
  • styleguide v0.2

Ok @romanhruska I think I have a possible explanation.

Something in your instance is forcing an https prefix for an SVG namespace constant. When I inspect the JS code, the equivalent for this line in core returns where as you can see in core, it should be (I also tested locally, edited that line to use https, and I have a perfect repro.)

Do you have any patches that do this? If not, does your server do some magic to ensure all http strings in JS are turned into https?

1 Like

You are absolutely right. This was the issue. Now the guys from servers changed the setup and the icons as well as the editor are working! Thank you a lot!!!

We are still fighting with the mixed-content warning. Some images such as icons or logo are in code as HTTP:// and our server magic seems to not work on them. Any ideas on this?

Once again, thank you for your hint!

1 Like

Oh great!

Was your site internally on http and then moved to https? You might have to ensure that SiteSetting.force_https returns true, and if that is the case, you might need to do a rebake. From the command line, you would need to run bundle exec rake posts:rebake.