Open Bug 1943296 Opened 21 days ago Updated 3 days ago

www.poderjudicial.es - "CONSULTAR" button does not work after filling the required fields

Categories

(Web Compatibility :: Site Reports, defect, P1)

Firefox 136
Desktop
Windows 10

Tracking

(Webcompat Priority:P1, firefox-esr115 wontfix, firefox-esr128 affected, firefox134 wontfix, firefox135 fix-optional, firefox136 fix-optional)

Webcompat Priority P1
Tracking Status
firefox-esr115 --- wontfix
firefox-esr128 --- affected
firefox134 --- wontfix
firefox135 --- fix-optional
firefox136 --- fix-optional

People

(Reporter: ctanase, Unassigned)

References

(Depends on 1 open bug, )

Details

(Keywords: regression, webcompat:platform-bug, webcompat:site-report, Whiteboard: [webcompat-source:web-bugs])

User Story

platform:windows,mac,linux,android
impact:workflow-broken
configuration:general
affects:all
branch:release
diagnosis-team:dom
user-impact-score:600

Attachments

(1 file)

Environment:
Operating system: Windows 10
Firefox version: Firefox 133.0/134/136

Steps to reproduce:

  1. Go to https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/
  2. Scroll to "Información:" section.
  3. Fill in the form.
  4. Click "CONSULTAR" button.

Expected Behavior:
Shows the results.

Actual Behavior:
Nothing happens.

Notes:

  • Reproduces regardless of the status of ETP
  • Reproduces in firefox-nightly, and firefox-release
  • Does not reproduce in chrome

Created from https://github.com/webcompat/web-bugs/issues/145889

Version: unspecified → Firefox 136

Since nightly and release are affected, beta will likely be affected too.
For more information, please visit BugBot documentation.

The following error shows when click the button.

Uncaught DOMException: Permission denied to access property Symbol.toPrimitive on cross-origin object
    isDate https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:946
    validaFechaDDMMAAAA https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:957
    submitFormCalculo https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:818
    onclick https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:1
Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo:946
    isDate https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:946
    validaFechaDDMMAAAA https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:957
    submitFormCalculo https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:818
    onclick https://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/:1

:mgaudet, since you are the author of the regressor, bug 1708236, could you take a look? Also, could you set the severity field?

For more information, please visit BugBot documentation.

Flags: needinfo?(mgaudet)

Pretty sure the regression window is incorrect (sorry Alice0755). Prior to that bug landing instead a different part of the page throws an exception and thus the setup is different. So while things "work", I suspect that's more an artifact of

Uncaught SyntaxError: private fields are not currently supported

than anything else.

Some JS Debugging notes:

		function isDate(dtStr){
			var daysInMonth = DaysArray(12); // Almost certainly this is supposed to be new DaysArray; instead this is window. 
                       // -- snip ---
                       // In chrome, daysInMonth[1] == undefined. 
                       // In Firefox, daysInMonth[1] == window (again?) 
			if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
				return false;
			}
		}

Note: in Firefox: Object.getOwnPropertyDescriptor(window, "1") -> { value: Window, writable: false, enumerable: true, configurable: true }

So somewhere earlier on the page load in Firefox a non-writable value for 1 was assigned to window, leading to DayArray being unable to set it.

Unfortunately my devtools-fu has exhausted me: I'm unable to figure out where the property is defined.

Flags: needinfo?(mgaudet)
No longer regressed by: 1708236
Webcompat Priority: --- → P3
Severity: -- → S2
User Story: (updated)
Webcompat Priority: P3 → P1
Priority: -- → P1

It is this code that fails day > daysInMonth[month].

daysInMonth is a window object, and the just loading the site and running something like 28 > window[1] in the devtools' console can reproduce this error.

This falls on the borderline between DOM and JS, looking at the commit history, it was bz who implemented all these checks.

Matthew, do you have ideas about this? I am thinking to ask jandom or peterv, however since you are on this bug already, so checking with you first. Thanks!

Flags: needinfo?(mgaudet)

So Firefox and Chrome are diverging before that test, so, I suspect that the failure here is a symptom of the divergence not the root cause.

In Chrome:

  • window: The current window for poderjudicial.es
  • window[1]: undefined

In Firefox:


Doing some poking. I see two loads from cdn.insuit.net

  1. https://cdn.insuit.net/i4tservice/js/insuit-config.js?9.0.17-68-000
  2. https://cdn.insuit.net/i4tservice/js/insuit-app.js

If I block the load of insuit-app.js, it appears the page does start working


The big question I can't answer is: who/why is there an own property 1 on the window object.

Flags: needinfo?(mgaudet)

Peter, do you have thoughts about this?

Flags: needinfo?(peterv)

Sure, WindowProxy has indexed properties for iframes (see https://html.spec.whatwg.org/#windowproxy-getownproperty step 2). Does the page have any frames (either in Firefox or Chrome)?

Huh! I did not know that (and was looking for the wrong thing on MDN). So basically, Chrome has no iframe for some reason and we do, leading to this exception.

Depends on: 1945081

This looks like a bug in Firefox, filed the platform bug to track this.

Flags: needinfo?(peterv)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: