Route conflict on fingerprint plugin

Continuing the discussion from Discourse Fingerprint - Browser Fingerprinting Plugin:

This is happening because of a route conflict.

Core defines

admin_plugins GET /admin/plugins/:plugin_id(.:format) admin/plugin#show {format: /(json|html|\*\/\*)/}

The plugin defines this

admin_plugins_fingerprint GET  /admin/plugins/fingerprint(.:format) discourse_fingerprint/fingerprint_admin#index

Instead of returning the results from the fingerprint_admin#index, we get the results from the admin/plugin#show controller, i.e. the plugin metadata.

there are a few more issues in this plugin like the route format deprecation

and the plugin.rb metadata pointing to the old URL for this plugin # url: https://github.com/udan11/discourse-fingerprint.git

2 Likes

Richard Richard he’s the man, if he can’t do it no one can! Yaaaay! So no more annoying errors?

1 Like

PR here Resolve route conflict and small fixes - Pull Request #95 - discourse/discourse-fingerprint - GitHub