From 9cb008785cef0814b010da8475c6bd983f00e29d Mon Sep 17 00:00:00 2001
From: adrien <adrien@malingrey.fr>
Date: Mon, 14 Oct 2024 21:21:08 +0200
Subject: [PATCH] host options

---
 hostScan.xsl | 15 ++++++++++++++-
 index.php    | 16 +++++++++++++++-
 lanScan.xsl  | 45 ++++++++++++++++++++++++++++++++++-----------
 options.php  |  2 +-
 style.css    |  2 +-
 5 files changed, 65 insertions(+), 15 deletions(-)

diff --git a/hostScan.xsl b/hostScan.xsl
index d338261..d7b994d 100755
--- a/hostScan.xsl
+++ b/hostScan.xsl
@@ -72,7 +72,7 @@
                         <svg class="logo" version="1.1" id="Layer_1" x="0px" y="0px" viewBox="0 0 24 24" xml:space="preserve" width="40" height="40" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs206"/><g id="g998" transform="matrix(0,0.04687491,-0.04687491,0,24,2.2682373e-5)"><g id="g147"><g id="g145"><path d="m 322.065,92.046 c -46.24,0 -83.851,37.619 -83.851,83.857 v 168.712 c 0,25.224 -21.148,45.745 -46.372,45.745 -25.224,0 -46.372,-20.521 -46.372,-45.745 V 199.464 h -38.114 v 145.151 c 0,46.24 38.246,83.859 84.486,83.859 46.24,0 84.486,-37.619 84.486,-83.859 V 175.903 c 0,-25.223 20.514,-45.743 45.737,-45.743 25.223,0 45.737,20.521 45.737,45.743 v 134.092 h 38.114 V 175.903 c 0,-46.239 -37.611,-83.857 -83.851,-83.857 z" id="path143"/></g></g><g id="g153"><g id="g151"><path d="M 144.198,0 H 108.625 C 98.101,0 89.568,8.746 89.568,19.271 c 0,1.157 0.121,2.328 0.318,3.598 h 73.052 c 0.197,-1.27 0.318,-2.441 0.318,-3.598 C 163.256,8.746 154.723,0 144.198,0 Z" id="path149"/></g></g><g id="g159"><g id="g157"><path d="m 420.183,486.591 h -71.731 c -0.626,2.541 -0.978,4.077 -0.978,6.176 0,10.525 8.532,19.234 19.057,19.234 h 35.573 c 10.525,0 19.057,-8.709 19.057,-19.234 0,-2.098 -0.352,-3.635 -0.978,-6.176 z" id="path155"/></g></g><g id="g165"><g id="g163"><rect x="87.027" y="41.925999" width="80.040001" height="138.481" id="rect161"/></g></g><g id="g171"><g id="g169"><rect x="344.93301" y="329.052" width="80.040001" height="138.481" id="rect167"/></g></g><g id="g173"></g><g id="g175"></g><g id="g177"></g><g id="g179"></g><g id="g181"></g><g id="g183"></g><g id="g185"></g><g id="g187"></g><g id="g189"></g><g id="g191"></g><g id="g193"></g><g id="g195"></g><g id="g197"></g><g id="g199"></g><g id="g201"></g></g></svg>
                         <xsl:text>can</xsl:text>
                     </a>
-                    <form class="right menu" onsubmit="targetsInputDiv.classList.add('loading')">
+                    <form id="lanScanForm" class="right menu" onsubmit="targetsInputDiv.classList.add('loading')">
                         <div class="ui category search item">
                             <div id="targetsInputDiv" class="ui icon input">
                             <input class="prompt" type="text" id="targetsInput" name="targets" oninput="hiddenInput.value=this.value" required=""
@@ -167,6 +167,19 @@ $.toast({
     position: 'bottom right',
 })
                         </xsl:if>
+
+lanScanForm.onsubmit = (event) => {
+    targetsInputDiv.classList.add('loading')
+    $.toast({
+        title: 'Scan en cours...',
+        message: 'Merci de patienter',
+        class: 'info',
+        showIcon: 'satellite dish',
+        displayTime: 0,
+        closeIcon: true,
+        position: 'bottom right',
+    })
+}
                 </script>
             </body>
         </html>
diff --git a/index.php b/index.php
index 45560a6..773f5d3 100755
--- a/index.php
+++ b/index.php
@@ -23,7 +23,7 @@ include_once 'filter_inputs.php';
     <a class="ui teal button item" href=".">
       lan<?php include 'logo.svg'; ?>can
     </a>
-    <form class="right menu" onsubmit="targetsInputDiv.classList.add('loading')">
+    <form id="lanScanForm" class="right menu">
       <div class="ui category search item">
           <div id="targetsInputDiv" class="ui icon input">
             <input class="prompt" type="text" id="targetsInput" name="lan" required
@@ -66,6 +66,20 @@ foreach (scandir($SCANSDIR) as $filename) {
         </div>
       </div>
     </div>
+    <script>
+lanScanForm.onsubmit = (event) => {
+  targetsInputDiv.classList.add('loading')
+  $.toast({
+      title: 'Scan en cours...',
+      message: 'Merci de patienter',
+      class: 'info',
+      showIcon: 'satellite dish',
+      displayTime: 0,
+      closeIcon: true,
+      position: 'bottom right',
+  })
+}
+    </script>
   </main>
   <footer class="ui footer segment">
     lanScan est basé sur <a href="https://nmap.org/" target="_blank">Nmap</a>
diff --git a/lanScan.xsl b/lanScan.xsl
index 3e02f5b..28a1d19 100755
--- a/lanScan.xsl
+++ b/lanScan.xsl
@@ -71,7 +71,7 @@
                         <svg class="logo" version="1.1" id="Layer_1" x="0px" y="0px" viewBox="0 0 24 24" xml:space="preserve" width="40" height="40" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs206"/><g id="g998" transform="matrix(0,0.04687491,-0.04687491,0,24,2.2682373e-5)"><g id="g147"><g id="g145"><path d="m 322.065,92.046 c -46.24,0 -83.851,37.619 -83.851,83.857 v 168.712 c 0,25.224 -21.148,45.745 -46.372,45.745 -25.224,0 -46.372,-20.521 -46.372,-45.745 V 199.464 h -38.114 v 145.151 c 0,46.24 38.246,83.859 84.486,83.859 46.24,0 84.486,-37.619 84.486,-83.859 V 175.903 c 0,-25.223 20.514,-45.743 45.737,-45.743 25.223,0 45.737,20.521 45.737,45.743 v 134.092 h 38.114 V 175.903 c 0,-46.239 -37.611,-83.857 -83.851,-83.857 z" id="path143"/></g></g><g id="g153"><g id="g151"><path d="M 144.198,0 H 108.625 C 98.101,0 89.568,8.746 89.568,19.271 c 0,1.157 0.121,2.328 0.318,3.598 h 73.052 c 0.197,-1.27 0.318,-2.441 0.318,-3.598 C 163.256,8.746 154.723,0 144.198,0 Z" id="path149"/></g></g><g id="g159"><g id="g157"><path d="m 420.183,486.591 h -71.731 c -0.626,2.541 -0.978,4.077 -0.978,6.176 0,10.525 8.532,19.234 19.057,19.234 h 35.573 c 10.525,0 19.057,-8.709 19.057,-19.234 0,-2.098 -0.352,-3.635 -0.978,-6.176 z" id="path155"/></g></g><g id="g165"><g id="g163"><rect x="87.027" y="41.925999" width="80.040001" height="138.481" id="rect161"/></g></g><g id="g171"><g id="g169"><rect x="344.93301" y="329.052" width="80.040001" height="138.481" id="rect167"/></g></g><g id="g173"></g><g id="g175"></g><g id="g177"></g><g id="g179"></g><g id="g181"></g><g id="g183"></g><g id="g185"></g><g id="g187"></g><g id="g189"></g><g id="g191"></g><g id="g193"></g><g id="g195"></g><g id="g197"></g><g id="g199"></g><g id="g201"></g></g></svg>
                         <xsl:text>can</xsl:text>
                     </a>
-                    <form class="right menu" onsubmit="targetsInputDiv.classList.add('loading')">
+                    <form id="lanScanForm" class="right menu" onsubmit="targetsInputDiv.classList.add('loading')">
                         <xsl:call-template name="optionsList">
                             <xsl:with-param name="argList" select="substring-before(substring-after(@args, ' -'), ' -oX')"/>
                             <xsl:with-param name="asURL" select="false()"/>
@@ -115,7 +115,7 @@ Exemples: 192.168.1.0/24 scanme.nmap.org 10.0-255.0-255.1-254"/>
                                 <th>Adresse IP</th>
                                 <th>Nom</th>
                                 <th>Fabricant</th>
-                                <th class="ten wide">Services</th>
+                                <th class="six wide">Services</th>
                                 <th>Scanner les services</th>
                             </tr>
                         </thead>
@@ -187,6 +187,19 @@ $.toast({
     position: 'bottom right',
 })
                         </xsl:if>
+
+lanScanForm.onsubmit = (event) => {
+    targetsInputDiv.classList.add('loading')
+    $.toast({
+        title: 'Scan en cours...',
+        message: 'Merci de patienter',
+        class: 'info',
+        showIcon: 'satellite dish',
+        displayTime: 0,
+        closeIcon: true,
+        position: 'bottom right',
+    })
+}
                 </script>
             </body>
         </html>
@@ -248,15 +261,25 @@ $.toast({
                 </xsl:apply-templates>
             </td>
             <td>
-                <a class="ui mini icon labeled teal button" onclick="this.getElementsByTagName('i')[0].className = 'loading spinner icon'">
-                    <xsl:attribute name="href">
-                        <xsl:value-of select="$basedir"/>
-                        <xsl:text>/scan.php?host=</xsl:text>
-                        <xsl:value-of select="$hostAddress"/>
-                    </xsl:attribute>
-                    <i class="satellite dish icon"></i>
-                    <xsl:text>Services</xsl:text>
-                </a>
+                <div class="ui buttons">
+                    <a class="ui mini icon labeled teal button" onclick="this.getElementsByTagName('i')[0].className = 'loading spinner icon'">
+                        <xsl:attribute name="href">
+                            <xsl:value-of select="$basedir"/>
+                            <xsl:text>/scan.php?host=</xsl:text>
+                            <xsl:value-of select="$hostAddress"/>
+                        </xsl:attribute>
+                        <i class="satellite dish icon"></i>
+                        <xsl:text>Services</xsl:text>
+                    </a>
+                    <a class="ui mini icon teal button">
+                        <xsl:attribute name="href">
+                            <xsl:value-of select="$basedir"/>
+                            <xsl:text>/options.php?host=</xsl:text>
+                            <xsl:value-of select="$hostAddress"/>
+                        </xsl:attribute>
+                        <i class="sliders horizontal icon"></i>
+                    </a>
+                </div>
             </td>
         </tr>
     </xsl:template>
diff --git a/options.php b/options.php
index 51f77c9..cfac804 100755
--- a/options.php
+++ b/options.php
@@ -34,7 +34,7 @@ include_once 'filter_inputs.php';
   </nav>
 
   <main class="ui main container">
-    <h1 class="header">Scanner un réseau</h1>
+    <h1 class="header">Scanner un <?=$host? "hôte" : "réseau" ?></h1>
 
     <form id="newScanForm" class="ui form" method="get" action="scan.php">
       <div class="required field">
diff --git a/style.css b/style.css
index a11f9ef..0345d66 100644
--- a/style.css
+++ b/style.css
@@ -8,7 +8,7 @@ svg {
     min-height: calc(100vh - 4.4285em - 2px);
 }
 
-footer {
+.ui.footer.segment {
     margin-bottom: 0;
 }