Transformer les séries en tags
En français pour que tout le monde comprenne bien.
Aujourd'hui les séries sont des infos à part des karas, mais ne sont pas forcément nécessaires pour tous les karaokés. Les tags sous forme de fichiers sont relativement récents dans KM, et les séries étaient là avant les tags.
Le souci étant que les séries sont gérées différement des tags alors qu'au final il s'agit juste d'une métadonnée supplémentaire du kara. Il pourrait du coup très bien s'agir d'un type de tag supplémentaire qu'on y verrait que du feu.
Les tags sont également plus souples et ont été crées après les séries, où on a appris de nos erreurs.
Bénéfices:
- Plus de dossier series à gérer
- Plus besoin de tables séries, series_langs et autres vues matérialisées dans la base, ce qui implique :
- Génération plus rapide (une étape saute, même si celle des tags sera plus longue, ça sera fait d'un seul coup)
- Refresh des vues plus rapide (quand on édite un kara par exemple)
Introduisons ce changement en 3.3. En attendant il faudra que KM continue de générer des fichiers séries et des fichiers tags.
Du coup ça implique :
-
Ecrire un script pour transformer les séries actuelles en tags -
Supprimer les tables, écrire une migration SQL -
Ajouter un type de tag series -
Permettre de filtrer dans SystemPanel dnas la liste des tags par type -
Adapter les fonctions dans KM y faisant référence - La fonction d'écriture de génération/écriture des fichiers karas
- Affichage des séries par le player
- Retirer le code de la génération
- Retirer le code des downloads
- Retirer tout le code DAO
- Les fichiers series.json seront toujours générés mais à partir des infos du tag lors de la génération d'un kara, afin de garder les karas compatibles avec la <3.2 le temps de l atransition (par exemple en 3.4 on droppera ça)
-
Revoir l'API vu que les séries seront comme des tags -
Adapter le frontend -
Adapter systempanel (retrait du menu séries, adapter l'affichage des karas avec la nouvelle API)
-
Côté KM Server y'aura pas vraiment d'adaptation à faire dans un premier temps : l'API continuera de fournir des series.json pour les KM <3.2 et aura en plus la série dans le champ tags pour KM >3.3