plant-recommendations.php 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <title>[[*longtitle]] | [[++site_name]]</title>
  5. <base href="[[!++site_url]]">
  6. <meta charset="[[++modx_charset]]">
  7. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
  8. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  9. <meta name="keywords" content="[[*introtext]]">
  10. <meta name="description" content="[[*description]]">
  11. <link rel="icon" href="client-assets/images/favicon.ico?v=2" type="image/x-icon"> [[!Profile]]
  12. <script type="text/javascript">
  13. window.dataLayer = window.dataLayer || [];
  14. function gtag() {
  15. dataLayer.push(arguments);
  16. }
  17. gtag('js', new Date());
  18. gtag('set', {
  19. 'user_id': '[[+modx.user.id]]'
  20. }); // Set the user ID using signed-in user_id.
  21. gtag('config', 'UA-133963301-1');
  22. </script>
  23. <link href="https://cdn.jsdelivr.net/npm/simple-datatables@latest/dist/style.css" rel="stylesheet" />
  24. <link href="client-assets/css/dashboard-2021.css" rel="stylesheet" />
  25. <script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/js/all.min.js" crossorigin="anonymous"></script>
  26. <link href="https://cdn.datatables.net/1.10.20/css/dataTables.bootstrap4.min.css" rel="stylesheet" crossorigin="anonymous" />
  27. <script src="client-assets/js/skycons.js"></script>
  28. <style>
  29. .btn-append {
  30. color: #495057;
  31. background-color: #e9ecef;
  32. border: 1px solid #ced4da;
  33. }
  34. .footer {
  35. position: absolute;
  36. bottom: 0;
  37. width: 100%;
  38. height: 60px;
  39. line-height: 60px;
  40. }
  41. </style>
  42. </head>
  43. <body class="sb-nav-fixed" id="page-top">
  44. [[!Personalize?
  45. &yesChunk=`navHeaderLogged`
  46. &noChunk=`navHeader`
  47. &allowedGroups=`basicClients,bacicAdmin,companyClients,companyManagers`
  48. ]]
  49. <div id="layoutSidenav">
  50. <div id="layoutSidenav_nav">
  51. <!-- Sidebar -->
  52. [[Wayfinder?
  53. &startId=`2`
  54. &displayStart=`0`
  55. &startitemTpl=`startitemTpl`
  56. &selfClass=`show`
  57. &level=`2`
  58. &outerTpl=`outer`
  59. &outerClass=`sb-sidenav accordion sb-sidenav-dark`
  60. &rowTpl=`row`
  61. &rowClass=`nav-link`
  62. &parentRowTpl=`parentRow`
  63. &parentClass=`nav-link collapsed`
  64. &innerTpl=`inner`
  65. &innerClass=`collapse`
  66. &innerRowTpl=`secondInner`
  67. &innerRowClass=`nav-link`
  68. ]]
  69. </div>
  70. <div id="layoutSidenav_content">
  71. <main>
  72. <div class="container-fluid px-4">
  73. <h1 class="mt-4">[[*pagetitle]]</h1>
  74. <ol class="breadcrumb mb-4"> [[$dash-breadcrumbs]] </ol>
  75. <div class="row">
  76. <div class="container-fluid">
  77. <div class="grid-form">
  78. <!---->
  79. <div class="grid-form1">
  80. <h3>Plant Analysis</h3>
  81. <p>Variables used in Plant Analysis recommendation programs.</p>
  82. <div class="tab-content">
  83. <!-- Company Product list here -->
  84. <?php
  85. error_reporting(E_ALL);
  86. ini_set('display_errors', 1);
  87. $result = null;
  88. $modx_user = $modx->user->get('id');
  89. /* Database connection */
  90. //$con = mysqli_connect("localhost", "root", "R3M0T31", "cropmonitor");
  91. $con = mysqli_connect("localhost", "cropmonitor", "brvnCcaEYxlPCS3", "cropmonitor");
  92. /* Check Database Connection */
  93. if (mysqli_connect_errno()) {
  94. printf("Connect failed: %s\n", mysqli_connect_error());
  95. exit();
  96. }
  97. /* Image Insert for Plant Identification */
  98. if(isset($_POST["insert"]))
  99. {
  100. $file = addslashes(file_get_contents($_FILES["image"]["tmp_name"]));
  101. $query = "INSERT INTO plant_images(name) VALUES ('$file')";
  102. if(mysqli_query($con, $query))
  103. {
  104. echo '<script>alert("Image saved")</script>';
  105. }
  106. }
  107. ?>
  108. <div class="container-fluid">
  109. <div class="row">
  110. <div class="form-group col-4">
  111. <select id="plant" class="form-control">
  112. <option value="" selected="selected">Select Plant Type</option>
  113. <?php
  114. $sql = "SELECT DISTINCT `plant_type` FROM `plant_specifications` WHERE `modx_user_id` = " . $modx_user . " ORDER BY `plant_type` ASC; ";
  115. $resultset = mysqli_query($con, $sql) or die("database error:". mysqli_error($con));
  116. while( $rows = mysqli_fetch_assoc($resultset) ) {
  117. ?>
  118. <option value="<?php echo $rows["plant_type"]; ?>" "><?php echo $rows["plant_type"]; ?></option>
  119. <?php $plant = $rows["plant_type"]; } ?>
  120. </select>
  121. </div>
  122. </div>
  123. <div class="row" id="show_product"></div>
  124. <hr>
  125. <div class="row">
  126. <div class="col">
  127. <div class="row">
  128. <p>Nutrient Requirements</p>
  129. </div>
  130. <div class="row">
  131. <div class="col border border-success">
  132. <!-- Show Selected Plant Data Script -->
  133. <script type="text/javascript">
  134. $(document).ready(function(){
  135. // code to get all records from table via select box
  136. $("#plant").change(function() {
  137. var plant = $(this).find(":selected").val();
  138. $.ajax({
  139. url: '[[~89]]',
  140. type: "POST",
  141. data: 'empid='+ plant,
  142. success: function(data) {
  143. $('#show_product').html(data);
  144. }
  145. });
  146. })
  147. });
  148. </script>
  149. </div>
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. <!-- Update Values Script -->
  155. <script type="text/javascript">
  156. function showEdit(editableObj) {
  157. $(editableObj).css("background", "#97e499");
  158. }
  159. function updateDatabase(editableObj, column, id) {
  160. $(editableObj).css("background", "#FDFDFD");
  161. $.ajax({
  162. url: "[[~57]]",
  163. type: "POST",
  164. data: 'column=' + column + '&editval=' + editableObj.innerHTML + '&id=' + id,
  165. success: function (data) {
  166. $(editableObj).css("background", "white");
  167. }
  168. });
  169. }
  170. </script>
  171. <!-- Image Insert Script -->
  172. <script>
  173. $(document).ready(function(){
  174. $('#insert').click(function(){
  175. var image_name = $('#image').val();
  176. if(image_name == '')
  177. {
  178. alert("Please Select Image");
  179. return false;
  180. }
  181. else
  182. {
  183. var extension = $('#image').val().split('.').pop().toLowerCase();
  184. if(jQuery.inArray(extension, ['gif','png','jpg','jpeg']) == -1)
  185. {
  186. alert('Invalid Image File');
  187. $('#image').val('');
  188. return false;
  189. }
  190. }
  191. });
  192. });
  193. </script>
  194. ?>
  195. </div>
  196. </div>
  197. </div>
  198. </div>
  199. </div>
  200. </div>
  201. </main>
  202. <footer class="py-4 bg-light mt-auto">
  203. <div class="container-fluid px-4">
  204. <div class="d-flex align-items-center justify-content-between small">
  205. <div class="text-muted">[[SimpleCopyright? &startYear=`2003`]]. All Rights Reserved <a href="[[~1]]"></a></div>
  206. <div>
  207. <a href="[[~39~]]">Privacy Policy</a>
  208. &middot;
  209. <a href="[[~39~]]">Terms &amp; Conditions</a>
  210. </div>
  211. </div>
  212. </div>
  213. </footer>
  214. </div>
  215. </div>
  216. <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
  217. <script>
  218. /*!
  219. * Start Bootstrap - SB Admin v7.0.3 (https://startbootstrap.com/template/sb-admin)
  220. * Copyright 2013-2021 Start Bootstrap
  221. * Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-sb-admin/blob/master/LICENSE)
  222. */
  223. //
  224. // Scripts
  225. //
  226. window.addEventListener('DOMContentLoaded', event => {
  227. // Toggle the side navigation
  228. const sidebarToggle = document.body.querySelector('#sidebarToggle');
  229. if (sidebarToggle) {
  230. // Uncomment Below to persist sidebar toggle between refreshes
  231. // if (localStorage.getItem('sb|sidebar-toggle') === 'true') {
  232. // document.body.classList.toggle('sb-sidenav-toggled');
  233. // }
  234. sidebarToggle.addEventListener('click', event => {
  235. event.preventDefault();
  236. document.body.classList.toggle('sb-sidenav-toggled');
  237. localStorage.setItem('sb|sidebar-toggle', document.body.classList.contains('sb-sidenav-toggled'));
  238. });
  239. }
  240. });
  241. </script>
  242. <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.js" crossorigin="anonymous"></script>
  243. <script src="https://cdn.jsdelivr.net/npm/simple-datatables@latest" crossorigin="anonymous"></script>
  244. </body>
  245. </html>