class WPML_ST_DB_Troubleshooting extends WPML_Templates_Factory {
public function add_hooks() {
add_action( 'after_setup_complete_troubleshooting_functions', array( $this, 'show' ), 10, 0 );
add_action( 'admin_enqueue_scripts', array( $this, 'add_required_js' ) );
public function add_required_js() {
'wpml-st-db-troubleshooting',
WPML_ST_URL . '/res/js/troubleshooting.js',
array( 'jquery', 'wp-util', 'jquery-ui-sortable', 'jquery-ui-dialog' )
wp_enqueue_script( 'wpml-st-db-troubleshooting' );
public function get_template() {
return 'st-db-cache-tables.twig';
protected function init_template_base_dir() {
$this->template_paths = array(
WPML_ST_PATH . '/templates/troubleshooting/',
public function get_model() {
'buttonLabel' => __( 'Recreate ST DB cache tables', 'wpml-string-translation' ),
'description' => __( 'Recreate String Translation cache tables when they are missing or are invalid.', 'wpml-string-translation' ),
'successMsg' => esc_js( __( 'Done', 'wpml-string-translation' ) ),
'nonce' => wp_create_nonce( 'wpml-st-upgrade-db-cache-command-nonce' ),