Plugin Directory

Changeset 3474620


Ignore:
Timestamp:
03/04/2026 01:50:40 PM (4 days ago)
Author:
ankitmaru
Message:

Minor fixes and performance enhancements.

Location:
ultimakit-for-wp
Files:
779 added
1 edited

Legend:

Unmodified
Added
Removed
  • ultimakit-for-wp/trunk/README.txt

    r3468699 r3474620  
    55Requires at least: 5.6
    66Tested up to: 6.8
    7 Stable tag: 2.2.0
     7Stable tag: 2.3.0
    88Requires PHP: 7.4
    99License: GPLv2 or later
     
    9999
    100100[View All Pro Features & Pricing →](https://pluginstack.dev/plugins/ultimakit-for-wp)
     101[All in One Google Sheet Integration with multiple plugins →](https://pluginstack.dev/plugins/syncsheets-for-wordpress/)
    101102
    102103= What's Next? =
     
    141142== Changelog ==
    142143
    143 = 2.2.0 - 24.02.2026 =
     144= 2.3.0 =
     145
     146* FIXED: Change Login URL — login form was still posting to /wp-login.php instead of the custom slug, causing login to fail. Added site_url filter to correctly rewrite the form's action attribute.
     147* FIXED: Change Login URL — removed early wp_redirect() call from class constructor that ran before WordPress was fully initialized, which could cause headers-already-sent errors.
     148* FIXED: Change Login URL — removed redundant admin_init hook for blocking /wp-login.php (the init hook at priority 1 already handles this correctly).
     149* FIXED: Admin UI — sidebar icon color live preview was always reflecting the admin bar icon color due to a wrong DOM selector (#adminbar_icons_color instead of #sidebar_icon_color).
     150* FIXED: Admin UI — color pickers were double-initialized (generic .wpColorPicker() call conflicted with individual per-picker initialization), causing picker UI conflicts.
     151* FIXED: Admin UI — sidebar width value now sanitized with absint() before CSS output to prevent potential CSS injection via curly brace characters.
     152* IMPROVED: Admin UI color scheme updated to match pluginstack.dev brand palette — replaced Bootstrap purple (#6610F2) with brand indigo (#6366f1), removed gold/yellow accent (#FFD700) in favour of violet (#8b5cf6), consolidated scattered blue values (#3498DB, #007BFF) into brand indigo, and standardised light backgrounds to #f8fafc across admin/css/main.css and admin/css/wp-ultimakit-admin.css.
     153* FIXED: Admin UI — modal title text was violet (#8b5cf6) on an indigo header background, producing near-zero contrast. Changed to white (#ffffff) in both CSS files.
     154* FIXED: Admin UI — "Get Pro" nav button and its :last-child:hover sibling had indigo text (#6366f1) on a violet background (#8b5cf6), and violet text (#8b5cf6) on an indigo hover background — both fail WCAG contrast. Changed all button text to #ffffff.
     155* FIXED: Admin UI — header "Get Pro" button (.header-actions .btn-primary) had indigo text on a violet background. Changed text color to #ffffff.
     156* FIXED: Admin UI — sidebar-header border-bottom and sidebar-categories border-top were set to #f8fafc (same as the white sidebar background), making them invisible. Changed to #e2e8f0.
     157* FIXED: Admin UI — .ultimakit-btn:hover had no visual change (background stayed #6366f1, identical to the default state). Changed hover background to #4f46e5 for a clear pressed-state feedback.
     158* IMPROVED: Admin UI — replaced outdated silver (#C0C0C0) on module card borders, nav-tab borders, and global .btn-secondary with modern slate-grey (#e2e8f0) across both CSS files.
     159* IMPROVED: Admin UI — .settings-actions .btn-secondary changed from Bootstrap grey (#6c757d) to an outline-indigo style (transparent background, #6366f1 border and text) for palette consistency.
     160* NEW: Code Snippet module added to the "Custom Code" category. Supports PHP, JavaScript, and CSS snippets with per-snippet title, type, location (Frontend Head/Footer, Admin Head/Footer, On Init, Before/After Content), priority, description, and active toggle. Snippets are stored in a dedicated database table and managed via a full admin page (UltimaKit → Code Snippets) with add/edit form, search, type-tab filters, inline toggle, and delete.
     161
     162**[GF] Form Analytics**
     163
     164* FIXED: Dead AJAX action registrations removed (get_form_statistics, gf_analytics_clear_data) — the corresponding handler methods did not exist, causing PHP notices on every admin page load.
     165* FIXED: get_average_completion_time() was querying $.time_spent from all blur events (per-field focus duration in ms) instead of $.completion_time stored in submission events, producing wildly incorrect averages.
     166* FIXED: Submission Rate percentage always showed 100% — count($this->get_total_submissions()) returned 3 (the number of array keys) rather than the actual submission count. Now correctly reads $data['count'].
     167* FIXED: CSV export crashed with undefined index errors — $row['device_info'] and $row['meta_data'] columns do not exist in the DB schema. Export now decodes the event_data JSON column instead.
     168* FIXED: $field_label was referenced before assignment, causing an undefined variable notice. Initialised to '' before the conditional block.
     169* FIXED: JS front-end — gform_confirmation_loaded AJAX handler was double-counting every submission alongside the PHP gform_after_submission hook. Handler removed; PHP hook is the authoritative submission tracker.
     170* FIXED: JS front-end — session cookie not being set, so PHP track_submission() read a different session ID than the JS trackEvent() calls. Cookie is now written immediately on page load.
     171* FIXED: JS front-end — gform_field_validation_error is not a real Gravity Forms JS event and was silently swallowed. Removed.
     172* FIXED: JS front-end — form abandonment used a single shared boolean (formStarted = false); switching to an object keyed by form ID so multi-form pages track abandonment independently.
     173* IMPROVED: get_user_location() is now only called for view, submission, and abandon events instead of every field interaction, reducing IP geolocation overhead significantly.
     174* IMPROVED: Empty state messages added for field performance table, form abandonment table, and device stats section.
     175* IMPROVED: Admin dashboard CSS modernised — flex controls bar, 3-column metrics grid, card headers with accent border, consistent spacing.
     176
     177**Simple Notification Bar**
     178
     179* FIXED: Bar position CSS property output without esc_attr(), allowing unescaped values in inline style.
     180* FIXED: Admin-bar CSS selector was .admin-bar body.has-notification-bar (impossible — .admin-bar is on body, not a parent). Corrected to body.admin-bar.has-notification-bar in both the standard block and the @media (max-width: 782px) block.
     181* FIXED: JS admin-bar top offset calculation ignored config.positionOffset, making the bar overlap the admin bar when a position offset was set.
     182* FIXED: console.error() left in production initialize() function removed.
     183* FIXED: button element in the allowed HTML list had href and target attributes which are invalid on buttons. Replaced with type attribute.
     184* FIXED: JS parseInt calls lacked radix 10 argument. NaN guard conditions used !== undefined instead of !isNaN(), which did not correctly detect missing min/max attributes.
     185* IMPROVED: Settings UI migrated from a modal/popup to a dedicated full-page admin screen (UltimaKit → Notification Bar), giving each setting group its own clearly labelled section.
     186* IMPROVED: Notification message field upgraded from a plain textarea to wp_editor() (TinyMCE + Quicktags), allowing rich text editing with proper HTML formatting.
     187* IMPROVED: Settings page layout uses full-width col-12 blocks — one block each for Notification Message, Style, Position Settings, Display Settings, Reopen Button Settings, and Device Settings.
     188* FIXED: Save handler called $this->setModuleSettings() which delegates to $this->helper->ultimakit_update_module_setting(). Module classes do not call parent::__construct(), so $this->helper was always null, causing a fatal error. Handler now calls $this->ultimakit_update_module_setting() directly (inherited from UltimaKit_Helpers via the class hierarchy).
     189
     190= 2.2.0 =
    144191
    145192* NEW: Additional Gravity Forms modules added to Pro version.
     
    182229
    183230== Upgrade Notice ==
     231
     232= 2.2.0 =
     233Upgrade for additional Gravity Forms Pro modules and performance improvements.
     234
     235= 2.0.1 =
     236Recommended update: includes security hardening for SVG uploads and a Freemius SDK update.
Note: See TracChangeset for help on using the changeset viewer.