admin, IE8, sorting process hanging

Bug #730547 reported by Lex Oulu
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
webtrees
Fix Released
Critical
Rob Peters

Bug Description

WT 1.1.1, admin features.
Not using the compatibility mode in IE8 fixs the layout of the screen, but does not fix the sorting problem.
Eg. select Users, select 'Last logged in', the sorting hangs in 'loading'. Same problem does not occur in Firefox.

Tags: admin
Revision history for this message
wooc (wooc) wrote :
Revision history for this message
kiwi (kiwi3685-deactivatedaccount) wrote :

No, not related to that bug. At svn 11430 it is still a problem. Logs will not display in any version of IE as far as I can tell.

Revision history for this message
kiwi (kiwi3685-deactivatedaccount) wrote :

I have no idea what the cause of this is, but as many users cannot yet upgrade to IE9, its pretty critical, as it renders the user lists and log displays unusable. (Log display doesn't even work in IE9)

Changed in webtrees:
status: New → Confirmed
importance: Undecided → Critical
Revision history for this message
Rob Peters (makitso) wrote :

This might be the jquery error:

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0)
Timestamp: Thu, 5 May 2011 11:02:12 UTC

Message: Unexpected call to method or property access.
Line: 16
Char: 56222
Code: 0
URI: http://192.168.1.103/js/jquery/jquery.min.js

Revision history for this message
fisharebest (fisharebest) wrote :

Would you be able to replace jquery.min.js with a non-minified version and repeat?

Revision history for this message
Rob Peters (makitso) wrote :

Sure -- but where do I get a non-modified version?? I can test it tonight.

Revision history for this message
Rob Peters (makitso) wrote :

I can get 1.6 off the web but I think were on 1.5??

Revision history for this message
Rob Peters (makitso) wrote :

Never mind, I found the non-modified version :-)

Revision history for this message
Rob Peters (makitso) wrote :

Greg,

Error:
Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0)
Timestamp: Thu, 5 May 2011 22:47:21 UTC

Message: Unexpected call to method or property access.
Line: 5148
Char: 5
Code: 0

Code:

 append: function() {
  return this.domManip(arguments, true, function( elem ) {
   if ( this.nodeType === 1 ) {
    this.appendChild( elem ); <----------Line 5148
   }
  });
 },

Revision history for this message
kiwi (kiwi3685-deactivatedaccount) wrote :

140,000 hits in Google search for "ie8 appendChild error"

Revision history for this message
fisharebest (fisharebest) wrote :

jQuery 1.6 was released very recently. I wonder if it helps?

Revision history for this message
Rob Peters (makitso) wrote :

Sorry Greg, the same error in the same function exists with 1.6.

Revision history for this message
Rob Peters (makitso) wrote :

Looks like its coming from admin_users.php appendChild?

    "fnDrawCallback": function() {
     // Our JSON responses include JavaScript as well as HTML. This does not get
     // executed (except for some versions of Firefox?). So, extract it, and add
     // it to its own DOM element
     jQuery('#list script').each(function() {
      var script=document.createElement('script');
      script.type='text/javascript';
      jQuery(script).text(jQuery(this).text());
      document.body.appendChild(script);
     }).remove();
    }

Revision history for this message
Rob Peters (makitso) wrote :

Greg, since the comment suggests some little use function, I deleted this code out of the admin_users.php script and the IE8 problem went away. However, I have no idea what the impact of doing this is to other browsers.

Revision history for this message
Rob Peters (makitso) wrote :

Greg, I tested on IE7/8/9, Opera, Chrome and FF 3.6 and 4 with lines below commented out and no bad effects. However, I will defer to you on the final decision.

    "fnDrawCallback": function() {
     // Our JSON responses include JavaScript as well as HTML. This does not get
     // executed (except for some versions of Firefox?). So, extract it, and add
     // it to its own DOM element

     //jQuery('#list script').each(function() {
     // var script=document.createElement('script');
     // script.type='text/javascript';
     // jQuery(script).text(jQuery(this).text());
     // document.body.appendChild(script);
     //}).remove();

Revision history for this message
fisharebest (fisharebest) wrote :

This code is what makes the inline-editing work .

When you remove it, you cannot edit user's details.

Revision history for this message
kiwi (kiwi3685-deactivatedaccount) wrote :

I'm guessing a little, but this link "seems" to most closely describe our issue, and has links to possible solutions (which sadly I totally do not understand :-(( )

http://stackoverflow.com/questions/436710/element-appendchild-chokes-in-ie

Just a caution as well - the code quoted above by Rob may be the issue on the users page, but the issue also exists on the site logs page, so it may not be the whole problem.

Revision history for this message
Rob Peters (makitso) wrote :

Unfortunately, appendChild is not in the logs code and, IE8 does not throw an error on the logs problem :-(

Revision history for this message
Rob Peters (makitso) wrote :

jQuery 1.6 does not fix the log problem.

Revision history for this message
fisharebest (fisharebest) wrote :

I have just upgraded the datatables library from 1.7.6 to 1.8.1

Could any IE users tell me if this help.

Revision history for this message
haggis (haggis) wrote : RE: [Bug 730547] Re: admin, IE8, sorting process hanging

Hi
I still cannot view logs in IE9 but am able to view them in FF5
In IE9 I just get the "Loading..." indicator regardless of what criteria I enter.
Regards
Malcolm (haggis)
PS. I'm sure you're aware webtrees.net is down currently.
In IE9 I just get a 500 response code, but in FF5 I get this:
jtablesession::Store Failed
DB function failed with error number 145
Table
 './webtrees/jos_session' is marked as crashed and should be repaired
SQL=INSERT INTO `jos_session` (
`session_id`,`time`,`username`,`gid`,`guest`,`client_id` ) VALUES (
'0d1sis6n01bb65384908oshsq5','1311332471','','0','1','0' )

> Date: Fri, 22 Jul 2011 08:26:18 +0000
> From: <email address hidden>
> To: <email address hidden>
> Subject: [Bug 730547] Re: admin, IE8, sorting process hanging
>
> I have just upgraded the datatables library from 1.7.6 to 1.8.1
>
> Could any IE users tell me if this help.
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (801489).
> https://bugs.launchpad.net/bugs/730547
>
> Title:
> admin, IE8, sorting process hanging
>
> Status in webtrees:
> Confirmed
>
> Bug description:
> WT 1.1.1, admin features.
> Not using the compatibility mode in IE8 fixs the layout of the screen, but does not fix the sorting problem.
> Eg. select Users, select 'Last logged in', the sorting hangs in 'loading'. Same problem does not occur in Firefox.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/webtrees/+bug/730547/+subscriptions

Revision history for this message
Rob Peters (makitso) wrote :

By deleting line 174 (latest SVN) of admin_site_logs.php appears to fix this problem. The line is listed below.

header('Content-type: application/json; charset=utf8');

Revision history for this message
Rob Peters (makitso) wrote :

Fix worked for IE9 as well, tested in other browsers. Will commit to SVN

Changed in webtrees:
status: Confirmed → Fix Committed
assignee: nobody → makitso (makitso)
Revision history for this message
fisharebest (fisharebest) wrote :

I believe the application/json is still required, and that the "; charset=utf-8" is all that needs to be removed.

Can you try IE with just this line for me.

header('Content-type: application/json');

Revision history for this message
Rob Peters (makitso) wrote :

Greg,

Yes, that worked on IE8.

On 07/31/2011 01:51 PM, fisharebest wrote:
> I believe the application/json is still required, and that the ";
> charset=utf-8" is all that needs to be removed.
>
> Can you try IE with just this line for me.
>
> header('Content-type: application/json');
>

Revision history for this message
Rob Peters (makitso) wrote :

So,

it was the character set that was causing the problem?

On 07/31/2011 01:51 PM, fisharebest wrote:
> I believe the application/json is still required, and that the ";
> charset=utf-8" is all that needs to be removed.
>
> Can you try IE with just this line for me.
>
> header('Content-type: application/json');
>

Revision history for this message
fisharebest (fisharebest) wrote :

<<it was the character set that was causing the problem?>>

The charset is unnecessary for JSON data (which is always UTF8).

This link would suggest that IE does not like it if you explicitly specify the charset. Other browsers presumably just ignore it.

http://stackoverflow.com/questions/425854/jquery-ajax-request-failing-in-ie

Revision history for this message
Rob Peters (makitso) wrote :

Greg,

Interesting that IE7 caught an error on the admin log page. There was a
comma at the end of the JSON that it did not like. The other browser
were forgiving on this point.

On 07/31/2011 02:42 PM, fisharebest wrote:
> <<it was the character set that was causing the problem?>>
>
> The charset is unnecessary for JSON data (which is always UTF8).
>
> This link would suggest that IE does not like it if you explicitly
> specify the charset. Other browsers presumably just ignore it.
>
> http://stackoverflow.com/questions/425854/jquery-ajax-request-failing-
> in-ie
>

Revision history for this message
fisharebest (fisharebest) wrote :

Fix released in webtrees 1.2.2

Changed in webtrees:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.