Modules: Difference between revisions

1,015 bytes added ,  5 December 2024
m
 
(11 intermediate revisions by the same user not shown)
== Introduction ==
Modules are the basic building blocks of CumulusUtils. Identifying modules on the commandline they become synonym with commands to CumulusUtils and can be used in a users own website. The [[Website Generator|website]] is not seen as a module but it is the CUtils own aggregate of the modules.
 
== The list of modules ==
CumulusUtils offers the following modules (which can be used as commands):
#[[SysInfo]]
#[[Forecast]]
#[[StationMap]]
#[[UserReports]]
#[[pwsFWI]]
#[[RecordsExtra - Top10Sensors|Top10ExtraSensors]]
#[[Custom Logs]]
#[[Graphs]]
#[[Yadr]]
#[[Records]]
#[[NOAA]]
#[[Forecast]]
#[[StationMap]]
#[[UserReports]]
#[[Records - Top10|Top10]]
#[[Records - DayRecords|DayRecords]]
#[[AirLink]] (before version 6.1 this was [[AirQuality]])
#[[ChartsCompiler]]
#[[MeteoCam]]
#[[Diary]]
#[[UserAskedData]]
 
== The multiple module commands ==
In addition to the true modules which are equivalent to commands, there are commands which are strictly spoken not modules because they do not comprise a single functionality:
#[[Website Generator|Website]] => generates the website which consists of all modules, the inclusion of the libraries is embedded in website's index.html.
#[[UserAskedData]] => a specific command used for generating JSON datafiles when required by other modules (Compilere.g. ''AirLink'', ''Extra Sensors'' and/or AirQuality''CustomLogs'')
#[[All]] => generates all modules without the context of the website, the inclusion of the libraries is embedded in the generated files.
#[[UserAskedData]] => a specific command used for generating JSON datafiles when required by other modules (Compiler and/or AirQuality)
#[[ChartsCompiler|CompileOnly]] => a command which activates the compiler only. This is a very specific command with more than one effect. Please check out its own page.
 
If you use modules but want the resulting server location outside of your main website location (e.g. in a subdirectory CUtils) then please create that directory and set your uploads for CUtils accordingly. To have your website find the specific realtime values (the JSON files) specifically generated for CUtils, than run the [[UserAskedData]] command and set the parameter where to locate those data. In the case as above:
DoModular=true
ModulePath=<path>
''DoModular'' and the command ''Website'' are incompatibe
 
== Javascript libraries ==
TheWhen usageusing of javascript librariesthe like[[Website jQueryGenerator]], Highchartsall ormodules Leafletare isused controlledimplicitly. byModules, thewith usersome whoexceptions, alreadycan maybe haveused these libraries includedstandalone in hisany website onby anotherincluding level.the Inoutput of CumulusUtils in that casewebsite. aWhen secondusing inclusionthe isstandalone notmode wanted.you Thereforeneed twoto explicitbe aware parametersof existthe which[[cumulusutils.ini|inifile governparameters]] these(section situations:general) ''GeneratejQueryInclude'' and ''DoLibraryIncludes''.
 
#GeneratejQueryInclude will - if true - generate the required jQuery library reference line on top of the module.
As [https://jquery.com/ jQuery] is a requirement for almost all modules (with menu's), CumulusUtils has provided a parameter ''GeneratejQueryInclude'' in the section [General] which the user can set to true or false. If his site has already a general inclusion of this library or another version, set it to false. If you have no idea what this is about, set it to true or start reading about javascript libraries.
#DoLibraryIncludes will - if true - generate the required library references (e.g. HighCharts, Leaflet etc...) on top of the module.
 
If you manage these libraries in your website yourself set these parameter values to false.
Libraries for Highcharts or Leaflet are included when required in a specific module IF the inifile parameter ''DoLibraryIncludes'' is true (default). Set to false if you already use the libraries on another level. If you have no idea what this is about, set it to true or start reading about javascript libraries.
If the modules don't work and you have no idea what this is about, set these values to true.
 
If you use the [[Website Generator]], '''set both parameters to false'''.
 
== Commandline parameters (v7 and up) ==
 
 
To have modules work properly with the commandline parameters introduced in version 7 of CUtils, you need to use the runtime library for ''CumulusUtils''
<pre>
<script src='lib/cumulusutils.js'></script>
</pre>
This library is generated with the website command separately with the ''CUlib'' command. <br>
It has it's [[CumulusUtils Runtime Library|own entry in the wiki]].
 
You can also use - i.s.o. the library above - a script in your own HTML file:
<pre>
<script>
const urlParams = new URLSearchParams(window.location.search);
</script>
</pre>
 
[[Category:CumulusUtils]]