script.js 52 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171
  1. $( window ).resize(function() {
  2. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  3. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  4. $("#front-magnify").text( (parseFloat($("#img-front").width()) / parseFloat( $("#front-magnify").attr("ori") )).toFixed(2) );
  5. $("#top-magnify").text( (parseFloat($("#img-top").width()) / parseFloat( $("#top-magnify").attr("ori") )).toFixed(2) );
  6. $("#left-magnify").text( (parseFloat($("#img-left").width()) / parseFloat( $("#left-magnify").attr("ori") )).toFixed(2) );
  7. var zoomConfig = {
  8. zoomWindowPosition: 'demo-container',
  9. zoomWindowHeight: h,
  10. zoomWindowWidth: (w / 3.0),
  11. borderSize: 0
  12. };
  13. $('.zoomContainer').remove();
  14. $('.zoomWindowContainer').remove();
  15. if ($("#hoverMode").is(':checked')) {
  16. if (parseInt(w) > 1200) {
  17. $("#img-front").ezPlus(zoomConfig);
  18. $("#img-top").ezPlus(zoomConfig);
  19. $("#img-left").ezPlus(zoomConfig);
  20. $(".info-text").text("Roll over to zoom and click to open fullscreen view");
  21. } else {
  22. $(".info-text").text("Click to open fullscreen view");
  23. }
  24. } else {
  25. $('.zoomContainer').remove();
  26. $('.zoomWindowContainer').remove();
  27. }
  28. });
  29. var glob_width;
  30. var glob_height;
  31. var glob_elem;
  32. var glob_id;
  33. /*
  34. * This function catches the events fired during ESC key press
  35. */
  36. if (document.addEventListener)
  37. {
  38. document.addEventListener('webkitfullscreenchange', exitHandler, false);
  39. document.addEventListener('mozfullscreenchange', exitHandler, false);
  40. document.addEventListener('fullscreenchange', exitHandler, false);
  41. document.addEventListener('MSFullscreenChange', exitHandler, false);
  42. }
  43. function exitHandler() {
  44. if (document.webkitIsFullScreen || document.mozFullScreen || document.msFullscreenElement !== null) {
  45. if (!document.fullscreenElement && !document.mozFullScreenElement &&
  46. !document.webkitFullscreenElement && !document.msFullscreenElement) {
  47. $(glob_elem).css("width", "");
  48. $(glob_elem).css("height", "");
  49. //console.log(glob_elem, glob_id);
  50. $(glob_elem).css("background-color", "white");
  51. $(glob_elem).css("color", "#000");
  52. $("#"+glob_id).width('100%');
  53. $("#"+glob_id).height("100%");
  54. $("#slider-" + glob_id.split("-")[1]).css("margin-top", "0px");
  55. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  56. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  57. var zoomConfig = {
  58. zoomWindowPosition: 'demo-container',
  59. zoomWindowHeight: h,
  60. zoomWindowWidth: (w / 3.0),
  61. borderSize: 0
  62. };
  63. $('.zoomContainer').remove();
  64. $('.zoomWindowContainer').remove();
  65. if ($("#hoverMode").is(':checked')) {
  66. if (parseInt(w) > 1200) {
  67. $("#img-front").ezPlus(zoomConfig);
  68. $("#img-top").ezPlus(zoomConfig);
  69. $("#img-left").ezPlus(zoomConfig);
  70. }
  71. } else {
  72. $('.zoomContainer').remove();
  73. $('.zoomWindowContainer').remove();
  74. }
  75. $("#front-magnify").text( (parseFloat( $("#front-magnify").attr("screen")) / parseFloat( $("#front-magnify").attr("ori") )).toFixed(2) );
  76. $("#top-magnify").text( (parseFloat( $("#top-magnify").attr("screen")) / parseFloat( $("#top-magnify").attr("ori") )).toFixed(2) );
  77. $("#left-magnify").text( (parseFloat( $("#left-magnify").attr("screen")) / parseFloat( $("#left-magnify").attr("ori") )).toFixed(2) );
  78. $(".info-text").show();
  79. }
  80. }
  81. }
  82. /**
  83. * Click handler to enter fullscreen mode
  84. */
  85. document.getElementById("leftFS").addEventListener("click", function() {
  86. var container = $("#photowrapper-left");
  87. if (!document.fullscreenElement && !document.mozFullScreenElement &&
  88. !document.webkitFullscreenElement && !document.msFullscreenElement) {
  89. //console.log(this.id);
  90. glob_id = "img-left";
  91. glob_width = $("#photowrapper-left > img").width();
  92. glob_height = $("#photowrapper-left > img").height();
  93. glob_elem = $("#photowrapper-left")[0];
  94. }
  95. toggleFullscreen(container[0], "img-left");
  96. });
  97. document.getElementById("topFS").addEventListener("click", function() {
  98. var container = $("#photowrapper-top");
  99. if (!document.fullscreenElement && !document.mozFullScreenElement &&
  100. !document.webkitFullscreenElement && !document.msFullscreenElement) {
  101. glob_id = "img-top";
  102. glob_width = $("#photowrapper-top > img").width();
  103. glob_height = $("#photowrapper-top > img").height();
  104. glob_elem = $("#photowrapper-top")[0];
  105. }
  106. toggleFullscreen(container[0], "img-top");
  107. });
  108. document.getElementById("frontFS").addEventListener("click", function() {
  109. var container = $("#photowrapper-front");
  110. if (!document.fullscreenElement && !document.mozFullScreenElement &&
  111. !document.webkitFullscreenElement && !document.msFullscreenElement) {
  112. glob_id = "img-front";
  113. glob_width = $("#photowrapper-front > img").width();
  114. glob_height = $("#photowrapper-front > img").height();
  115. glob_elem = $("#photowrapper-front")[0];
  116. }
  117. toggleFullscreen(container[0], "img-front");
  118. });
  119. function toggleFullscreen(elem, _id) {
  120. elem = elem || document.documentElement;
  121. //console.log("ID: "+_id);
  122. var ori_width = glob_width
  123. var ori_height = glob_height;
  124. var fs_scale;
  125. var myRatio;
  126. if (window.devicePixelRatio < 1) {
  127. myRatio = 1.0;
  128. } else {
  129. myRatio = 2.0;
  130. }
  131. //$("#"+_id).css('width', 'auto')
  132. //$("#"+_id).css('height', 'auto')
  133. if (!document.fullscreenElement && !document.mozFullScreenElement &&
  134. !document.webkitFullscreenElement && !document.msFullscreenElement) {
  135. //newWidth = screen.width * (1/ myRatio);
  136. //newHeight = screen.width * (ori_height/ori_width) * (1/ myRatio);
  137. newWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  138. newHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  139. $(".info-text").hide();
  140. //newHeight = screen.height * (1/myRatio);
  141. //newWidth = screen.height * (ori_width/ori_height) * (1/myRatio);
  142. // NTJ: Goes into fullscreen mode
  143. //console.log("Entering fullscreen mode!");
  144. //$("#"+_id).removeAttr('width');
  145. //$("#"+_id).height("80%");
  146. $("#"+_id).removeAttr('height');
  147. $("#"+_id).removeAttr('width');
  148. //$("#"+_id).width("100%");
  149. photowrapper = "#photowrapper-" + _id.split("-")[1];
  150. $(photowrapper).css("height", (newHeight)+"px");
  151. $(photowrapper).css("width", (newWidth)+"px");
  152. //$("#"+_id).width(newWidth+"px");
  153. if ( (_id.split("-")[1] == "top") || (_id.split("-")[1] == "left") ) {
  154. //$(photowrapper).css("width", "100%");
  155. //$("#"+_id).width("100%");
  156. $("#"+_id).width((newWidth-100)+"px");
  157. $("#"+_id).height("auto");
  158. $("#slider-" + _id.split("-")[1]).css("margin-top", "100px");
  159. } else {
  160. $("#"+_id).width("auto");
  161. $("#"+_id).height((newHeight-100)+"px");
  162. }
  163. $(elem).css("background-color", "black");
  164. $(elem).css("color", "#ccc");
  165. if (elem.requestFullscreen) {
  166. elem.requestFullscreen();
  167. } else if (elem.msRequestFullscreen) {
  168. elem.msRequestFullscreen();
  169. } else if (elem.mozRequestFullScreen) {
  170. elem.mozRequestFullScreen();
  171. } else if (elem.webkitRequestFullscreen) {
  172. elem.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
  173. }
  174. $("#front-magnify").text( (parseFloat($("#img-front").width()) / parseFloat( $("#front-magnify").attr("ori") )).toFixed(2) );
  175. $("#top-magnify").text( (parseFloat($("#img-top").width()) / parseFloat( $("#top-magnify").attr("ori") )).toFixed(2) );
  176. $("#left-magnify").text( (parseFloat($("#img-left").width()) / parseFloat( $("#left-magnify").attr("ori") )).toFixed(2) );
  177. } else {
  178. $(".info-text").show();
  179. //console.log("Leaving the fullscreen mode");
  180. $("#slider-" + _id.split("-")[1]).css("margin-top", "0px");
  181. $(photowrapper).css("width", "100%");
  182. $(photowrapper).css("height", "100%");
  183. $("#"+_id).width('100%');
  184. $("#"+_id).height("100%");
  185. //$(elem).css("width", "100%");
  186. $(elem).css("background-color", "white");
  187. $(elem).css("color", "#000");
  188. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  189. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  190. var zoomConfig = {
  191. zoomWindowPosition: 'demo-container',
  192. zoomWindowHeight: h,
  193. zoomWindowWidth: (w / 3.0),
  194. borderSize: 0
  195. };
  196. $('.zoomContainer').remove();
  197. $('.zoomWindowContainer').remove();
  198. if ($("#hoverMode").is(':checked')) {
  199. if (parseInt(w) > 1200) {
  200. $("#img-front").ezPlus(zoomConfig);
  201. $("#img-top").ezPlus(zoomConfig);
  202. $("#img-left").ezPlus(zoomConfig);
  203. }
  204. } else {
  205. $('.zoomContainer').remove();
  206. $('.zoomWindowContainer').remove();
  207. }
  208. $("#front-magnify").text( (parseFloat( $("#front-magnify").attr("screen")) / parseFloat( $("#front-magnify").attr("ori") )).toFixed(2) );
  209. $("#top-magnify").text( (parseFloat( $("#top-magnify").attr("screen")) / parseFloat( $("#top-magnify").attr("ori") )).toFixed(2) );
  210. $("#left-magnify").text( (parseFloat( $("#left-magnify").attr("screen")) / parseFloat( $("#left-magnify").attr("ori") )).toFixed(2) );
  211. if (document.exitFullscreen) {
  212. document.exitFullscreen();
  213. } else if (document.msExitFullscreen) {
  214. document.msExitFullscreen();
  215. } else if (document.mozCancelFullScreen) {
  216. document.mozCancelFullScreen();
  217. } else if (document.webkitExitFullscreen) {
  218. document.webkitExitFullscreen();
  219. }
  220. }
  221. }
  222. $(function() {
  223. /**
  224. * Logic for dropdown filter box and
  225. * pagination navigation
  226. */
  227. $("#hoverMode").click(function() {
  228. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  229. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  230. var zoomConfig = {
  231. zoomWindowPosition: 'demo-container',
  232. zoomWindowHeight: h,
  233. zoomWindowWidth: (w / 3.0),
  234. borderSize: 0
  235. };
  236. if($("#hoverMode").is(':checked')) {
  237. if (parseInt(w) > 1200) {
  238. $("#img-front").ezPlus(zoomConfig);
  239. $("#img-top").ezPlus(zoomConfig);
  240. $("#img-left").ezPlus(zoomConfig);
  241. }
  242. } else {
  243. $('.zoomContainer').remove();
  244. $('.zoomWindowContainer').remove();
  245. }
  246. });
  247. $("#pagination-demo").hide();
  248. $("#filter-dropdown").hide();
  249. $("#dataBtn").click(function() {
  250. $("#pagination-demo").toggle();
  251. $("#filter-dropdown").toggle();
  252. });
  253. $("#overviewBtn").click(function() {
  254. $("#pagination-demo").hide();
  255. $("#filter-dropdown").hide();
  256. });
  257. Handlebars.registerHelper('if_eq', function(a, b, opts) {
  258. if (a == b) {
  259. return opts.fn(this);
  260. } else {
  261. return opts.inverse(this);
  262. }
  263. });
  264. $( ".download" ).click(function(e) {
  265. //console.log("clicked download");
  266. var did = $(this).attr("data-name").trim();
  267. //console.log(did);
  268. e.preventDefault(); //stop the browser from following
  269. window.location.href = 'download?did=' + did;
  270. });
  271. $('#pagination-demo').twbsPagination({
  272. totalPages: 6,
  273. visiblePages: 6,
  274. onPageClick: function (event, page) {
  275. //console.log('Page ' + page);
  276. var filter_type = $('#filterType').find(":selected").val();
  277. var target_url = "getpage?page="+page+"&type="+filter_type;
  278. $.ajax({
  279. url: target_url,
  280. type: 'GET',
  281. success: function (response) {
  282. console.log("Success.", response);
  283. /*
  284. // First set of values
  285. $("#front-number").text( response["data"][0][5]);
  286. $("#top-number").text( response["data"][0][4]);
  287. $("#left-number").text( response["data"][0][3]);
  288. $('#slider-front').slider("option", "max", response["data"][0][5]);
  289. $('#slider-top').slider("option", "max", response["data"][0][4]);
  290. $('#slider-left').slider("option", "max", response["data"][0][3]);
  291. $("#img-front").attr("src", "img?name="+response["data"][0][0]+"&type=front&counter="+ parseInt(response["data"][0][5]/2).toString() );
  292. $("#img-front").data("zoom-image", "img?name="+response["data"][0][0]+"&type=front&counter="+ parseInt(response["data"][0][5]/2).toString() );
  293. $("#img-top").attr("src", "img?name="+response["data"][0][0]+"&type=top&counter="+ parseInt(response["data"][0][4]/2).toString());
  294. $("#img-top").data("zoom-image", "img?name="+response["data"][0][0]+"&type=top&counter="+ parseInt(response["data"][0][4]/2).toString());
  295. $("#img-left").attr("src", "img?name="+response["data"][0][0]+"&type=left&counter="+ parseInt(response["data"][0][3]/2).toString());
  296. $("#img-left").data("zoom-image", "img?name="+response["data"][0][0]+"&type=left&counter="+ parseInt(response["data"][0][3]/2).toString());
  297. $("#slider-front").slider('value', parseInt(response["data"][0][5]/2) );
  298. $("#slider-top").slider('value', parseInt(response["data"][0][4]/2) );
  299. $("#slider-left").slider('value', parseInt(response["data"][0][3]/2) );
  300. */
  301. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  302. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  303. var zoomConfig = {
  304. zoomWindowPosition: 'demo-container',
  305. zoomWindowHeight: h,
  306. zoomWindowWidth: (w / 3.0),
  307. borderSize: 0
  308. };
  309. $('.zoomContainer').remove();
  310. $('.zoomWindowContainer').remove();
  311. if ($("#hoverMode").is(':checked')) {
  312. if (parseInt(w) > 1200) {
  313. $("#img-front").ezPlus(zoomConfig);
  314. $("#img-top").ezPlus(zoomConfig);
  315. $("#img-left").ezPlus(zoomConfig);
  316. $(".info-text").text("Roll over to zoom and click to open fullscreen view");
  317. } else {
  318. $(".info-text").text("Click to open fullscreen view");
  319. }
  320. } else {
  321. $('.zoomContainer').remove();
  322. $('.zoomWindowContainer').remove();
  323. }
  324. //$("#front-magnify").text( (parseFloat($("#img-front").width()) / parseFloat(response["data"][0][9])).toFixed(2) );
  325. $("#front-magnify").attr( "ori", (parseFloat(response["data"][0][9])).toFixed(2) );
  326. $("#front-magnify").attr( "screen", (parseFloat($("#img-front").width())).toFixed(2) );
  327. //$("#top-magnify").text( (parseFloat($("#img-top").width()) / parseFloat(response["data"][0][8])).toFixed(2) );
  328. $("#top-magnify").attr( "ori", (parseFloat(response["data"][0][8])).toFixed(2) );
  329. $("#top-magnify").attr( "screen", (parseFloat($("#img-top").width())).toFixed(2) );
  330. //$("#left-magnify").text( (parseFloat($("#img-left").width()) / parseFloat(response["data"][0][7])).toFixed(2) );
  331. $("#left-magnify").attr( "ori", (parseFloat(response["data"][0][7])).toFixed(2) );
  332. $("#left-magnify").attr( "screen", (parseFloat($("#img-left").width())).toFixed(2) );
  333. for (var i = 0; i< 10; i++) {
  334. // Automatically show the first item
  335. // disabled based on the review
  336. //if (i == 0) {
  337. // $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("show");
  338. //} else {
  339. // $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("hide");
  340. //}
  341. $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("hide");
  342. if (typeof response["data"][i] == 'undefined') {
  343. $("#sidebar-list > li:nth-child("+(i+1)+")").hide();
  344. } else {
  345. var title;
  346. var collection = "unknown";
  347. title = response["data"][i][0];
  348. if (title.indexOf("NMB") !== -1) {
  349. collection = "Natural History Museum of Basel";
  350. } else if (title.indexOf("NRM-PZ") !== -1) {
  351. collection = "Swedish Museum of Natural History";
  352. }
  353. $("#sidebar-list > li:nth-child("+(i+1)+") > a").attr("data-dim", "["+response["data"][i][3]+","+response["data"][i][4]+","+response["data"][i][5]+","+response["data"][i][7]+","+response["data"][i][8]+","+response["data"][i][9]+"]");
  354. var photo_html = "<img width='100%' src='img?name="+title+";type=photo'>";
  355. var volren_html = "<img width='100%' src='img?name="+title+";type=volren'>";
  356. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(1) > td:nth-child(3)").html(photo_html);
  357. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(2) > td:nth-child(3)").html(volren_html);
  358. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(4) > td:nth-child(3)").html(collection);
  359. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(6) > td:nth-child(3) > button").attr("data-name", response["data"][i][0]);
  360. //#sidebar-list > li.active > ul > table > tbody > tr:nth-child(5) > td:nth-child(3)
  361. $("#sidebar-list > li:nth-child("+(i+1)+")").show();
  362. var tmp = "";
  363. var species_type = "unknown";
  364. var first_species_type = "unknown";
  365. for (item in response["data"][i][1]) {
  366. if (response["data"][i][1][item]["type"] == "holo") {
  367. tmp += " <span>"+response["data"][i][1][item]["text"].toLowerCase()+"</span>";
  368. } else if (response["data"][i][1][item]["type"] == "i") {
  369. tmp += "<i>"+response["data"][i][1][item]["text"]+"</i>"
  370. species_type = "<i>" + response["data"][i][1][item]["text"] + "</i>";
  371. if (i == 0) {
  372. first_species_type = "<i>" + response["data"][i][1][item]["text"] + "</i>";
  373. //console.log(first_species_type);
  374. //$("#header-name").html( response["data"][0][0] + "\xa0\xa0\xa0\xa0" + first_species_type);
  375. }
  376. } else {
  377. tmp += response["data"][i][1][item]["text"]
  378. }
  379. }
  380. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(3) > td:nth-child(3)").html(tmp);
  381. // FIRST HEADER
  382. title += "\xa0\xa0\xa0\xa0";
  383. title += species_type;
  384. for (item in response["data"][i][1]) {
  385. if (response["data"][i][1][item]["type"] == "holo") {
  386. title += "&nbsp;&nbsp;<span class='label label-danger'>HOLOTYPE</span>";
  387. }
  388. }
  389. $("#sidebar-list > li:nth-child("+(i+1)+") > a").html(title);
  390. var size = "";
  391. size = response["data"][i][2] + "&nbsp;&nbsp;GB";
  392. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(5) > td:nth-child(3)").html(size);
  393. }
  394. }
  395. },
  396. error: function () {
  397. console.log("Error.")
  398. }
  399. });
  400. }
  401. });
  402. $(".data-pil").click(function() {
  403. $("#info-general").hide();
  404. $("#slider-front").slider("enable");
  405. $("#slider-top").slider("enable");
  406. $("#slider-left").slider("enable");
  407. $("#header-name").html( $(this).html());
  408. var selected_data = $(this).text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  409. selected_data = selected_data[0] + " " + selected_data[1];
  410. var dimension = JSON.parse($(this).attr("data-dim"));
  411. $("#front-number").text(dimension[2]);
  412. $("#top-number").text(dimension[1]);
  413. $("#left-number").text(dimension[0]);
  414. $('#slider-front').slider("option", "max", dimension[2]);
  415. $('#slider-top').slider("option", "max", dimension[1]);
  416. $('#slider-left').slider("option", "max", dimension[0]);
  417. $("#img-front").attr("src", "img?name="+selected_data+"&type=front&counter="+ parseInt((dimension[2]/2)-1).toString() );
  418. $("#img-front").data("zoom-image", "img?name="+selected_data+"&type=front&counter="+ parseInt((dimension[2]/2)-1).toString() );
  419. $("#slider-front").slider('value', parseInt(dimension[2]/2));
  420. $("#front-current-number").val(parseInt(dimension[2]/2));
  421. $("#img-top").attr("src", "img?name="+selected_data+"&type=top&counter="+ parseInt((dimension[1]/2)-1).toString());
  422. $("#img-top").data("zoom-image", "img?name="+selected_data+"&type=top&counter="+ parseInt((dimension[1]/2)-1).toString());
  423. $("#slider-top").slider('value',parseInt(dimension[1]/2));
  424. $("#top-current-number").val(parseInt(dimension[1]/2));
  425. $("#img-left").attr("src", "img?name="+selected_data+"&type=left&counter="+ parseInt((dimension[0]/2)-1).toString());
  426. $("#img-left").data("zoom-image", "img?name="+selected_data+"&type=left&counter="+ parseInt((dimension[0]/2)-1).toString());
  427. $("#slider-left").slider('value',parseInt(dimension[0]/2));
  428. $("#left-current-number").val(parseInt(dimension[0]/2));
  429. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  430. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  431. var zoomConfig = {
  432. zoomWindowPosition: 'demo-container',
  433. //zoomWindowHeight: h,
  434. zoomWindowHeight: (w / 3.0) - 50.0,
  435. zoomWindowWidth: (w / 3.0) - 50.0,
  436. zoomType: "lens",
  437. borderSize: 0
  438. };
  439. $('.zoomContainer').remove();
  440. $('.zoomWindowContainer').remove();
  441. if ($("#hoverMode").is(':checked')) {
  442. if (parseInt(w) > 1200) {
  443. $("#img-front").ezPlus(zoomConfig);
  444. $("#img-top").ezPlus(zoomConfig);
  445. $("#img-left").ezPlus(zoomConfig);
  446. }
  447. } else {
  448. $('.zoomContainer').remove();
  449. $('.zoomWindowContainer').remove();
  450. }
  451. $("#front-magnify").text( (parseFloat($("#img-front").width()) / parseFloat(dimension[5])).toFixed(2) );
  452. $("#top-magnify").text( (parseFloat($("#img-top").width()) / parseFloat(dimension[4])).toFixed(2) );
  453. $("#left-magnify").text( (parseFloat($("#img-left").width()) / parseFloat(dimension[3])).toFixed(2) );
  454. });
  455. /**
  456. * Text field updates
  457. **/
  458. $( "#front-current-number" ).change(function() {
  459. var current_value = $("#front-current-number").val();
  460. var upper_limit = $("#front-number").text();
  461. if (current_value < 1 || current_value > upper_limit) {
  462. return;
  463. }
  464. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  465. selected_data = selected_data[0] + " " + selected_data[1];
  466. $("#img-front").attr("src", "img?name="+selected_data+"&type=front&counter="+current_value);
  467. $("#front-current-number").val(current_value);
  468. $("#slider-front").slider('value', current_value);
  469. });
  470. $( "#top-current-number" ).change(function() {
  471. var current_value = $("#top-current-number").val();
  472. var upper_limit = $("#top-number").text();
  473. if (current_value < 1 || current_value > upper_limit) {
  474. return;
  475. }
  476. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  477. selected_data = selected_data[0] + " " + selected_data[1];
  478. $("#img-top").attr("src", "img?name="+selected_data+"&type=top&counter="+current_value);
  479. $("#top-current-number").val(current_value);
  480. $("#slider-top").slider('value', current_value);
  481. });
  482. $( "#left-current-number" ).change(function() {
  483. var current_value = $("#left-current-number").val();
  484. var upper_limit = $("#left-number").text();
  485. if (current_value < 1 || current_value > upper_limit) {
  486. return;
  487. }
  488. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  489. selected_data = selected_data[0] + " " + selected_data[1];
  490. $("#img-left").attr("src", "img?name="+selected_data+"&type=left&counter="+current_value);
  491. $("#left-current-number").val(current_value);
  492. $("#slider-left").slider('value', current_value);
  493. });
  494. $( "#front-current-number" ).change(function() {
  495. var current_value = $("#front-current-number").val();
  496. var upper_limit = $("#front-number").text();
  497. if (current_value < 1 || current_value > upper_limit) {
  498. return;
  499. }
  500. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  501. selected_data = selected_data[0] + " " + selected_data[1];
  502. $("#img-front").attr("src", "img?name="+selected_data+"&type=front&counter="+current_value);
  503. $("#front-current-number").val(current_value);
  504. });
  505. /**
  506. * Up Down button counter
  507. **/
  508. $("#front-down-counter").click(function() {
  509. var current_value = $("#front-current-number").val();
  510. if (current_value <= 1) {
  511. return;
  512. } else {
  513. current_value -= 1;
  514. }
  515. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  516. selected_data = selected_data[0] + " " + selected_data[1];
  517. $("#img-front").attr("src", "img?name="+selected_data+"&type=front&counter="+current_value);
  518. $("#front-current-number").val(current_value);
  519. var imageUrl = "img?name="+selected_data+"&type=front&counter="+current_value;
  520. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  521. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  522. var zoomConfig = {
  523. zoomWindowPosition: 'demo-container',
  524. zoomWindowHeight: h,
  525. zoomWindowWidth: (w / 3.0),
  526. borderSize: 0
  527. };
  528. var zoomImage = $('#img-front');
  529. $('#img-front-zoomContainer').remove();
  530. // Reinitialize EZ
  531. if (parseInt(w) > 1200) {
  532. zoomImage.attr('src', imageUrl);
  533. zoomImage.data('zoom-image', imageUrl);
  534. if ($("#hoverMode").is(':checked')) {
  535. zoomImage.ezPlus(zoomConfig);
  536. }
  537. }
  538. });
  539. $("#front-up-counter").click(function() {
  540. var current_value = parseInt($("#front-current-number").val());
  541. var upper_limit = $("#front-number").text();
  542. if (current_value >= upper_limit) {
  543. return;
  544. } else {
  545. current_value += 1;
  546. }
  547. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  548. selected_data = selected_data[0] + " " + selected_data[1];
  549. $("#img-front").attr("src", "img?name="+selected_data+"&type=front&counter="+current_value);
  550. $("#front-current-number").val(current_value);
  551. var imageUrl = "img?name="+selected_data+"&type=front&counter="+current_value;
  552. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  553. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  554. var zoomConfig = {
  555. zoomWindowPosition: 'demo-container',
  556. zoomWindowHeight: h,
  557. zoomWindowWidth: (w / 3.0),
  558. borderSize: 0
  559. };
  560. var zoomImage = $('#img-front');
  561. $('#img-front-zoomContainer').remove();
  562. // Reinitialize EZ
  563. if (parseInt(w) > 1200) {
  564. zoomImage.attr('src', imageUrl);
  565. zoomImage.data('zoom-image', imageUrl);
  566. if ($("#hoverMode").is(':checked')) {
  567. zoomImage.ezPlus(zoomConfig);
  568. }
  569. }
  570. });
  571. $("#top-down-counter").click(function() {
  572. var current_value = $("#top-current-number").val();
  573. if (current_value <= 1) {
  574. return;
  575. } else {
  576. current_value -= 1;
  577. }
  578. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  579. selected_data = selected_data[0] + " " + selected_data[1];
  580. $("#img-top").attr("src", "img?name="+selected_data+"&type=top&counter="+current_value);
  581. $("#top-current-number").val(current_value);
  582. var imageUrl = "img?name="+selected_data+"&type=top&counter="+current_value;
  583. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  584. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  585. var zoomConfig = {
  586. zoomWindowPosition: 'demo-container',
  587. zoomWindowHeight: h,
  588. zoomWindowWidth: (w / 3.0),
  589. borderSize: 0
  590. };
  591. var zoomImage = $('#img-top');
  592. $('#img-top-zoomContainer').remove();
  593. // Reinitialize EZ
  594. if (parseInt(w) > 1200) {
  595. zoomImage.attr('src', imageUrl);
  596. zoomImage.data('zoom-image', imageUrl);
  597. if ($("#hoverMode").is(':checked')) {
  598. zoomImage.ezPlus(zoomConfig);
  599. }
  600. }
  601. });
  602. $("#top-up-counter").click(function() {
  603. var current_value = parseInt($("#top-current-number").val());
  604. var upper_limit = $("#top-number").text();
  605. if (current_value >= upper_limit) {
  606. return;
  607. } else {
  608. current_value += 1;
  609. }
  610. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  611. selected_data = selected_data[0] + " " + selected_data[1];
  612. $("#img-top").attr("src", "img?name="+selected_data+"&type=top&counter="+current_value);
  613. $("#top-current-number").val(current_value);
  614. var imageUrl = "img?name="+selected_data+"&type=top&counter="+current_value;
  615. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  616. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  617. var zoomConfig = {
  618. zoomWindowPosition: 'demo-container',
  619. zoomWindowHeight: h,
  620. zoomWindowWidth: (w / 3.0),
  621. borderSize: 0
  622. };
  623. var zoomImage = $('#img-top');
  624. $('#img-top-zoomContainer').remove();
  625. // Reinitialize EZ
  626. if (parseInt(w) > 1200) {
  627. zoomImage.attr('src', imageUrl);
  628. zoomImage.data('zoom-image', imageUrl);
  629. if ($("#hoverMode").is(':checked')) {
  630. zoomImage.ezPlus(zoomConfig);
  631. }
  632. }
  633. });
  634. $("#left-down-counter").click(function() {
  635. var current_value = $("#left-current-number").val();
  636. if (current_value <= 1) {
  637. return;
  638. } else {
  639. current_value -= 1;
  640. }
  641. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  642. selected_data = selected_data[0] + " " + selected_data[1];
  643. $("#img-left").attr("src", "img?name="+selected_data+"&type=left&counter="+current_value);
  644. $("#left-current-number").val(current_value);
  645. var imageUrl = "img?name="+selected_data+"&type=left&counter="+current_value;
  646. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  647. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  648. var zoomConfig = {
  649. zoomWindowPosition: 'demo-container',
  650. zoomWindowHeight: h,
  651. zoomWindowWidth: (w / 3.0),
  652. borderSize: 0
  653. };
  654. var zoomImage = $('#img-left');
  655. $('#img-left-zoomContainer').remove();
  656. // Reinitialize EZ
  657. if (parseInt(w) > 1200) {
  658. zoomImage.attr('src', imageUrl);
  659. zoomImage.data('zoom-image', imageUrl);
  660. if ($("#hoverMode").is(':checked')) {
  661. zoomImage.ezPlus(zoomConfig);
  662. }
  663. }
  664. });
  665. $("#left-up-counter").click(function() {
  666. var current_value = parseInt($("#left-current-number").val());
  667. var upper_limit = $("#left-number").text();
  668. if (current_value >= upper_limit) {
  669. return;
  670. } else {
  671. current_value += 1;
  672. }
  673. var selected_data = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  674. selected_data = selected_data[0] + " " + selected_data[1];
  675. $("#img-left").attr("src", "img?name="+selected_data+"&type=left&counter="+current_value);
  676. $("#left-current-number").val(current_value);
  677. var imageUrl = "img?name="+selected_data+"&type=left&counter="+current_value;
  678. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  679. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  680. var zoomConfig = {
  681. zoomWindowPosition: 'demo-container',
  682. zoomWindowHeight: h,
  683. zoomWindowWidth: (w / 3.0),
  684. borderSize: 0
  685. };
  686. var zoomImage = $('#img-left');
  687. $('#img-left-zoomContainer').remove();
  688. // Reinitialize EZ
  689. if (parseInt(w) > 1200) {
  690. zoomImage.attr('src', imageUrl);
  691. zoomImage.data('zoom-image', imageUrl);
  692. if ($("#hoverMode").is(':checked')) {
  693. zoomImage.ezPlus(zoomConfig);
  694. }
  695. }
  696. });
  697. $("#slider-front").slider({
  698. range: "max",
  699. min: 1,
  700. max: parseInt($("#front-number").text()),
  701. value: 1553,
  702. stop: function(event, ui) {
  703. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  704. name = name[0] + " " + name[1];
  705. var imageUrl = "img?name="+name+"&type=front&counter="+(ui.value-1);
  706. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  707. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  708. $("#img-front").attr("src", "img?name="+name+"&type=front&counter="+(ui.value-1));
  709. var zoomConfig = {
  710. zoomWindowPosition: 'demo-container',
  711. zoomWindowHeight: h,
  712. zoomWindowWidth: (w / 3.0) - 50.0,
  713. borderSize: 0
  714. };
  715. var zoomImage = $('#img-front');
  716. $('#img-front-zoomContainer').remove();
  717. //$('.zoomWindowContainer').remove();
  718. //$('.zoomContainer').remove();
  719. // Reinitialize EZ
  720. if (parseInt(w) > 1200) {
  721. zoomImage.attr('src', imageUrl);
  722. zoomImage.data('zoom-image', imageUrl);
  723. if ($("#hoverMode").is(':checked')) {
  724. zoomImage.ezPlus(zoomConfig);
  725. }
  726. //$("#img-top").ezPlus(zoomConfig);
  727. //$("#img-left").ezPlus(zoomConfig);
  728. }
  729. },
  730. slide: function( event, ui ) {
  731. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  732. name = name[0] + " " + name[1];
  733. $("#img-front").attr("src", "img?name="+name+"&type=front-resized&counter="+(ui.value-1));
  734. $("#front-current-number").val(ui.value);
  735. }
  736. });
  737. $("#slider-top").slider({
  738. range: "max",
  739. min: 1,
  740. max: parseInt($("#top-number").text()),
  741. value: 645,
  742. stop: function(event, ui) {
  743. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  744. name = name[0] + " " + name[1];
  745. var imageUrl = "img?name="+name+"&type=top&counter="+(ui.value-1);
  746. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  747. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  748. $("#img-top").attr("src", "img?name="+name+"&type=top&counter="+(ui.value-1));
  749. var zoomConfig = {
  750. zoomWindowPosition: 'demo-container',
  751. zoomWindowHeight: h,
  752. zoomWindowWidth: (w / 3.0),
  753. borderSize: 0
  754. };
  755. var zoomImage = $('#img-top');
  756. $('#img-top-zoomContainer').remove();
  757. //$('.zoomWindowContainer').remove();
  758. //$('.zoomContainer').remove();
  759. // Reinitialize EZ
  760. if (parseInt(w) > 1200) {
  761. zoomImage.attr('src', imageUrl);
  762. zoomImage.data('zoom-image', imageUrl);
  763. if ($("#hoverMode").is(':checked')) {
  764. zoomImage.ezPlus(zoomConfig);
  765. }
  766. }
  767. },
  768. slide: function( event, ui ) {
  769. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  770. name = name[0] + " " + name[1];
  771. $("#img-top").attr("src", "img?name="+name+"&type=top-resized&counter="+(ui.value-1));
  772. $("#top-current-number").val(ui.value);
  773. }
  774. });
  775. $("#slider-left").slider({
  776. range: "max",
  777. min: 1,
  778. max: parseInt($("#left-number").text()),
  779. value: 580,
  780. stop: function(event, ui) {
  781. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  782. name = name[0] + " " + name[1];
  783. var imageUrl = "img?name="+name+"&type=left&counter="+(ui.value-1);
  784. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  785. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  786. $("#img-left").attr("src", "img?name="+name+"&type=left&counter="+(ui.value-1));
  787. var zoomConfig = {
  788. zoomWindowPosition: 'demo-container',
  789. zoomWindowHeight: h,
  790. zoomWindowWidth: (w / 3.0),
  791. borderSize: 0
  792. };
  793. var zoomImage = $('#img-left');
  794. $('#img-left-zoomContainer').remove();
  795. //$('.zoomWindowContainer').remove();
  796. //$('.zoomContainer').remove();
  797. // Reinitialize EZ
  798. if (parseInt(w) > 1200) {
  799. zoomImage.attr('src', imageUrl);
  800. zoomImage.data('zoom-image', imageUrl);
  801. if ($("#hoverMode").is(':checked')) {
  802. zoomImage.ezPlus(zoomConfig);
  803. }
  804. }
  805. },
  806. slide: function( event, ui ) {
  807. var name = $("#header-name").text().split(/(\s+)/).filter( function(e) { return e.trim().length > 0; } );
  808. name = name[0] + " " + name[1];
  809. $("#img-left").attr("src", "img?name="+name+"&type=left-resized&counter="+(ui.value-1));
  810. $("#left-current-number").val(ui.value);
  811. }
  812. });
  813. //$("#slider-front").slider("disable");
  814. //$("#slider-top").slider("disable");
  815. //$("#slider-left").slider("disable");
  816. //remember to listen for the image's load event before assigning a source
  817. $("#img-front").on('load', function(){
  818. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  819. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  820. if ($("#hoverMode").is(':checked')) {
  821. if (parseInt(w) > 1200) {
  822. $("#img-front").ezPlus({
  823. zoomWindowPosition: 'demo-container',
  824. zoomWindowHeight: h,
  825. zoomWindowWidth: (w / 3.0),
  826. borderSize: 0
  827. });
  828. }
  829. }
  830. });
  831. $("#img-top").on('load', function(){
  832. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  833. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  834. if ($("#hoverMode").is(':checked')) {
  835. if (parseInt(w) > 1200) {
  836. $("#img-top").ezPlus({
  837. zoomWindowPosition: 'demo-container',
  838. zoomWindowHeight: h,
  839. zoomWindowWidth: (w / 3.0),
  840. borderSize: 0
  841. });
  842. }
  843. }
  844. });
  845. $("#img-left").on('load', function(){
  846. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  847. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  848. if ($("#hoverMode").is(':checked')) {
  849. if (parseInt(w) > 1200) {
  850. $("#img-left").ezPlus({
  851. zoomWindowPosition: 'demo-container',
  852. zoomWindowHeight: h,
  853. zoomWindowWidth: (w / 3.0),
  854. borderSize: 0
  855. });
  856. }
  857. }
  858. });
  859. $('#filterType').on('change', function() {
  860. //console.log(this.value);
  861. page = 1
  862. var filter_type = $('#filterType').find(":selected").val();
  863. var target_url = "getpage?page="+page+"&type="+filter_type;
  864. $.ajax({
  865. url: target_url,
  866. type: 'GET',
  867. success: function (response) {
  868. console.log("Success.", response);
  869. $("#pagination-demo").twbsPagination('destroy');
  870. $('#pagination-demo').twbsPagination({
  871. totalPages: response["total_pages"],
  872. visiblePages: 6,
  873. onPageClick: function (event, page) {
  874. var filter_type = $('#filterType').find(":selected").val();
  875. var target_url = "getpage?page="+page+"&type="+filter_type;
  876. $.ajax({
  877. url: target_url,
  878. type: 'GET',
  879. success: function (response) {
  880. console.log("Success.", response);
  881. /*
  882. $("#front-number").text( response["data"][0][5]);
  883. $("#top-number").text( response["data"][0][4]);
  884. $("#left-number").text( response["data"][0][3]);
  885. $('#slider-front').slider("option", "max", response["data"][0][5]);
  886. $('#slider-top').slider("option", "max", response["data"][0][4]);
  887. $('#slider-left').slider("option", "max", response["data"][0][3]);
  888. $("#img-front").attr("src", "img?name="+response["data"][0][0]+"&type=front-resized&counter=0");
  889. $("#img-front").data("zoom-image", "img?name="+response["data"][0][0]+"&type=front&counter=0");
  890. $("#img-top").attr("src", "img?name="+response["data"][0][0]+"&type=top-resized&counter=0");
  891. $("#img-top").data("zoom-image", "img?name="+response["data"][0][0]+"&type=top&counter=0");
  892. $("#img-left").attr("src", "img?name="+response["data"][0][0]+"&type=left-resized&counter=0");
  893. $("#img-left").data("zoom-image", "img?name="+response["data"][0][0]+"&type=left&counter=0");
  894. */
  895. $("#slider-front").slider('value', 1);
  896. $("#slider-top").slider('value', 1);
  897. $("#slider-left").slider('value', 1);
  898. var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  899. var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
  900. var zoomConfig = {
  901. zoomWindowPosition: 'demo-container',
  902. zoomWindowHeight: h,
  903. zoomWindowWidth: (w / 3.0),
  904. borderSize: 0
  905. };
  906. $('.zoomContainer').remove();
  907. $('.zoomWindowContainer').remove();
  908. if ($("#hoverMode").is(':checked')) {
  909. if (parseInt(w) > 1200) {
  910. $("#img-front").ezPlus(zoomConfig);
  911. $("#img-top").ezPlus(zoomConfig);
  912. $("#img-left").ezPlus(zoomConfig);
  913. $(".info-text").text("Roll over to zoom and click to open fullscreen view");
  914. } else {
  915. $(".info-text").text("Click to open fullscreen view");
  916. }
  917. } else {
  918. $('.zoomContainer').remove();
  919. $('.zoomWindowContainer').remove();
  920. }
  921. //$("#front-magnify").text( (parseFloat($("#img-front").width()) / parseFloat(response["data"][0][9])).toFixed(2) );
  922. $("#front-magnify").attr( "ori", (parseFloat(response["data"][0][9])).toFixed(2) );
  923. $("#front-magnify").attr( "screen", (parseFloat($("#img-front").width())).toFixed(2) );
  924. //$("#top-magnify").text( (parseFloat($("#img-top").width()) / parseFloat(response["data"][0][8])).toFixed(2) );
  925. $("#top-magnify").attr( "ori", (parseFloat(response["data"][0][8])).toFixed(2) );
  926. $("#top-magnify").attr( "screen", (parseFloat($("#img-top").width())).toFixed(2) );
  927. //$("#left-magnify").text( (parseFloat($("#img-left").width()) / parseFloat(response["data"][0][7])).toFixed(2) );
  928. $("#left-magnify").attr( "ori", (parseFloat(response["data"][0][7])).toFixed(2) );
  929. $("#left-magnify").attr( "screen", (parseFloat($("#img-left").width())).toFixed(2) );
  930. i
  931. for (var i = 0; i< 10; i++) {
  932. //if (i == 0) {
  933. // $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("show");
  934. //} else {
  935. // $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("hide");
  936. //}
  937. $("#sidebar-list > li:nth-child("+(i+1)+") > ul").collapse("hide");
  938. if (typeof response["data"][i] == 'undefined') {
  939. $("#sidebar-list > li:nth-child("+(i+1)+")").hide();
  940. } else {
  941. var title;
  942. var collection = "unknown";
  943. title = response["data"][i][0];
  944. //console.log(title);
  945. if (title.indexOf("NMB") !== -1) {
  946. collection = "Natural History Museum of Basel";
  947. } else if (title.indexOf("NRM-PZ") !== -1) {
  948. collection = "Swedish Museum of Natural History";
  949. }
  950. $("#sidebar-list > li:nth-child("+(i+1)+") > a").attr("data-dim", "["+response["data"][i][3]+","+response["data"][i][4]+","+response["data"][i][5]+","+response["data"][i][7]+","+response["data"][i][8]+","+response["data"][i][9]+"]");
  951. var photo_html = "<img width='100%' src='img?name="+title+";type=photo'>";
  952. var volren_html = "<img width='100%' src='img?name="+title+";type=volren'>";
  953. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(1) > td:nth-child(3)").html(photo_html);
  954. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(2) > td:nth-child(3)").html(volren_html);
  955. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(4) > td:nth-child(3)").html(collection);
  956. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(6) > td:nth-child(3) > button").attr("data-name", response["data"][i][0]);
  957. $("#sidebar-list > li:nth-child("+(i+1)+")").show();
  958. var tmp = "";
  959. var species_type = "unknown";
  960. //var first_species_type = "unknown";
  961. for (item in response["data"][i][1]) {
  962. if (response["data"][i][1][item]["type"] == "holo") {
  963. tmp += " <span>"+response["data"][i][1][item]["text"].toLowerCase()+"</span>";
  964. } else if (response["data"][i][1][item]["type"] == "i") {
  965. tmp += "<i>"+response["data"][i][1][item]["text"]+"</i>"
  966. species_type = "<i>" + response["data"][i][1][item]["text"] + "</i>";
  967. if (i == 0) {
  968. first_species_type = "<i>" + response["data"][i][1][item]["text"] + "</i>";
  969. }
  970. } else {
  971. tmp += response["data"][i][1][item]["text"]
  972. }
  973. }
  974. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(3) > td:nth-child(3)").html(tmp);
  975. //$("#header-name").html( response["data"][0][0] + "\xa0\xa0\xa0\xa0" + first_species_type);
  976. title += "\xa0\xa0\xa0\xa0";
  977. title += species_type;
  978. for (item in response["data"][i][1]) {
  979. if (response["data"][i][1][item]["type"] == "holo") {
  980. title += "&nbsp;&nbsp;<span class='label label-danger'>HOLOTYPE</span>";
  981. }
  982. }
  983. $("#sidebar-list > li:nth-child("+(i+1)+") > a").html(title);
  984. var size = "";
  985. size = response["data"][i][2] + "&nbsp;&nbsp;GB";
  986. $("#sidebar-list > li:nth-child("+(i+1)+") > ul > table > tbody > tr:nth-child(5) > td:nth-child(3)").html(size);
  987. }
  988. }
  989. },
  990. error: function () {
  991. console.log("Error.")
  992. }
  993. });
  994. }
  995. });
  996. },
  997. error: function () {
  998. console.log("Error.")
  999. }
  1000. });
  1001. /*
  1002. $("#pagination-demo").twbsPagination('destroy');
  1003. $('#pagination-demo').twbsPagination({
  1004. totalPages: 35,
  1005. visiblePages: 7,
  1006. onPageClick: function (event, page) {
  1007. console.log('Page ' + page);
  1008. }
  1009. });
  1010. */
  1011. });
  1012. });