You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							76 lines
						
					
					
						
							2.6 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							76 lines
						
					
					
						
							2.6 KiB
						
					
					
				| <?php | |
| 
 | |
|     @include '../cgi-bin/conn.conn'; | |
|     @include '../cgi-bin/functions.inc'; | |
|     @include '../cgi-bin/params.inc'; | |
| 
 | |
|     $GLOBALS['sid']=$_GET['sid']; | |
|     $GLOBALS['conn']; | |
| 
 | |
|     $conn=@mysqli_connect($DATAhst,$DATAusr,$DATApwd,$DATAdtb)or die("CONNECTION ERROR"); | |
|     mysqli_set_charset($conn, "utf8"); | |
| 
 | |
|     $qs=mysqli_query($conn, "SELECT * FROM `session` WHERE link='$sid'"); | |
|     $rs=mysqli_fetch_array($qs); | |
| 
 | |
|     $session->name = $rs['name']; | |
|     $session->start = $rs['start']; | |
|     $session->stop = $rs['stop']; | |
|     $session->enabled = intval($rs['enabled']); | |
| 
 | |
|     $messages = array(); | |
| 
 | |
|     $qmMaxProgress=mysqli_query($conn, "SELECT MAX(progress) FROM messages WHERE sid=".$rs['id']); | |
|     $rmMaxProgress=mysqli_fetch_array($qmMaxProgress); | |
|     $qmProgressN=mysqli_query($conn, "SELECT COUNT(progress) FROM messages WHERE progress!=0 AND sid=".$rs['id']); | |
|     $rmProgressN=mysqli_fetch_array($qmProgressN); | |
| 
 | |
|     $session->progress_n = $rmProgressN[0]; | |
|     $session->progress_max = $rmMaxProgress[0]; | |
|     $session->duration = strtotime($rs['stop']) - strtotime($rs['start']); | |
|     $progressCnt=0; | |
|     $stepDuration=$session->duration/($session->progress_n+1); | |
| 
 | |
|     $session->step_duration = $stepDuration; | |
| 
 | |
|     $qm=mysqli_query($conn, "SELECT * FROM messages WHERE sid=".$rs['id']." ORDER BY progress"); | |
|     while($rm=mysqli_fetch_array($qm)){ | |
|         if($rm['progress']){$progressCnt++;} | |
| 
 | |
|         $actions = array(); | |
|         if($rm['actions']){ | |
|             $qa=mysqli_query($conn, "SELECT * FROM actions WHERE id IN (".$rm['actions'].")"); | |
|             while($ra=mysqli_fetch_array($qa)){ | |
|                 $actionsData = array("mid"=>$ra['mid'], | |
|                                     "label"=>$ra['label'], | |
|                                     "description"=>$ra['description']); | |
|                 array_push($actions, $actionsData); | |
|             } | |
|         } | |
| 
 | |
|         $timer = ($rm['progress']!=0) ? | |
|                     date("Y-m-d H:i:s",strtotime($session->start)+($progressCnt*$stepDuration)) : | |
|                     date("Y-m-d H:i:s",strtotime($session->start)+timeSeconds($rm['timer'])); | |
| 
 | |
|         $singleMessage = array("id"=>$rm['id'], | |
|                 "title"=>$rm['title'], | |
|                 "short_text"=>$rm['short_text'], | |
|                 "long_text"=>$rm['long_text'], | |
|                 "image"=>$rm['image'], | |
|                 "actions"=>$actions, | |
|                 "timer"=>$timer | |
|                 ); | |
|         array_push($messages, $singleMessage); | |
| 
 | |
|     } | |
| 
 | |
|     $session->messages = $messages; | |
| 
 | |
| 
 | |
|     header('Access-Control-Allow-Origin: *'); | |
|     header('Content-Type: application/json'); | |
| 
 | |
|     $json = json_encode($session); | |
|     echo $json; | |
| 
 | |
| ?>
 |