$(function () { function langConTab(){ $(".nav_information_items_wrap > li .form-group .form-item.radio_item").css("display","flex"); $(".table-language-list").show(); $("#json-table-img").hide(); $(".content_text").click(function() { $(this).addClass("active"); $("#json-table").show(); $("#json-table-img").hide(); $(".content_image").removeClass("active"); }); $(".content_image").click(function() { $(this).addClass("active"); $("#json-table").hide(); $("#json-table-img").show(); $(".content_text").removeClass("active"); }); $('.change_image').each(function(k,v){ var button = $("#chandgeimage"+k); new AjaxUpload(button, { //action: 'upload-test.php',文件上传服务器端执行的地址 action: '/wp-admin/async-upload.php?action=upload-attachment&_wpnonce='+$("#json-table-img").attr("wpnonce"), name: 'async-upload', onSubmit: function (file, ext) { if (!(ext && /^(jpg|jpeg|JPG|JPEG|png|PNG)$/.test(ext))) { alert('图片格式不正确,请选择 jpg,png 格式的文件!', '系统提示'); return false; } // change button text, when user selects file // layer.msg("上传中"); layer.msg("上传中",{ icon:16, time:-1 }) }, onComplete: function (file, response) { layer.closeAll(); var res = JSON.parse(response); var src = res.data.url; button.attr("src",src); button.parent().find(".change_value").val(src); } }); }); } // tab 切换选项卡 $('#page_tables a').click(function (e) { e.preventDefault() $(this).tab('show') }) new Sortable($(".prisna-wp-translate-seo-test").get(0), { handle: ".language-flag", ghostClass: "blue-background-class", animation: 150 }); // 语言选择充值 $('select[name=language], select[name=path]').change(function () { $('#json-table').html(''); }) let is_sure = false function getJson(t){ let path = $('select[name=path]').val() let language = $('select[name=language]').val() if (!path) { layer.msg('请选择需要校对的页面!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}); return false; } if (!language) { layer.msg('请选择需要校对的语言!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) return false; } let lay_index = layer.load(1, { shade: [0.5,'#000'] }); $.post('/wp-content/plugins/proofreading/api.php?type=get_json', {'path': path, 'language': language,"t":t}, function (result) { layer.close(lay_index); result = JSON.parse(result); if (result['status'] == 1) { is_sure = true let data = result['data']; $('#json-table').html(''); for (let i in data) { var k = 0; if(i == "imgs"){ $('#json-table-img').html(''); console.log(data[i]); for (let src in data[i]) { let ns = data[i][src]; let html = '<tr class="old_string json_img_tr" >' + ' <td class="json_img_td">' + ' <input type="hidden" data-value="'+src+'" class="source" value="'+src+'">' + ' <input type="hidden" class="default_value" value="'+src+'"> ' + ' <img class="src-img" src="'+src+'"></td> ' + ' <td style="text-align: center; vertical-align: middle; width: 50px;"> >> </td>' + ' <td class="json_img_td"><input type="hidden" class="change_value" data-type="imgs" value="'+ns+'"> <img class="src-img change_image" id="chandgeimage'+k+'" src="'+ns+'"> </td> ' + ' </tr>' $('#json-table-img').append(html); k++; } layer.closeAll(); }else if(i == "imgs_js"){ for (let file in data[i]) { let ns = data[i][file]; for (let src in ns) { var newjs = data[i][file][src]; let html = '<tr class="old_string json_img_tr" >' + ' <td class="json_img_td">' + ' <input type="hidden" data-value="'+src+'" class="source" value="'+src+'">' + ' <input type="hidden" class="default_value" value="'+src+'"> ' + ' <img class="src-img" src="'+src+'"></td> ' + ' <td style="text-align: center; vertical-align: middle; width: 50px;"> >> </td>' + ' <td class="json_img_td"><input type="hidden" class="change_value" data-type="imgs_js" value="'+newjs+'"> <img class="src-img change_image" id="chandgeimage'+k+'" src="'+newjs+'"> </td> ' + ' </tr>' $('#json-table-img').append(html); k++; } } layer.closeAll(); }else{ for (let j in data[i]) { let json = data[i][j] if (json != '' || j != '') { var key = $.base64.encode(j); html = '<tr class="old_string"> <td> <textarea class="language-textarea source" data-value=\'' + key+ '\' rows="4" disabled>' + j + '</textarea> </td> <td style="text-align: center; vertical-align: middle; width: 50px;"> >> </td> <td> <textarea class="language-textarea change_value" data-type="texts" rows="4">' + json + '</textarea><textarea class="default_value" rows="4" style="display: none">' + json + '</textarea> </td> </tr>'; $('#json-table').append(html); } } $('.json-box').show(); layer.closeAll(); } } langConTab() } else { layer.msg(result.msg, {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) } }) } var path = $("select[name=path]").val() var language = $("select[name=language]").val() if(path && language){ getJson() } // 获取需要校对的语言 $('.getJson').on('click', function () { var t = $(this).attr("data-t"); getJson(t); }) // 添加校对文本 $('#addText').unbind('click').bind('click', function () { if (is_sure === false) { layer.msg('请先确定校对语言和页面!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}); return false; } let html = '<tr class="new-string"> <td> <textarea class="language-textarea new_string_key" rows="4"></textarea> </td> <td style="text-align: center; vertical-align: middle; width: 50px;"> >> </td> <td> <textarea class="language-textarea new_string_value" rows="4"></textarea></tr>'; $('#json-table').prepend(html); }) // 修改按钮提交 $('.change-button').unbind('click').bind('click', function () { let chang_data = []; let new_data = []; let status = $(this).attr('data-type'); // 组合修改的数据 $('#json-table .change_value').each(function () { let old_string = $(this).parents('tr').find('.default_value').val(); let new_string = $(this).val(); let type = $(this).attr("data-type"); let source_string = $(this).parents('tr').find('.source').attr('data-value'); if (old_string != new_string) { chang_data.push({ 'source': source_string, 'new_string': new_string, 'type':type }) } }) // 组合修改的数据 $('#json-table-img .change_value').each(function () { let old_string = $(this).parents('tr').find('.default_value').val(); let new_string = $(this).val(); let type = $(this).attr("data-type"); let source_string = $(this).parents('tr').find('.source').attr('data-value'); if (old_string != new_string) { chang_data.push({ 'source': source_string, 'new_string': new_string, 'type':type }) } }) // 组合新添加的数据 $('#json-table .new-string').each(function () { let key = $(this).find('.new_string_key').val() let value = $(this).find('.new_string_value').val() if (key !== null && key !== undefined && key !== '' && value !== null && value !== undefined && value !== '') { new_data.push({ key: key, value: value }) } }) if (chang_data.length > 0 || new_data.length > 0) { let path = $('select[name=path]').val() let language = $('select[name=language]').val() if (!path) { layer.msg('请选择需要校对的页面!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}); return false; } if (!language) { layer.msg('请选择需要校对的语言!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) return false; } let ajax_data = { 'status' : status, 'path' : path, 'language' : language, 'language_data': { change_data: chang_data, new_data: new_data } }; let lay_index = layer.load(1, { shade: [0.5,'#000'] }); var iner_index ; $.post('/wp-content/plugins/proofreading/api.php?type=proofreading', ajax_data, function (result) { result = JSON.parse(result); if (parseInt(result.status) === 1) { layer.close(lay_index); layer.msg(result.msg, {icon: 1, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}, function () { getJson(); language = language.toLowerCase(); let domain_host = window.location.host let location_url = '/wp-content/cache/all/' + language + path if (domain_host.indexOf('quanqiusou.cn') === -1 && domain_host.indexOf('goodao.net') === -1) { location_url = '/' + language + path } if (parseInt(status) === 2) { $.post('/wp-content/plugins/proofreading/api.php?type=proofreading_success', {'language' : language}) } window.open(location_url); }) }else if(parseInt(result.status) === 2){ iner_index = setInterval(function(){ $.get('/wp-content/plugins/proofreading/api.php?type=get_num', {'language' : language},function(res){ console.log(res); if(res <1){ clearInterval(iner_index); layer.close(lay_index); layer.msg(result.msg, {icon: 1, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}, function () { getJson(); language = language.toLowerCase(); let domain_host = window.location.host let location_url = '/wp-content/cache/all/' + language + path if (domain_host.indexOf('quanqiusou.cn') === -1 && domain_host.indexOf('goodao.net') === -1) { location_url = '/' + language + path } if (parseInt(status) === 2) { $.post('/wp-content/plugins/proofreading/api.php?type=proofreading_success', {'language' : language}) } window.open(location_url); }) } }); },3000); } else { layer.close(lay_index); layer.msg(result.msg, {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) } }) } else { layer.msg('没有做任何修改!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}); return false; } }) // 语言选择页面 js // 未封装 // 全选、反选 let all_box = $('input.check-all'); let one_box = $("input.check-language"); all_box.on('click', function (event) { if($(this).attr('checked')){ $(this).attr('checked',false); one_box.attr({'checked': false}) one_box.prop({'checked': false}) }else{ $(this).attr('checked',true) one_box.attr({'checked': true}) one_box.prop({'checked': true}) } }) // 单个选择 one_box.on('click', function(event) { if($(this).attr('checked')){ $(this).attr('checked',false); }else{ $(this).attr('checked',true) } is_all_checked() }); function is_all_checked() { let flag = false one_box.each(function(index, val) { if($(val).attr('checked')){ flag = true; }else{ flag = false; return false; } }); if (flag) { all_box.attr('checked', true); all_box.prop('checked', true); }else{ all_box.attr('checked', false); all_box.prop('checked', false); } } $(function () { is_all_checked() }) $(".save-trans").unbind("click").bind("click", function () { let language_all = []; let language_choose = []; let link_type = $('select[name=link_type]').find('option:selected').val() let is_start = $('input.is_start').is(':checked') ? 1 : 2; let is_open_customer_proofreading = $('input.is_open_customer_proofreading').is(':checked') ? 1 : 2; $("input[name=trans_box_choose]:checkbox").each(function () { let value = $(this).parents(".language-flag").attr("data-value"); if (true === $(this).is(":checked")) { language_choose.push(value) } language_all.push(value) }) var domain = $(this).attr("domain"); let data = { domain: $(this).attr("domain"), language_choose: language_choose, link_type: link_type, is_start: is_start, is_open_customer_proofreading: is_open_customer_proofreading } $.get("/wp-content/plugins/proofreading/api.php?type=getlen", {domain:domain}, function (result) { result = JSON.parse(result); if(result.leng == 0){ layer.open({ title: '翻译进度', area: '500px', shadeClose: false, shade: 0.35, skin: 'contanct-class', anim: Math.ceil(Math.random() * 6), btn:false, content: '<div class="layui-progress"><div class="layui-progress-bar" lay-percent="70%"><span class="layui-progress-text">0/'+result.total+'</span></div></div>', success:function(){ } }); $.post("/wp-content/plugins/proofreading/api.php?type=transLanguage", data, function (result) { setTimeout(function(){ $.get("https://"+domain+"/trans/run.php", {domain:domain}, function (result) { console.log(result); }) },3000); setTimeout(function(){ var timer = setInterval(function(){ $.get("/wp-content/plugins/proofreading/api.php?type=getlen", {domain:domain}, function (result) { result = JSON.parse(result); if(result.leng == 0){ clearInterval(timer); $(".layui-progress-bar").css("width",result.prent); $(".layui-progress-text").html("完成"); }else{ $(".layui-progress-bar").css("width",result.prent); $(".layui-progress-text").html(result.page+"/"+result.total); } }) },3000) },2000) }) }else{ layer.open({ title: '翻译进度', area: '500px', shadeClose: false, shade: 0.35, skin: 'contanct-class', anim: Math.ceil(Math.random() * 6), btn:false, content: '<div class="layui-progress"><div class="layui-progress-bar" lay-percent="70%"><span class="layui-progress-text">'+result.page+'/'+result.total+'</span></div></div>', success:function(){ var timer = setInterval(function(){ $.get("/wp-content/plugins/proofreading/api.php?type=getlen", {domain:domain}, function (result) { result = JSON.parse(result); if(result.leng == 0){ clearInterval(timer); $(".layui-progress-bar").css("width",result.prent); $(".layui-progress-text").html("完成"); }else{ $(".layui-progress-bar").css("width",result.prent); $(".layui-progress-text").html(result.page+"/"+result.total); } }) },3000) } }); } }) }) $(".save-language").unbind("click").bind("click", function () { let language_all = []; let language_choose = []; let link_type = $('select[name=link_type]').find('option:selected').val() let is_start = $('input.is_start').is(':checked') ? 1 : 2; let is_open_customer_proofreading = $('input.is_open_customer_proofreading').is(':checked') ? 1 : 2; $("input[name=check_box_choose]:checkbox").each(function () { let value = $(this).parents(".language-flag").attr("data-value"); if (true === $(this).is(":checked")) { language_choose.push(value) } language_all.push(value) }) let data = { language_all: language_all, language_choose: language_choose, link_type: link_type, is_start: is_start, is_open_customer_proofreading: is_open_customer_proofreading } $.post("/wp-content/plugins/proofreading/api.php?type=chooseLanguage", data, function (result) { result = JSON.parse(result); if (parseInt(result.status) === 1) { layer.msg(result.msg, {icon: 1, shade: [0.3, "#393D49"], shadeClose: true, time: 1000}) } else { layer.msg(result.msg, {icon: 5, shade: [0.3, "#393D49"], shadeClose: true, time: 1000}) } }) }) // 输入密码页面样式 $('#confirm').unbind('click').bind('click', function() { let password = $('input[name=password]').val() if (!password || password.length < 6) { layer.msg('请输入至少6位数的密码!', {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) return false; } $.post('/wp-content/plugins/proofreading/api.php?type=changePassword', {password: password}, function (result) { result = JSON.parse(result); if (parseInt(result.status) === 1) { layer.msg(result.msg, {icon: 1, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) } else { layer.msg(result.msg, {icon: 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) } }) }) $("#id_select2_demo1").select2(); $("#id_select2_demo2").select2(); $("#clear-bakfile").click(function(){ let path = $('select[name=path]').val() let language = $('select[name=language]').val() layer.confirm('清空较对缓存后较对文本将不会保留,确认清空较对缓存吗?',{ btn:['确定','取消'], cancel:function(index, layero){ console.log('关闭x号'); } },function () { layer.close(layer.index); $.post('/wp-content/plugins/proofreading/api.php?type=clearPFilebak',{path:path,language:language}, function (result) { result = JSON.parse(result); layer.msg(result.msg, {icon: parseInt(result.status) === 1 ? 1 : 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) }) },function(){ console.log(22); }); }) $('.pages-title-tab > li').unbind('click').bind('click', function () { let id = $(this).attr('id'); var domain = $(this).attr('domain'); let index = $(this).index() if (id !== 'clear-cache') { $(this).addClass('active').siblings('li').removeClass('active') $('.tab-button-list >ul > li').eq(index).addClass('active').siblings('li').removeClass('active') $('.nav_information_items_wrap > li').eq(index).addClass('active').siblings('li').removeClass('active') if(id == "trans"){ } } else { $.post('/wp-content/plugins/proofreading/api.php?type=clearPagesCache', function (result) { result = JSON.parse(result); layer.msg(result.msg, {icon: parseInt(result.status) === 1 ? 1 : 5, shade: [0.3, '#393D49'], shadeClose: true, time: 1000}) }) } }) })