It is possible to make the plugin either totally role based (so that students do not see the button in editor toolbar) or to enable the filter only context based (leave it available but not enabled site wide) so that all users of context (for example course where teacher has enabled the filter) can see the button in editor toolbar and filtered strings are changed to JSXGraphs with GeogebraReader.js
You are right - I too would not like to see 20 applets loading in forum
The plugin is not using files at all - it is saving all data from Geogebra applet in plugin as a plain base64 string inside delimiters, a filter changes these strings to JSXGraph script tags and GeogebraReader.js is used to render the JSXGraphs. When you need to edit the graph, the plugin renders a Geogebra applet using the selected string - temporarely saved to a place holder (image) alt tag - and you are ready to use fully functional Geogebra applet to edit it. Or to open some external ggb file or save your content from plugin to a local ggb file, upload it as file to your site and use normal geogebra filter to render the file. But the plugin is not saving files to server - only strings to database.
Detection of Java in browser is as simple as
<script>
if (navigator.javaEnabled()) {do something};
</script>
but it may not be good enough because we need to detect also a proper version of Java ( Geogebra 4 requires Java 5+ ) and there are issues like https://addons.mozilla.org/en-US/firefox/blocked/p182 and finally we might need to use object tags with Geogebra... if possible.
Time-out required