change_string_lang.js
1.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/*jshint devel:true */
/*global jQuery, ajaxurl, get_checked_cbs */
var WPML_String_Translation = WPML_String_Translation || {};
WPML_String_Translation.ChangeLanguage = function () {
"use strict";
var privateData = {};
var init = function () {
jQuery(function () {
privateData.language_select = jQuery('#icl_st_change_lang_selected');
privateData.language_select.on('change', applyChanges);
privateData.spinner = jQuery('.icl-st-change-spinner');
privateData.spinner.detach().insertAfter(privateData.language_select);
});
};
var applyChanges = function () {
var checkBoxValue;
var data;
var i;
var checkboxes;
var strings;
privateData.spinner.addClass('is-active');
strings = [];
checkboxes = get_checked_cbs();
for (i = 0; i < checkboxes.length; i++) {
checkBoxValue = jQuery(checkboxes[i]).val();
strings.push(checkBoxValue);
}
data = {
action: 'wpml_change_string_lang',
wpnonce: wpml_st_change_lang_data.nonce,
strings: strings,
language: privateData.language_select.val()
};
jQuery.ajax({
url: ajaxurl,
type: 'post',
data: data,
dataType: 'json',
success: function (response) {
if (response.success) {
window.location.reload(true);
}
if (response.error) {
privateData.spinner.removeClass( 'is-active' );
alert(response.error);
privateData.apply_button.prop('disabled', false);
}
}
});
};
init();
};
WPML_String_Translation.change_language = new WPML_String_Translation.ChangeLanguage();