mail.js 47 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438
  1. function ShowJobs(id, myids) {
  2. var doc = document.getElementById("jobs_block");
  3. document.form3.new_job_accid.value = id;
  4. document.form3.job_ids.value = myids;
  5. if (doc.style.display == 'block') {
  6. doc.style.display = 'none'; // hide
  7. }
  8. else {
  9. doc.style.display = 'block'; // show
  10. }
  11. }
  12. function SelectAlg(selnum)
  13. {
  14. var deselobj = document.getElementById('algsel');
  15. var val = deselobj.name;
  16. deselobj.name = selnum;
  17. var selobj = document.getElementById("alg"+selnum);
  18. deselobj = document.getElementById("alg"+val);
  19. deselobj.className = 'round deepskyblue';
  20. selobj.className = 'round red';
  21. //alert("desel: "+val+" sel "+selnum);
  22. taskcont =document.getElementById('taskcont'+val);
  23. if (taskcont.style.display === 'block') {
  24. taskcont.style.display = 'none'; // hide
  25. }
  26. else {
  27. taskcont.style.display = 'block'; // hide
  28. }
  29. taskcont =document.getElementById('taskcont'+selnum);
  30. if (taskcont.style.display === 'block') {
  31. taskcont.style.display = 'none'; // hide
  32. }
  33. else {
  34. taskcont.style.display = 'block'; // hide
  35. }
  36. }
  37. function ShowAnalytics(staff_id, tt_id) {
  38. var doc = document.getElementById(staff_id+"_"+tt_id);
  39. // document.form3.new_job_accid.value = id;
  40. // document.form3.job_ids.value = myids;
  41. if (doc.style.display == 'block') {
  42. doc.style.display = 'none'; // hide
  43. }
  44. else {
  45. doc.style.display = 'block'; // show
  46. }
  47. }
  48. function ShowTaskTypes(job_id, types) {
  49. var doc = document.getElementById("tasks_block");
  50. document.form3.new_task_jobid.value = job_id;
  51. document.form3.tasktypes.value = types;
  52. if (doc.style.display == 'block') {
  53. doc.style.display = 'none'; // hide
  54. }
  55. else {
  56. doc.style.display = 'block'; // show
  57. }
  58. }
  59. function ChangeCompany()
  60. {
  61. var client = document.form1.companies[document.form1.companies.selectedIndex].value;
  62. var active = document.form1.active.value;
  63. location.href="index.php?act=companies&companyID="+client+"&active="+active;
  64. }
  65. function ChangeTaskType(id, taskvalue, index, typeid)
  66. {
  67. if (sure(typeid, "Изменить тип задачи "))
  68. {
  69. location.href="index.php?act=jobs&new=5&newtask_jobid="+id+"&taskvalue="+taskvalue+"&index="+index+"&oldtype="+typeid;
  70. return true;
  71. }
  72. return false;
  73. }
  74. function addNewWork() {
  75. console.log('sdfsdfsdf');
  76. location.href="index.php?act=global&addwork=5";
  77. }
  78. function DelTasks(id)
  79. {
  80. if (sure(id, 'Удалить задачи сотрудника '))
  81. {
  82. //alert("Удаление!")
  83. location.href="index.php?act=staff&new=5&del_id="+id;
  84. }
  85. }
  86. function DelJob(id)
  87. {
  88. if (sure(id, ''))
  89. {
  90. //alert("Удаление!")
  91. location.href="index.php?act=jobs&new=3&del_id="+id;
  92. }
  93. }
  94. function FindStaff(id)
  95. {
  96. location.href="index.php?act=tasks&new=2&task_id="+id;
  97. }
  98. function GetScroll() {
  99. var htmlsc = document.documentElement.scrollTop;
  100. var bodysc = document.body.scrollTop;
  101. if (htmlsc == 0)
  102. htmlsc = bodysc;
  103. return htmlsc;
  104. }
  105. function SortElements(type, act)
  106. {
  107. location.href="index.php?act="+act+"&sort="+type+"&scroll="+GetScroll();
  108. //alert ('htmlsc '+htmlsc );
  109. }
  110. function SortTasks(type)
  111. {
  112. location.href="index.php?act=tasks&sort="+type+"&scroll="+GetScroll();
  113. //alert ('htmlsc '+htmlsc );
  114. }
  115. function SortProjects(type)
  116. {
  117. location.href="index.php?act=projects&sort="+type+"&scroll="+GetScroll();
  118. //alert ('htmlsc '+htmlsc );
  119. }
  120. function SelectElement(id, act)
  121. {
  122. location.href="index.php?act="+act+"&activeid="+id+"&scroll="+GetScroll();
  123. }
  124. function SelectTask(id)
  125. {
  126. location.href="index.php?act=tasks&activeid="+id+"&scroll="+GetScroll();
  127. }
  128. function SelectProjectType(id)
  129. {
  130. // alert("SelectProject assignClicked "+assignClicked);
  131. if (!assignClicked)
  132. location.href="index.php?act=project_types&activeid="+id+"&scroll="+GetScroll();
  133. // else
  134. //alert("assignClicked!!");
  135. }
  136. function SelectProject(id)
  137. {
  138. // alert("SelectProject assignClicked "+assignClicked);
  139. var doc = document.getElementById("project_limit");
  140. if (!assignClicked)
  141. location.href="index.php?act=projects&activeid="+id+"&scroll="+GetScroll()+"&project_limit="+doc.value;
  142. // else
  143. //alert("assignClicked!!");
  144. }
  145. function Revoke(id)
  146. {
  147. if (sure(id, 'Отозвать задачи аккаунта '))
  148. {
  149. //alert("Удаление!")
  150. //location.href="index.php?act=staff&new=6&del_id="+id;
  151. location.href="index.php?act=tasks&new=6&task_id="+id;
  152. }
  153. }
  154. function CheckSubtasks(form) {
  155. //alert("ChecSubtasks! st1 "+form.subtask1.value);
  156. if (form.jobname.value == '')
  157. {
  158. alert("Заполните имя!");
  159. return false;
  160. }
  161. var subs = [ form.subtask1.value, form.subtask2.value, form.subtask3.value, form.subtask4.value, form.subtask5.value ];
  162. var i;
  163. for (i = 0; i < subs.length; i++) {
  164. if (parseInt(subs[i])>0)
  165. return true;
  166. }
  167. alert("Список задач пуст!!!")
  168. return false;
  169. }
  170. function DelInputData(id) //проект для фамилии
  171. {
  172. if (sure(id, ''))
  173. {
  174. //alert("Удаление!")
  175. location.href="index.php?act=input_data&new=3&del_id="+id;
  176. }
  177. }
  178. function DelProj(id)
  179. {
  180. assignClicked = true;
  181. if (sure(id, 'Удалить проект и задачи '))
  182. {
  183. //alert("Удаление!")
  184. location.href="index.php?act=projects&new=3&del_id="+id;
  185. }
  186. }
  187. function DelProjType(id)
  188. {
  189. assignClicked = true;
  190. if (sure(id, 'Удалить тип проекта, созданные по нему проекты и задачи '))
  191. {
  192. //alert("Удаление!")
  193. location.href="index.php?act=project_types&new=3&del_id="+id;
  194. }
  195. }
  196. function closeIt() {
  197. close();
  198. }
  199. function delpic(id)
  200. {
  201. if (sure(id, ''))
  202. {
  203. //alert("Удаление!")
  204. location.href="index.php?act=tasks&new=9&path="+id;
  205. }
  206. }
  207. function openaudio(path)
  208. {
  209. //alert("openpic");
  210. var msgWindow=window.open(path, "displayWindow",'width=250,height=50,screenX=100');
  211. }
  212. function openvideo(path)
  213. {
  214. //alert("openpic");
  215. var msgWindow=window.open(path, "displayWindow",'width=850,height=450,screenX=100');
  216. }
  217. function openpic(path)
  218. {
  219. //alert("openpic");
  220. var h = 1600,
  221. w = 1200;
  222. var msgWindow=window.open("pic.php?path="+path,"displayWindow",'scrollbars=1,height='+Math.min(h, screen.availHeight-100)+',width='+Math.min(w, screen.availWidth-100)+',left='+Math.max(0, (screen.availWidth - w)/2)+',top='+Math.max(0, (screen.availHeight - h)/2));
  223. }
  224. function DelTask(id)
  225. {
  226. if (sure(id, ''))
  227. {
  228. //alert("Удаление!")
  229. location.href="index.php?act=tasks&new=3&task_id="+id;
  230. }
  231. }
  232. function ReopenTask(id)
  233. {
  234. if (sure(id, 'Открыть заново?'))
  235. {
  236. //alert("Удаление!")
  237. location.href="index.php?act=tasks&new=8&tid="+id;
  238. }
  239. }
  240. function ClearTaskCont()
  241. {
  242. var tc2 = document.getElementById("taskcont2");
  243. var tc3 = document.getElementById("taskcont3");
  244. var tc4 = document.getElementById("taskcont4");
  245. tc2.innerHTML = "";
  246. tc3.innerHTML = "";
  247. tc4.innerHTML = "";
  248. }
  249. function AddSelect(val, max)
  250. {
  251. if (val != "") {
  252. var addel = document.getElementById("selectstring");
  253. var selobjnum = '';
  254. var selobj = document.getElementById('algsel');
  255. //alert("selobj "+selobj);
  256. if (selobj != null)
  257. selobjnum = selobj.name;
  258. //alert("selobjnum "+selobjnum);
  259. var parentElem = document.getElementById("taskcont"+selobjnum);
  260. //var parentnum = parentElem.childElementCount;
  261. var children = parentElem.childNodes;
  262. var blank = 0;
  263. var selects = 0;
  264. console.log(children);
  265. for (var i = 0; i < children.length; ++i) {
  266. // сделать что-то с каждым внутренним элементом через children[i]
  267. // ЗАМЕТКА: Список является ссылкой, Добавление или удаление дочерних элементов изменит список
  268. if (children[i].tagName == "SELECT" && children[i].name != 'alg') {
  269. var e = children[i];
  270. selects++;
  271. if ( e.options[e.selectedIndex].text == "")
  272. blank++;
  273. //alert(children[i].tagName);
  274. }
  275. }
  276. // alert ("selects "+selects);
  277. if (blank > 0 || selects >= max) {
  278. //alert ("Использованы все доступные задачи!")
  279. return;
  280. }
  281. var sel = document.createElement('select');
  282. sel.onchange = addel.onchange;
  283. //div.id = "sub"+numselects;
  284. sel.className = "form-input content__main__form__goal";
  285. sel.innerHTML = addel.innerHTML;
  286. sel.name = "subtask"+(selects+1);
  287. parentElem.appendChild(sel);
  288. var br1 = document.createElement('br');
  289. parentElem.appendChild(br1);
  290. var alg = document.getElementById("alg");
  291. var sel_alg = document.createElement('select');
  292. sel_alg.className = "form-input content__main__form__goal";
  293. sel_alg.innerHTML = alg.innerHTML;
  294. sel_alg.style = "margin-left:20px";
  295. sel_alg.name = "alg";
  296. //sel_alg.marginLeft = '20';
  297. parentElem.appendChild(sel_alg);
  298. //var br2 = document.createElement('br');
  299. var br3 = document.createElement('br');
  300. //parentElem.appendChild(br2);
  301. parentElem.appendChild(br3);
  302. }
  303. //location.href="index.php?act=tasktypes&c_action="+val+"&sort=1&new=1&numsel="+numsel;
  304. }
  305. function ChangeAction(val)
  306. {
  307. //alert("val "+val);
  308. location.href="index.php?act=tasktypes&c_action="+val+"&sort=1&new=1";
  309. }
  310. function ConfirmTask(num, id, tid, text)
  311. {
  312. if (sure(id, 'Завершить?'))
  313. {
  314. //alert("Удаление!")
  315. location.href="index.php?act=tasks&new=7&num="+num+"&id="+id+"&tid="+tid+"&confirm_data="+text;
  316. }
  317. }
  318. function DelTaskType(id)
  319. {
  320. if (sure(id, 'Удалить тип и все задачи и подзадачи данного типа: '))
  321. {
  322. //alert("Удаление!")
  323. location.href="index.php?act=tasktypes&new=3&task_id="+id;
  324. }
  325. }
  326. function ShowSubtasks(id) {
  327. if (id===null || !id)
  328. id = '';
  329. //alert('ShowSubtasks '+id);
  330. var doc = document.getElementById("subtasks_block"+id);
  331. if (doc.style.display === 'block') {
  332. //document.getElementById("overlay2").style.display = 'none';
  333. doc.style.display = 'none'; // hide
  334. document.form1.main_task.value = "0";
  335. }
  336. else {
  337. //document.getElementById("overlay2").style.display = 'block';
  338. doc.style.display = 'block'; // hide
  339. document.form1.main_task.value = "1";
  340. }
  341. // var doc1 = ыdocument.getElementById("input_tables");
  342. // if (doc1.style.display == 'none')
  343. // doc1.style.display = 'block'; // hide
  344. // else
  345. // doc1.style.display = 'none'; // hide
  346. //alert("main task "+document.form1.main_task.value);
  347. }
  348. function SubtaskTaskOn()
  349. {
  350. var subs = document.form1.getElementsByClassName("subtaskCheck");
  351. var i;
  352. alert("init "+document.form1.subtasks.value);
  353. for (i = 0; i < subs.length; i++)
  354. {
  355. //alert("checked "+subs[i].checked);
  356. if (subs[i].checked)
  357. {
  358. document.form1.subtasks.value = "1";
  359. alert("true! "+document.form1.subtasks.value);
  360. return;
  361. }
  362. }
  363. }
  364. function CheckVideo() {
  365. var doc = document.getElementById('videoload');
  366. if (doc.value == '') {
  367. alert('Выберите видео-файл для загрузки!');
  368. return false;
  369. }
  370. return true;
  371. }
  372. function CheckXLS() {
  373. var doc = document.getElementById('xlsload');
  374. if (doc.value == '') {
  375. alert('Выберите XLS файл для загрузки!');
  376. return false;
  377. }
  378. return true;
  379. }
  380. function ChangeStaff(id, name)
  381. {
  382. location.href="index.php?act=staff&new=2&staff_id="+id+"&staff_name="+name;
  383. }
  384. function UpdateStaff(id)
  385. {
  386. location.href="index.php?act=staff&new=7&staff_id="+id;
  387. }
  388. function ViewTask(id)
  389. {
  390. //alert("ViewTask");
  391. location.href="index.php?act=input_data&view_id="+id;
  392. }
  393. function NewListElement(objfile)
  394. {
  395. location.href="index.php?act="+objfile+"&new=1";
  396. }
  397. function NewProjectType()
  398. {
  399. location.href="index.php?act=project_types&new=1";
  400. }
  401. function NewProject()
  402. {
  403. location.href="index.php?act=projects&new=1";
  404. }
  405. function NewTask()
  406. {
  407. location.href="index.php?act=tasks&new=4";
  408. }
  409. var assignClicked = false;
  410. function AssignTask(id, action, company_id)
  411. {
  412. assignClicked = true;
  413. var cid = Number(company_id);
  414. //alert("AssignTask assignClicked "+assignClicked);
  415. // var loc = "input_data";
  416. // if (cid == 3)
  417. loc = "projects";
  418. location.href="index.php?act="+loc+"&assign_id="+id+"&assign_act="+action;
  419. }
  420. function genCardsChoose()
  421. {
  422. var client = document.form1.client[document.form1.client.selectedIndex].value;
  423. location.href="index.php?act=generate_cards&client="+client;
  424. }
  425. function Show(id)
  426. {
  427. alert(id);
  428. /*
  429. var doc = document.getElementById(id);
  430. if (doc.style.display=="none" || !doc.style.display)
  431. doc.style.display="block";
  432. else
  433. doc.style.display="none";
  434. */
  435. }
  436. function viewCardsChoose()
  437. {
  438. var client = document.form1.client[document.form1.client.selectedIndex].value;
  439. location.href="index.php?act=view_cards&client="+client;
  440. }
  441. function sure(id, text)
  442. {
  443. if (text=='')
  444. text = "Delete ";
  445. yes = window.confirm(text+id+"?");
  446. if (!yes)
  447. {return false;}
  448. return true;
  449. }
  450. function printit()
  451. {
  452. window.print();
  453. }
  454. function openwin(act, id, name) {
  455. msgWindow=window.open("print.php?act="+act+"&id="+id+"&name="+name,"displayWindow",'width=750,height=600,screenX=100');
  456. }
  457. function close_window(url)
  458. {
  459. var newWindow = window.open('', '_self', ''); //open the current window
  460. window.close(url);
  461. }
  462. var msgWindow;
  463. function openwin2(cdate, cdate2, count) {
  464. //param = document.getElementById("id").value;
  465. //alert(id+" "+cdate);
  466. var Height = 50+count*40;
  467. //alert(Height);
  468. //window.close(msgWindow);
  469. msgWindow=window.open("print_all.php?date="+cdate+"&date2="+cdate2,"displayWindow",'width=900,height='+Height+',screenX=100');
  470. //window.open("print_all.php?date="+cdate+"&date2="+cdate2, "_blank", "toolbar=yes, scrollbars=yes, resizable=yes, top=500, left=500, width=400, height=400");
  471. //window.open("print_all.php?date="+cdate+"&date2="+cdate2, "_blank", "toolbar=yes, scrollbars=yes, resizable=yes, top=500, left=500, width=400, height=400");
  472. }
  473. function viewAgentsChoose()
  474. {
  475. var client = document.form1.client[document.form1.client.selectedIndex].value;
  476. location.href="index.php?act=view_agents&client="+client;
  477. }
  478. function viewManagersChoose()
  479. {
  480. var client = document.form1.client[document.form1.client.selectedIndex].value;
  481. location.href="index.php?act=view_managers&client="+client;
  482. }
  483. function addManagerChoose()
  484. {
  485. var client = document.form1.client[document.form1.client.selectedIndex].value;
  486. location.href="index.php?act=add_manager&client="+client;
  487. }
  488. function emailCheck (emailStr) {
  489. if (!emailStr)
  490. return true
  491. var emailPat=/^(.+)@(.+)$/
  492. var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
  493. var validChars="\[^\\s" + specialChars + "\]"
  494. var quotedUser="(\"[^\"]*\")"
  495. var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
  496. var atom=validChars + '+'
  497. var word="(" + atom + "|" + quotedUser + ")"
  498. var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
  499. var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
  500. var matchArray=emailStr.match(emailPat)
  501. if (matchArray==null) {
  502. alert("Неправильно указан email адрес")
  503. return false
  504. }
  505. var user=matchArray[1]
  506. var domain=matchArray[2]
  507. if (user.match(userPat)==null) {
  508. alert("Неправильное имя пользователя в email адресе.")
  509. return false
  510. }
  511. var IPArray=domain.match(ipDomainPat)
  512. if (IPArray!=null) {
  513. for (var i=1;i<=4;i++) {
  514. if (IPArray[i]>255) {
  515. alert("Неправильный IP в email адресе.")
  516. return false
  517. }
  518. }
  519. return true
  520. }
  521. var domainArray=domain.match(domainPat)
  522. if (domainArray==null) {
  523. alert("Неправильно указано доменное имя в email адресе")
  524. return false
  525. }
  526. var atomPat=new RegExp(atom,"g")
  527. var domArr=domain.match(atomPat)
  528. var len=domArr.length
  529. if (domArr[domArr.length-1].length<2 ||
  530. domArr[domArr.length-1].length>3) {
  531. alert("Неправильное окончание email адреса.")
  532. return false
  533. }
  534. if (len<2) {
  535. var errStr="Не хватает имени хоста в email адресе!"
  536. alert(errStr)
  537. return false
  538. }
  539. return true;
  540. }
  541. function ChangeMainJobtype(acc, jobtype)
  542. {
  543. var e = document.getElementById("jobtypelist" + acc);
  544. var jobtypeindex = e.options[e.selectedIndex].value;
  545. $.ajax({
  546. url: "response.php?acc=" + acc + "&jobtype=" + jobtypeindex,
  547. type: "POST" //метод отправки
  548. });
  549. }
  550. function BindProjectType(idTemplate){
  551. var e = document.getElementById('project_number_'+idTemplate).value;
  552. var result = $.ajax({
  553. url: "response.php?asusg_id=" + idTemplate + "&project_type=" + e,
  554. type: "POST"
  555. });
  556. location.reload();
  557. }
  558. function StartProjectType(user_id,idTemplate){
  559. //console.log("response.php?user_id=" + user_id + "&asusg_id=" + idTemplate);
  560. var result = $.ajax({
  561. url: "response.php?user_id=" + user_id + "&asusg_id=" + idTemplate,
  562. type: "POST" //метод отправки
  563. });
  564. location.reload();
  565. }
  566. //function BindTaskType(asutask){
  567. $(".bindTaskType").on('click', function(){
  568. var asutask = $(this).attr('data_id');
  569. var projecttype = $("#bindTaskType_" + asutask).val();
  570. console.log("response.php?user_id=" + asutask + "&asusg_id=" + projecttype);
  571. /*
  572. var result = $.ajax({
  573. url: "response.php?asutask_id=" + asutask + "&projecttype_id=" + projecttype,
  574. type: "POST" //метод отправки
  575. });
  576. */
  577. $.ajax({
  578. type: "POST",
  579. url: "response.php",
  580. data: "asutask_id=" + asutask + "&projecttype_id=" + projecttype +"",
  581. dataType: "json",
  582. success: function(data){
  583. console.log( data );
  584. }
  585. });
  586. //location.reload();
  587. });
  588. //function BindEmployee(asu_employee){
  589. $(".selectBindEmployee").on('click', function(){
  590. var asu_data = $(this).attr('data_id');
  591. var asu_employee = asu_data;//
  592. var employeeId = $('#selectBindEmployee_'+asu_data).val(); // $(".selectBindEmployee").val();
  593. //console.log("response.php?employee_uuid=" + asu_employee + "&employee_id=" + employeeId);
  594. /*
  595. var result = $.ajax({
  596. url: "response.php?asutask_id=" + asutask + "&projecttype_id=" + projecttype,
  597. type: "POST" //метод отправки
  598. });
  599. */
  600. $.ajax({
  601. type: "POST",
  602. url: "response.php",
  603. data: "employee_uuid=" + asu_employee + "&employee_id=" + employeeId +"",
  604. dataType: "json",
  605. success: function(data){
  606. console.log( data );
  607. }
  608. });
  609. location.reload();
  610. });
  611. var listItems = [];
  612. $('.bindProjectTypes').on('click',function(){
  613. var data_id = $(this).attr("data_id");
  614. var valueSelect = $("#command_list_" + data_id).val();
  615. console.log('[data_id="'+ valueSelect +'_'+ data_id +'"]');
  616. var valueSelectCommand = $('[data_id="'+ valueSelect +'_'+ data_id +'"]').text();
  617. //console.log(".list_asusg_command_" + data_id);
  618. $(".list_asusg_command_" + data_id).append(' <li id="li_'+data_id+'_'+valueSelect+'" class="ui-state-default" data_id="'+data_id+'_'+valueSelect+'"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span><div class="box box-warning"><div class="box-header with-border"><h3 class="box-title">'+ valueSelectCommand +'</h3><div class="box-tools pull-right"><button type="button" class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button><button type="button" class="btn btn-box-tool remove_command_button" data_id="'+data_id+'_'+valueSelect+'"><i class="fa fa-times"></i></button></div></div></div></li>');
  619. var i = 0;
  620. $('.list_asusg_command_' + data_id + ' li').each(function(){
  621. listItems[i] = $(this).attr('data_id');
  622. i++;
  623. })
  624. var dd= $('.remove_command_button').bind('click',function() {
  625. var id_for_remove = $(this).attr('data_id');
  626. console.log(id_for_remove);
  627. $('#li_' + id_for_remove).remove();
  628. });
  629. console.log(dd);
  630. //var tes = $("[][class = wet]").attr('class');
  631. //console.log(tes);
  632. });
  633. var resultDeleteRequest = false;
  634. $('.saveProjectTypes').on('click',function(){
  635. var data_id = $(this).attr("data_id");
  636. var i = 0;
  637. $('.list_asusg_command_' + data_id + ' li').each(function(){
  638. listItems[i] = $(this).attr('data_id');
  639. i++;
  640. });
  641. console.log(listItems);
  642. $.ajax({
  643. type: "POST",
  644. url: "response.php",
  645. data: "listItems=" + listItems,
  646. dataType: "json",
  647. success: function(data){
  648. //resultDeleteRequest = data;
  649. console.log(data);
  650. }
  651. });
  652. var data_id = $(this).attr("data_id");
  653. //if ( resultDeleteRequest) {
  654. $('#button_plan_' + data_id).removeClass("disabled");
  655. //}
  656. });
  657. $('.startProjectType').on('click',function(){
  658. if ($(this).hasClass("disabled")){
  659. return false;
  660. }
  661. var loco_number_command = $('#loco_number_command').val();
  662. var resRegular = loco_number_command.match(/^[\d]{4}$/);
  663. if ( null == resRegular ){
  664. $('#error_number_input').addClass('has-error');
  665. $('#loco_number_massage').show();
  666. return false;
  667. } else {
  668. $('#error_number_input').removeClass('has-error');
  669. $('#loco_number_massage').hide();
  670. }
  671. var data_id = $(this).attr("data_id");
  672. var loco_series_command = $('#loco_series_command').val();
  673. var listItems = loco_number_command;
  674. //console.log(listItems);
  675. $.ajax({
  676. type: "POST",
  677. url: "response.php",
  678. data: "moveToPlan=" + listItems + "&id_asusg_job=" + data_id + "&loco=" + loco_series_command + "&loco_number=" + loco_number_command ,
  679. dataType: "json",
  680. success: function(data){
  681. console.log(data);
  682. if(data){
  683. alert("Работы в SMoPP запланированы успешно.");
  684. }
  685. }
  686. });
  687. });
  688. $('.remove_command_button').on('click', function(){
  689. var id_for_remove = $(this).attr('data_id');
  690. console.log(id_for_remove);
  691. $('#li_' + id_for_remove).remove();
  692. });
  693. $("#addNewProjectTypesAsusg").on('click', function(){
  694. var queryString = '';
  695. $('#addNewProjectTypesAsusgForm').find('input, textearea, select').each(function() {
  696. queryString += $(this).attr('name') + '=' + $(this).val() + '&';
  697. });
  698. queryString = queryString.substring(0, queryString.length - 1);
  699. $.ajax({
  700. type: "POST",
  701. url: "response.php",
  702. data: queryString ,
  703. dataType: "json",
  704. success: function(data){
  705. if(data){
  706. alert("Новый вид ремонта добавлен успешно.");
  707. } else {
  708. alert("Что-то пошло не так, возможно такой вид работ уже существует.");
  709. }
  710. }
  711. });
  712. });
  713. $("#removeProjectTypesAsusg").on('click', function(){
  714. console.log($(this).attr('data_id'));
  715. var queryString = 'removeProjectTypeAsusg=' + $(this).attr('data_id');
  716. $.ajax({
  717. type: "POST",
  718. url: "response.php",
  719. data: queryString ,
  720. dataType: "json",
  721. success: function(data){
  722. if(data){
  723. alert("Вид ремонта удален успешно.");
  724. } else {
  725. alert("Что-то пошло не так, попробйте позже.");
  726. }
  727. }
  728. });
  729. });
  730. var countAppendBlock = 0;
  731. $('#bindNewProjectTypesAsusg').on('click',function(){
  732. var valueSelect = $('#listJobForAsusg').val();
  733. //console.log('[data_id="'+ valueSelect +'_'+ data_id +'"]');
  734. var valueSelectCommand = $('[data_id_option="'+ valueSelect +'"]').text();
  735. //console.log($('#listJobForAsusg').val());
  736. $(".list_asusg_command_id").append(' <li id="li_1_2" class="ui-state-default" data_id="' + valueSelect + '_'+ countAppendBlock +'"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span><div class="box box-warning"><div class="box-header with-border"><h3 class="box-title">'+ valueSelectCommand +'</h3><div class="box-tools pull-right"><button type="button" class="btn btn-box-tool remove_command_button_asusg" data_id="1_2"><i class="fa fa-times"></i></button></div></div></div></li>');
  737. countAppendBlock += 1;
  738. });
  739. var resultDeleteRequest = false;
  740. $('.saveProjectTypesForAsusg').on('click',function(){
  741. var data_id = $(this).attr("data_id");
  742. var i = 0;
  743. $('.list_asusg_command_id li').each(function(){
  744. listItems[i] = $(this).attr('data_id');
  745. i++;
  746. });
  747. var job_id = $(this).attr("job_id");
  748. console.log("job_id=" + job_id + "&listItemsAsusg=" + listItems);
  749. $.ajax({
  750. type: "POST",
  751. url: "response.php",
  752. data: "job_id=" + job_id + "&listItemsAsusg=" + listItems,
  753. dataType: "json",
  754. success: function(data){
  755. if(data){
  756. //console.log(data);
  757. alert("Вид ремонта сохранен успешно.");
  758. window.location.reload();
  759. } else {
  760. alert("Что-то пошло не так, попробйте позже.");
  761. }
  762. }
  763. });
  764. var data_id = $(this).attr("data_id");
  765. //if ( resultDeleteRequest) {
  766. $('#button_plan_' + data_id).removeClass("disabled");
  767. //}
  768. });
  769. $('.remove_command_button_asusg').on('click', function(){
  770. var id_for_remove = $(this).attr('data_id');
  771. //console.log('#li_' + id_for_remove);
  772. $('#li_' + id_for_remove).remove();
  773. //$(this).remove();
  774. });
  775. // ASUSG TASKS begin
  776. var countAppendBlock = 0;
  777. $('#bindNewTaskTypesAsusg').on('click',function(){
  778. var ASU_select_map0 = $('.ASU_select_map0').html();
  779. var valueSelect = $('#listJobForAsusg').val();
  780. var valueTaskId = $(this).attr('task_id');
  781. //console.log('[data_id="'+ valueSelect +'_'+ data_id +'"]');
  782. var valueSelectCommand = $('[data_id_option="'+ valueSelect +'"]').text();
  783. $(".list_asusg_command_id").append(' <li id="li_'+valueTaskId+'_' + valueSelect + '_'+ countAppendBlock +'" class="ui-state-default" data_id="'+valueTaskId+'_' + valueSelect + '_'+ countAppendBlock +'"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span><div class="box box-warning"><div class="box-header with-border"><h3 class="box-title">'+ valueSelectCommand +'</h3><div class="box-tools pull-right"><button type="button" class="btn btn-box-tool remove_command_button_asusg" data_id="'+valueTaskId+'_' + valueSelect + '_'+ countAppendBlock +'"><i class="fa fa-times"></i></button></div><div class="form-group ASU_select_in_0_map"><label>Список должностей</label></div></div></div></li>');
  784. var name_map0 = $(".ASU_select_map0 select").attr('id');
  785. $("#li_" + valueTaskId + "_" + valueSelect + "_"+ countAppendBlock).attr('select_id', name_map0);
  786. var newInteger_map = Number(name_map0.split("_")[1])+1;
  787. var vers_map0 = name_map0.split("_")[0] + '_'+ newInteger_map;
  788. $(".ASU_select_map0 select").attr('id', vers_map0);
  789. countAppendBlock += 1;
  790. $('.ASU_select_in_0_map').append(ASU_select_map0);
  791. $('.ASU_select_in_0_map').removeClass('ASU_select_in_0_map');
  792. });
  793. $("#addNewTaskTypesAsusg").on('click', function(){
  794. var queryString = '';
  795. $('#addNewProjectTypesAsusgForm').find('input, textearea, select').each(function() {
  796. queryString += $(this).attr('name') + '=' + $(this).val() + '&';
  797. });
  798. queryString = queryString.substring(0, queryString.length - 1);
  799. $.ajax({
  800. type: "POST",
  801. url: "response.php",
  802. data: queryString ,
  803. dataType: "json",
  804. success: function(data){
  805. if(data){
  806. alert("Новый вид ремонта добавлен успешно.");
  807. } else {
  808. alert("Что-то пошло не так, возможно такой вид работ уже существует.");
  809. }
  810. }
  811. });
  812. });
  813. var resultDeleteRequest = false;
  814. var listItemsA = [];
  815. $('.saveTaskTypesAsusg').on('click',function(){
  816. var data_id = $(this).attr("data_id");
  817. var data_projecttype = $(this).attr("data_projecttype");
  818. var i = 0;
  819. $('.list_asusg_command_id li').each(function(){
  820. var select_val = $(this).attr('select_id');
  821. listItemsA[i] = $(this).attr('data_id')+ "_" + $("#"+ select_val).val() + "_" + data_projecttype;
  822. i++;
  823. });
  824. $.ajax({
  825. type: "POST",
  826. url: "response.php",
  827. data: "listItems=" + listItemsA,
  828. dataType: "json",
  829. success: function(data){
  830. //resultDeleteRequest = data;
  831. console.log(data);
  832. }
  833. });
  834. listItemsA = [];
  835. var data_id = $(this).attr("data_id");
  836. //if ( resultDeleteRequest) {
  837. $('#button_plan_' + data_id).removeClass("disabled");
  838. //}
  839. });
  840. $("#addNewTaskTypesAsusg").on('click', function(){
  841. var queryString = '';
  842. $('#addNewTaskTypesAsusgForm').find('input, textearea, select').each(function() {
  843. queryString += $(this).attr('name') + '=' + $(this).val() + '&';
  844. });
  845. queryString = queryString.substring(0, queryString.length - 1);
  846. $.ajax({
  847. type: "POST",
  848. url: "response.php",
  849. data: queryString ,
  850. dataType: "json",
  851. success: function(data){
  852. if(data){
  853. alert("Новый вид работы добавлен успешно.");
  854. //console.log(data);
  855. window.location.reload();
  856. } else {
  857. alert("Что-то пошло не так, возможно такой вид работ уже существует.");
  858. }
  859. }
  860. });
  861. });
  862. // ASUSG TASKS end
  863. // CHAT
  864. //Отправка нового сообщения
  865. $('#massage_chat_send').on('click', function(event) {
  866. event.preventDefault();
  867. // var insertMass = '<div class="direct-chat-msg"><div class="direct-chat-info clearfix"><span class="direct-chat-name pull-left">login</span><span class="direct-chat-timestamp pull-right">date<!--23 Jan 2:00 pm--></span></div><i class="fa fa-3x fa-user direct-chat-img"></i><div class="direct-chat-text">text</div></div>'
  868. var formData = new FormData();
  869. jQuery.each($('#file_v')[0].files, function(i, file) {
  870. formData.append('file_v', file);
  871. });
  872. formData.append('addNewMsg', $('input#massage_field').val());
  873. $.ajax({
  874. url: "/response.php",
  875. type: "POST",
  876. dataType : "json",
  877. cache: false,
  878. contentType: false,
  879. processData: false,
  880. data: formData, //указываем что отправляем
  881. success: function(data) {
  882. $("#massage_field").val('');
  883. $('#file_v')[0].value = "";//Если файл был отправлен, открепляем его
  884. $('#massage_field').attr('placeholder', 'Сообщение...');
  885. }
  886. });
  887. });
  888. var iCount = 0;
  889. async function chatLoop() {
  890. while (true) {
  891. await sleep(5000);
  892. iCount = 0;
  893. $('#scrollFieldChat > div').each(function() {
  894. listItems[iCount] = $(this).attr('id');
  895. iCount++;
  896. });
  897. count_massages = $('#new_massage_count').text();
  898. if (0 < Number(count_massages)) {
  899. $('#new_massage_count').removeClass("label-default");
  900. $('#new_massage_count').addClass("label-success");
  901. } else {
  902. $('#new_massage_count').removeClass("label-success");
  903. $('#new_massage_count').addClass("label-default");
  904. }
  905. getNewMassage(listItems[iCount-1]);
  906. }
  907. }
  908. function sleep(ms) {
  909. return new Promise(resolve => setTimeout(resolve, ms));
  910. }
  911. var count_massages;
  912. $(function() {
  913. chatLoop();
  914. // DrawRect();
  915. });
  916. var openChat = false;
  917. function getNewMassage(idLastMsg) {
  918. if (null == idLastMsg) { idLastMsg = true }
  919. $.ajax({
  920. type: "POST",
  921. url: "response.php",
  922. data: "idLastMsg=" + idLastMsg,
  923. dataType: "json",
  924. success: function(data) {
  925. $(".direct-chat-messages").append(data);
  926. openChat = $('#aside_open_panel').hasClass("control-sidebar-open");
  927. if ('' != data) {
  928. if (true != openChat) {
  929. var count_massages = $('#new_massage_count').text();
  930. $('#new_massage_count').text(Number(count_massages) + 1);
  931. }
  932. scrollChat();
  933. }
  934. }
  935. });
  936. }
  937. //Нажатие на колокольчик
  938. $('#new_massage_dropdown').on('click',function() {
  939. openChat = 0;
  940. $('#new_massage_count').text(0);
  941. setTimeout(function () {
  942. scrollChat();
  943. }, 100);
  944. });
  945. //При прикриплении файла пишем его имя в поле с сообщением
  946. $('#file_v').on('change', function () {
  947. console.log(this.files);
  948. if (this.files[0]) {
  949. $('#massage_field').attr('placeholder', this.files[0].name);
  950. }
  951. });
  952. //Прокрутка чата до конца вниз
  953. var scrollChat = function() {
  954. var chat = $('#scrollFieldChat');
  955. chat.animate({ scrollTop: chat.get(0).scrollHeight }, "slow");
  956. };
  957. // CHAT
  958. var htmlTextCreateJobs;
  959. if ( typeof countAppendBlock2 == 'undefined' ) {
  960. var countAppendBlock2 = 0 ;
  961. }
  962. $('#add_jobs_part').on('click',function(){
  963. var htmlASU_select0 = $('.ASU_select0').html();
  964. var htmlASU_select1 = $('.ASU_select1').html();
  965. var htmlASU_select2 = $('.ASU_select2').html();
  966. var htmlASU_select3 = $('.ASU_select3').html();
  967. var htmlASU_select1_j = $('.ASU_select1_j').html();
  968. var htmlASU_select2_j = $('.ASU_select2_j').html();
  969. var htmlASU_select3_j = $('.ASU_select3_j').html();
  970. htmlTextCreateJobs = '<li class="ui-state-default li_hidden_job_container data_remove_id" data_id="row_' + countAppendBlock2 + '" ><span class="ui-icon ui-icon-arrowthick-2-n-s"></span><div class="box box-warning"><div class="box-header with-border"><h3 class="box-title"><div class="box-tools pull-right"></h3><div class="box-tools pull-right"><button type="button" class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button><button type="button" class="btn btn-box-tool remove_command_button data_remove_id" data_id="row_' + countAppendBlock2 + '"><i class="fa fa-times"></i></button><div class="col-xs-3 "><div class="form-group ASU_select_in_0"><label>Работы АСУ СГ</label></div></div><div class="col-xs-2 col-xs-offset-2"><div class="form-group ASU_select_in_1"><label>Сотрудник 1</label></div><div class="form-group ASU_select_in_1_j"><label>Должность 1</label></div></div><div class="col-xs-2 "><div class="form-group ASU_select_in_2"><label>Сотрудник 2</label></div><div class="form-group ASU_select_in_2_j"><label>Должность 2</label></div></div><div class="col-xs-2 "><div class="form-group ASU_select_in_3"><label>Сотрудник 3</label></div><div class="form-group ASU_select_in_3_j"><label>Должность 3</label></div></div></div></div></div></li>';
  971. $('.job_container').append(htmlTextCreateJobs);
  972. $('.ASU_select_in_0').append(htmlASU_select0);
  973. $('.ASU_select_in_0').removeClass('ASU_select_in_0');
  974. $('.ASU_select_in_1').append(htmlASU_select1);
  975. $('.ASU_select_in_1').removeClass('ASU_select_in_1');
  976. $('.ASU_select_in_1_j').append(htmlASU_select1_j);
  977. $('.ASU_select_in_1_j').removeClass('ASU_select_in_1_j');
  978. $('.ASU_select_in_2').append(htmlASU_select2);
  979. $('.ASU_select_in_2').removeClass('ASU_select_in_2');
  980. $('.ASU_select_in_2_j').append(htmlASU_select2_j);
  981. $('.ASU_select_in_2_j').removeClass('ASU_select_in_2_j');
  982. $('.ASU_select_in_3').append(htmlASU_select3);
  983. $('.ASU_select_in_3').removeClass('ASU_select_in_3');
  984. $('.ASU_select_in_3_j').append(htmlASU_select3_j);
  985. $('.ASU_select_in_3_j').removeClass('ASU_select_in_3_j');
  986. countAppendBlock2 = countAppendBlock2 + 1;
  987. var name_0 = $(".ASU_select0 select").attr('name');
  988. var newInteger = Number(name_0.split("_")[1])+1;
  989. var vers_0 = name_0.split("_")[0] + '_'+ newInteger;
  990. $(".ASU_select0 select").attr('name', vers_0);
  991. var name_1 = $(".hide_field_select_1").attr('name');
  992. var vers_1 = name_1.split("_")[0] + '_'+ newInteger;
  993. $(".ASU_select1 select").attr('name', vers_1 );
  994. var name_1_j = $(".hide_field_select_1_j").attr('name');
  995. var vers_1_j = name_1_j.split("_")[0] + '_'+ newInteger;
  996. $(".ASU_select1_j select").attr('name', vers_1_j );
  997. var name_2 = $(".hide_field_select_2").attr('name');
  998. var vers_2 = name_2.split("_")[0] + '_'+ newInteger;
  999. $(".ASU_select2 select").attr('name', vers_2 );
  1000. var name_2_j = $(".hide_field_select_2_j").attr('name');
  1001. var vers_2_j = name_2_j.split("_")[0] + '_'+ newInteger;
  1002. $(".ASU_select2_j select").attr('name', vers_2_j );
  1003. var name_3 = $(".hide_field_select_3").attr('name');
  1004. var vers_3 = name_3.split("_")[0] + '_'+ newInteger;
  1005. $(".ASU_select3 select").attr('name', vers_3 );
  1006. var name_3_j = $(".hide_field_select_3_j").attr('name');
  1007. var vers_3_j = name_3_j.split("_")[0] + '_'+ newInteger;
  1008. $(".ASU_select3_j select").attr('name', vers_3_j );
  1009. });
  1010. $('#submit_start_proj').on('click',function(){
  1011. var resultArray = [];
  1012. var foo = $( "#start_proj" ).serializeArray();
  1013. var r = 0;
  1014. var er = 0;
  1015. var diff = 0;
  1016. foo.forEach(function(item, i, arr) {
  1017. var cutString = item.name.split("_");
  1018. if ( cutString[1] != er ) {
  1019. r += 1;
  1020. }
  1021. er = cutString[1];
  1022. item.name = r + "-" + item.name + "_" + diff ;
  1023. diff += 1;
  1024. });
  1025. var $data = {};
  1026. $('#submit_editor_start_form').find ('input, textearea, select').each(function() {
  1027. var attr_name = this.name;
  1028. var attr_val = $(this).val()
  1029. var obj = { name: attr_name, value : attr_val};
  1030. foo[diff] = obj;
  1031. diff += 1;
  1032. });
  1033. var get_attr = $('#submit_start_proj').attr('data');
  1034. foo[diff]= { name: 'get_param', value : get_attr};
  1035. console.log(foo);
  1036. //console.log('!');
  1037. $.ajax({
  1038. type: "POST",
  1039. url: "asusg_response.php",
  1040. data: foo,
  1041. dataType: "json",
  1042. success: function(data){
  1043. console.log(data);
  1044. console.log(data.count);
  1045. if( true == data[0] && 0 < data['id']){
  1046. $('#submit_go_go_proj').removeClass("disabled");
  1047. $('#submit_go_go_proj').attr("data", data['id']);
  1048. alert("Успешно добавлено в работу.");
  1049. } else {
  1050. alert("Что-то пошло не так.");
  1051. }
  1052. }
  1053. });
  1054. //$( "#start_proj" ).submit(function( event ) {
  1055. // console.log( $( "#start_proj" ).serializeArray() );
  1056. // event.preventDefault();
  1057. //});
  1058. });
  1059. $("#submit_go_go_proj").on('click', function( event ) {
  1060. event.preventDefault();
  1061. $.ajax({
  1062. type: "POST",
  1063. url: "asusg_response.php",
  1064. data: "user_id_gogo=" + $(this).attr('user_id') + "&id_proj_gogo=" + $(this).attr('data'),
  1065. dataType: "json",
  1066. success: function(data){
  1067. console.log(data);
  1068. if( data){
  1069. alert("Запуск прошел успешно.");
  1070. } else {
  1071. alert("Что-то пошло не так.Запуск не прошел.");
  1072. }
  1073. }
  1074. });
  1075. });
  1076. /// редактирвать
  1077. $("#submit_editor_start").on('click', function(){
  1078. //console.log('sdfsdf');
  1079. $("#submit_editor_start_form").submit();
  1080. /*
  1081. var queryString = '';
  1082. $('#submit_editor_start_form').find('input, textearea, select').each(function() {
  1083. queryString += $(this).attr('name') + '=' + $(this).val() + '&';
  1084. });
  1085. queryString = queryString.substring(0, queryString.length - 1);
  1086. console.log(queryString);
  1087. $.ajax({
  1088. type: "POST",
  1089. url: "response.php",
  1090. data: queryString ,
  1091. dataType: "json",
  1092. success: function(data){
  1093. if(data){
  1094. alert("Новый вид ремонта добавлен успешно.");
  1095. } else {
  1096. alert("Что-то пошло не так, возможно такой вид работ уже существует.");
  1097. }
  1098. }
  1099. });
  1100. */
  1101. });
  1102. /// редактирвать
  1103. ////
  1104. $('#addFileListTaskTypesAsusgButton').on('click',function(){
  1105. //$("#addFileListTaskTypesAsusgForm").submit();
  1106. });
  1107. ////
  1108. /// GANTT SCRIPTS/
  1109. $('#gantt_compl_edit').on('click',function(){
  1110. var arrayTasks = [];
  1111. var vdv = $(".gantt_grid_data").find('.gantt_row, .gantt_row_task');//('.gantt_row');
  1112. var project_id = $(this).attr('data_id');
  1113. /*
  1114. $(".gantt_grid_data").find('.gantt_row').each(function (index, el){
  1115. });
  1116. */
  1117. var k = 0;
  1118. var i = 0;
  1119. var parent_id_tmp = 0;
  1120. $.each(vdv,function (index, el){
  1121. var tempArray = [];
  1122. if ( 0 == el.getAttribute('aria-level')) {
  1123. parent_id_tmp = el.getAttribute('task_id');
  1124. k = 0;
  1125. }
  1126. if ( parent_id_tmp != el.getAttribute('task_id')) {
  1127. var tempParent = parent_id_tmp;
  1128. } else {
  1129. var tempParent = 0;
  1130. }
  1131. //tempArray['id'] = el.getAttribute('task_id');
  1132. //tempArray['position'] = k;
  1133. tempArray = ({"id": el.getAttribute('task_id'), "position": k , 'parent' : tempParent, 'input_id': project_id});
  1134. arrayTasks[i] = tempArray;
  1135. k += 1;
  1136. i += 1;
  1137. });
  1138. $.ajax({
  1139. type: "POST",
  1140. url: "asusg_response.php",
  1141. //data: arrayTasks ,
  1142. data: 'arrayGantTasks='+ JSON.stringify(arrayTasks) ,
  1143. dataType: "json",
  1144. success: function(data){
  1145. if( data){
  1146. window.location.reload();
  1147. //alert("Запуск прошел успешно.");
  1148. } else {
  1149. //alert("Что-то пошло не так.Запуск не прошел.");
  1150. }
  1151. }
  1152. });
  1153. });
  1154. var arraytasks = [];
  1155. $('.gantt_grid_data').on('click','.gantt_row',function(){
  1156. var tasks_id_map = $(this).attr('task_id');
  1157. $.ajax({
  1158. type: "POST",
  1159. url: "asusg_response.php",
  1160. data: 'tasks_id_map=' + tasks_id_map,
  1161. dataType: "json",
  1162. success: function(data){
  1163. if( data){
  1164. //window.location.reload();
  1165. arraytasks.forEach(function(item, i, arr) {
  1166. $('[task_id=' + item.id + ']').css("background","");
  1167. });
  1168. console.log(arraytasks);
  1169. arraytasks = [];
  1170. var k = 0;
  1171. data.forEach(function(item, i, arr) {
  1172. //var cutString = item.name.split("_");
  1173. $('[task_id=' + item.id + ']').css("background","#FFB874");
  1174. arraytasks[k] = {'id' : item.id};
  1175. k += 1;
  1176. });
  1177. console.log(data);
  1178. } else {
  1179. //alert("Что-то пошло не так.Запуск не прошел.");
  1180. }
  1181. }
  1182. });
  1183. //console.log('sdfdsfs');
  1184. });
  1185. setTimeout(function() {
  1186. $( ".gantt_task_content" ).text(function( index,value ) {
  1187. return value.replace( /^[0-9]+[ ]/g, "" );
  1188. });
  1189. },2000);
  1190. //$('[task_id=50553]').css("background","black");
  1191. /// GANTT SCRIPTS/
  1192. var params_command_h = '';
  1193. /*
  1194. $('#loco_series_command_h').change(function(){
  1195. var href = $('.param_for_template').attr('onclick');
  1196. if ( null != $('#loco_series_command_h').val() && null != $('#type_fix_id_h') ) {
  1197. href += "&loco=" + $('#loco_series_command_h').val() + "&type=" + $('#type_fix_id_h').val();
  1198. }
  1199. params_command_h = href;
  1200. });
  1201. $('#type_fix_id_h').change(function(){
  1202. href = $('.param_for_template').attr('onclick');
  1203. if ( null != $('#loco_series_command_h').val() && null != $('#type_fix_id_h') ) {
  1204. href += '&loco=' + $('#loco_series_command_h').val() + '&type=' + $('#type_fix_id_h').val();
  1205. }
  1206. params_command_h = href;
  1207. });
  1208. */
  1209. $('.param_for_template').on('click', function(){
  1210. var href = '';
  1211. if ( null != $('#loco_series_command_h').val() && null != $('#type_fix_id_h') ) {
  1212. href += '&loco=' + $('#loco_series_command_h').val() + '&type=' + $('#type_fix_id_h').val();
  1213. }
  1214. location.href = "/asusg_settings_mapping.php?asusgtask=" + $(this).attr('data_id') + href;
  1215. });