Trusty Whistleblowing Solution

Secure whistleblowing channel with case management and two-way reporter dialogue. Data hosted in Germany. ISO 27001 certified.

v2.0.2Dejan JasnicUpdated Added 400 installs100% rating
42
Score
230
Errors
17
Warnings
+0
Change

Category Scores

Security11
Repo88
Performance100
Maintainability64

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

247 findings

I18n

198

4 issue groups

Security

24

5 issue groups

Maintainability

22

12 issue groups

Repo Compliance

3

3 issue groups

ERRORI18nText Domain MismatchMismatched text domain. Expected 'trusty-whistleblowing-solution' but got 'tr_free_whistleblowing_solution'.193
Category
I18n
Occurrences
193
Severity
error

Sample message

Mismatched text domain. Expected 'trusty-whistleblowing-solution' but got 'tr_free_whistleblowing_solution'.

ERRORSecuritySetting is missing a sanitization callbackSanitization missing for register_setting().13
Category
Security
Occurrences
13
Severity
error

Sample message

Sanitization missing for register_setting().

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$input'.4
Category
Security
Occurrences
4
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$input'.

WARNINGSecurityInput is not validatedDetected usage of a possibly undefined superglobal array index: $_POST['formData']. Check that the array index exists before using it.4
Category
Security
Occurrences
4
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_POST['formData']. Check that the array index exists before using it.

ERRORMaintainabilitycurl curl setoptUsing cURL functions is highly discouraged. Use wp_remote_get() instead.4
Category
Maintainability
Occurrences
4
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;4
Category
Maintainability
Occurrences
4
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

WARNINGMaintainabilityMissing VersionResource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.

ERRORI18nMissing Translators CommentA function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.3
Category
I18n
Occurrences
3
Severity
error

Sample message

A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.

ERRORMaintainabilityPlugin Directory WritePlugin folders are deleted when upgraded. Do not save data to the plugin folder using file_put_contents(). Detected usage of function plugin_dir_path(). Use wp_upload_dir() to get the uploads directory path or save to the database instead.2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Plugin folders are deleted when upgraded. Do not save data to the plugin folder using file_put_contents(). Detected usage of function plugin_dir_path(). Use wp_upload_dir() to get the uploads directory path or save to the database instead.

WARNINGMaintainabilityDiscouraged PHP functionThe use of function ini_set() is discouraged2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

The use of function ini_set() is discouraged

Show 14 more
WARNINGSecurityInput is not sanitized2
Category
Security
Occurrences
2
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_POST['formData']

WARNINGI18nDiscouraged text-domain loading1
Category
I18n
Occurrences
1
Severity
warning

Sample message

load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.

ERRORMaintainabilitydate date1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

WARNINGMaintainabilityerror log print r1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

print_r() found. Debug code should not normally be used in production.

WARNINGMaintainabilityprevent path disclosure error reporting1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

error_reporting() can lead to full path disclosure.

WARNINGSecurityRequest data is not unslashed1
Category
Security
Occurrences
1
Severity
warning

Sample message

$_SERVER['HTTP_HOST'] not unslashed before sanitization. Use wp_unslash() or similar

ERRORMaintainabilitycurl curl close1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilitycurl curl exec1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilitycurl curl init1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORRepo Complianceoutdated tested upto header1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Tested up to: 6.9 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.

WARNINGRepo Compliancereadme parser warnings too many tags1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

One or more tags were ignored. Please limit your plugin to 5 tags.

WARNINGRepo Compliancereadme parser warnings trimmed short description1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

The "Short Description" section is too long and was truncated. A maximum of 150 characters is supported.

ERRORMaintainabilitystable tag mismatch1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Mismatched Stable Tag: 2.0.1 != 2.0.2. Your Stable Tag is meant to be the stable version of your plugin and it needs to be exactly the same with the Version in your main plugin file's header. Any mismatch can prevent users from downloading the correct plugin files from WordPress.org.

ERRORI18ntextdomain invalid format1
Category
I18n
Occurrences
1
Severity
error

Sample message

The "Text Domain" header in the plugin file should only contain lowercase letters, numbers, and hyphens. Found "tr_free_whistleblowing_solution".

External Connections

Potential connections found in static code analysis.

9 domains

Outbound calls

25

External assets

1

Incoming endpoints

4

Notable Domains

trusty.report10 · outbound
trusty.com6 · outbound
admin.trusty.report1 · outbound

Platform / Reference Domains

w3.org2 · platform/reference
wordpress.org2 · platform/reference
gnu.org1 · platform/reference

External Asset Domains

fonts.googleapis.com2 · asset + outbound

Incoming Endpoints

wp_ajax_nopriv_post_form_infopublic

wp_ajax

wp_ajax_nopriv_status_checkpublic

wp_ajax

Admin AJAX endpoints2
wp_ajax_post_form_infoauthenticated

wp_ajax

wp_ajax_status_checkauthenticated

wp_ajax

Score History

First score snapshot

v2.0.2

42

Latest

Findings
247
Errors
230
Warnings
17
Check
2.0.0

Relationship Map

Author, categories, issues, domains, and nearby plugins.

34 nodes

Related Plugins