Changeset 3463219
- Timestamp:
- 02/17/2026 08:42:15 AM (6 weeks ago)
- Location:
- chatbot
- Files:
-
- 388 added
- 4 edited
-
tags/7.8.0 (added)
-
tags/7.8.0/.idea (added)
-
tags/7.8.0/.idea/modules.xml (added)
-
tags/7.8.0/.idea/woowbot-woocommerce-chatbot-pro.iml (added)
-
tags/7.8.0/.idea/workspace.xml (added)
-
tags/7.8.0/admin_ui.php (added)
-
tags/7.8.0/admin_ui2.php (added)
-
tags/7.8.0/class-plugin-deactivate-feedback.php (added)
-
tags/7.8.0/class-qc-free-plugin-upgrade-notice.php (added)
-
tags/7.8.0/css (added)
-
tags/7.8.0/css/admin-style.css (added)
-
tags/7.8.0/css/bootstrap.min.css (added)
-
tags/7.8.0/css/common-style.css (added)
-
tags/7.8.0/css/font-awesome.min.css (added)
-
tags/7.8.0/css/fontpicker.min.css (added)
-
tags/7.8.0/css/index.php (added)
-
tags/7.8.0/css/jquery.timepicker.css (added)
-
tags/7.8.0/css/magnific-popup.css (added)
-
tags/7.8.0/css/wp-chatbot-tabs.css (added)
-
tags/7.8.0/download (added)
-
tags/7.8.0/download/wpwBot.zip (added)
-
tags/7.8.0/fonts (added)
-
tags/7.8.0/fonts/FontAwesome.otf (added)
-
tags/7.8.0/fonts/fontawesome-webfont.eot (added)
-
tags/7.8.0/fonts/fontawesome-webfont.svg (added)
-
tags/7.8.0/fonts/fontawesome-webfont.ttf (added)
-
tags/7.8.0/fonts/fontawesome-webfont.woff (added)
-
tags/7.8.0/fonts/fontawesome-webfont.woff2 (added)
-
tags/7.8.0/fonts/glyphicons-halflings-regular.eot (added)
-
tags/7.8.0/fonts/glyphicons-halflings-regular.svg (added)
-
tags/7.8.0/fonts/glyphicons-halflings-regular.ttf (added)
-
tags/7.8.0/fonts/glyphicons-halflings-regular.woff (added)
-
tags/7.8.0/fonts/glyphicons-halflings-regular.woff2 (added)
-
tags/7.8.0/fonts/quicksand-regular-demo.html (added)
-
tags/7.8.0/fonts/quicksand-regular-webfont.woff (added)
-
tags/7.8.0/fonts/quicksand-regular-webfont.woff2 (added)
-
tags/7.8.0/functions.php (added)
-
tags/7.8.0/images (added)
-
tags/7.8.0/images/ChatBot-Master-theme.png (added)
-
tags/7.8.0/images/NY-26-wpbot.jpg (added)
-
tags/7.8.0/images/WPBot-LiveChat.png (added)
-
tags/7.8.0/images/WhatsApp-chatbot.png (added)
-
tags/7.8.0/images/agent-0.png (added)
-
tags/7.8.0/images/agent-01.png (added)
-
tags/7.8.0/images/background (added)
-
tags/7.8.0/images/background/background.png (added)
-
tags/7.8.0/images/bg-03.jpg (added)
-
tags/7.8.0/images/blackfriday-25-wpbot.jpg (added)
-
tags/7.8.0/images/chatbot-addons.png (added)
-
tags/7.8.0/images/chatbot-custom-service.jpg (added)
-
tags/7.8.0/images/chatbot-sesssion-save.png (added)
-
tags/7.8.0/images/chatbot-theme.jpg (added)
-
tags/7.8.0/images/chatbot.png (added)
-
tags/7.8.0/images/check2.svg (added)
-
tags/7.8.0/images/client.png (added)
-
tags/7.8.0/images/coming-soon-special.png (added)
-
tags/7.8.0/images/comment.gif (added)
-
tags/7.8.0/images/conversational-form-chatbot.jpg (added)
-
tags/7.8.0/images/conversational-forns.png (added)
-
tags/7.8.0/images/custom-agent.png (added)
-
tags/7.8.0/images/custom-post-type-addon-logo.png (added)
-
tags/7.8.0/images/custom.png (added)
-
tags/7.8.0/images/cyber-25-wpbot.jpg (added)
-
tags/7.8.0/images/defult-bg.jpg (added)
-
tags/7.8.0/images/dialogflow-cx-1024x676.jpg (added)
-
tags/7.8.0/images/doc.jpg (added)
-
tags/7.8.0/images/external-white.svg (added)
-
tags/7.8.0/images/halloween25-wpbot.jpg (added)
-
tags/7.8.0/images/hud-left-dark.png (added)
-
tags/7.8.0/images/hud-righ-dark.png (added)
-
tags/7.8.0/images/hud-top-dark_new.png (added)
-
tags/7.8.0/images/icon-0.png (added)
-
tags/7.8.0/images/icon-01.png (added)
-
tags/7.8.0/images/icon-1.png (added)
-
tags/7.8.0/images/icon-10.png (added)
-
tags/7.8.0/images/icon-11.png (added)
-
tags/7.8.0/images/icon-12.png (added)
-
tags/7.8.0/images/icon-13.png (added)
-
tags/7.8.0/images/icon-2.png (added)
-
tags/7.8.0/images/icon-3.png (added)
-
tags/7.8.0/images/icon-4.png (added)
-
tags/7.8.0/images/icon-5-removebg-preview.png (added)
-
tags/7.8.0/images/icon-5.png (added)
-
tags/7.8.0/images/icon-6.png (added)
-
tags/7.8.0/images/icon-7.png (added)
-
tags/7.8.0/images/icon-8.png (added)
-
tags/7.8.0/images/icon-9.png (added)
-
tags/7.8.0/images/july4th.jpg (added)
-
tags/7.8.0/images/loadingAnimation.gif (added)
-
tags/7.8.0/images/loadmore.gif (added)
-
tags/7.8.0/images/mailing-list-integrationt (1).png (added)
-
tags/7.8.0/images/message-bg.png (added)
-
tags/7.8.0/images/messenger-chatbot.png (added)
-
tags/7.8.0/images/muli-lamguage.png (added)
-
tags/7.8.0/images/openAI.png (added)
-
tags/7.8.0/images/pro-active.mp3 (added)
-
tags/7.8.0/images/sale-wpbot.jpg (added)
-
tags/7.8.0/images/send-button-new.png (added)
-
tags/7.8.0/images/send-button.png (added)
-
tags/7.8.0/images/simple-text-responses.png (added)
-
tags/7.8.0/images/tab-btn-icon-new.png (added)
-
tags/7.8.0/images/tab-btn-icon.png (added)
-
tags/7.8.0/images/telegram-addon.png (added)
-
tags/7.8.0/images/template-sample.gif (added)
-
tags/7.8.0/images/templates (added)
-
tags/7.8.0/images/templates-addon.png (added)
-
tags/7.8.0/images/templates/horizontal.png (added)
-
tags/7.8.0/images/templates/template-00.JPG (added)
-
tags/7.8.0/images/templates/template-0000.JPG (added)
-
tags/7.8.0/images/templates/template-01.JPG (added)
-
tags/7.8.0/images/templates/template-02.JPG (added)
-
tags/7.8.0/images/templates/template-03.JPG (added)
-
tags/7.8.0/images/tpl-one-footer.png (added)
-
tags/7.8.0/images/tpl-one-header-.png (added)
-
tags/7.8.0/images/tpl-one-header.png (added)
-
tags/7.8.0/images/voice-logo.png (added)
-
tags/7.8.0/images/voice-message.png (added)
-
tags/7.8.0/images/white-label.png (added)
-
tags/7.8.0/images/woo-addon-256.png (added)
-
tags/7.8.0/images/woo-boat-product-close-icon.png (added)
-
tags/7.8.0/images/wp-boat-product-close-icon.png (added)
-
tags/7.8.0/images/wp-bot-logo.png (added)
-
tags/7.8.0/images/wp22.jpg (added)
-
tags/7.8.0/images/wpbot-close-icon.png (added)
-
tags/7.8.0/inc (added)
-
tags/7.8.0/inc/ai.png (added)
-
tags/7.8.0/inc/bootstrap.js (added)
-
tags/7.8.0/inc/parsedown.php (added)
-
tags/7.8.0/inc/qcld-floating-icons.css (added)
-
tags/7.8.0/inc/qcld-floating-icons.js (added)
-
tags/7.8.0/inc/qcld-floating-openai-style-filter.php (added)
-
tags/7.8.0/inc/qcld_openai_floating_content.php (added)
-
tags/7.8.0/includes (added)
-
tags/7.8.0/includes/Parsedown.php (added)
-
tags/7.8.0/includes/admin (added)
-
tags/7.8.0/includes/admin/templates (added)
-
tags/7.8.0/includes/admin/templates/ai-admin.php (added)
-
tags/7.8.0/includes/admin/templates/rag.php (added)
-
tags/7.8.0/includes/class-common-function.php (added)
-
tags/7.8.0/includes/class-qcld-bot-rag.php (added)
-
tags/7.8.0/includes/class-response-list.php (added)
-
tags/7.8.0/includes/class-wpbot-gc-download.php (added)
-
tags/7.8.0/includes/class-wpwbot-cache.php (added)
-
tags/7.8.0/includes/class-wpwbot-search.php (added)
-
tags/7.8.0/includes/class-wpwbot-table.php (added)
-
tags/7.8.0/includes/integration (added)
-
tags/7.8.0/includes/integration/gemini (added)
-
tags/7.8.0/includes/integration/gemini/admin (added)
-
tags/7.8.0/includes/integration/gemini/admin/settings.php (added)
-
tags/7.8.0/includes/integration/gemini/assets (added)
-
tags/7.8.0/includes/integration/gemini/assets/js (added)
-
tags/7.8.0/includes/integration/gemini/assets/js/qcld-wp-gemini-admin.js (added)
-
tags/7.8.0/includes/integration/gemini/qcld-bot-gemini.php (added)
-
tags/7.8.0/includes/integration/openai (added)
-
tags/7.8.0/includes/integration/openai/OpenAi_WPBot_Menu.php (added)
-
tags/7.8.0/includes/integration/openai/admin (added)
-
tags/7.8.0/includes/integration/openai/admin/admin_ui2.php (added)
-
tags/7.8.0/includes/integration/openai/admin/assistant.php (added)
-
tags/7.8.0/includes/integration/openai/admin/content_writer.php (added)
-
tags/7.8.0/includes/integration/openai/admin/data_post_converter.php (added)
-
tags/7.8.0/includes/integration/openai/admin/files.php (added)
-
tags/7.8.0/includes/integration/openai/admin/help.php (added)
-
tags/7.8.0/includes/integration/openai/admin/img_generator.php (added)
-
tags/7.8.0/includes/integration/openai/admin/openai-rag.php (added)
-
tags/7.8.0/includes/integration/openai/admin/settings.php (added)
-
tags/7.8.0/includes/integration/openai/css (added)
-
tags/7.8.0/includes/integration/openai/image (added)
-
tags/7.8.0/includes/integration/openai/image/api_screenshort.png (added)
-
tags/7.8.0/includes/integration/openai/image/logo.jpg (added)
-
tags/7.8.0/includes/integration/openai/js (added)
-
tags/7.8.0/includes/integration/openai/js/openai_settings.js (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/admin (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/admin/admin-notices.php (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/admin/license-settings-page.php (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/assets (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/assets/css (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/assets/css/style.css (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/assets/js (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/assets/js/script.js (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/classes (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/classes/plugin-upgrader.php (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/config.php (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/images (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/images/qc-logo.jpg (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/plugin-upgrader.php (added)
-
tags/7.8.0/includes/integration/openai/plugin-upgrader/utils.php (added)
-
tags/7.8.0/includes/integration/openai/qcld-bot-openai.php (added)
-
tags/7.8.0/includes/integration/openai/qcld_wp_OpenAI.php (added)
-
tags/7.8.0/includes/integration/openrouter (added)
-
tags/7.8.0/includes/integration/openrouter/admin (added)
-
tags/7.8.0/includes/integration/openrouter/admin/settings.php (added)
-
tags/7.8.0/includes/integration/openrouter/assets (added)
-
tags/7.8.0/includes/integration/openrouter/assets/js (added)
-
tags/7.8.0/includes/integration/openrouter/assets/js/qcld-wp-openrouter-admin.js (added)
-
tags/7.8.0/includes/integration/openrouter/assets/js/qcld-wp-openrouter.js (added)
-
tags/7.8.0/includes/integration/openrouter/qcld-bot-openrouter.php (added)
-
tags/7.8.0/includes/language center.json (added)
-
tags/7.8.0/includes/openai (added)
-
tags/7.8.0/includes/openai/OpenAi_WPBot_Menu.php (added)
-
tags/7.8.0/includes/openai/Parsedown.php (added)
-
tags/7.8.0/includes/openai/admin (added)
-
tags/7.8.0/includes/openai/admin/admin_ui2.php (added)
-
tags/7.8.0/includes/openai/admin/assistant.php (added)
-
tags/7.8.0/includes/openai/admin/content_writer.php (added)
-
tags/7.8.0/includes/openai/admin/data_post_converter.php (added)
-
tags/7.8.0/includes/openai/admin/files.php (added)
-
tags/7.8.0/includes/openai/admin/help.php (added)
-
tags/7.8.0/includes/openai/admin/img_generator.php (added)
-
tags/7.8.0/includes/openai/admin/settings.php (added)
-
tags/7.8.0/includes/openai/css (added)
-
tags/7.8.0/includes/openai/image (added)
-
tags/7.8.0/includes/openai/image/api_screenshort.png (added)
-
tags/7.8.0/includes/openai/image/logo.jpg (added)
-
tags/7.8.0/includes/openai/js (added)
-
tags/7.8.0/includes/openai/js/openai_settings.js (added)
-
tags/7.8.0/includes/openai/plugin-upgrader (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/admin (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/admin/admin-notices.php (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/admin/license-settings-page.php (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/assets (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/assets/css (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/assets/css/style.css (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/assets/js (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/assets/js/script.js (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/classes (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/classes/plugin-upgrader.php (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/config.php (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/images (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/images/qc-logo.jpg (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/plugin-upgrader.php (added)
-
tags/7.8.0/includes/openai/plugin-upgrader/utils.php (added)
-
tags/7.8.0/includes/openai/qcld-bot-openai.php (added)
-
tags/7.8.0/includes/openai/qcld_wp_OpenAI.php (added)
-
tags/7.8.0/includes/simple_text_response.php (added)
-
tags/7.8.0/includes/templates (added)
-
tags/7.8.0/includes/templates/manage-categories.php (added)
-
tags/7.8.0/js (added)
-
tags/7.8.0/js/bootstrap.js (added)
-
tags/7.8.0/js/cbpFWTabs.js (added)
-
tags/7.8.0/js/collapse.js (added)
-
tags/7.8.0/js/fontpicker.js (added)
-
tags/7.8.0/js/jquery.cookie.js (added)
-
tags/7.8.0/js/jquery.magnific-popup.min.js (added)
-
tags/7.8.0/js/jquery.repeatable.js (added)
-
tags/7.8.0/js/jquery.slimscroll.min.js (added)
-
tags/7.8.0/js/jquery.timepicker.js (added)
-
tags/7.8.0/js/modernizr.custom.js (added)
-
tags/7.8.0/js/openai_settings1.js (added)
-
tags/7.8.0/js/qcld-wp-chatbot-admin.js (added)
-
tags/7.8.0/js/qcld-wp-chatbot-front.js (added)
-
tags/7.8.0/js/qcld-wp-chatbot-plugin.js (added)
-
tags/7.8.0/js/sweetalrt.js (added)
-
tags/7.8.0/languages (added)
-
tags/7.8.0/languages/en_US.mo (added)
-
tags/7.8.0/languages/en_US.po (added)
-
tags/7.8.0/languages/wpchatbot-bn_BD.mo (added)
-
tags/7.8.0/languages/wpchatbot-bn_BD.po (added)
-
tags/7.8.0/languages/wpchatbot.pot (added)
-
tags/7.8.0/qc-rating-feature (added)
-
tags/7.8.0/qc-rating-feature/css (added)
-
tags/7.8.0/qc-rating-feature/css/style.css (added)
-
tags/7.8.0/qc-rating-feature/js (added)
-
tags/7.8.0/qc-rating-feature/js/rating.js (added)
-
tags/7.8.0/qc-rating-feature/qc-rating-class.php (added)
-
tags/7.8.0/qc-support-promo-page (added)
-
tags/7.8.0/qc-support-promo-page/class-qc-support-promo-page.php (added)
-
tags/7.8.0/qc-support-promo-page/css (added)
-
tags/7.8.0/qc-support-promo-page/css/balls_loading2.gif (added)
-
tags/7.8.0/qc-support-promo-page/css/font-awesome.min.css (added)
-
tags/7.8.0/qc-support-promo-page/css/jquery-ui.css (added)
-
tags/7.8.0/qc-support-promo-page/css/responsive.css (added)
-
tags/7.8.0/qc-support-promo-page/css/style.css (added)
-
tags/7.8.0/qc-support-promo-page/fonts (added)
-
tags/7.8.0/qc-support-promo-page/fonts/FontAwesome.otf (added)
-
tags/7.8.0/qc-support-promo-page/fonts/fontawesome-webfont.eot (added)
-
tags/7.8.0/qc-support-promo-page/fonts/fontawesome-webfont.svg (added)
-
tags/7.8.0/qc-support-promo-page/fonts/fontawesome-webfont.ttf (added)
-
tags/7.8.0/qc-support-promo-page/fonts/fontawesome-webfont.woff (added)
-
tags/7.8.0/qc-support-promo-page/fonts/fontawesome-webfont.woff2 (added)
-
tags/7.8.0/qc-support-promo-page/images (added)
-
tags/7.8.0/qc-support-promo-page/images/Comment-Link-Remove-300x300 (1).jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/Comment-Link-Remove-300x300.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/PageSpeed-Friendly-Analytics-Tracking-1-300x300 (1).jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/PageSpeed-Friendly-Analytics-Tracking-1-300x300.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/chatbot-addons.png (added)
-
tags/7.8.0/qc-support-promo-page/images/coming-soon-special.png (added)
-
tags/7.8.0/qc-support-promo-page/images/comment-tools-logo-2.png (added)
-
tags/7.8.0/qc-support-promo-page/images/express-shop.png (added)
-
tags/7.8.0/qc-support-promo-page/images/expressshop-icon.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/feature-image.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/feature01.png (added)
-
tags/7.8.0/qc-support-promo-page/images/feature02.png (added)
-
tags/7.8.0/qc-support-promo-page/images/feature03.png (added)
-
tags/7.8.0/qc-support-promo-page/images/feature04.png (added)
-
tags/7.8.0/qc-support-promo-page/images/i-list-logo.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/iList-icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/ichart-300x300 (1).jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/ichart-300x300.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-256x256-1.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-01.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-02.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-03.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-04.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-05.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-06.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-07.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon-pack/service-08.png (added)
-
tags/7.8.0/qc-support-promo-page/images/icon.png (added)
-
tags/7.8.0/qc-support-promo-page/images/ilist-chat.png (added)
-
tags/7.8.0/qc-support-promo-page/images/jarvis-icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/jarvis.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/kb-helpdesk-logo-1.png (added)
-
tags/7.8.0/qc-support-promo-page/images/knowledge-base (1).jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/knowledge-base.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/knowledgebase-helpdesk.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/loading.gif (added)
-
tags/7.8.0/qc-support-promo-page/images/logo (1).png (added)
-
tags/7.8.0/qc-support-promo-page/images/logo.png (added)
-
tags/7.8.0/qc-support-promo-page/images/portfolio-x-logo-dark-2.png (added)
-
tags/7.8.0/qc-support-promo-page/images/portfolio-x.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-chatbot-master.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-coming-soont.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-express-shop.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-kbx-1.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-sbd.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-simple-blog.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-sld.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-wootabbed.png (added)
-
tags/7.8.0/qc-support-promo-page/images/premium-theme-woowbot.png (added)
-
tags/7.8.0/qc-support-promo-page/images/seo-help.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/seo.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/simple-link-directory-thumb.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/sld-icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/slider-hero-icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/slider-hero-icon.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/woo-tabbed-icon-256x256.png (added)
-
tags/7.8.0/qc-support-promo-page/images/woo.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/wootab.jpg (added)
-
tags/7.8.0/qc-support-promo-page/images/woow-logo.png (added)
-
tags/7.8.0/qc-support-promo-page/images/wpboticon-256x256-1.png (added)
-
tags/7.8.0/qc-support-promo-page/js (added)
-
tags/7.8.0/qc-support-promo-page/js/jquery-ui.min.js (added)
-
tags/7.8.0/qc-support-promo-page/js/jquery.min.js (added)
-
tags/7.8.0/qc-support-promo-page/js/support-form-script.js (added)
-
tags/7.8.0/qc-support-promo-page/qc-clr-recommendbot-support-plugin.php (added)
-
tags/7.8.0/qcld-openai-bot.php (added)
-
tags/7.8.0/qcld-recommendbot-ai-plugin.php (added)
-
tags/7.8.0/qcld-recommendbot-plugin.php (added)
-
tags/7.8.0/qcld-wpwbot-search.php (added)
-
tags/7.8.0/qcld-wpwbot.php (added)
-
tags/7.8.0/qcld_df_api.php (added)
-
tags/7.8.0/readme.txt (added)
-
tags/7.8.0/small_talk.csv (added)
-
tags/7.8.0/templates (added)
-
tags/7.8.0/templates/app-templates (added)
-
tags/7.8.0/templates/app-templates/app-checkout.php (added)
-
tags/7.8.0/templates/app-templates/app-order-thankyou.php (added)
-
tags/7.8.0/templates/app-templates/app.php (added)
-
tags/7.8.0/templates/template-00 (added)
-
tags/7.8.0/templates/template-00/shortcode-backup.css (added)
-
tags/7.8.0/templates/template-00/shortcode.css (added)
-
tags/7.8.0/templates/template-00/shortcode.php (added)
-
tags/7.8.0/templates/template-00/style.css (added)
-
tags/7.8.0/templates/template-00/template.php (added)
-
tags/7.8.0/templates/template-01 (added)
-
tags/7.8.0/templates/template-01/shortcode.css (added)
-
tags/7.8.0/templates/template-01/shortcode.php (added)
-
tags/7.8.0/templates/template-01/style.css (added)
-
tags/7.8.0/templates/template-01/template.php (added)
-
tags/7.8.0/templates/template-02 (added)
-
tags/7.8.0/templates/template-02/shortcode.css (added)
-
tags/7.8.0/templates/template-02/shortcode.php (added)
-
tags/7.8.0/templates/template-02/style.css (added)
-
tags/7.8.0/templates/template-02/template.php (added)
-
tags/7.8.0/templates/template-03 (added)
-
tags/7.8.0/templates/template-03/shortcode.css (added)
-
tags/7.8.0/templates/template-03/shortcode.php (added)
-
tags/7.8.0/templates/template-03/style.css (added)
-
tags/7.8.0/templates/template-03/template.php (added)
-
tags/7.8.0/templates/template-horizontal (added)
-
tags/7.8.0/templates/template-horizontal/shortcode-backup.css (added)
-
tags/7.8.0/templates/template-horizontal/shortcode.css (added)
-
tags/7.8.0/templates/template-horizontal/shortcode.php (added)
-
tags/7.8.0/templates/template-horizontal/style.css (added)
-
tags/7.8.0/templates/template-horizontal/template.php (added)
-
trunk/js/qcld-wp-chatbot-plugin.js (modified) (1 diff)
-
trunk/qcld-wpwbot-search.php (modified) (9 diffs)
-
trunk/qcld-wpwbot.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
chatbot/trunk/js/qcld-wp-chatbot-plugin.js
r3444025 r3463219 2239 2239 var page = obj.attr('data-page'); 2240 2240 obj.text('Loading...'); 2241 var data = {'action':'wpbo_search_site_pagination','name':globalwpw.hasNameCookie,'keyword':keyword,'language': globalwpw.settings.obj.language,'type': post_type, 'page': page };2241 var data = {'action':'wpbo_search_site_pagination','name':globalwpw.hasNameCookie,'keyword':keyword,'language': globalwpw.settings.obj.language,'type': post_type, 'page': page, 'nonce': qcld_chatbot_obj.nonce}; 2242 2242 if($(globalwpw.settings.messageLastChild+' .wp-chatbot-comment-loader').length==0){ 2243 2243 $(globalwpw.settings.messageContainer).append(wpwKits.botPreloader()); -
chatbot/trunk/qcld-wpwbot-search.php
r3391642 r3463219 321 321 global $wpdb; 322 322 323 $keyword = sanitize_text_field( $_POST['keyword'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing 324 $post_type = sanitize_text_field( $_POST['type'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing 325 $page = sanitize_text_field( $_POST['page'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing 323 // Verify nonce for security 324 if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'wpbot_search_nonce' ) ) { 325 wp_send_json_error( array( 'message' => 'Security check failed' ) ); 326 wp_die(); 327 } 328 329 // Sanitize and validate inputs 330 $keyword = isset( $_POST['keyword'] ) ? sanitize_text_field( $_POST['keyword'] ) : ''; 331 $post_type = isset( $_POST['type'] ) ? sanitize_text_field( $_POST['type'] ) : 'post'; 332 $page = isset( $_POST['page'] ) ? absint( $_POST['page'] ) : 0; 333 334 // Validate post type against allowed types 335 $allowed_post_types = array( 'post', 'page', 'product' ); 336 if ( ! in_array( $post_type, $allowed_post_types, true ) ) { 337 $post_type = 'post'; 338 } 339 326 340 $enable_post_types = get_option( 'wppt_post_types' ); 327 341 $load_more = maybe_unserialize( get_option( 'qlcd_wp_chatbot_load_more' ) ); … … 333 347 $load_more = $load_more[ array_rand( $load_more ) ]; 334 348 } 335 $searchlimit = ( get_option( 'wppt_number_of_result' ) == '' ? '5' : get_option( 'wppt_number_of_result') );349 $searchlimit = ( get_option( 'wppt_number_of_result' ) == '' ? 5 : absint( get_option( 'wppt_number_of_result' ) ) ); 336 350 $orderby = ( get_option( 'wppt_result_orderby' ) == '' ? 'none' : get_option( 'wppt_result_orderby' ) ); 337 351 $order = ( get_option( 'wppt_result_order' ) == '' ? 'ASC' : get_option( 'wppt_result_order' ) ); … … 340 354 $new_window = get_option( 'wpbot_search_result_new_window' ); 341 355 342 $total_items = get_option( 'wppt_number_of_result' ); 356 $total_items = absint( get_option( 'wppt_number_of_result' ) ); 357 if ( $total_items < 1 ) { 358 $total_items = 5; 359 } 343 360 344 361 $searchkeyword = qcld_wpbot_modified_keyword( $keyword ); … … 348 365 $response['html'] = ''; 349 366 350 // $sql = "SELECT * FROM ". $wpdb->prefix."posts where post_type in ('".$post_type."') and post_status='publish' and ((post_title REGEXP '\\b".$searchkeyword."\\b'))";367 // Use prepared statements to prevent SQL injection 351 368 if ( get_option( 'active_advance_query' ) != '1' ) { 352 $sql = 'SELECT * FROM ' . $wpdb->prefix . "posts where post_type in ('" . $post_type . "') and post_status='publish' and ((post_title LIKE '%" . $searchkeyword . "%')) order by ID DESC"; 353 $limit = ' Limit 0, ' . $searchlimit; 369 // Simple query - search in post_title only 370 $sql = $wpdb->prepare( 371 "SELECT * FROM {$wpdb->prefix}posts 372 WHERE post_type = %s 373 AND post_status = 'publish' 374 AND post_title LIKE %s 375 ORDER BY ID DESC", 376 $post_type, 377 '%' . $wpdb->esc_like( $searchkeyword ) . '%' 378 ); 354 379 } else { 355 // advance query building 356 $sql = 'SELECT * FROM ' . $wpdb->prefix . "posts where post_type in ('" . $post_type . "') and post_status='publish' and ((post_title REGEXP '\\b" . $searchkeyword . "\\b') or (post_content REGEXP '\\b" . $searchkeyword . "\\b')) order by ID DESC"; 357 $limit = ' Limit 0, ' . $searchlimit; 358 } 380 // Advanced query - search in both post_title and post_content 381 $sql = $wpdb->prepare( 382 "SELECT * FROM {$wpdb->prefix}posts 383 WHERE post_type = %s 384 AND post_status = 'publish' 385 AND (post_title REGEXP %s OR post_content REGEXP %s) 386 ORDER BY ID DESC", 387 $post_type, 388 '[[:<:]]' . $searchkeyword . '[[:>:]]', 389 '[[:<:]]' . $searchkeyword . '[[:>:]]' 390 ); 391 } 392 359 393 $total_results = $wpdb->get_results( $sql ); 360 394 361 395 if ( ! empty( $total_results ) ) { 396 397 // Validate and sanitize orderby parameter 398 $valid_orderby = array( 'title', 'date', 'modified', 'none', 'rand' ); 399 if ( ! in_array( $orderby, $valid_orderby, true ) ) { 400 $orderby = 'none'; 401 } 362 402 363 403 if ( $orderby == 'title' ) { … … 371 411 } 372 412 373 if ( $orderby != 'none' or $orderby != 'rand' ) { 374 $sql .= " order by $orderby $order"; 375 } 376 $limit = ' Limit ' . ( $total_items * $page ) . ", $total_items"; 377 378 $results = $wpdb->get_results( $sql . $limit ); 413 // Validate order parameter 414 $order = strtoupper( $order ); 415 if ( ! in_array( $order, array( 'ASC', 'DESC' ), true ) ) { 416 $order = 'ASC'; 417 } 418 419 // Build query with pagination 420 $offset = absint( $total_items * $page ); 421 422 if ( get_option( 'active_advance_query' ) != '1' ) { 423 if ( $orderby != 'none' && $orderby != 'rand' ) { 424 $sql = $wpdb->prepare( 425 "SELECT * FROM {$wpdb->prefix}posts 426 WHERE post_type = %s 427 AND post_status = 'publish' 428 AND post_title LIKE %s 429 ORDER BY {$orderby} {$order} 430 LIMIT %d, %d", 431 $post_type, 432 '%' . $wpdb->esc_like( $searchkeyword ) . '%', 433 $offset, 434 $total_items 435 ); 436 } else { 437 $sql = $wpdb->prepare( 438 "SELECT * FROM {$wpdb->prefix}posts 439 WHERE post_type = %s 440 AND post_status = 'publish' 441 AND post_title LIKE %s 442 ORDER BY ID DESC 443 LIMIT %d, %d", 444 $post_type, 445 '%' . $wpdb->esc_like( $searchkeyword ) . '%', 446 $offset, 447 $total_items 448 ); 449 } 450 } else { 451 if ( $orderby != 'none' && $orderby != 'rand' ) { 452 $sql = $wpdb->prepare( 453 "SELECT * FROM {$wpdb->prefix}posts 454 WHERE post_type = %s 455 AND post_status = 'publish' 456 AND (post_title REGEXP %s OR post_content REGEXP %s) 457 ORDER BY {$orderby} {$order} 458 LIMIT %d, %d", 459 $post_type, 460 '[[:<:]]' . $searchkeyword . '[[:>:]]', 461 '[[:<:]]' . $searchkeyword . '[[:>:]]', 462 $offset, 463 $total_items 464 ); 465 } else { 466 $sql = $wpdb->prepare( 467 "SELECT * FROM {$wpdb->prefix}posts 468 WHERE post_type = %s 469 AND post_status = 'publish' 470 AND (post_title REGEXP %s OR post_content REGEXP %s) 471 ORDER BY ID DESC 472 LIMIT %d, %d", 473 $post_type, 474 '[[:<:]]' . $searchkeyword . '[[:>:]]', 475 '[[:<:]]' . $searchkeyword . '[[:>:]]', 476 $offset, 477 $total_items 478 ); 479 } 480 } 481 482 $results = $wpdb->get_results( $sql ); 379 483 } else { 380 484 if ( class_exists( 'SitePress' ) ) { 381 485 global $sitepress; 382 $selected_lan = sanitize_text_field( $_POST['language'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing486 $selected_lan = isset( $_POST['language'] ) ? sanitize_text_field( $_POST['language'] ) : ''; 383 487 $selected_lan = explode( '_', $selected_lan ); 384 $sitepress->switch_lang( $selected_lan[0], true ); 385 386 } 488 if ( ! empty( $selected_lan[0] ) ) { 489 $sitepress->switch_lang( $selected_lan[0], true ); 490 } 491 } 492 387 493 $query_arg = array( 388 494 'post_type' => $post_type, … … 393 499 'orderby' => $orderby, 394 500 ); 501 395 502 if ( class_exists( 'SitePress' ) ) { 396 503 global $sitepress; 397 $selected_lan = sanitize_text_field( $_POST['language'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing504 $selected_lan = isset( $_POST['language'] ) ? sanitize_text_field( $_POST['language'] ) : ''; 398 505 $selected_lan = explode( '_', $selected_lan ); 399 $sitepress->switch_lang( $selected_lan[0], true ); 400 506 if ( ! empty( $selected_lan[0] ) ) { 507 $sitepress->switch_lang( $selected_lan[0], true ); 508 } 401 509 } 402 510 403 511 $query_arg['suppress_filters'] = true; 404 if ( $orderby != 'none' or$orderby != 'rand' ) {512 if ( $orderby != 'none' && $orderby != 'rand' ) { 405 513 $query_arg['order'] = $order; 406 514 } … … 411 519 'post_status' => 'publish', 412 520 's' => stripslashes( $keyword ), 413 414 521 ) 415 522 ); … … 420 527 } 421 528 422 423 424 425 426 529 if ( ! empty( $total_results ) ) { 427 530 428 $selected_lan = sanitize_text_field( $_POST['language'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing531 $selected_lan = isset( $_POST['language'] ) ? sanitize_text_field( $_POST['language'] ) : ''; 429 532 $urlss = get_option( 'wpbotml_url_urls' ) ? get_option( 'wpbotml_url_urls' ) : ''; 430 533 $imagesize = ( get_option( 'wpbot_search_image_size' ) != '' ? get_option( 'wpbot_search_image_size' ) : 'thumbnail' ); 431 534 432 433 535 $response['html'] .= '<div class="wpb-search-result">'; 434 536 435 foreach ( $total_results as $result ) { 436 437 if ( $result->post_type == 'product' ) { 438 if ( ! class_exists( 'WooCommerce' ) ) { 439 continue; 440 } 537 foreach ( $total_results as $result ) { 538 539 if ( $result->post_type == 'product' ) { 540 if ( ! class_exists( 'WooCommerce' ) ) { 541 continue; 542 } 543 } 544 545 $featured_img_url = get_the_post_thumbnail_url( $result->ID, $thumb ); 546 $excerpt = ''; 547 if ( isset( $result->ID ) ) { 548 $post_obj = get_post( $result->ID ); 549 if ( $post_obj ) { 550 if ( has_excerpt( $result->ID ) ) { 551 $excerpt = get_the_excerpt( $result->ID ); 552 } else { 553 $content = $post_obj->post_content; 554 555 // Remove ALL WPBakery shortcodes (paired + self-closing) 556 $content = preg_replace( '/\[vc_[^\]]*\](.*?)\[\/vc_[^\]]*\]/s', '$1', $content ); // paired 557 $content = preg_replace( '/\[vc_[^\]]*\]/s', '', $content ); // self-closing 558 $content = preg_replace('/\[\/?[\w\-]+[^\]]*\]/', '', $content); 559 // Extra: remove any leftover [] shortcodes (just in case) 560 $content = strip_shortcodes( $content ); 561 562 // Run through normal WP content filters 563 $content_filtered = apply_filters( 'the_content', $content ); 564 565 // Strip HTML tags, then trim 566 $excerpt = wp_trim_words( wp_strip_all_tags( $content_filtered ), 20, '...' ); 441 567 } 442 443 $featured_img_url = get_the_post_thumbnail_url( $result->ID, $thumb );444 $excerpt = '';445 if ( isset( $result->ID ) ) {446 $post_obj = get_post( $result->ID );447 if ( $post_obj ) {448 if ( has_excerpt( $result->ID ) ) {449 $excerpt = get_the_excerpt( $result->ID );450 } else {451 $content = $post_obj->post_content;452 453 // Remove ALL WPBakery shortcodes (paired + self-closing)454 $content = preg_replace( '/\[vc_[^\]]*\](.*?)\[\/vc_[^\]]*\]/s', '$1', $content ); // paired455 $content = preg_replace( '/\[vc_[^\]]*\]/s', '', $content ); // self-closing456 $content = preg_replace('/\[\/?[\w\-]+[^\]]*\]/', '', $content);457 // Extra: remove any leftover [] shortcodes (just in case)458 $content = strip_shortcodes( $content );459 460 // Run through normal WP content filters461 $content_filtered = apply_filters( 'the_content', $content );462 463 // Strip HTML tags, then trim464 $excerpt = wp_trim_words( wp_strip_all_tags( $content_filtered ), 20, '...' );465 }466 }467 }468 469 470 $response['html'] .= '<div class="wpbot_card_wraper">';471 $response['html'] .= '<div class="wpbot_card_image ' . ( $result->post_type == 'product' ? 'wp-chatbot-product' : '' ) . ' ' . ( $featured_img_url == '' ? 'wpbot_card_image_saas' : '' ) . '"><a href="' . esc_url( get_permalink( $result->ID ) ) . '" ' . ( $new_window == 1 ? 'target="_blank"' : '' ) . ' ' . ( $result->post_type == 'product' ? 'wp-chatbot-pid="' . $result->ID . '"' : '' ) . '>';472 if ( $featured_img_url != '' ) {473 $response['html'] .= '<img src="' . esc_url_raw( $featured_img_url ) . '" />';474 }475 476 $response['html'] .= '<div class="wpbot_card_caption ' . ( $featured_img_url == '' ? 'wpbot_card_caption_saas' : '' ) . '">';477 $response['html'] .= '<p class="wpbot_card_caption_title"><span style="padding: 0 5px;color: #1d73b4;display: inline-block;margin: 0 5px 0 0;width: 18px;height: 18px;border-radius: 50%;font-size: 20px;line-height: 22px;"> ✓ </span> ' . esc_html( $result->post_title ) . '</p>';478 $response['html'] .= '<p class="wpbot_card_description">' . esc_html( $excerpt ) . '</p>';479 if ( $result->post_type == 'product' ) {480 if ( class_exists( 'WooCommerce' ) ) {481 $product = wc_get_product( $result->ID );482 $response['html'] .= '<p class="wpbot_product_price">' . get_woocommerce_currency_symbol() . $product->get_price_html() . '</p>';483 }484 }485 $response['html'] .= '</div>';486 $response['html'] .= '</a></div>';487 $response['html'] .= '</div>';488 489 568 } 490 569 } 570 571 572 $response['html'] .= '<div class="wpbot_card_wraper">'; 573 $response['html'] .= '<div class="wpbot_card_image ' . ( $result->post_type == 'product' ? 'wp-chatbot-product' : '' ) . ' ' . ( $featured_img_url == '' ? 'wpbot_card_image_saas' : '' ) . '"><a href="' . esc_url( get_permalink( $result->ID ) ) . '" ' . ( $new_window == 1 ? 'target="_blank"' : '' ) . ' ' . ( $result->post_type == 'product' ? 'wp-chatbot-pid="' . absint( $result->ID ) . '"' : '' ) . '>'; 574 if ( $featured_img_url != '' ) { 575 $response['html'] .= '<img src="' . esc_url_raw( $featured_img_url ) . '" />'; 576 } 577 578 $response['html'] .= '<div class="wpbot_card_caption ' . ( $featured_img_url == '' ? 'wpbot_card_caption_saas' : '' ) . '">'; 579 $response['html'] .= '<p class="wpbot_card_caption_title"><span style="padding: 0 5px;color: #1d73b4;display: inline-block;margin: 0 5px 0 0;width: 18px;height: 18px;border-radius: 50%;font-size: 20px;line-height: 22px;"> ✓ </span> ' . esc_html( $result->post_title ) . '</p>'; 580 $response['html'] .= '<p class="wpbot_card_description">' . esc_html( $excerpt ) . '</p>'; 581 if ( $result->post_type == 'product' ) { 582 if ( class_exists( 'WooCommerce' ) ) { 583 $product = wc_get_product( $result->ID ); 584 $response['html'] .= '<p class="wpbot_product_price">' . get_woocommerce_currency_symbol() . $product->get_price_html() . '</p>'; 585 } 586 } 587 $response['html'] .= '</div>'; 588 $response['html'] .= '</a></div>'; 589 $response['html'] .= '</div>'; 590 591 } 592 491 593 492 594 $response['html'] .= '</div>'; … … 494 596 495 597 } 496 wp_reset_query();598 wp_reset_query(); 497 599 498 600 if ( $response['status'] != 'success' ) { 499 601 $texts = maybe_unserialize( get_option( 'qlcd_wp_chatbot_no_result' ) ); 500 $selected_lan = sanitize_text_field( $_POST['language'] );// phpcs:ignore WordPress.Security.NonceVerification.Missing 501 $texts = str_replace( "\'", "'", $texts[ $selected_lan ][0] ); 502 $response['html'] = array( $texts ); 503 602 $selected_lan = isset( $_POST['language'] ) ? sanitize_text_field( $_POST['language'] ) : ''; 603 if ( ! empty( $texts ) && is_array( $texts ) && isset( $texts[ $selected_lan ][0] ) ) { 604 $texts = str_replace( "\'", "'", $texts[ $selected_lan ][0] ); 605 $response['html'] = array( $texts ); 606 } else { 607 $response['html'] = array( 'No results found' ); 608 } 504 609 } 505 610 wp_send_json( $response ); -
chatbot/trunk/qcld-wpwbot.php
r3460742 r3463219 5 5 * Description: ChatBot is a native WordPress ChatBot plugin to provide live chat support and lead generation 6 6 * Donate link: https://www.wpbot.pro/ 7 * Version: 7. 7.97 * Version: 7.8.0 8 8 * @author QuantumCloud 9 9 * Author: ChatBot for WordPress - WPBot … … 42 42 43 43 if ( ! defined( 'QCLD_wpCHATBOT_VERSION' ) ) { 44 define('QCLD_wpCHATBOT_VERSION', '7. 7.9');44 define('QCLD_wpCHATBOT_VERSION', '7.8.0'); 45 45 } 46 46 if ( ! defined( 'QCLD_wpCHATBOT_REQUIRED_wpCOMMERCE_VERSION' ) ) { -
chatbot/trunk/readme.txt
r3460742 r3463219 5 5 Requires at least: 4.6 6 6 Tested up to: 6.9 7 Stable tag: 7. 7.97 Stable tag: 7.8.0 8 8 Requires PHP: 5.6 9 9 License: GPLv2 or later … … 360 360 == Changelog == 361 361 362 = 7.8.0 = 363 # Improved security 364 362 365 = 7.7.9 = 363 366 # Fixed an issue with Gemini Integration
Note: See TracChangeset
for help on using the changeset viewer.