The Alternative Interface (ai.cmx): Difference between revisions

From Cumulus Wiki
Jump to navigationJump to search
(43 intermediate revisions by 2 users not shown)
Line 4: Line 4:
=== Overview ===
=== Overview ===


Following the release of the responsive default website for CumulusMX, I am now looking at the development of the main CumulusMX Interface.
The AI version 2 is here.  This is a major upgrade involving a complete rewrite of the HTML and Javascript.  Any errors in the last release of version 1 have been corrected and new features included:


Although the main focus of the Interface is to manage your weather station, it also provides your initial view of the data that you are collecting.  As such I feel that it should also use the same up-to-date features as the supplied public default website.
=== Features of AI2 ===


Like the public website supplied with CumulusMX, the AI uses colour themes and, wherever possible, is fully responsiveThis should make it easier to use on tablets and phones as well as the more traditional desktop/laptop screen.
Dark Mode has been implemented and 32 dark mode themes included to match the originalPlease note that these themes are no longer compatible with the default website.


Like the supplied Interface, the AI includes all the required pages to manage your weather station but also provides some additional information, especially on the dashboard page.  It also provides 30+ themes that can be applied to it and the default public website, it required.
Significant, but not exhaustive improvements have been added for accessibility.  Anyone requiring thee features with knowledge of how to improve the AI2 should contact me.
 
Page layouts have been improved and those pages with multiple panels can now be re-arranged by changing their order style in the html files.
 
Download AI2 here (Updated 16:45 on 28th April 2023) for build 3241
[[File:AI2.zip|Download Version 2 here]]
 
Please note that neither 'General Settings' or 'Advanced option' on the Internet settings ~ web/FTP' page doesn't expandPlease use the default interface for this if required.  All other features work as required.


=== How it fits with the existing inteface ===
=== How it fits with the existing inteface ===


The AI has been developed as an '''alternative''' to the existing Interface - it is '''not a replacement'''.  The existing Interface '''should always be retained''' as it is this that will be updated by Mark as and when required.
The AI has been developed as an '''addition''' to the existing Interface - it is '''not provided as a replacement'''.  The existing Interface '''should always be retained''' as it is this that will be updated by Mark as and when required.  As changes are made to CumulusMX your only access to them initially will be through the default interface provide by Mark.


As said above, the AI includes all the same resources needed to view the data being generated by your website; to configure your station and to edit data should errors occur.
As said above, the AI includes all the same resources needed to view the data being generated by your website; to configure your station and to edit data should errors occur.
Line 21: Line 28:
*The '''Header''' and '''Footer''' are both fixed by default.  This can be changed by you if required.
*The '''Header''' and '''Footer''' are both fixed by default.  This can be changed by you if required.
*The '''Menu''' has been adapted to take less space but includes a button to return to the default '''Interface''' pages.
*The '''Menu''' has been adapted to take less space but includes a button to return to the default '''Interface''' pages.
*The header area is now better at being responsive on small screens - reducing in size to give you more space for your data.
**I have also moved/duplicated some of the menu entries to other top level menu items.
*The header area is now better at being responsive on small screens - reducing in size to give you more space for your data on small screens.
=====Viewing generated data=====
=====Viewing generated data=====
*The '''Dashboard''' page
*The '''Dashboard''' page
**Shows the '''alarm LEDs''' at the top of the page.<br/>(These can be hidden/re-displayed using the button provided with the page title).
**Shows the '''alarm LEDs''' at the top of the page. These can be hidden/re-displayed using the button provided with the page title.
**The '''Sun and Moon''' rise & setting times are displayed in a popup; again using the button in the page title bar.
**The '''Sun and Moon''' rise & setting times are displayed in a popup; again using the button in the page title bar.
**The Temperature, Pressure, Winds & Rain panels will flash when a new record is set
**For those users with Davis weather stations, you can see '''Packets''' data, '''CRC errors''' and the percentage failure rate. I have found that this last piece of info. is a good indicator for when the battery needs changing.  This option toggles across sessions so if you hide them they stay hidden until you choose to view them again.
**For those users with Davis weather stations, you can see '''Packets''' data, '''CRC errors''' and the percentage failure rate.<br/>I have found that this last piece of info is a good indicator for when the battery needs changing.  This option toggles across sessions so if you hide them they stay hidden until you choose to view them again.
*The '''Charts''' pages
*The '''Charts''' pages
**All charts can be zoomed, i.e., you can swipe the mouse over parts of the chart to view readings in detail.
**All charts can be zoomed, i.e., you can swipe the mouse over parts of the chart to view readings in detail.
Line 34: Line 41:
*The '''NOAA''' pages
*The '''NOAA''' pages
**Both pages have been amended so that the required report loads when a date is selected.
**Both pages have been amended so that the required report loads when a date is selected.
*'''Extra Sensors''' - No significant cosmetic changes
*'''Extra Sensors'''
**These pages use flex boxes and as such it is possible to rearrange them on the page simply by changing their 'order' number in the html code.
*The '''Data Logs''' pages
**These now all have fixed columns for line number and date (and time).
**All pages automatically load data when the pages open.


=====Management and Setup Menus=====
=====Management and Setup Menus=====
*The '''Data Logs''' Menu
*The '''Readings Logs''' and '''Extra Data Logs''' pages display the current days entries but this can be changed using the popup calendar.<br/>These tables also display metric units for all appropriate data.  If you use other units then you will need to edit the three html files.  (Details are in the 'readme' file included in the download).
**All pages automatically load data when the pages open.
**Some cosmetic changes have been made to the popup editor panel.
**The '''Readings Logs''' and '''Extra Data Logs''' pages display the last 7 days of entries but this can be changed using the popup calendar.<br/>These tables also display metric units for all appropriate data.  If you use other units then you will need to edit the three html files.  (Details are in the 'readme' file included in the download).
*The '''Settings''' Menu<br/>This menu provides access to the same pages as in the default system although some have been redesigned
*The '''Settings''' Menu<br/>This menu provides access to the same pages as in the default system although some have been redesigned
**The '''MySQL Settings''' page has been made into two columns.
**The '''MySQL Settings''' page has been made into two columns.
Line 45: Line 55:
*The '''Edit...''' Menu
*The '''Edit...''' Menu
**The '''rain editor''' is now much narrower and the shading on read-only entries made more obvious.
**The '''rain editor''' is now much narrower and the shading on read-only entries made more obvious.
**'''Weather Conditions Editor'''
*'''Weather Conditions Editor'''
***This is a new page that combines the old ''Current Conditions'' & ''Weather Diary'' pages.<br/>The original pages are still available but not in the menu.  This can be edited to display the original pages if preferred.
**This is a new page that combines the old ''Current Conditions'' & ''Weather Diary'' pages. The original pages are not included in the latest zip file.
*The four '''Edit Records...''' pages
*The four '''Edit Records...''' pages
**These are esentially the same except that editing is done using a popup box rather than in-line.<br/>This simply avoids the tables becoming confusing on small screens.
**These are essentially the same as the default interface. Cosmetic changes have been made to the popups.
*The '''AI Settings...''' menu
*The '''Utilities...''' menu
**Gives you access to the various theme colour styles available.<br/>Selecting a theme makes it active for the current page '''only'''.<br/>To make it ''permenant'' you need to click the '''Use for all pages''' button.
**This inludes FTP, Purge database, Reload the Dayfile, Custom logs and 'AI Settings'.
**Enables you to change the status of the header and footer from static to scrolling - either or both.
**The FTP and Dayfile options load the same page with both options available.
**You can now also adjust the gap between the body of the page and the header and footer.
**Custom Logs loads the same page as the 'Settings' menu.
**'AI Settings...' gives you access to the various theme colour styles available. To view the them on this page use the appropriate button or selecting 'Use for all pages' will make the change permenantly.
**You also have the option to reset the theme to the default.
**It also enables you to change the status of the header and footer from static to scrolling - either or both and adjust the gap between the body of the page and the header and footer.
----
----


Line 78: Line 91:
Generally, this has been limited to ensuring that all JavaScript files use the correct URL for '''API''' calls to both read and update settings / data.  All modified JavaScript files are included in the '''AI''' package and do not over-write existing files.
Generally, this has been limited to ensuring that all JavaScript files use the correct URL for '''API''' calls to both read and update settings / data.  All modified JavaScript files are included in the '''AI''' package and do not over-write existing files.


The following JavaScript files are additions for the AI.
The following JavaScript files were (January 2022) additions for the AI.
*'''AI-Charts-Plus.js''': This script handles all buttons on the ''Readings'' and ''Historic'' charts pages.
*'''AI-Charts-Plus.js''': This script handles all buttons on the ''Readings'' and ''Historic'' charts pages.
*'''AI-Page-Manager.js''': This script is a utility used by all pages to control the layout, obtain the CumulusMX Version data, handle the selected theme and various other utilities.<br/>If you have hidden the 'Davis Stats Panel' on the Dashboard then this script makes sure it is hidden the next time you open the page.
*'''AI-Page-Manager.js''': This script is a utility used by all pages to control the layout, obtain the CumulusMX Version data, handle the selected theme and various other utilities.<br/>If you have hidden the 'Davis Stats Panel' on the Dashboard then this script makes sure it is hidden the next time you open the page.
*'''AI-Configure.js''': This script is only used to configure the AI: Static or scrolling header/footer and gapes between them and the main body.  You can also change the colour theme for the site.
*'''AI-Configure.js''': This script is only used to configure the AI: Static or scrolling header/footer and gapes between them and the main body.  You can also change the colour theme for the site.


This package also includes the gauges.js file in th esteelseries library - it has been modified to make to make the tooltips use the theme, and the datatables editor library again to make use of the themes.  
Those users not using Microsoft Windows OS should note case inconsistencies; e.g. "ai-config.html" (December 2021) has become "AI-Config.html" now.
 
====Things you can change easily====
As already mentioned, the ''Header'' and ''Footer'' area of the site is static by default - i.e. they are always on page.  To change this use the '''AI-Config.html''' page. It can also be used to make the header and/or footer scroll and change the gap between the body of the page and the header/footer.
 
==Download the latest version==
Download the latest current version: [https://cumuluswiki.org/images/c/c2/Ai.cmx.zip the latest ai.cmx ] (''Updated 17th June 2022 @ 10:06'')


This update accommodates the latest update from Mark - build 3190
This package also includes:
*The '''gauges.js''' file in the ''steelseries'' library - it has been modified to make to make the ''tooltips'' use the theme,
*The '''datatables''' and '''datatables editor''' library - again modified to make use of the themes.
*Finally the '''PopupOverley''' library for the same reasons.  This will be removed in the next release.


The records pages now include the ability to update directly from the log files as in the default interface.
===Known Issues===
At the moment I have not been able to make the AI open the ''Internet Settings'' ~ ''Web/Upload Site'' ~ ''Advanced Settings'' panel.  As this is only for very specific issues you may well not need to access it, but if you do, then simply use the default interface until I post a solution.


==Installation==
==Installation==
Line 101: Line 112:


You are then ready to start using it.  If you use the url: '''<nowiki>http://localhost:8998/</nowiki>''' to run your normal interface, you can simply add the folder name to the end like so:
You are then ready to start using it.  If you use the url: '''<nowiki>http://localhost:8998/</nowiki>''' to run your normal interface, you can simply add the folder name to the end like so:
'''<nowiki>http://localhost:8998/ai.cmx/</nowiki>'''.  (''Note the trailing backslash'')
'''<nowiki>http://localhost:8998/ai2/</nowiki>'''.  (''Note the trailing backslash'')


Of course localhost can be replaced with the IP address of the machine running CumulusMX.  Using the IP address of your CumulusMX computer, you can also brows to it from another computer on your ''local'' network.
Of course localhost can be replaced with the IP address of the machine running CumulusMX.  Using the IP address of your CumulusMX computer, you can also brows to it from another computer on your ''local'' network.


You still have access to the default interface if you want.
You still have access to the default interface if you want.
PLEASE read the included ''''ReadMe'''' file as this shows how you can change the '''UNITS''' in the DayFile and Data Logs pages.

Revision as of 15:47, 28 April 2023

An Alternative (additional) Interface

Overview

The AI version 2 is here. This is a major upgrade involving a complete rewrite of the HTML and Javascript. Any errors in the last release of version 1 have been corrected and new features included:

Features of AI2

Dark Mode has been implemented and 32 dark mode themes included to match the original. Please note that these themes are no longer compatible with the default website.

Significant, but not exhaustive improvements have been added for accessibility. Anyone requiring thee features with knowledge of how to improve the AI2 should contact me.

Page layouts have been improved and those pages with multiple panels can now be re-arranged by changing their order style in the html files.

Download AI2 here (Updated 16:45 on 28th April 2023) for build 3241 File:AI2.zip

Please note that neither 'General Settings' or 'Advanced option' on the Internet settings ~ web/FTP' page doesn't expand. Please use the default interface for this if required. All other features work as required.

How it fits with the existing inteface

The AI has been developed as an addition to the existing Interface - it is not provided as a replacement. The existing Interface should always be retained as it is this that will be updated by Mark as and when required. As changes are made to CumulusMX your only access to them initially will be through the default interface provide by Mark.

As said above, the AI includes all the same resources needed to view the data being generated by your website; to configure your station and to edit data should errors occur.

However, some changes to layout have been made:

  • The Header and Footer are both fixed by default. This can be changed by you if required.
  • The Menu has been adapted to take less space but includes a button to return to the default Interface pages.
    • I have also moved/duplicated some of the menu entries to other top level menu items.
  • The header area is now better at being responsive on small screens - reducing in size to give you more space for your data on small screens.
Viewing generated data
  • The Dashboard page
    • Shows the alarm LEDs at the top of the page. These can be hidden/re-displayed using the button provided with the page title.
    • The Sun and Moon rise & setting times are displayed in a popup; again using the button in the page title bar.
    • For those users with Davis weather stations, you can see Packets data, CRC errors and the percentage failure rate. I have found that this last piece of info. is a good indicator for when the battery needs changing. This option toggles across sessions so if you hide them they stay hidden until you choose to view them again.
  • The Charts pages
    • All charts can be zoomed, i.e., you can swipe the mouse over parts of the chart to view readings in detail.
    • The recent and historic charts use buttons that always span a complete line (or lines).
    • The Select-a-Chart groups the buttons in two groups of three pairs, as in the default Interface.
  • The NOAA pages
    • Both pages have been amended so that the required report loads when a date is selected.
  • Extra Sensors
    • These pages use flex boxes and as such it is possible to rearrange them on the page simply by changing their 'order' number in the html code.
  • The Data Logs pages
    • These now all have fixed columns for line number and date (and time).
    • All pages automatically load data when the pages open.
Management and Setup Menus
  • The Readings Logs and Extra Data Logs pages display the current days entries but this can be changed using the popup calendar.
    These tables also display metric units for all appropriate data. If you use other units then you will need to edit the three html files. (Details are in the 'readme' file included in the download).
    • Some cosmetic changes have been made to the popup editor panel.
  • The Settings Menu
    This menu provides access to the same pages as in the default system although some have been redesigned
    • The MySQL Settings page has been made into two columns.
    • The Alarm Settings page has simply been tidied up.
  • The Edit... Menu
    • The rain editor is now much narrower and the shading on read-only entries made more obvious.
  • Weather Conditions Editor
    • This is a new page that combines the old Current Conditions & Weather Diary pages. The original pages are not included in the latest zip file.
  • The four Edit Records... pages
    • These are essentially the same as the default interface. Cosmetic changes have been made to the popups.
  • The Utilities... menu
    • This inludes FTP, Purge database, Reload the Dayfile, Custom logs and 'AI Settings'.
    • The FTP and Dayfile options load the same page with both options available.
    • Custom Logs loads the same page as the 'Settings' menu.
    • 'AI Settings...' gives you access to the various theme colour styles available. To view the them on this page use the appropriate button or selecting 'Use for all pages' will make the change permenantly.
    • You also have the option to reset the theme to the default.
    • It also enables you to change the status of the header and footer from static to scrolling - either or both and adjust the gap between the body of the page and the header and footer.

Screen Shots

Below are a number of screenshots of various pages.

All the above are taken from my current Version 2 of the Interface except the last two.


Technical Changes

Generally, this has been limited to ensuring that all JavaScript files use the correct URL for API calls to both read and update settings / data. All modified JavaScript files are included in the AI package and do not over-write existing files.

The following JavaScript files were (January 2022) additions for the AI.

  • AI-Charts-Plus.js: This script handles all buttons on the Readings and Historic charts pages.
  • AI-Page-Manager.js: This script is a utility used by all pages to control the layout, obtain the CumulusMX Version data, handle the selected theme and various other utilities.
    If you have hidden the 'Davis Stats Panel' on the Dashboard then this script makes sure it is hidden the next time you open the page.
  • AI-Configure.js: This script is only used to configure the AI: Static or scrolling header/footer and gapes between them and the main body. You can also change the colour theme for the site.

Those users not using Microsoft Windows OS should note case inconsistencies; e.g. "ai-config.html" (December 2021) has become "AI-Config.html" now.

This package also includes:

  • The gauges.js file in the steelseries library - it has been modified to make to make the tooltips use the theme,
  • The datatables and datatables editor library - again modified to make use of the themes.
  • Finally the PopupOverley library for the same reasons. This will be removed in the next release.

Known Issues

At the moment I have not been able to make the AI open the Internet Settings ~ Web/Upload Site ~ Advanced Settings panel. As this is only for very specific issues you may well not need to access it, but if you do, then simply use the default interface until I post a solution.

Installation

Once you have downloaded the zip file, extract it somewhere other than your CumulusMX installation. This will avoid accidentally overwriting your existing Interface contents.

The Extracted package should consist of a single folder - ai.cmx, which can then be copied into the existing Interface folder so it shows as a sub-folder.

You are then ready to start using it. If you use the url: http://localhost:8998/ to run your normal interface, you can simply add the folder name to the end like so: http://localhost:8998/ai2/. (Note the trailing backslash)

Of course localhost can be replaced with the IP address of the machine running CumulusMX. Using the IP address of your CumulusMX computer, you can also brows to it from another computer on your local network.

You still have access to the default interface if you want.

PLEASE read the included 'ReadMe' file as this shows how you can change the UNITS in the DayFile and Data Logs pages.