PluginProbe
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services / 8.7.6
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services v8.7.6
8.7.6 8.7.5 8.7.4 8.7.3 8.7.2 8.7.1 8.7.0 8.6.9 8.6.8 8.6.7 8.6.6 8.6.5 8.6.4 8.6.2 8.6.1 8.6.0 8.5.9 8.5.8 8.5.7 8.5.6 8.5.5 8.5.4 8.5.3 8.5.2 8.5.0 All 532 releases
chatbot / includes / admin / templates / ai-admin.php

ai-admin.php in WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services 8.7.6, at includes/admin/templates/ai-admin.php

193 lines 13.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3 $no_ai_active = (
4 get_option( 'ai_enabled' ) != 1 &&
5 get_option( 'qcld_openrouter_enabled' ) != 1 &&
6 get_option( 'qcld_gemini_enabled' ) != 1 &&
7 get_option( 'qcld_grok_enabled' ) != 1 &&
8 get_option( 'qcld_claude_enabled' ) != 1
9 );
10 $wizard_done = ( get_option( 'wpbot_ai_setup_wizard_done' ) == 1 );
11
12 $show_wizard_automatically = $no_ai_active;
13 require_once QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/admin/templates/wizard-popup.php';
14 ?>
15 <div class="wrap qcld-main-wrapper">
16 <div class="qcld-wp-chatbot-wrap-header-aisection">
17 <div class="qcld-wp-chatbot-wrap-header">
18
19 <div class="qcld-wp-chatbot-wrap-header-logo"><a href="#" class="qcld-wp-chatbot-wrap-site__logo"><img src="<?php echo esc_url( QCLD_wpCHATBOT_IMG_URL . '/chatbot.png' ); ?>" alt="Dialogflow CX"> WPBot Control Panel </a>
20 <p><strong>Core Version:</strong> v<?php echo esc_html( QCLD_wpCHATBOT_VERSION ); ?></p>
21 </div>
22 <ul class="qcld-wp-chatbot-wrap-version-wrapper">
23 <li>
24 <a class="wpchatbot-Upgrade" href="https://www.wpbot.pro/" target="_blank">Upgrade To Pro</a>
25
26 </li>
27 </ul>
28 </div>
29 </div>
30 </div>
31
32 <div class="qcl-openai">
33 <div class="row gx-0">
34
35 <div class="card admin-maxwith qcld-openai-main-box">
36 <div class="card-header bg-dark text-white py-sm-4 border-0">
37 <div class="row">
38
39 <div class="col-auto me-auto ai-settings-title-container">
40
41 <a href="<?php echo esc_url( admin_url( 'admin.php?page=wpbot_openAi' ) ); ?>"><h4><?php esc_html_e( 'AI Settings','chatbot');?></h4></a>
42
43 <?php
44 // Determine which provider is currently active
45 $active_provider = 'openai'; // default
46 if (get_option('qcld_claude_enabled') == 1) $active_provider = 'claude';
47 if (get_option('qcld_grok_enabled') == 1) $active_provider = 'grok';
48 if (get_option('qcld_gemini_enabled') == 1) $active_provider = 'gemini';
49 if (get_option('qcld_openrouter_enabled') == 1) $active_provider = 'openrouter';
50 if (get_option('ai_enabled') == 1) $active_provider = 'openai';
51 ?>
52 <input type="hidden" id="ai-provider-selector" value="<?php echo esc_attr($active_provider); ?>">
53
54 <div class="col-auto ai-settings-title-container">
55 <button id="wpbot-trigger-wizard" class="qcld-btn-primary"><?php esc_html_e( 'AI Wizard', 'chatbot' ); ?></button>
56 </div>
57 <div class="col-auto ai-settings-title-container">
58 <button id="ai-knowledge-base-tab" class="qcld-btn-primary" link="page=wpbot_openAi#ai-knowledge-base-tab"><?php esc_html_e( 'Knowledge Base (RAG)', 'chatbot' ); ?></button>
59 </div>
60 <div class="col-auto ai-settings-title-container">
61 <button id="qcld-common-ai-settings" class="qcld-btn-primary" link="page=wpbot_openAi#common-ai-settings-tab"><?php esc_html_e( 'Common AI Settings', 'chatbot' ); ?></button>
62 </div>
63 </div>
64
65
66 </div>
67 </div>
68 <!-- AI Provider Cards - Separate Row -->
69 <div class="ai-provider-cards-wrapper">
70
71 <h4></h4>
72
73 <div class="ai-provider-cards">
74 <div class="ai-provider-card <?php echo ($active_provider === 'openai') ? 'active' : ''; ?>" data-provider="openai">
75 <span class="ai-provider-check"><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="#2563EB"/><path d="M4 7.2L6.2 9.4L10 5" stroke="#fff" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
76 <div class="ai-provider-icon">
77 <svg viewBox="0 0 24 24" width="32" height="32" fill="none"><path d="M22.282 9.821a5.985 5.985 0 0 0-.516-4.91 6.046 6.046 0 0 0-6.51-2.9A6.065 6.065 0 0 0 4.28 4.082a5.985 5.985 0 0 0-3.998 2.9 6.046 6.046 0 0 0 .743 7.097 5.98 5.98 0 0 0 .51 4.911 6.051 6.051 0 0 0 6.515 2.9A5.985 5.985 0 0 0 12.56 24a6.051 6.051 0 0 0 5.772-4.206 5.99 5.99 0 0 0 3.997-2.9 6.056 6.056 0 0 0-.747-7.073zM12.56 22.51a4.476 4.476 0 0 1-2.876-1.04l.143-.08 4.779-2.758a.795.795 0 0 0 .395-.684v-6.74l2.02 1.166a.071.071 0 0 1 .038.052v5.583a4.504 4.504 0 0 1-4.5 4.502zM3.12 18.376a4.48 4.48 0 0 1-.535-3.014l.142.085 4.783 2.759a.77.77 0 0 0 .785 0l5.843-3.369v2.332a.08.08 0 0 1-.033.062L9.26 19.998a4.5 4.5 0 0 1-6.14-1.622zM2.036 7.874a4.485 4.485 0 0 1 2.34-1.97V11.6a.77.77 0 0 0 .388.676l5.815 3.355-2.02 1.168a.076.076 0 0 1-.071 0l-4.83-2.786A4.504 4.504 0 0 1 2.036 7.87zm16.37 3.81L12.57 8.316l2.02-1.166a.076.076 0 0 1 .071 0l4.83 2.791a4.494 4.494 0 0 1-.676 8.105v-5.698a.785.785 0 0 0-.388-.676zm2.01-3.028l-.141-.085-4.774-2.782a.776.776 0 0 0-.785 0L8.87 9.158V6.826a.08.08 0 0 1 .033-.062l4.83-2.787a4.5 4.5 0 0 1 6.683 4.66zM7.823 12.74l-2.02-1.164a.08.08 0 0 1-.038-.057V5.936a4.504 4.504 0 0 1 7.372-3.462l-.142.08L8.21 5.312a.786.786 0 0 0-.395.684l.009 6.744zm1.1-2.368l2.6-1.502 2.6 1.502v3.004l-2.6 1.502-2.6-1.502z" fill="#10A37F"/></svg>
78 </div>
79 <span class="ai-provider-name"><?php esc_html_e('OpenAI', 'chatbot'); ?></span>
80 </div>
81 <div class="ai-provider-card <?php echo ($active_provider === 'gemini') ? 'active' : ''; ?>" data-provider="gemini">
82 <span class="ai-provider-check"><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="#2563EB"/><path d="M4 7.2L6.2 9.4L10 5" stroke="#fff" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
83 <div class="ai-provider-icon">
84 <svg viewBox="0 0 24 24" width="32" height="32" fill="none"><path d="M12 24C12 24 12 12 24 12C12 12 12 0 12 0C12 0 12 12 0 12C12 12 12 24 12 24Z" fill="url(#gemini_grad)"/><defs><linearGradient id="gemini_grad" x1="0" y1="12" x2="24" y2="12"><stop stop-color="#1A73E8"/><stop offset="1" stop-color="#6C48C1"/></linearGradient></defs></svg>
85 </div>
86 <span class="ai-provider-name"><?php esc_html_e('Google Gemini', 'chatbot'); ?></span>
87 </div>
88 <div class="ai-provider-card <?php echo ($active_provider === 'grok') ? 'active' : ''; ?>" data-provider="grok">
89 <span class="ai-provider-check"><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="#2563EB"/><path d="M4 7.2L6.2 9.4L10 5" stroke="#fff" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
90 <div class="ai-provider-icon">
91 <svg viewBox="0 0 24 24" width="32" height="32" fill="none"><path d="M4.24 4L11.47 14.13L4.2 21H5.84L12.2 15.16L17.34 21H22L14.35 10.29L21.1 4H19.46L13.63 9.26L8.9 4H4.24ZM6.56 5.27H8.32L19.68 19.73H17.92L6.56 5.27Z" fill="#1DA1F2"/></svg>
92 </div>
93 <span class="ai-provider-name"><?php esc_html_e('Grok', 'chatbot'); ?></span>
94 </div>
95 <div class="ai-provider-card <?php echo ($active_provider === 'openrouter') ? 'active' : ''; ?>" data-provider="openrouter">
96 <span class="ai-provider-check"><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="#2563EB"/><path d="M4 7.2L6.2 9.4L10 5" stroke="#fff" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
97 <div class="ai-provider-icon">
98 <svg viewBox="0 0 24 24" width="32" height="32" fill="none"><path d="M16.778 1.844v1.919q-.569-.026-1.138-.032q-.708-.008-1.415.037c-1.93.126-4.023.728-6.149 2.237c-2.911 2.066-2.731 1.95-4.14 2.75c-.396.223-1.342.574-2.185.798c-.841.225-1.753.333-1.751.333v4.229s.768.108 1.61.333c.842.224 1.789.575 2.185.799c1.41.798 1.228.683 4.14 2.75c2.126 1.509 4.22 2.11 6.148 2.236c.88.058 1.716.041 2.555.005v1.918l7.222-4.168l-7.222-4.17v2.176c-.86.038-1.611.065-2.278.021c-1.364-.09-2.417-.357-3.979-1.465c-2.244-1.593-2.866-2.027-3.68-2.508c.889-.518 1.449-.906 3.822-2.59c1.56-1.109 2.614-1.377 3.978-1.466c.667-.044 1.418-.017 2.278.02v2.176L24 6.014Z" fill="#6B7280"/></svg>
99 </div>
100 <span class="ai-provider-name"><?php esc_html_e('OpenRouter', 'chatbot'); ?></span>
101 </div>
102 <div class="ai-provider-card <?php echo ($active_provider === 'claude') ? 'active' : ''; ?>" data-provider="claude">
103 <span class="ai-provider-check"><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="#2563EB"/><path d="M4 7.2L6.2 9.4L10 5" stroke="#fff" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
104 <div class="ai-provider-icon">
105 <svg viewBox="0 0 24 24" width="32" height="32" fill="none"><path d="M12 24C5.373 24 0 18.627 0 12S5.373 0 12 0s12 5.373 12 12-5.373 12-12 12zm0-22C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2z" fill="#D97757"/><path d="M15.5 17c-2.3 0-4.1-1.2-5.2-3.1-.2-.3-.5-.7-.8-1-1.3-1.6-3.2-2.3-5-2.1v-1.6c2.2-.2 4.4.6 6 2.5.3.3.6.7.8 1.1 1 1.7 2.6 2.7 4.2 2.7.3 0 .6 0 .8-.1v1.6c-.2 0-.5.1-.8.1z" fill="#D97757"/></svg>
106 </div>
107 <span class="ai-provider-name"><?php esc_html_e('Claude', 'chatbot'); ?></span>
108 </div>
109 </div>
110 </div>
111 <?php
112 if ( get_option( 'ai_enabled' ) != 1 && get_option( 'qcld_openrouter_enabled' ) != 1 && get_option( 'qcld_gemini_enabled' ) != 1 && get_option( 'qcld_grok_enabled' ) != 1 && get_option( 'qcld_claude_enabled' ) != 1 ) {
113 ?>
114 <div id="openai-settings" class="ai-settings-provider">
115 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/openai/admin/admin_ui2.php'); ?>
116 </div>
117
118 <?php
119 }
120 ?>
121 <div id="openai-settings" class="ai-settings-provider" <?php echo (get_option( 'ai_enabled') == 1) ? 'style="display: block;"' :'style="display: none;"';?> >
122 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/openai/admin/admin_ui2.php'); ?>
123 </div>
124 <div id="openrouter-settings" class="ai-settings-provider" <?php echo (get_option( 'qcld_openrouter_enabled') == 1) ? 'style="display: block;"' :'style="display: none;"';?> >
125 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/openrouter/admin/settings.php'); ?>
126 </div>
127 <div id="gemini-settings" class="ai-settings-provider" <?php echo (get_option( 'qcld_gemini_enabled') == 1) ? 'style="display: block;"' :'style="display: none;"';?> >
128 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/gemini/admin/settings.php'); ?>
129 </div>
130 <div id="grok-settings" class="ai-settings-provider" <?php echo (get_option( 'qcld_grok_enabled') == 1) ? 'style="display: block;"' :'style="display: none;"';?> >
131 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/grok/admin/settings.php'); ?>
132 </div>
133 <div id="claude-settings" class="ai-settings-provider" <?php echo (get_option( 'qcld_claude_enabled') == 1) ? 'style="display: block;"' :'style="display: none;"';?> >
134 <?php require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/integration/claude/admin/settings.php'); ?>
135 </div>
136 <div id="rag-settings" class="ai-settings-provider" style="display: none;">
137 <?php require_once QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/admin/templates/rag.php'; ?>
138 </div>
139 <div id="common-ai-settings" class="ai-settings-provider" style="display: none;">
140 <?php require_once QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'includes/admin/templates/common-ai-settings.php'; ?>
141 </div>
142 <div class="card-footer bg-dark text-white py-sm-4 border-0"></div>
143 </div>
144
145
146
147 </div>
148 </div>
149 </div>
150
151
152
153
154 <style>
155
156 div#promotion-wpchatbot {
157 margin: 0;
158 padding: 0;
159 border: none;
160 max-width: initial !important;
161 padding: 0 !important;
162 margin: 20px 20px 20px 0 !important;
163 padding: 15px 15px 15px 0 !important;
164 border: none !important;
165 border-radius: 6px !important;
166 box-shadow: 0px 4px 6px 1px #ebebeb !important;
167 }
168
169
170 .qc-review-notice{
171 max-width: initial !important;
172 padding: 0 !important;
173 margin: 20px 20px 20px 0 !important;
174 padding: 15px 15px 15px 0 !important;
175 border: none !important;
176 border-radius: 6px !important;
177 box-shadow: 0px 4px 6px 1px #ebebeb !important;
178 background: #fff;
179 color: #000;
180 }
181
182 .qc-review-text h3 {
183 color: #000000;
184 }
185 .qc-review-text p {
186 color: #000000;
187 }
188 </style>
189
190
191
192
193