PluginProbe ʕ •ᴥ•ʔ
AI Engine – The Chatbot, AI Framework & MCP for WordPress / 1.3.90
AI Engine – The Chatbot, AI Framework & MCP for WordPress v1.3.90
3.6.2 3.6.1 3.6.0 3.5.9 3.5.8 3.5.7 3.5.6 3.5.5 3.5.4 3.5.3 3.5.2 3.5.1 3.5.0 3.4.9 3.4.8 3.4.7 0.2.1 1.6.91 0.2.2 1.6.92 0.2.3 1.6.93 0.2.4 1.6.94 0.2.5 1.6.95 0.2.6 1.6.96 0.2.7 1.6.97 0.2.8 1.6.98 0.2.9 1.6.99 0.3.0 1.7.0 0.3.1 1.7.1 0.3.2 1.7.2 0.3.3 1.7.3 0.3.4 1.7.4 0.3.5 1.7.5 0.3.6 1.7.6 0.4.0 1.7.7 0.4.1 1.7.8 0.4.2 1.7.9 0.4.3 1.8.0 0.4.4 1.8.1 0.4.5 1.8.2 0.4.6 1.8.3 0.4.7 1.8.4 0.4.8 1.8.5 0.4.9 1.8.6 0.5.0 1.8.7 0.5.1 1.8.8 0.5.2 1.8.9 0.5.3 1.9.0 0.5.4 1.9.1 0.5.5 1.9.2 0.5.6 1.9.3 0.5.7 1.9.4 0.5.8 1.9.5 0.5.9 1.9.6 0.6.0 1.9.7 0.6.1 1.9.8 0.6.2 1.9.81 0.6.3 1.9.82 0.6.4 1.9.83 0.6.5 1.9.84 0.6.6 1.9.85 0.6.7 1.9.86 0.6.8 1.9.87 0.6.9 1.9.88 0.7.0 1.9.89 0.7.1 1.9.90 0.7.2 1.9.91 0.7.3 1.9.92 0.7.4 1.9.93 0.7.5 1.9.94 0.7.6 1.9.95 0.7.7 1.9.96 0.7.8 1.9.97 0.7.9 1.9.98 0.8.0 1.9.99 0.8.1 2.0.0 0.8.2 2.0.1 0.8.3 2.0.2 0.8.4 2.0.3 0.8.5 2.0.4 0.8.6 2.0.5 0.8.7 2.0.6 0.8.8 2.0.7 0.8.9 2.0.8 0.9.0 2.0.9 0.9.2 2.1.0 0.9.3 2.1.1 0.9.4 2.1.2 0.9.5 2.1.3 0.9.6 2.1.4 0.9.7 2.1.5 0.9.8 2.1.6 0.9.81 2.1.7 0.9.82 2.1.8 0.9.83 2.1.9 0.9.84 2.2.0 0.9.85 2.2.1 0.9.86 2.2.2 0.9.87 2.2.3 0.9.88 2.2.4 0.9.89 2.2.5 0.9.9 2.2.51 0.9.91 2.2.52 0.9.92 2.2.53 0.9.93 2.2.54 0.9.94 2.2.56 0.9.95 2.2.57 0.9.96 2.2.6 0.9.97 2.2.60 0.9.98 2.2.61 0.9.99 2.2.62 1.0.0 2.2.63 1.0.01 2.2.70 1.0.1 2.2.80 1.0.2 2.2.81 1.0.3 2.2.90 1.0.4 2.2.91 1.0.5 2.2.92 1.0.6 2.2.93 1.0.7 2.2.94 1.0.8 2.2.95 1.0.9 2.3.0 1.1.0 2.3.1 1.1.1 2.3.2 1.1.2 2.3.3 1.1.3 2.3.4 1.1.4 2.3.5 1.1.5 2.3.6 1.1.6 2.3.7 1.1.7 2.3.8 1.1.8 2.3.9 1.1.9 2.4.0 1.2.0 2.4.1 1.2.1 2.4.2 1.2.2 2.4.3 1.2.21 2.4.4 1.2.3 2.4.5 1.2.30 2.4.6 1.3.0 2.4.7 1.3.1 2.4.8 1.3.2 2.4.9 1.3.3 2.5.0 1.3.31 2.5.1 1.3.32 2.5.2 1.3.33 2.5.3 1.3.34 2.5.4 1.3.35 2.5.5 1.3.36 2.5.6 1.3.37 2.5.7 1.3.38 2.5.8 1.3.39 2.5.9 1.3.40 2.6.0 1.3.41 2.6.1 1.3.42 2.6.2 1.3.43 2.6.3 1.3.44 2.6.5 1.3.45 2.6.6 1.3.46 2.6.7 1.3.47 2.6.8 1.3.48 2.6.9 1.3.49 2.7.0 1.3.50 2.7.1 1.3.51 2.7.2 1.3.52 2.7.3 1.3.53 2.7.4 1.3.54 2.7.5 1.3.56 2.7.6 1.3.57 2.7.7 1.3.58 2.7.8 1.3.59 2.7.9 1.3.60 2.8.0 1.3.61 2.8.1 1.3.62 2.8.2 1.3.63 2.8.3 1.3.64 2.8.4 1.3.65 2.8.5 1.3.66 2.8.6 1.3.67 2.8.7 1.3.68 2.8.8 1.3.69 2.8.9 1.3.70 2.9.0 1.3.71 2.9.1 1.3.72 2.9.2 1.3.73 2.9.3 1.3.74 2.9.4 1.3.75 2.9.5 1.3.76 2.9.6 1.3.77 2.9.7 1.3.78 2.9.8 1.3.79 2.9.9 1.3.80 3.0.0 1.3.81 3.0.1 1.3.82 3.0.2 1.3.83 3.0.3 1.3.84 3.0.4 1.3.85 3.0.5 1.3.86 3.0.6 1.3.87 3.0.7 1.3.88 3.0.8 1.3.89 3.0.9 1.3.90 3.1.0 1.3.91 3.1.1 1.3.92 3.1.2 1.3.93 3.1.3 1.3.94 3.1.4 1.3.95 3.1.5 1.3.96 3.1.6 1.3.97 3.1.7 1.3.98 3.1.8 1.3.99 3.1.9 1.4.0 3.2.0 1.4.1 3.2.1 1.4.2 3.2.2 1.4.3 3.2.3 1.4.4 3.2.4 1.4.5 3.2.5 1.4.6 3.2.6 1.4.7 3.2.7 1.4.8 3.2.8 1.4.9 3.2.9 1.5.0 3.3.0 1.5.1 3.3.1 1.5.2 3.3.2 1.5.3 3.3.3 1.5.4 3.3.4 1.5.5 3.3.5 1.5.6 3.3.6 1.5.7 3.3.7 1.5.8 3.3.8 1.5.9 3.3.9 1.6.0 3.4.0 1.6.1 3.4.1 1.6.2 3.4.2 1.6.3 3.4.3 1.6.5 3.4.4 1.6.51 3.4.5 1.6.52 3.4.6 1.6.53 1.6.54 1.6.55 1.6.56 1.6.57 1.6.58 1.6.59 1.6.60 1.6.61 1.6.62 1.6.63 1.6.64 1.6.65 1.6.66 1.6.67 1.6.68 trunk 1.6.69 0.0.1 1.6.70 0.0.2 1.6.71 0.0.3 1.6.72 0.0.4 1.6.73 0.0.5 1.6.74 0.0.6 1.6.75 0.0.7 1.6.76 0.0.8 1.6.77 0.0.9 1.6.78 0.1.0 1.6.79 0.1.1 1.6.81 0.1.2 1.6.82 0.1.3 1.6.83 0.1.4 1.6.84 0.1.5 1.6.85 0.1.6 1.6.86 0.1.7 1.6.87 0.1.8 1.6.88 0.1.9 1.6.89 0.2.0 1.6.90
ai-engine / classes / admin.php
ai-engine / classes Last commit date
modules 3 years ago admin.php 3 years ago ai.php 3 years ago answer.php 3 years ago api.php 3 years ago core.php 3 years ago init.php 3 years ago openai.php 3 years ago query.php 3 years ago queryembed.php 3 years ago queryimage.php 3 years ago querytext.php 3 years ago querytranscribe.php 3 years ago rest.php 3 years ago ui.php 3 years ago
admin.php
196 lines
1 <?php
2
3
4 class Meow_MWAI_Admin extends MeowCommon_Admin {
5
6 public $core;
7
8 public $contentGeneratorEnabled;
9 public $imagesGeneratorEnabled;
10 public $playgroundEnabled;
11 public $suggestionsEnabled;
12
13 public function __construct( $core ) {
14 $this->core = $core;
15 parent::__construct( MWAI_PREFIX, MWAI_ENTRY, MWAI_DOMAIN, class_exists( 'MeowPro_MWAI_Core' ) );
16 if ( is_admin() ) {
17
18 $this->contentGeneratorEnabled = $this->core->get_option( 'module_generator_content' );
19 $this->imagesGeneratorEnabled = $this->core->get_option( 'module_generator_images' );
20 $this->playgroundEnabled = $this->core->get_option( 'module_playground' );
21 if ( $this->core->can_access_settings() ) {
22 add_action( 'admin_menu', array( $this, 'app_menu' ) );
23 }
24
25 if ( $this->core->can_access_features() ) {
26 add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
27 add_action( 'admin_menu', array( $this, 'admin_menu' ) );
28
29 // Only if the Suggestions are enabled.
30 $this->suggestionsEnabled = $this->core->get_option( 'module_suggestions' );
31 if ( $this->suggestionsEnabled ) {
32 add_filter( 'post_row_actions', [ $this, 'post_row_actions' ], 10, 2 );
33 }
34
35 add_action( 'admin_footer', [ $this, 'admin_footer' ] );
36 }
37 }
38 }
39
40 function admin_menu() {
41
42 // Generate New (under Posts)
43 if ( $this->contentGeneratorEnabled) {
44 add_submenu_page( 'edit.php', 'Generate New', 'Generate New', 'read', 'mwai_content_generator',
45 array( $this, 'ai_content_generator' ), 2 );
46 }
47
48 // In Tools
49 if ( $this->playgroundEnabled ) {
50 add_management_page( 'Playground', __( 'Playground', 'ai-engine' ), 'read',
51 'mwai_dashboard', array( $this, 'ai_playground' ) );
52 }
53 if ( $this->contentGeneratorEnabled ) {
54 add_management_page( 'Generate Content', 'Generate Content', 'read', 'mwai_content_generator',
55 array( $this, 'ai_content_generator' ) );
56 }
57 if ( $this->imagesGeneratorEnabled ) {
58 add_management_page( 'Generate Images', 'Generate Images', 'read', 'mwai_images_generator',
59 array( $this, 'ai_image_generator' ) );
60 }
61
62 // In the Admin Bar:
63 add_action( 'admin_bar_menu', array( $this, 'admin_bar_menu' ), 100 );
64 }
65
66 function admin_bar_menu( $wp_admin_bar ) {
67
68 $admin_bar = $this->core->get_option( 'admin_bar' );
69 $settings = isset( $admin_bar['settings'] ) && $admin_bar['settings'];
70 $playground = isset( $admin_bar['playground'] ) && $admin_bar['playground'];
71 $content_generator = isset( $admin_bar['content_generator'] ) && $admin_bar['content_generator'];
72 $images_generator = isset( $admin_bar['images_generator'] ) && $admin_bar['images_generator'];
73
74 if ( $settings ) {
75 $wp_admin_bar->add_node( array(
76 'id' => 'mwai-settings',
77 'title' => '<span class="ab-icon dashicons-before dashicons-admin-settings" style="top: 2px;"></span>' . __( 'AI Engine', 'ai-engine' ),
78 'href' => admin_url( 'admin.php?page=mwai_settings' ),
79 'meta' => array( 'class' => 'mwai-settings' ),
80 ) );
81 }
82
83 if ( $content_generator ) {
84 $wp_admin_bar->add_node( array(
85 'id' => 'mwai-content-generator',
86 'title' => MWAI_IMG_WAND_HTML . __( 'Content', 'ai-engine' ),
87 'href' => admin_url( 'tools.php?page=mwai_content_generator' ),
88 'meta' => array( 'class' => 'mwai-content-generator' ),
89 ) );
90 }
91 if ( $images_generator ) {
92 $wp_admin_bar->add_node( array(
93 'id' => 'mwai-image-generator',
94 'title' => MWAI_IMG_WAND_HTML . __( 'Images', 'ai-engine' ),
95 'href' => admin_url( 'tools.php?page=mwai_images_generator' ),
96 'meta' => array( 'class' => 'mwai-images-generator' ),
97 ) );
98 }
99
100 // If it's WP_DEBUG then let's add a menu
101 if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
102 $wp_admin_bar->add_node( array(
103 'id' => 'mwai-debug',
104 'title' => MWAI_IMG_WAND_HTML . __( 'Magic Wand', 'ai-engine' ),
105 //'href' => admin_url( 'tools.php?page=mwai_debug' ),
106 'meta' => array( 'class' => 'mwai-debug' ),
107 ) );
108 }
109 if ( $playground ) {
110 $wp_admin_bar->add_node( array(
111 'id' => 'mwai-playground',
112 'title' => MWAI_IMG_WAND_HTML . __( 'Playground', 'ai-engine' ),
113 'href' => admin_url( 'tools.php?page=mwai_dashboard' ),
114 'meta' => array( 'class' => 'mwai-playground' ),
115 ) );
116 }
117 }
118
119 public function ai_playground() {
120 echo '<div id="mwai-playground"></div>';
121 }
122
123 public function ai_content_generator() {
124 echo '<div id="mwai-content-generator"></div>';
125 }
126
127 public function ai_image_generator() {
128 echo '<div id="mwai-image-generator"></div>';
129 }
130
131 function post_row_actions( $actions, $post ) {
132 //if ( $post->post_type === 'post' ) {
133 $actions['ai_titles'] = '<a class="mwai-link-title" href="#" data-id="' .
134 $post->ID . '" data-title="' . $post->post_title . '">
135 ' . MWAI_IMG_WAND_HTML_XS . ' Title</a>';
136 $actions['ai_excerpts'] = '<a class="mwai-link-excerpt" href="#" data-id="' .
137 $post->ID . '" data-title="' . $post->post_title . '">
138 ' . MWAI_IMG_WAND_HTML_XS . ' Excerpt</a>';
139 //}
140 return $actions;
141 }
142
143 function admin_footer() {
144 echo '<div id="mwai-admin-postsList"></div>';
145 }
146
147 function admin_enqueue_scripts() {
148 $physical_file = MWAI_PATH . '/app/index.js';
149 $cache_buster = file_exists( $physical_file ) ? filemtime( $physical_file ) : MWAI_VERSION;
150 wp_register_script( 'mwai-vendor', MWAI_URL . 'app/vendor.js',
151 ['wp-element', 'wp-i18n'], $cache_buster
152 );
153 wp_register_script( 'mwai', MWAI_URL . 'app/index.js',
154 ['mwai-vendor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-edit-post',
155 'wp-editor', 'wp-element', 'wp-i18n', 'wp-plugins'], $cache_buster
156 );
157 wp_enqueue_script( 'mwai' );
158
159 // The MD5 of the translation file built by WP uses app/i18n.js instead of app/index.js
160 add_filter( 'load_script_translation_file', function( $file, $handle, $domain ) {
161 if ( $domain !== 'ai-engine' ) { return $file; }
162 $file = str_replace( md5( 'app/index.js' ), md5( 'app/i18n.js' ), $file );
163 return $file;
164 }, 10, 3 );
165
166 wp_set_script_translations( 'mwai', 'ai-engine' );
167 wp_localize_script( 'mwai', 'mwai', [
168 'api_url' => rest_url( 'ai-engine/v1' ),
169 'rest_url' => rest_url(),
170 'plugin_url' => MWAI_URL,
171 'prefix' => MWAI_PREFIX,
172 'domain' => MWAI_DOMAIN,
173 'is_pro' => class_exists( 'MeowPro_MWAI_Core' ),
174 'is_registered' => !!$this->is_registered(),
175 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
176 'session' => $this->core->get_session_id(),
177 'options' => $this->core->get_all_options(),
178 'pricing' => MWAI_OPENAI_MODELS,
179 ] );
180 }
181
182 function is_registered() {
183 return apply_filters( MWAI_PREFIX . '_meowapps_is_registered', false, MWAI_PREFIX );
184 }
185
186 function app_menu() {
187 add_submenu_page( 'meowapps-main-menu', 'AI Engine', 'AI Engine', 'manage_options',
188 'mwai_settings', array( $this, 'admin_settings' ) );
189 }
190
191 function admin_settings() {
192 echo '<div id="mwai-admin-settings"></div>';
193 }
194 }
195
196 ?>