old_searchTool.html 61 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498
  1. <!doctype html>
  2. <html lang="zh">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>afaa</title>
  8. <link rel="stylesheet" type="text/css" href="css/normalize.css"/>
  9. <link rel="stylesheet" href="css/style.css">
  10. <link href="http://cdn.bootcss.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
  11. <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
  12. <link rel="stylesheet" type="text/css" href="css/default.css">
  13. <link href="css/toastr.min.css" rel="stylesheet">
  14. <script src="https://npmcdn.com/tether@1.2.4/dist/js/tether.min.js"></script>
  15. <script src="js/jquery.min.js"></script>
  16. <script src="js/toastr.min.js"></script>
  17. <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
  18. <script src="js/jquery_cookie_min.js"></script>
  19. <script src="js/scripts.js"></script>
  20. <script src="js/jqhttpsdk.js"></script>
  21. <script src="js/jkcor.js"></script>
  22. <script src="js/pages.js"></script>
  23. <script src="js/datachange.js"></script>
  24. <style>
  25. html {
  26. font-family: sans-serif;
  27. line-height: 1.15;
  28. -ms-text-size-adjust: 100%;
  29. -webk_idit-text-size-adjust: 100%;
  30. background-color: #ffffff;
  31. }
  32. td {
  33. white-space: nowrap;
  34. }
  35. #in_button:hover{
  36. background: #000000;
  37. color: #ffffff;
  38. }
  39. body {
  40. font-family :-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  41. }
  42. </style>
  43. </head>
  44. <body>
  45. <div class="clear-backend">
  46. <div class="avatar">
  47. <div>
  48. <a href="javascript:void(0);" target="_blank">
  49. <img src="img/admin.png" alt="">
  50. </a>
  51. </div>
  52. </div>
  53. <!-- tab-menu -->
  54. <div id="zosi" class="menu">
  55. <input type="radio" class="tab-1" name="tab" onclick="location.href='index.html'">
  56. <span>APP</span><i class="fa fa-home"></i>
  57. </div>
  58. <div id="avss" class="menu">
  59. <input type="radio" class="tab-5" name="tab" onclick="location.href='avss_index.html'">
  60. <span>AVSS</span><i class="fa fa-language"></i>
  61. </div>
  62. <div id="zosi_link" class="menu">
  63. <input type="radio" class="tab-6" name="tab" onclick="location.href='zosi_link_index.html'">
  64. <span>Zosi Link</span><i class="fa fa-language"></i>
  65. </div>
  66. <div class="menu">
  67. <input type="radio" class="tab-7" name="tab" onclick="location.href='new_searchTool.html'" >
  68. <span> New Search Tool</span><i class="fa fa-language"></i>
  69. </div>
  70. <div class="menu">
  71. <input type="radio" class="tab-8" name="tab" checked="checked">
  72. <span>Old Search Tool</span><i class="fa fa-language"></i>
  73. </div>
  74. <div class="menu">
  75. <input type="radio" class="tab-2" name="tab" onclick="location.href='langTab.html'">
  76. <span>Lang</span><i class="fa fa-medium"></i>
  77. </div>
  78. <div class="menu">
  79. <input type="radio" class="tab-3" name="tab" onclick="location.href='userTab.html'">
  80. <span>Users</span><i class="fa fa-user"></i>
  81. </div>
  82. <div class="menu">
  83. <input type="radio" class="tab-4" name="tab" onclick="location.href='imgTab.html'">
  84. <span>Azimg</span><i class="fa fa-image"></i>
  85. </div>
  86. <center class="top-bar">
  87. <input id="in_button" type="button" value="reset" style="border: 1px solid #e6cdcd; height: 60px; width: 100px;" onclick="onReset()">
  88. <ul>
  89. <li>
  90. <a href="login.html" title="Log Out">
  91. <i class="fa fa-sign-out"></i>
  92. </a>
  93. </li>
  94. </ul>
  95. </center>
  96. <!-- tab-content -->
  97. <div class="tab-content" style="overflow: auto">
  98. <section class="tab-item-1" style="height: 100%;width: 100%;display: block">
  99. <ul id="myTab" class="nav nav-tabs">
  100. <li id="li1">
  101. <a href="#context" data-toggle="tab">context</a>
  102. </li>
  103. <li id="li2"><a href="#key" data-toggle="tab">key</a></li>
  104. <li id="li3"><a href="#location" data-toggle="tab">location</a></li>
  105. <li id="li4"><a href="#translation" data-toggle="tab">translation</a></li>
  106. </ul>
  107. <div class="tab-pane fade" id="context">
  108. <div class="container-fluid">
  109. <div class="row">
  110. <div id="contextsearchCheckBox" class="col-md-8"></div>
  111. <div class="col-md-4">
  112. <input type="text" class="form-group form-control" id="contextsearchInput"
  113. style="width: 300px;display: inline"/>
  114. <button class="btn btn-danger form-inline" style="margin-bottom: 5px"
  115. id="searchContextAction">搜索
  116. </button>
  117. </div>
  118. </div>
  119. </div>
  120. <div class="container-fluid">
  121. <div class="row">
  122. <!--add-->
  123. <div class="col-md-12">
  124. <table class="table table-bordered table-hover">
  125. <thead id="contextHead"></thead>
  126. <tbody id="contextBody"></tbody>
  127. </table>
  128. </div>
  129. </div>
  130. <div id="contextpagination"></div>
  131. </div>
  132. </div>
  133. <div class="tab-pane fade" id="key">
  134. <div class="container-fluid">
  135. <div class="row">
  136. <div id="keysearchCheckBox" class="col-md-8"></div>
  137. <div class="col-md-4">
  138. <input type="text" class="form-group form-control" id="keysearchInput"
  139. style="width: 300px;display: inline"/>
  140. <button class="btn btn-danger form-inline" style="margin-bottom: 5px"
  141. id='searchKeyAction'>搜索
  142. </button>
  143. </div>
  144. </div>
  145. </div>
  146. <div class="container-fluid">
  147. <div class="row">
  148. <!--add-->
  149. <div class="col-md-12">
  150. <table class="table table-bordered table-hover">
  151. <thead id="keyHead"></thead>
  152. <tbody id="keyBody"></tbody>
  153. </table>
  154. </div>
  155. </div>
  156. <div id="keypagination"></div>
  157. </div>
  158. </div>
  159. <div class="tab-pane fade" id="location">
  160. <div class="container-fluid">
  161. <div class="row">
  162. <div id="locationsearchCheckBox" class="col-md-8"></div>
  163. <div class="col-md-4">
  164. <input type="text" class="form-group form-control" id="locationsearchInput"
  165. style="width: 300px;display: inline"/>
  166. <button class="btn btn-danger form-inline" style="margin-bottom: 5px"
  167. id='searchLocationAction'>搜索
  168. </button>
  169. </div>
  170. </div>
  171. </div>
  172. <div class="container-fluid">
  173. <div class="row">
  174. <!--add-->
  175. <div class="col-md-12">
  176. <table class="table table-bordered table-hover">
  177. <thead id="locationHead"></thead>
  178. <tbody id="locationBody"></tbody>
  179. </table>
  180. </div>
  181. </div>
  182. <div id="locationpagination"></div>
  183. </div>
  184. </div>
  185. <div class="tab-pane fade" id="translation">
  186. <div class="container-fluid">
  187. <div class="row">
  188. <div id="translationsearchCheckBox" class="col-md-8"></div>
  189. <div class="col-md-4">
  190. <input type="text" class="form-group form-control" id="translationsearchInput"
  191. style="width: 300px;display: inline"/>
  192. <button class="btn btn-danger form-inline" style="margin-bottom: 5px"
  193. id='searchTranslationAction'>搜索
  194. </button>
  195. </div>
  196. </div>
  197. </div>
  198. <div class="container-fluid">
  199. <div class="row">
  200. <!--add-->
  201. <div class="col-md-12">
  202. <table class="table table-bordered table-hover">
  203. <thead id="translationHead"></thead>
  204. <tbody id="translationBody"></tbody>
  205. </table>
  206. </div>
  207. </div>
  208. <div id="translationpagination"></div>
  209. </div>
  210. </div>
  211. <!---->
  212. <div class="container-fluid">
  213. <div class="row">
  214. <div class="col-md-12">
  215. <div class="modal fade" id="modal-container-593541" role="dialog" aria-labelledby="myModalLabel"
  216. aria-hidden="true">
  217. <div class="modal-dialog" role="document">
  218. <div class="modal-content">
  219. <div class="modal-header">
  220. <h5 class="modal-title" id="myModalLabel">
  221. EDIT
  222. </h5>
  223. <button type="button" class="close" data-dismiss="modal">
  224. <span aria-hidden="true">×</span>
  225. </button>
  226. </div>
  227. <div class="modal-body">
  228. <div class="form-group" id="edit_model_form">
  229. <!--<label for="InputLangArea">-->
  230. <!--langArea-->
  231. <!--</label>-->
  232. <!--<input type="text" class="form-control" id="InputLangArea"/>-->
  233. </div>
  234. </div>
  235. <div class="modal-footer">
  236. <button type="button" class="btn btn-primary editRowSaveBtn"
  237. onclick="editRow(this);return false;">
  238. Save changes
  239. </button>
  240. <button type="button" class="btn btn-secondary" data-dismiss="modal">
  241. Close
  242. </button>
  243. </div>
  244. </div>
  245. </div>
  246. </div>
  247. </div>
  248. </div>
  249. </div>
  250. <div class="container-fluid">
  251. <div class="row">
  252. <div class="col-md-12">
  253. <div class="modal fade" id="key_Modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  254. <div class="modal-dialog" role="document">
  255. <div class="modal-content">
  256. <div class="modal-header">
  257. <h5 class="modal-title" id="roleTitle">word_key内容增加/修改</h5>
  258. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  259. <span aria-hidden="true">&times;</span>
  260. </button>
  261. </div>
  262. <div class="modal-body">
  263. <div class="form-group">
  264. <label for="name">模块名</label>
  265. <select id ="queryDevice" class="selectpicker" style="width: 70%"></select>
  266. </div>
  267. <div class="form-group">
  268. <label for="name">word_key</label>
  269. <input type="text" class="form-control" id="word_key" name ="word_key"/>
  270. </div>
  271. </div>
  272. <div class="modal-footer" id = "footerbutton">
  273. </div>
  274. </div>
  275. </div>
  276. </div>
  277. </div>
  278. </div>
  279. </div>
  280. <div class="container-fluid">
  281. <div class="row">
  282. <div class="col-md-12">
  283. <div class="modal fade" id="location_Modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  284. <div class="modal-dialog" role="document">
  285. <div class="modal-content">
  286. <div class="modal-header">
  287. <h5 class="modal-title" id="roleTitle">location内容增加/修改</h5>
  288. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  289. <span aria-hidden="true">&times;</span>
  290. </button>
  291. </div>
  292. <div class="modal-body">
  293. <div class="form-group">
  294. <label for="name">word_key</label>
  295. <select id ="locationqueryDevice" class="selectpicker" style="width: 70%"></select>
  296. </div>
  297. <div class="form-group">
  298. <label for="name">filename</label>
  299. <input type="text" class="form-control" id="filename" name ="filename"/>
  300. <label for="name">line</label>
  301. <input type="text" class="form-control" id="line" name ="line"/>
  302. </div>
  303. </div>
  304. <div class="modal-footer" id = "locationfooterbutton">
  305. </div>
  306. </div>
  307. </div>
  308. </div>
  309. </div>
  310. </div>
  311. </div>
  312. <div class="container-fluid">
  313. <div class="row">
  314. <div class="col-md-12">
  315. <div class="modal fade" id="translation_Modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  316. <div class="modal-dialog" role="document">
  317. <div class="modal-content">
  318. <div class="modal-header">
  319. <h5 class="modal-title" id="roleTitle">translation内容增加/修改</h5>
  320. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  321. <span aria-hidden="true">&times;</span>
  322. </button>
  323. </div>
  324. <div class="modal-body">
  325. <div class="form-group">
  326. <label for="name">word_key</label>
  327. <select id ="translationqueryDevice" class="selectpicker" style="width: 70%"></select>
  328. </div>
  329. <div class="form-group" id ="translationinput">
  330. </div>
  331. </div>
  332. <div class="modal-footer" id = "translationfooterbutton">
  333. </div>
  334. </div>
  335. </div>
  336. </div>
  337. </div>
  338. </div>
  339. </div>
  340. </section>
  341. </div>
  342. </div>
  343. <script type="text/javascript">
  344. var orderByupdate = 0
  345. var page = 1
  346. var line = 10
  347. var initData
  348. var IndexFlat = 0
  349. var queryUrl ;
  350. var tagTableHead ;
  351. var tagTableBody ;
  352. let searchKey ;
  353. let searchVal ;
  354. var optionsRadios ;
  355. var searchCheckBox ;
  356. var bodykey ;
  357. var tagpagination;
  358. var searchtype = "1" ;
  359. var project_id = 4 ;
  360. $(function(){
  361. var username = $.cookie("username");
  362. $("li").hide();
  363. if(username =="admin"){
  364. $("li").show();
  365. $("#li1").addClass("active");
  366. $("#context").addClass(" in active");
  367. }else {
  368. $("#li4").show();
  369. $("#li4").addClass("active");
  370. $("#translation").tab("show");
  371. var $tabs = $('#myTab').children( 'li' );
  372. $tabs.removeClass("active");
  373. $tabs.each( function(i, n) {
  374. var $tab = $( this );
  375. if($tab[0].innerText=="translation"){
  376. $tab.addClass("active");
  377. $("#translation").addClass(" in active");
  378. }
  379. });
  380. }
  381. initQueryUrl();
  382. initTagTable();
  383. $("#myTab a").click(function(e){
  384. e.preventDefault();
  385. $(this).tab("show");
  386. initQueryUrl();
  387. initTagTable();
  388. let post_data = {
  389. 'token': $.cookie('access_token'),
  390. 'page': 1,
  391. 'line': line,
  392. 'orderByupdate': orderByupdate,
  393. 'type': searchtype,
  394. 'project_id' : project_id
  395. };
  396. InitIndex(post_data=post_data,is_search = 1);
  397. //IndexTable();
  398. });
  399. })
  400. function initQueryUrl(){
  401. var tabtext = getCurrentTabText();
  402. queryUrl = "searchtool/query_"+tabtext;
  403. }
  404. function initTagTable(){
  405. var tabtext = getCurrentTabText();
  406. $(".tab-pane").hide();
  407. IndexFlat = 0;
  408. tagTableHead = $("#" + tabtext + "Head");
  409. tagTableBody = $("#" + tabtext + "Body");
  410. optionsRadios= tabtext+"optionsRadios";
  411. searchKey = $('input[name="'+optionsRadios+'"]:checked')[0];
  412. searchVal = $("#" + tabtext + "searchInput").val(null);
  413. bodykey = tabtext+"key";
  414. searchCheckBox = $("#" + tabtext + "searchCheckBox");
  415. tagpagination = $("#" + tabtext + "pagination");
  416. $("#" + tabtext + "").show();
  417. }
  418. function getsearch(){
  419. var tabtext = getCurrentTabText();
  420. searchKey = $('input[name="'+optionsRadios+'"]:checked').val();
  421. searchVal = $("#" + tabtext + "searchInput").val();
  422. }
  423. $(function () {
  424. toastr.options = {
  425. "closeButton": true,
  426. "debug": false,
  427. "newestOnTop": false,
  428. "progressBar": true,
  429. "positionClass": "toast-top-right",
  430. "preventDuplicates": false,
  431. "onclick": null,
  432. "showDuration": "300",
  433. "hideDuration": "500",
  434. "timeOut": "5000",
  435. "extendedTimeOut": "1000",
  436. "showEasing": "swing",
  437. "hideEasing": "linear",
  438. "showMethod": "fadeIn",
  439. "hideMethod": "fadeOut"
  440. }
  441. var page = GetUrlParam('page')
  442. if (!page) {
  443. page = 1
  444. }
  445. let post_data = {
  446. 'token': $.cookie('access_token'),
  447. 'page': page,
  448. 'line': line,
  449. 'orderByupdate': orderByupdate,
  450. 'type': searchtype,
  451. 'project_id' : project_id
  452. };
  453. InitIndex(post_data)
  454. });
  455. function orderByUpdateTimeFunc(status) {
  456. if (status === 1) {
  457. orderByupdate = 0
  458. } else {
  459. orderByupdate = 1
  460. }
  461. var page = GetUrlParam('page')
  462. if (!page) {
  463. page = 1
  464. }
  465. let post_data = {
  466. 'token': $.cookie('access_token'),
  467. 'page': page,
  468. 'line': 10,
  469. 'orderByupdate': orderByupdate,
  470. 'type': searchtype,
  471. 'project_id' : project_id
  472. };
  473. InitIndex(post_data)
  474. }
  475. function InitIndex(post_data, is_search = 0) {
  476. $.postJSON(
  477. http_ip_prot + queryUrl, JSON.stringify(post_data),
  478. function (data) {
  479. if (data['code'] == 0) {
  480. // console.log(data['res'])
  481. console.log(data)
  482. addTable(data['res'])
  483. let count_page = Math.ceil(data['res']['count'] / line)
  484. var current_page = GetUrlParam('page');
  485. if(is_search === 1){
  486. current_page = 1;
  487. }
  488. tagpagination.pagination({
  489. pages: count_page, //总页数
  490. // pages: 10000, //总页数
  491. edges: 2,
  492. cssStyle: 'pagination', //按纽大小pagination-lg或写入自定义css
  493. displayedPages: 5, //显示几个
  494. currentPage: current_page,
  495. onPageClick: function (pageNumber, event) {
  496. //点击时调用
  497. // alert(pageNumber);
  498. queryData(pageNumber)
  499. },
  500. onInit: function (getid) {
  501. //刷新时或初始化调用
  502. // alert(getid);
  503. }
  504. });
  505. } else {
  506. window.location.href = "http://" + domain + ":7724/web/login.html";
  507. alert(data['msg'])
  508. }
  509. }
  510. );
  511. $.postJSON(
  512. http_ip_prot + 'user/init', JSON.stringify(post_data),
  513. function (data) {
  514. if (data['code'] == 0) {
  515. console.log('initData__start')
  516. console.log(data)
  517. console.log('initData__end')
  518. initData = data['res']
  519. } else {
  520. window.location.href = "http://" + domain + ":7724/web/login.html";
  521. alert(data['msg'])
  522. }
  523. }
  524. );
  525. }
  526. let la_list
  527. let lw_data
  528. function queryData(page) {
  529. var post_data = {}
  530. getsearch();
  531. if (searchVal) {
  532. post_data = {
  533. 'token': $.cookie('access_token'),
  534. 'page': page,
  535. 'line': 10,
  536. 'orderByupdate': orderByupdate,
  537. 'searchKey': searchKey,
  538. 'searchVal': searchVal,
  539. 'type': searchtype,
  540. 'project_id' : project_id
  541. };
  542. } else {
  543. post_data = {
  544. 'token': $.cookie('access_token'),
  545. 'page': page,
  546. 'line': 10,
  547. 'orderByupdate': orderByupdate,
  548. 'type': searchtype,
  549. 'project_id' : project_id
  550. };
  551. }
  552. $.postJSON(
  553. http_ip_prot + queryUrl, JSON.stringify(post_data),
  554. function (data) {
  555. if (data['code'] == 0) {
  556. // console.log(data['res'])
  557. console.log(data)
  558. addTable(data['res'])
  559. } else {
  560. alert(data['msg'])
  561. }
  562. }
  563. );
  564. }
  565. function addTable(data) {
  566. // body部详细语言
  567. let body_data = data['la_list'];
  568. lw_data = body_data
  569. let search_tab = '' ;
  570. let head_html ;
  571. //头部标签添加
  572. var tabtext = getCurrentTabText();
  573. var headkey = ["位置","行数","来源","翻译"];
  574. var headval = ["location","line","source","translation"];
  575. if(tabtext == "context"){
  576. head_html = '<tr><th width="180px"><a href="javascript:void(0);" onclick="addRow()">add</a></th>';
  577. head_html += ('<th>name</th>')
  578. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="name" checked>name</label></th>'
  579. }
  580. if(tabtext == "key"){
  581. headkey = ["word_key"];
  582. headval = ["word_key"];
  583. head_html = '<tr><td width="180px"><button class="btn btn-primary btn-sm" data-toggle="modal" onclick="saveOrEditKeyFrom()"> add</button></td>'
  584. head_html += ('<th>模块名</th>')
  585. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="bk_name" checked>模块名</label>'
  586. for(var i=0;i<headval.length;i++){
  587. head_html += ('<th>' + headkey[i] + '</th>')
  588. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="' + headval[i] + '">' + headkey[i] + '</label>'
  589. }
  590. }
  591. if(tabtext == "location"){
  592. headkey = ["word_key", "filename", "line"];
  593. headval = ["word_key", "filename", "line"];
  594. head_html = '<tr><td width="180px"><button class="btn btn-primary btn-sm" data-toggle="modal" onclick="saveOrEditLocationFrom()"> add</button></td>'
  595. //head_html += ('<th>模块名</th>')
  596. //search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="bk_name" checked>模块名</label>'
  597. for(var i=0;i<headval.length;i++){
  598. head_html += ('<th>' + headkey[i] + '</th>')
  599. if(i==0){
  600. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="' + headval[i] + '" checked>' + headkey[i] + '</label>'
  601. }else {
  602. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="' + headval[i] + '">' + headkey[i] + '</label>'
  603. }
  604. }
  605. }
  606. if(tabtext == "translation"){
  607. head_data = data['la_list'];
  608. la_list = head_data
  609. // body部详细语言
  610. body_data = data['lw_dict'];
  611. lw_data = body_data
  612. head_html = '<tr><th width="180px"><a href="javascript:void(0);" )"></a></th><th>key</th>';
  613. search_tab = '<label><input type="radio" name='+optionsRadios+' value="key" checked>key</label>'
  614. // = '<tr><th width="180px"><a href="javascript:void(0);" )"></a></th><th>key</th>';
  615. //head_html = '<tr><td width="180px"><button class="btn btn-primary btn-sm" data-toggle="modal" onclick="saveOrEditTranslationFrom()"> add</button></td>'
  616. //search_tab = '<label><input type="radio" name='+optionsRadios+' value="key" checked>key</label>'
  617. //头部标签添加
  618. $.each(head_data.reverse(), function (idx, obj) {
  619. head_html += ('<th>' + obj['lang'] + '</th>')
  620. search_tab += '&nbsp;&nbsp;&nbsp;<label><input type="radio" name='+optionsRadios+' value="'+ obj['lang'] + '">' + obj['lang'] + '</label>'
  621. });
  622. }
  623. if(tabtext != "location"){
  624. head_html += ('<th><a href="javascript:void(0);" onclick="orderByUpdateTimeFunc(' + orderByupdate + ')">udpateTime &nbsp;<i class="fa ' + (orderByupdate == 1 ? 'fa-arrow-up' : 'fa-arrow-down') + '" aria-hidden="true"></i></a></td></tr>');
  625. }
  626. // search_tab += '<td width="180px"><button class="btn-primary btn">搜索</button></td></tr>';
  627. if (IndexFlat == 0) {
  628. searchCheckBox.html(search_tab)
  629. IndexFlat = 1
  630. }
  631. let body_html = '';
  632. console.log('----------------------body加载--------------------------------------------');
  633. $.each(body_data, function (idx, obj) {
  634. if(tabtext == "context"){
  635. let edit_btn = '<a href="javascript:void(0);" title="Edit" onclick="editFunc(this)"><i class="fa fa-edit"></i></a>';
  636. let del_btn = '<a href="javascript:void(0);" title="Delete" onclick="deleteFunc(this)"><i class="fa fa-ban"></i></a>';
  637. body_html += '<tr><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  638. body_html += ('<td >' + obj['name'] + '</td>');
  639. body_html += ('<td style="display:none" >' + obj['id'] + '</td>');
  640. }
  641. if(tabtext == "key"){
  642. let edit_btn = '<a href="javascript:void(0);" title="Edit" onclick="saveOrEditKeyFrom('+idx+')"><i class="fa fa-edit"></i></a>';
  643. let del_btn = '<a href="javascript:void(0);" title="Delete" onclick="deleteKey('+idx+')"><i class="fa fa-ban"></i></a>';
  644. body_html += '<tr><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  645. body_html += ('<td >' + obj['name'] + '</td>');
  646. for(var i=0;i<headval.length;i++){
  647. body_html += ('<td >' + obj[headval[i]] + '</td>');
  648. }
  649. body_html += ('<td style="display:none" >' + obj['id'] + '</td>');
  650. }
  651. if(tabtext == "location"){
  652. let edit_btn = '<a href="javascript:void(0);" title="Edit" onclick="saveOrEditLocationFrom('+idx+')"><i class="fa fa-edit"></i></a>';
  653. let del_btn = '<a href="javascript:void(0);" title="Delete" onclick="deleteKey('+idx+')"><i class="fa fa-ban"></i></a>';
  654. body_html += '<tr><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  655. for(var i=0;i<headval.length;i++){
  656. body_html += ('<td >' + obj[headval[i]] + '</td>');
  657. }
  658. body_html += ('<td style="display:none" >' + obj['id'] + '</td>');
  659. }
  660. if(tabtext == "translation"){
  661. let edit_btn = '<a href="javascript:void(0);" title="Edit" onclick="saveOrEditTranslationFrom('+idx+')"><i class="fa fa-edit"></i></a>';
  662. //let del_btn = '<a href="javascript:void(0);" title="Delete" onclick="deleteTranslation('+idx+')"><i class="fa fa-ban"></i></a>';
  663. let del_btn = "";
  664. // let del_btn = '';
  665. if(obj['status'] == 1){
  666. body_html += '<tr style="background: red; color: white"><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  667. }else if(obj['status'] == 2){
  668. body_html += '<tr style="background: blue; color: white"><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  669. }else{
  670. body_html += '<tr><td>' + edit_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td>';
  671. }
  672. body_html += ('<td id="key">' + obj.word_key + '</td>');
  673. $.each(la_list, function (x, y) {
  674. if (obj[y['lang']]) {
  675. body_html += ('<td>' + obj[y['lang']] + '</td>')
  676. } else {
  677. body_html += ('<td></td>')
  678. }
  679. });
  680. }
  681. if(tabtext != "location"){
  682. let updTime = $.DateChange.UnixToDate(obj['updTime'], true, 8);
  683. body_html += ('<td>' + updTime + '<span class="arrow dsc"></td></tr>');
  684. }
  685. });
  686. tagTableHead.empty().html(head_html);
  687. tagTableBody.empty().html(body_html);
  688. addDelFunc()
  689. }
  690. function addRow() {
  691. let save_btn = '<a href="javascript:void(0);" title="Save" class="save_row"><i class="fa fa-check-circle-o"></i></a>';
  692. let del_btn = '<a href="javascript:void(0);" title="Delete" class="del_row"><i class="fa fa-ban"></i></a>';
  693. let newRow = '<tr><td>' + save_btn + '&nbsp;&nbsp;&nbsp;' + del_btn + '</td><td><input class="form-control" type="text" id="newRow_name"></td>'
  694. newRow += '<td></td></tr>'
  695. tagTableBody.prepend(newRow)
  696. addDelFunc()
  697. addSaveFunc()
  698. }
  699. function saveOrEditKeyFrom(keyid = null) {
  700. let post_data = {
  701. 'token': $.cookie('access_token')
  702. }
  703. post_data['keyid'] = keyid
  704. post_data['type'] = searchtype
  705. $.postJSON(
  706. http_ip_prot + 'searchtool/query_saveOrEditKeyFrom', JSON.stringify(post_data),
  707. function (data) {
  708. if (data['code'] == 0) {
  709. var key_list = data['res']['la_list'];
  710. var context_list = data['res']['lw_dict'];
  711. if (key_list) {
  712. $.each(key_list, function (idx, obj) {
  713. var deviceStr="" ;
  714. for(var i=0; i<context_list.length; i++){
  715. if (obj.bk_id == context_list[i].id ){
  716. deviceStr+='<option value="'+context_list[i].id+'" selected>'+context_list[i].name+'</option>';
  717. }else {
  718. deviceStr+='<option value="'+context_list[i].id+'" >'+context_list[i].name+'</option>';
  719. }
  720. }
  721. $("#queryDevice").html("");
  722. $('#queryDevice').append(deviceStr);
  723. $('#key_Modal').modal('show')
  724. $('#word_key').val(obj.word_key);
  725. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitKey('+idx+');">保存</button>';
  726. $("#footerbutton").html("");
  727. $('#footerbutton').append(buttonstr);
  728. $('#key_Modal').modal('show')
  729. })
  730. }else {
  731. var deviceStr="" ;
  732. for(var i=0; i<context_list.length; i++){
  733. deviceStr+='<option value="'+context_list[i].id+'" >'+context_list[i].name+'</option>';
  734. }
  735. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitKey();">保存</button>';
  736. $("#footerbutton").html("");
  737. $('#footerbutton').append(buttonstr);
  738. $("#queryDevice").html("");
  739. $('#queryDevice').append(deviceStr);
  740. $('#key_Modal').modal('show')
  741. }
  742. } else {
  743. alert(data['msg'])
  744. }
  745. }
  746. )
  747. }
  748. function saveOrEditLocationFrom(locationid = null) {
  749. let post_data = {
  750. 'token': $.cookie('access_token')
  751. }
  752. post_data['project_id'] = project_id
  753. post_data['type'] = searchtype
  754. post_data['locationid'] = locationid
  755. $.postJSON(
  756. http_ip_prot + 'searchtool/query_saveOrEditLocationFrom', JSON.stringify(post_data),
  757. function (data) {
  758. if (data['code'] == 0) {
  759. var location_list = data['res']['la_list'];
  760. var key_list = data['res']['lw_dict'];
  761. if (location_list) {
  762. $.each(location_list, function (idx, obj) {
  763. var deviceStr="" ;
  764. for(var i=0; i<key_list.length; i++){
  765. if (obj.lk_id == key_list[i].id ){
  766. deviceStr+='<option value="'+key_list[i].id+'" selected>'+key_list[i].word_key+'</option>';
  767. }else {
  768. deviceStr+='<option value="'+key_list[i].id+'" >'+key_list[i].word_key+'</option>';
  769. }
  770. }
  771. $("#locationqueryDevice").html("");
  772. $('#locationqueryDevice').append(deviceStr);
  773. $('#location_Modal').modal('show')
  774. $('#filename').val(obj.filename);
  775. $('#line').val(obj.line);
  776. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitLocation('+idx+');">保存</button>';
  777. $("#locationfooterbutton").html("");
  778. $('#locationfooterbutton').append(buttonstr);
  779. $('#location_Modal').modal('show')
  780. })
  781. }else {
  782. var deviceStr="" ;
  783. for(var i=0; i<key_list.length; i++){
  784. deviceStr+='<option value="'+key_list[i].id+'" >'+key_list[i].word_key+'</option>';
  785. }
  786. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitLocation();">保存</button>';
  787. $("#locationfooterbutton").html("");
  788. $('#locationfooterbutton').append(buttonstr);
  789. $("#locationqueryDevice").html("");
  790. $('#locationqueryDevice').append(deviceStr);
  791. $('#location_Modal').modal('show')
  792. }
  793. } else {
  794. alert(data['msg'])
  795. }
  796. }
  797. )
  798. }
  799. function saveOrEditTranslationFrom(valueid = null) {
  800. let post_data = {
  801. 'token': $.cookie('access_token'),
  802. 'page': page,
  803. 'line': line,
  804. 'orderByupdate': orderByupdate,
  805. 'type': searchtype,
  806. 'project_id' : project_id,
  807. 'valueid' : valueid
  808. }
  809. $.postJSON(
  810. http_ip_prot + 'searchtool/query_saveOrEditTranslationFrom', JSON.stringify(post_data),
  811. function (data) {
  812. if (data['code'] == 0) {
  813. var value_list = data['res']['la_list'];
  814. var lw_dict = data['res']['lw_dict'];
  815. var key_list = data['res']['lk_dict'];
  816. if (value_list) {
  817. $.each(value_list, function (idx, obj) {
  818. var deviceStr="" ;
  819. for(var i=0; i<key_list.length; i++){
  820. if (valueid == key_list[i].id ){
  821. deviceStr+='<option value="'+key_list[i].id+'" selected>'+key_list[i].word_key+'</option>';
  822. }else {
  823. //deviceStr+='<option value="'+key_list[i].id+'" >'+key_list[i].word_key+'</option>';
  824. }
  825. }
  826. html_per = ""
  827. $.each(value_list, function (idx, obj) {
  828. let lang_perm_ls = initData['lang_perm_ls']
  829. let check_perm_flag = $.inArray(obj['lang'], lang_perm_ls)
  830. if (check_perm_flag >= 0) {
  831. var inputAttr = ''
  832. } else {
  833. var inputAttr = 'disabled="disabled"'
  834. }
  835. //console.log(obj);
  836. try {
  837. html_per += ('<label for="InputLangArea">' + obj['lang'] + ':</label>' +
  838. '<textarea type="text" ' + inputAttr + ' class="form-control disabled" name="'+obj['id']+'" lang="' + obj['lang'] + '">' + (lw_dict[valueid][obj['lang']] ? lw_dict[valueid][obj['lang']] : '') + '</textarea>')
  839. }catch {
  840. html_per += ('<label for="InputLangArea">' + obj['lang'] + ':</label>' +
  841. '<textarea type="text" ' + inputAttr + ' class="form-control disabled" name="'+obj['id']+'" lang="' + obj['lang'] + '"></textarea>')
  842. }
  843. });
  844. $('#translationinput').html("")
  845. $('#translationinput').append(html_per)
  846. $("#translationqueryDevice").html("");
  847. $('#translationqueryDevice').append(deviceStr);
  848. $('#translation_Modal').modal('show')
  849. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitTranslation('+idx+');">保存</button>';
  850. $("#translationfooterbutton").html("");
  851. $('#translationfooterbutton').append(buttonstr);
  852. $('#translation_Modal').modal('show')
  853. })
  854. }else {
  855. var deviceStr="" ;
  856. for(var i=0; i<key_list.length; i++){
  857. if (valueid == key_list[i].id ){
  858. deviceStr+='<option value="'+key_list[i].id+'" selected>'+key_list[i].word_key+'</option>';
  859. }else {
  860. deviceStr+='<option value="'+key_list[i].id+'" >'+key_list[i].word_key+'</option>';
  861. }
  862. }
  863. html_per = ""
  864. $.each(la_list, function (idx, obj) {
  865. let lang_perm_ls = initData['lang_perm_ls']
  866. let check_perm_flag = $.inArray(obj['lang'], lang_perm_ls)
  867. if (check_perm_flag >= 0) {
  868. var inputAttr = ''
  869. } else {
  870. var inputAttr = 'disabled="disabled"'
  871. }
  872. //console.log(obj);
  873. html_per += ('<label for="InputLangArea">' + obj['lang'] + ':</label>' +
  874. '<textarea type="text" ' + inputAttr + ' class="form-control disabled" name = "'+obj['id']+'" lang="' + obj['lang'] + '"></textarea>')
  875. //html_per += ('<label for="InputLangArea">' + obj['lang'] + ':</label>' +
  876. // '<input type="text" ' + inputAttr + ' class="form-control disabled" lang="' + obj['lang'] + '" value="' + (lw_data[langKey][obj['lang']] ? lw_data[langKey][obj['lang']] : '') + '"/>')
  877. });
  878. $('#translationinput').html("")
  879. $('#translationinput').append(html_per)
  880. var buttonstr = '<button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" onclick="saveOrExitTranslation();">保存</button>';
  881. $("#translationfooterbutton").html("");
  882. $('#translationfooterbutton').append(buttonstr);
  883. $("#translationqueryDevice").html("");
  884. $('#translationqueryDevice').append(deviceStr);
  885. $('#translation_Modal').modal('show')
  886. }
  887. } else {
  888. alert(data['msg'])
  889. }
  890. }
  891. )
  892. }
  893. function addDelFunc() {
  894. $(".del_row").bind("click", function () {
  895. let trRow = $(this).parent().parent()
  896. trRow.remove()
  897. });
  898. }
  899. function addSaveFunc() {
  900. $(".save_row").bind("click", function () {
  901. let post_data = {
  902. 'token': $.cookie('access_token')
  903. }
  904. trRow = $(this)
  905. post_data['name'] = $('#newRow_name').val()
  906. post_data['type'] = searchtype
  907. console.log(post_data)
  908. $.postJSON(
  909. http_ip_prot + 'searchtool/add', JSON.stringify(post_data),
  910. function (data) {
  911. if (data['code'] == 0) {
  912. // console.log(data['res'])
  913. window.location.reload();
  914. console.log(data)
  915. } else {
  916. alert(data['msg'])
  917. }
  918. }
  919. )
  920. })
  921. }
  922. function saveOrExitKey(keyid = null) {
  923. var selectedvar = $('#queryDevice').find('option:selected').val();
  924. var id =keyid;
  925. let post_data = {
  926. 'token': $.cookie('access_token')
  927. }
  928. post_data['bk_id'] = selectedvar
  929. post_data['word_key'] = $('#word_key').val()
  930. post_data['type'] = searchtype
  931. post_data['id'] = id
  932. post_data['project_id'] = project_id
  933. console.log(post_data)
  934. $.postJSON(
  935. http_ip_prot + 'searchtool/saveOrExitKey', JSON.stringify(post_data),
  936. function (data) {
  937. if (data['code'] == 0) {
  938. // console.log(data['res'])
  939. let post_data = {
  940. 'token': $.cookie('access_token'),
  941. 'page': 1,
  942. 'line': line,
  943. 'orderByupdate': orderByupdate,
  944. 'type': searchtype
  945. };
  946. if (id) {
  947. $('#key_Modal').modal('hide')
  948. }
  949. alert(data['msg']);
  950. InitIndex(post_data=post_data,is_search = 1);
  951. } else {
  952. alert(data['msg'])
  953. }
  954. }
  955. )
  956. }
  957. function saveOrExitLocation(locationid = null) {
  958. var selectedvar = $('#locationqueryDevice').find('option:selected').val();
  959. var id =locationid;
  960. let post_data = {
  961. 'token': $.cookie('access_token')
  962. }
  963. post_data['lk_id'] = selectedvar
  964. post_data['filename'] = $('#filename').val()
  965. post_data['line'] = $('#line').val()
  966. post_data['id'] = id
  967. console.log(post_data)
  968. $.postJSON(
  969. http_ip_prot + 'searchtool/saveOrExitLocation', JSON.stringify(post_data),
  970. function (data) {
  971. if (data['code'] == 0) {
  972. // console.log(data['res'])
  973. let post_data = {
  974. 'token': $.cookie('access_token'),
  975. 'page': 1,
  976. 'line': line,
  977. 'orderByupdate': orderByupdate,
  978. 'project_id' : project_id,
  979. 'type' : searchtype
  980. };
  981. if (id) {
  982. $('#location_Modal').modal('hide')
  983. }
  984. alert(data['msg']);
  985. InitIndex(post_data=post_data,is_search = 1);
  986. } else {
  987. alert(data['msg'])
  988. }
  989. }
  990. )
  991. }
  992. function saveOrExitTranslation(valueid = null) {
  993. var selectedvar = $('#translationqueryDevice').find('option:selected').val();
  994. var id =valueid;
  995. let post_data = {
  996. 'token': $.cookie('access_token')
  997. }
  998. post_data['lk_id'] = selectedvar
  999. post_data['id'] = id
  1000. let post_list = []
  1001. $("#translationinput").find("textarea").each(function(idx,obj){
  1002. post_list.push({'la_id': obj.name, 'val': obj.value})
  1003. });
  1004. post_data['word_arr'] = post_list
  1005. //$("#translationinput textarea").each(function (e) {
  1006. // alert(e.value())
  1007. // })
  1008. $.postJSON(
  1009. http_ip_prot + 'searchtool/saveOrExitTranslation', JSON.stringify(post_data),
  1010. function (data) {
  1011. if (data['code'] == 0) {
  1012. // console.log(data['res'])
  1013. let post_data = {
  1014. 'token': $.cookie('access_token'),
  1015. 'page': 1,
  1016. 'line': line,
  1017. 'orderByupdate': orderByupdate,
  1018. 'project_id' : project_id,
  1019. 'type': searchtype
  1020. };
  1021. if (id) {
  1022. $('#translation_Modal').modal('hide')
  1023. }
  1024. alert(data['msg']);
  1025. InitIndex(post_data=post_data,is_search = 1);
  1026. } else {
  1027. alert(data['msg'])
  1028. }
  1029. }
  1030. )
  1031. }
  1032. // 编辑模态框
  1033. function editFunc($this) {
  1034. var contextname = $($this).parent().parent().children().eq(1).text()
  1035. var contextid = $($this).parent().parent().children().eq(2).text()
  1036. $('#modal-container-593541').modal('show')
  1037. let html_per = '<label for="lang_key_edit">模块名</label><div id="contextid" style="display:none">'+contextid+'</div><input class="form-control" type="text" id="contextname_edit" oldkey="' + contextname + '" value="' + contextname + '"> '
  1038. $('#edit_model_form').html(html_per)
  1039. }
  1040. function deleteFunc($this) {
  1041. var contextid = $($this).parent().parent().children().eq(2).text()
  1042. var r = confirm("Press a button")
  1043. if (r) {
  1044. let post_data = {
  1045. 'token': $.cookie('access_token'),
  1046. 'id': contextid
  1047. }
  1048. console.log(post_data)
  1049. $.postJSON(
  1050. http_ip_prot + 'searchtool/delete', JSON.stringify(post_data),
  1051. function (data) {
  1052. if (data['code'] == 0) {
  1053. // console.log(data['res'])
  1054. console.log(data);
  1055. alert(data['msg']);
  1056. window.location.reload();
  1057. } else {
  1058. alert(data['msg'])
  1059. }
  1060. }
  1061. )
  1062. }
  1063. }
  1064. function deleteKey(keyid = null) {
  1065. var r = confirm("Press a button")
  1066. if (r) {
  1067. let post_data = {
  1068. 'token': $.cookie('access_token'),
  1069. 'id': keyid
  1070. }
  1071. console.log(post_data)
  1072. $.postJSON(
  1073. http_ip_prot + 'searchtool/deleteKey', JSON.stringify(post_data),
  1074. function (data) {
  1075. if (data['code'] == 0) {
  1076. // console.log(data['res'])
  1077. console.log(data);
  1078. alert(data['msg']);
  1079. // console.log(data['res'])
  1080. let post_data = {
  1081. 'token': $.cookie('access_token'),
  1082. 'page': 1,
  1083. 'line': line,
  1084. 'orderByupdate': orderByupdate,
  1085. 'type': searchtype
  1086. };
  1087. InitIndex(post_data=post_data,is_search = 1);
  1088. } else {
  1089. alert(data['msg'])
  1090. }
  1091. }
  1092. )
  1093. }
  1094. }
  1095. function editRow($this) {
  1096. let post_data = {
  1097. 'token': $.cookie('access_token')
  1098. }
  1099. post_data['name'] = $('#contextname_edit').val()
  1100. post_data['type'] = searchtype
  1101. post_data['id'] = $('#contextid').text();
  1102. $.postJSON(
  1103. http_ip_prot + 'searchtool/update', JSON.stringify(post_data),
  1104. function (data) {
  1105. if (data['code'] == 0) {
  1106. // console.log(data['res'])
  1107. console.log(data)
  1108. toastr["success"](data['msg'])
  1109. $('#modal-container-593541').modal('hide')
  1110. IndexTable()
  1111. //window.location.reload();
  1112. } else {
  1113. alert(data['msg'])
  1114. }
  1115. }
  1116. )
  1117. // $('.editRowSaveBtn').bind('click', function () {
  1118. // console.log('adjslkfjsdalkfj')
  1119. // })
  1120. }
  1121. function IndexTable() {
  1122. var page = GetUrlParam('page')
  1123. if (!page) {
  1124. page = 1
  1125. }
  1126. let post_data = {
  1127. 'token': $.cookie('access_token'),
  1128. 'page': page,
  1129. 'line': line,
  1130. 'orderByupdate': orderByupdate,
  1131. 'type': searchtype
  1132. };
  1133. $.postJSON(
  1134. http_ip_prot + queryUrl, JSON.stringify(post_data),
  1135. function (data) {
  1136. if (data['code'] == 0) {
  1137. // console.log(data['res'])
  1138. console.log(data)
  1139. addTable(data['res'])
  1140. let count_page = Math.ceil(data['res']['count'] / line)
  1141. queryData(page)
  1142. } else {
  1143. alert(data['msg'])
  1144. }
  1145. }
  1146. );
  1147. }
  1148. $("#searchContextAction").click(function(e){
  1149. /*var page = GetUrlParam('page')
  1150. if (!page) {
  1151. page = 1
  1152. }*/
  1153. getsearch();
  1154. let page = 1
  1155. console.log('-------------------------------')
  1156. console.log(searchKey)
  1157. console.log(searchVal)
  1158. console.log('-------------------------------')
  1159. let post_data = {}
  1160. if (searchVal && searchKey) {
  1161. post_data = {
  1162. 'token': $.cookie('access_token'),
  1163. 'page': page,
  1164. 'line': 10,
  1165. 'searchKey': searchKey,
  1166. 'searchVal': searchVal,
  1167. 'type': searchtype
  1168. };
  1169. } else {
  1170. post_data = {
  1171. 'token': $.cookie('access_token'),
  1172. 'page': page,
  1173. 'line': 10,
  1174. 'type': searchtype
  1175. };
  1176. }
  1177. InitIndex(post_data, 1)
  1178. })
  1179. $("#searchKeyAction").click(function(e){
  1180. /*var page = GetUrlParam('page')
  1181. if (!page) {
  1182. page = 1
  1183. }*/
  1184. getsearch();
  1185. let page = 1
  1186. console.log('-------------------------------')
  1187. console.log(searchKey)
  1188. console.log(searchVal)
  1189. console.log('-------------------------------')
  1190. let post_data = {}
  1191. if (searchVal && searchKey) {
  1192. post_data = {
  1193. 'token': $.cookie('access_token'),
  1194. 'page': page,
  1195. 'line': 10,
  1196. 'searchKey': searchKey,
  1197. 'searchVal': searchVal,
  1198. 'type': searchtype
  1199. };
  1200. } else {
  1201. post_data = {
  1202. 'token': $.cookie('access_token'),
  1203. 'page': page,
  1204. 'line': 10,
  1205. 'type': searchtype
  1206. };
  1207. }
  1208. InitIndex(post_data, 1)
  1209. })
  1210. $("#searchLocationAction").click(function(e){
  1211. /*var page = GetUrlParam('page')
  1212. if (!page) {
  1213. page = 1
  1214. }*/
  1215. getsearch();
  1216. let page = 1
  1217. console.log('-------------------------------')
  1218. console.log(searchKey)
  1219. console.log(searchVal)
  1220. console.log('-------------------------------')
  1221. let post_data = {}
  1222. if (searchVal && searchKey) {
  1223. post_data = {
  1224. 'token': $.cookie('access_token'),
  1225. 'page': page,
  1226. 'line': 10,
  1227. 'searchKey': searchKey,
  1228. 'searchVal': searchVal,
  1229. 'type': searchtype,
  1230. 'project_id' : project_id
  1231. };
  1232. } else {
  1233. post_data = {
  1234. 'token': $.cookie('access_token'),
  1235. 'page': page,
  1236. 'line': 10,
  1237. 'type': searchtype,
  1238. 'project_id' : project_id
  1239. };
  1240. }
  1241. InitIndex(post_data, 1)
  1242. })
  1243. $("#searchTranslationAction").click(function(e){
  1244. /*var page = GetUrlParam('page')
  1245. if (!page) {
  1246. page = 1
  1247. }*/
  1248. getsearch();
  1249. let page = 1
  1250. console.log('-------------------------------')
  1251. console.log(searchKey)
  1252. console.log(searchVal)
  1253. console.log('-------------------------------')
  1254. let post_data = {}
  1255. if (searchVal && searchKey) {
  1256. post_data = {
  1257. 'token': $.cookie('access_token'),
  1258. 'page': page,
  1259. 'line': 10,
  1260. 'searchKey': searchKey,
  1261. 'searchVal': searchVal,
  1262. 'type': searchtype,
  1263. 'project_id' : project_id
  1264. };
  1265. } else {
  1266. post_data = {
  1267. 'token': $.cookie('access_token'),
  1268. 'page': page,
  1269. 'line': 10,
  1270. 'type': searchtype,
  1271. 'project_id' : project_id
  1272. };
  1273. }
  1274. InitIndex(post_data, 1)
  1275. })
  1276. function onReset() {
  1277. let role = $.cookie('role');
  1278. if(role == 1){
  1279. if(!confirm("如果你重置了语言状态,别的翻译者将无法查看到语言的相应状态!")){
  1280. return;
  1281. }
  1282. }
  1283. let post_data = {}
  1284. var word_key = '';
  1285. let table = tagTableBody.find('tr').each(function () {
  1286. var value = $(this).find('td:eq(1)').text();
  1287. word_key += value;
  1288. word_key += ',';
  1289. })
  1290. word_key = word_key.substr(0, word_key.length - 1);
  1291. post_data['word_key'] = word_key;
  1292. post_data['token'] = $.cookie('access_token');
  1293. $.postJSON(
  1294. http_ip_prot + 'langWord/reset', JSON.stringify(post_data),
  1295. function (data) {
  1296. if (data['code'] == 0) {
  1297. // console.log(data['res'])
  1298. console.log(data)
  1299. toastr["success"](data['msg'])
  1300. IndexTable()
  1301. //window.location.reload();
  1302. } else {
  1303. toastr["error"](data['msg'])
  1304. }
  1305. }
  1306. )
  1307. }
  1308. function getCurrentTabText(){
  1309. var $tabs = $('#myTab').children( 'li' );
  1310. var text;
  1311. $tabs.each( function() {
  1312. var $tab = $( this );
  1313. if($tab.hasClass('active')){
  1314. text = $tab[0].innerText;
  1315. return false;
  1316. }
  1317. } );
  1318. return text;
  1319. }
  1320. /*function keyclose(){
  1321. $('#word_key').val(null);
  1322. $("#queryDevice").html("");
  1323. $('#key_Modal').modal('hide')
  1324. }*/
  1325. $('#key_Modal').on('hide.bs.modal', function () {
  1326. $('#word_key').val(null);
  1327. $("#queryDevice").html("");
  1328. });
  1329. $('#location_Modal').on('hide.bs.modal', function () {
  1330. $('#filename').val(null);
  1331. $('#line').val(null);
  1332. $("#locationqueryDevice").html("");
  1333. });
  1334. </script>
  1335. </body>
  1336. </html>