assignment.js 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. function createAssignmentForm(assID, url){
  2. $('#assignmentdetaillist').text("");
  3. $.ajax({
  4. type: "GET",
  5. url: "../server/",
  6. dataType: "xml",
  7. success: function(xml) {
  8. $(xml).find('station').each(function(index){
  9. $('#assignmentstation').append('<option value="' + $(this).attr('id') +'">' + $(this).attr('id') +'</option>');
  10. });
  11. }
  12. });
  13. if (assID == null){
  14. $('#storedassignments').css("display", "none");
  15. $('#assignmentLupe').css("display", "block");
  16. $('#addExternalImageAssignment').removeAttr('disabled');
  17. $('#addExternalImageAssignment').val("");
  18. }
  19. else{
  20. $('#storedassignments').css("display", "block");
  21. $('#assignmentLupe').css("display", "none");
  22. $('#addExternalImageAssignment').attr('disabled','disabled');
  23. $('#addExternalImageAssignment').val(url);
  24. //Show Assignments
  25. $.getJSON( "../server/assignments/" + assID, function( data ) {
  26. console.log(data);
  27. $.each( data, function(i, alldata){
  28. var clonePattern = document.importNode(document.querySelector('#singleassignment').content,true);
  29. $('[data-class=station]',clonePattern).text("Station " + i);
  30. $('#assignmentdetaillist').append(clonePattern);
  31. $.each( alldata, function(i, item){
  32. var clonePattern = document.importNode(document.querySelector('#singleassignment').content,true);
  33. $('[data-class=item]',clonePattern).text(item);
  34. $('[data-class=delete] a',clonePattern).attr('href','javascript:deleteSingleAssignment(' + assID +', ' + i + ');');
  35. $('#assignmentdetaillist').append(clonePattern);
  36. });
  37. });
  38. });
  39. }
  40. $('#assignment_details').css("display", "block");
  41. }
  42. //called when new image is selected
  43. function getImgText(imgtext){
  44. var result = /[^;]*$/.exec(imgtext)[0];
  45. if(result != imgtext){
  46. $('#assignmentText').val(result.replace(/\.[^/.]+$/, ""))
  47. }
  48. }
  49. function submitAssignment(){
  50. var obj = new Object();
  51. obj.img = $('#addExternalImageAssignment').val();
  52. obj.station = $('#assignmentstation option:selected').text();
  53. obj.parts = {};
  54. abk.forEach(function(item){
  55. if(typeof $("#FormPatternAssignment_Form_" + item).val() !== 'undefined' && typeof $("#FormPatternAssignment_Form_" + item).val() !== 'undefined'){
  56. if($("#FormPatternAssignment_Form_" + item).find(":selected").text() != ""){
  57. obj.parts[item] = $("#FormPatternAssignment_Form_" + item).find(":selected").text();
  58. }
  59. }
  60. });
  61. obj.assignmentText = $('#assignmentText').val();
  62. $.ajax({
  63. type: "Post",
  64. data: JSON.stringify(obj),
  65. headers: {"content-id": "list"},
  66. contentType: "application/json",
  67. url: "../server/assignments/",
  68. success: function(res) {
  69. },
  70. error: function (request, status, error) {
  71. alert(request.responseText + status + error);
  72. }
  73. });
  74. }
  75. function deleteAssignment(assignmentID) { //Delete From DB
  76. if (confirm('Are you really, really, REALLY sure!')) {
  77. $.ajax({
  78. type: "DELETE",
  79. url: "../server/assignments/" + assignmentID,
  80. success: function(res) {
  81. location.reload();
  82. }
  83. });
  84. }
  85. }
  86. function deleteSingleAssignment(assignmentID, patternID) { //Delete From DB
  87. if (confirm('Are you really, really, REALLY sure!')) {
  88. $.ajax({
  89. type: "DELETE",
  90. url: "../server/assignments/" + assignmentID + "/" + patternID,
  91. success: function(res) {
  92. location.reload();
  93. }
  94. });
  95. }
  96. }
  97. function initAssignment(){
  98. $.getJSON( "../server/assignments/", function( data ) {
  99. $.each( data, function(i, item){
  100. console.log("ID " + i + " image " + item)
  101. var clonePattern = document.importNode(document.querySelector('#assignmentitem').content,true);
  102. $('[data-class=item] a',clonePattern).text(item);
  103. $('[data-class=item] a',clonePattern).attr('href','javascript:createAssignmentForm(' + i + ',"' + item + '");');
  104. //$('[data-class=duplicate] a',clonePattern).attr('href','javascript:duplicatePattern(' + curstation + ','+ $(this).attr('id') + ');');
  105. $('[data-class=delete] a',clonePattern).attr('href','javascript:deleteAssignment(' + i + ');');
  106. $('#assignmentslist').append(clonePattern);
  107. });
  108. });
  109. }
  110. $(document).ready(function() {
  111. initAssignment();
  112. $(document).on('submit', '#assignmentform', function() { //prevent page reload on form submit
  113. return false;
  114. });
  115. /*
  116. loadStationsForm();
  117. getAllFolders();
  118. //press enter to fill out patternform
  119. $("#slicerpatterninput").bind("keypress", {}, fillpatternForm);
  120. $.getJSON( "../server/json/SlicerConfig.json", function( data ) {
  121. if(!data["SlicerRectForm"]){
  122. $("#addRectanglesGroup").hide();
  123. $("#imgRectangles").hide();
  124. $("#Json2ClipboardGroup").hide();
  125. }
  126. });
  127. $("#showJson").click(function() {
  128. showJson();
  129. });
  130. $("#multiCut").click(function() {
  131. getAllFiles($('#selectfolders').val());
  132. });
  133. $('#pattern2').text("");
  134. var clone = document.importNode(document.querySelector('#patternClone').content,true);
  135. $('[data-class=part]',clone).limitkeypress({rexp: keypressRegex()});
  136. $("#pattern2").append(clone);
  137. //handle zoom event in order to fix rectangle position
  138. window.addEventListener("resize", resizeAllRect, false);
  139. */
  140. });