acf = $acf; $this->plugin = $plugin; // include compatibility functions require_once ACF_QTRANSLATE_PLUGIN_DIR . 'compatibility/qtranslatex.php'; add_action('admin_head', array($this, 'admin_head')); add_filter('qtranslate_custom_admin_js', array($this, 'qtranslate_custom_admin_js')); add_filter('acf_qtranslate_get_active_language', array($this, 'get_active_language')); add_action('acf/input/admin_enqueue_scripts', array($this, 'admin_enqueue_scripts')); } /** * Add additional styles and scripts to head. */ public function admin_head() { // Hide the language tabs if they shouldn't be displayed $show_language_tabs = $this->plugin->get_plugin_setting('show_language_tabs'); if (!$show_language_tabs) { ?> plugin->get_plugin_setting('translate_standard_field_types'); if ($translate_standard_field_types) { ?> plugin->acf_major_version(); wp_enqueue_script('acf_qtranslatex', plugins_url("/assets/acf_{$version}/qtranslatex.js", ACF_QTRANSLATE_PLUGIN), array('acf_qtranslate_common')); } /** * Use the edit-post script on admin pages. * @return string */ public function qtranslate_custom_admin_js() { global $pagenow, $plugin_page; if ($pagenow === 'admin.php' && isset($plugin_page)) { return 'admin/js/edit-post'; } } /** * Get the active language. */ public function get_active_language($language) { if (empty($_COOKIE['qtrans_edit_language']) === false) { $enabledLanguages = qtrans_getSortedLanguages(); if (in_array($_COOKIE['qtrans_edit_language'], $enabledLanguages)) { $language = $_COOKIE['qtrans_edit_language']; } } return $language; } }