Fix composer.json
This commit is contained in:
parent
19b5d4e5e7
commit
4a149588ff
27
ajax.php
27
ajax.php
|
@ -55,4 +55,31 @@ switch (get('op')) {
|
|||
echo '{( "name": "filelist_and_upload", "id_module": "'.$id_module.'", "id_record": "'.$id_record.'", "id_plugin": "'.$id_plugin.'" )}';
|
||||
|
||||
break;
|
||||
|
||||
case 'active_users':
|
||||
$posizione = get('id_module');
|
||||
if (isset($id_record)) {
|
||||
$posizione .= ', '.get('id_record');
|
||||
}
|
||||
|
||||
$user = Auth::user();
|
||||
$interval = setting('Timeout notifica di presenza (minuti)') * 60 * 2;
|
||||
|
||||
$dbo->query('UPDATE zz_semaphores SET updated = NOW() WHERE id_utente = :user_id AND posizione = :position', [
|
||||
':user_id' => $user['id'],
|
||||
':position' => $posizione,
|
||||
]);
|
||||
|
||||
// Rimozione record scaduti
|
||||
$dbo->query('DELETE FROM zz_semaphores WHERE DATE_ADD(updated, INTERVAL :interval SECOND) <= NOW()', [
|
||||
':interval' => $interval,
|
||||
]);
|
||||
|
||||
$datas = $dbo->fetchArray('SELECT DISTINCT username FROM zz_semaphores INNER JOIN zz_users ON zz_semaphores.id_utente=zz_users.id WHERE zz_semaphores.id_utente != :user_id AND posizione = :position', [
|
||||
':user_id' => $user['id'],
|
||||
':position' => $posizione,
|
||||
]);
|
||||
|
||||
echo json_encode($datas);
|
||||
break;
|
||||
}
|
||||
|
|
22
call.php
22
call.php
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
|
||||
include_once __DIR__.'/core.php';
|
||||
|
||||
$posizione = $id_module;
|
||||
if (isset($id_record)) {
|
||||
$posizione .= ', '.$id_record;
|
||||
}
|
||||
|
||||
$dbo->query('UPDATE zz_semaphores SET updated = NOW() WHERE id_utente = '.prepare(Auth::user()['id']).' AND posizione = '.prepare($posizione));
|
||||
$dbo->query('DELETE FROM zz_semaphores WHERE DATE_ADD(updated, INTERVAL '.(setting('Timeout notifica di presenza (minuti)') * 2).' SECOND) <= NOW()');
|
||||
|
||||
$datas = $dbo->fetchArray('SELECT DISTINCT username FROM zz_semaphores INNER JOIN zz_users ON zz_semaphores.id_utente=zz_users.id WHERE zz_semaphores.id_utente != '.prepare(Auth::user()['id']).' AND posizione = '.prepare($posizione));
|
||||
|
||||
$result = [];
|
||||
foreach ($datas as $data) {
|
||||
$result[] = [
|
||||
'username' => $data['username'],
|
||||
];
|
||||
}
|
||||
|
||||
echo json_encode($result);
|
|
@ -60,7 +60,7 @@
|
|||
"Modules\\Fatture\\Custom\\": "modules/fatture/custom/src",
|
||||
"Modules\\Anagrafiche\\": "modules/anagrafiche/src",
|
||||
"Modules\\Anagrafiche\\Custom\\": "modules/anagrafiche/custom/src",
|
||||
"Plugins\\Fatturazione\\": "plugins/fatturazione/src"
|
||||
"Plugins\\Fatturazione\\": "plugins/fatturazione/src",
|
||||
"Plugins\\Fatturazione\\Custom\\": "plugins/fatturazione/custom/src"
|
||||
},
|
||||
"files": [
|
||||
|
|
|
@ -17,7 +17,7 @@ include_once $docroot.'/actions.php';
|
|||
echo '{( "name": "widgets", "id_module": "'.$id_module.'", "id_record": "'.$id_record.'", "position": "top", "place": "editor" )}';
|
||||
|
||||
$advanced_sessions = setting('Attiva notifica di presenza utenti sul record');
|
||||
if ($advanced_sessions) {
|
||||
if (!empty($advanced_sessions)) {
|
||||
$dbo->query('DELETE FROM zz_semaphores WHERE id_utente='.prepare(Auth::user()['id']).' AND posizione='.prepare($id_module.', '.$id_record));
|
||||
|
||||
$dbo->query('INSERT INTO zz_semaphores (id_utente, posizione, updated) VALUES ('.prepare(Auth::user()['id']).', '.prepare($id_module.', '.$id_record).', NOW())');
|
||||
|
@ -350,11 +350,11 @@ if ($read_only || !empty($block_edit)) {
|
|||
|
||||
|
||||
<?php
|
||||
if ($advanced_sessions) {
|
||||
if (!empty($advanced_sessions)) {
|
||||
?>
|
||||
|
||||
function getActiveUsers(){
|
||||
$.getJSON('<?php echo ROOTDIR; ?>/call.php', {
|
||||
$.getJSON('<?php echo ROOTDIR; ?>/ajax.php?op=active_users', {
|
||||
id_module: <?php echo $id_module; ?>,
|
||||
id_record: <?php echo $id_record; ?>
|
||||
},
|
||||
|
@ -372,7 +372,7 @@ if ($advanced_sessions) {
|
|||
|
||||
getActiveUsers();
|
||||
|
||||
setInterval(getActiveUsers, <?php echo setting('Timeout notifica di presenza (minuti)') * 1000; ?>);
|
||||
setInterval(getActiveUsers, <?php echo setting('Timeout notifica di presenza (minuti)') * 60 * 1000; ?>);
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
|
Loading…
Reference in New Issue