person_farm.html 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381
  1. {% load staticfiles %}
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  8. <title>{{garden.name}}</title>
  9. <link rel="stylesheet" href="{% static '/lib/css/swiper.min.css' %}">
  10. <link rel="stylesheet" href="{% static '/lib/font/fontIcon/iconfont.css' %}">
  11. <link rel="stylesheet" href="{% static '/lib/font-awesome/4.5.0/css/font-awesome.css' %}">
  12. <link rel="stylesheet" href="{% static '/lib/css/video-js.min.css' %}">
  13. <link rel="stylesheet" href="https://api.map.baidu.com/library/SearchInfoWindow/1.5/src/SearchInfoWindow_min.css" />
  14. <link rel="stylesheet" href="{% static '/lib/css/reset.css' %}">
  15. <link rel="stylesheet" href="{% static '/css/common.css' %}">
  16. <link rel="stylesheet" href="{% static '/css/farmHomePage.css' %}">
  17. </head>
  18. <body>
  19. <div class="header">
  20. <div class="headerTxt">
  21. <div class="wrapper">
  22. <p class="logoNameCn">{{garden.name}}</p>
  23. <p class="logoNameEn">Leisure agricultural tourism network</p>
  24. </div>
  25. </div>
  26. <!-- 轮播 -->
  27. <div class="sliderBox advImg">
  28. <div class="swiper-container banner">
  29. <div class="swiper-wrapper">
  30. <div class="swiper-slide slider1"></div>
  31. <div class="swiper-slide slider2"></div>
  32. <div class="swiper-slide slider3"></div>
  33. </div>
  34. <div class="swiper-pagination"></div>
  35. </div>
  36. </div>
  37. </div>
  38. <!-- 主体部分 -->
  39. <div class="content">
  40. <div class="wrapper">
  41. <!-- 新闻资讯、登录 -->
  42. <div class="floatDiv">
  43. <div class="baseInfo">
  44. <div class="captionBox">
  45. <h2 class="captionTxt txtColor">
  46. <span>农场基地信息</span>
  47. </h2>
  48. <p class="captionTxtEn txtColor">FARM BASIC INFORMATION</p>
  49. </div>
  50. <!-- 农场基地简介 -->
  51. <div class="">
  52. <div class="farmInfo">
  53. <p>联系方式:{{garden.mobile}}</p>
  54. <p>负责人:{{garden.manage}}</p>
  55. <p>农场占地:{{garden.area}}亩</p>
  56. <p>农场地址:{{garden.addr}}</p>
  57. </div>
  58. <div class="farmSite">
  59. <div id="map"></div>
  60. </div>
  61. <input type="hidden" id="gardenLocation" value="{{garden.location}}">
  62. </div>
  63. </div>
  64. <!-- 农场介绍 -->
  65. <div class="farmShow">
  66. <div class="captionBox">
  67. <h2 class="captionTxt txtColor">
  68. <span>农场简介</span>
  69. </h2>
  70. <p class="captionTxtEn txtColor">FARM PROFILES</p>
  71. </div>
  72. <!-- 介绍 -->
  73. <div>
  74. <div class="floatDiv intro">
  75. <div class="swiperDiv">
  76. <!-- 图片集 -->
  77. <input type="hidden" id="gardenImgs" value="{{garden.img}}">
  78. <div class="swiper-container photos">
  79. <div class="swiper-wrapper" id="gardenSwiper">
  80. <!-- <div class="swiper-slide">
  81. <img src="{% static '/imgs/dorm/dorm1.jpg' %}" alt="">
  82. </div> -->
  83. </div>
  84. <div class="swiper-button-next"></div>
  85. <div class="swiper-button-prev"></div>
  86. </div>
  87. </div>
  88. <div class="magnifyDiv"></div>
  89. <div class="introTxt">{{garden.desc}}</div>
  90. </div>
  91. </div>
  92. </div>
  93. </div>
  94. <!-- 农场公告+视频公告 -->
  95. <div class="floatDiv">
  96. <!-- 农场公告 -->
  97. <div class="farmNewsNotice">
  98. <div class="captionBox">
  99. <h2 class="captionTxt txtColor">
  100. <span>农场公告</span>
  101. </h2>
  102. <p class="captionTxtEn txtColor">FARM PROFILES</p>
  103. </div>
  104. <div class="floatDiv">
  105. <!-- 滚动 -->
  106. <div class="newsListDiv" id="newsListDiv">
  107. <ul class="newsList">
  108. {% if news|length %} {% for newsitem in news %}
  109. <li>
  110. <div class="date">
  111. {{newsitem.upl_time|date:"Y-m-d"}}
  112. </div>
  113. <div class="describe">
  114. <a href="news_view?id={{newsitem.id}}" target="_blank">{{newsitem.title}}</a>
  115. </div>
  116. </li>
  117. {% endfor %} {% else %}
  118. <li>
  119. <div style="text-align:center;line-height:200px;font-size:18px">暂无数据</div>
  120. </li>
  121. {% endif %}
  122. </ul>
  123. </div>
  124. </div>
  125. </div>
  126. <div class="farmVideoNotice">
  127. <div class="captionBox">
  128. <h2 class="captionTxt txtColor">
  129. <span>视频公告</span>
  130. </h2>
  131. <p class="captionTxtEn txtColor">FARM PROFILES</p>
  132. </div>
  133. <div>
  134. <div class="floatDiv">
  135. {% if video|length %}
  136. {% for videoitem in video %}
  137. {% if forloop.first%}
  138. <div class="videoBox">
  139. <video id="my-video" class="video-js" preload="auto" controls width="360" height="233" poster="{{videoitem.video_img}}"
  140. data-setup="{}">
  141. <!--preload="auto"-->
  142. <source src="{{videoitem.video_url}}" type="video/mp4">
  143. <source src="{{videoitem.video_url}}" type="video/webm">
  144. <source src="{{videoitem.video_url}}" type="video/ogg">
  145. <p class="vjs-no-js">要查看此视频,请启用JavaScript,并考虑升级到一个web浏览器
  146. <a href="http://videojs.com/html5-video-support/" target="_blank">支持HTML5视频</a>
  147. </p>
  148. </video>
  149. </div>
  150. <div class="videoBoxTxt">
  151. <h2>{{videoitem.title}}</h2>
  152. <div>{{videoitem.intro}}</div>
  153. <div class="moreBtn">
  154. <a target="_blank" href="video_list?page=1">MORE &gt;</a>
  155. </div>
  156. </div>
  157. {% endif %}{% endfor %}{% else %}
  158. <p style="text-align:center;line-height:200px;font-size:18px">暂无数据</p>
  159. {% endif %}
  160. </div>
  161. </div>
  162. </div>
  163. </div>
  164. <!-- 产品展厅 -->
  165. <div>
  166. <div class="captionBox">
  167. <h2 class="captionTxt">
  168. <span>产品</span>
  169. <span class="txtColor">展厅</span>
  170. </h2>
  171. <p class="captionTxtEn">EXHIBITION HALL THE PRODUCTS</p>
  172. <div class="captionCutLine"></div>
  173. <div class="moreBtn">
  174. <a href="equip_show_list?page=1" target="_blank">MORE ></a>
  175. </div>
  176. </div>
  177. <div class="productShow">
  178. <ul class="productShowUl">
  179. {% if product|length %}
  180. {% for etp in product %}
  181. {% if forloop.counter < 9 %}
  182. <li>
  183. <a href="equip_show_detail?id={{etp.id}}" target="_black">
  184. <div class="productItem">
  185. <img src="{{ etp.head_img }}" alt="">
  186. <div class="maskBox">
  187. <p>产品名称:{{ etp.title}}</p>
  188. <p>生产企业:{{ etp.intro}}</p>
  189. <p>联系电话:{{ etp.mobile}}</p>
  190. </div>
  191. </div>
  192. </a>
  193. </li>
  194. {% endif %}{% endfor %}{% else %}
  195. <li style="width:100%">
  196. <div style="text-align:center;line-height:200px;font-size:18px">暂无数据</div>
  197. </li>
  198. {% endif %}
  199. <!-- <li>
  200. <div class="productItem">
  201. <img src="{% static '/imgs/fruit/fruit2.jpg' %}" alt="">
  202. <div class="maskBox">
  203. <p>产品名称:苹果</p>
  204. <p>产品介绍:苹果,是水果中的一种,是蔷薇科苹果亚科苹果属植物,其树为落叶乔木。</p>
  205. <p>生产企业:XXXX有限公司</p>
  206. <p>联系电话:13811111111</p>
  207. </div>
  208. </div>
  209. </li> -->
  210. </ul>
  211. </div>
  212. </div>
  213. </div>
  214. </div>
  215. <!-- 底部版权 -->
  216. <div class="footer bjColor">
  217. <div class="wrapper">
  218. <div class="floatDiv">
  219. <div class="copyrightTxt">
  220. <div>休闲农业旅游网</div>
  221. <div>联系人:李四  联系电话:13811111111</div>
  222. <div>地址:河南省郑州市XXXXXXXXXXXXXXXXXXXXXXXXXX</div>
  223. </div>
  224. <div class="WeChatCode">
  225. <img src="{% static '/imgs/WeChatCode.jpg' %}" alt="">
  226. <p>关注公众号</p>
  227. </div>
  228. </div>
  229. <div class="copyright">
  230. 版权所有XXXXXXXXXXXXXXXXXXXXXX
  231. </div>
  232. </div>
  233. </div>
  234. <!-- 返回顶部 -->
  235. <div id="back2top" class="back2top" style="display: block;">
  236. <a href="javascript:void(0);" onclick="goUp()" title="返回顶部">&nbsp;</a>
  237. </div>
  238. <script src="{% static '/lib/js/jquery-2.1.4.min.js'%}"></script>
  239. <script src="{% static '/lib/js/swiper.min.js'%}"></script>
  240. <script src="{% static '/lib/js/video.min.js'%}"></script>
  241. <script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=EpbgpqakDpXGN9E3ejg6e93ffsi83b0t"></script>
  242. <!-- <script src="{% static '/js/index.js'%}"></script> -->
  243. <script>
  244. // 轮播
  245. var banner = new Swiper('.banner', {
  246. autoplay: true,//可选选项,自动滑动
  247. loop: true,
  248. pagination: {
  249. el: '.swiper-pagination',
  250. clickable: true,
  251. },
  252. })
  253. var gardenImg = $('#gardenImgs').val();
  254. if(gardenImg){
  255. var gardenImgArr = gardenImg.split(',');
  256. }else{
  257. var gardenImgArr = [];
  258. }
  259. if(gardenImgArr.length){
  260. $('.magnifyDiv').append('<img />')
  261. var html = '';
  262. for(var i = 0;i<gardenImgArr.length;i++){
  263. html += '<div class="swiper-slide"><img src="http://127.0.0.1:8000/'+gardenImgArr[i]+'" alt=""></div>';
  264. if(i == gardenImgArr.length-1){
  265. $('#gardenSwiper').html(html);
  266. // console.log(html)
  267. var swiper = new Swiper('.photos', {
  268. direction: 'vertical',
  269. slidesPerView: 3,
  270. // centeredSlides: true,
  271. // loop: true,
  272. navigation: {
  273. nextEl: '.swiper-button-next',
  274. prevEl: '.swiper-button-prev',
  275. },
  276. on: {
  277. slideChange: function () {
  278. // console.log(this)
  279. },
  280. click: function () {
  281. console.log(this);
  282. console.log(this.clickedSlide);
  283. if(this.clickedSlide){
  284. var path = $(this.clickedSlide).find('img').attr('src');
  285. $('.magnifyDiv img').attr('src', path);
  286. $('.swiper-slide').find('img').css('border', 'none');
  287. $(this.clickedSlide).find('img').css('border', '4px solid #3eb04f');
  288. }
  289. },
  290. },
  291. });
  292. $('#gardenSwiper .swiper-slide').eq(0).find('img').css('border', '4px solid #3eb04f');
  293. $('.magnifyDiv img').attr('src', $('#gardenSwiper .swiper-slide').eq(0).find('img').attr('src'));
  294. }
  295. }
  296. }
  297. // 百度地图API功能
  298. var map = new BMap.Map("map", { minZoom: 5 }); //BMAP_SATELLITE_MAP 卫星地图
  299. map.centerAndZoom(new BMap.Point(113.43797, 34.164943), 14);
  300. map.enableScrollWheelZoom(true);
  301. var geoc = new BMap.Geocoder();
  302. var gardenLocation = $('#gardenLocation').val();
  303. var locationArr = gardenLocation.split(',');
  304. getMapSite(locationArr[0], locationArr[1]);
  305. function getMapSite(lng, lat) {
  306. map.clearOverlays();
  307. var point = new BMap.Point(lng, lat);
  308. var marker = new BMap.Marker(point); // 创建标注
  309. map.centerAndZoom(point);
  310. map.centerAndZoom(point, 14);
  311. map.addOverlay(marker); // 将标注添加到地图中
  312. marker.setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画
  313. }
  314. // 返回顶部
  315. function goUp() {
  316. $('body,html').animate({ scrollTop: 0 }, 300)
  317. }
  318. function show() {
  319. $(window).scroll(function () {
  320. if ($(window).scrollTop() > 100) {
  321. $("#back2top").fadeIn(100);
  322. } else {
  323. $("#back2top").fadeOut(100);
  324. }
  325. });
  326. }
  327. show();
  328. // 新闻资讯滚动
  329. function Roll(ele, time) {
  330. var obj = document.getElementById(ele);
  331. var ul = obj.children;
  332. var li = ul[0].children;
  333. console.log(li)
  334. var t;
  335. if (time) {
  336. var time = time;
  337. } else {
  338. var time = 2500;
  339. }
  340. t = setInterval(function () {
  341. $(li).eq(0).slideUp(function () {
  342. $(ul).append($(li).eq(0));
  343. });
  344. $(li).show();
  345. }, time);
  346. $(ul).on('mouseenter', 'li', function () {
  347. clearInterval(t)
  348. })
  349. $(ul).on('mouseleave', 'li', function () {
  350. t = setInterval(function () {
  351. $(li).eq(0).slideUp(function () {
  352. $(ul).append($(li).eq(0));
  353. });
  354. $(li).show();
  355. }, time);
  356. })
  357. }
  358. Roll('newsListDiv', 2000)
  359. </script>
  360. </body>
  361. </html>