0 && user_can($author_id, 'publish_posts')) { $opt['author_id'] = $author_id; } update_option(AILOQUENCE_CONNECTOR_OPTION, $opt); add_settings_error('ailoquence_msgs', 'ailoquence_saved', __('Settings saved.', 'ailoquence-connector'), 'updated'); if ($discarded > 0) { add_settings_error('ailoquence_msgs', 'ailoquence_ips_discarded', __('Some entries in "Allowed IPs" were ignored because they are not valid IP addresses.', 'ailoquence-connector'), 'warning'); } } if (isset($_POST['ailoquence_regen'])) { check_admin_referer('ailoquence_regen_action'); update_option(AILOQUENCE_CONNECTOR_OPTION, array_merge(ailoquence_get_options(), ailoquence_generate_blog_credentials())); add_settings_error('ailoquence_msgs', 'ailoquence_regen', __('New credentials generated. Paste the new Public Key and Secret into your blog settings in Ailoquence — publishing will not work until you do.', 'ailoquence-connector'), 'warning'); } if (isset($_POST['ailoquence_connect_store'])) { check_admin_referer('ailoquence_connect_store_action'); $result = ailoquence_connect_store(); if (is_wp_error($result)) { add_settings_error('ailoquence_msgs', 'ailoquence_store_error', $result->get_error_message(), 'error'); } else { add_settings_error('ailoquence_msgs', 'ailoquence_store_ok', __('Your store is now connected to Ailoquence.', 'ailoquence-connector'), 'updated'); } } if (isset($_POST['ailoquence_disconnect_store'])) { check_admin_referer('ailoquence_disconnect_store_action'); ailoquence_disconnect_store(); add_settings_error('ailoquence_msgs', 'ailoquence_store_disconnect', __('Store disconnected. The WooCommerce API key used by Ailoquence has been revoked, so Ailoquence can no longer access your products. If you no longer need it, also remove the store from your project in Ailoquence.', 'ailoquence-connector'), 'updated'); } if (isset($_POST['ailoquence_save_newsletter'])) { check_admin_referer('ailoquence_save_newsletter_action'); $result = ailoquence_set_newsletter_enabled(!empty($_POST['ailoquence_newsletter_enabled'])); if (is_wp_error($result)) { add_settings_error('ailoquence_msgs', 'ailoquence_newsletter_error', $result->get_error_message(), 'error'); } else { add_settings_error('ailoquence_msgs', 'ailoquence_newsletter_saved', __('Email alert settings saved.', 'ailoquence-connector'), 'updated'); } } if (isset($_POST['ailoquence_regen_store'])) { check_admin_referer('ailoquence_regen_store_action'); ailoquence_update_store_options(array_merge(ailoquence_get_store_options(), ailoquence_generate_store_credentials())); add_settings_error('ailoquence_msgs', 'ailoquence_regen_store', __('New store credentials generated. Paste them into your store settings in Ailoquence before connecting again.', 'ailoquence-connector'), 'warning'); } } function ailoquence_render_settings_page() { if (!current_user_can('manage_options')) return; $opt = ailoquence_get_options(); $store_opt = ailoquence_ensure_store_credentials(); $wc_active = ailoquence_is_woocommerce_active(); settings_errors('ailoquence_msgs'); ?>