common.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. var BLOCK_SIZE = 4 * 1024 * 1024;
  2. function addUploadBoard(file, config, key, type) {
  3. var count = Math.ceil(file.size / BLOCK_SIZE);
  4. var board = widget.add("tr", {
  5. data: { num: count, name: key, size: file.size },
  6. node: $("#fsUploadProgress" + type)
  7. });
  8. if (file.size > 100 * 1024 * 1024) {
  9. $(board).html("本实例最大上传文件100M");
  10. return "";
  11. }
  12. count > 1 && type != "3"
  13. ? ""
  14. : $(board)
  15. .find(".resume")
  16. .addClass("hide");
  17. return board;
  18. }
  19. function createXHR() {
  20. var xmlhttp = {};
  21. if (window.XMLHttpRequest) {
  22. xmlhttp = new XMLHttpRequest();
  23. } else {
  24. xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  25. }
  26. return xmlhttp;
  27. }
  28. function getBoardWidth(board) {
  29. var total_width = $(board)
  30. .find("#totalBar")
  31. .outerWidth();
  32. $(board)
  33. .find(".fragment-group")
  34. .removeClass("hide");
  35. var child_width = $(board)
  36. .find(".fragment-group li")
  37. .children("#childBar")
  38. .outerWidth();
  39. $(board)
  40. .find(".fragment-group")
  41. .addClass("hide");
  42. return { totalWidth: total_width, childWidth: child_width };
  43. }
  44. function controlTabDisplay(type) {
  45. switch (type) {
  46. case "sdk":
  47. document.getElementById("box2").className = "";
  48. document.getElementById("box").className = "hide";
  49. break;
  50. case "others":
  51. document.getElementById("box2").className = "hide";
  52. document.getElementById("box").className = "";
  53. break;
  54. case "form":
  55. document.getElementById("box").className = "hide";
  56. document.getElementById("box2").className = "hide";
  57. break;
  58. }
  59. }
  60. var getRotate = function(url) {
  61. if (!url) {
  62. return 0;
  63. }
  64. var arr = url.split("/");
  65. for (var i = 0, len = arr.length; i < len; i++) {
  66. if (arr[i] === "rotate") {
  67. return parseInt(arr[i + 1], 10);
  68. }
  69. }
  70. return 0;
  71. };
  72. function imageControl(domain) {
  73. $(".modal-body")
  74. .find(".buttonList a")
  75. .on("click", function() {
  76. var img = document.getElementById("imgContainer").getElementsByTagName("img")[0]
  77. var oldUrl = img.src;
  78. var key = img.key;
  79. var originHeight = img.h;
  80. var fopArr = [];
  81. var rotate = getRotate(oldUrl);
  82. if (!$(this).hasClass("no-disable-click")) {
  83. $(this)
  84. .addClass("disabled")
  85. .siblings()
  86. .removeClass("disabled");
  87. if ($(this).data("imagemogr") !== "no-rotate") {
  88. fopArr.push({
  89. fop: "imageMogr2",
  90. "auto-orient": true,
  91. strip: true,
  92. rotate: rotate
  93. });
  94. }
  95. } else {
  96. $(this)
  97. .siblings()
  98. .removeClass("disabled");
  99. var imageMogr = $(this).data("imagemogr");
  100. if (imageMogr === "left") {
  101. rotate = rotate - 90 < 0 ? rotate + 270 : rotate - 90;
  102. } else if (imageMogr === "right") {
  103. rotate = rotate + 90 > 360 ? rotate - 270 : rotate + 90;
  104. }
  105. fopArr.push({
  106. fop: "imageMogr2",
  107. "auto-orient": true,
  108. strip: true,
  109. rotate: rotate
  110. });
  111. }
  112. $(".modal-body")
  113. .find("a.disabled")
  114. .each(function() {
  115. var watermark = $(this).data("watermark");
  116. var imageView = $(this).data("imageview");
  117. var imageMogr = $(this).data("imagemogr");
  118. if (watermark) {
  119. fopArr.push({
  120. fop: "watermark",
  121. mode: 1,
  122. image: "http://www.b1.qiniudn.com/images/logo-2.png",
  123. dissolve: 100,
  124. gravity: watermark,
  125. dx: 100,
  126. dy: 100
  127. });
  128. }
  129. if (imageView) {
  130. var height;
  131. switch (imageView) {
  132. case "large":
  133. height = originHeight;
  134. break;
  135. case "middle":
  136. height = originHeight * 0.5;
  137. break;
  138. case "small":
  139. height = originHeight * 0.1;
  140. break;
  141. default:
  142. height = originHeight;
  143. break;
  144. }
  145. fopArr.push({
  146. fop: "imageView2",
  147. mode: 3,
  148. h: parseInt(height, 10),
  149. q: 100
  150. });
  151. }
  152. if (imageMogr === "no-rotate") {
  153. fopArr.push({
  154. fop: "imageMogr2",
  155. "auto-orient": true,
  156. strip: true,
  157. rotate: 0
  158. });
  159. }
  160. });
  161. var newUrl = qiniu.pipeline(fopArr, key, domain);
  162. var newImg = new Image();
  163. img.src = "images/loading.gif"
  164. newImg.onload = function() {
  165. img.src = newUrl
  166. document.getElementById("imgContainer").href = newUrl
  167. };
  168. newImg.src = newUrl;
  169. return false;
  170. });
  171. }
  172. function imageDeal(board, key, domain) {
  173. var fopArr = [];
  174. //var img = $(".modal-body").find(".display img");
  175. var img = document.getElementById("imgContainer").getElementsByTagName("img")[0];
  176. img.key = key
  177. fopArr.push({
  178. fop: "watermark",
  179. mode: 1,
  180. image: "http://www.b1.qiniudn.com/images/logo-2.png",
  181. dissolve: 100,
  182. gravity: "NorthWest",
  183. ws: 0.8,
  184. dx: 100,
  185. dy: 100
  186. });
  187. fopArr.push({
  188. fop: "imageView2",
  189. mode: 2,
  190. h: 450,
  191. q: 100
  192. });
  193. var newUrl = qiniu.pipeline(fopArr, key, domain);
  194. $(board)
  195. .find(".wraper a")
  196. .html(
  197. '<img src="' +
  198. domain +
  199. "/" +
  200. key +
  201. '"/>' +
  202. '<a data-toggle="modal" data-target="#myModal">查看处理效果</a>'
  203. );
  204. var newImg = new Image();
  205. img.src = "images/loading.gif"
  206. newImg.onload = function() {
  207. img.src = newUrl
  208. img.h = 450
  209. document.getElementById("imgContainer").href = newUrl
  210. };
  211. newImg.src = newUrl;
  212. }