Tags: the tag selector has no id or name (Chrome Issues panel on every page of a member)
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 1/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Estancado
- Stack tecnológico
- php
- Área
- accessibility
Línea de trabajo
Read system/core/tags.php around line 109 in tagList() and inspect the linked pull request #623, which already contains the proposed fix. The issue reports a Chrome accessibility warning for the tag selector and supplies a browser test that fails on main and passes on the branch; completion is having an id and accessible name and confirming that test passes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Rule. A form field must have an id or a name attribute, so the browser can autofill it and assistive
technology can address it. Chrome reports a field without either in its Issues panel
("A form field element should have an id or name attribute", FormEmptyIdAndNameAttributesForInputError).
Place. system/core/tags.php:109 (upstream/main d97ab7b), in tagList():
$html.= '<select class="remainingTags" onchange="selectTag(this, this.value);">';
Evidence. Logged in as a member or administrator, every page with a tag list (home page, text page, article,
mailing list, festival, ...) gets one Issues-panel report, on desktop and phone, PHP 8.2 and 8.5:
GenericIssue FormEmptyIdAndNameAttributesForInputError
<select class="remainingTags" onchange="selectTag(this, this.value);"><option value="_add_" selected="" disabled="">toevoegen...</option>
The select also has no label, so a screen reader announces it without a name.
Fix. Give the select an id and an accessible name. The tag list is on a page once (hypha_indexTags() and the
three Ajax answers that replace #tagList), so a fixed id is unique:
$html.= '<select id="remainingTags" class="remainingTags" aria-label="'.htmlspecialchars(__('tags')).'" onchange="selectTag(this, this.value);">';
No name: the select sits in the page-wide form, and a name would post its value with every command.
A pull request with the fix follows (commit "tags: Give the tag selector an id and an accessible name"), tested on PHP
8.2 and 8.5 with a browser test that reads the Issues panel of Chrome (fails on main, passes on the branch).
Found by a crawl of every page type with Chrome, reading the console and the Issues panel, as visitor, member and administrator, on desktop and phone.
🤖 Generated with Claude Code
- Lenguaje dominante
- JavaScript
- Estrellas
- 5
- Forks
- 9
- Merge medio
- 18 h 7 min
- PR fusionados (30 d)
- 11
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PlanBCode/hypha
-
Component: User interface Impact: Low Level: Easy Pagetype: Peer reviewed article Type: Bug Value: Visitors
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Impact: Medium Level: Easy Type: Bug Value: Users
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Impact: Low Level: Easy Pagetype: Festival Type: Bug Value: Coders
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Impact: Medium Level: Easy Pagetype: Mailinglist Type: Bug Value: Users
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
Impact: Low Level: Easy Type: Bug Value: Coders
Dificultad 1/5 1-3 horas Aptitud para principiantes 85/100
PlanBCode/hypha#586 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de PlanBCode/hypha
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Aethelgard-Systems/agent-postbox#32 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
SamuelNDCE/plume#42 ·
Los mantenedores suelen responder en 1 día
-
[UI] Theme Provider Props table overflows on mobile viewportsPosiblemente ocupada @SajanBisht la tomó hoy. Abiertoframework/gatsby help wanted kind/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
layer5io/layer5#8264 · 1 comentario ·
Los mantenedores suelen responder en 3 días