The Garmin Forum Helper extension (further GFH) intends to make the use of the Garmin Forum easier and more comfortable for frequent users and moderators. The main features are as follows:
The GFH comes from an independent developer not affiliated with Garmin in any way, except for using their products. It is not an extension released by Garmin! It was developed with the intent of helping fellow users and moderators of the forum. FGH respects the privacy of its users, does not collect any usage data, and remains a free product, although you are welcome to express your appreciation by sending a donation through Paypal or BuyMeACoffee.
After installing the GFH extension from the Chrome Web Store, grant it permission to access the site https://forums.garmin.com/, and pin it to the toolbar for easy and quick access to the settings, and for the administration of the extension. Click on the blue G icon of the extension in the toolbar and review the available configuration options.
GFH uses mouse-over tooltips not only over items on its popup window but also over many elements or markup that it injects into the forum pages. You will often get a hint or more detailed data if you hover with the mouse cursor over the element in question.
You can quickly access sub-forums or other bookmarked links by hitting the key combination Ctrl+Shift+K and then the sequence of three letters as defined in the table on the tab Hotkeys » Bookmarks of the GFH popup window. Similarly, you can insert replies from templates defined on the tab Hotkeys » Reply Templates. And, of course, you can add your own templates and bookmarks.
When you hit the trigger hotkey combination twice instead just once, or when you click the blue hotkey indicator, a table with the list of available shortcuts pops up. If you type a key, the list is automatically filtered on-the-fly, so there will be accordingly less available options with each character. And instead of typing the entire 3 keys sequence, you can simply just click the desired shortcut at any moment.
Please note: On some systems, or with some browsers, the key combination 'Ctrl+Shift+K' may be already used for another purpose. For example Edge uses the combination for duplicating the current tab. In such case, you have to redefine the key combination in the settings, and find one that is still free.
The tab "Users" of the GFH popup window lists all users with an already assigned user type (badge). You can change the sorting of the list by clicking the column headers "Nickname" or "Badge". When you click on the header with the symbol 🧑🏻, only users with a custom avatar will be listed.
Clicking on the nickname of a user opens a new page on a separate browser tab with a list of threads in which they participated. After clicking on the badge on the row of a user, you can assign a different user type to the user on the small table with available badges that pops up. If you want to remove the badge entirely, you have to delete the user completely by clicking the bin icon on the right end of the respective row.
You can also assign a different nickname to any user on the Users list. Click the badge of the user in the Users table of the popup window, edit the name, and then save the change by clciking the green button on the right side of the input box.
The third column lists either users' avatars (when the user has a custom avatar assigned) or the number of threads where the user participated. However, in order to avoid the high data load that would be necessary for continuously verifying the counts, the numbers are verified only on demand when you click on that column for a given user. The query takes 1-3 seconds to return the result, and the number then appears in darkgreen color. Numbers in black are counts saved from previous queries. When the users cannot be found (for example, removed by administrators for spam), a dash appears instead of a number. When the query fails for the third time, the respective user is removed from the table. It helps prevent the table from growing too quickly because the number of detected (and later removed) spammers may be important.
You can assign a badge to a user by clicking the name or avatar in the head of the post of the concerned user. Changing the badge type is possible in the same way. The complete removal of a badge from the user is possible by removing the user from the user list on the popup window of the extension (click the "G" icon of the extension in the browser's navbar or on the list of extensions.
Some badges have a special effect. So for example, posts of users with certain types of badges will be highlighted with a different background color (i.e., light blue for "Staff", similar color for "Moderator", or light red for the type "Spammer" or "Spam Suspect"). Posts of users with the badge "Spammer" or "Ignore" will also be hidden by default and visible only after clicking the "Unhide" button.
If you wish to be alerted when someone posts a message containing specific terms, you can enter several keywords, phrases, expressions, or regular expressions (regex) into the Keyword list. When the RSS reader detects a new post matching some of the expressions on the list, a small green counter on the side of the Garmin Forum page will appear, or (if already visible), the number of notifications on it will increment.
If you click on the green counter, a list of pending notifications appears, and you can either directly discard them by clicking the bin icon or you can click the link and open the thread with the concerned post. Opening the page will automatically acknowledge the notification and remove it from the list.
The same list is accessible anytime on the tab "Notifications" of the GFH popup window. The sorting order on the popup window can be changed by clicking the triangle symbol on the respective table column header. The sorting order on the green panel on the side of the page is fixed - oldest notifications at the top.
A lot of the functionality of the GFH extension is dedicated to the detection of spam and its suppression. Spam is not only annoying, but it can also be dangerous. Spammers often post links to phishing pages, dubious websites containing malware, or just collect views and user data. And they increasingly use AI for posting messages that look like legitimate posts but may contain false information. In any case, replying to these posts is a waste of time, so it is better to know in advance that a post comes from a spammer.
Spammers use a rich palette of techniques for hiding their spam links in the messages so that they are invisible to an ordinary user. GFH uses complicated algorithms to detect and reval the maximum of them.
When a post from a spammer or a post containing a non-whitelisted external link is detected, a red notification counter appears on the side of the Garmin forum page. After clicking on it, a table with details appears. The column "Reason" shows whether the post was tagged as spam suspect because of an external link (may be a legitimate post), because of a link to a blacklisted domain (most likely spam), or because of using a blacklisted spam keyword (probably spam too). You can either directly confirm the post as Spam (and blacklist the user and the link in it) or approve it as non-spam by clicking the respective icons directly on the notification list.
You can also access the list on the "Spam" tab of the GFH popup window, where there are three subtabs with new spam suspects (same as on the notification list), but also lists with confirmed Spam posts, as well as the tab with a list of approved non-spam. Old non-spam notifications are automatically purged from the list after two days. Old confirmed spam notifications are cleared only if the post of the spammer has already been removed by the moderators. At spam posts that stay longer on this list, you may revisit the post, verify whether it is really spam, and if so, you can alert moderators by using the function "Report as abusive" in the "More" menu under the post.
The sorting order on the popup window can be changed by clicking the triangle symbol on the respective table column header. The sorting order on the red notification panel on the side of the page is fixed - oldest notifications at the top.
Moving the mouse cursor over the column "Reason" reveals more details in the mouse-over tooltip, like, for example, the specific domain name of the spam link (if a link is involved), specific spam keyword or expression, or the username of the spammer posting the message.
When changing the settings, please do not forget to save the changes by clicking the blue button Save in the upper right corner, before closing the popup window!
You can edit the list of keywords after clicking the "edit" button on the right side of this option. You can resize the text box for easier editing. You can enter one word, an expression, a whole sentence, or even a "regular expression" (regex).
The upper and lowercase of the expressions are ignored during matching. Aside from this case, plain text expressions will be matched exactly, including white space. For example, the expression "i got this,..." will match a post with "I Got This,..." in it, but it will fail to find "I Got This, ..." (one extra blank inserted)!
For more tolerant matching, you can use "regex". Javascript syntax for regex is being used, and the expression must be enclosed with slashes. There must be no characters before or after the wrapping slashes. There are plenty of resources about regex available on the web, and ChatGPT can help you create one too.
Please note that the total size of the keyword list is limited by Chrome's storage quota to 8 kB, which should still allow for several hundred keywords.
You can also adjust the period of RSS parsing. By default, the feed is checked every 5 minutes, so when a new post appears, it may take up to 5 minutes before you get a notification if either spam or some of your keywords are detected in it. Also, the RSS feed contains only the last 20 posts, so if there are more than 20 new posts within 5 minutes, the RSS reader will miss some of them. The shortest possible period is 1 minute. If you do not worry about the volume of data that the reader loads from Garmin's server, it is recommended to keep the period short. The data load is estimated to be less than 1 MB/h, when using the period of 1 minute, which is relatively negligible unless you use metered and expensive mobile data. It is also recommended to keep the browser open as much as you can. When you close the browser, the RSS reader can no longer parse any new posts.
Each line may contain either a domain name in plain-text, or (for advanced users) a 'Regular Expression' (regex) which then must be enclosed in a pair of forward slashes, with no characters before the opening /, or after the closing /. All searches are case insensitive.
Please note that the total size of the list is limited by Chrome's storage quota to 8 kB, which should still allow for several hundred whitelisted hosts.
Otherwise, all that was written about the whitelist applies here too.
The built-in RSS reader parses the specified RSS feed with new forum messages, detects messages including non-whitelisted external links (potential spam), links to blacklisted dcmains (certain spam), copies of Reddit posts (often used by spammer bots), and checks for banned keywords or expressions from the Spam Keywords list and for keywords from your Alerts Keywords list.
When spam is detected, the post is added to the list of new spam messages on the Spam tab of the GFH popup window. A small red button with the number of new spam posts will appear on the side of the forum page. You can reset the spam counter on the Spam tab of the GFH popup window by confirming the messages as spam or by approving them as legitimate no-spam posts.
You can also activate alerts for specific keywords or expressions. If a new post containing such an expression appears on the RSS feed, you will be alerted by a green button on the side of the forum page. Posts will be removed from the alerts list as soon as you open the respective thread on the page containing the post.
You can access the GFH popup window by clicking the icon of the extension either in the navigation bar of your browser (if you have pinned it there previously, which is highly recommended), or after clicking the Extensions icon on the right of the addressbar of the browser, or through the browser's menu » Extensions » Manage Extensions.
While the RSS Reader scans new forum posts and detects potential spam in them, the Forum Crawler visits all old forums and searches for spam suspects there. The RSS reader can miss some of the new messages when the GFH extension is not active, when the browser (or the computer) is closed, or when there are a high number of new posts at a time, and Garmin's RSS news feed reports only the last few of them. The crawler, if enabled, will eventually scan the messages missed by the RSS reader too.
The Forum Crawler is disabled by default for several reasons. Because it scans hundreds of thousands of threads, it needs to work continuously, which increases the data volume consumption, which especially users on a metered Internet connection (i.e., mobile data in roaming mode) would not appreciate. Then, not everyone is interested in seeing a lot of spam reports, which require some attention and processing - either confirming them as spam, reporting the messages as "abusive", or approving the spam notifications as non-spam. And the crawler will necessarily report a lot of copies of posts from Reddit, as well as a lot of posts using external links. Many of them will be legitimate posts, not spam. Also, the crawler sends a large number of queries both to the Garmin Forum and to Reddit, which increases the load on their servers. This feature was designed especially for forum moderators, and for passionate expert users who want to help fight spam.
As mentioned at the Spam - Reddit option above, the plugin verifies whether Opening Posts (OP) of threads were not copied from Reddit, because it is a technique used by spam bots. It works in the following way:
This extension does not collect any user data and does not connect to any remote servers. The code is secure and reviewable by any interested party.
All significant changes are listed in the changelog.txt file acessible also directly from the header of the GFH Popup window. The file todo.txt contains a list of planned features, as well as some of the known, not resoved yet bugs.
GFH does not use any external libraries, it was entirely written in pure JavaScript (no jQuery) by its author, however, some help, advice, and inspiration were needed: