Désinstallation
Filonio ne modifie ni les demandes, ni les projets, ni le wiki, ni les réglages du cœur : la désinstallation rend l’interface d’origine sans perte de données.
Revenir à l’interface d’origine sans désinstaller
Choisissez un autre thème (« Par défaut ») dans Administration › Paramètres › Affichage, ou :
bundle exec rails runner -e production 'Setting.ui_theme = ""'
Le plugin reste installé mais n’active plus rien tant que le thème Filonio n’est pas choisi : ni attribut
data-filonio, ni bandeau, ni entrée Tableau dans les menus (la page du tableau reste accessible par son
adresse, en rendu brut). L’entrée Tableau dépend du thème choisi, pas de la licence : thème Filonio choisi
mais licence terminée, elle reste visible dans l’interface d’origine et ouvre le tableau en rendu brut.
Désinstaller
Revenez au thème par défaut (ci-dessus).
Retirez les tables du plugin (état de la licence et journal de ses événements) :
bundle exec rake redmine:plugins:migrate NAME=filonio VERSION=0 RAILS_ENV=productionSupprimez les dossiers :
rm -rf plugins/filonio rm -rf themes/filonio # public/themes/filonio sur Redmine 5.1.xRedémarrez Redmine (voir Installation).
Ce qui reste dans la base (sans effet)
| Donnée | Où | Effet si elle reste |
|---|---|---|
| Préférences d’apparence des utilisateurs | user_preferences.others, clés filonio_* | Aucun : ignorées sans le plugin. |
| Réglages du plugin | table settings, ligne plugin_filonio | Aucun : relus seulement par le plugin. |
Pour les retirer aussi (facultatif, après la désinstallation ; commandes sans syntaxe propre à une base de données, le filtre exact est fait en Ruby) :
# compter d'abord
bundle exec rails runner -e production '
f = ->(p) { p.others.keys.any? { |k| k.to_s.start_with?("filonio_") } }
puts UserPreference.where("others LIKE ?", "%filonio%").count(&f)
puts Setting.where(name: "plugin_filonio").count'
# puis supprimer
bundle exec rails runner -e production '
UserPreference.where("others LIKE ?", "%filonio%").find_each do |p|
keys = p.others.keys.select { |k| k.to_s.start_with?("filonio_") }
next if keys.empty?
keys.each { |k| p.others.delete(k) }
p.save!
end
Setting.where(name: "plugin_filonio").delete_all'
Copie de la documentation livrée avec Filonio (dossier docs/ des archives).