Page MenuHomePhabricator

Multiselects in Special:CentralNotice sometimes load incorrectly
Open, MediumPublic

Description

screenshot of CentralNotice multiselect problem

Sometimes the multiselect boxes on Special:CentralNotice load all bunched up, making it impossible to use them (see attachment).

This occasionally occurred in the past, but seems to be happening more often recently. Reloading the page will usually fix it, although sometimes it requires multiple tries.

I've seen this happen on Chrome on both Windows (8.1) and MacOS.


Version: unspecified
Severity: normal

Attached:

broken_CN_multiselect.png (445×458 px, 16 KB)

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 3:44 AM
bzimport set Reference to bz72421.
bzimport added a subscriber: Unknown Object (MLST).

Yes. I've also seen this happen on Chrome, not on any other browser though.

Pcoombe raised the priority of this task from Medium to High.Feb 2 2015, 12:29 PM

Raising priority as this is often getting in the way of fundraising production work.

I haven't been able to reproduce this on Chromium/Linux... @Pcoombe, please send a campaign URL the next time you see this, just to reduce the number of variables.

Meanwhile, I have a tiny band-aid I'll apply.

gerritbot subscribed.

Change 188098 had a related patch set uploaded (by Awight):
Minutely improve multiselect load issue

https://gerrit.wikimedia.org/r/188098

Patch-For-Review

atgo lowered the priority of this task from High to Medium.Feb 27 2015, 1:14 AM

This still happens occasionally, on multiple campaign pages e.g. https://meta.wikimedia.org/w/index.php?title=Special:CentralNotice&method=listNoticeDetail&notice=C15_daDK_dsk_FR

I've also seen it occur on the main Special:CentralNotice page in the "Add a campaign" section.

Can someone review Adam's patch above?

I'm pretty sure this is a bug in the multiselect plugin we're using, you can see the same load "bump" on the developer's demo site: http://www.quasipartikel.at/multiselect/

Let's start looking at how to replace this plugin with something else...

Change 188098 merged by Pcoombe:
Minutely improve multiselect load issue

https://gerrit.wikimedia.org/r/188098

@awight are you saying you don't think your patch will fix this?

I'm certain my patch won't fix it. At the very best, it will make it happen slightly less often...

I think the next step is to talk to CN admins and figure out another solution that will work for their needs.

Removing from next Sprint. @Pcoombe and other CN admins if this is urgent LMK. It's marked as Normal so I'm prioritizing accordingly.

@atgo It's not urgent, just quite annoying when it happens. Normal priority is fine, especially given all the other stuff you're working on.

@awight Did a bit more research on this myself, and it seems to occur when connection is slow (tested using Chrome's network throttle). I don't see the same problem on http://www.quasipartikel.at/multiselect/ though: there is a loading bump there but it always seems to end up as the correct size.

AndyRussG : Jessica, is this happening intermittently, or always? Also, you could maybe send more details about the browser version and platform?

@AndyRussG : It happens intermittently, but quite often. I am using Google Chrome Version 42.0.2311.135 (64-bit). I just tried opening a campaign in Safari and it looked fine there. I can't recall if I have had the same problem using Safari in the past.. @Pcoombe, are you seeing this problem using Safari?

Many thanks!

With a slowed connection I was able to reproduce in Safari too, but not Firefox.

For testing a slow connection on Mac, you can download the Hardware IO Tools for Xcode 6.3 and use the "Network Link Conditioner" tool.

I'm noticing that I seem to have lowered the priority on this a while back without much discussion (sorry!). We've got it in our bug backlog, but right now the priority is working along on the banner history stuff. Please do let me know if I should escalate it!

Thanks @AndyRussG and @Pcoombe.

Actually, I see this happening to me quite often even with a fast internet connection.

@atgo: no problem and it doesn't have to be escalated. As Pcoombe mentioned earlier, it's not a huge deal, but it would be great to get it resolved when time permits :)

Thanks!

Yes, I see it occasionally when my connection is supposedly good too. It's just on a slowed connection is the only way I can reliably reproduce it.

awight removed awight as the assignee of this task.Feb 7 2016, 1:25 AM

Has anyone seen this issue recently? I wonder if it might have been fixed along the way with some other admin-UI JS fixes... Thanks!!!

I was just able to see it again, but only in FF (with debug=true) and not in Chrome. Only difference in the generated DOM seems to be the height and width applied directly to the style attributes:

--- <unnamed>
+++ <unnamed>
@@ -1,19 +1,19 @@
-<div class="ui-multiselect ui-helper-clearfix ui-widget" style="width: 83.9333px;">
-    <div class="selected" style="width: 41px;">
+<div class="ui-multiselect ui-helper-clearfix ui-widget" style="width: 499px;">
+    <div class="selected" style="width: 249px;">
         <div class="actions ui-widget-header ui-helper-clearfix"><span class="count">1 item selected</span><a href="#"
                                                                                                               class="remove-all">Remove
             all</a></div>
-        <ul class="selected connected-list" style="height: 1px;">
+        <ul class="selected connected-list" style="height: 142px;">
             <li class="ui-helper-hidden-accessible"></li>
             <li class="ui-state-default ui-element" title="ejegg" style=""><span class="ui-helper-hidden"></span>ejegg<a
                     href="#" class="action"><span class="ui-corner-all ui-icon ui-icon-minus"></span></a></li>
         </ul>
     </div>
-    <div class="available" style="width: 41px;">
+    <div class="available" style="width: 249px;">
         <div class="actions ui-widget-header ui-helper-clearfix"><input type="text"
                                                                         class="search empty ui-widget-content ui-corner-all webfonts-changed"><a
                 href="#" class="add-all">Select all</a></div>
-        <ul class="available connected-list" style="height: 1px;">
+        <ul class="available connected-list" style="height: 142px;">
             <li class="ui-helper-hidden-accessible"></li>
             <li class="ui-state-default ui-element" title="trunkwiki" style=""><span class="ui-helper-hidden"></span>trunkwiki<a
                     href="#" class="action"><span class="ui-corner-all ui-icon ui-icon-plus"></span></a></li>