Benchmarks
Plugin footprint 48% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲3.49MB] [CPU: ▼328.85ms] Passed 4 tests
An overview of server-side resources used by Events Calendar Registration
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 7.87 ▲4.35 | 24.48 ▼35.66 |
Dashboard /wp-admin | 7.88 ▲4.47 | 25.74 ▼16.28 |
Posts /wp-admin/edit.php | 7.89 ▲4.24 | 29.82 ▼8.31 |
Add New Post /wp-admin/post-new.php | 7.89 ▲0.91 | 24.30 ▼1,255.15 |
Media Library /wp-admin/upload.php | 7.89 ▲4.59 | 24.20 ▼0.46 |
Freemius Debug [v.2.2.4] /wp-admin/admin.php?page=freemius | 7.89 | 30.44 |
Server storage [IO: ▲10.77MB] [DB: ▲0.01MB] Passed 3 tests
Input-output and database impact of this plugin
The plugin installed successfully
Filesystem: 643 new files
Database: 8 new tables, 27 new options
New tables |
---|
wp_evr_category |
wp_evr_event |
wp_evr_attendee |
wp_eventplusmeta |
wp_evr_question |
wp_evr_cost |
wp_evr_payment |
wp_evr_answer |
New WordPress options |
---|
evr_date_installed |
wpeventsplus_lite |
plug-evr-activate |
evr_attendee_version |
evr_payment |
eventpluslite_build_version |
eventslite_admin_flash_messages |
evr_attendee |
evr_question |
evr_answer |
... |
Browser metrics Passed 4 tests
This is an overview of browser requirements for Events Calendar Registration
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 4,073 ▲319 | 16.49 ▲0.83 | 11.48 ▲5.27 | 2.35 ▼0.36 |
Dashboard /wp-admin | 3,022 ▲164 | 5.98 ▼0.25 | 123.56 ▼13.53 | 174.99 ▲8.01 |
Posts /wp-admin/edit.php | 2,729 ▲41 | 3.23 ▼0.00 | 71.01 ▲3.17 | 145.09 ▼58.73 |
Add New Post /wp-admin/post-new.php | 1,727 ▲66 | 21.84 ▲0.47 | 476.27 ▲79.63 | 160.87 ▼5.12 |
Media Library /wp-admin/upload.php | 1,742 ▲50 | 5.63 ▲0.15 | 148.51 ▼19.31 | 213.25 ▼12.89 |
Freemius Debug [v.2.2.4] /wp-admin/admin.php?page=freemius | 1,466 | 2.54 | 55.32 | 157.24 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 25% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
You still need to fix the following
- Uninstall procedure had uncaught errors
- > Notice in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/models/settings.php+12
Trying to access array offset on value of type bool
- Zombie tables detected upon uninstall: 8 tables
- wp_evr_attendee
- wp_evr_answer
- wp_evr_cost
- wp_evr_event
- wp_evr_category
- wp_eventplusmeta
- wp_evr_question
- wp_evr_payment
- Zombie WordPress options detected upon uninstall: 28 options
- evr_payment
- evr_payment_version
- evr_answer
- fs_accounts
- fs_active_plugins
- evr_cost_version
- evr_attendee_version
- evr_eventplusmeta
- eventpluslite_build_version
- evr_eventplusmeta_version
- ...
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Smoke test failed, please fix the following
- 2 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=freemius
- > Notice in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/models/settings.php+13
Trying to access array offset on value of type bool
SRP 0% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
The following issues need your attention
- 23× PHP files perform the task of outputting text when accessed with GET requests (only 10 are shown):
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/assets/font/helveticai.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/assets/font/timesb.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/dashboard/index.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/front/event/parts/inc/form_fields/textarea.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/events/form.parts/edit_event_scripts.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/assets/scripts/public/_validate.js.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/vendor/fpdf.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/front/event/parts/inc/form_fields/text.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/assets/font/zapfdingbats.php
- > /wp-content/plugins/events-calendar-registration-booking-by-events-plus/assets/font/timesi.php
- 328× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/dashboard/widgets/categories.php:7
- > PHP Notice
Undefined variable: row in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/attendees/details.php on line 21
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/layouts/payments.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/front/event/parts/inc/form_fields/dropdown.php:5
- > PHP Fatal error
Uncaught Error: Class 'EventPlus_Helpers_Funx' not found in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/funx/evrplus_three_cal.php:8
- > PHP Fatal error
Uncaught Error: Class 'EventPlus_Abstract_Request' not found in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/request.php:2
- > PHP Notice
Undefined variable: oEvent in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/events/items/manage.php on line 3
- > PHP Notice
Trying to get property 'id' of non-object in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/front/event/parts/inc/form_fields/dropdown.php on line 4
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/admin/attendees/details.php on line 20
- > PHP Notice
Undefined variable: event_id in wp-content/plugins/events-calendar-registration-booking-by-events-plus/eventplus/app/views/front/widgets/shortcode/event/popup/events.php on line 3
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
There were no browser issues found
Optimizations
Plugin configuration 86% from 29 tests
readme.txt 94% from 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
These attributes need to be fixed:
- Tags: You are using too many tags: 27 tag instead of maximum 10
events-calendar-registration-booking-by-events-plus/eventslite.php 77% from 13 tests
The main PHP script in "Events Calendar Registration" version 1.9.2 is automatically included on every request by WordPress
Please take the time to fix the following:
- Description: The description should be shorter than 140 characters (currently 196 characters long)
- Text Domain: The text domain name must use dashes instead of underscores, and it must be lowercase
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("events-calendar-registration-booking-by-events-plus.php" instead of "eventslite.php")
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
Good job! No executable or dangerous file extensions detected117,772 lines of code in 428 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 291 | 10,411 | 18,056 | 47,664 |
CSS | 51 | 2,827 | 2,248 | 44,858 |
PO File | 12 | 6,535 | 7,914 | 14,203 |
JavaScript | 36 | 1,738 | 1,032 | 5,964 |
Sass | 28 | 399 | 77 | 2,515 |
SVG | 3 | 0 | 0 | 1,812 |
HTML | 1 | 121 | 0 | 495 |
Markdown | 1 | 61 | 0 | 192 |
JSON | 2 | 0 | 0 | 37 |
YAML | 2 | 2 | 0 | 28 |
INI | 1 | 0 | 0 | 4 |
PHP code 50% from 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
These items need your attention
- Class cyclomatic complexity should be reduced to less than 1000 (currently 2,360)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.43 |
Average class complexity | 37.33 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 2,360.00 |
Average method complexity | 3.66 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 83.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 132 | |
▷ Abstract classes | 11 | 8.33% |
▷ Concrete classes | 121 | 91.67% |
▷ Final classes | 0 | 0.00% |
Methods | 1,843 | |
▷ Static methods | 262 | 14.22% |
▷ Public methods | 1,470 | 79.76% |
▷ Protected methods | 57 | 3.09% |
▷ Private methods | 316 | 17.15% |
Functions | 162 | |
▷ Named functions | 162 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 167 | |
▷ Global constants | 128 | 76.65% |
▷ Class constants | 39 | 23.35% |
▷ Public constants | 39 | 100.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
115 PNG files occupy 2.43MB with 1.17MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/scripts/gridview/css/icons/broken-image.png | 0.26KB | 0.17KB | ▼ 33.33% |
assets/images/free_icon.png | 0.88KB | 0.84KB | ▼ 4.01% |
assets/scripts/colorbox/images/overlay.png | 49.08KB | 0.14KB | ▼ 99.71% |
assets/images/search-icon.png | 48.27KB | 0.29KB | ▼ 99.39% |
assets/images/question-frame.png | 0.90KB | 0.86KB | ▼ 4.65% |