autenticazione utente, gestione password
This commit is contained in:
@@ -84,3 +84,4 @@
|
||||
2021-04-01 15:20:08.570454 Caught error: name 'now' is not defined
|
||||
2021-04-01 15:21:11.244154 Caught error: name 'now' is not defined
|
||||
2021-04-02 09:27:42.781175 Caught error: Connection closed by server.
|
||||
2021-04-08 11:19:48.305652 Caught error: Error 111 connecting to 127.0.0.1:6379. Connection refused.
|
||||
|
||||
@@ -29,6 +29,8 @@ redSrv0.set(redSampleFreq,startingSampleFreq)
|
||||
#se non c'è un valore nei campi di redis, popolo il db
|
||||
redSrv0.set('SETTINGS:LOG:STATUS',0)
|
||||
redisTime = 'RTDATA:TIME:SRV'
|
||||
if redSrv0.get('SETTINGS:PASSWORD:CURRENT') is None:
|
||||
redSrv0.set('SETTINGS:PASSWORD:CURRENT',"-")
|
||||
if redSrv0.get('SETTINGS:FOLDER:CURRENT') is None:
|
||||
redSrv0.set('SETTINGS:FOLDER:CURRENT', "default")
|
||||
if redSrv0.get('SETTINGS:SELECTED_CH') is None:
|
||||
|
||||
+26
-1
@@ -112,6 +112,21 @@ def api_channels_all():
|
||||
@flaskApp.route("/api/v1/channels/current", methods=['GET'])
|
||||
def api_channels_current():
|
||||
numCh = getRedisVal('SETTINGS:SELECTED_CH')
|
||||
savedPwd = getRedisVal('SETTINGS:PASSWORD:CURRENT')
|
||||
if savedPwd is None:
|
||||
redSrv0.set('SETTINGS:PASSWORD:CURRENT',"")
|
||||
# tutto false
|
||||
showDiv1 = 0
|
||||
showDiv2 = 0
|
||||
showDiv3 = 0
|
||||
if savedPwd == "":
|
||||
showDiv1 = 1
|
||||
elif savedPwd == "viaZavaritt":
|
||||
showDiv3 = 1
|
||||
elif savedPwd == "viaZavaritt152":
|
||||
showDiv2 = 1
|
||||
showDiv3 = 1
|
||||
|
||||
#funzione api_channels_all: legge direttamente da redis, ritorna jsonify
|
||||
result = {
|
||||
'numCh' : numCh,
|
||||
@@ -125,7 +140,10 @@ def api_channels_current():
|
||||
'MinOut' : getRedisVal('SETTINGS:OUT:MIN:'+str(numCh)),
|
||||
'MaxIn' : getRedisVal('SETTINGS:IN:MAX:'+str(numCh)),
|
||||
'MinIn' : getRedisVal('SETTINGS:IN:MIN:'+str(numCh)),
|
||||
'CurrentWorkFolder' : getRedisVal('SETTINGS:FOLDER:CURRENT')
|
||||
'CurrentWorkFolder' : getRedisVal('SETTINGS:FOLDER:CURRENT'),
|
||||
'ShowDiv01' : showDiv1,
|
||||
'ShowDiv02' : showDiv2,
|
||||
'ShowDiv03' : showDiv3,
|
||||
}
|
||||
# restituisce in formato json i dati letti da redis
|
||||
return jsonify(result)
|
||||
@@ -206,6 +224,13 @@ def data_delete():
|
||||
redSrv0.set('SETTINGS:FOLDER:CURRENT', "not set")
|
||||
return redirect("/settings")
|
||||
|
||||
@flaskApp.route("/api/v1/setup/passwordInput", methods=['POST'])
|
||||
def insertPassword():
|
||||
#funzione inserimento password
|
||||
currentPassword = request.form['PasswordForm']
|
||||
redSrv0.set('SETTINGS:PASSWORD:CURRENT', currentPassword, ex=5*60)
|
||||
return redirect("/settings")
|
||||
|
||||
@flaskApp.route("/api/v1/setup/saveInMin", methods=['PUT'])
|
||||
def setupInMin():
|
||||
# devo leggere il channel attualmente selezionato
|
||||
|
||||
+193
-161
@@ -24,6 +24,22 @@
|
||||
$("#MinIn").html(result.MinIn);
|
||||
$("#MaxIn").html(result.MaxIn);
|
||||
$("#CurrentFolder").html(result.CurrentWorkFolder);
|
||||
// inizio nascondendo
|
||||
$("#Div1").show();
|
||||
$("#Div2").hide();
|
||||
$("#Div3").hide();
|
||||
// if(result.ShowDiv01 == "0")
|
||||
// {
|
||||
// $("#Div1").hide();
|
||||
// }
|
||||
if(result.ShowDiv02 == "1")
|
||||
{
|
||||
$("#Div2").show();
|
||||
}
|
||||
if(result.ShowDiv03 == "1")
|
||||
{
|
||||
$("#Div3").show();
|
||||
}
|
||||
}});
|
||||
}
|
||||
|
||||
@@ -121,8 +137,24 @@
|
||||
|
||||
</script>
|
||||
<div class="container-fluid">
|
||||
<div class="row my-2 px-3">
|
||||
<div class="card col-6">
|
||||
<div class="row" id="Div1">
|
||||
<div class="card my-2 col-12">
|
||||
<div class="card-header">
|
||||
<strong>Autenticazione utente</strong>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form class="col-12" method="POST" action="/api/v1/setup/passwordInput">
|
||||
<div class="row input-group my-2">
|
||||
<span class="input-group-text">Password: </span>
|
||||
<input type="text" class=" form-control" id="PasswordForm" name="PasswordForm"></input>
|
||||
<input type="submit" value="LOGIN" class="btn btn-success"></input>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" id="Div2">
|
||||
<div class="card my-2 col-6">
|
||||
<div class="row card-header">
|
||||
<div class="col-6">
|
||||
<strong>Canale A</strong>
|
||||
@@ -130,26 +162,26 @@
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="SelChannelA" onchange="setChannelA(this)">
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
Nativo: <span id="ChannelA"></span>
|
||||
<br>
|
||||
<strong>Scalato: <span id="OutputA"></span>
|
||||
</strong>
|
||||
Nativo: <span id="ChannelA"></span>
|
||||
<br>
|
||||
<strong>Scalato: <span id="OutputA"></span>
|
||||
</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card col-6">
|
||||
<div class="card my-2 col-6">
|
||||
<div class="row card-header">
|
||||
<div class="col-6">
|
||||
<strong>Canale B</strong>
|
||||
@@ -157,167 +189,167 @@
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="SelChannelB" onchange="setChannelB(this)">
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
Nativo: <span id="ChannelB"></span>
|
||||
<br>
|
||||
Nativo: <span id="ChannelB"></span>
|
||||
<br>
|
||||
<strong>Scalato: <span id="OutputB"></span>
|
||||
</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card my-2">
|
||||
<div class="card-header">
|
||||
<div class="row">
|
||||
<div class="col-5">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Impostazioni scala canale</strong>
|
||||
</div>
|
||||
<div class="col-3 text-right">
|
||||
<label for="sel1"> Channel n°</label>
|
||||
</div>
|
||||
<div class="col-4 text-right">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="ddlChannels" onchange="setChannel(this)">
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h5>
|
||||
<div class="card-body text-center">
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4">MIN</div>
|
||||
<div class="col-4">Attuale</div>
|
||||
<div class="col-4">MAX</div>
|
||||
<div class="row" id="Div3">
|
||||
<div class="card my-2 col-12">
|
||||
<div class="card-header">
|
||||
<div class="row">
|
||||
<div class="col-5">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Impostazioni scala canale</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2">IN</div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4"><span class="badge badge-secondary text-center" id="MinIn">000</span></div>
|
||||
<div class="col-4"><span class="badge badge-warning text-center" id="CurrIn">000</span></div>
|
||||
<div class="col-4"><span class="badge badge-info text-center" id="MaxIn">000</span></div>
|
||||
<div class="col-3 text-right">
|
||||
<label for="sel1"> Channel n°</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4"><button type="button" class="btn btn-secondary btn-block" onclick="saveMin()">Save Min</button></div>
|
||||
<div class="col-4"></div>
|
||||
<div class="col-4"><button type="button" class="btn btn-info btn-block" onclick="saveMax()">Save Max</button></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<form method="POST" action="/api/v1/scaleout">
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2 text-center">OUT</div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4">
|
||||
<input type="number" class="form-control text-center" id="MinOut" name="MinOut"></input>
|
||||
</div>
|
||||
<div class="col-4"><span class="badge badge-warning" id="CurrOut">{{ Out0 }}</span></div>
|
||||
<div class="col-4">
|
||||
<input type="number" class="form-control text-center" id="MaxOut" name="MaxOut"></input>
|
||||
</div>
|
||||
<div class="col-4 text-right">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="ddlChannels" onchange="setChannel(this)">
|
||||
<option>0</option>
|
||||
<option>1</option>
|
||||
<option>2</option>
|
||||
<option>3</option>
|
||||
<option>4</option>
|
||||
<option>5</option>
|
||||
<option>6</option>
|
||||
<option>7</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
</div>
|
||||
<div class="card-body h5 text-center">
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4">MIN</div>
|
||||
<div class="col-4">Attuale</div>
|
||||
<div class="col-4">MAX</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2">IN</div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4"><span class="badge badge-secondary text-center" id="MinIn">000</span></div>
|
||||
<div class="col-4"><span class="badge badge-warning text-center" id="CurrIn">000</span></div>
|
||||
<div class="col-4"><span class="badge badge-info text-center" id="MaxIn">000</span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4"><button type="button" class="btn btn-secondary btn-block" onclick="saveMin()">Save Min</button></div>
|
||||
<div class="col-4"></div>
|
||||
<div class="col-4"><button type="button" class="btn btn-info btn-block" onclick="saveMax()">Save Max</button></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
<form method="POST" action="/api/v1/scaleout">
|
||||
<div class="card-body row text-center">
|
||||
<div class="col-2 text-center">OUT</div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<div class="col-4">
|
||||
<input type="number" class="form-control text-center" id="MinOut" name="MinOut"></input>
|
||||
</div>
|
||||
<div class="col-4"><span class="badge badge-warning" id="CurrOut">{{ Out0 }}</span></div>
|
||||
<div class="col-4">
|
||||
<input type="number" class="form-control text-center" id="MaxOut" name="MaxOut"></input>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row text-center">
|
||||
<div class="col-2"></div>
|
||||
<div class="col-8">
|
||||
<div class="row">
|
||||
<input type="submit" value="SET OUTPUT SCALE" class="btn btn-success btn-block mt-2"></input>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card my-2 col-12">
|
||||
<div class="card-header">
|
||||
<strong>Selezione cartella</strong>
|
||||
<div class="input-group-text my-2">
|
||||
<span>Cartella attuale: </span> <span id="CurrentFolder"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form class="col-12" method="POST" action="/api/v1/setup/workingtree">
|
||||
<div class="row input-group my-2">
|
||||
<span class="col-3 input-group-text">Insert new: </span>
|
||||
<input type="text" class="col-7 form-control" id="NewFolder" name="NewFolder"></input>
|
||||
<input type="submit" value="SET" class="btn btn-success btn-block col-2"></input>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card my-2 col-12">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Impostazioni Timer</strong>
|
||||
</div>
|
||||
<div class="card-body row">
|
||||
<form class="col-12" method="POST" action="/api/v1/frequency">
|
||||
<div class="input-group my-2">
|
||||
<span class="col-8 input-group-text">Periodo di campionamento (ms): </span>
|
||||
<input type="number" class="col-4 form-control" id="LogFreq" name="LogFreq"></input>
|
||||
</div>
|
||||
<div class="input-group my-2">
|
||||
<span class="col-8 input-group-text">Periodo di scrittura (ms): </span>
|
||||
<input type="number" class="col-4 form-control" id="WriteFreq" name="WriteFreq"></input>
|
||||
<br>
|
||||
<input type="submit" value="SET" class="btn btn-success btn-block mt-2"></input>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card my-2 col-12">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Reset impostazioni predefinite</strong>
|
||||
</div>
|
||||
<div class="card-body mb-4">
|
||||
<form method="POST" action="/api/v1/setup/resetSettings">
|
||||
<div class="row">
|
||||
<input type="submit" value="SET OUTPUT SCALE" class="btn btn-success btn-block mt-2"></input>
|
||||
<div class="col-2"></div>
|
||||
<input type="submit" class="col-8 btn btn-danger btn-block my-2" value="RESET SETTINGS"></input>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
</form>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</h5>
|
||||
</div>
|
||||
<div class="card my-2">
|
||||
<div class="card-header">
|
||||
<strong>Selezione cartella</strong>
|
||||
<div class="input-group-text my-2">
|
||||
<span>Cartella attuale: </span> <span id="CurrentFolder"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form class="col-12" method="POST" action="/api/v1/setup/workingtree">
|
||||
<div class="row input-group my-2">
|
||||
<span class="col-3 input-group-text">Insert new: </span>
|
||||
<input type="text" class="col-7 form-control" id="NewFolder" name="NewFolder"></input>
|
||||
<input type="submit" value="SET" class="btn btn-success btn-block col-2"></input>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Impostazioni Timer</strong>
|
||||
</div>
|
||||
<div class="card-body row">
|
||||
<form class="col-12" method="POST" action="/api/v1/frequency">
|
||||
<div class="input-group my-2">
|
||||
<span class="col-8 input-group-text">Periodo di campionamento (ms): </span>
|
||||
<input type="number" class="col-4 form-control" id="LogFreq" name="LogFreq"></input>
|
||||
</div>
|
||||
<div class="input-group my-2">
|
||||
<span class="col-8 input-group-text">Periodo di scrittura (ms): </span>
|
||||
<input type="number" class="col-4 form-control" id="WriteFreq" name="WriteFreq"></input>
|
||||
<br>
|
||||
<input type="submit" value="SET" class="btn btn-success btn-block mt-2"></input>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card my-2">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table mr-1"></i>
|
||||
<strong>Reset impostazioni predefinite</strong>
|
||||
</div>
|
||||
<div class="card-body mb-4">
|
||||
<form method="POST" action="/api/v1/setup/resetSettings">
|
||||
<div class="row">
|
||||
<div class="col-2"></div>
|
||||
<input type="submit" class="col-8 btn btn-danger btn-block my-2" value="RESET SETTINGS"></input>
|
||||
<div class="col-2"></div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user