Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Changes to database selection - Saving connections

Abierto
#663 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
php, wordpress

Línea de trabajo

Empieza revisando cómo almacena actualmente el plugin las credenciales de base de datos en los gráficos y, después, sigue las rutas de migración e importación/exportación. A continuación, inspecciona la UI de selección de base de datos de los gráficos y la estructura del menú de administración de WordPress. Se considera terminado cuando las conexiones son entidades independientes y reutilizables, los gráficos existentes se han migrado, la importación/exportación sigue siendo compatible y los usuarios pueden gestionar y seleccionar conexiones como se describe.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

Moved from https://github.com/Codeinwp/visualizer-pro/issues/248

Context: Multiple users want to be able to re-use old connections instead of having to retype the details. We want to give them an option to re-use an older connection for that purpose.

I also thought of the scenario, if a connection has a password change, at the moment users need to modify every chart to update the change. Making connections their own entity (that can be modified one and have the changes reflected on all charts that selected it) would make sense.

Here are the changes involved for this:

1- Creation of 'database connections'

Currently the credentials are tied to a specific chart, we want to separate the chart from the connection so they become separate entities.

Connections would then be stored separately from the chart, and charts would have a "connection_id" linking to the connection.

2- Migration

Existing credentials would have to be migrated to the new format, meaning for each chart with a connection to an external database, a connection record would be created with an automated name ex : "MySQL001, MySQL002" etc. and the charts would link to it with the corresponding ID.

3- Import/Export

We have to ensure import/export will work with the new structure.

4- Manage Connections page

In the menu, between "Add new chart" and "support, we would have a "Manage Connections" page

This page would be a standard WP crud page (like feedzy's https://i.imgur.com/uBFwOop.png) and allow users to modify all details of the connection, including the name (unique) and credentials. The modification would happen on a separate page (that we can link to later). Upon submitting modifications, a confirmation message will appear: "Are you sure you want to modify this connection? This will affect all charts linked to this connection".

It would also allow creating and deleting a connection, but would not allow deleting a connection linked to a chart.

We could also display a list of charts that use this connection and upon clicking on the chart name in the last, it could open it in edit mode.

5- Update the UI to select a database

Currently we have this: https://i.imgur.com/q6DIkOt.png

Changes:

  • Reword the header to "Select a database connection"
  • Remove the accordion (we want to make it more obvious that the user has more options)
  • Upon selecting an option that is not Wordpress DB, a second dropdown will appear containing "New Connection" as well as all existing connections for this database type.

If the user chooses an existing connection, no other fields need to be displayed. We can have a button on the right of it that says "View/Edit this connection" which would open the edit page in a new tab.

If the user chooses "New Connection", it will be same as this: https://i.imgur.com/PS0O9rQ.png

Except there will be the "New Connection" dropdown and the connection name.

The connection will be created/saved when the user saves the chart itself, if the name was left empty, it will have a generic unique name (ex: MySQL001)

Lenguaje dominante
PHP
Estrellas
108
Forks
29
Merge medio
1 d 5 h
PR fusionados (30 d)
8

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Codeinwp/visualizer

Todos los issues de Codeinwp/visualizer

Issues similares

Más issues de PHP

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.