X
Tap here to go to the mobile version of the site.

Support Forum

Fckeditor stopped working after upgrade to Firefox 17.0

Posted

Since updating Firefox to the latest version (17.0), the fckeditor has stopped working on my website. It will open but there are no icons and I cannot type anything. If there was text there before, it doesn't show up when opening the fckeditor.

It works fine in Internet Explorer and was working earlier today in Firefox before I upgraded Firefox.

Hoping somebody can help.

Chosen solution

by gerv

The change which caused this problem is being reverted in Firefox 17.0.1.

However, any site which was broken by this change is also broken in Firefox for Android and Firefox OS, which have had the updated user agent for quite some time. Therefore, you are encouraged to fix them anyway.

Gerv

Read this answer in context 3

Helpful replies

To fix this problem, simply edit the following:

/fckeditor/fckeditor_php5.php (go to line 58) and change it from:

return ($iVersion >= 20030210) ;

to

return TRUE ;

Have fun,

mrcityrunner

Go to answer 19

In an unwise but common programming pattern, web developers scan the "User Agent" string which identifies the browser to try and determine its capabilities. In Firefox 17, we made a change to that string to eliminate a part of it which had been static and vestigial for nearly 3 years, and replace it with a more useful version number. Unfortunately, there appears to be more old code than we thought which takes action based on the original value.

This is not the case for IE and Chrome because a) those browsers have different user agents which are detected in different ways, and b) presumably they have not recently made a change. Although the User Agent does change when a new version is released of e.g. IE, or for IE Metro with Touch, or for other similar reasons. This is why User Agent sniffing is a bad idea.

To fix your customer's websites, you can either wait for Firefox 17.0.1 or you can find the code which checks the "gecko date" in the User Agent string and work out what it's doing with that information and how to get it to do the right thing instead of the wrong thing with the new value.

Old (Firefox 16 and 17.0.1): Gecko/20100101

"New" (Firefox 17.0.0): Gecko/17.0

"If you release an update that breaks websites, you are going to lose market share, plain and simple."

The web is big enough and diverse enough that pretty much any change will break _something_. The web is a living and growing thing; that means that both browsers and sites need to be actively maintained to account for changes in the other. Having said that, this breakage was unexpected and larger than anticipated, which is why we are reverting the change.

Go to answer 4

Additional System Details

Installed Plug-ins

  • Next Generation Java Plug-in 1.6.0_37 for Mozilla browsers
  • NPRuntime Script Plug-in Library for Java(TM) Deploy
  • Shockwave Flash 11.4 r402
  • Google Update
  • iTunes Detector Plug-in
  • Adobe PDF Plug-In For Firefox and Netscape "9.5.2"
  • The QuickTime Plugin allows you to view a wide variety of multimedia content in Web pages. For more information, visit the QuickTime Web site.
  • 4.1.10329.0
  • GEPlugin
  • Adobe Shockwave for Director Netscape plug-in, version 11.5.9.620
  • DYMO Label Framework Plugin
  • CANON iMAGE GATEWAY Album Plugin Utility Module
  • The plug-in allows you to open and edit files using Microsoft Office applications
  • Office Authorization plug-in for NPAPI browsers

Application

  • User Agent: Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/17.0 Firefox/17.0

More Information

Krumok 0 solutions 6 answers
Posted

Same problem for me, temporary i have resolved reverting to version 16. I investigating and it is a problem with user agent, fckeditor does not recognize firefox 17 as compatible browser and does not show icons and toolbars and show only a textarea with source htm code. Please give a solution we use fckeditor in several our application and if firefox does not work we are forced to change browser

Modified by Krumok

mrcityrunner 0 solutions 8 answers
Posted

Helpful Reply

To fix this problem, simply edit the following:

/fckeditor/fckeditor_php5.php (go to line 58) and change it from:

return ($iVersion >= 20030210) ;

to

return TRUE ;

Have fun,

mrcityrunner

Modified by mrcityrunner

Krumok 0 solutions 6 answers
Posted

Does not work for me, i'm using fckeditor in asp.net 3.5 web application you think i have to modify some other files? thank you

mrcityrunner 0 solutions 8 answers
Posted

Oh - this fix worked for me as im using linux so its not asp...

Krumok 0 solutions 6 answers
Posted

i modify fckeditor.asp and fckeditor.js they as a same function FCKeditor_IsCompatibleBrowser() but does not work. yes the point is useragent but i cannot find the correct file to edit

aaargh

mrcityrunner 0 solutions 8 answers
Posted

maybe upgrade to ckeditor to resolve all issues...

Krumok 0 solutions 6 answers
Posted

thanks, i'm already using ckeditor in newer application, but we have two application in production using fckeditor and now we can't upgrade to ckeditor, we suggest to our users to use ff 16 or another browser

ywarnier 0 solutions 3 answers
Posted

Hi, I have the same problem here. The FCKeditor team (now CKEditor) say they don't support FCKeditor anymore, and if the only change is that the user agent is not recognized anymore, then it would be good to know what exactly changed and why, so as to provide a fix for our production systems.

I am the technical leader of the Chamilo LMS (GNU/GPL) project, we have hundreds of thousands of teachers using FCKeditor and we generally recommend them to use Firefox, but having automatic update provoking this puts us in a tricky situation, because we don't force our users to upgrade, so if we want to help them now, we're going to have to undertake major efforts of communication. Albeit not the fault of Firefox itself (basing the features on user agent detection has never been a good idea), it makes it difficult to keep promoting FF when problems happens too often (I have a worrying amount of personal reports of people being upset by the automatic updates breaking stuff lately).

Modified by ywarnier

mrcityrunner 0 solutions 8 answers
Posted

Ywarnier... Im in the exact same position. Luckily that fix I mention worked for me but I think its now time to migrate to ckeditor as I can only see more problems cropping up down the line..

ywarnier 0 solutions 3 answers
Posted

There's a reference here to an announcement of the change in the User-Agent (basically getting rid of the Gecko build date and replacing it with "17.0"): https://groups.google.com/forum/?fromgroups=#!topic/mozilla.engagement.developers/jzdH7q4JhoM

Taking that logic into account, the right patch for PHP-based applications would be to update fckeditor/fckeditor.php (as mentionned by mrcityrunner) and transforming:

    else if ( strpos($sAgent, 'Gecko/') !== false )
    {
        $iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ;
        return ($iVersion >= 20030210) ;
    }

into:

    else if ( strpos($sAgent, 'Gecko/') !== false )
    {
        $iVersion = substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ;
        // Special fix for Firefox 17 and followers
        if ( preg_match('/^\d{2,3}\.\d{1,4}\s/', $iVersion) ) {
          return true;
        }
        $iVersion = (int)$iVersion;
        return ($iVersion >= 20030210) ;
    }

Although mrcityrunner's patch above is perfectly valid, it could still happen that *another* browser with the Gecko string but without sufficient capabilities to support FCKEditor would match and thus provoke other bugs, so this version is just a little bit more precise.

Internally in Chamilo we've added this as a ticket for our community: http://support.chamilo.org/issues/5752

Krumok 0 solutions 6 answers
Posted

any solution to fckeditor in asp.net application?

Matt_G
  • Administrator
  • Moderator
379 solutions 1841 answers
Posted

Hey guys,

We are looking into this issue right now. Can you please list the affected versions of fckeditor that you are using? That would help us to figure out what exactly is happening.

Thanks!

mrcityrunner 0 solutions 8 answers
Posted

which file do i check in the /fckeditor folder to determine its version?

Modified by mrcityrunner

cibersistemas 0 solutions 1 answers
Posted

I've the same problem. I'm just using JS version, not PHP or ASP, and I thin the problem is on a "fckeditorcode_gecko.js" file in the following chunk of code to detect browser version:

--- var s = navigator.userAgent.toLowerCase(); var FCKBrowserInfo = {

   IsIE: /*@cc_on!@*/
   false,
   IsIE7: /*@cc_on!@*/
   false && (parseInt(s.match(/msie (\d+)/)[1], 10) >= 7),
   IsIE6: /*@cc_on!@*/
   false && (parseInt(s.match(/msie (\d+)/)[1], 10) >= 6),
   IsSafari: s.Contains(' applewebkit/'),
   IsOpera: !! window.opera,
   IsAIR: s.Contains(' adobeair/'),
   IsMac: s.Contains('macintosh')

}; (function (A) {

   A.IsGecko = (navigator.product == 'Gecko') && !A.IsSafari && !A.IsOpera;
   A.IsGeckoLike = (A.IsGecko || A.IsSafari || A.IsOpera);
   if (A.IsGecko) {
       var B = s.match(/rv:(\d+\.\d+)/);
       var C = B && parseFloat(B[1]);
       if (C) {
           A.IsGecko10 = (C < 1.8);
           A.IsGecko19 = (C > 1.8);
       }
   }

})(FCKBrowserInfo); ---

Anyone knows how to update this to recognize Firefox 17?

Posted

Question owner

I've just had a look in my fckeditor.js file and I think it's version 2.4.3 that I'm running. Hope you can come up with a solution soon.

ywarnier 0 solutions 3 answers
Posted

We're using 2.6.5.

@cibersistemas: as far as I can see the JS code you mention should work with the new version (it checks the "rv:17.0" part is there and the number (17.0) is > 1.8, so everything is fine there. If it doesn't work, it is probably coming from somewhere else.

As indicated in the post linked above, the new User-Agent string is something like this: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/17.0 Firefox/17.0

The "rv:17.0" bit has only changed slightly in the version number, but it doesn't influence the code you quoted.

mrcityrunner 0 solutions 8 answers
Posted

Hi Matt - my fckeditor version is 2.6.4

Firefox 17 has broken the dhtml menu's in my websites as well as fckeditor loading. Logs of bugs and issues to resolve causing a lot of headaches for web designers like myself supporting lots of clients we have told to use Firefox instead of other browsers - I wish more testing was done before it was rolled out. Chrome is looking stronger than ever now.

the-edmeister
  • Top 10 Contributor
  • Moderator
2748 solutions 21597 answers
Posted

Let me be the devil's advocate here, why not use the Aurora or Beta versions of Firefox to locate problems such as this, long before a new version of Firefox is even released. When you find problems like this, file a Bug report to let the development team that there is a problem to give them time to fix it before release.

Firefox is a "community effort" and with your input problems like this might be avoided.


Then again, you're talking about a piece of software (fckeditor) which might be almost 10 years old and isn't even supported by its' developer any longer.

Krumok 0 solutions 6 answers
Posted

I resolved for fckeditor in asp.net application using fckeditor.net control: from fckeditor.net source i modify FCKeditor.cs file like that:

if ( sUserAgent.IndexOf( "Gecko/" ) >= 0 ) { Match oMatch = Regex.Match( request.UserAgent, @"(?<=Gecko/)\d{8}" ); if ( sUserAgent.IndexOf( "Gecko/17" ) >= 0 ) { return true; } else { return ( oMatch.Success && int.Parse( oMatch.Value, CultureInfo.InvariantCulture ) >= 20030210 ); } }

rebuild and updating the .dll in my project everything works, now i refine the gecko/17 control with some regexp but this approch works, for application using fckeditor.net dll you have to modify the source and rebuild i found the source here: http://sourceforge.net/projects/fckeditor/files/FCKeditor.Net/

gerv 3 solutions 30 answers
Posted

DO NOT implement fixes which will break again if we decide to switch this back (which is not entirely out of the question).

ywarnier's solution will break in about 10 years time, when the Firefox version number gets over 100.

Best thing is to eliminate UA sniffing and do feature detection. But, if you must know the version of Gecko, look at the numbers following the "rv:" token.

Gerv