1KA_F2F/admin/survey/classes/surveyData/old/getCollectTimer.php

110 lines
3.9 KiB
PHP
Raw Normal View History

2020-08-14 13:36:36 +02:00
<?php
// nov, poenoten nacin progress bara
if (isset($_GET['getProgress']) && $_GET['getProgress'] == 'true') {
$anketa = $_REQUEST['anketa'];
$return = array();
session_start();
if (isset($_SESSION['progressBar'][$anketa])) {
$return['status'] = $_SESSION['progressBar'][$anketa]['status'];
$return['total'] = $_SESSION['progressBar'][$anketa]['total'];
$return['current'] = $_SESSION['progressBar'][$anketa]['current'];
if ($_SESSION['progressBar'][$anketa]['status'] == 'end') {
unset($_SESSION['progressBar'][$anketa]);
}
} else {
$return['status'] = 'null';
}
session_commit();
echo json_encode($return);
// star nacin progresbara v podatkih in analizah
} else {
# izrisujemo progress bar z ajax-om
if (isset($_GET['ajaxTimer']) && $_GET['ajaxTimer'] == 'true') {
/*
$actions = array(
1=>'Inicializacija...',
2=>'Obdelujem datoteke s strukturo...',
3=>'Obdelujem datoteke s podatki...',
9=>'Končano...',
-1=>'Napaka...',
);
*/
session_start();
#time
$return['t'] = ($_SESSION['PMD']['start_time'] != null && (strtotime("now") - $_SESSION['PMD']['start_time']) > 0 )
? date('i:s', (strtotime("now") - $_SESSION['PMD']['start_time']))
: '00:00' ;
#id
$return['id'] = $_SESSION['PMD']['actID'];
# skupni procenti
$return['pa'] = ($_SESSION['PMD']['all'] == 0)
? number_format(100, 0, '', '')
: number_format((($_SESSION['PMD']['current'] / $_SESSION['PMD']['all']) * 100), 0, '', '');
# procenti headerja
if ($_SESSION['PMD']['actID'] == 2) {
$return['ph'] = ($_SESSION['PMD']['allHead'] == 0 || $_SESSION['PMD']['current'] >= $_SESSION['PMD']['allHead'])
? number_format(100, 0, '', '')
: number_format((($_SESSION['PMD']['current'] / $_SESSION['PMD']['allHead']) * 100), 0, '', '');
# trenutni zapis
$return['nr'] = $_SESSION['PMD']['nrRow'];
$return['cr'] = $_SESSION['PMD']['current'] .'/'. $_SESSION['PMD']['allHead'];
}
if ($_SESSION['PMD']['actID'] == 3) {
$curent_data = $_SESSION['PMD']['current']-$_SESSION['PMD']['allHead'] < 0 ? 0 : $_SESSION['PMD']['current']-$_SESSION['PMD']['allHead'];
# procenti data
$return['pd'] = ($_SESSION['PMD']['all'] == 0)
? number_format(100, 0, '', '')
: number_format((($_SESSION['PMD']['all'] > 0) ? ( $curent_data / $_SESSION['PMD']['all']) * 100 : 100), 0, '', '');
$return['cd'] = $curent_data .' / ' .$_SESSION['PMD']['all'];
}
# procent trenutnega zapisa
if ($_SESSION['PMD']['actID'] == 3) {
# prikazuejemo samo za status 3
$return['pr'] = number_format($_SESSION['PMD']['percentRow'], 0, '', ''); # procent trenutnega zapisa
$return['nr'] = $_SESSION['PMD']['nrRow']; # trenutni zapis
}
echo json_encode($return);
} else { # star način za podatke
define('EXPORT_FOLDER', 'tmp', true);
include($_SERVER['DOCUMENT_ROOT'].'/function.php');
include_once $_SERVER['DOCUMENT_ROOT'].'/admin/survey/definition.php';
$folder = $site_path . EXPORT_FOLDER.'/';
$anketa = $_POST['anketa'];
$_qry_all = sisplet_query('SELECT count(*) FROM srv_user AS u WHERE u.ank_id = \''.$anketa.'\'');
$_allCount = mysqli_fetch_row($_qry_all);
$allCount = $_allCount[0];
$str_qry_users = 'SELECT IF(UNIX_TIMESTAMP(MAX(time_edit)) = 0,UNIX_TIMESTAMP(MAX(time_insert)),UNIX_TIMESTAMP(MAX(time_edit))) AS DATE FROM srv_user WHERE ank_id = \''.$anketa.'\'';
$qry_users = sisplet_query($str_qry_users) or die(mysqli_error($GLOBALS['connect_db']));
if (mysqli_num_rows($qry_users)) {
$row_users = mysqli_fetch_row($qry_users);
$timestamp = $row_users[0];
}
$_dataFileName = $folder.'export_data_'.$anketa.'_'.$timestamp.'.dat';
#preberemo št vrstic v fajlu
$recCount = exec('wc -l '.$_dataFileName)+1;
echo '<div class="anl_red_ba body_anketa anl_ac"><br/>Obdelujemo zapis '.(int)$recCount.' od '.(int)$allCount.'!<br/><br/></div>';
}
}
?>