Helioviewer fails to load when no "visible" image layers are specified

Bug #1421754 reported by Jeff Stys on 2015-02-13
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Helioviewer.org
Medium
Jeff Stys

Bug Description

I was trying to make a movie of COR2 images (to show the issue w/ their different observing modes), but Safari didn't want to show me COR2 images.

I tried using the 'link' button to see if the same problem happens in other browsers, but I'm just getting a white page, no content:

 http://helioviewer.org/?date=2013-02-09T18:13:15.000Z&imageScale=154.90822&centerX=0&centerY=0&imageLayers=%5BSTEREO_A,SECCHI,COR2,white-light,0,100%5D&eventLayers=&eventLabels=true

The page source looks like it's aborting part way through the page generation, as <head> is never closed.

-Joe

Jeff Stys (jstys-z) wrote :
Changed in helioviewer.org:
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Jeff Stys (jstys-z)
Jeff Stys (jstys-z) wrote :

http://helioviewer.org/?date=2013-02-09T18:13:15.000Z&imageScale=154.90822&centerX=0&centerY=0&imageLayers=%5BSTEREO_A,SECCHI,COR2,white-light,0,100%5D&eventLayers=&eventLabels=true

   {"observatory":"STEREO_A","instrument":"SECCHI","detector":"COR2","measurement":"white-light","name":"COR2-A","sourceId":29,"layeringOrder":0,"visible":false,"opacity":100}
   PHP Fatal error: Uncaught exception 'Exception' with message 'No valid and visible layers specified for request.'

   Page fails to load due to exception when layering order is set to zero and there are no other visible layers in the request.

http://helioviewer.org/?date=2013-02-09T18:13:15.000Z&imageScale=154.90822&centerX=0&centerY=0&imageLayers=%5BSTEREO_A,SECCHI,COR2,white-light,1,100%5D&eventLayers=&eventLabels=true

   {"observatory":"STEREO_A","instrument":"SECCHI","detector":"COR2","measurement":"white-light","name":"COR2-A","sourceId":29,"layeringOrder":1,"visible":true,"opacity":100}

   Page loads normally when setting layeringOrder > 0

Jeff Stys (jstys-z) wrote :

When generating a custom link, any layers that have had their visibility toggled off in the user interface end up with a layeringOrder parameter set to 0 (instead of layering orders defined in the database of 1, 2, and 3). LayeringOrder 0 is used to imply visible:false to
_decodeSingleLayerString().

This is fine. The problem is that an exception is being thrown in the case where none of the requested image layers are deemed to be visible. That is an overreaction.

Removing this exception allows the page to load normally, the appropriate image layer(s) to appear in the image layer accordion user interface, and those with layeringOrder set to 0 to have their visibility toggled off. Toggling an invisible layer back on and then generating a new shareable link confirms that the proper value of layering order is restored (see defined values in `datasources` table of the database).

Testing done on dev instance, pushed to staging server and retested.

Jeff Stys (jstys-z) wrote :

Note: confirmed correct behavior of movie and screenshot generation after bug fix applied.

Jeff Stys (jstys-z) on 2015-02-13
Changed in helioviewer.org:
status: Triaged → In Progress
status: In Progress → Fix Committed
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers