Advertisement
Guest User

Untitled

a guest
Dec 22nd, 2014
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.46 KB | None | 0 0
  1.  
  2. $(document).ready(function() {
  3. // Data to describe what kind of test
  4. var testData = {
  5. "timestamp": "",
  6. "hive": 0,
  7. "hdfs": 0,
  8. // Contains a list of testData objects
  9. "beacons":[]
  10. };
  11.  
  12.  
  13. var testRun = document.getElementById("test-form");
  14. testRun.addEventListener('submit', function(event) {
  15. event.preventDefault();
  16. var selectedTest = document.querySelector('input[name=test-select]:checked');
  17. alert(selectedTest);
  18. var testType = selectedTest.id;
  19. if (testType == "hdfs-test") {
  20. testData["hdfs"] = 1;
  21. testData["hive"] = 0;
  22. } else if (testType == "hive-test") {
  23. testData["hdfs"] = 0;
  24. testData["hive"] = 1;
  25. } else if (testType == "hdfs-hive-test") {
  26. testData["hdfs"] = 1;
  27. testData["hive"] = 1;
  28. } else {
  29. // null
  30. }
  31.  
  32. var events = document.getElementById("event-textarea").value;
  33. // check in valid input
  34. var eventSource = events.replace("],[","],,,,[");
  35. // beaconLists allows users to submit --> [{beacon1}, {beacon2}, ...], [{beacon3}, {beacon4}, ...]
  36. var beaconLists = eventSource.split(",,,,");
  37. for (var i = 0; i < beaconLists.length; i++) {
  38. // inspect one list in beaconLists [{beacon1}, {beacon2}, ...]
  39. var beaconList = beaconLists[i];
  40. try {
  41. // list of JSON objects
  42. var beaconObjList = JSON.parse(beaconList);
  43. for (var j = 0; j < beaconObjList.length; j++) {
  44. var beaconObj = beaconObjList[j];
  45. if (beaconObj["data"] && beaconObj["application"]) {
  46. // successful parse to find events
  47. // describe beacon being tested
  48. alert("yes");
  49. var beacon = {
  50. "app_name": beaconObj["application"]["app_name"],
  51. "device": beaconObj["application"]["device"],
  52. "device_id": beaconObj["application"]["device_id"],
  53. "os": beaconObj["application"]["os"],
  54. "os_version": beaconObj["application"]["os_version"],
  55. "browser": beaconObj["application"]["browser"],
  56. "beacon": beaconObj
  57. };
  58. // append to testData
  59. testData["beacons"].push(beacon);
  60. // reset beacon so we can append new beacon later
  61. beacon = {};
  62. } else {
  63. // notify event isn't in the correct format?
  64. alert("no");
  65. }
  66. }
  67. } catch (e) {
  68. // notify bad JSON
  69. alert("failed");
  70. }
  71. }
  72. console.log(testData);
  73. //$.ajaxSetup({
  74. // beforeSend: function(xhr, settings) {
  75. // if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
  76. // xhr.setRequestHeader("X-CSRFToken", csrftoken);
  77. // }
  78. // }
  79. //});
  80. $.ajax({
  81. type: "POST",
  82. url: "/test/",
  83. data: testData,
  84. success: function () {
  85. alert("yay");
  86. },
  87. failure: function () {
  88. alert("boo");
  89. }
  90. });
  91. });
  92. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement