[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fL9YZHQ6FnnU92AUw6X272F0CfpNh56YkYe61AEuZ8Bs":3,"$fjw3mdsprfC2rfz-DM5oSFxMA0IWupLYCv4JVb---v88":1501,"$fHT6bIrz8TZdmCLi6nSOOx4wMJwVWHAI1b8PlT06Lrjk":1505},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"discovery_status":32,"vulnerabilities":33,"developer":143,"crawl_stats":39,"alternatives":150,"analysis":231,"fingerprints":1461},"ecab-taxi-booking-manager","E-cab Taxi Booking Manager for Woocommerce","2.0.2","magepeopleteam","https:\u002F\u002Fprofiles.wordpress.org\u002Fmagepeopleteam\u002F","\u003Cp>E-cab is a professional Taxi Booking and Chauffeur Service plugin for WooCommerce. Automate your business with a precise fare calculator, distance-based pricing, and integrated map support (OpenStreetMap and Google Maps).\u003Cbr \u002F>\nWhether you offer airport transfers, luxury chauffeur services, or local cab bookings, this system handles everything from ride scheduling to secure checkout. Give your customers a seamless way to book rides online with real-time price estimation and automated dispatch management.\u003C\u002Fp>\n\u003Ch3>See E-cab in Action\u003C\u002Fh3>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FN1NlvhcJ7D8?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>Note: This video demonstrates the full ecosystem. Advanced features like the Driver Panel, Geo-Fencing, and Google Calendar Sync are available in the Pro Version:\u003Cbr \u002F>\nhttps:\u002F\u002Fmage-people.com\u002Fproduct\u002Fwordpress-taxi-cab-booking-plugin-for-woocommerce\u002F\u003C\u002Fp>\n\u003Ch3>Make Yourself Comfortable With:\u003C\u002Fh3>\n\u003Cp>🧶 \u003Ca href=\"https:\u002F\u002Fdemo.ecabtaxi.com\u002F\" rel=\"nofollow ugc\">View Live Taxi Booking Demo\u003C\u002Fa>\u003Cbr \u002F>\n👉 \u003Ca href=\"https:\u002F\u002Fecabtaxi.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">Plugin Documentation\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Why Choose E-cab? (Key Features):\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>🗺️ Multiple Map Providers\u003C\u002Fstrong>\u003Cbr \u002F>\nOpenStreetMap Integration (FREE): Use OpenStreetMap with no API costs or Google API key required! Includes full route mapping and distance calculation.\u003Cbr \u002F>\nGoogle Maps API: Integration with faster place search and global address autocomplete. Choose your preferred provider in settings.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💵 Smart Fare Calculation\u003C\u002Fstrong>\u003Cbr \u002F>\nAutomatic fare calculation based on distance, time, or custom criteria. Automate your pricing and eliminate manual quoting.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⏱️ Flexible Booking Options\u003C\u002Fstrong>\u003Cbr \u002F>\nProvide customers with the flexibility to choose immediate pickups or pre-scheduled rides according to their travel plans.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🛠️ Pricing Model Tabs\u003C\u002Fstrong>\u003Cbr \u002F>\nEasily switch between different pricing models (Hourly, Distance, or Manual) using a sleek tabbed interface for a better user experience.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💰 WooCommerce Integration\u003C\u002Fstrong>\u003Cbr \u002F>\nFully integrated with WooCommerce. Securely accept payments using any gateway like Stripe, PayPal, or local providers.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🛠️ Gutenberg & Elementor Support\u003C\u002Fstrong>\u003Cbr \u002F>\nEasily add booking forms using the dedicated Site Editor (Gutenberg) block or Elementor widget. No coding required.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📍 Google Address Autocomplete\u003C\u002Fstrong>\u003Cbr \u002F>\nEnhance the booking experience with auto-suggestive address suggestions for customers to ensure location accuracy.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📰 Customizable Rates\u003C\u002Fstrong>\u003Cbr \u002F>\nSet up custom rate plans, allowing you to tailor pricing based on different zones, distances, or vehicle types.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⌚ Establish Operating Hours\u003C\u002Fstrong>\u003Cbr \u002F>\nDefine specific operational schedules for your transportation services or opt for 24-hour availability.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🤹 Efficient Booking Management\u003C\u002Fstrong>\u003Cbr \u002F>\nManage all taxi bookings directly from your WordPress dashboard, with the ability to view, modify, or cancel orders instantly.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💦 Fully Responsive Design\u003C\u002Fstrong>\u003Cbr \u002F>\nDesigned to be mobile-first, offering a smooth and professional booking experience across smartphones, tablets, and desktops\u003C\u002Fp>\n\u003Ch3>Pro Features (Available in Pro Version):\u003C\u002Fh3>\n\u003Cp>**📧 📅 Google Calendar Integration **\u003Cbr \u002F>\nAutomatically sync booking details to the admin’s Google Calendar. Customers also receive a link to add the trip to their own personal calendars.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📧 Email & PDF Customization\u003C\u002Fstrong>\u003Cbr \u002F>\nReceive professional order confirmations and automatically deliver PDF receipts\u002Finvoices to customers after successful payments.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⏳ Paid Wait Time Option\u003C\u002Fstrong>\u003Cbr \u002F>\nOffer extra waiting time for users with automated pricing. Perfect for airport pickups where flight delays or luggage collection take extra time.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🛒 Advanced Checkout Fields\u003C\u002Fstrong>\u003Cbr \u002F>\nCustomizable checkout fields let you add, edit, or delete personal info fields, ensuring you collect specific data (like flight numbers) before the ride.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🚩 Operation Areas & Geo-Fencing\u003C\u002Fstrong>\u003Cbr \u002F>\nDesignate specific transport operation areas on the map. Use Geo-Fencing to set different pricing for intercity and intracity zones.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🚍 Driver Management Panel\u003C\u002Fstrong>\u003Cbr \u002F>\nA dedicated panel for admins to assign vehicles to drivers. Drivers can track service status, and automated emails notify all parties of any changes.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🔢 Quantity & Interval Booking\u003C\u002Fstrong>\u003Cbr \u002F>\nSet the quantity of available transport with specific booking time intervals to prevent overbooking and manage fleet availability.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✈️ Specialized Airport Transfer Shortcodes\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Fixed Route Shortcode: Show fixed pickup and drop-off points from specific operation areas (e.g., Downtown to Airport).\u003C\u002Fp>\n\u003Cp>Zone-to-Point Shortcode: Allow pickups from an entire operation area with drop-offs at specific designated places.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🏷️ Hybrid Pricing Logic\u003C\u002Fstrong>\u003Cbr \u002F>\nUse a specialized shortcode to charge a fixed price within an operation area, manual pricing for specific destinations, and distance\u002Fduration pricing for all other locations.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📋 Comprehensive Order Management\u003C\u002Fstrong>\u003Cbr \u002F>\nAn advanced order list view that allows you to edit orders, manually change drivers, and manage the full lifecycle of every booking.\u003C\u002Fp>\n\u003Ch3>Available Addons:\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>⏰ \u003Ca href=\"https:\u002F\u002Fmage-people.com\u002Fproduct\u002Ftaxi-peak-hour-pricing-addon\u002F\" rel=\"nofollow ugc\">Peak Hour Addon\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\nSet peak hour pricing by date range and specific time range\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🚗 \u003Ca href=\"https:\u002F\u002Fmage-people.com\u002Fproduct\u002Fdistance-based-tier-pricing-for-e-cab\" rel=\"nofollow ugc\">Distance Based Tier Pricing Addon\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\nAdd distance-based tiered pricing to your E-Cab rides. Automatically adjust fares by trip length for flexible and fair ride costs.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Third-Party Services:\u003C\u002Fstrong>\u003Cbr \u002F>\n\u003Cstrong>OpenStreetMap (Default – FREE)\u003C\u002Fstrong>: The plugin uses OpenStreetMap by default, which is completely free and requires no API keys. OpenStreetMap provides route mapping, distance calculation, and address search functionality at no cost.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Google Maps API (Optional)\u003C\u002Fstrong>: If you choose to use Google Maps, this plugin relies on the Google Maps API, a service provided by Google, Inc. Google Maps offers faster place search and more places than OpenStreetMap. Please note that your usage of Google Maps constitutes acceptance of Google’s terms and policies.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Link to Google Maps API:\u003C\u002Fstrong>\u003Cbr \u002F>\nFor more information about the Google Maps API, visit: \u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fmaps\u002Fdocumentation\u002Fjavascript\u002Fget-api-key\" rel=\"nofollow ugc\">Google Maps API Link\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Terms of Use:\u003C\u002Fstrong>\u003Cbr \u002F>\nReview the Google Maps API terms of use: \u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fmaps\u002Fterms-20180207\" rel=\"nofollow ugc\">Google Maps API Terms of Use Link\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Privacy Policy:\u003C\u002Fstrong>\u003Cbr \u002F>\nUnderstand how Google handles your data through the Maps API: \u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" rel=\"nofollow ugc\">Google Privacy Policy Link\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Guideline\u003C\u002Fh3>\n\u003Cp>Shortcode:\u003Cbr \u002F>\n[mptbm_booking price_based=’dynamic’ form=’horizontal’ progressbar=’yes’ map=’yes’]\u003C\u002Fp>\n\u003Cp>Parameters:\u003Cbr \u002F>\n– \u003Cstrong>price_based\u003C\u002Fstrong>: Determines the pricing model.\u003Cbr \u002F>\n  – Options:\u003Cbr \u002F>\n    – \u003Ccode>dynamic\u003C\u002Fcode> (default): Pricing is based on Google Map distance.\u003Cbr \u002F>\n    – \u003Ccode>manual\u003C\u002Fcode>: Fixed pricing between two locations.\u003Cbr \u002F>\n    – \u003Ccode>fixed_hourly\u003C\u002Fcode>: Price by hour\u002Ftime.\u003Cbr \u002F>\n  – Example: [mptbm_booking price_based=’manual’]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>form\u003C\u002Fstrong>: Sets the form layout.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Options:\u003C\u002Fli>\n\u003Cli>\u003Ccode>horizontal\u003C\u002Fcode> (default): Standard form layout.\u003C\u002Fli>\n\u003Cli>\u003Ccode>inline\u003C\u002Fcode>: Minimal single-line form.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>progressbar\u003C\u002Fstrong>: Controls the display of the progress bar.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Options:\u003C\u002Fli>\n\u003Cli>\u003Ccode>yes\u003C\u002Fcode> (default): Progress bar is visible.\u003C\u002Fli>\n\u003Cli>\u003Ccode>no\u003C\u002Fcode>: Progress bar is hidden.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>map\u003C\u002Fstrong>: Toggles the map display.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Options:\u003C\u002Fli>\n\u003Cli>\u003Ccode>yes\u003C\u002Fcode> (default): Map is displayed.\u003C\u002Fli>\n\u003Cli>\u003Ccode>no\u003C\u002Fcode>: Map is hidden.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>tab\u003C\u002Fstrong>: Enables or disables tabbed options.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Options:\u003C\u002Fli>\n\u003Cli>\u003Ccode>no\u003C\u002Fcode> (default): Tabs are disabled.\u003C\u002Fli>\n\u003Cli>\u003Ccode>yes\u003C\u002Fcode>: Displays tabs for different booking types (hourly, distance, manual).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>tabs\u003C\u002Fstrong> (used when \u003Ccode>tab\u003C\u002Fcode> is set to ‘yes’): Specifies which tabs to display or exclude.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>To show all tabs: [mptbm_booking tab=’yes’ tabs=’hourly,distance,manual’]\u003C\u002Fli>\n\u003Cli>To show specific tabs: [mptbm_booking tab=’yes’ tabs=’hourly,distance’] (hides ‘manual’)\u003C\u002Fli>\n\u003Cli>To show only one tab: [mptbm_booking tab=’yes’ tabs=’manual’] (hides ‘hourly’ and ‘distance’)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Examples:\u003Cbr \u002F>\n– Display all tabs:\u003Cbr \u002F>\n  [mptbm_booking tab=’yes’ tabs=’hourly,distance,manual’]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Display only ‘hourly’ and ‘distance’ tabs:\u003Cbr \u002F>\n[mptbm_booking tab=’yes’ tabs=’hourly,distance’]\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Display only the ‘manual’ tab:\u003Cbr \u002F>\n[mptbm_booking tab=’yes’ tabs=’manual’]\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Legal Protection\u003C\u002Fh3>\n\u003Cp>This transparency is crucial for legal protection. By using this plugin, you acknowledge and accept the reliance on the Google Maps API. Review the terms of use and privacy policy for both this plugin and the Google Maps API to ensure a comprehensive understanding of the services and how your data is handled.\u003C\u002Fp>\n","Taxi Booking & Cab Booking for WooCommerce. Chauffeur service with fare calculator, distance pricing, and OpenStreetMap.",2000,37449,100,20,"2026-02-27T07:00:00.000Z","6.8.5","5.3","7.0",[20,21,22,23,24],"airport-transfer","cab-booking","chauffeur-service","ride-booking","taxi-booking","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fecab-taxi-booking-manager\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fecab-taxi-booking-manager.zip",86,6,0,"2026-04-23 00:00:00","2026-04-16T10:56:18.058Z","no_bundle",[34,70,86,99,112,129],{"id":35,"url_slug":36,"title":37,"description":38,"plugin_slug":4,"theme_slug":39,"affected_versions":40,"patched_in_version":41,"severity":42,"cvss_score":43,"cvss_vector":44,"vuln_type":45,"published_date":30,"updated_date":46,"references":47,"days_to_patch":49,"patch_diff_files":50,"patch_trac_url":39,"research_status":59,"research_verified":60,"research_rounds_completed":61,"research_plan":62,"research_summary":63,"research_vulnerable_code":64,"research_fix_diff":65,"research_exploit_outline":66,"research_model_used":67,"research_started_at":68,"research_completed_at":69,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2026-28040","e-cab-taxi-booking-manager-for-woocommerce-authenticated-contributor-stored-cross-site-scripting","E-cab Taxi Booking Manager for Woocommerce \u003C= 2.0.0 - Authenticated (Contributor+) Stored Cross-Site Scripting","The E-cab Taxi Booking Manager for Woocommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.0.0 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.",null,"\u003C=2.0.0","2.0.1","medium",6.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2026-04-30 14:53:16",[48],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F9ca2c966-cea4-426b-9c70-5cb98fc1d125?source=api-prod",8,[51,52,53,54,55,56,57,58],"Admin\u002FMPTBM_API_Documentation.php","Admin\u002FMPTBM_CPT.php","Admin\u002FMPTBM_License.php","Admin\u002FMPTBM_Settings.php","Admin\u002FMPTBM_Settings_Global.php","Admin\u002FMPTBM_Wc_Checkout_Billing.php","Admin\u002FMPTBM_Wc_Checkout_Order.php","Admin\u002FMPTBM_Wc_Checkout_Shipping.php","researched",false,3,"# Exploitation Research Plan: CVE-2026-28040 (E-cab Taxi Booking Manager for Woocommerce)\n\n## 1. Vulnerability Summary\nThe **E-cab Taxi Booking Manager for Woocommerce** plugin (versions \u003C= 2.0.0) contains an **Authenticated (Contributor+) Stored Cross-Site Scripting (XSS)** vulnerability. The flaw exists in the handling of REST API key generation via AJAX. Specifically, the `mptbm_generate_api_key` AJAX action does not properly sanitize the \"Key Name\" provided by the user and lacks adequate capability checks, allowing low-privileged users (Contributor+) to store malicious scripts. These scripts execute when an administrator views the \"API Documentation\" page.\n\n## 2. Attack Vector Analysis\n- **Endpoint:** `\u002Fwp-admin\u002Fadmin-ajax.php`\n- **AJAX Action:** `mptbm_generate_api_key`\n- **Vulnerable Parameter:** `name`\n- **Authentication:** Authenticated, Contributor-level user or higher.\n- **Preconditions:** The \"API Documentation\" page must exist (registered in `MPTBM_API_Documentation::add_documentation_menu`). The attacker must be logged in as a Contributor.\n\n## 3. Code Flow\n1. **Entry Point:** A Contributor sends a POST request to `admin-ajax.php` with the action `mptbm_generate_api_key`.\n2. **Hook Registration:** In `Admin\u002FMPTBM_","The E-cab Taxi Booking Manager for Woocommerce plugin is vulnerable to Stored Cross-Site Scripting via the 'Key Name' parameter in its REST API key generation feature. Authenticated attackers with Contributor-level permissions or higher can inject arbitrary scripts into the database, which execute when an administrator views the API Documentation page.","\u002F* Admin\u002FMPTBM_API_Documentation.php (Version 2.0.0) *\u002F\n\n\u002F\u002F Line 18-20: Registration of AJAX handlers for API key management\nadd_action('wp_ajax_mptbm_generate_api_key', array($this, 'ajax_generate_api_key'));\nadd_action('wp_ajax_mptbm_revoke_api_key', array($this, 'ajax_revoke_api_key'));\nadd_action('wp_ajax_mptbm_get_api_keys', array($this, 'ajax_get_api_keys'));\n\n---\n\n\u002F\u002F Line 75-78: UI component where the vulnerable 'name' input is collected\n\u003Cdiv class=\"generate-key-form\">\n    \u003Ch3>\u003C?php esc_html_e('Generate New API Key', 'ecab-taxi-booking-manager'); ?>\u003C\u002Fh3>\n    \u003Cform id=\"generate-api-key-form\">\n        \u003Ctable class=\"form-table\">\n            \u003Ctr>\n                \u003Cth>\u003Clabel for=\"api-key-name\">\u003C?php esc_html_e('Key Name', 'ecab-taxi-booking-manager'); ?>\u003C\u002Flabel>\u003C\u002Fth>\n                \u003Ctd>\u003Cinput type=\"text\" id=\"api-key-name\" name=\"name\" class=\"regular-text\" placeholder=\"\u003C?php esc_attr_e('My Mobile App', 'ecab-taxi-booking-manager'); ?>\" required>\u003C\u002Ftd>\n            \u003C\u002Ftr>","diff -ru \u002Fhome\u002Fdeploy\u002Fwp-safety.org\u002Fdata\u002Fplugin-versions\u002Fecab-taxi-booking-manager\u002F2.0.0\u002FAdmin\u002FMPTBM_API_Documentation.php \u002Fhome\u002Fdeploy\u002Fwp-safety.org\u002Fdata\u002Fplugin-versions\u002Fecab-taxi-booking-manager\u002F2.0.1\u002FAdmin\u002FMPTBM_API_Documentation.php\n--- \u002Fhome\u002Fdeploy\u002Fwp-safety.org\u002Fdata\u002Fplugin-versions\u002Fecab-taxi-booking-manager\u002F2.0.0\u002FAdmin\u002FMPTBM_API_Documentation.php\t2025-12-23 08:49:46.000000000 +0000\n+++ \u002Fhome\u002Fdeploy\u002Fwp-safety.org\u002Fdata\u002Fplugin-versions\u002Fecab-taxi-booking-manager\u002F2.0.1\u002FAdmin\u002FMPTBM_API_Documentation.php\t2026-02-26 15:30:28.000000000 +0000\n@@ -31,7 +31,12 @@\n         }\n         \n         public function enqueue_documentation_assets($hook) {\n-            if ($hook !== 'mptbm_rent_page_mptbm_api_docs') {\n+            \u002F\u002F Check if we're on the API documentation page\n+            \u002F\u002F The hook suffix can vary, so we check for the page parameter\n+            $cpt = MPTBM_Function::get_cpt();\n+            $expected_hook = $cpt . '_page_mptbm_api_docs';\n+            \n+            if ($hook !== $expected_hook && strpos($hook, 'mptbm_api_docs') === false) {\n                 return;\n             }\n             \n@@ -73,7 +78,7 @@\n                         \u003Cdiv class=\"api-keys-manager\">\n                             \u003Cdiv class=\"generate-key-form\">\n                                 \u003Ch3>\u003C?php esc_html_e('Generate New API Key', 'ecab-taxi-booking-manager'); ?>\u003C\u002Fh3>\n-                                \u003Cform id=\"generate-api-key-form\">\n+                                \u003Cform id=\"generate-api-key-form\" action=\"javascript:void(0);\">\n                                     \u003Ctable class=\"form-table\">\n                                         \u003Ctr>\n                                             \u003Cth>\u003Clabel for=\"api-key-name\">\u003C?php esc_html_e('Key Name', 'ecab-taxi-booking-manager'); ?>\u003C\u002Flabel>\u003C\u002Fth>","1. Authenticate to the WordPress site as a Contributor or any user with access to the AJAX endpoints.\n2. Locate the REST API documentation nonce (localized as 'nonce' in the 'mptbm-api-docs' script data).\n3. Send a POST request to `\u002Fwp-admin\u002Fadmin-ajax.php` with the action set to `mptbm_generate_api_key`.\n4. In the `name` parameter, include an XSS payload (e.g., `\u003Cscript>alert(document.domain)\u003C\u002Fscript>`).\n5. Include necessary parameters like `permissions[]` (e.g., `read`) and the extracted nonce.\n6. The plugin stores this key name in the database without sanitization.\n7. When an Administrator logs in and visits the 'API Documentation' page (registered under the plugin's CPT menu), the malicious script will be fetched via `ajax_get_api_keys` and rendered in the browser, triggering the script execution.","gemini-3-flash-preview","2026-05-04 18:36:23","2026-05-04 18:37:15",{"id":71,"url_slug":72,"title":73,"description":74,"plugin_slug":4,"theme_slug":39,"affected_versions":75,"patched_in_version":76,"severity":42,"cvss_score":77,"cvss_vector":78,"vuln_type":79,"published_date":80,"updated_date":81,"references":82,"days_to_patch":84,"patch_diff_files":85,"patch_trac_url":39,"research_status":39,"research_verified":60,"research_rounds_completed":29,"research_plan":39,"research_summary":39,"research_vulnerable_code":39,"research_fix_diff":39,"research_exploit_outline":39,"research_model_used":39,"research_started_at":39,"research_completed_at":39,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2025-54713","taxi-booking-manager-for-woocommerce-missing-authorization-2","Taxi Booking Manager for WooCommerce \u003C= 1.3.0 - Missing Authorization","The E-cab Taxi Booking Manager for Woocommerce plugin for WordPress is vulnerable to unauthorized access due to a missing capability check on a function in all versions up to, and including, 1.3.0. This makes it possible for unauthenticated attackers to perform an unauthorized action.","\u003C=1.3.0","1.3.1",5.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Missing Authorization","2025-08-25 00:00:00","2026-05-05 16:06:55",[83],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fe59928f6-7527-4810-8aab-2a71d348dd9e?source=api-prod",254,[],{"id":87,"url_slug":88,"title":89,"description":90,"plugin_slug":4,"theme_slug":39,"affected_versions":75,"patched_in_version":76,"severity":91,"cvss_score":92,"cvss_vector":93,"vuln_type":79,"published_date":94,"updated_date":95,"references":96,"days_to_patch":14,"patch_diff_files":98,"patch_trac_url":39,"research_status":39,"research_verified":60,"research_rounds_completed":29,"research_plan":39,"research_summary":39,"research_vulnerable_code":39,"research_fix_diff":39,"research_exploit_outline":39,"research_model_used":39,"research_started_at":39,"research_completed_at":39,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2025-8898","taxi-booking-manager-for-woocommerce-e-cab-missing-authorization-to-unauthenticated-privilege-escalation-via-account-tak","Taxi Booking Manager for Woocommerce | E-cab \u003C= 1.3.0 - Missing Authorization to Unauthenticated Privilege Escalation via Account Takeover","The Taxi Booking Manager for Woocommerce | E-cab plugin for WordPress is vulnerable to privilege escalation via account takeover in all versions up to, and including, 1.3.0. This is due to the plugin not properly validating a user's capabilities prior to updating a plugin setting or their identity prior to updating their details like email address. This makes it possible for unauthenticated attackers to change arbitrary user's email addresses, including administrators, and leverage that to reset the user's password and gain access to their account. CVE-2025-54713 is likely a duplicate of this issue.","critical",9.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","2025-08-15 00:00:00","2025-09-03 17:36:23",[97],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Ffd50ac2c-3049-4a44-b7f8-a5f87c42555c?source=api-prod",[],{"id":100,"url_slug":101,"title":102,"description":103,"plugin_slug":4,"theme_slug":39,"affected_versions":104,"patched_in_version":105,"severity":42,"cvss_score":77,"cvss_vector":78,"vuln_type":79,"published_date":106,"updated_date":107,"references":108,"days_to_patch":110,"patch_diff_files":111,"patch_trac_url":39,"research_status":39,"research_verified":60,"research_rounds_completed":29,"research_plan":39,"research_summary":39,"research_vulnerable_code":39,"research_fix_diff":39,"research_exploit_outline":39,"research_model_used":39,"research_started_at":39,"research_completed_at":39,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2025-30839","taxi-booking-manager-for-woocommerce-missing-authorization","Taxi Booking Manager for WooCommerce \u003C= 1.2.1 - Missing Authorization","The Taxi Booking Manager for WooCommerce – WordPress plugin | Ecab plugin for WordPress is vulnerable to unauthorized access due to a missing capability check on a function in all versions up to, and including, 1.2.1. This makes it possible for unauthenticated attackers to perform an unauthorized action.","\u003C=1.2.1","1.2.2","2025-03-27 00:00:00","2025-04-02 13:59:59",[109],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fcc8147ae-fb6c-444c-9113-98bdeff3a4dd?source=api-prod",7,[],{"id":113,"url_slug":114,"title":115,"description":116,"plugin_slug":4,"theme_slug":39,"affected_versions":117,"patched_in_version":118,"severity":119,"cvss_score":120,"cvss_vector":121,"vuln_type":122,"published_date":123,"updated_date":124,"references":125,"days_to_patch":127,"patch_diff_files":128,"patch_trac_url":39,"research_status":39,"research_verified":60,"research_rounds_completed":29,"research_plan":39,"research_summary":39,"research_vulnerable_code":39,"research_fix_diff":39,"research_exploit_outline":39,"research_model_used":39,"research_started_at":39,"research_completed_at":39,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2025-24661","taxi-booking-manager-for-woocommerce-wordpress-plugin-ecab-authenticated-contributor-php-object-injection","Taxi Booking Manager for WooCommerce – WordPress plugin | Ecab \u003C= 1.1.8 - Authenticated (Contributor+) PHP Object Injection","The Taxi Booking Manager for WooCommerce – WordPress plugin | Ecab plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 1.1.8 via deserialization of untrusted input. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present.","\u003C=1.1.8","1.1.9","high",8.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","Deserialization of Untrusted Data","2025-01-20 00:00:00","2025-02-25 17:11:44",[126],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F0e8f2dba-9108-4531-8428-e66b406349b6?source=api-prod",37,[],{"id":130,"url_slug":131,"title":132,"description":133,"plugin_slug":4,"theme_slug":39,"affected_versions":134,"patched_in_version":135,"severity":42,"cvss_score":136,"cvss_vector":137,"vuln_type":45,"published_date":138,"updated_date":139,"references":140,"days_to_patch":49,"patch_diff_files":142,"patch_trac_url":39,"research_status":39,"research_verified":60,"research_rounds_completed":29,"research_plan":39,"research_summary":39,"research_vulnerable_code":39,"research_fix_diff":39,"research_exploit_outline":39,"research_model_used":39,"research_started_at":39,"research_completed_at":39,"research_error":39,"poc_status":39,"poc_video_id":39,"poc_summary":39,"poc_steps":39,"poc_tested_at":39,"poc_wp_version":39,"poc_php_version":39,"poc_playwright_script":39,"poc_exploit_code":39,"poc_has_trace":60,"poc_model_used":39,"poc_verification_depth":39},"CVE-2024-43986","taxi-booking-manager-for-woocommerce-wordpress-plugin-ecab-authenticated-admin-stored-cross-site-scripting","Taxi Booking Manager for WooCommerce – WordPress plugin | Ecab \u003C= 1.0.9 - Authenticated (Admin+) Stored Cross-Site Scripting","The Taxi Booking Manager for WooCommerce – WordPress plugin | Ecab plugin for WordPress is vulnerable to Stored Cross-Site Scripting via admin settings in all versions up to, and including, 1.0.9 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with administrator-level permissions and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This only affects multi-site installations and installations where unfiltered_html has been disabled.","\u003C=1.0.9","1.1.0",4,"CVSS:3.1\u002FAV:N\u002FAC:H\u002FPR:H\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2024-08-29 00:00:00","2024-09-05 14:02:30",[141],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Ff24b3afe-5de3-464c-92af-a654e97f0945?source=api-prod",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":144,"total_installs":145,"avg_security_score":146,"avg_patch_time_days":147,"trust_score":148,"computed_at":149},11,12480,85,90,78,"2026-05-20T04:33:30.634Z",[151,175,193,215],{"slug":152,"name":153,"version":154,"author":155,"author_profile":156,"description":157,"short_description":158,"active_installs":159,"downloaded":160,"rating":161,"num_ratings":162,"last_updated":163,"tested_up_to":164,"requires_at_least":165,"requires_php":166,"tags":167,"homepage":171,"download_link":172,"security_score":13,"vuln_count":173,"unpatched_count":29,"last_vuln_date":174,"fetched_at":31},"cab-grid","Cab Grid","1.6.36","Nimbus Digital","https:\u002F\u002Fprofiles.wordpress.org\u002Fnimusdigital\u002F","\u003Cp>(Disponible en Español | Disponível em Português | Disponible en Français | Disponibile in Italiano | In Deutsch verfügbar | Verkrijgbaar in het Nederlands)\u003C\u002Fp>\n\u003Cp>Cab Grid is a simple fare price calculator for your WordPress website (taxi\u002Fbus\u002Flimo\u002Ftrain\u002Fplane\u002Fcoach). It provides a simple interface for visitors to get fare prices for simple point to point journeys. It can be shown anywhere on your site via shortcode [cabGrid] or widget:\u003C\u002Fp>\n\u003Cp>First define areas, then enter prices for journeys between each area. Prices are entered in a simple pricing table.\u003C\u002Fp>\n\u003Ch3>Deutsch\u003C\u002Fh3>\n\u003Cp>Cab Grid ist ein einfacher Fahrpreis-Kalkulator für Ihre WordPress Website (Taxi \u002F Bus \u002F Limousine \u002F Zug \u002F Flugzeug \u002F Bus). Es bietet eine einfache Oberfläche für Besucher um Kosten für einfache von A-nach—B-Fahrten zu bekommen. Es kann überall auf Ihrer Website über den Shortcode [cabGrid] oder Widget gefunden werden.\u003Cbr \u002F>\nZuerst definieren Sie Bereiche, dann geben Sie Preise für Fahrten zwischen jedem Bereich ein. Die Preise sind in einer einfachen Preistabelle angegeben.\u003C\u002Fp>\n\u003Ch3>Español\u003C\u002Fh3>\n\u003Cp>Cab Grid es un sencillo calculador de tarifas para su WordPress (taxi\u002Fautob�s\u002Flimusina\u002Ftren\u002Favi�n\u002Fentrenador). Dispone de un sencillo interface para que sus visitantes obtengan tarifas para un sencillo trayecto punto a punto. Se puede mostrar en cualquier lugar de su website mediante un shortcode [cabGrid] o un widget.\u003Cbr \u002F>\nEn primer lugar, defina areas y luego introduzca precios para trayectos entre cada �rea. Los precios se introducen en una sencilla tabla de precios.\u003C\u002Fp>\n\u003Ch3>Français\u003C\u002Fh3>\n\u003Cp>Cab Grid est un calculateur de tarif simple pour votre site WordPress (taxi\u002Fbus\u002Flimousine\u002Ftrain\u002Favion \u002Fautocar). Il propose une interface facile d’utilisation où les visiteurs peuvent obtenir des tarifs pour les trajets d’un point d’arrivée à un point de départ. Vous pouvez l’afficher n’importe où sur votre site via un code [cabGrid] ou un widget.\u003Cbr \u002F>\nDéfinissez d’abord les zones, puis entrez les tarifs pour les trajets entre chaque zone. Les tarifs sont inscrits dans un tableau tarificaire simple.\u003C\u002Fp>\n\u003Ch3>Italiano\u003C\u002Fh3>\n\u003Cp>Semplice calcolatore di prezzi per taxi da punto A a punto B.\u003C\u002Fp>\n\u003Ch3>Nederlands\u003C\u002Fh3>\n\u003Cp>Cab Grid is een eenvoudige prijs calculator voor ritprijzen voor uw WordPress website (taxi \u002F bus \u002F limousine \u002F trein \u002F vliegtuig \u002F auto). Het biedt een eenvoudige interface voor bezoekers om ritprijzen te ontvangen voor eenvoudige punt naar punt ritten. Het kan overal op uw site worden weergegeven via een verkorte code [cabGrid] of widget.\u003Cbr \u002F>\nBepaal eerst de gebieden, voer dan de prijzen voor het reizen tussen elk gebied in. Prijzen worden ingevoerd in een eenvoudige prijzentabel.\u003C\u002Fp>\n\u003Ch3>Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Customisable currency (set your own symbol $\u002F£\u002F€\u002F¥\u002Fetc.)\u003C\u002Fli>\n\u003Cli>Customisable CSS (styling)\u003C\u002Fli>\n\u003Cli>Customisable booking message\u003C\u002Fli>\n\u003Cli>Can be displayed on your site via a shortcode: [cabGrid] or as a widget in your sidebar\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fcabgrid.com\u002Fhelp-and-support\u002Ftranslations\u002Fcab-grid-translations\u002F\" rel=\"nofollow ugc\">Translation ready\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>More info…\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fcabgrid.com\u002F#cabGridDemo\" rel=\"nofollow ugc\">Demo\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fcabgrid.com\u002Fsupport\u002F\" rel=\"nofollow ugc\">Support\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002F--QvY467ecM\" rel=\"nofollow ugc\">Install Video\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cp>No external requirements\u003C\u002Fp>\n","Easily add a taxi fare price calculator to your website via shortcode [cabGrid] or widget. Simply enter journey prices in a table.",200,34960,88,19,"2026-03-15T15:41:00.000Z","6.9.4","3.0","",[20,168,169,24,170],"price-calculator","taxi","taxi-fare-calculator","https:\u002F\u002Fcabgrid.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcab-grid.zip",1,"2023-04-21 00:00:00",{"slug":176,"name":177,"version":178,"author":7,"author_profile":8,"description":179,"short_description":180,"active_installs":181,"downloaded":182,"rating":13,"num_ratings":173,"last_updated":183,"tested_up_to":164,"requires_at_least":184,"requires_php":185,"tags":186,"homepage":189,"download_link":190,"security_score":191,"vuln_count":173,"unpatched_count":29,"last_vuln_date":192,"fetched_at":31},"car-rental-manager","Car Rental Manager – Online Vehicle Booking System","1.3.5","\u003Cp>Launch your car rental business effortlessly with Car Rental Manager, a powerful and free WordPress plugin that lets you create a professional car rental booking system in just a few steps!\u003Cbr \u002F>\nWhether you’re renting cars, scooters, vans, or any other vehicles, Car Rental Manager offers a robust and user-friendly solution to manage your rental business directly from your WordPress website. Perfect for entrepreneurs, small businesses, or web agencies, this plugin empowers you to set up a seamless booking system without coding expertise. With WooCommerce integration, your customers can enjoy a smooth booking process and secure payments, making your rental business both accessible and trustworthy.\u003Cbr \u002F>\nThe free version of Car Rental Manager includes a comprehensive set of features to get you started, with the option to upgrade to the Pro version for advanced functionality directly from your WordPress admin panel. Compatible with any WordPress theme, this plugin ensures a polished and professional booking experience that blends seamlessly into your website.\u003C\u002Fp>\n\u003Cp>Car rental manager is an easy-to-use car rental booking management system that simplifies and streamlines car rental operations.\u003C\u002Fp>\n\u003Cp>Let’s look at the key features that make the plugin more acceptable in its category.\u003C\u002Fp>\n\u003Ch3>Key Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>⚡ \u003Cstrong>Effortless Setup\u003C\u002Fstrong> – Launch your rental system in minutes with a simple guided setup—no coding skills required.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>🛒 \u003Cstrong>WooCommerce Integration\u003C\u002Fstrong> – Seamlessly manage bookings and accept secure payments via popular gateways.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>💵 \u003Cstrong>Flexible Pricing Options\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Tiered Discounts: Automatic discounts by rental duration or booking volume.  \u003C\u002Fli>\n\u003Cli>Day-wise Pricing: Set different rates for specific weekdays.  \u003C\u002Fli>\n\u003Cli>Seasonal Pricing (Free): Adjust prices for holidays or peak seasons.  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>🔁 \u003Cstrong>Recurring Bookings\u003C\u002Fstrong> – Allow customers to schedule repeat rentals for consistent business.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>📅 \u003Cstrong>Advanced Booking Control\u003C\u002Fstrong> – Define how far in advance customers can book.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>⏰ \u003Cstrong>24\u002F7 Availability\u003C\u002Fstrong> – Support round-the-clock rentals for maximum convenience.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>🚗 \u003Cstrong>Vehicle Management\u003C\u002Fstrong> – Create detailed vehicle profiles with images, features, and descriptions.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>📆 \u003Cstrong>Availability Calendar\u003C\u002Fstrong> – Show real-time availability with an interactive monthly calendar.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>✅ \u003Cstrong>Streamlined Booking Flow\u003C\u002Fstrong> – User-friendly, customizable front-end booking process powered by WooCommerce.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>📦 \u003Cstrong>Order & Admin Management\u003C\u002Fstrong> – Track and manage reservations with an intuitive back-end dashboard.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>🌍 \u003Cstrong>Multi-Language Ready\u003C\u002Fstrong> – Reach global customers with built-in translation and localization support.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>🔗 \u003Cstrong>Shortcode Support\u003C\u002Fstrong> – Embed booking forms, calendars, and listings anywhere on your site.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>📱 \u003Cstrong>Responsive by Design\u003C\u002Fstrong> – Optimized for desktops, tablets, and mobile devices.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Explore The Demo:\u003C\u002Fh3>\n\u003Cp>✅  \u003Ca href=\"https:\u002F\u002Fcar.wprently.com\u002F\" rel=\"nofollow ugc\">Live Demo for Car Rental \u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Buy Pro Version:\u003C\u002Fh3>\n\u003Cp>✅  \u003Ca href=\"https:\u002F\u002Fmage-people.com\u002Fproduct\u002Fwordpress-car-rental-plugin\u002F\" rel=\"nofollow ugc\">Get Pro Version \u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Guideline\u003C\u002Fh3>\n\u003Cp>Shortcode:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[mpcrbm_booking form='inline' progressbar='no']\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This is a simple shortcode that will display only the search form, similar to our homepage\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[mpcrbm_booking form='inline' title='yes' progressbar='no' search_result='yes' ajax_search='yes']\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This is a shortcode that you will decide when the title will show or not. If title=no, then the search form title bar will not show, and if search_result=’yes’ then the  default search result will show with form, and if ajax_search=’yes’ then the  search result will show as ajax, not a redirection.\u003Cbr \u002F>\nThis shortcode will show the form as an inline form, and  it can also be a  horizontal form, and the progressbar can be yes or no\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[mpcrbm_booking form='horizontal' progressbar='no']\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>and also\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[mpcrbm_car_list mpcrbm_left_filter='yes' style='grid' show='6' ]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This is a shortcode to display the car list with a left filter.\u003C\u002Fp>\n\u003Cp>With \u003Cstrong>Car Rental Manager\u003C\u002Fstrong>, you can transform your WordPress site into a fully functional car rental platform in just a few steps:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Install the free plugin from the WordPress repository.  \u003C\u002Fli>\n\u003Cli>Add your vehicles, set pricing rules, and configure WooCommerce for secure payments.  \u003C\u002Fli>\n\u003Cli>Embed the booking system on your site using shortcodes.  \u003C\u002Fli>\n\u003Cli>Start accepting bookings and managing your rental business with ease!  \u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>This free plugin provides all the tools you need to kickstart your car rental business at no cost.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Features like \u003Cstrong>tiered discounts\u003C\u002Fstrong>, \u003Cstrong>day-wise pricing\u003C\u002Fstrong>, and \u003Cstrong>seasonal pricing\u003C\u002Fstrong> give you the flexibility to compete in any market.  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce integration\u003C\u002Fstrong> ensures secure and reliable transactions.  \u003C\u002Fli>\n\u003Cli>For advanced features like \u003Cstrong>PDF export\u003C\u002Fstrong> and \u003Cstrong>form support\u003C\u002Fstrong>, the Pro version is available directly from your WordPress dashboard.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin utilizes several external services and libraries to provide its functionality. Here’s a detailed breakdown of what services are used and how:\u003C\u002Fp>\n\u003Cp>Note: All external services are used only when necessary for the functionality requested by the user. No personal data is transmitted without user consent, and all data transmissions are done securely over HTTPS connections.\u003C\u002Fp>\n","WPCarRently – ready-to-use WordPress car rental booking plugin. Manage vehicles, WooCommerce payments, and bookings effortlessly for your business.",80,2366,"2026-04-08T08:08:00.000Z","5.6","7.2",[21,187,188,23],"car","car-rental","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcar-rental-manager","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcar-rental-manager.zip",99,"2025-12-24 00:00:00",{"slug":194,"name":195,"version":196,"author":197,"author_profile":198,"description":199,"short_description":200,"active_installs":159,"downloaded":201,"rating":13,"num_ratings":202,"last_updated":203,"tested_up_to":204,"requires_at_least":205,"requires_php":185,"tags":206,"homepage":211,"download_link":212,"security_score":213,"vuln_count":202,"unpatched_count":29,"last_vuln_date":214,"fetched_at":31},"cab-fare-calculator","Cab fare calculator","1.2.4","kanev","https:\u002F\u002Fprofiles.wordpress.org\u002Fkanev\u002F","\u003Cp>Taxi Booking for WordPress is a feature-rich plugin designed for transportation services like taxis, limousines, and airport shuttles. It allows businesses to easily integrate booking functionality into their WordPress websites, offering dynamic pricing, vehicle management, and route customization.\u003C\u002Fp>\n\u003Cp>Benefits for your business:\u003Cbr \u002F>\nFlexibility: Adapts to a range of transport needs with support for dynamic or fixed pricing.\u003Cbr \u002F>\nCustomization: Pro features like multi-language support, multiple payment gateways, and editable email templates ensure it fits various business models.\u003Cbr \u002F>\nUser-Friendly Management: A clean back-end interface simplifies vehicle and route configuration.\u003C\u002Fp>\n\u003Cp>To overcome the learning curve, the plugin provides comprehensive documentation, including step-by-step guides for setting up points of interest (POIs), fixed fare routes, and email notifications.\u003Cbr \u002F>\nFor additional support, you can access a ticket system at \u003Ca href=\"https:\u002F\u002Fkanev.com\u002Fsupport\u002Ftaxi-booking-for-wordpress\" rel=\"nofollow ugc\">kanev.com\u003C\u002Fa> available for both Free and Pro users.\u003C\u002Fp>\n\u003Cp>For more details, check the official \u003Ca href=\"https:\u002F\u002Fkanev.com\u002Fdocs\u002Ftaxi-booking-for-wordpress\u002F73-taxi-booking-for-wordpress\" rel=\"nofollow ugc\">documentation\u003C\u002Fa> or explore the demo.\u003C\u002Fp>\n\u003Cp>See \u003Ca href=\"https:\u002F\u002Ftbwp.kanev.com\u002Fbook-now\" rel=\"nofollow ugc\">Taxi Booking for WordPress demo\u003C\u002Fa> here. Contact us to get a back end demo access.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fkanev.com\u002Fproducts\u002Ftaxi-booking-for-wordpress\" rel=\"nofollow ugc\">Get Taxi Booking Pro for WordPress here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>With the Pro version of the plugin you get multiple payment gateways, translation into any language, custom fields to collect more information or upsell products or services.\u003C\u002Fp>\n","This plugin will add an online taxi booking form on your WordPress website. You will be able to manage your vehicles and orders through the back end.",13673,2,"2025-03-18T06:32:00.000Z","6.6.5","4.0",[207,24,208,209,210],"booking-ride","taxi-booking-form","taxi-map","taxi-ride","https:\u002F\u002Fkanev.com\u002Fproducts\u002Ftaxi-booking-for-wordpress","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcab-fare-calculator.1.2.4.zip",91,"2024-09-04 00:00:00",{"slug":216,"name":217,"version":105,"author":218,"author_profile":219,"description":220,"short_description":221,"active_installs":222,"downloaded":223,"rating":29,"num_ratings":29,"last_updated":224,"tested_up_to":164,"requires_at_least":184,"requires_php":185,"tags":225,"homepage":166,"download_link":230,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":39,"fetched_at":31},"executive-vip-transfer-service","Executive VIP Transfer Service","Gksoft Dev Team","https:\u002F\u002Fprofiles.wordpress.org\u002Fgksoftdev\u002F","\u003Cp>⚠️ \u003Cstrong>WooCommerce is required.\u003C\u002Fstrong>\u003Cbr \u002F>\nThis plugin relies on WooCommerce to process bookings and manage orders.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Executive VIP Transfer Service\u003C\u002Fstrong> is a professional booking system for \u003Cstrong>chauffeur, limousine, and VIP airport transfer businesses\u003C\u002Fstrong>.\u003Cbr \u002F>\nCustomers can book rides with Google-powered address autocomplete and distance calculation, while you manage currency, pricing, and (in Pro) vehicles from the dashboard.\u003C\u002Fp>\n\u003Ch3>✨ Free Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Customizable transfer booking form  \u003C\u002Fli>\n\u003Cli>Google Places \u003Cstrong>address autocomplete\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>Google Distance Matrix \u003Cstrong>distance-based pricing\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>Minimum price & max distance limits  \u003C\u002Fli>\n\u003Cli>WooCommerce order integration  \u003C\u002Fli>\n\u003Cli>Automatic \u003Cstrong>Order Tracking\u003C\u002Fstrong> page with secure links  \u003C\u002Fli>\n\u003Cli>Modern, responsive UI  \u003C\u002Fli>\n\u003Cli>Admin settings:\n\u003Cul>\n\u003Cli>\u003Cstrong>Country\u003C\u002Fstrong> restriction for autocomplete  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Currency\u003C\u002Fstrong> & symbol (€, $, ₺, £, etc.)  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Per-km Pricing\u003C\u002Fstrong> (global)  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Minimum Service Price\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Maximum Distance (km)\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Contact Number\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cblockquote>\n\u003Cp>Note: The interactive route map is part of the \u003Cstrong>Pro\u003C\u002Fstrong> experience. Free version focuses on fast booking with distance-based pricing and autocomplete.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>💎 Pro Features\u003C\u002Fh3>\n\u003Cp>Upgrade to \u003Ca href=\"https:\u002F\u002Fgksoft.dev\u002Fplugins\u002Fexecutive-vip-transfer-service\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Pro Version\u003C\u002Fstrong>\u003C\u002Fa> to unlock business-critical features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>🚗 \u003Cstrong>Vehicle management\u003C\u002Fstrong> (brand, capacity, image)  \u003C\u002Fli>\n\u003Cli>💵 \u003Cstrong>Vehicle-specific per-km pricing\u003C\u002Fstrong> (car cards auto-update after distance is calculated)  \u003C\u002Fli>\n\u003Cli>🗺️ \u003Cstrong>Live route map\u003C\u002Fstrong> with Directions (drawn after route is estimated), geolocation start, and conflict-safe loader  \u003C\u002Fli>\n\u003Cli>🕒 \u003Cstrong>Pickup date & time\u003C\u002Fstrong> fields with 30-minute slots and min-time logic  \u003C\u002Fli>\n\u003Cli>🧾 Enhanced tracking\u002Fsummary (distance, duration, vehicle brand)  \u003C\u002Fli>\n\u003Cli>🧭 \u003Cstrong>Priority support\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Works seamlessly with the free core — just activate your license key and Pro modules are enabled.\u003C\u002Fp>\n\u003Ch3>🧰 Requirements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>WordPress \u003Cstrong>5.6+\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>PHP \u003Cstrong>7.2+\u003C\u002Fstrong>  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce\u003C\u002Fstrong> active  \u003C\u002Fli>\n\u003Cli>Google Cloud APIs enabled (and a valid API key):\n\u003Cul>\n\u003Cli>\u003Cstrong>Maps JavaScript API\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Places API\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Distance Matrix API\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>💡 \u003Cem>Tip:\u003C\u002Fem> Restrict your API key by HTTP referrer and set daily limits for security.\u003C\u002Fp>\n\u003Ch3>Shortcodes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ccode>[execvitr_form]\u003C\u002Fcode> — Displays the transfer booking form.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The \u003Cstrong>Order Tracking\u003C\u002Fstrong> page is created automatically (\u003Ccode>execvitr-tracking\u003C\u002Fcode>).\u003Cbr \u002F>\nCustomers are redirected there with a secure, time-stamped link after placing an order.\u003Cbr \u002F>\n\u003Cem>(There is no separate tracking shortcode.)\u003C\u002Fem>\u003C\u002Fp>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Cp>Upon activation, the plugin automatically creates:\u003Cbr \u002F>\n– A \u003Cstrong>Booking Form\u003C\u002Fstrong> page with \u003Ccode>[execvitr_form]\u003C\u002Fcode>\u003Cbr \u002F>\n– A \u003Cstrong>Tracking\u003C\u002Fstrong> page for order lookup\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customers can:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Enter pickup & drop-off addresses (Google Autocomplete)\u003Cbr \u002F>\n– View price estimates instantly (km-based)\u003Cbr \u002F>\n– Choose vehicle (Pro) and schedule date\u002Ftime (Pro)\u003Cbr \u002F>\n– Complete payment via WooCommerce checkout\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Admins can:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Configure API key, pricing, currency, and country restrictions\u003Cbr \u002F>\n– (Pro) Add\u002Fmanage vehicles in \u003Cstrong>Execvitr Cars\u003C\u002Fstrong> with per-km rates\u003Cbr \u002F>\n– View\u002Fmanage all bookings in WooCommerce Orders\u003C\u002Fp>\n\u003Ch3>Privacy\u003C\u002Fh3>\n\u003Cp>This plugin uses the \u003Cstrong>Google Maps JavaScript API\u003C\u002Fstrong> and the \u003Cstrong>Distance Matrix API\u003C\u002Fstrong> solely to calculate distances and travel times.\u003Cbr \u002F>\nNo personal analytics or tracking is performed by the plugin.\u003C\u002Fp>\n\u003Cp>Data collected during checkout follows your site’s WooCommerce privacy policy.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fmaps.google.com\u002Fhelp\u002Fterms_maps\u002F\" rel=\"nofollow ugc\">Google Maps Terms of Service\u003C\u002Fa>  \u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" rel=\"nofollow ugc\">Google Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Complete VIP transfer booking plugin for luxury chauffeur services, airport pickups, and private tours with distance-based pricing.",10,1037,"2026-03-21T23:21:00.000Z",[20,226,227,228,229],"booking","chauffeur","executive-transfer","vip-transfer","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexecutive-vip-transfer-service.zip",{"attackSurface":232,"codeSignals":767,"taintFlows":1203,"riskAssessment":1439,"analyzedAt":1460},{"hooks":233,"ajaxHandlers":702,"restRoutes":760,"shortcodes":761,"cronEvents":765,"entryPointCount":454,"unprotectedCount":14},[234,240,245,249,253,257,261,264,266,269,272,275,278,282,285,290,294,297,300,303,306,308,313,316,320,323,324,327,330,334,337,341,344,347,349,353,356,359,362,365,368,370,374,376,378,379,381,383,384,386,388,389,393,395,398,400,403,405,408,410,412,415,418,420,423,425,427,429,432,434,436,438,441,445,449,455,459,462,465,469,473,477,480,483,487,489,493,497,500,503,506,510,514,518,522,526,529,532,536,540,543,546,550,554,557,558,559,563,564,567,570,574,576,579,582,585,588,592,595,598,600,603,606,608,611,613,617,621,624,628,631,635,639,642,646,649,652,656,659,660,664,667,670,673,677,679,681,683,684,687,690,692,694,695,697,699],{"type":235,"name":236,"callback":237,"file":238,"line":239},"action","init","add_dummy_data","Admin\\MPTBM_Admin.php",14,{"type":241,"name":242,"callback":243,"priority":222,"file":238,"line":244},"filter","use_block_editor_for_post_type","disable_gutenberg",16,{"type":241,"name":246,"callback":247,"file":238,"line":248},"wp_mail_content_type","email_content_type",17,{"type":235,"name":250,"callback":251,"priority":29,"file":238,"line":252},"upgrader_process_complete","flush_rewrite",18,{"type":235,"name":254,"callback":255,"file":256,"line":239},"admin_menu","analytics_menu","Admin\\MPTBM_Analytics_Dashboard.php",{"type":235,"name":258,"callback":259,"file":256,"line":260},"admin_enqueue_scripts","enqueue_analytics_scripts",15,{"type":235,"name":254,"callback":262,"file":263,"line":239},"add_documentation_menu","Admin\\MPTBM_API_Documentation.php",{"type":235,"name":258,"callback":265,"file":263,"line":260},"enqueue_documentation_assets",{"type":235,"name":236,"callback":267,"file":268,"line":239},"add_cpt","Admin\\MPTBM_CPT.php",{"type":241,"name":270,"callback":271,"file":268,"line":260},"manage_mptbm_rent_posts_columns","mptbm_rent_columns",{"type":235,"name":273,"callback":274,"priority":222,"file":268,"line":244},"manage_mptbm_rent_posts_custom_column","mptbm_rent_custom_column",{"type":241,"name":276,"callback":277,"file":268,"line":248},"manage_edit-mptbm_rent_sortable_columns","mptbm_rent_sortable_columns",{"type":235,"name":279,"callback":280,"priority":191,"file":281,"line":260},"admin_init","dummy_import","Admin\\MPTBM_Dummy_Import.php",{"type":235,"name":254,"callback":283,"file":284,"line":239},"guideline_menu","Admin\\MPTBM_Guideline.php",{"type":235,"name":286,"callback":287,"priority":222,"file":288,"line":289},"wp_insert_post","create_hidden_wc_product_on_publish","Admin\\MPTBM_Hidden_Product.php",12,{"type":235,"name":291,"callback":292,"priority":191,"file":288,"line":293},"save_post","run_link_product_on_save",13,{"type":235,"name":295,"callback":296,"file":288,"line":239},"parse_query","hide_wc_hidden_product_from_product_list",{"type":235,"name":298,"callback":299,"file":288,"line":260},"wp","hide_hidden_wc_product_from_frontend",{"type":235,"name":301,"callback":302,"file":288,"line":248},"before_delete_post","delete_hidden_product_on_taxi_delete",{"type":241,"name":304,"callback":305,"priority":222,"file":288,"line":252},"woocommerce_add_to_cart_validation","validate_add_to_cart",{"type":235,"name":291,"callback":292,"priority":191,"file":288,"line":307},71,{"type":235,"name":309,"callback":310,"priority":311,"file":312,"line":289},"mp_license_page_plugin_list","tour_licence",50,"Admin\\MPTBM_License.php",{"type":235,"name":254,"callback":314,"file":315,"line":289},"quick_setup_menu","Admin\\MPTBM_Quick_Setup.php",{"type":235,"name":317,"callback":318,"file":319,"line":239},"add_meta_boxes","settings_meta","Admin\\MPTBM_Settings.php",{"type":235,"name":254,"callback":321,"file":322,"line":248},"global_settings_menu","Admin\\MPTBM_Settings_Global.php",{"type":235,"name":279,"callback":279,"file":322,"line":252},{"type":241,"name":325,"callback":326,"priority":222,"file":322,"line":162},"mp_settings_sec_reg","settings_sec_reg",{"type":241,"name":328,"callback":329,"priority":222,"file":322,"line":14},"mp_settings_sec_fields","settings_sec_fields",{"type":241,"name":331,"callback":332,"priority":222,"file":322,"line":333},"filter_mp_global_settings","global_taxi",21,{"type":235,"name":254,"callback":335,"file":336,"line":289},"status_menu","Admin\\MPTBM_Status.php",{"type":235,"name":338,"callback":339,"priority":222,"file":340,"line":239},"locations_add_form_fields","add_location_geo_field","Admin\\MPTBM_Taxonomy_Meta.php",{"type":235,"name":342,"callback":343,"priority":222,"file":340,"line":260},"locations_edit_form_fields","edit_location_geo_field",{"type":235,"name":345,"callback":346,"priority":222,"file":340,"line":252},"created_locations","save_location_geo_field",{"type":235,"name":348,"callback":346,"priority":222,"file":340,"line":162},"edited_locations",{"type":235,"name":350,"callback":351,"priority":222,"file":352,"line":244},"mptbm_wc_checkout_tab_content","tab_content","Admin\\MPTBM_Wc_Checkout_Billing.php",{"type":235,"name":354,"callback":355,"file":352,"line":248},"admin_notices","mp_admin_notice",{"type":235,"name":236,"callback":357,"file":358,"line":162},"get_settings_options","Admin\\MPTBM_Wc_Checkout_Fields.php",{"type":235,"name":360,"callback":361,"file":358,"line":14},"add_mptbm_admin_script","admin_enqueue",{"type":235,"name":363,"callback":364,"priority":191,"file":358,"line":333},"add_mptbm_frontend_script","frontend_enqueue",{"type":235,"name":254,"callback":366,"file":358,"line":367},"checkout_menu",22,{"type":235,"name":354,"callback":355,"file":358,"line":369},23,{"type":235,"name":371,"callback":372,"priority":222,"file":358,"line":373},"add_switch_button","switch_button",24,{"type":235,"name":350,"callback":351,"priority":222,"file":375,"line":244},"Admin\\MPTBM_Wc_Checkout_Order.php",{"type":235,"name":279,"callback":377,"file":375,"line":248},"save_mptbm_wc_other_field_settings",{"type":235,"name":354,"callback":355,"file":375,"line":252},{"type":235,"name":350,"callback":351,"priority":222,"file":380,"line":244},"Admin\\MPTBM_Wc_Checkout_Settings.php",{"type":235,"name":382,"callback":382,"file":380,"line":248},"mptbm_save_checkout_fields_settings",{"type":235,"name":354,"callback":355,"file":380,"line":162},{"type":235,"name":350,"callback":351,"priority":222,"file":385,"line":244},"Admin\\MPTBM_Wc_Checkout_Shipping.php",{"type":235,"name":279,"callback":387,"file":385,"line":248},"save_mptbm_wc_shipping_field_settings",{"type":235,"name":354,"callback":355,"file":385,"line":252},{"type":235,"name":390,"callback":391,"file":392,"line":293},"add_mptbm_settings_tab_content","base_price_settings","Admin\\settings\\MPTBM_Base_Price_Settings.php",{"type":235,"name":291,"callback":394,"priority":191,"file":392,"line":239},"save_base_price_settings",{"type":235,"name":390,"callback":396,"file":397,"line":293},"date_settings","Admin\\settings\\MPTBM_Date_Settings.php",{"type":235,"name":291,"callback":399,"priority":191,"file":397,"line":239},"save_date_time_settings",{"type":235,"name":317,"callback":401,"file":402,"line":289},"mptbm_extra_service_meta","Admin\\settings\\MPTBM_Extra_Service.php",{"type":235,"name":291,"callback":404,"file":402,"line":293},"save_ex_service_settings",{"type":235,"name":406,"callback":407,"file":402,"line":260},"mptbm_extra_service_item","extra_service_item",{"type":235,"name":390,"callback":409,"file":402,"line":248},"ex_service_settings",{"type":235,"name":291,"callback":411,"file":402,"line":252},"save_ex_service",{"type":235,"name":390,"callback":413,"file":414,"line":289},"general_settings","Admin\\settings\\MPTBM_General_Settings.php",{"type":235,"name":416,"callback":417,"file":414,"line":293},"add_hidden_mptbm_features_item","features_item",{"type":235,"name":291,"callback":419,"file":414,"line":239},"save_general_settings",{"type":235,"name":317,"callback":421,"file":422,"line":239},"mptbm_operation_area_meta","Admin\\settings\\MPTBM_Operation_Areas.php",{"type":235,"name":291,"callback":424,"file":422,"line":260},"save_operate_areas_settings",{"type":235,"name":390,"callback":426,"file":422,"line":248},"ex_opration_setting",{"type":235,"name":291,"callback":428,"file":422,"line":252},"save_operate_areas_tab_settings",{"type":235,"name":390,"callback":430,"priority":222,"file":431,"line":239},"price_settings","Admin\\settings\\MPTBM_Price_Settings.php",{"type":235,"name":291,"callback":433,"priority":222,"file":431,"line":260},"save_price_settings",{"type":235,"name":390,"callback":351,"file":435,"line":289},"Admin\\settings\\MPTBM_Tax_Settings.php",{"type":235,"name":291,"callback":437,"file":435,"line":293},"settings_save",{"type":235,"name":236,"callback":439,"file":440,"line":49},"register_booking_block","Frontend\\MPTBM_Block.php",{"type":241,"name":442,"callback":443,"file":444,"line":293},"single_template","load_single_template","Frontend\\MPTBM_Frontend.php",{"type":235,"name":446,"callback":447,"priority":222,"file":448,"line":289},"mptbm_transport_search","transport_search","Frontend\\MPTBM_Transport_Search.php",{"type":241,"name":450,"callback":451,"priority":452,"file":453,"line":454},"woocommerce_checkout_fields","inject_checkout_fields",999,"Frontend\\MPTBM_Wc_Checkout_Fields_Helper.php",31,{"type":235,"name":456,"callback":457,"file":453,"line":458},"woocommerce_after_checkout_billing_form","closure",34,{"type":235,"name":460,"callback":457,"file":453,"line":461},"woocommerce_after_checkout_shipping_form",35,{"type":235,"name":463,"callback":457,"file":453,"line":464},"woocommerce_after_checkout_order_form",36,{"type":235,"name":466,"callback":467,"file":453,"line":468},"wp_head","add_hidden_field_css",39,{"type":235,"name":470,"callback":471,"priority":191,"file":453,"line":472},"woocommerce_checkout_update_order_meta","save_custom_checkout_fields_to_order",315,{"type":235,"name":474,"callback":475,"priority":191,"file":453,"line":476},"woocommerce_before_order_details","order_details",316,{"type":235,"name":478,"callback":475,"priority":191,"file":453,"line":479},"woocommerce_admin_order_data_after_billing_address",317,{"type":235,"name":481,"callback":475,"priority":191,"file":453,"line":482},"woocommerce_admin_order_data_after_shipping_address",318,{"type":241,"name":484,"callback":485,"file":453,"line":486},"woocommerce_enable_order_notes_field","__return_false",392,{"type":235,"name":236,"callback":457,"file":453,"line":488},963,{"type":235,"name":490,"callback":491,"file":453,"line":492},"wp_enqueue_scripts","enqueue_file_upload_js",968,{"type":241,"name":494,"callback":495,"priority":147,"file":496,"line":333},"woocommerce_add_cart_item_data","add_cart_item_data","Frontend\\MPTBM_Woocommerce.php",{"type":235,"name":498,"callback":499,"priority":147,"file":496,"line":367},"woocommerce_before_calculate_totals","before_calculate_totals",{"type":241,"name":501,"callback":502,"priority":147,"file":496,"line":369},"woocommerce_cart_item_thumbnail","cart_item_thumbnail",{"type":241,"name":504,"callback":505,"priority":147,"file":496,"line":373},"woocommerce_get_item_data","get_item_data",{"type":241,"name":507,"callback":508,"priority":14,"file":496,"line":509},"woocommerce_hidden_order_itemmeta","hide_internal_item_meta",25,{"type":241,"name":511,"callback":512,"priority":222,"file":496,"line":513},"woocommerce_order_item_quantity_html","filter_order_item_quantity",27,{"type":235,"name":515,"callback":516,"file":496,"line":517},"woocommerce_after_checkout_validation","after_checkout_validation",29,{"type":235,"name":519,"callback":520,"priority":147,"file":496,"line":521},"woocommerce_checkout_create_order_line_item","checkout_create_order_line_item",30,{"type":235,"name":523,"callback":524,"priority":147,"file":496,"line":525},"woocommerce_checkout_order_processed","checkout_order_processed",32,{"type":235,"name":527,"callback":524,"priority":147,"file":496,"line":528},"woocommerce_store_api_checkout_order_processed",33,{"type":241,"name":530,"callback":531,"file":496,"line":458},"woocommerce_order_status_changed","order_status_changed",{"type":235,"name":533,"callback":534,"file":496,"line":535},"woocommerce_after_order_notes","render_custom_checkout_fields",40,{"type":235,"name":537,"callback":538,"file":496,"line":539},"woocommerce_checkout_process","validate_custom_checkout_fields",41,{"type":235,"name":470,"callback":541,"file":496,"line":542},"save_custom_checkout_fields",42,{"type":235,"name":478,"callback":544,"priority":222,"file":496,"line":545},"display_custom_fields_in_admin_order",45,{"type":241,"name":547,"callback":548,"priority":222,"file":496,"line":549},"woocommerce_email_order_meta_fields","add_custom_fields_to_email",47,{"type":235,"name":551,"callback":552,"file":496,"line":553},"wp_footer","enqueue_checkout_fields_js",1379,{"type":235,"name":236,"callback":555,"file":556,"line":239},"language_load","inc\\MPTBM_Dependencies.php",{"type":235,"name":258,"callback":361,"priority":181,"file":556,"line":248},{"type":235,"name":490,"callback":364,"priority":181,"file":556,"line":252},{"type":235,"name":560,"callback":561,"priority":562,"file":556,"line":162},"admin_head","js_constant",5,{"type":235,"name":466,"callback":561,"priority":562,"file":556,"line":14},{"type":241,"name":565,"callback":566,"priority":14,"file":556,"line":513},"script_loader_tag","whitelist_google_maps_script",{"type":235,"name":354,"callback":568,"file":556,"line":569},"map_api_not_active",69,{"type":235,"name":571,"callback":572,"file":573,"line":333},"rest_api_init","register_routes","inc\\MPTBM_Rest_Api.php",{"type":235,"name":236,"callback":575,"file":573,"line":367},"ensure_database_tables",{"type":241,"name":577,"callback":578,"priority":222,"file":573,"line":509},"rest_pre_dispatch","check_api_permissions",{"type":235,"name":571,"callback":580,"file":573,"line":581},"add_cors_support",28,{"type":235,"name":583,"callback":584,"file":573,"line":454},"wp_daily_cron","cleanup_old_api_logs",{"type":241,"name":586,"callback":457,"file":573,"line":587},"rest_pre_serve_request",800,{"type":241,"name":589,"callback":590,"priority":222,"file":591,"line":373},"theme_page_templates","mptbm_on_activation_template_create","MPTBM_Plugin.php",{"type":241,"name":593,"callback":594,"priority":191,"file":591,"line":509},"template_include","mptbm_change_page_template",{"type":235,"name":279,"callback":596,"file":591,"line":597},"wptbm_assign_template_to_page",26,{"type":235,"name":490,"callback":599,"file":591,"line":513},"enqueue_frontend_assets",{"type":235,"name":601,"callback":602,"priority":222,"file":591,"line":521},"update_option_mp_global_settings","auto_assign_template_on_settings_save",{"type":235,"name":604,"callback":605,"priority":222,"file":591,"line":528},"save_post_page","auto_assign_template_on_page_save",{"type":235,"name":354,"callback":607,"file":591,"line":464},"show_template_assignment_notice",{"type":235,"name":609,"callback":610,"priority":147,"file":591,"line":569},"activated_plugin","activation_redirect",{"type":235,"name":612,"callback":612,"file":591,"line":148},"enqueue_block_editor_assets",{"type":235,"name":614,"callback":615,"file":591,"line":616},"elementor\u002Fwidgets\u002Fregister","register_elementor_widget",82,{"type":235,"name":618,"callback":619,"file":591,"line":620},"elementor\u002Felements\u002Fcategories_registered","add_elementor_widget_category",83,{"type":235,"name":609,"callback":622,"priority":147,"file":591,"line":623},"activation_redirect_setup",89,{"type":235,"name":625,"callback":626,"file":591,"line":627},"wp_loaded","create_pages",115,{"type":235,"name":625,"callback":629,"file":591,"line":630},"create_api_tables",116,{"type":235,"name":632,"callback":633,"priority":452,"file":591,"line":634},"wp_print_styles","dequeue_conflicting_styles",429,{"type":235,"name":636,"callback":637,"priority":222,"file":638,"line":289},"add_mp_hidden_table","hidden_table","mp_global\\class\\MP_Custom_Layout.php",{"type":235,"name":640,"callback":641,"priority":222,"file":638,"line":293},"add_mp_pagination_section","pagination",{"type":235,"name":643,"callback":644,"priority":222,"file":645,"line":293},"add_mp_custom_slider","super_slider","mp_global\\class\\MP_Custom_Slider.php",{"type":235,"name":647,"callback":648,"file":645,"line":239},"add_mp_custom_slider_only","super_slider_only",{"type":235,"name":650,"callback":651,"file":645,"line":260},"add_mp_custom_slider_icon_indicator","icon_indicator",{"type":235,"name":653,"callback":654,"priority":222,"file":655,"line":289},"mp_load_date_picker_js","date_picker_js","mp_global\\class\\MP_Global_Function.php",{"type":235,"name":466,"callback":657,"priority":13,"file":658,"line":289},"add_global_style","mp_global\\class\\MP_Global_Style.php",{"type":235,"name":560,"callback":657,"priority":13,"file":658,"line":293},{"type":235,"name":661,"callback":662,"priority":222,"file":663,"line":293},"mp_input_add_icon","load_icon","mp_global\\class\\MP_Select_Icon_image.php",{"type":235,"name":665,"callback":666,"priority":222,"file":663,"line":239},"mp_add_single_image","add_single_image",{"type":235,"name":668,"callback":669,"priority":222,"file":663,"line":260},"mp_add_multi_image","add_multi_image",{"type":235,"name":671,"callback":672,"priority":222,"file":663,"line":244},"mp_add_icon_image","add_icon_image",{"type":235,"name":674,"callback":675,"file":663,"line":676},"admin_footer","icon_popup",38,{"type":235,"name":674,"callback":675,"file":663,"line":678},170,{"type":241,"name":325,"callback":326,"priority":222,"file":680,"line":289},"mp_global\\class\\MP_Settings_Global.php",{"type":241,"name":325,"callback":682,"priority":147,"file":680,"line":293},"global_sec_reg",{"type":241,"name":328,"callback":329,"priority":222,"file":680,"line":239},{"type":235,"name":685,"callback":686,"priority":562,"file":680,"line":260},"wsa_form_bottom_mp_basic_license_settings","license_settings",{"type":235,"name":688,"callback":689,"file":680,"line":244},"mp_basic_license_list","licence_area",{"type":235,"name":258,"callback":361,"priority":181,"file":691,"line":239},"mp_global\\MP_Global_File_Load.php",{"type":235,"name":693,"callback":361,"priority":181,"file":691,"line":260},"transporter_panel_admin_enqueue_scripts",{"type":235,"name":490,"callback":364,"priority":181,"file":691,"line":244},{"type":235,"name":560,"callback":696,"priority":562,"file":691,"line":248},"add_admin_head",{"type":235,"name":466,"callback":698,"priority":562,"file":691,"line":252},"add_frontend_head",{"type":235,"name":551,"callback":457,"file":700,"line":701},"templates\\registration\\summary.php",337,[703,707,710,713,716,718,719,721,722,724,725,727,728,730,731,733,734,736,737,739,740,744,746,748,749,751,752,755,756,758],{"action":704,"nopriv":60,"callback":705,"hasNonce":706,"hasCapCheck":60,"file":256,"line":244},"mptbm_get_analytics_data","get_analytics_data",true,{"action":708,"nopriv":60,"callback":709,"hasNonce":706,"hasCapCheck":706,"file":263,"line":244},"mptbm_generate_api_key","ajax_generate_api_key",{"action":711,"nopriv":60,"callback":712,"hasNonce":706,"hasCapCheck":706,"file":263,"line":248},"mptbm_revoke_api_key","ajax_revoke_api_key",{"action":714,"nopriv":60,"callback":715,"hasNonce":706,"hasCapCheck":706,"file":263,"line":252},"mptbm_get_api_keys","ajax_get_api_keys",{"action":717,"nopriv":60,"callback":717,"hasNonce":706,"hasCapCheck":706,"file":358,"line":509},"mptbm_disable_field",{"action":717,"nopriv":706,"callback":717,"hasNonce":706,"hasCapCheck":706,"file":358,"line":597},{"action":720,"nopriv":60,"callback":720,"hasNonce":60,"hasCapCheck":60,"file":402,"line":14},"get_mptbm_ex_service",{"action":720,"nopriv":706,"callback":720,"hasNonce":60,"hasCapCheck":60,"file":402,"line":333},{"action":723,"nopriv":60,"callback":723,"hasNonce":60,"hasCapCheck":60,"file":448,"line":260},"get_mptbm_map_search_result",{"action":723,"nopriv":706,"callback":723,"hasNonce":60,"hasCapCheck":60,"file":448,"line":244},{"action":726,"nopriv":60,"callback":726,"hasNonce":60,"hasCapCheck":60,"file":448,"line":248},"get_mptbm_map_search_result_redirect",{"action":726,"nopriv":706,"callback":726,"hasNonce":60,"hasCapCheck":60,"file":448,"line":252},{"action":729,"nopriv":60,"callback":729,"hasNonce":60,"hasCapCheck":60,"file":448,"line":14},"get_mptbm_end_place",{"action":729,"nopriv":706,"callback":729,"hasNonce":60,"hasCapCheck":60,"file":448,"line":333},{"action":732,"nopriv":60,"callback":732,"hasNonce":60,"hasCapCheck":60,"file":448,"line":369},"get_mptbm_extra_service",{"action":732,"nopriv":706,"callback":732,"hasNonce":60,"hasCapCheck":60,"file":448,"line":373},{"action":735,"nopriv":60,"callback":735,"hasNonce":60,"hasCapCheck":60,"file":448,"line":597},"get_mptbm_extra_service_summary",{"action":735,"nopriv":706,"callback":735,"hasNonce":60,"hasCapCheck":60,"file":448,"line":513},{"action":738,"nopriv":60,"callback":738,"hasNonce":60,"hasCapCheck":60,"file":448,"line":517},"load_get_details_page",{"action":738,"nopriv":706,"callback":738,"hasNonce":60,"hasCapCheck":60,"file":448,"line":521},{"action":741,"nopriv":60,"callback":742,"hasNonce":60,"hasCapCheck":60,"file":453,"line":743},"mptbm_file_upload","ajax_file_upload",970,{"action":741,"nopriv":706,"callback":742,"hasNonce":60,"hasCapCheck":60,"file":453,"line":745},971,{"action":747,"nopriv":60,"callback":747,"hasNonce":60,"hasCapCheck":60,"file":496,"line":464},"mptbm_add_to_cart",{"action":747,"nopriv":706,"callback":747,"hasNonce":60,"hasCapCheck":60,"file":496,"line":127},{"action":741,"nopriv":60,"callback":742,"hasNonce":706,"hasCapCheck":60,"file":496,"line":750},49,{"action":741,"nopriv":706,"callback":742,"hasNonce":706,"hasCapCheck":60,"file":496,"line":311},{"action":753,"nopriv":60,"callback":754,"hasNonce":706,"hasCapCheck":60,"file":556,"line":369},"mptbm_osm_search","osm_search_proxy",{"action":753,"nopriv":706,"callback":754,"hasNonce":706,"hasCapCheck":60,"file":556,"line":373},{"action":708,"nopriv":60,"callback":757,"hasNonce":60,"hasCapCheck":60,"file":573,"line":369},"generate_api_key",{"action":711,"nopriv":60,"callback":759,"hasNonce":60,"hasCapCheck":60,"file":573,"line":373},"revoke_api_key",[],[762],{"tag":763,"callback":763,"file":764,"line":293},"mptbm_booking","Frontend\\MPTBM_Shortcodes.php",[766],{"hook":583,"callback":583,"file":573,"line":528},{"dangerousFunctions":768,"sqlUsage":775,"outputEscaping":800,"fileOperations":202,"externalRequests":144,"nonceChecks":333,"capabilityChecks":367,"bundledLibraries":1199},[769,773],{"fn":770,"file":397,"line":771,"context":772},"unserialize",399,"$unserialized = @unserialize($data, ['allowed_classes' => false]);",{"fn":770,"file":655,"line":774,"context":772},65,{"prepared":776,"raw":144,"locations":777},46,[778,781,783,785,787,789,792,795,797,798,799],{"file":263,"line":779,"context":780},536,"$wpdb->get_var() with variable interpolation",{"file":263,"line":782,"context":780},537,{"file":263,"line":784,"context":780},652,{"file":573,"line":786,"context":780},53,{"file":573,"line":788,"context":780},54,{"file":573,"line":790,"context":791},3436,"$wpdb->query() with variable interpolation",{"file":655,"line":793,"context":794},464,"$wpdb->get_results() with variable interpolation",{"file":796,"line":252,"context":791},"templates\\registration\\choose_vehicles.php",{"file":796,"line":162,"context":791},{"file":796,"line":14,"context":791},{"file":796,"line":333,"context":791},{"escaped":801,"rawEcho":802,"locations":803},1638,216,[804,807,808,809,810,812,813,815,816,818,820,822,824,826,828,830,832,834,836,838,841,843,845,846,848,850,852,853,855,857,858,860,862,864,866,868,870,872,874,876,878,880,882,884,886,888,890,892,894,896,898,900,902,904,906,908,910,912,914,916,918,920,922,924,926,927,929,931,932,934,936,938,940,941,942,944,946,947,948,950,952,954,956,958,960,961,963,964,966,967,969,971,973,975,977,979,981,983,985,986,988,990,992,994,996,998,1000,1002,1005,1007,1009,1011,1013,1015,1017,1019,1021,1023,1024,1025,1026,1027,1029,1030,1032,1034,1036,1038,1040,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1060,1062,1064,1066,1068,1070,1072,1074,1076,1078,1080,1082,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1106,1108,1109,1111,1113,1114,1116,1117,1119,1120,1121,1123,1125,1127,1129,1131,1133,1134,1136,1138,1140,1141,1142,1144,1146,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1174,1175,1176,1177,1179,1181,1183,1185,1187,1188,1189,1191,1193,1195,1196,1197],{"file":263,"line":805,"context":806},67,"raw output",{"file":284,"line":521,"context":806},{"file":322,"line":528,"context":806},{"file":336,"line":454,"context":806},{"file":402,"line":811,"context":806},168,{"file":422,"line":776,"context":806},{"file":422,"line":814,"context":806},64,{"file":422,"line":616,"context":806},{"file":422,"line":817,"context":806},454,{"file":422,"line":819,"context":806},473,{"file":422,"line":821,"context":806},493,{"file":422,"line":823,"context":806},513,{"file":422,"line":825,"context":806},594,{"file":422,"line":827,"context":806},717,{"file":422,"line":829,"context":806},794,{"file":431,"line":831,"context":806},282,{"file":431,"line":833,"context":806},283,{"file":431,"line":835,"context":806},371,{"file":431,"line":837,"context":806},372,{"file":839,"line":840,"context":806},"Frontend\\MPTBM_Elementor_Widget.php",230,{"file":448,"line":842,"context":806},44,{"file":448,"line":844,"context":806},81,{"file":448,"line":479,"context":806},{"file":453,"line":847,"context":806},494,{"file":453,"line":849,"context":806},689,{"file":453,"line":851,"context":806},690,{"file":453,"line":851,"context":806},{"file":453,"line":854,"context":806},715,{"file":453,"line":856,"context":806},718,{"file":453,"line":856,"context":806},{"file":453,"line":859,"context":806},719,{"file":453,"line":861,"context":806},721,{"file":496,"line":863,"context":806},911,{"file":496,"line":865,"context":806},917,{"file":496,"line":867,"context":806},924,{"file":496,"line":869,"context":806},934,{"file":496,"line":871,"context":806},943,{"file":496,"line":873,"context":806},948,{"file":496,"line":875,"context":806},954,{"file":496,"line":877,"context":806},959,{"file":496,"line":879,"context":806},964,{"file":496,"line":881,"context":806},965,{"file":496,"line":883,"context":806},994,{"file":496,"line":885,"context":806},1007,{"file":496,"line":887,"context":806},1018,{"file":496,"line":889,"context":806},1019,{"file":496,"line":891,"context":806},1024,{"file":496,"line":893,"context":806},1025,{"file":496,"line":895,"context":806},1265,{"file":496,"line":897,"context":806},1269,{"file":496,"line":899,"context":806},1274,{"file":496,"line":901,"context":806},1329,{"file":496,"line":903,"context":806},1349,{"file":496,"line":905,"context":806},1353,{"file":496,"line":907,"context":806},1424,{"file":496,"line":909,"context":806},1434,{"file":496,"line":911,"context":806},1437,{"file":496,"line":913,"context":806},1440,{"file":496,"line":915,"context":806},1512,{"file":556,"line":917,"context":806},182,{"file":591,"line":919,"context":806},352,{"file":591,"line":921,"context":806},353,{"file":923,"line":542,"context":806},"mp_global\\class\\MAGE_Setting_API.php",{"file":923,"line":925,"context":806},338,{"file":638,"line":844,"context":806},{"file":638,"line":928,"context":806},113,{"file":638,"line":930,"context":806},224,{"file":638,"line":840,"context":806},{"file":645,"line":933,"context":806},60,{"file":645,"line":935,"context":806},150,{"file":645,"line":937,"context":806},213,{"file":655,"line":939,"context":806},142,{"file":663,"line":307,"context":806},{"file":663,"line":148,"context":806},{"file":663,"line":943,"context":806},106,{"file":663,"line":945,"context":806},128,{"file":691,"line":213,"context":806},{"file":691,"line":13,"context":806},{"file":691,"line":949,"context":806},101,{"file":691,"line":951,"context":806},102,{"file":691,"line":953,"context":806},103,{"file":691,"line":955,"context":806},104,{"file":691,"line":957,"context":806},114,{"file":691,"line":959,"context":806},117,{"file":796,"line":805,"context":806},{"file":796,"line":962,"context":806},68,{"file":796,"line":569,"context":806},{"file":796,"line":965,"context":806},70,{"file":796,"line":213,"context":806},{"file":796,"line":968,"context":806},92,{"file":796,"line":970,"context":806},93,{"file":796,"line":972,"context":806},94,{"file":796,"line":974,"context":806},167,{"file":796,"line":976,"context":806},175,{"file":796,"line":978,"context":806},194,{"file":796,"line":980,"context":806},212,{"file":796,"line":982,"context":806},222,{"file":796,"line":984,"context":806},232,{"file":796,"line":921,"context":806},{"file":796,"line":987,"context":806},370,{"file":796,"line":989,"context":806},400,{"file":796,"line":991,"context":806},419,{"file":796,"line":993,"context":806},420,{"file":796,"line":995,"context":806},421,{"file":796,"line":997,"context":806},422,{"file":796,"line":999,"context":806},443,{"file":796,"line":1001,"context":806},469,{"file":1003,"line":1004,"context":806},"templates\\registration\\get_details.php",201,{"file":1003,"line":1006,"context":806},202,{"file":1003,"line":1008,"context":806},203,{"file":1003,"line":1010,"context":806},204,{"file":1003,"line":1012,"context":806},205,{"file":1003,"line":1014,"context":806},206,{"file":1003,"line":1016,"context":806},207,{"file":1003,"line":1018,"context":806},214,{"file":1003,"line":1020,"context":806},215,{"file":1003,"line":1022,"context":806},223,{"file":1003,"line":930,"context":806},{"file":1003,"line":831,"context":806},{"file":1003,"line":479,"context":806},{"file":1003,"line":701,"context":806},{"file":1003,"line":1028,"context":806},339,{"file":1003,"line":919,"context":806},{"file":1003,"line":1031,"context":806},356,{"file":1003,"line":1033,"context":806},358,{"file":1003,"line":1035,"context":806},362,{"file":1003,"line":1037,"context":806},391,{"file":1003,"line":1039,"context":806},394,{"file":1003,"line":771,"context":806},{"file":1003,"line":1042,"context":806},418,{"file":1003,"line":1044,"context":806},445,{"file":1003,"line":1046,"context":806},458,{"file":1003,"line":1048,"context":806},471,{"file":1003,"line":1050,"context":806},486,{"file":1003,"line":1052,"context":806},487,{"file":1003,"line":1054,"context":806},498,{"file":1003,"line":1056,"context":806},500,{"file":1003,"line":1058,"context":806},501,{"file":1003,"line":823,"context":806},{"file":1003,"line":1061,"context":806},514,{"file":1003,"line":1063,"context":806},521,{"file":1003,"line":1065,"context":806},522,{"file":1003,"line":1067,"context":806},584,{"file":1003,"line":1069,"context":806},586,{"file":1003,"line":1071,"context":806},587,{"file":1003,"line":1073,"context":806},588,{"file":1003,"line":1075,"context":806},589,{"file":1003,"line":1077,"context":806},590,{"file":1003,"line":1079,"context":806},591,{"file":1003,"line":1081,"context":806},592,{"file":1003,"line":1083,"context":806},607,{"file":1003,"line":1085,"context":806},628,{"file":1003,"line":1087,"context":806},641,{"file":1003,"line":1089,"context":806},654,{"file":1003,"line":1091,"context":806},738,{"file":1003,"line":1093,"context":806},740,{"file":1003,"line":1095,"context":806},742,{"file":1003,"line":1097,"context":806},752,{"file":1003,"line":1099,"context":806},753,{"file":1003,"line":1101,"context":806},767,{"file":1003,"line":1103,"context":806},771,{"file":1003,"line":1105,"context":806},777,{"file":1003,"line":1107,"context":806},806,{"file":1003,"line":1107,"context":806},{"file":1003,"line":1110,"context":806},814,{"file":1003,"line":1112,"context":806},843,{"file":1003,"line":1112,"context":806},{"file":1115,"line":458,"context":806},"templates\\registration\\get_end_place.php",{"file":1115,"line":464,"context":806},{"file":1118,"line":509,"context":806},"templates\\registration\\registration_layout.php",{"file":1118,"line":525,"context":806},{"file":1118,"line":468,"context":806},{"file":1118,"line":1122,"context":806},108,{"file":1118,"line":1124,"context":806},109,{"file":1118,"line":1126,"context":806},110,{"file":1118,"line":1128,"context":806},132,{"file":1118,"line":1130,"context":806},139,{"file":1118,"line":1132,"context":806},155,{"file":1118,"line":678,"context":806},{"file":700,"line":1135,"context":806},55,{"file":700,"line":1137,"context":806},58,{"file":700,"line":1139,"context":806},61,{"file":700,"line":814,"context":806},{"file":700,"line":953,"context":806},{"file":700,"line":1143,"context":806},135,{"file":700,"line":1145,"context":806},173,{"file":700,"line":840,"context":806},{"file":700,"line":1148,"context":806},238,{"file":700,"line":1150,"context":806},239,{"file":700,"line":1152,"context":806},242,{"file":700,"line":1154,"context":806},245,{"file":700,"line":1156,"context":806},251,{"file":700,"line":1158,"context":806},252,{"file":700,"line":1160,"context":806},257,{"file":700,"line":1162,"context":806},272,{"file":700,"line":1164,"context":806},286,{"file":700,"line":1166,"context":806},300,{"file":700,"line":1168,"context":806},301,{"file":700,"line":1170,"context":806},306,{"file":1172,"line":1173,"context":806},"templates\\registration\\vehicle_item.php",190,{"file":1172,"line":1173,"context":806},{"file":1172,"line":1173,"context":806},{"file":1172,"line":1154,"context":806},{"file":1172,"line":1178,"context":806},260,{"file":1172,"line":1180,"context":806},275,{"file":1172,"line":1182,"context":806},297,{"file":1172,"line":1184,"context":806},313,{"file":1186,"line":972,"context":806},"transport_result.php",{"file":1186,"line":1122,"context":806},{"file":1186,"line":1124,"context":806},{"file":1186,"line":1190,"context":806},267,{"file":1186,"line":1192,"context":806},274,{"file":1186,"line":1194,"context":806},281,{"file":1186,"line":1168,"context":806},{"file":1186,"line":1170,"context":806},{"file":1186,"line":1198,"context":806},368,[1200],{"name":1201,"version":39,"knownCves":1202},"Select2",[],[1204,1225,1235,1272,1287,1301,1309,1317,1325,1340,1355,1365,1375,1394,1406,1419],{"entryPoint":1205,"graph":1206,"unsanitizedCount":173,"severity":42},"get_mptbm_end_time_slot (Admin\\settings\\MPTBM_Date_Settings.php:61)",{"nodes":1207,"edges":1222},[1208,1212,1216],{"id":1209,"type":1210,"label":1211,"file":397,"line":774},"n0","source","$_REQUEST",{"id":1213,"type":1214,"label":1215,"file":397,"line":774},"n1","transform","→ end_time_slot()",{"id":1217,"type":1218,"label":1219,"file":397,"line":1220,"wp_function":1221},"n2","sink","echo() [XSS]",51,"echo",[1223,1224],{"from":1209,"to":1213,"sanitized":60},{"from":1213,"to":1217,"sanitized":60},{"entryPoint":1226,"graph":1227,"unsanitizedCount":173,"severity":42},"get_mptbm_map_search_result_redirect (Frontend\\MPTBM_Transport_Search.php:198)",{"nodes":1228,"edges":1233},[1229,1232],{"id":1209,"type":1210,"label":1230,"file":448,"line":1231},"$_POST",302,{"id":1213,"type":1218,"label":1219,"file":448,"line":479,"wp_function":1221},[1234],{"from":1209,"to":1213,"sanitized":60},{"entryPoint":1236,"graph":1237,"unsanitizedCount":562,"severity":42},"\u003Cchoose_vehicles> (templates\\registration\\choose_vehicles.php:0)",{"nodes":1238,"edges":1266},[1239,1242,1244,1247,1250,1254,1257,1261,1264],{"id":1209,"type":1210,"label":1240,"file":796,"line":1241},"$_POST (x15)",649,{"id":1213,"type":1218,"label":1219,"file":796,"line":1243,"wp_function":1221},845,{"id":1217,"type":1210,"label":1245,"file":796,"line":1246},"$_COOKIE (x2)",831,{"id":1248,"type":1218,"label":1219,"file":796,"line":1249,"wp_function":1221},"n3",852,{"id":1251,"type":1210,"label":1252,"file":796,"line":1253},"n4","$_POST (x3)",879,{"id":1255,"type":1218,"label":1219,"file":796,"line":1256,"wp_function":1221},"n5",881,{"id":1258,"type":1210,"label":1259,"file":796,"line":1260},"n6","$_POST (x2)",966,{"id":1262,"type":1214,"label":1263,"file":796,"line":1260},"n7","→ wptbm_get_schedule()",{"id":1265,"type":1218,"label":1219,"file":796,"line":995,"wp_function":1221},"n8",[1267,1268,1269,1270,1271],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":706},{"from":1251,"to":1255,"sanitized":60},{"from":1258,"to":1262,"sanitized":60},{"from":1262,"to":1265,"sanitized":60},{"entryPoint":1273,"graph":1274,"unsanitizedCount":29,"severity":1286},"get_analytics_data (Admin\\MPTBM_Analytics_Dashboard.php:271)",{"nodes":1275,"edges":1283},[1276,1277,1279],{"id":1209,"type":1210,"label":1230,"file":256,"line":833},{"id":1213,"type":1214,"label":1278,"file":256,"line":833},"→ generate_analytics_data()",{"id":1217,"type":1218,"label":1280,"file":256,"line":1281,"wp_function":1282},"get_results() [SQLi]",342,"get_results",[1284,1285],{"from":1209,"to":1213,"sanitized":60},{"from":1213,"to":1217,"sanitized":706},"low",{"entryPoint":1288,"graph":1289,"unsanitizedCount":29,"severity":1286},"\u003CMPTBM_Analytics_Dashboard> (Admin\\MPTBM_Analytics_Dashboard.php:0)",{"nodes":1290,"edges":1297},[1291,1293,1294,1295,1296],{"id":1209,"type":1210,"label":1230,"file":256,"line":1292},279,{"id":1213,"type":1218,"label":1280,"file":256,"line":1281,"wp_function":1282},{"id":1217,"type":1210,"label":1230,"file":256,"line":833},{"id":1248,"type":1214,"label":1278,"file":256,"line":833},{"id":1251,"type":1218,"label":1280,"file":256,"line":1281,"wp_function":1282},[1298,1299,1300],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":60},{"from":1248,"to":1251,"sanitized":706},{"entryPoint":1302,"graph":1303,"unsanitizedCount":29,"severity":1286},"\u003CMPTBM_Quick_Setup> (Admin\\MPTBM_Quick_Setup.php:0)",{"nodes":1304,"edges":1307},[1305,1306],{"id":1209,"type":1210,"label":1259,"file":315,"line":13},{"id":1213,"type":1218,"label":1219,"file":315,"line":1016,"wp_function":1221},[1308],{"from":1209,"to":1213,"sanitized":706},{"entryPoint":1310,"graph":1311,"unsanitizedCount":29,"severity":1286},"\u003CMPTBM_Wc_Checkout_Fields> (Admin\\MPTBM_Wc_Checkout_Fields.php:0)",{"nodes":1312,"edges":1315},[1313,1314],{"id":1209,"type":1210,"label":1259,"file":358,"line":535},{"id":1213,"type":1218,"label":1219,"file":358,"line":805,"wp_function":1221},[1316],{"from":1209,"to":1213,"sanitized":706},{"entryPoint":1318,"graph":1319,"unsanitizedCount":173,"severity":1286},"\u003CMPTBM_Transport_Search> (Frontend\\MPTBM_Transport_Search.php:0)",{"nodes":1320,"edges":1323},[1321,1322],{"id":1209,"type":1210,"label":1230,"file":448,"line":1231},{"id":1213,"type":1218,"label":1219,"file":448,"line":479,"wp_function":1221},[1324],{"from":1209,"to":1213,"sanitized":60},{"entryPoint":1326,"graph":1327,"unsanitizedCount":29,"severity":1286},"add_cart_item_data (Frontend\\MPTBM_Woocommerce.php:137)",{"nodes":1328,"edges":1337},[1329,1331,1333],{"id":1209,"type":1210,"label":1252,"file":496,"line":1330},270,{"id":1213,"type":1214,"label":1332,"file":496,"line":1330},"→ resolve_location_name_static()",{"id":1217,"type":1218,"label":1334,"file":496,"line":1335,"wp_function":1336},"get_var() [SQLi]",126,"get_var",[1338,1339],{"from":1209,"to":1213,"sanitized":60},{"from":1213,"to":1217,"sanitized":706},{"entryPoint":1341,"graph":1342,"unsanitizedCount":29,"severity":1286},"\u003CMPTBM_Woocommerce> (Frontend\\MPTBM_Woocommerce.php:0)",{"nodes":1343,"edges":1351},[1344,1346,1348,1349,1350],{"id":1209,"type":1210,"label":1345,"file":496,"line":937},"$_POST (x4)",{"id":1213,"type":1218,"label":1219,"file":496,"line":1347,"wp_function":1221},925,{"id":1217,"type":1210,"label":1252,"file":496,"line":1330},{"id":1248,"type":1214,"label":1332,"file":496,"line":1330},{"id":1251,"type":1218,"label":1334,"file":496,"line":1335,"wp_function":1336},[1352,1353,1354],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":60},{"from":1248,"to":1251,"sanitized":706},{"entryPoint":1356,"graph":1357,"unsanitizedCount":29,"severity":1286},"\u003Cextra_service> (templates\\registration\\extra_service.php:0)",{"nodes":1358,"edges":1363},[1359,1362],{"id":1209,"type":1210,"label":1259,"file":1360,"line":1361},"templates\\registration\\extra_service.php",9,{"id":1213,"type":1218,"label":1219,"file":1360,"line":750,"wp_function":1221},[1364],{"from":1209,"to":1213,"sanitized":706},{"entryPoint":1366,"graph":1367,"unsanitizedCount":29,"severity":1286},"\u003Cextra_service_summary> (templates\\registration\\extra_service_summary.php:0)",{"nodes":1368,"edges":1373},[1369,1371],{"id":1209,"type":1210,"label":1230,"file":1370,"line":1361},"templates\\registration\\extra_service_summary.php",{"id":1213,"type":1218,"label":1219,"file":1370,"line":1372,"wp_function":1221},43,[1374],{"from":1209,"to":1213,"sanitized":706},{"entryPoint":1376,"graph":1377,"unsanitizedCount":29,"severity":1286},"\u003Csummary> (templates\\registration\\summary.php:0)",{"nodes":1378,"edges":1390},[1379,1381,1383,1385,1387,1389],{"id":1209,"type":1210,"label":1380,"file":700,"line":248},"$_REQUEST (x11)",{"id":1213,"type":1218,"label":1219,"file":700,"line":1382,"wp_function":1221},66,{"id":1217,"type":1210,"label":1384,"file":700,"line":248},"$_REQUEST (x3)",{"id":1248,"type":1218,"label":1334,"file":700,"line":1386,"wp_function":1336},77,{"id":1251,"type":1210,"label":1388,"file":700,"line":293},"$_COOKIE (x3)",{"id":1255,"type":1218,"label":1219,"file":700,"line":930,"wp_function":1221},[1391,1392,1393],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":706},{"from":1251,"to":1255,"sanitized":706},{"entryPoint":1395,"graph":1396,"unsanitizedCount":173,"severity":1286},"\u003Cvehicle_item> (templates\\registration\\vehicle_item.php:0)",{"nodes":1397,"edges":1403},[1398,1400,1401,1402],{"id":1209,"type":1210,"label":1399,"file":1172,"line":957},"$_COOKIE",{"id":1213,"type":1218,"label":1219,"file":1172,"line":1150,"wp_function":1221},{"id":1217,"type":1210,"label":1399,"file":1172,"line":957},{"id":1248,"type":1218,"label":1219,"file":1172,"line":1178,"wp_function":1221},[1404,1405],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":60},{"entryPoint":1407,"graph":1408,"unsanitizedCount":173,"severity":119},"get_submit_info (Admin\\settings\\MPTBM_Date_Settings.php:393)",{"nodes":1409,"edges":1416},[1410,1412,1414],{"id":1209,"type":1210,"label":1411,"file":397,"line":1039},"$_POST[$key]",{"id":1213,"type":1214,"label":1413,"file":397,"line":1039},"→ data_sanitize()",{"id":1217,"type":1218,"label":1415,"file":655,"line":774,"wp_function":770},"unserialize() [Object Injection]",[1417,1418],{"from":1209,"to":1213,"sanitized":60},{"from":1213,"to":1217,"sanitized":60},{"entryPoint":1420,"graph":1421,"unsanitizedCount":202,"severity":119},"\u003CMPTBM_Date_Settings> (Admin\\settings\\MPTBM_Date_Settings.php:0)",{"nodes":1422,"edges":1433},[1423,1426,1427,1428,1429,1430,1431,1432],{"id":1209,"type":1210,"label":1424,"file":397,"line":1425},"$_REQUEST (x8)",63,{"id":1213,"type":1218,"label":1219,"file":397,"line":844,"wp_function":1221},{"id":1217,"type":1210,"label":1211,"file":397,"line":774},{"id":1248,"type":1214,"label":1215,"file":397,"line":774},{"id":1251,"type":1218,"label":1219,"file":397,"line":1220,"wp_function":1221},{"id":1255,"type":1210,"label":1411,"file":397,"line":1039},{"id":1258,"type":1214,"label":1413,"file":397,"line":1039},{"id":1262,"type":1218,"label":1415,"file":655,"line":774,"wp_function":770},[1434,1435,1436,1437,1438],{"from":1209,"to":1213,"sanitized":706},{"from":1217,"to":1248,"sanitized":60},{"from":1248,"to":1251,"sanitized":60},{"from":1255,"to":1258,"sanitized":60},{"from":1258,"to":1262,"sanitized":60},{"summary":1440,"deductions":1441},"The \"ecab-taxi-booking-manager\" plugin version 2.0.2 exhibits a concerning security posture, despite some positive indicators. While a significant portion of SQL queries and output operations are properly handled, the presence of 20 unprotected AJAX handlers represents a substantial attack surface that could be exploited by unauthenticated users. The static analysis also flags two instances of the dangerous `unserialize` function, a known vector for deserialization vulnerabilities, and the taint analysis reveals two high-severity flows with unsanitized paths, indicating potential for serious compromise.  The plugin's vulnerability history is particularly alarming, with four known CVEs including one critical and one high severity. The fact that the last vulnerability was identified in August 2025 (presumably a typo and meant to be in the past, but still indicating recent past issues) and that the common vulnerability types include missing authorization, deserialization of untrusted data, and XSS, paints a picture of recurring and severe security flaws.  While the use of prepared statements and proper output escaping are strengths, the numerous unprotected entry points, dangerous function usage, critical taint flows, and persistent vulnerability history heavily outweigh these positives, suggesting a high-risk plugin requiring immediate attention and remediation.",[1442,1444,1446,1448,1450,1452,1454,1456,1458],{"reason":1443,"points":222},"20 unprotected AJAX handlers",{"reason":1445,"points":222},"2 dangerous functions (unserialize)",{"reason":1447,"points":289},"2 high severity taint flows",{"reason":1449,"points":14},"1 critical unpatched CVE",{"reason":1451,"points":260},"1 high severity unpatched CVE",{"reason":1453,"points":222},"2 medium severity unpatched CVEs",{"reason":1455,"points":562},"Common vulnerability types: Deserialization of Untrusted Data",{"reason":1457,"points":562},"Common vulnerability types: Missing Authorization",{"reason":1459,"points":562},"Common vulnerability types: Cross-site Scripting","2026-03-16T18:38:13.355Z",{"wat":1462,"direct":1475},{"assetPaths":1463,"generatorPatterns":1470,"scriptPaths":1471,"versionParams":1472},[1464,1465,1466,1467,1468,1469],"\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002FFrontend\u002Fcss\u002Fmptbm-frontend.css","\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002FFrontend\u002Fjs\u002Fmptbm-frontend.js","\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002FFrontend\u002Fjs\u002Fgmap.js","\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002Fassets\u002Fadmin\u002Fcss\u002Fmptbm-admin.css","\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002Fassets\u002Fadmin\u002Fjs\u002Fmptbm-admin.js","\u002Fwp-content\u002Fplugins\u002Fecab-taxi-booking-manager\u002Fassets\u002Fadmin\u002Fjs\u002Fcustom.js",[],[1465,1466],[1473,1474],"ecab-taxi-booking-manager\u002Fstyle.css?ver=","ecab-taxi-booking-manager\u002Fscript.js?ver=",{"cssClasses":1476,"htmlComments":1482,"htmlAttributes":1485,"restEndpoints":1490,"jsGlobals":1493,"shortcodeOutput":1496},[1477,1478,1479,1480,1481],"mptbm_booking_form","mptbm-date-picker","mptbm-time-picker","mptbm-vehicle-selection","mptbm-map-container",[1483,1484],"\u003C!-- E-cab Taxi Booking Manager Start -->","\u003C!-- E-cab Taxi Booking Manager End -->",[1486,1487,1488,1489],"data-mptbm-booking-id","data-mptbm-price","data-mptbm-location","data-mptbm-destination",[1491,1492],"\u002Fwp-json\u002Fmptbm\u002Fv1\u002Fbooking","\u002Fwp-json\u002Fmptbm\u002Fv1\u002Flocations",[1494,1495],"mptbm_frontend_params","mptbm_map_settings",[1497,1498,1499,1500],"[mptbm_booking]","[mptbm_booking price_based=\"manual\" form=\"inline\"]","[mptbm_booking price_based=\"fixed_hourly\"]","[mptbm_booking tab=\"yes\" tabs=\"hourly,distance,manual\"]",{"error":706,"url":1502,"statusCode":1503,"statusMessage":1504,"message":1504},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fecab-taxi-booking-manager\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":61,"versions":1506},[1507,1513,1521],{"version":41,"download_url":1508,"svn_tag_url":1509,"released_at":39,"has_diff":60,"diff_files_changed":1510,"diff_lines":39,"trac_diff_url":1511,"vulnerabilities":1512,"is_current":60},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fecab-taxi-booking-manager.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fecab-taxi-booking-manager\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fecab-taxi-booking-manager%2Ftags%2F2.0.0&new_path=%2Fecab-taxi-booking-manager%2Ftags%2F2.0.1",[],{"version":1514,"download_url":1515,"svn_tag_url":1516,"released_at":39,"has_diff":60,"diff_files_changed":1517,"diff_lines":39,"trac_diff_url":1518,"vulnerabilities":1519,"is_current":60},"2.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fecab-taxi-booking-manager.2.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fecab-taxi-booking-manager\u002Ftags\u002F2.0.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fecab-taxi-booking-manager%2Ftags%2F1.3.1&new_path=%2Fecab-taxi-booking-manager%2Ftags%2F2.0.0",[1520],{"id":35,"url_slug":36,"title":37,"severity":42,"cvss_score":43,"vuln_type":45,"patched_in_version":41},{"version":76,"download_url":1522,"svn_tag_url":1523,"released_at":39,"has_diff":60,"diff_files_changed":1524,"diff_lines":39,"trac_diff_url":39,"vulnerabilities":1525,"is_current":60},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fecab-taxi-booking-manager.1.3.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fecab-taxi-booking-manager\u002Ftags\u002F1.3.1\u002F",[],[1526],{"id":35,"url_slug":36,"title":37,"severity":42,"cvss_score":43,"vuln_type":45,"patched_in_version":41}]