Bladeren bron

interface fix

Alessia 2 jaren geleden
bovenliggende
commit
63cc033bbb

BIN
flask_be/.DS_Store


+ 5 - 1
flask_be/app.py

@@ -17,9 +17,13 @@ def simpleQuery():
 
     try:        
         data = request.form['word']
+        tipo = request.form['tipo']
+        espansa = request.form['espansa']
+        raddoppiata = request.form['raddoppiata']
+        formeLemmi = request.form['formeLemmi']
 
         # Il motore: classe funzionale, che sta nel pacchetto 'engine'
-        output = doSimpleQuery(data, appath)
+        output = doSimpleQuery(data, tipo, espansa, raddoppiata, formeLemmi, appath)
 
         return output, 200
 

BIN
flask_be/engine/__pycache__/__init__.cpython-39.pyc


BIN
flask_be/engine/__pycache__/query_generator.cpython-39.pyc


BIN
flask_be/engine/__pycache__/simple_query_test.cpython-39.pyc


BIN
flask_be/engine/data_interface_sqlite3/__pycache__/__init__.cpython-39.pyc


BIN
flask_be/engine/data_interface_sqlite3/__pycache__/query_handlers.cpython-39.pyc


+ 26 - 2
flask_be/engine/query_generator.py

@@ -1,7 +1,31 @@
 from engine.data_interface_sqlite3.query_handlers import simpleQueryHandler
+#from engine.simple_query_test import ricercaformefull
+#from engine.simple_query_test import ricercalemmifull
+#from engine.simple_query_test import ricercaformelemmi
+#from engine.simple_query_test import ricercalemmiforme
 
-def doSimpleQuery(data, path):
+def doSimpleQuery(data, tipo, espansa, raddoppiata, formeLemmi, path):
+    results = ""
 
-    results = simpleQueryHandler(data, path)
+    e = int(espansa)
+    r = int(raddoppiata)
+    if (formeLemmi == "0"):
+        if (tipo == "forma"):
+            #results = ricercaformefull(data, path, espansa, raddoppiata)
+            results = simpleQueryHandler(data, path)
+        elif (tipo == "lemma"):
+            #ricercalemmi(entries, path, espansa, raddoppiata)
+            results = simpleQueryHandler(data, path)
+    elif (formeLemmi == "1"):
+        if (tipo == "forma"):
+            #ricercaformelemmi(entries, path, espansa, raddoppiata)
+            results = simpleQueryHandler(data, path)
+        elif (tipo == "lemma"):
+            #ricercalemmiforme(entries, path, espansa, raddoppiata)
+            results = simpleQueryHandler(data, path)
+    else:
+        #results = simpleQueryHandler(data, path)
+        #Qui vuol dire che c'è un problema. Controlla i parametri e inserisci quello che manca
+        results = data + tipo + espansa + raddoppiata + formeLemmi
 
     return results

+ 1 - 1
flask_be/engine/simple_query_test_pandas.py

@@ -2,7 +2,7 @@
 # che ho usato per fare dei test!
 
 # %%
-# Test code using Jupyter
+# Test code using Jupyter 
 
 # %%
 import sqlite3

+ 139 - 0
site2/index.html

@@ -0,0 +1,139 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+   <meta charset="unicode">
+   <meta http-equiv="X-UA-Compatible" content="IE=edge">
+   <meta name="viewport" content="width=device-width, initial-scale=1.0">
+   <title>SEARCH PROGETTO 2023</title>
+   <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"
+      integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
+
+   <header>
+      <!-- Navbar -->
+      <nav class="navbar navbar-expand-lg navbar-light bg-white">
+         <div class="container-fluid">
+            <button class="navbar-toggler" type="button" data-mdb-toggle="collapse" data-mdb-target="#navbarExample01"
+               aria-controls="navbarExample01" aria-expanded="false" aria-label="Toggle navigation">
+               <i class="fas fa-bars"></i>
+            </button>
+            <div class="collapse navbar-collapse" id="navbarExample01">
+               <ul class="navbar-nav me-auto mb-2 mb-lg-0">
+                  <li class="nav-item active">
+                     <a class="nav-link" aria-current="page" href="#">Home</a>
+                  </li>
+                  <li class="nav-item">
+                     <a class="nav-link" href="#">Il progetto 2023</a>
+                  </li>
+                  <li class="nav-item">
+                     <a class="nav-link" href="http://dariah.cnr.it/">DARIAH-IT</a>
+                  </li>
+                  <li class="nav-item">
+                     <a class="nav-link" href="http://www.ovi.cnr.it/">CNR OVI</a>
+                  </li>
+               </ul>
+            </div>
+         </div>
+      </nav>
+      <!-- Navbar -->
+
+      <!-- Background image -->
+      <div class="p-5 text-center bg-image" style="
+             background-image: url('http://www.ovi.cnr.it/images/2021-01-1912.43.48.jpg');
+             height: 400px;
+           ">
+         <div class="mask" style="background-color: rgba(0, 0, 0, 0.6);">
+            <div class="d-flex justify-content-center align-items-center h-100">
+               <div class="text-white">
+                  <h1 class="mb-3">La Ricerca</h1>
+                  <h4 class="mb-3">Seleziona la tipologia di ricerca: Lemmi o Forme</h4>
+               </div>
+            </div>
+         </div>
+      </div>
+      <!-- Background image -->
+   </header>
+
+<body>
+   <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
+      integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous">
+      </script>
+   <script src="https://cdn.jsdelivr.net/npm/popper.js@1.14.7/dist/umd/popper.min.js"
+      integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
+      </script>
+   <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
+      integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
+      crossorigin="anonymous"></script>
+
+   <script type="text/javascript" src="js/ricerca.js"></script>
+
+   <div class="container m-2">
+
+      <div class="row height d-flex justify-content-center align-items-center">
+
+         <div class="col-md-8">
+            <div class="row">
+               <div class="search">
+                  <i class="fa fa-search"></i>
+                  <input id="barraDiRicerca" type="text" class="form-control" placeholder="Inserisci il Lemma o la Forma da cercare">
+                  <button class="btn btn-primary" onclick="funzioneRicerca()">Cerca</button>
+               </div>
+            </div>
+            
+            <div class="row">
+               <div class="form-check">
+                  <input id="cbForme" value="forma" class="form-check-input" type="radio" name="exampleRadios" onclick="changeFL('lemmi')">
+                  <label class="form-check-label" for="exampleRadios1">
+                  FORME
+                  </label>
+               </div>
+               <div class="form-check">
+                  <input id="cbLemmi" value="lemma" class="form-check-input" type="radio" name="exampleRadios" onclick="changeFL('forme')">
+                  <label class="form-check-label" for="exampleRadios2">
+                  LEMMI
+                  </label>
+               </div>
+            </div>
+            <div class="row">
+               <div class="form-check">
+                  <input id="ricercaEx" value="ricerca_espansa" class="form-check-input" type="checkbox" name="espansa" >
+                  <label class="form-check-label" for="checkbox1">
+                  Ricerca espansa
+                  </label>
+               </div>
+               <div class="form-check">
+                  <input id="raddoppiata" value="raddoppiata" class="form-check-input" type="checkbox" name="raddoppiata">
+                  <label class="form-check-label" for="checkbox2">
+                  Raddoppiata
+                  </label>
+               </div>
+            </div>
+
+            <div class="row">
+               <div class="form-check">
+                  <input id="showOther" value="mostra" class="form-check-input" type="checkbox" name="altro">
+                  <label class="form-check-label" for="showOther">
+                  Mostra <span id="mostraFormaLemma"></span>
+                  </label>
+               </div>
+            </div>
+         </div>
+
+         
+
+      </div>
+
+      <span id="params"></span><br />
+      <span id="result"></span>
+
+   </div>
+
+
+
+
+   <script src="vendor/jquery/jquery.min.js"></script>
+
+</body>
+
+
+</html>

+ 74 - 0
site2/js/ricerca.js

@@ -0,0 +1,74 @@
+// Config data -- could be whatever
+// should be moved to a different file if/when there's a lot of it
+const flask_be_address = 'http://127.0.0.1:5000'
+
+// Separate function to handle HTTP request -- could be moved to different file (a service)
+function getData(queryDTO){
+
+    let url = flask_be_address.concat('/simple_get_query');
+
+    return $.post(url, queryDTO);
+}
+
+
+// Separate function to handle response data -- could be moved to different file (a service)
+function processData(response){
+    console.log(response)
+    if(response.length==0){
+        alert('No results!')
+    }
+    $("#result").html(response.join('<br/>'));
+    //$("#result").append(response);
+}
+
+function funzioneRicerca(){
+  let elementoDaRIcercare = document.getElementById("barraDiRicerca").value;
+  let word = elementoDaRIcercare;
+  var tipo = "";
+  var espansa = 0;
+  var raddoppiata = 0;
+  var formeLemmi = 0;
+  if ($('#cbLemmi').prop("checked"))
+  {
+    tipo = "lemma";
+  }
+  if ($('#cbForme').prop("checked"))
+  {
+    tipo = "forma";
+  }
+  if ($('#ricercaEx').prop("checked"))
+  {
+    espansa = 1;
+  }
+  if ($('#raddoppiata').prop("checked"))
+  {
+    raddoppiata = 1;
+  }
+  if ($('#showOther').prop("checked"))
+  {
+    formeLemmi = 1;
+  }
+  var checkBoxLemmi = document.getElementById("cbLemmi").value;
+  var checkBoxForme = document.getElementById("cbForme").value;
+
+  $("#params").html("I tuoi parametri: " + word + "; " + tipo + "; " + espansa + "; " + raddoppiata + "; " + formeLemmi)
+  
+  //
+  // DTO: 'Data Transfer Object'
+  let queryDTO = {
+      word: word,
+      tipo: tipo,
+      espansa: espansa,
+      raddoppiata: raddoppiata,
+      formeLemmi: formeLemmi
+  }
+
+  getData(queryDTO)
+    // After request finishes, process response data
+    .done(response => processData(response));
+  
+} 
+
+function changeFL(word) {
+  $("#mostraFormaLemma").html(word);
+}

File diff suppressed because it is too large
+ 1 - 0
site2/vendor/jquery/jquery.min.js


Some files were not shown because too many files changed in this diff