Skip to content

Commit

Permalink
Aggiunta ed ultimata funzione di elimnazione dei dati inseriti
Browse files Browse the repository at this point in the history
  • Loading branch information
MarioTurco committed Sep 1, 2020
1 parent 35ed121 commit f7444c2
Show file tree
Hide file tree
Showing 11 changed files with 244 additions and 6 deletions.
48 changes: 48 additions & 0 deletions src/delete.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Gym Utils</title>
<link rel="stylesheet" href="index.css">
<script defer src="delete.js"></script>
<script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/css/bulma.min.css">
</head>
<body>
<div class="container is-fluid">


<div class="tabs is-centered">
<ul>
<li id="addTab"><a>Aggiungi</a></li>
<li id="visualizeTab" ><a>Visualizza</a></li>
<li id="editTab" ><a>Modifica</a></li>
<li id="deleteTab" class="is-active"><a>Elimina</a></li>
<li id="settingsTab"><a>Impostazioni</a></li>
</ul>
</div>
<div class="has-text-centered">
<p>Seleziona un campo e poi clicca elimina</p>
</div>
<div class="table-container " >
<table class="table is-bordered is-striped is-narrow is-hoverable is-fullwidth" id="visualizeTable">
<thread >
<th>Data</th>
<th>Peso</th>
</thread>
<tbody>
</tbody>
</table>
</div>
<div class="has-text-centered">
<button class="button is-danger is-outlined" id="deleteRowBtn">
<span>Elimina</span>
<span class="icon is-small">
<i class="fas fa-times"></i>
</span>
</button>
</div>
</div>
</body>
</html>
87 changes: 87 additions & 0 deletions src/delete.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
const db = require('electron-db');
const { app, BrowserWindow } = require('electron');
const { ipcRenderer } = require('electron')

//Tabs
const visualizeTab = document.getElementById('visualizeTab');
const settingsTab = document.getElementById('settingsTab')
const addTab = document.getElementById('addTab');
const editTab = document.getElementById('editTab');

//Table
const table = document.getElementById('visualizeTable');

//Buttons
const deleteRowBtn = document.getElementById('deleteRowBtn');

var lastSelectedRow = null;

deleteRowBtn.onclick = () =>{
deselectEffect(lastSelectedRow);
var date = lastSelectedRow.getElementsByTagName('td')[0].textContent;
db.deleteRow('peso', {'data': date}, (succ, msg) => {
console.log(msg);
});
location.reload();
}

function selectEffect(row){
if(row != null)
row.classList.add('is-selected');
}
function deselectEffect(row){
if(row != null)
if ( row.classList.contains('is-selected') )
row.classList.remove('is-selected');

}


function fillTable(){
db.getAll('peso',(succ, data) => {
console.log(data);
let index = 1;
//create row
for(elems in data){
var row = table.insertRow(index);
var dataCell = row.insertCell(0);
var pesoCell = row.insertCell(1);
dataCell.innerHTML = data[elems].data;
pesoCell.innerHTML = data[elems].peso;
index+=1;
}
return data;
})
}
function addRowsListeners(){
console.log('Aggiungedo listeners');
var rows = table.getElementsByTagName("tr");
for(i=0; i<rows.length;i++){
var currentRow = table.rows[i];
var createClickListener = function(row){
return function(){
deselectEffect(lastSelectedRow);
selectEffect(row);
lastSelectedRow = row;
}
}
currentRow.onclick = createClickListener(currentRow);
}
}

visualizeTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'visualize');
};

settingsTab.onclick = () => {
ipcRenderer.sendSync('synchronous-message', 'settings');
};
addTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'add');
}
editTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'edit');
}

fillTable();
addRowsListeners();
43 changes: 43 additions & 0 deletions src/edit.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Gym Utils</title>
<link rel="stylesheet" href="index.css">
<script defer src="edit.js"></script>
<script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/css/bulma.min.css">
</head>
<body>
<div class="container is-fluid">


<div class="tabs is-centered">
<ul>
<li id="addTab"><a>Aggiungi</a></li>
<li id="visualizeTab" ><a>Visualizza</a></li>
<li id="editTab" class="is-active"><a>Modifica</a></li>
<li id="deleteTab"><a>Elimina</a></li>
<li id="settingsTab"><a>Impostazioni</a></li>
</ul>
</div>

Edit
<div class="table-container " >
<table class="table is-bordered is-striped is-narrow is-hoverable is-fullwidth" id="visualizeTable">
<thread >
<th>Data</th>
<th>Peso</th>
</thread>
<tbody >
</tbody>
</table>
</div>

<canvas id="chart" ></canvas>

</canva>
</div>
</body>
</html>
25 changes: 25 additions & 0 deletions src/edit.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const db = require('electron-db');
const { app, BrowserWindow } = require('electron');
const { ipcRenderer } = require('electron')


//Tabs
const visualizeTab = document.getElementById('visualizeTab');
const settingsTab = document.getElementById('settingsTab')
const addTab = document.getElementById('addTab');
const deleteTab = document.getElementById('deleteTab');

//Tabs listeners
visualizeTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'visualize');
};

settingsTab.onclick = () => {
ipcRenderer.sendSync('synchronous-message', 'settings');
};
addTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'add');
}
deleteTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'delete');
}
2 changes: 2 additions & 0 deletions src/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
<ul>
<li id="addTab" class="is-active"><a>Aggiungi</a></li>
<li id="visualizeTab"><a>Visualizza</a></li>
<li id="editTab"><a>Modifica</a></li>
<li id="deleteTab"><a>Elimina</a></li>
<li id="settingsTab"><a>Impostazioni</a></li>
</ul>
</div>
Expand Down
8 changes: 7 additions & 1 deletion src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const createWindow = () => {
mainWindow.loadFile(path.join(__dirname, 'index.html'));

// Open the DevTools.
//mainWindow.webContents.openDevTools();
mainWindow.webContents.openDevTools();
};

// This method will be called when Electron has finished
Expand Down Expand Up @@ -72,5 +72,11 @@ ipcMain.on('synchronous-message', (event, arg) => {
if(arg == 'settings'){
mainWindow.loadFile(path.join(__dirname, 'settings.html'));
}
if(arg == 'edit'){
mainWindow.loadFile(path.join(__dirname, 'edit.html'));
}
if(arg == 'delete'){
mainWindow.loadFile(path.join(__dirname, 'delete.html'));
}
event.returnValue = 'pong'
})
17 changes: 14 additions & 3 deletions src/logic.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ const addBtn = document.getElementById('addBtn');
//Tabs
const visualizeTab = document.getElementById('visualizeTab');
const settingsTab = document.getElementById('settingsTab')
const editTab = document.getElementById('editTab');
const deleteTab = document.getElementById('deleteTab');

function createDatabase(){
db.createTable('peso', (succ, msg) => {
Expand Down Expand Up @@ -51,7 +53,10 @@ function pesoError(){

addBtn.onclick = () => {
let record = new Object();
record.data =document.getElementById('dataText').value;
tmp = document.getElementById('dataText').value;

record.data = tmp.substring(8,11) + '-' + tmp.substring(5,7) + '-' + tmp.substring(0,4);
console.log("Data:" , record.data);
record.peso = document.getElementById('pesoText').value;
if(record.data == '' || record.peso == ''){
console.log("Vuoto");
Expand All @@ -64,6 +69,7 @@ addBtn.onclick = () => {

try{
if( db.valid('peso') ){

insertRecord(record);
}
} catch(error){
Expand All @@ -76,12 +82,17 @@ addBtn.onclick = () => {




//Tabs listeners
visualizeTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'visualize');
};

settingsTab.onclick = () => {
ipcRenderer.sendSync('synchronous-message', 'settings');
};
};
editTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'edit');
}
deleteTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'delete');
}
2 changes: 2 additions & 0 deletions src/settings.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
<ul>
<li id="addTab"><a>Aggiungi</a></li>
<li id="visualizeTab" ><a>Visualizza</a></li>
<li id="editTab"><a>Modifica</a></li>
<li id="deleteTab"><a>Elimina</a></li>
<li id="settingsTab" class="is-active"><a>Impostazioni</a></li>
</ul>
</div>
Expand Down
7 changes: 6 additions & 1 deletion src/settingsLogic.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,12 @@ addTab.onclick = () =>{
visualizeTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'visualize');
};

editTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'edit');
}
deleteTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'delete');
}
//Buttons
const resetBtn = document.getElementById('resetBtn');

Expand Down
2 changes: 2 additions & 0 deletions src/visualize.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
<ul>
<li id="addTab"><a>Aggiungi</a></li>
<li id="visualizeTab" class="is-active"><a>Visualizza</a></li>
<li id="editTab"><a>Modifica</a></li>
<li id="deleteTab"><a>Elimina</a></li>
<li id="settingsTab"><a>Impostazioni</a></li>
</ul>
</div>
Expand Down
9 changes: 8 additions & 1 deletion src/visualizeLogic.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ const db = require('electron-db');
//Tabs
const addTab = document.getElementById('addTab');
const settingsTab = document.getElementById('settingsTab');
const editTab = document.getElementById('editTab');
const deleteTab = document.getElementById('deleteTab');

//Table
const table = document.getElementById('visualizeTable');
Expand All @@ -18,7 +20,12 @@ addTab.onclick = () =>{
settingsTab.onclick = () => {
ipcRenderer.sendSync('synchronous-message', 'settings');
};

editTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'edit');
}
deleteTab.onclick = () =>{
ipcRenderer.sendSync('synchronous-message', 'delete');
}
//Canvas
var ctx = document.getElementById('chart').getContext('2d');

Expand Down

0 comments on commit f7444c2

Please sign in to comment.