$this->export_data_show_recnum=SurveySetting::getInstance()->getSurveyMiscSetting('export_data_show_recnum');//ali je potrebno pokazati recnum ob vsakem respondentu
$this->exportDataPageBreak=(int)SurveySetting::getInstance()->getSurveyMiscSetting('export_data_PB');//ali mora vsak izpis odgovorov respondenta zaceti na svoji strani
$sqluString="SELECT id, last_status, lurker, recnum FROM srv_user WHERE ank_id = '".$this->anketa."' ".$izbranStatusProfile." AND deleted='0' AND preview='0' AND id='".$this->usr_id."' ORDER BY recnum";
//echo $sqluString;
$sqlu=sisplet_query($sqluString);
$rowu=mysqli_fetch_array($sqlu);
$recnum=$rowu['recnum'];
if($recnum&&$this->export_data_show_recnum){
$recnumBesedilo="(Recnum $recnum)";
}else{
$recnumBesedilo="";
}
//pridobitev podatkov trenutnega respondenta za izpis Recnum - konec
//TODO: TUdi tu se celotna spremenljivka prenaša naprej
$sqlSpremenljivke=sisplet_query("SELECT id, tip, visible, sistem, variable, naslov, info, orientation FROM srv_spremenljivka WHERE gru_id='".$this->grupa."' AND visible='1' ORDER BY vrstni_red ASC");
// Ce imamo kombinirano tabelo pogledamo ce prikazujemo katero od podtabel
if($rowSpremenljivke['tip']==24){
$subGrids=array();
$showGridMultiple=false;
// Loop po podskupinah gridov
$sqlSubGrid=sisplet_query("SELECT m.spr_id, s.tip, s.enota FROM srv_grid_multiple m, srv_spremenljivka s WHERE m.parent='".$spremenljivka."' AND m.spr_id=s.id");
$tex.=$question->displayQuestionText($rowSpremenljivke,$stevilcenje,$export_subtype,$preveriSpremenljivko,$this->loop_id,$export_data_type);//izpisi tekst vprasanja
$tex.=$question->displayQuestionText($rowSpremenljivke,$stevilcenje,$export_subtype,$preveriSpremenljivko,$this->loop_id,$export_data_type);//izpisi tekst vprasanja
// Znotraj loopa vsak element posebej izrisemo kot objekt LatexFreqElement - pomembno, ker zelimo recimo posamezno tabelo frekvenc (sa specificno vprasanje) izrisati tudi v kaksnem drugem porocilu (npr custom report). Zato se mora vsak element neodvisno izrisovati.
//$this->tex .= ' testni tekst display survey';
return$tex;
}
#funkcija, ki skrbi za izpis praznega vprasalnika in vprasalnika z odgovori enega respondenta - konec
#funkcija, ki skrbi za izpis vseh odgovorov (vsi respondenti -> max 300) //po outputAllResults() iz class.pdfIzvozResults.php
$sqluString="SELECT id, last_status, lurker, recnum FROM srv_user WHERE ank_id = '".$this->anketa."' ".$izbranStatusProfile." AND deleted='0' AND preview='0' ORDER BY recnum";
#prenos odgovorov vsakega respondenta na novo stran, če je to potrebno
//if($this->exportDataPageBreak == 1){ //ce mora vsak respondent imeti svoje odgovore na svoji strani
if($this->exportDataPageBreak==1&&$export_format=='pdf'){//ce mora vsak respondent imeti svoje odgovore na svoji strani in je pdf izvoz, saj za rtf pagebreak ne deluje
$tex.=$this->texPageBreak;
}
#prenos odgovorov vsakega respondenta na novo stran, če je to potrebno - konec
//$this->export_data_show_recnum = 1;
#izpis statusa respondenta in anketiranja
if($this->export_data_show_recnum==1){//ce je potrebno pokazati stevilko respondenta
$sqlString="SELECT s.* FROM srv_spremenljivka s, srv_grupa g WHERE s.gru_id=g.id AND g.ank_id='".$this->anketa."' ORDER BY g.vrstni_red ASC, s.vrstni_red ASC";
$sql1=sisplet_query("SELECT thread, note FROM srv_spremenljivka WHERE id = '$row[id]'");
$row1=mysqli_fetch_array($sql1);
$orderby=$sortpostorder==1?'DESC':'ASC';
$tid=$row1['thread'];
$only_unresolved="";
$only_unresolved2="";
if($this->commentType==1)$only_unresolved=" AND ocena <= 1 ";
if($this->commentType==1)$only_unresolved2=" AND text2 <= 1 ";
if($this->commentType==2)$only_unresolved=" AND ocena = 0 ";
if($this->commentType==2)$only_unresolved2=" AND text2 = 0 ";
if($this->commentType==3)$only_unresolved=" AND ocena = 1 ";
if($this->commentType==3)$only_unresolved2=" AND text2 = 1 ";
if($this->commentType==4)$only_unresolved=" AND ocena = 2 ";
if($this->commentType==4)$only_unresolved2=" AND text2 = 2 ";
if($this->commentType==5)$only_unresolved=" AND ocena = 3 ";
if($this->commentType==5)$only_unresolved2=" AND text2 = 3 ";
$tema_vsebuje=substr($lang['srv_forum_intro'],0,10);// da ne prikazujemo 1. default sporocila
if($admin_type<=$question_comment_viewadminonly){// vidi vse komentarje
$sqlt=sisplet_query("SELECT uid, time, vsebina FROM post WHERE vsebina NOT LIKE '%{$tema_vsebuje}%' AND tid='$tid' $only_unresolved ORDER BY time $orderby, id $orderby");
}elseif($question_comment_viewauthor==1){// vidi samo svoje komentarje
$sqlt=sisplet_query("SELECT uid, time, vsebina FROM post WHERE vsebina NOT LIKE '%{$tema_vsebuje}%' AND tid='$tid' $only_unresolved AND uid='$global_user_id' ORDER BY time $orderby, id $orderby");
}else{// ne vidi nobenih komentarjev
$sqlt=sisplet_query("SELECT uid, time, vsebina FROM post WHERE 1=0");
}
$sql2=sisplet_query("SELECT COUNT(*) AS count FROM srv_data_text".$this->db_table." WHERE spr_id='0' AND vre_id='$row[id]' $only_unresolved2");
//$tex .= '\textbf{'.$question->encodeText($lang['srv_repondent_comment']).'}'; //izpisa naslova komentarjev
$tex.='\textcolor{komentar}{\textbf{'.$question->encodeText($lang['srv_repondent_comment']).'}}';//izpisa naslova komentarjev
$tex.='\\\\';
//$this->pdf->Ln(3);
if($this->commentType==1)$only_unresolved=" AND d.text2 <= 1 ";else$only_unresolved="";
$sqlt=sisplet_query("SELECT d.text AS text, u.time_edit AS time_edit FROM srv_data_text".$this->db_table." d, srv_user u WHERE d.spr_id='0' AND d.vre_id='$row[id]' AND u.id=d.usr_id $only_unresolved2 ORDER BY d.id ASC");
// Preverjamo ce je vprasanje prazno in ce preskakujemo prazne
if($this->skipEmpty==1&&!$gridMultiple){
$isEmpty=true;
//echo "isEmpty: ".$isEmpty."</br>";
switch($row['tip']){
case1://radio
case2://check
case3://select -> radio
//$sqlUserAnswer = sisplet_query("SELECT * FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$row[id]' AND usr_id='".$this->usr_id."' AND vre_id!='-2'");
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$row[id]' AND usr_id='".$this->usr_id."' AND vre_id>'0' AND loop_id $loop_id";
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_grid".$this->db_table." WHERE spr_id = '".$row['id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
//$sqlUserAnswer = sisplet_query("SELECT * FROM srv_data_checkgrid".$this->db_table." WHERE spr_id = '".$row['id']."' AND usr_id = '".$this->usr_id."'");
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_checkgrid".$this->db_table." WHERE spr_id = '".$row['id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
}
else{
//$sqlUserAnswer = sisplet_query("SELECT * FROM srv_data_textgrid".$this->db_table." WHERE spr_id = '".$row['id']."' AND usr_id = '".$this->usr_id."'");
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_textgrid".$this->db_table." WHERE spr_id = '".$row['id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_text".$this->db_table." WHERE spr_id='".$row['id']."' AND usr_id='".$this->usr_id."' AND loop_id $loop_id";
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_text".$this->db_table." WHERE spr_id='".$row['id']."' AND usr_id='".$this->usr_id."' AND loop_id $loop_id";
$sqlSubGrid=sisplet_query("SELECT m.spr_id AS spr_id, s.tip AS tip, s.enota FROM srv_grid_multiple AS m LEFT JOIN srv_spremenljivka AS s ON m.spr_id=s.id WHERE m.parent='".$spremenljivka."'");
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_grid".$this->db_table." WHERE spr_id = '".$rowSubGrid['spr_id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
}
elseif($rowSubGrid['tip']==16){
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_checkgrid".$this->db_table." WHERE spr_id = '".$rowSubGrid['spr_id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
}
else{
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_textgrid".$this->db_table." WHERE spr_id = '".$rowSubGrid['spr_id']."' AND usr_id = '".$this->usr_id."' AND loop_id $loop_id";
//za podtip izberi lokacijo je treba preverjat posebej, ker se vrstica pri userju vedno kreira ampak brez odgovora
if($row['enota']==3){
$qu="SELECT count(*) as cnt FROM srv_data_map WHERE spr_id='".$row['id']."' AND usr_id='$this->usr_id' AND loop_id $loop_id AND (text NOT REGEXP '^[+\-]?[0-9]+$' OR text>=0);";
$sql=sisplet_query($qu,'obj');
if($sql->cnt>0)
$isEmpty=false;
}
else{
//$sqlUserAnswerString ="SELECT lat, lng, address, text FROM srv_data_map WHERE spr_id='".$row['id']."' AND usr_id='".$this->usr_id."' ";
$sqlUserAnswerString="SELECT COUNT(*) AS st FROM srv_data_map WHERE spr_id='".$row['id']."' AND usr_id='".$this->usr_id."' AND loop_id $loop_id";
$sql2=sisplet_query("SELECT v.variable AS variable FROM srv_condition_vre c, srv_vrednost v WHERE cond_id='$row[id]' AND c.vre_id=v.id");
$j=0;
while($row2=mysqli_fetch_array($sql2)){
if($j++!=0)$output.=', ';
$output.=$row2['variable'];
}
// multigrid
}elseif($row['vre_id']>0){
$sql2=sisplet_query("SELECT g.variable AS variable FROM srv_condition_grid c, srv_grid g WHERE c.cond_id='$row[id]' AND c.grd_id=g.id AND g.spr_id='$row[spr_id]'");
$j=0;
while($row2=mysqli_fetch_array($sql2)){
if($j++!=0)$output.=', ';
$output.=$row2['variable'];
}
}
$output.=']';
// textbox in nubmer mata drugacne pogoje in opcije
//$sql = sisplet_query("SELECT parent FROM srv_branching WHERE element_spr = '$element_spr' AND element_if = '$element_if' AND ank_id='".$this->anketa['id']."'");
$sql=sisplet_query("SELECT parent FROM srv_branching WHERE element_spr = '$element_spr' AND element_if = '$element_if' AND ank_id='".$this->anketa."'");
$sql1String="SELECT vre_id FROM srv_data_text".$this->db_table." WHERE spr_id='$spr_id' AND usr_id='".$this->usr_id."' ";
}else{
$sql1String="SELECT vre_id FROM srv_data_text".$this->db_table." WHERE spr_id='$spr_id' ";
}
}
else{
if($this->usr_id){
$sql1String="SELECT vre_id FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$spr_id' AND usr_id='".$this->usr_id."'";
}else{
$sql1String="SELECT vre_id FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$spr_id' ";
}
}
//echo "sql1String: ".$sql1String."</br>";
$sql1=sisplet_query($sql1String);
while($row1=mysqli_fetch_array($sql1)){
$data_vrednost[$row1['vre_id']]=1;
}
$vre_id='';
$i=1;
//$sql = sisplet_query("SELECT * FROM srv_loop_vre WHERE if_id='$if_id'");
$sql=sisplet_query("SELECT lv.vre_id AS vre_id, lv.tip AS tip FROM srv_loop_vre lv, srv_vrednost v WHERE lv.if_id='$if_id' AND lv.vre_id=v.id ORDER BY v.vrstni_red ASC");
while($row=mysqli_fetch_array($sql)){
if($row['tip']==0){// izbran
if(isset($data_vrednost[$row['vre_id']])){
$vre_id.=', '.$row['vre_id'];
$i++;
}
}elseif($row['tip']==1){// ni izbran
if(!isset($data_vrednost[$row['vre_id']])){
$vre_id.=', '.$row['vre_id'];
$i++;
}
}elseif($row['tip']==2){// vedno
$vre_id.=', '.$row['vre_id'];
$i++;
}// nikoli nimamo sploh v bazi, zato ni potrebno nic, ker se nikoli ne prikaze
if($i>$max&&$max>0)break;
}
$vre_id=substr($vre_id,2);
if($vre_id=='')returnnull;
//Stari query srv_vrednost se ni nikjer uporabljal
//$sql = sisplet_query("SELECT l.* FROM srv_loop_data l, srv_vrednost v WHERE l.if_id='$if_id' AND l.id > '$loop_id' AND l.vre_id IN ($vre_id) AND l.vre_id=v.id ORDER BY l.id ASC");
//Problematicni sql, ker ocitno tale zadeva z obj ne dela najbolje
//$sql = sisplet_query("SELECT id FROM srv_loop_data WHERE if_id='$if_id' AND id > '$loop_id' AND vre_id IN ($vre_id) ORDER BY id ASC", "obj");
$sqlTestString="SELECT id FROM srv_loop_data WHERE if_id='$if_id' AND id > '$loop_id' AND vre_id IN ($vre_id) ORDER BY id ASC";
$sqlTest=sisplet_query($sqlTestString);
$rowTest=mysqli_fetch_array($sqlTest);
if(count($sql)>0)
return$rowTest['id'];
//return $sql->id;
else
returnnull;
// number
}elseif($spr['tip']==7){
//$sql1 = sisplet_query("SELECT text FROM srv_data_text".$this->db_table." WHERE spr_id='$spr_id' AND usr_id='".$this->getUserId()."'");
$sql1String="SELECT text FROM srv_data_text".$this->db_table." WHERE spr_id='$spr_id' AND usr_id='".$this->usr_id."'";
//echo "sql1String: ".$sql1String."</br>";
$sql1=sisplet_query($sql1String);
$row1=mysqli_fetch_array($sql1);
$num=(int)$row1['text'];
//$countLoopManjsi = sisplet_query("SELECT COUNT(*) AS st FROM srv_loop_data WHERE if_id='$if_id' AND id <= '$loop_id'", "obj");
$countLoopManjsiString="SELECT COUNT(*) AS st FROM srv_loop_data WHERE if_id='$if_id' AND id <= '$loop_id'";