...
This commit is contained in:
parent
352466bba8
commit
be6bccbca7
8 changed files with 167 additions and 203 deletions
|
@ -4,15 +4,19 @@
|
|||
# in corso
|
||||
|
||||
* edinsth.php: su edit e add, nel js, selezionare solo il valore editato/aggiunto, perché nella finestrella elenco valori mostra il primo selezionato
|
||||
* edinstres.php deve mostrare scheda istanza completa
|
||||
* guestinsts.php, edinst.php e edinstres.php devono avere menu particolare per "guest" con la possibilità di andare alla vista delle istanze
|
||||
- nei vari helper, sarebbe meglio morisse in json, alla bisogna
|
||||
- sanificazione input: edinsth.php: su edit e add controllare sempre che il valore "nuovo" non ci sia già
|
||||
- aggiungere colonna NameCA a Languages e Localities, e relativi pimpumpam nel codice
|
||||
- troncare tabella languages e far rigirare tools/popudb.php per ricrearla: my_ucfirst metteva in minuscolo tutta la stringa, a parte il primo carattere maiuscolo
|
||||
# edinst.php: su languages se account "Level" è "guest", "lock this list" dev'essere checkato per default *se "guest" non ha ancora mai modificato i dati dell'istanza*
|
||||
- index.php: lunghezza automatica di username
|
||||
# tutto: notifiche; fatto, completo, in instances.php; da riportare anche in edinst.php, e poi in qualsiasi altra pagina; serve un "notifs.php" per la gestione accurata delle notifiche (possibilità di marcarle tutte o "precedenti a" come lette, possibilità di cancellarle tutte o "precedenti a")
|
||||
* tutto: visualizzazione notifiche (campanellina e div a s/comparsa)
|
||||
- serve un "notifs.php" (è già linkato dalla lista notifiche accessibile dalla campanella) per la gestione accurata delle notifiche (possibilità di marcarle tutte o "precedenti a" come lette, possibilità di cancellarle tutte o "precedenti a")
|
||||
- rinominare tutto da "Mastodon Startpage Admin" a "MastoStartAdm"
|
||||
- crawler.php: ricorsivizzarlo?
|
||||
- crawler.php: deve controllare se nella tabella Instances OurAdmID è definito; se è definito deve aggiornare l'account "guest" corrispettivo in Admins con la mail e il nome utente attuali
|
||||
- crawler.php: deve controllare se nella tabella Instances OurAdmID è definito; se è definito e la mail del corrispettivo account "guest" è cambiata, deve aggiornare l'account "guest" corrispettivo in Admins con la mail e il nome utente attuali e creare nuova password; se i dati dell'istanza sono già stati editati, mandare mail di "aggiornamento"; se non lo sono, mandare invito
|
||||
- instances.php: tradurre tutto in inglese
|
||||
- tutto: possibilità di *scegliere* la lingua da usare tra quelle supportate
|
||||
- edinsth.php: finire Localities
|
||||
|
|
|
@ -5,17 +5,9 @@ require('include/muoribene.php');
|
|||
require('include/sessionstart.php');
|
||||
require('include/myconn.php');
|
||||
require('include/getadmacc.php');
|
||||
|
||||
if ($account['Level']!='guest') {
|
||||
require('include/menu.php');
|
||||
$menu['istanze']['href']=null;
|
||||
$menu['istanze']['selected']=true;
|
||||
$menu['istanze']['submenu']['modifica']['href']=null;
|
||||
$menu['istanze']['submenu']['modifica']['selected']=true;
|
||||
buildmenu($menu);
|
||||
} else {
|
||||
$menuout='';
|
||||
}
|
||||
require('include/menu.php');
|
||||
$menu['menu']['selected']=true;
|
||||
buildmenu($menu);
|
||||
|
||||
$dbg='';
|
||||
|
||||
|
@ -50,6 +42,11 @@ function check($row,$col) {
|
|||
return('');
|
||||
}
|
||||
|
||||
if ($account['Level']!='guest') {
|
||||
require('include/notifs.php');
|
||||
$notifs=notifs($link);
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="en">
|
||||
|
@ -68,6 +65,7 @@ function check($row,$col) {
|
|||
<link rel="stylesheet" type="text/css" href="theme.css?v=<?php echo($cjrand); ?>">
|
||||
<script language="JavaScript">
|
||||
<!--
|
||||
<?php if ($account['Level']!='guest') require('js/notifs.js.php'); ?>
|
||||
function getselarr(selid) {
|
||||
var sel=document.getElementById(selid), selc=sel.length, i, arr=[];
|
||||
for (i=0; i<selc; i++)
|
||||
|
@ -281,11 +279,14 @@ function ckf() {
|
|||
</ul>
|
||||
<div class="mtit">Editing «<?php echo($inst['URI']); ?>»</div>
|
||||
<div id="rightdiv">
|
||||
<?php if ($account['Level']!='guest') echo('<img src="'.$notifs['imgoff'].'" id="bell" class="rlinks" title="Show notifications" onclick="shidenotifs();">'.N); ?>
|
||||
<a href="logout.php" class="rlinks"><img src="imgs/esci.svg" title="Sign out"></a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<?php if ($account['Level']!='guest') echo($notifs['div']); ?>
|
||||
|
||||
<div id="popup">
|
||||
<div id="inpopup">
|
||||
<div id="popupcont">
|
||||
|
|
|
@ -3,15 +3,11 @@
|
|||
require('include/glob.php');
|
||||
require('include/muoribene.php');
|
||||
require('include/sessionstart.php');
|
||||
|
||||
require('include/menu.php');
|
||||
$menu['istanze']['href']=null;
|
||||
$menu['istanze']['selected']=true;
|
||||
$menu['istanze']['submenu']['modifica']['href']=null;
|
||||
$menu['istanze']['submenu']['modifica']['selected']=true;
|
||||
buildmenu($menu);
|
||||
|
||||
require('include/myconn.php');
|
||||
require('include/getadmacc.php');
|
||||
require('include/menu.php');
|
||||
$menu['menu']['selected']=true;
|
||||
buildmenu($menu);
|
||||
|
||||
$dbg='';
|
||||
|
||||
|
@ -25,7 +21,7 @@ $dbg.='<pre>'.print_r($_POST,1).'</pre>';
|
|||
|
||||
if (array_key_exists('id',$_POST) && preg_match('/^[0-9]+$/',$_POST['id'])===1) {
|
||||
$instid=$_POST['id']+0;
|
||||
$res=mysqli_query($link,'SELECT * FROM Instances WHERE ID='.$instid)
|
||||
$res=mysqli_query($link,'SELECT *, ID AS IID FROM Instances WHERE ID='.$instid)
|
||||
or muoribene(__LINE__.': '.mysqli_error($link),true);
|
||||
if (mysqli_num_rows($res)!=1)
|
||||
muoribene(__LINE__.': There is no instance with ID='.$instid.'.');
|
||||
|
@ -99,6 +95,10 @@ multi($link,$instid,$dbg,'ChosenFinModes','InstFinancing','FinID',__LINE__);
|
|||
multi($link,$instid,$dbg,'ChosenPolicies','InstPolicies','PolID',__LINE__);
|
||||
multi($link,$instid,$dbg,'ChosenTags','InstTags','TagID',__LINE__);
|
||||
|
||||
require('include/columns.php');
|
||||
require('include/dispinst.php');
|
||||
$out=dispinst($inst,$cols,$link,$dlang,false,0,0);
|
||||
|
||||
mysqli_close($link);
|
||||
|
||||
?>
|
||||
|
@ -129,6 +129,7 @@ mysqli_close($link);
|
|||
<ul>
|
||||
<?php echo($menuout); ?>
|
||||
</ul>
|
||||
<div class="mtit">Editing results for «<?php echo($inst['URI']); ?>»</div>
|
||||
<div id="rightdiv">
|
||||
<a href="logout.php" class="rlinks"><img src="imgs/esci.svg" title="Sign out"></a>
|
||||
</div>
|
||||
|
@ -148,7 +149,7 @@ mysqli_close($link);
|
|||
|
||||
<div id="fullscreen">
|
||||
<div id="middlerow">
|
||||
...
|
||||
<?php echo($out); ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -5,6 +5,11 @@ require('include/muoribene.php');
|
|||
require('include/sessionstart.php');
|
||||
require('include/myconn.php');
|
||||
require('include/getadmacc.php');
|
||||
require('include/menu.php');
|
||||
$menu['menu']['selected']=true;
|
||||
$menu['menu']['submenu']['instances']['href']=null;
|
||||
$menu['menu']['submenu']['instances']['selected']=true;
|
||||
buildmenu($menu);
|
||||
|
||||
$dbg='';
|
||||
|
||||
|
@ -28,6 +33,7 @@ function hspech($str) {
|
|||
<link rel="icon" type="image/png" href="imgs/icona-512.png" sizes="512x512">
|
||||
<link rel="apple-touch-icon-precomposed" href="imgs/icona-180.png">
|
||||
<link rel="stylesheet" type="text/css" href="theme.css?v=<?php echo($cjrand); ?>">
|
||||
<script language="JavaScript" src="js/menu.js?v=<?php echo($cjrand); ?>"></script>
|
||||
<script language="JavaScript">
|
||||
<!--
|
||||
//-->
|
||||
|
@ -37,6 +43,9 @@ function hspech($str) {
|
|||
|
||||
<nav>
|
||||
<div id="hmenu">
|
||||
<ul>
|
||||
<?php echo($menuout); ?>
|
||||
</ul>
|
||||
<div class="mtit">Your instances</div>
|
||||
<div id="rightdiv">
|
||||
<a href="logout.php" class="rlinks"><img src="imgs/esci.svg" title="Sign out"></a>
|
||||
|
|
|
@ -1,33 +1,97 @@
|
|||
<?php
|
||||
|
||||
$menu=array(
|
||||
'istanze'=>array('liadd'=>null, 'href'=>null, 'title'=>'Istanze', 'selected'=>false, 'submenu'=>
|
||||
if ($account['Level']!='guest') {
|
||||
// questo qua sotto è per fare le prove
|
||||
/*$menu=array(
|
||||
'menu'=>array('liadd'=>null, 'href'=>null, 'title'=>'Menu', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'elenco'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Elenco', 'selected'=>false, 'submenu'=>null),
|
||||
'modifica'=>array('liadd'=>null, 'href'=>null, 'title'=>'Modifica', 'selected'=>false, 'submenu'=>null)
|
||||
),
|
||||
),
|
||||
/* 'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'forse'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Forse', 'selected'=>false, 'submenu'=>null)*/
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
<li><a href=".">Guide</a></li>
|
||||
<li><a href="instances">Instances</a></li>
|
||||
<li><a href="about">About us</a></li>
|
||||
<li onmouseover="chulsh(this,true)" onmouseout="chulsh(this,false)">Language
|
||||
<ul class="ula" onmouseover="ulsh(this,true)" onmouseout="ulsh(this,false)">
|
||||
<li><a href="#">English</a></li>
|
||||
<li><a href="#">Italiano</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
*/
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>null),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'certo'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Certo', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>null),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
),
|
||||
),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'forse'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Forse', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>null),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
),
|
||||
),
|
||||
'logout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Log out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
)
|
||||
);*/
|
||||
$menu=array(
|
||||
'menu'=>array('liadd'=>null, 'href'=>null, 'title'=>'Menu', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Notifications', 'selected'=>false, 'submenu'=>null),
|
||||
'signout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Sign out', 'selected'=>false, 'submenu'=>null)
|
||||
)
|
||||
)
|
||||
);
|
||||
} else {
|
||||
$menu=array(
|
||||
'menu'=>array('liadd'=>null, 'href'=>null, 'title'=>'Menu', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'guestinsts.php', 'title'=>'Instances', 'selected'=>false, 'submenu'=>null),
|
||||
'account'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Account', 'selected'=>false, 'submenu'=>null),
|
||||
'signout'=>array('liadd'=>null, 'href'=>'logout.php', 'title'=>'Sign out', 'selected'=>false, 'submenu'=>null),
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
// $menuout va sempre wrappato in <ul></ul> che abbia una classe css come quella che si vede in theme.css (#hmenu ul ecc.)
|
||||
$menuout='';
|
||||
|
||||
function buildmenu($menu) {
|
||||
function buildmenu($menu,$submenu=false) {
|
||||
global $menuout;
|
||||
foreach ($menu as $key=>$arr) {
|
||||
$menuout.='<li';
|
||||
|
@ -40,9 +104,9 @@ function buildmenu($menu) {
|
|||
else
|
||||
$menuout.=$arr['title'];
|
||||
if (!is_null($arr['submenu'])) {
|
||||
// qui bisognerebbe aggiungere che a seconda del "livello" imposta class giusta: ula, oppure ulb per livello > 1
|
||||
$menuout.=N.'<ul class="ula" onmouseover="ulsh(this,true)" onmouseout="ulsh(this,false)">'.N;
|
||||
buildmenu($arr['submenu']);
|
||||
($submenu) ? $class='ulb' : $class='ula';
|
||||
$menuout.=N.'<ul class="'.$class.'" onmouseover="ulsh(this,true)" onmouseout="ulsh(this,false)">'.N;
|
||||
buildmenu($arr['submenu'],true);
|
||||
$menuout.='</ul>'.N;
|
||||
}
|
||||
$menuout.='</li>'.N;
|
||||
|
|
|
@ -8,10 +8,9 @@ require('include/getadmacc.php');
|
|||
if ($account['Level']=='guest')
|
||||
muoribene('Sorry, you are not authorized.',true);
|
||||
require('include/menu.php');
|
||||
$menu['istanze']['href']=null;
|
||||
$menu['istanze']['selected']=true;
|
||||
$menu['istanze']['submenu']['elenco']['href']=null;
|
||||
$menu['istanze']['submenu']['elenco']['selected']=true;
|
||||
$menu['menu']['selected']=true;
|
||||
$menu['menu']['submenu']['instances']['href']=null;
|
||||
$menu['menu']['submenu']['instances']['selected']=true;
|
||||
buildmenu($menu);
|
||||
|
||||
$dbg='';
|
||||
|
@ -262,7 +261,7 @@ while ($row=mysqli_fetch_assoc($res)) {
|
|||
}
|
||||
|
||||
if ($jsaddrows!='') {
|
||||
$jsaddrows.='document.getElementById("filbut").value="Rimuovi tutti i criteri di ricerca";'.N;
|
||||
$jsaddrows.='document.getElementById("filbut").value="Rimuovi tutti i criteri di filtraggio";'.N;
|
||||
$jsaddrows.='synctai();'.N;
|
||||
}
|
||||
if ($jsordaddrows!='') {
|
||||
|
@ -344,36 +343,8 @@ while ($row=mysqli_fetch_assoc($res)) {
|
|||
$presopts.='<option value="'.$row['ID'].'" selected>'.hspech($row['Name']).'</option>'.N;
|
||||
}
|
||||
|
||||
$chunksize=20; // questo deve essere settato paro-paro in notifsh.php
|
||||
$i=0;
|
||||
$notifs='<div id="notifc">'.N;
|
||||
$notifs.='<div id="notifs" onscroll="morenotifs();">'.N;
|
||||
$unreadnotifs=false;
|
||||
$res=mysqli_query($link,'SELECT * FROM Notifications ORDER BY Microtime DESC')
|
||||
or muoribene(mysqli_error($link),true);
|
||||
while ($row=mysqli_fetch_assoc($res)) {
|
||||
if ($row['Seen']==0) {
|
||||
$unreadnotifs=true;
|
||||
$notifclass='notifunseen';
|
||||
} else {
|
||||
$notifclass='notifseen';
|
||||
}
|
||||
$i++;
|
||||
if ($i<=$chunksize) {
|
||||
if ($i==1) $fntime=$row['Microtime'];
|
||||
$notifs.='<div id="notif-'.$row['ID'].'" class="'.$notifclass.'" onclick="markread(this)">'.strftime('%d/%m/%y %T',$row['Microtime']).': '.$row['Notification'].'</div>'.N;
|
||||
}
|
||||
}
|
||||
$notifs.='</div>'.N;
|
||||
$notifs.='<div id="notifa"><a href="notifs.php">Vedi tutte le notifiche</a></div>'.N;
|
||||
$notifs.='</div>'.N;
|
||||
if ($unreadnotifs) {
|
||||
$notifimgoff='imgs/bell_act_off.svg';
|
||||
$notifimgon='imgs/bell_act_on.svg';
|
||||
} else {
|
||||
$notifimgoff='imgs/bell_off.svg';
|
||||
$notifimgon='imgs/bell_on.svg';
|
||||
}
|
||||
require('include/notifs.php');
|
||||
$notifs=notifs($link);
|
||||
|
||||
mysqli_close($link);
|
||||
|
||||
|
@ -403,111 +374,20 @@ if ($filtordon) {
|
|||
<link rel="stylesheet" type="text/css" href="theme.css?v=<?php echo($cjrand); ?>">
|
||||
<script language="JavaScript">
|
||||
<!--
|
||||
<?php require('js/notifs.js.php'); ?>
|
||||
function shideplancia() {
|
||||
var plancia=document.getElementById('plancia');
|
||||
var plctrl=document.getElementById('lente');
|
||||
if (plancia.style.display=='block') {
|
||||
plancia.style.display='none';
|
||||
plctrl.src='<?php echo($filtordimgoff); ?>';
|
||||
plctrl.title='Mostra il pannello di ricerca e ordinamento';
|
||||
plctrl.title='Mostra il pannello di filtraggio e ordinamento';
|
||||
} else {
|
||||
plancia.style.display='block';
|
||||
plctrl.src='<?php echo($filtordimgon); ?>';
|
||||
plctrl.title='Nascondi il pannello di ricerca e ordinamento';
|
||||
plctrl.title='Nascondi il pannello di filtraggio e ordinamento';
|
||||
}
|
||||
}
|
||||
notifimgon='<?php echo($notifimgon); ?>';
|
||||
notifimgoff='<?php echo($notifimgoff); ?>';
|
||||
function shidenotifs() {
|
||||
var notifc=document.getElementById('notifc');
|
||||
var ctrli=document.getElementById('bell');
|
||||
if (notifc.style.display=='block') {
|
||||
notifc.style.display='none';
|
||||
ctrli.src=notifimgoff;
|
||||
ctrli.title='Mostra le notifiche';
|
||||
} else {
|
||||
notifc.style.display='block';
|
||||
ctrli.src=notifimgon;
|
||||
ctrli.title='Nascondi le notifiche';
|
||||
}
|
||||
}
|
||||
function markread(notif) {
|
||||
let xhr=new XMLHttpRequest();
|
||||
xhr.open('GET','notifsh.php?act=markread&id='+notif.id.replace(/^notif-([0-9]+)$/,'$1'));
|
||||
xhr.responseType='json';
|
||||
xhr.send();
|
||||
xhr.onload=function() {
|
||||
notif.className='notifseen';
|
||||
let jarr=xhr.response;
|
||||
if (jarr['hmunseen']==0) {
|
||||
notifimgon='imgs/bell_on.svg';
|
||||
notifimgoff='imgs/bell_off.svg';
|
||||
bell.src=notifimgon;
|
||||
}
|
||||
};
|
||||
xhr.onerror=function() {
|
||||
alert('La richiesta è fallita.');
|
||||
};
|
||||
}
|
||||
lmt=<?php echo($fntime); ?>;
|
||||
chunk=0;
|
||||
end=false;
|
||||
loading=false;
|
||||
function morenotifs() {
|
||||
if (!loading && !end && notifs.scrollHeight-notifs.clientHeight-notifs.scrollTop<20) {
|
||||
loading=true;
|
||||
chunk++;
|
||||
let xhr=new XMLHttpRequest();
|
||||
xhr.open('GET','notifsh.php?act=loadchunk&chunk='+chunk);
|
||||
xhr.responseType='json';
|
||||
xhr.send();
|
||||
xhr.onload=function() {
|
||||
let jarr=xhr.response;
|
||||
//console.log(jarr);
|
||||
let i=0, html='';
|
||||
for (i=0; i<jarr.length; i++)
|
||||
html+=jarr[i];
|
||||
notifs.innerHTML+=html;
|
||||
if (jarr.length<<?php echo($chunksize); ?>)
|
||||
end=true;
|
||||
loading=false;
|
||||
};
|
||||
xhr.onerror=function() {
|
||||
alert('La richiesta è fallita.');
|
||||
};
|
||||
}
|
||||
}
|
||||
loadingupd=false;
|
||||
function updnotifs() {
|
||||
if (!loadingupd) {
|
||||
loadingupd=true;
|
||||
let xhr=new XMLHttpRequest();
|
||||
xhr.open('GET','notifsh.php?act=loadnew&lmt='+lmt);
|
||||
xhr.responseType='json';
|
||||
xhr.send();
|
||||
xhr.onload=function() {
|
||||
let jarr=xhr.response;
|
||||
//console.log(jarr);
|
||||
let i=0, html='';
|
||||
for (i=0; i<jarr['buf'].length; i++)
|
||||
html+=jarr['buf'][i];
|
||||
notifs.innerHTML=html+notifs.innerHTML;
|
||||
lmt=jarr['newlmt'];
|
||||
if (jarr['newunread']) {
|
||||
notifimgoff='imgs/bell_act_on.svg';
|
||||
notifimgon='imgs/bell_act_off.svg';
|
||||
(notifc.style.display=='block') ? bell.src=notifimgoff : bell.src=notifimgon;
|
||||
}
|
||||
loadingupd=false;
|
||||
};
|
||||
xhr.onerror=function() {
|
||||
alert('La richiesta è fallita.');
|
||||
};
|
||||
} else {
|
||||
console.log('Già sto caricando...');
|
||||
}
|
||||
}
|
||||
updint=setInterval(updnotifs,3000);
|
||||
function hent(str) {
|
||||
return str.replace(/&/g,'&').replace(/>/g,'>').replace(/</g,'<').replace(/"/g,'"');
|
||||
}
|
||||
|
@ -645,7 +525,7 @@ function addrow(index,refresh) {
|
|||
popusels(index,false);
|
||||
}
|
||||
} else {
|
||||
alerta('<p>Non è possibile impostare più di 8 criteri di ricerca.</p>',false);
|
||||
alerta('<p>Non è possibile impostare più di 8 criteri di filtraggio.</p>',false);
|
||||
}
|
||||
}
|
||||
function ordaddrow(index,refresh) {
|
||||
|
@ -785,7 +665,7 @@ function remrow(index) {
|
|||
table.deleteRow(index);
|
||||
synctai();
|
||||
if (table.rows.length<2)
|
||||
document.getElementById('filbut').value='Aggiungi criteri di ricerca';
|
||||
document.getElementById('filbut').value='Aggiungi criteri di filtraggio';
|
||||
}
|
||||
function ordremrow(index) {
|
||||
var table=document.getElementById('planciaord');
|
||||
|
@ -810,9 +690,9 @@ function manfil() {
|
|||
var crows=table.rows.length;
|
||||
if (crows<2) {
|
||||
addrow(1,true);
|
||||
filbut.value='Rimuovi tutti i criteri di ricerca';
|
||||
filbut.value='Rimuovi tutti i criteri di filtraggio';
|
||||
} else {
|
||||
confirma('<p>Confermi di voler rimuovere tutti i criteri di ricerca?</p>','truncfil();filbut.value=\'Aggiungi criteri di ricerca\'');
|
||||
confirma('<p>Confermi di voler rimuovere tutti i criteri di filtraggio?</p>','truncfil();filbut.value=\'Aggiungi criteri di filtraggio\'');
|
||||
}
|
||||
}
|
||||
function manord() {
|
||||
|
@ -911,7 +791,7 @@ function loadpres() {
|
|||
setrow(i+1, jarr['f'][i]['OpenPar'], jarr['f'][i]['Field'], jarr['f'][i]['Cond'], jarr['f'][i]['ValueSel'], jarr['f'][i]['ValueInp'], jarr['f'][i]['ClosePar'], jarr['f'][i]['AndOr']);
|
||||
}
|
||||
if (jarr['f'].length>0)
|
||||
document.getElementById('filbut').value='Rimuovi tutti i criteri di ricerca';
|
||||
document.getElementById('filbut').value='Rimuovi tutti i criteri di filtraggio';
|
||||
truncord();
|
||||
for (i=0; i<jarr['o'].length; i++) {
|
||||
console.log(jarr['o'][i]);
|
||||
|
@ -1054,14 +934,14 @@ function pupoff() {
|
|||
</ul>
|
||||
<div class="mtit">Elenco istanze</div>
|
||||
<div id="rightdiv">
|
||||
<img src="<?php echo($filtordimgoff); ?>" id="lente" class="rlinks" title="Mostra il pannello di ricerca e ordinamento" onclick="shideplancia();">
|
||||
<img src="<?php echo($notifimgoff); ?>" id="bell" class="rlinks" title="Show notifications" onclick="shidenotifs();">
|
||||
<img src="<?php echo($filtordimgoff); ?>" id="lente" class="rlinks" title="Mostra il pannello di filtraggio e ordinamento" onclick="shideplancia();">
|
||||
<img src="<?php echo($notifs['imgoff']); ?>" id="bell" class="rlinks" title="Show notifications" onclick="shidenotifs();">
|
||||
<img src="imgs/esci.svg" class="rlinks" title="Esci" onclick="document.location.href='logout.php';">
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<?php echo($notifs); ?>
|
||||
<?php echo($notifs['div']); ?>
|
||||
|
||||
<div id="popup">
|
||||
<div id="inpopup">
|
||||
|
@ -1082,7 +962,7 @@ function pupoff() {
|
|||
<div id="plancia">
|
||||
<form method="post" id="f" onsubmit="return ckf();">
|
||||
<table id="planciafil" class="planciatab">
|
||||
<tr><td colspan="8"><input type="button" id="filbut" value="Aggiungi criteri di ricerca" class="ctrlbut" onclick="manfil();"></td></tr>
|
||||
<tr><td colspan="8"><input type="button" id="filbut" value="Aggiungi criteri di filtraggio" class="ctrlbut" onclick="manfil();"></td></tr>
|
||||
</table>
|
||||
<table id="planciaord" class="planciatab">
|
||||
<tr><td colspan="4"><input type="button" id="ordbut" value="Aggiungi criteri di ordinamento" class="ctrlbut" onclick="manord();"></td></tr>
|
||||
|
|
|
@ -17,7 +17,7 @@ if (array_key_exists('act',$_GET) && $_GET['act']=='markread' && array_key_exist
|
|||
mysqli_close($link);
|
||||
} elseif (array_key_exists('act',$_GET) && $_GET['act']=='loadchunk' && array_key_exists('chunk',$_GET) && preg_match('/^[0-9]+$/',$_GET['chunk'])===1) {
|
||||
$_GET['chunk']+=0;
|
||||
$chunksize=20; // questo dev'essere uguale in instances.php
|
||||
$chunksize=20; // questo dev'essere uguale in include/notifs.php
|
||||
require('include/myconn.php');
|
||||
$res=mysqli_query($link,'SELECT * FROM Notifications ORDER BY Microtime DESC LIMIT '.($_GET['chunk']*$chunksize).','.$chunksize)
|
||||
or muoribene(mysqli_error($link),true);
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
:root {
|
||||
--MenuEntryWidth: 100px;
|
||||
--HiColor: #78b1e2;
|
||||
}
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
|
@ -252,7 +256,7 @@ input {
|
|||
}
|
||||
#inpopup .waitbub {
|
||||
background-color: black;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
padding: 16px;
|
||||
border-radius: 20px;
|
||||
width: 160px;
|
||||
|
@ -261,7 +265,7 @@ input {
|
|||
}
|
||||
#inpopup .loadsavepresbub {
|
||||
background-color: black;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
padding: 16px;
|
||||
border-radius: 20px;
|
||||
width: 320px;
|
||||
|
@ -340,22 +344,22 @@ input {
|
|||
overflow: visible;
|
||||
}
|
||||
#hmenu ul li {
|
||||
width: 80px;
|
||||
width: var(--MenuEntryWidth);
|
||||
height: 32px;
|
||||
text-align: center;
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
}
|
||||
#hmenu ul li:hover {
|
||||
background-color: rgba(255,255,255,0.10);
|
||||
cursor: default;
|
||||
}
|
||||
#hmenu ul li a {
|
||||
width: 80px;
|
||||
width: var(--MenuEntryWidth);
|
||||
line-height: 32px;
|
||||
display: block;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
}
|
||||
#hmenu .ula {
|
||||
position: absolute;
|
||||
|
@ -365,13 +369,13 @@ input {
|
|||
}
|
||||
#hmenu .ulb {
|
||||
background-color: rgba(0,0,0,0.85);
|
||||
left: 80px;
|
||||
left: var(--MenuEntryWidth);
|
||||
position: relative;
|
||||
top: -32px;
|
||||
display: none;
|
||||
}
|
||||
#hmenu .ula li, #hmenu .ulb li {
|
||||
width: 80px;
|
||||
width: var(--MenuEntryWidth);
|
||||
height: 32px;
|
||||
display: block;
|
||||
float: none;
|
||||
|
@ -383,12 +387,13 @@ input {
|
|||
text-decoration: underline;
|
||||
}
|
||||
#hmenu .hil {
|
||||
background-color: rgba(34,104,170,0.40);
|
||||
color: white;
|
||||
background-color: var(--HiColor);
|
||||
color: black;
|
||||
}
|
||||
#hmenu .hil:hover {
|
||||
cursor: default;
|
||||
text-decoration: none;
|
||||
color: var(--HiColor);
|
||||
}
|
||||
#hmenu .ula li.hil:hover, #hmenu .ulb li.hil:hover {
|
||||
text-decoration: none;
|
||||
|
@ -398,7 +403,7 @@ input {
|
|||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
height: 32px;
|
||||
line-height: 32px;
|
||||
vertical-align: middle;
|
||||
|
@ -410,7 +415,7 @@ input {
|
|||
text-align: center;
|
||||
}
|
||||
.rlinks a {
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
}
|
||||
.rlinks:hover {
|
||||
cursor: pointer;
|
||||
|
@ -425,7 +430,7 @@ input {
|
|||
line-height: 32px;
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
}
|
||||
|
||||
#plancia {
|
||||
|
@ -438,7 +443,7 @@ input {
|
|||
padding: 1px;
|
||||
border-radius: 0 0 7px 7px;
|
||||
font-size: 9pt;
|
||||
color: #78b1e2;
|
||||
color: var(--HiColor);
|
||||
display: none;
|
||||
}
|
||||
#plancia .planciatab {
|
||||
|
|
Loading…
Reference in a new issue