HEX
Server: Apache
System: Linux srv-plesk28.ps.kz 5.14.0-284.18.1.el9_2.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jun 29 17:06:27 EDT 2023 x86_64
User: greencl1 (10085)
PHP: 8.1.33
Disabled: apache_setenv,dl,eval,exec,openlog,passthru,pcntl_exec,pcntl_fork,popen,posix_getpwuid,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,socket_create,socket_create_listen,socket_create_pair,syslog,system,socket_listen,stream_socket_server
Upload Files
File: /var/www/vhosts/greenclinic.kz/newsite/wp-content/plugins/cyr2lat/assets/js/acf-field-group.js
/* global acf, CyrToLatAcfFieldGroup */

/**
 * ACF support.
 *
 * @param {window.jQuery} $        jQuery.
 * @param {Window}        window   Window.
 * @param {document}      document
 * @package
 */
( function( $, window, document ) {
	'use strict';

	const table = CyrToLatAcfFieldGroup.table;
	const convert = function( str ) {
		$.each(
			table,
			function( k, v ) {
				const regex = new RegExp( k, 'g' );
				str = str.replace( regex, v );
			}
		);
		str = str.replace( /[^\w\d\-_]/g, '' );
		str = str.replace( /_+/g, '_' );
		str = str.replace( /^_?(.*)$/g, '$1' );
		str = str.replace( /^(.*)_$/g, '$1' );

		return str;
	};

	acf.addFilter(
		'generate_field_object_name',
		function( val ) {
			return convert( val );
		}
	);

	$( document ).on(
		'change',
		'.acf-field .field-name',
		function() {
			if ( $( this ).is( ':focus' ) ) {
				return false;
			}

			const $this = $( this );
			let str = $this.val();
			str = convert( str );

			if ( str !== $this.val() ) {
				$this.val( str );
			}
		}
	);
}( window.jQuery, window, document ) );