diff options
Diffstat (limited to '')
-rw-r--r-- | admin/survey/export/latexclasses/Vprasanja/MultiGridLatex.php | 895 |
1 files changed, 328 insertions, 567 deletions
diff --git a/admin/survey/export/latexclasses/Vprasanja/MultiGridLatex.php b/admin/survey/export/latexclasses/Vprasanja/MultiGridLatex.php index 11f4be2..e7d8347 100644 --- a/admin/survey/export/latexclasses/Vprasanja/MultiGridLatex.php +++ b/admin/survey/export/latexclasses/Vprasanja/MultiGridLatex.php @@ -10,15 +10,16 @@ *****************************************/
-define("PIC_SIZE", "\includegraphics[width=10cm]"); //slika sirine 50mm
-define("ICON_SIZE", "\includegraphics[width=0.5cm]"); //za ikone @ slikovni tip
-define("RADIO_BTN_SIZE", 0.13);
-define("U_SHAPE_WIDTH_U", 4);
-define("U_SHAPE_WIDTH_OKVIR", 3.62);
-define("U_SHAPE_WIDTH_TEXT_U", 2.2);
-define("U_SHAPE_WIDTH_TEXT_OKVIR", 1.81);
-define("MAXSTEVILOSTOLPCEV", 21); //max Stevilo Stolpcev za prvo vrstico pod Drsnikom, zaradi tezav z izrisom, ce je teh vec kot toliko
-define("VAS_SIZE", 0.04); //VAS_SIZE
+if (!defined('PIC_SIZE')) define("PIC_SIZE", "\includegraphics[width=5cm]"); //slika sirine 50mm
+if (!defined('ICON_SIZE')) define("ICON_SIZE", "\includegraphics[width=0.5cm]"); //za ikone @ slikovni tip
+
+if (!defined('RADIO_BTN_SIZE')) define("RADIO_BTN_SIZE", 0.13);
+if (!defined('U_SHAPE_WIDTH_U')) define("U_SHAPE_WIDTH_U", 4);
+if (!defined('U_SHAPE_WIDTH_OKVIR')) define("U_SHAPE_WIDTH_OKVIR", 3.62);
+if (!defined('U_SHAPE_WIDTH_TEXT_U')) define("U_SHAPE_WIDTH_TEXT_U", 2.2);
+if (!defined('U_SHAPE_WIDTH_TEXT_OKVIR')) define("U_SHAPE_WIDTH_TEXT_OKVIR", 1.81);
+if (!defined('MAXSTEVILOSTOLPCEV')) define("MAXSTEVILOSTOLPCEV", 21); //max Stevilo Stolpcev za prvo vrstico pod Drsnikom, zaradi tezav z izrisom, ce je teh vec kot toliko
+if (!defined('VAS_SIZE')) define("VAS_SIZE", 0.04); //VAS_SIZE
class MultiGridLatex extends LatexSurveyElement
{
@@ -40,11 +41,13 @@ class MultiGridLatex extends LatexSurveyElement protected $textRVreId = array(); //belezi vre_id navpicnih odgovorov, ki so bili izbrani in morajo biti na desni strani povleci-spusti
protected $navpicniOdgovoriVreId = array(); //belezi vre_id navpicnih odgovorov
protected $loop_id = null; // id trenutnega loopa ce jih imamo
+ protected $usr_id = null;
protected $path2ImagesMulti;
-
+
protected $language;
-
+ protected $prevod;
+
public function __construct()
{
global $site_path;
@@ -68,7 +71,9 @@ class MultiGridLatex extends LatexSurveyElement #funkcija za izvoz vprasalnika za posameznega respondenta
public function exportData($spremenljivke=null, $export_format='', $questionText='', $fillablePdf=null, $texNewLine='', $usr_id=null, $db_table=null, $export_subtype=''){
global $lang;
- //echo "exportData";
+
+
+
// iz baze preberemo vse moznosti - ko nimamo izpisa z odgovori respondenta
//$sqlVrednosti = sisplet_query("SELECT id, naslov, naslov2, variable, other, spr_id FROM srv_vrednost WHERE spr_id='".$spremenljivke['id']."' ORDER BY vrstni_red");
$sqlVrednosti = sisplet_query("SELECT id, naslov, naslov2, variable, other, spr_id FROM srv_vrednost WHERE spr_id='".$spremenljivke['id']."' AND hidden='0' ORDER BY vrstni_red");
@@ -97,7 +102,6 @@ class MultiGridLatex extends LatexSurveyElement $texNewLineAfterTable = $texNewLine." ".$texNewLine." ".$texNewLine;
if($spremenljivke['enota']==10){ //ce je image hotspot
$indeksZaWhile = 1;
- //echo "Indeks je ena ce je hotspot </br>";
}
$indeksDvojnaTabela1 = 1;
$indeksDvojnaTabela2 = 1;
@@ -110,10 +114,10 @@ class MultiGridLatex extends LatexSurveyElement while ($colVrednost = mysqli_fetch_assoc($sqlStolpciVrednosti)){
if($colVrednost['other'] != 0){
$stringMissingOdgovor = $colVrednost['naslov'];
- array_push($missingOdgovori, $this->encodeText($stringMissingOdgovor) ); //filanje polja z missing odgovori
+ array_push($missingOdgovori, LatexDocument::encodeText($stringMissingOdgovor, 0, 1) ); //filanje polja z missing odgovori
}else{
$stringTitleCol = $colVrednost['naslov'];
- array_push($vodoravniOdgovori, $this->encodeText($stringTitleCol) ); //filanje polja z vodoravnimi odgovori (po stolpcih)
+ array_push($vodoravniOdgovori, LatexDocument::encodeText($stringTitleCol, 0, 1) ); //filanje polja z vodoravnimi odgovori (po stolpcih)
}
}
//pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - konec
@@ -135,7 +139,7 @@ class MultiGridLatex extends LatexSurveyElement while ($rowVrednost = mysqli_fetch_assoc($sqlVrednosti)){
$indeksZaWhile = 1;
//navpicni odgovori
- $stringCell_title = $this->encodeText(( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) );
+ $stringCell_title = LatexDocument::encodeText(( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ), 0, 1 );
// še dodamo textbox če je polje other
$_txt = '';
@@ -143,18 +147,10 @@ class MultiGridLatex extends LatexSurveyElement //$sqlOtherText = sisplet_query("SELECT * FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND vre_id='".$rowVrednost['id']."' AND usr_id='".$usr_id."' AND loop_id $loop_id");
$sqlOtherText = sisplet_query("SELECT * FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND vre_id='".$rowVrednost['id']."' AND usr_id=".$usr_id);
$row4 = mysqli_fetch_assoc($sqlOtherText);
- $_txt = ' '.$row4['text'];
- //if($_txt!=' '){
- //$stringCell_title .= $_txt.':';
- //}
+ if(isset($row4)){
+ $_txt = ' '.$row4['text'];
+ }
}
- //echo "zacetek funkcije </br>";
- //if($spremenljivke['enota']!=10){ //ce ni image hotspot
-/* if($spremenljivke['enota']!=10&&$indeksZaWhile==1){ //ce ni image hotspot
- $indeksZaWhile = 1;
- echo "Indeks je ena ce ni hotspot </br>";
- } */
- //echo "odgovor: ".$stringCell_title." </br>";
$IndeksZaMissing=1;
@@ -166,21 +162,15 @@ class MultiGridLatex extends LatexSurveyElement $userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
if((count($missingOdgovori))&&($spremenljivke['tip']==19||$spremenljivke['tip']==20)){ //ce so missing-i
- //echo "missing</br>";
$sqlUserAnswerMissing = $this->GetUsersDataGrid($spremenljivkeData, $db_table, $rowVrednost, $rowVsehVrednosti, $usr_id,0);
$userAnswerMissing = mysqli_fetch_assoc($sqlUserAnswerMissing);
- //echo "userAnswer Missing: ".$userAnswerMissing['grd_id'].'</br>';
}
- //echo "rowVsehVrednosti['id']: ".$rowVsehVrednosti['id'].'</br>';
- //echo "userAnswer: ".$userAnswer['text'].'</br>';
- //echo "userAnswer: ".$userAnswer['grd_id'].'</br>';
- //echo "rowVrednost['spr_id']: ".$rowVrednost['spr_id'].'</br>';
- if($rowVsehVrednosti['id'] == $userAnswer['grd_id']){ //ce je podatek
+ if($rowVsehVrednosti['id'] == isset($userAnswer['grd_id'])){ //ce je podatek
if($indeksDvojnaTabela1==1&&$spremenljivke['enota']==3&&in_array($spremenljivke['tip'], array(6, 16))){ //samo prvic izpisi nadnaslov 1, ce je dvojna tabela
//naslov prvega dela grida za dvojno tabelo
- $tex1 .= $this->encodeText($spremenljivke['grid_subtitle1']).$texNewLine;
+ $tex1 .= LatexDocument::encodeText($spremenljivke['grid_subtitle1'], 0, 1).$texNewLine;
}
if($spremenljivke['tip']==6||$spremenljivke['tip']==16){
if(($vNovoVrstico==1&&$spremenljivke['tip']==16)||$spremenljivke['tip']==6){
@@ -192,32 +182,24 @@ class MultiGridLatex extends LatexSurveyElement if($spremenljivke['tip']==16&&$indeksZaWhile!=1){
$tex1 .= ', ';
}
- $tex1 .= ' '.$this->encodeText($rowVsehVrednosti['naslov']);
+ $tex1 .= ' '.LatexDocument::encodeText($rowVsehVrednosti['naslov'], 0, 1);
//$tex1 .= ' \\textcolor{crta}{'.$this->encodeText($rowVsehVrednosti['naslov']).'}';
}
- //echo "Sprememba indeksa </br>";
$indeksZaWhile++;
- $podatek = 1;
- //echo "Zgornji: ".$indeksZaWhile."</br>";
- //echo "Zgornji: ".$indeksZaWhile." za ".$this->encodeText($rowVsehVrednosti['naslov'])."</br>";
- //echo "tex: ".$tex1."</br>";
+ $podatek = 1;
}else{
$podatek = 0;
}
-
- //echo $this->encodeText($this->userAnswer['text']).'</br>';
if($spremenljivke['tip']==19||$spremenljivke['tip']==20){ //ce je grid stevilk ali besedil
- //echo "Indeks missing: ".$IndeksZaMissing."</br>";
if(($IndeksZaMissing > ($numColSql-count($missingOdgovori)))&&(count($missingOdgovori))){
- //echo "userAnswer Missing je prisoten in njegov grd_id je: ".$userAnswerMissing['grd_id'].'</br>';
- $okvirZOdgovori = $this->getAnswerSymbol($export_format, $fillablePdf, 6, $spremenljivke['grids'], count($missingOdgovori), $userAnswerMissing['grd_id']);
+ $okvirZOdgovori = $this->getAnswerSymbol(null, $export_format, $fillablePdf, 6, $spremenljivke['grids'], count($missingOdgovori), $userAnswerMissing['grd_id']);
}else{
- $okvirZOdgovori = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], count($missingOdgovori),$this->encodeText($userAnswer['text']));
+ $user_answer_var = isset($userAnswer['text'])?$userAnswer['text']:'';
+ $okvirZOdgovori = $this->getAnswerSymbol(null, $export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], count($missingOdgovori), $user_answer_var);
}
//$okvirZOdgovori = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], count($missingOdgovori),$this->encodeText($userAnswer['text']));
- //echo "okvirZOdgovori: ".$okvirZOdgovori."</br>";
array_push($odgovoriRespondent, $okvirZOdgovori);
}
@@ -238,11 +220,7 @@ class MultiGridLatex extends LatexSurveyElement $tex2 = '';
$tex .= $tex1.$tex2; //zdruzitev obeh delov latex kode
- //echo "tex: ".$tex." za ".$spremenljivke['variable']."</br>";
if($spremenljivke['tip']==19||$spremenljivke['tip']==20){ //ce je grid stevilk ali besedil
- //echo "stevilo odgovorov: ".count($odgovoriRespondent)."</br>";
- //echo "stevilo odgovorov missing: ".count($userAnswerMissing)."</br>";
- //echo "stevilo odgovorov : ".count($userAnswer)."</br>";
return $odgovoriRespondent;
}else{
return $tex;
@@ -252,18 +230,23 @@ class MultiGridLatex extends LatexSurveyElement #funkcija za izvoz vprasalnika za posameznega respondenta - konec
- //public function export($spremenljivke, $export_format, $questionText, $fillablePdf, $texNewLine, $export_subtype){
public function export($spremenljivke=null, $export_format='', $questionText='', $fillablePdf=null, $texNewLine='', $usr_id=null, $db_table=null, $export_subtype='', $preveriSpremenljivko=null, $skipEmptySub=null, $export_data_type='', $skipEmpty=null, $loop_id=null, $language=null){
- //echo $export_data_type."</br>";
+ $time_start = microtime(true);
+ $this->exportDataType = $export_data_type;
global $lang;
$this->language = $language;
-
+ //preverjanje, ali je prevod
+ $this->prevod = $this->language?1:0;
+ //preverjanje, ali je prevod - konec
+
$this->preveriSpremenljivko = $preveriSpremenljivko;
- $this->skipEmpty =$skipEmpty;
+ $this->skipEmpty = $skipEmpty;
$this->skipEmptySub = $skipEmptySub;
// Ce je spremenljivka v loopu
$this->loop_id = $loop_id;
+ $this->usr_id = $usr_id;
+
// iz baze preberemo vse moznosti - ko nimamo izpisa z odgovori respondenta
//$sqlVrednosti = sisplet_query("SELECT id, naslov, naslov2, variable, other, spr_id FROM srv_vrednost WHERE spr_id='".$spremenljivke['id']."' ORDER BY vrstni_red");
@@ -276,9 +259,9 @@ class MultiGridLatex extends LatexSurveyElement $tex = '';
- if($export_subtype!='q_empty'&&$export_data_type!=1){ //ce ni prazen vprasalnik in izpis ni Dolg, dodaj prazno vrstico
+ //if($export_subtype!='q_empty'&&$export_data_type!=1){ //ce ni prazen vprasalnik in izpis ni Dolg, dodaj prazno vrstico
//$tex .= '\\\\';
- }
+ //}
$navpicniOdgovori = array();
$navpicniOdgovori = [];
@@ -289,188 +272,128 @@ class MultiGridLatex extends LatexSurveyElement $missingOdgovori = array();
$missingOdgovori = [];
$userAnswerData = array();
- //$textRVreId = array();
-
+
$indeksOdgovorovTextR = 0;
$texNewLineAfterTable = $texNewLine." ".$texNewLine." ".$texNewLine;
$indeksZaWhile = 1;
$indeksOdgovorov = 0;
- //echo "Funkcija export </br>";
-
$nacinVnosa = $spremenljivke['ranking_k']; //nacin vnosa 0-Stevilo, 1-Drsnik
+ //$sqlVsehVrednsti = sisplet_query("SELECT id, naslov FROM srv_grid WHERE spr_id='".$spremenljivke['id']."' ORDER BY 'vrstni_red'");
+
//pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti
while ($rowVrednost = mysqli_fetch_assoc($sqlVrednosti)){
- //$prop['full'] = ( isset($userAnswer[$rowVrednost['id']]) );
-
- //$stringTitleRow = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) ));
-
- #ce je respondent odgovarjal v drugem jeziku ########################
- $rowl = $this->srv_language_vrednost($rowVrednost['id']);
- if (strip_tags($rowl['naslov']) != '') $rowVrednost['naslov'] = $rowl['naslov'];
- if (strip_tags($rowl['naslov2']) != '') $rowVrednost['naslov2'] = $rowl['naslov2'];
- #ce je respondent odgovarjal v drugem jeziku - konec ################
-
- $stringTitleRow = $rowVrednost['naslov']; //odgovori na levi strani (za tabela diferencial)
- $stringTitleRow2 = $rowVrednost['naslov2']; //odgovori na desni strani (za tabela diferencial)
-
- array_push($navpicniOdgovori, $this->encodeText($stringTitleRow, $rowVrednost['id']) ); //filanje polja z navpicnimi odgovori (po vrsticah)
- array_push($navpicniOdgovori2, $this->encodeText($stringTitleRow2, $rowVrednost['id']) ); //filanje polja z navpicnimi odgovori2 (po vrsticah)
if($spremenljivke['enota']==9){ //ce je povleci-spusti
array_push($this->navpicniOdgovoriVreId, $rowVrednost['id'] ); //filanje polja z vre_id navpicnih odgovorov (po vrsticah), potrebno za povleci-spusti
- //array_push($this->navpicniOdgovoriVreId, $rowVrednost['spr_id'] ); //filanje polja z vre_id navpicnih odgovorov (po vrsticah), potrebno za povleci-spusti
}
$indeksZaWhile++;
- //echo "rowVrednost['id']: ".$rowVrednost['id'].'</br>';
$indeksZaWhileVsehVrednosti = 1;
$indeksEnaMoznostProtiDrugi = 0; //belezi stevilo odgovorov v eni vrstici za enota=4
- $sqlVsehVrednsti = sisplet_query("SELECT id, naslov FROM srv_grid WHERE spr_id='".$spremenljivke['id']."' ORDER BY 'vrstni_red'");
- //echo "začne drugi while </br>";
+ $sqlVsehVrednsti = sisplet_query("SELECT id, naslov FROM srv_grid WHERE spr_id='".$spremenljivke['id']."' ORDER BY 'vrstni_red'");
while ($rowVsehVrednosti = mysqli_fetch_assoc($sqlVsehVrednsti)){
- //$indeksZaWhile = $this->GetUsersDataGrid($spremenljivke, $this->db_table, $rowVrednost, $rowVsehVrednosti, $this->usr_id, 1);
- //$sqlUserAnswer = $this->GetUsersDataGrid($spremenljivke, $db_table, $rowVrednost, $rowVsehVrednosti, $usr_id, 0);
$sqlUserAnswer = $this->GetUsersDataGrid($spremenljivke, $db_table, $rowVrednost, $rowVsehVrednosti, $usr_id, 0, $this->loop_id);
-
$userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
- //echo "userAnswer: ".$userAnswer['grd_id'].'</br>';
- //echo "userAnswerVreId: ".$userAnswer['vre_id'].'</br>';
- //echo "text: ".$userAnswer['text'].'</br>';
-
-/* if($spremenljivke['enota']==4&&$userAnswer['grd_id']){
- $userAnswerData[$indeksOdgovorov] = $userAnswer['grd_id'];
- echo "userAnswerData: ".$userAnswerData[$indeksOdgovorov].'</br>';
- //echo 'je 4 </br>';
- $indeksOdgovorov++; */
if($spremenljivke['enota']==4){ //ce je ena moznost proti drugi
- //echo 'je 4 '.$indeksOdgovorov.'</br>';
if($userAnswer['grd_id']){ //ce je podatek, ga zabelezi
$userAnswerData[$indeksOdgovorov] = $userAnswer['grd_id'];
- //echo "userAnswerData s podatkom: ".$userAnswerData[$indeksOdgovorov].'</br>';
- //echo 'je 4 '.$indeksOdgovorov.'</br>';
$indeksOdgovorov++;
}else{ //drugace
if($indeksEnaMoznostProtiDrugi>=1){
$userAnswerData[$indeksOdgovorov] = $userAnswer['grd_id'];
- //echo "rabim prazno polje </br>";
- //echo "userAnswerData brez podatka: ".$userAnswerData[$indeksOdgovorov].'</br>';
- //echo 'je 4 '.$indeksOdgovorov.'</br>';
$indeksOdgovorov++;
}
- //echo "indeks se spremeni </br>";
$indeksEnaMoznostProtiDrugi++;
}
- //echo "indeksEnaMoznostProtiDrugi: ".$indeksEnaMoznostProtiDrugi.'</br>';
- //echo "userAnswerData: ".$userAnswerData[$indeksOdgovorov].'</br>';
- }elseif($spremenljivke['enota']!=4){
- $userAnswerData[$indeksOdgovorov] = $userAnswer['grd_id'];
- $userAnswerDataText[$indeksOdgovorov] = $userAnswer['text'];
+ }elseif($spremenljivke['enota']!=4){
+ $userAnswerData[$indeksOdgovorov] = isset($userAnswer['grd_id']) ? $userAnswer['grd_id'] : null;
+ $userAnswerDataText[$indeksOdgovorov] = isset($userAnswer['text']) ? $userAnswer['text'] : '';
if($spremenljivke['enota']==9){ //povleci spusti
- $this->textRVreId[$indeksOdgovorov] = $userAnswer['vre_id'];
+ $this->textRVreId[$indeksOdgovorov] = isset($userAnswer['vre_id']) ? $userAnswer['vre_id'] : null;
if(isset($userAnswer['vre_id'])){
//$sqlTextRString = 'SELECT naslov FROM srv_vrednost WHERE id='.$userAnswer['vre_id'].' ';
- $sqlTextRString = 'SELECT naslov FROM srv_vrednost WHERE id='.$userAnswer['vre_id'].' AND hidden="0" ';
- //echo $sqlTextRString."</br>";
+ $sqlTextRString = 'SELECT naslov FROM srv_vrednost WHERE id='.(isset($userAnswer['vre_id']) ? $userAnswer['vre_id'] : null).' AND hidden="0" ';
$sqlTextR = sisplet_query($sqlTextRString);
$rowTextR = mysqli_fetch_assoc($sqlTextR);
- //echo $rowTextR['naslov']."</br>";
- //echo $indeksOdgovorovTextR.'</br>';
-
- //$this->textRArray[$indeksOdgovorovTextR] = $rowTextR['naslov'];
-
- //$this->textRArrayIndex[$userAnswer['grd_id']] = array($this->textRArray[$indeksOdgovorovTextR]);
- //echo "this->textRArray indeks ".$userAnswer['grd_id']." ".$this->textRArrayIndex[$userAnswer['grd_id']][$indeksOdgovorovTextR].'</br>';
$this->textRArray[$indeksOdgovorovTextR][$userAnswer['grd_id']]=$rowTextR['naslov'];
- //echo "this->textRArray: ".$this->textRArray[$indeksOdgovorovTextR][$userAnswer['grd_id']].'</br>';
- //echo "this->textRArray indeks ".$indeksOdgovorov." ".$textRVreId[$indeksOdgovorov].'</br>';
$indeksOdgovorovTextR++;
}
}
$indeksOdgovorov++;
- }
- //echo "rowVrednost['spr_id']: ".$rowVrednost['spr_id'].'</br>';
- //echo "rowVrednost['id']: ".$rowVrednost['id'].'</br>';
- //echo "rowVsehVrednosti['id']: ".$rowVsehVrednosti['id'].'</br>';
- if($rowVsehVrednosti['id'] == $userAnswer['grd_id']){
+ }
+ if( ($userAnswer!=null && ($rowVsehVrednosti['id'] == $userAnswer['grd_id'])) || $rowVrednost['other'] ){
$indeksZaWhileVsehVrednosti++;
}
if($indeksZaWhileVsehVrednosti!=1){
$userDataPresent = 1;
+ }else{
+ $userDataPresent = 0;
}
- //echo "userAnswerData: ".$userAnswerData[$indeksOdgovorov].'</br>';
- //echo "enota: ".$spremenljivke['enota'].'</br>';
- //echo "indeksOdgovorov: ".$indeksOdgovorov.'</br>';
- //$indeksOdgovorov++;
}
+
+ #ce je respondent odgovarjal v drugem jeziku ########################
+ $rowl = $this->srv_language_vrednost($rowVrednost['id']);
+ if ($rowl!=null && strip_tags($rowl['naslov']) != '' && !$userDataPresent) $rowVrednost['naslov'] = $rowl['naslov'];
+ if ($rowl!=null && strip_tags($rowl['naslov2']) != '' && !$userDataPresent) $rowVrednost['naslov2'] = $rowl['naslov2'];
+ #ce je respondent odgovarjal v drugem jeziku - konec ################
+
+ if($usr_id){
+ $stringTitleRow = Common::getInstance()->dataPiping($rowVrednost['naslov'], $usr_id, $loop_id); //odgovori na levi strani (za tabela diferencial)
+ $stringTitleRow2 = Common::getInstance()->dataPiping($rowVrednost['naslov2'], $usr_id, $loop_id); //odgovori na desni strani (za tabela diferencial)
+ }else{
+ $stringTitleRow = $rowVrednost['naslov'];
+ $stringTitleRow2 = $rowVrednost['naslov2'];
+ }
+
+ array_push($navpicniOdgovori, LatexDocument::encodeText($stringTitleRow, $rowVrednost['id'], 1) ); //filanje polja z navpicnimi odgovori (po vrsticah)
+ array_push($navpicniOdgovori2, LatexDocument::encodeText($stringTitleRow2, $rowVrednost['id'], 1) ); //filanje polja z navpicnimi odgovori2 (po vrsticah)
+
}
//pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti - konec
-
- /* echo "userDataPresent: ".$userDataPresent."</br>";
- echo "preveriSpremenljivko: ".$preveriSpremenljivko."</br>"; */
-
+
$this->userDataPresent = $userDataPresent;
- if($userDataPresent!=0||$export_subtype=='q_empty'||$export_subtype=='q_comment'||$preveriSpremenljivko){ //ce je kaj v bazi ali je prazen vprasalnik ali je potrebno pokazati tudi ne odgovorjena vprasanja
- //echo count($userAnswerData)." za ".$spremenljivke['id']."</br>";
+ //if($userDataPresent!=0||$export_subtype=='q_empty'||$export_subtype=='q_comment'||$preveriSpremenljivko){ //ce je kaj v bazi ali je prazen vprasalnik ali je potrebno pokazati tudi ne odgovorjena vprasanja
//pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti
- while ($colVrednost = mysqli_fetch_assoc($sqlStolpciVrednosti)){
+ while ($colVrednost = mysqli_fetch_assoc($sqlStolpciVrednosti)){
+ #ce je respondent odgovarjal v drugem jeziku ########################
+ $rowl = $this->srv_language_grid($colVrednost['id'],$spremenljivke['id']);
+ if ($rowl!=null && strip_tags($rowl['naslov']) != '' && !$userDataPresent) $colVrednost['naslov'] = $rowl['naslov'];
+ #ce je respondent odgovarjal v drugem jeziku - konec ################
if($colVrednost['other'] != 0){
$stringMissingOdgovor = $colVrednost['naslov'];
- array_push($missingOdgovori, $this->encodeText($stringMissingOdgovor) ); //filanje polja z missing odgovori
- }else{
- #ce je respondent odgovarjal v drugem jeziku ########################
- $rowl = $this->srv_language_grid($colVrednost['id'],$spremenljivke['id']);
- if (strip_tags($rowl['naslov']) != '') $colVrednost['naslov'] = $rowl['naslov'];
- #ce je respondent odgovarjal v drugem jeziku - konec ################
-
+ array_push($missingOdgovori, LatexDocument::encodeText($stringMissingOdgovor, 0, 1) ); //filanje polja z missing odgovori
+ }else{
$stringTitleCol = $colVrednost['naslov'];
$stringTitleCol = str_replace('<br />','',$stringTitleCol); //odstranitev odvecnih </br> iz naslova stolpcev
- array_push($vodoravniOdgovori, $this->encodeText($stringTitleCol) ); //filanje polja z vodoravnimi odgovori (po stolpcih)
+ if($usr_id){
+ $stringTitleCol = Common::getInstance()->dataPiping($stringTitleCol, $usr_id, $loop_id);
+ }
+ array_push($vodoravniOdgovori, LatexDocument::encodeText($stringTitleCol, 0, 1) ); //filanje polja z vodoravnimi odgovori (po stolpcih)
}
}
- //pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - konec
+ //pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - konec
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){ //ce je dolg izvoz
- //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov
- if($spremenljivke['tip']==6){ //grid radio
- //if($spremenljivke['enota']!=11){ //ce ni VAS
- if($spremenljivke['enota']!=11 && $spremenljivke['enota']!=12){ //ce ni VAS in ni slikovni tip
- $symbol = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0);
- //$tex .= '{\ChoiceMenu[radio,radiosymbol=\ding{108},name=myGroupOfRadiobuttons]{}{='.$stringTitle.'}}'.$stringTitle.' '.$this->texNewLine;
- //echo "simbol radio grid: ".$symbol."</br>";
- }else{ //drugace, ce je VAS
- //$symbol = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0, $spremenljivke['enota']);
- //echo "simbol VAS: ".$symbol."</br>";
- //echo "simbol radio grid: ".$spremenljivke['enota']."</br>";
- }
- $internalCellHeight = '1 cm'; //visina praznega okvirja @povleci-spusti
- }else if($spremenljivke['tip']==16){ //grid checkbox
- $symbol = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0);
- $internalCellHeight = '3 cm'; //visina praznega okvirja @povleci-spusti
- }else if($spremenljivke['tip']==19||$spremenljivke['tip']==20){//multi text ali multinumber
+ //na novo
+ $fillablePdf = 0;
+ if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){ //ce je dolg izvoz ALI ( je izvoz praznega vprasalnika ali vprasalnika s komentarji)
+ $internalCellHeight = '3 cm';
+ if($spremenljivke['tip'] == 19 || $spremenljivke['tip'] == 20){ // ce je multitext ali multinumber
+ //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov
if($export_subtype=='q_empty'||$export_subtype=='q_comment'){ //ce je prazen vprasalnik ali vprasalnik s komentarji
- $symbol = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], count($missingOdgovori), 0);
- //$internalCellHeight = '3 cm'; //visina praznega okvirja @povleci-spusti
+ $symbol = $this->getAnswerSymbol($export_subtype, $export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], count($missingOdgovori), 0);
}else{ //ce je vprasalnik s podatki
$symbol = $this->exportData($spremenljivke, $export_format, $questionText, $fillablePdf, $texNewLine, $usr_id, $db_table, $export_subtype);
}
- }
- $this->internalCellHeight = $internalCellHeight;
- //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov - konec
- }
-
- $fillablePdf = 0;
- if((($spremenljivke['enota']==0)&&($spremenljivke['tip']==6||$spremenljivke['tip']==16))||($spremenljivke['tip']==19||$spremenljivke['tip']==20)){ //klasicna tabela ali multitext ali multinumber
-
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- if($spremenljivke['tip']==20){ //ce je tip vprasanja stevilo
+ //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov - konec
+
+ if($spremenljivke['tip'] == 20){ //ce je tip vprasanja stevilo
if(($nacinVnosa == 0)){ //ce je nacin vnosa Stevilo
$tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerDataText, $export_subtype);
}else if($nacinVnosa == 1 && $export_format=='pdf'){ //ce so drsniki in je pdf
@@ -478,170 +401,104 @@ class MultiGridLatex extends LatexSurveyElement }else if($nacinVnosa == 1 && $export_format=='rtf'){ //ce so drsniki in je rtf
$tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerDataText, $export_subtype);
}
- }else{
+ }else{ //drugace (ce je multitext)
$tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
}
-
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Skrcen izvoz
- //$tex .= "Navaden ali Kratek izvoz ".$texNewLine;
- //echo "export_data_type $export_data_type </br>";
-
- $navpicniOdgovori2 = 0;
- //if($spremenljivke['tip']==20){ //ce je tip vprasanja stevilo
- if($spremenljivke['tip']==20 || $spremenljivke['tip']==19){ //ce je tip vprasanja multi stevilo ali multi besedilo
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerDataText, $export_subtype);
- }else{ //ce je grid en in vec odgovorov
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- //$tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerDataText, $export_subtype);
+ }elseif($spremenljivke['tip'] == 6 || $spremenljivke['tip'] == 16){ //klasicna tabela
+ //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov
+ if($spremenljivke['tip'] == 6){ //grid radio
+ if($spremenljivke['enota'] != 11 && $spremenljivke['enota'] != 12){ //ce ni VAS in ni slikovni tip
+ $symbol = $this->getAnswerSymbol($export_subtype, $export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0);
+ }elseif($spremenljivke['enota'] == 11){ // ce je VAS
+ $symbol = $this->getAnswerSymbol($export_subtype, $export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0, $spremenljivke['enota'], 1, '', $spremenljivke['id']);
+ //$symbol = [];
+ //$symbol = array("\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."vas1}", "\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."vas3}", "\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."vas4}", "\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."vas5}", "\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."vas7}");
+ }
+ $internalCellHeight = '1 cm'; //visina praznega okvirja @povleci-spusti
+ }else if($spremenljivke['tip'] == 16){ //grid checkbox
+ $symbol = $this->getAnswerSymbol($export_subtype, $export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0);
+ $internalCellHeight = '3 cm'; //visina praznega okvirja @povleci-spusti
}
- }
- }elseif($spremenljivke['enota']==1){ //tabela diferencial
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==2 || $spremenljivke['enota']==6){ //roleta ali izberite s seznama
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==4){ //ena moznost proti drugi
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- //$tex .= "Navaden ali Kratek izvoz ".$texNewLine;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==5){ //maxdiff
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- //$tex .= "Navaden ali Kratek izvoz ".$texNewLine;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==8){ //tabela da/ne
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- //$tex .= "Navaden ali Kratek izvoz ".$texNewLine;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
-
- }
- }elseif($spremenljivke['enota']==10){ //image hotspot
- //if($export_subtype=='q_empty'){ //ce je prazen vprasalnik
- //if($export_subtype=='q_empty'||$export_subtype=='q_comment'){ //ce je prazen vprasalnik
- if($export_data_type==1||$export_subtype=='q_empty'||$export_subtype=='q_comment'){ //ce je prazen vprasalnik
- $imageName = $this->getImageName('hotspot', $spremenljivke['id'], 'hotspot_image=');
- $imageNameTest = $this->path2ImagesMulti.$imageName.'.png'; //za preveriti, ali obstaja slikovna datoteka na strezniku
- //echo("za image hot spot grid: ".$imageNameTest."</br>");
- if(filesize($imageNameTest) > 0){
- $image = PIC_SIZE."{".$this->path2ImagesMulti."".$imageName."}"; //priprave slike predefinirane dimenzije
+ //pridobitev ustreznega simbola (ali podatkov) za izris odgovorov - konec
+
+ $enote_brez_navp_odgov_2 = array(0, 2, 6, 5, 8, 3, 11, 12); //grid en in vec odgovorov, roleta, izberite s seznama, maxdiff, tabela da/ne, dvojna tabela, VAS, slikovni tip
+ if( in_array($spremenljivke['enota'], $enote_brez_navp_odgov_2) ){
+ $navpicniOdgovori2 = 0;
+ }
+ if($spremenljivke['enota']==10){ //image hotspot
+ $imageName = LatexDocument::getImageName('hotspot', $spremenljivke['id'], 'hotspot_image=');
+ $imageNameTest = $this->path2ImagesMulti.$imageName.'.png'; //za preveriti, ali obstaja slikovna datoteka na strezniku
+ if(filesize($imageNameTest) > 0){
+ $image = PIC_SIZE."{".$this->path2ImagesMulti."".$imageName."}"; //priprave slike predefinirane dimenzije
+ }else{
+ $image = $lang['srv_pc_unavailable'];
+ }
+
+ $tex .= $texNewLine; //prazna vrstica po vprasanju
+ $tex .= $image."".$texNewLine; //izris slike
+
+ //iz baze poberi imena obmocij
+ $sqlHotSpotRegions = sisplet_query("SELECT region_name FROM srv_hotspot_regions WHERE spr_id='".$spremenljivke['id']."' ORDER BY vrstni_red");
+
+ //izris imen obmocij po $sqlHotSpotRegions
+ $tex .= $lang['srv_export_hotspot_regions_names'].': '.$texNewLine;
+ while ($rowHotSpotRegions = mysqli_fetch_assoc($sqlHotSpotRegions))
+ {
+ $tex .= $rowHotSpotRegions['region_name'].''.$texNewLine;
+ }
+
+ //ureditev missing-ov
+ if(count($missingOdgovori)!=0){ //ce so missing-i
+ $vodoravniOdgovori = $this->AddMissingsToAnswers($vodoravniOdgovori, $missingOdgovori);
+ }
+ //ureditev missing-ov - konec
+
+ //izris moznih odgovorov
+ $tex .= $lang['srv_drag_drop_answers'].': '.$texNewLine;
+ for($i=0; $i<$numColSql; $i++){
+ $tex .= $vodoravniOdgovori[$i].$texNewLine;
+ }
+ if(($export_subtype=='q_data'||$export_subtype=='q_data_all')){ //ce je izpis respodenta
+ $tex .= $this->texNewLine;
+ $tex .= $lang['srv_respondent_answer'].": ".$this->texNewLine;
+ $navpicniOdgovori2 = 0;
+ $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
+ }else{
+ //prostor po izpisu, ce ni odgovorov respondenta
+ $tex .= '\vspace{0.5 cm}';
+ $tex .= $texNewLine;
+ }
+ }elseif($spremenljivke['enota'] == 9){ //povleci spusti
+ $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
}else{
- //$image = 'ni slike';
- $image = $lang['srv_pc_unavailable'];
- }
-
- $tex .= $texNewLine; //prazna vrstica po vprasanju
- $tex .= $image."".$texNewLine; //izris slike
-
- //iz baze poberi imena obmocij
- $sqlHotSpotRegions = sisplet_query("SELECT region_name FROM srv_hotspot_regions WHERE spr_id='".$spremenljivke['id']."' ORDER BY vrstni_red");
-
- //izris imen obmocij po $sqlHotSpotRegions
- $tex .= $lang['srv_export_hotspot_regions_names'].': '.$texNewLine;
- while ($rowHotSpotRegions = mysqli_fetch_assoc($sqlHotSpotRegions))
- {
- $tex .= $rowHotSpotRegions['region_name'].''.$texNewLine;
+ $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
}
-
- //$tex .= $texNewLine;
-
- //ureditev missing-ov
- if(count($missingOdgovori)!=0){ //ce so missing-i
- $vodoravniOdgovori = $this->AddMissingsToAnswers($vodoravniOdgovori, $missingOdgovori);
- }
- //ureditev missing-ov - konec
-
-
- //izris moznih odgovorov
- $tex .= $lang['srv_drag_drop_answers'].': '.$texNewLine;
- for($i=0; $i<$numColSql; $i++){
- $tex .= $vodoravniOdgovori[$i].$texNewLine;
- }
- }/* else{ //ce je vprasalnik s podatki
- $tex .= $this->exportData($spremenljivke, $export_format, $questionText, $fillablePdf, $texNewLine, $usr_id, $db_table, $export_subtype);
- } */
- if(($export_data_type==1||$export_data_type==0||$export_data_type==2)&&($export_subtype=='q_data'||$export_subtype=='q_data_all')){ //ce je Dolg, Navaden ali Kratek izvoz
- if($export_data_type==1){ //ce je Dolg izvoz
- $tex .= $this->texNewLine;
- $tex .= $lang['srv_respondent_answer'].": ".$this->texNewLine;
- }
-
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
-
- //prostor po izpisu tabele
- //$tex .= $texNewLine;
- //$tex .= $texNewLine;
-
- }elseif($spremenljivke['enota']==3){ //dvojna tabela
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
}
- }elseif($spremenljivke['enota']==9){ //povleci spusti
-
- //if($export_subtype=='q_empty'||$export_subtype=='q_comment'||$preveriSpremenljivko){
- //if($export_data_type==1||$export_subtype=='q_empty'||$export_subtype=='q_comment'||$preveriSpremenljivko){
- if($export_data_type==1||$export_subtype=='q_empty'||$export_subtype=='q_comment'||($preveriSpremenljivko&&$export_data_type==1)){
- $this->exportDataType = $export_data_type;
-
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==11){ //VAS
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Navaden ali Kratek izvoz
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
- }
- }elseif($spremenljivke['enota']==12){ //slikovni tip
- if($export_data_type==1||($export_subtype=='q_empty'||$export_subtype=='q_comment')){//ce je dolg izvoz ali(prazen vprasalnik ali vpr. s komentarji)
- //izris tabel ustrezne postavitve
- $tex .= $this->IzrisTabeleMultiGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $symbol, $texNewLine, $texNewLineAfterTable, $export_format, 0, $missingOdgovori, $userAnswerData, $export_subtype);
- }elseif($export_data_type==0||$export_data_type==2){ //ce je Skrcen izvoz
- $navpicniOdgovori2 = 0;
- $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
+ $this->internalCellHeight = $internalCellHeight;
+ }elseif($export_data_type==0||$export_data_type==2){ //ce je Skrcen izvoz
+ if($spremenljivke['tip'] == 20 || $spremenljivke['tip'] == 19){ //ce je tip vprasanja multi stevilo ali multi besedilo
+ $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, 0, $export_format, $fillablePdf, $missingOdgovori, $userAnswerDataText, $export_subtype);
+ }elseif($spremenljivke['tip'] == 6 || $spremenljivke['tip'] == 16){ //klasicna tabela
+ $enote_brez_navp_odgov_2 = array(0, 3, 9, 10, 11, 12); //grid en in vec odgovorov, dvojna tabela, povleci-spusti, image hotspot, VAS, slikovni tip
+ if( in_array($spremenljivke['enota'], $enote_brez_navp_odgov_2) ){
+ $navpicniOdgovori2 = 0;
+ }
+ $tex .= $this->IzpisOdgovorovGrid($spremenljivke, $numColSql, $numRowsSql, $vodoravniOdgovori, $navpicniOdgovori, $navpicniOdgovori2, $export_format, $fillablePdf, $missingOdgovori, $userAnswerData, $export_subtype);
}
}
-
+ //na novo - konec
+
+
//$tex .= $texNewLine;
//$tex .= $this->texBigSkip;
//$tex .= $this->texBigSkip;
- if($export_format == 'pdf'){ //ce je pdf
- //$tex .= '\\end{absolutelynopagebreak}'; //zakljucimo environment, da med vprasanji ne bo prelomov strani
- }else{ //ce je rtf
-
- }
+ $time_end = microtime(true);
+ $execution_time = ($time_end - $time_start);
+ //echo '</br><b>Total Execution Time tabele</b> '.$execution_time.' sec za vprašanje '.strip_tags($spremenljivke['naslov']).'</br>';
return $tex;
- }
+ //}
+
}
#konec export funkcije
@@ -651,8 +508,6 @@ class MultiGridLatex extends LatexSurveyElement global $lang;
$skipRow = false;
$izpis = '';
-
-
#missingi##################
if(count($missingOdgovori)!=0){ //ce so missingi, jih je potrebno dodati polju z odgovori po stolpcih ($vodoravniOdgovori)
for($m=0;$m<count($missingOdgovori);$m++){
@@ -660,17 +515,6 @@ class MultiGridLatex extends LatexSurveyElement }
}
#missingi - konec###########
-
- // TODO: Zanke, ki ne izpisujejo ničesar
- /* foreach($vodoravniOdgovori AS $key => $vodoravniOdgovor){ //za vsak odgovor v vrstici
- echo $vodoravniOdgovor."</br>";
- //echo $key."</br>";
- } */
- //
- /* foreach($data AS $key => $datum){ //za vsak odgovor v vrstici
- echo "Podatek: ".$datum."</br>";
- //echo $key."</br>";
- } */
$z = $j = $i = 0;
@@ -721,7 +565,6 @@ class MultiGridLatex extends LatexSurveyElement }
foreach($navpicniOdgovori AS $key => $navpicniOdgovor){ //za vsak odgovor v vrstici
- //echo $navpicniOdgovor.": ";
#Ce imamo nastavljeno preskakovanje podvprasanj preverimo ce je kaksen odgovor v vrstici ###############################
if($this->skipEmptySub == 1){
$skipRow = true;
@@ -729,7 +572,6 @@ class MultiGridLatex extends LatexSurveyElement if(isset($data[$z])){ //ce je podatek
$skipRow = false;
}
- //echo "surov podatek: ".$data[$z]."</br>";
}
}
#Ce imamo nastavljeno preskakovanje podvprasanj preverimo ce je kaksen odgovor v vrstici - konec #######################
@@ -758,8 +600,8 @@ class MultiGridLatex extends LatexSurveyElement if($spremenljivke['enota']==4){ //ce je ena proti drugi
$steviloStolpcev = 1;
}
+ $indeksOdgovor2 = 0;
foreach($navpicniOdgovori AS $key => $navpicniOdgovor){ //za vsak odgovor v vrstici
- //echo $navpicniOdgovor.": ";
#Ce imamo nastavljeno preskakovanje podvprasanj preverimo ce je kaksen odgovor v vrstici ###############################
if($this->skipEmptySub == 1){
$skipRow = true;
@@ -767,25 +609,24 @@ class MultiGridLatex extends LatexSurveyElement if(isset($data[$z])){ //ce je podatek
$skipRow = false;
}
- //echo "surov podatek: ".$data[$z]."</br>";
}
}
#Ce imamo nastavljeno preskakovanje podvprasanj preverimo ce je kaksen odgovor v vrstici - konec #######################
-
$steviloSlikovnihIkon = 0; //belezi stevilo slikovnih ikon
if(!$skipRow){
- //$izpis .= ' \hspace*{0.25\textwidth} '; //da je indent do 25 % sirine strani
if($spremenljivke['enota']!=4){
- $izpis .= $navpicniOdgovor.": ";
+ if($spremenljivke['enota']==1){ //ce je diferencial
+ $izpis .= $navpicniOdgovor."/".$navpicniOdgovori2[$indeksOdgovor2].": ";
+ }else{
+ $izpis .= $navpicniOdgovor.": ";
+ }
}
$odgovorPrisoten = 0; //zastavica za ureditev izpisa vejice, ko je vec odgovorov v eni vrstici
for($j=$j;$j<($steviloStolpcev*($key+1));$j++){
- //echo $j.' ';
- //echo "surov podatek: ".$data[$j]."</br>";
if($spremenljivke['enota']==4){ //ce je ena proti drugi
if($data[$j]==2){
$odgovorEnaProtiDrugi = '\\textcolor{crta}{'.$navpicniOdgovori2[$key].'}';
@@ -793,74 +634,21 @@ class MultiGridLatex extends LatexSurveyElement $odgovorEnaProtiDrugi = '\\textcolor{crta}{'.$navpicniOdgovor.'}';
}
$izpis .= $odgovorEnaProtiDrugi;
- }/* elseif($spremenljivke['enota']==11){ //ce je VAS
- //echo "surov podatek: ".$data[$j]."</br>";
- //echo "stevilo stolpcev VAS: ".$steviloStolpcev."</br>";
- //$izpis .= "smily ";
- if($data[$j]){
- //$symbol = $this->getAnswerSymbol($export_format, $fillablePdf, $spremenljivke['tip'], $spremenljivke['grids'], 0, 0, $spremenljivke['enota'], $data[$j]);
- //$VASNumber = $data[$j];
- ##########
- switch ($steviloStolpcev) {
- case 1:
- $VAS = "";
- break;
- case 2:
- $arrayVAS = ['vas3checked', 'vas5checked'];
- break;
- case 3:
- $arrayVAS = ['vas3checked', 'vas4checked', 'vas5checked'];
- break;
- case 4:
- $arrayVAS = ['vas2checked', 'vas3checked', 'vas5checked', 'vas6checked'];
- break;
- case 5:
- $arrayVAS = [ 'vas2checked', 'vas3checked', 'vas4checked', 'vas5checked', 'vas6checked'];
- break;
- case 6:
- $arrayVAS = ['vas1checked', 'vas2checked', 'vas3checked', 'vas5checked', 'vas6checked', 'vas7checked'];
- break;
- case 7:
- $arrayVAS = ['vas1checked', 'vas2checked', 'vas3checked', 'vas4checked', 'vas5checked', 'vas6checked', 'vas7checked'];
- break;
- }
-
- ##########
- if($steviloStolpcev > 1){
- $VAS = $arrayVAS[($data[$j]-1)];
- $symbol = "\\includegraphics[scale=".VAS_SIZE."]{".$this->path2Images."".$VAS."}";
- }
-
- $izpis .= $symbol;
- // echo "symbol za VAS odgovor: ".$symbol."</br>";
- }
- } elseif($spremenljivke['enota']==12){ //ce je slikovni tip
- if($data[$j]){ //ce je podatek
- $steviloSlikovnihIkon = $data[$j];
- //echo "stevilo slikovnih ikon: ".$steviloSlikovnihIkon."</br>";
- //echo "_______________________</br>";
- }
- }*/else{
+ }else{
if($i==$steviloStolpcev){
$i=0;
}
- /* echo "tip: ".$spremenljivke['tip']."</br>";
- echo "enota: ".$spremenljivke['enota']."</br>"; */
if(isset($data[$j])){ //ce je podatek
- //echo $vodoravniOdgovori[$i].", ";
- //echo $data[$j].", ";
if($odgovorPrisoten==0){
$odgovorPrisoten = 1;
}else{
- //}elseif($odgovorPrisoten==1){
$izpis .= ", ";
}
- //if($spremenljivke['tip']==20){ //ce je tip vprasanja stevilo
if($spremenljivke['tip']==20||$spremenljivke['enota']==11||$spremenljivke['enota']==12){ //ce je tip vprasanja stevilo ALI VAS ALI slikovni tip
$izpis .= '\\textcolor{crta}{'.$data[$j].'}';
}else{
if($spremenljivke['tip']==19){ //ce je tip vprasanja besedilo
- $izpis .= '\\textcolor{crta}{'.$data[$j].'}';
+ $izpis .= '\\textcolor{crta}{'.LatexDocument::encodeText($data[$j]).'}';
}else{
$izpis .= '\\textcolor{crta}{'.$vodoravniOdgovori[$i].'}';
}
@@ -875,20 +663,18 @@ class MultiGridLatex extends LatexSurveyElement }
if($spremenljivke['enota']==12){ //ce je slikovni tip, izpisi ustrezno stevilo simbololov
$prviOdgovorSlikovniTip = 1;
- //echo "izpis kode: ".$izpis."</br>";
for($p=0; $p<$steviloSlikovnihIkon; $p++){
$izpis .= ICON_SIZE."{".$this->path2Images."".$this->getCustomRadioSymbol($spremenljivke['id'], $prviOdgovorSlikovniTip)."}";
}
$izpis .= $this->texNewLine;
}
+ $indeksOdgovor2++;
}
} //konec, ce ni dvojna tabela
+ $izpis .= '\vspace{0.5 cm}';
$izpis .= $this->texNewLine;
- /* if($spremenljivke['enota']==3){
- echo $izpis;
- } */
return $izpis;
}
#funkcija, ki skrbi za izpis odgovor za grid vprasanja - konec ########################################################################
@@ -896,19 +682,32 @@ class MultiGridLatex extends LatexSurveyElement #funkcija, ki skrbi za izris Grida radio buttonov ali checkboxov za klasicno postavitev tabele ################################
function IzrisTabeleMultiGrid($spremenljivke=null, $steviloStolpcev=null, $steviloVrstic=null, $vodoravniOdgovori=null, $navpicniOdgovori=null, $navpicniOdgovori2=null, $simbolTex=null, $texNewLine='', $texNewLineAfterTable=null, $typeOfDocument=null, $fillablePdf=null, $missingOdgovori=null, $data=null, $export_subtype=''){
global $lang;
-
$spremenljivkaParams = new enkaParameters($spremenljivke['params']);
$isCheckBox = 0;
$enota = $spremenljivke['enota'];
+
+ //ce je prevod, naj pobere prevedene razlicice podnaslovov
+ $rowl1 = $this->srv_language_grid(1,$spremenljivke['id']);
+ if ($rowl1) {
+ if (strip_tags($rowl1['podnaslov']) != ''){
+ $spremenljivke['grid_subtitle1'] = $rowl1['podnaslov'];
+ }
+ }
+
+ $rowl2 = $this->srv_language_grid(2,$spremenljivke['id']);
+ if ($rowl2) {
+ if (strip_tags($rowl2['podnaslov']) != '') $spremenljivke['grid_subtitle2'] = $rowl2['podnaslov'];
+ }
+ //ce je prevod, naj pobere prevedene razlicice podnaslovov - konec
+
$podnaslov1 = $spremenljivke['grid_subtitle1']; //podnaslova @dvojna tabela
$podnaslov2 = $spremenljivke['grid_subtitle2'];
+
$trak = ($spremenljivkaParams->get('diferencial_trak') ? $spremenljivkaParams->get('diferencial_trak') : 0);
$customColumnLabelOption = ($spremenljivkaParams->get('custom_column_label_option') ? $spremenljivkaParams->get('custom_column_label_option') : 1); //1 - "vse" labele, 2 - "le koncne" labele, 3 - "koncne in vmesna" labele
-
- //$radioButtonTex = ($export_format=='pdf'?"{\Large $\ocircle$}" : "\\includegraphics[scale=".RADIO_BTN_SIZE."]{radio}");
-
//ce je izbrana oblika traku, poberi potrebne parametre spremenljivke ##################
+ $trakStartingNumber = null;
if($trak == 1){
//stevilo s katerim se zacenja trak
$trakStartingNumber = ($spremenljivkaParams->get('diferencial_trak_starting_num') ? $spremenljivkaParams->get('diferencial_trak_starting_num') : 0);
@@ -926,101 +725,8 @@ class MultiGridLatex extends LatexSurveyElement }
//ce je izbrana oblika traku, poberi potrebne parametre spremenljivke - konec ##########
- //echo "Grids: ".$spremenljivke['grids']." ";
- //echo "Stevilo stolpcev: ".$steviloStolpcev." ";
-
- //ureditev stevila stolpcev (za parametre tabele in nadaljnji izris) glede na izbrano postavitev #################################################
-
- //if(($enota == 0||$enota == 3)||$spremenljivke['tip']==19||$spremenljivke['tip']==20){ //klasika ali dvojna tabela ali je multitext ali multinumber
- //if(($enota == 0||$enota == 3 || $enota == 11)||$spremenljivke['tip']==19||$spremenljivke['tip']==20){ //klasika ali dvojna tabela ali je multitext ali multinumber ali VAS
- if(($enota == 0||$enota == 3 || $enota == 11 || $enota == 12)||$spremenljivke['tip']==19||$spremenljivke['tip']==20){ //klasika ali dvojna tabela ali je multitext ali multinumber ali VAS ali slikovni tip
- //if($trak == 0 || $enota == 3 || ($trak == 1 && $spremenljivke['tip'] == 16)){
- if(($trak == 0 || $enota == 3 || ($trak == 1 && $spremenljivke['tip'] == 16))||($spremenljivke['tip']==19||$spremenljivke['tip']==20)){
- $steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 1; //ker je prvi stolpec prazen, je potrebno dodati + 1
- }elseif($trak == 1 && $enota == 0 && $spremenljivke['tip'] == 6){
- $steviloStolpcevParameterTabular = $steviloStolpcev + 1;
- }
- }elseif($enota == 1){ //diferencial
- if($trak == 0){ //ce ni na traku
- //$steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
- if(count($missingOdgovori)!=0){ //ce so missingi
- $steviloStolpcevParameterTabular = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
- $steviloStolpcev = $steviloStolpcev + 2 - count($missingOdgovori);
- }else{
- $steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
- }
- }else{ //ce je na traku
- $steviloStolpcevParameterTabular = $steviloStolpcev + 2;
- $steviloStolpcev = $steviloStolpcev + 2 + count($missingOdgovori);
- }
- }elseif($enota == 2 || $enota == 6){ //roleta ali izberite s seznama
- $steviloStolpcevParameterTabular = 2; //pri roleti sta potrebna le dva stolpca
- if(count($missingOdgovori)!=0){ //ce so missingi
- $steviloStolpcev = $spremenljivke['grids'] + count($missingOdgovori) + 1; //+1, ker se pri izrisu indeks zacne z 1
- }
- }elseif($enota == 4){ //ena moznost proti drugi
- $steviloStolpcevParameterTabular = 5;
- if(count($missingOdgovori)!=0){
- $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
- $steviloStolpcev = $steviloStolpcev-count($missingOdgovori);
- }
- }elseif($enota == 5){ //maxdiff
- $steviloStolpcevParameterTabular = 3;
- if(count($missingOdgovori)!=0){
- $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
- $steviloStolpcev = $steviloStolpcev-count($missingOdgovori);
- }
- }elseif($enota == 8){ //tabela da/ne
- $steviloStolpcevParameterTabular = $steviloStolpcev = 3;
- if(count($missingOdgovori)!=0){
- $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
- $steviloStolpcev = $steviloStolpcev+count($missingOdgovori);
- }
- }
- //echo $steviloStolpcev.'</br>';
- //ureditev stevila stolpcev (za parametre tabele in nadaljnji izris) glede na izbrano postavitev - konec #################################################
-
- //ureditev parametrov za tabelo #################################################################################################
- $parameterTabular = '';
- for($i = 0; $i < $steviloStolpcevParameterTabular; $i++){
- //ce je prvi stolpec in ni "ena moznost proti drugi" ALI je zadnji stolpec (pred missing-i) in je "diferencial" ali "ena moznost proti drugi" z missing-i
- if( ($i == 0 && $enota != 4) || ($i == $spremenljivke['grids']+1 && $enota == 1) || (($i == $spremenljivke['grids']+2 && $enota == 4)&&(count($missingOdgovori)!=0)) ) {
- //$parameterTabular .= ($typeOfDocument == 'pdf' ? 'X' : 'l'); //leva poravnava stolpca
- //if($enota == 0 || $enota == 1 || $enota == 3){ //ce je "klasicna tabela" ali diferencial ali dvojna tabela
- //if($enota == 0 || $enota == 1 || $enota == 3 || $enota == 11){ //ce je "klasicna tabela" ali diferencial ali dvojna tabela ali VAS
- if($enota == 0 || $enota == 1 || $enota == 3 || $enota == 11 || $enota == 12){ //ce je "klasicna tabela" ali diferencial ali dvojna tabela ali VAS ali slikovni tip
- if($enota == 1){ //ce je diferencial
- if($i == 0){ //ce je prvi stolpec
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'A' : 'l'); //leva poravnava stolpca fiksne sirine
- }elseif($i == $spremenljivke['grids']+1){ //ce je zadnji stolpec
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'R' : 'r'); //desna poravnava stolpca fiksne sirine
- }
- }else{
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'A' : 'l'); //leva poravnava stolpca fiksne sirine
- }
- }else{
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'X' : 'l'); //leva poravnava stolpca prilagojena sirini
- }
- }elseif($i == $spremenljivke['grids']+2 && $enota == 4){ //ce je zadnji stolpec in je "ena moznost proti drugi" brez missing-ov
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'r' : 'r'); //desna poravnava
- }
- elseif($i == 0 && $enota == 4){ //ce je prvi stolpec in "ena moznost proti drugi"
- //$parameterTabular .= ($typeOfDocument == 'pdf' ? 'r' : 'r'); //desna poravnava stolpca
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'l' : 'l'); //leva poravnava prvega stolpca
- }elseif($i == (intval($steviloStolpcev/2)) && $enota == 3){ //ce smo na sredini stolpcev in je dvojna tabela
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'C|' : 'c|'); //sredinska poravnava stolpca
- }elseif($i == ($steviloStolpcev) && $enota == 5){ //ce je zadnji stolpec in je maxdiff
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'R' : 'r'); //desna za pdf in sredinska poravnava stolpca za rtf
- }else{
- $parameterTabular .= ($typeOfDocument == 'pdf' ? 'C' : 'c'); //sredinska poravnava stolpca
- }
- }
- //ureditev parametrov za tabelo - konec ##########################################################################################
- //echo 'Param: '.$parameterTabular.' enota param: '.$enota.'</br>';
-
//izpis tabela
$tabela = '';
- //echo $enota;
#IZPIS ZA POVLECI SPUSTI
if($enota == 9){ //ce je povleci spusti
@@ -1036,9 +742,9 @@ class MultiGridLatex extends LatexSurveyElement #pred zacetkom tabel za povleci spusti#######################################################################
//prva vrstica pred tabelo z odgovori
if($typeOfDocument == 'pdf'){ //ce je pdf
- $tabela .= '\keepXColumns\begin{tabularx}{0.45\textwidth}{C} '; //izris s tabelo
+ $tabela .= '\keepXColumns\begin{xltabular}{0.45\textwidth}{C} '; //izris s tabelo
$tabela .= $lang['srv_ranking_available_categories'].': '.$texNewLine;
- $tabela .= '\rule{0.4\textwidth}{0.7 pt} \end{tabularx}';
+ $tabela .= '\rule{0.4\textwidth}{0.7 pt} \end{xltabular}';
}else{ //ce je rtf
$tabela .= '\begin{tabular}{l} '; //izris z enostolpicno tabelo
$tabela .= $lang['srv_ranking_available_categories'].': '.$texNewLine; //Razpolozljive kategorije
@@ -1055,7 +761,7 @@ class MultiGridLatex extends LatexSurveyElement //zacetek tabele
if($typeOfDocument == 'pdf'){ //ce je pdf
- $tabela .= $this->StartLatexTable($typeOfDocument, $parameterTabularL, 'tabularx', 'tabular*', 0.45, 0.2);
+ $tabela .= $this->StartLatexTable($typeOfDocument, $parameterTabularL, 'xltabular', 'tabular*', 0.45, 0.2);
}
//argumenti za leve okvirje
@@ -1065,7 +771,6 @@ class MultiGridLatex extends LatexSurveyElement //izris notranjosti leve tabele
- //if($this->exportDataType){ //ce je dolg izpis izvoza odgovorov respondenta/respondentov
if($this->exportDataType&&$spremenljivke['tip']==6){ //ce je dolg izpis izvoza odgovorov respondenta/respondentov in je tabela en odgovor
//najdi razlike med poljema, kjer se belezijo vre_id odgovorov iz leve in desni strani @ povleci-spusti
$navpicniOdgovori = array();
@@ -1079,7 +784,7 @@ class MultiGridLatex extends LatexSurveyElement $sqlTextL = sisplet_query($sqlTextLString);
$rowTextL = mysqli_fetch_assoc($sqlTextL);
- array_push($navpicniOdgovori, $this->encodeText($rowTextL['naslov']));
+ array_push($navpicniOdgovori, LatexDocument::encodeText($rowTextL['naslov'], 0, 1));
}
}
}
@@ -1113,7 +818,7 @@ class MultiGridLatex extends LatexSurveyElement //zakljucek tabele
if($typeOfDocument == 'pdf'){ //ce je pdf
- $tabela .= $this->EndLatexTable($typeOfDocument, 'tabularx', 'tabular*');
+ $tabela .= $this->EndLatexTable($typeOfDocument, 'xltabular', 'tabular*');
}
#tabela s kategorijami odgovorov iz levega okvirja - konec ##################################################################
@@ -1123,12 +828,11 @@ class MultiGridLatex extends LatexSurveyElement #pred zacetkom "desne" tabele za povleci spusti#######################################################################
//prva vrstica pred tabelo z odgovori
if($typeOfDocument == 'pdf'){ //ce je pdf
- $tabela .= '\keepXColumns\begin{tabularx}{0.45\textwidth}{C} '; //izris s tabelo
+ $tabela .= '\keepXColumns\begin{xltabular}{0.45\textwidth}{C} '; //izris s tabelo
$tabela .= $lang['srv_drag_drop_answers'].': '.$texNewLine;
- $tabela .= '\rule{0.4\textwidth}{0.7 pt} \end{tabularx}';
+ $tabela .= '\rule{0.4\textwidth}{0.7 pt} \end{xltabular}';
}else{ //ce je rtf
$tabela .= '\begin{tabular}{l} '; //izris z enostolpicno tabelo
- //$tabela .= $lang['srv_ranking_available_categories'].': '.$texNewLine; //Razpolozljive kategorije
$tabela .= $lang['srv_drag_drop_answers'].': '.$texNewLine; //Razpolozljive kategorije
$tabela .= '\hline \end{tabular} ';
}
@@ -1163,13 +867,7 @@ class MultiGridLatex extends LatexSurveyElement $texSmallSkip = '';
$textDV = $vodoravniOdgovori[$i]; //besedilo odgovora v okvirju
//izpis latex kode za okvir z odgovorom
- //$textRIzpis .= ' '.$textDV.' '.$this->texNewLine.' \hline';
-
- //$textRIzpis .= ' '.$textDV;
$textNaslovOkvir .= ' '.$textDV;
-
- //$tabela .= $texNewLine;
- //$tabela .= '\indent ';
}else{ //drugace, ce je oblika skatle (prazen okvir na vrhu+tekst spodaj)
$texSmallSkip = $this->texSmallSkip;
}
@@ -1183,14 +881,15 @@ class MultiGridLatex extends LatexSurveyElement $jeOdgovor = 1;
if(!$izpisano){
foreach($this->textRArray AS $indeksTextRArray => $textR){
- if($this->textRArray[$indeksTextRArray][$datum]){
- $textR = $this->encodeText($textR[$datum]);
- $textR = $tableCentering.' '.$textR;
- //$textRIzpis .= '\fbox{\parbox{0.2\textwidth}{'.$textR.'}} '.$texSmallSkip.' '.$this->texNewLine; //zacetna varianta
- $textIzpis .= ' \vspace{0.5\baselineskip} ';
- $textIzpis .= '\fbox{\parbox{0.2\textwidth}{'.$textR.'}} '.$texSmallSkip.' '.$this->texNewLine;
- //$textRIzpis .= ' \hline \fbox{\parbox{0.2\textwidth}{'.$textR.'}} '.$texSmallSkip.' '.$this->texNewLine;
- $izpisano = 1;
+ if(array_key_exists($datum, $this->textRArray) && array_key_exists($indeksTextRArray, $this->textRArray)){
+ if(isset($this->textRArray[$indeksTextRArray][$datum])){
+ //$textR = Common::getInstance()->dataPiping($textR[$datum], $this->usr_id, $this->loop_id);
+ $textR = LatexDocument::encodeText($textR[$datum]);
+ $textR = $tableCentering.' '.$textR;
+ $textIzpis .= ' \vspace{0.5\baselineskip} ';
+ $textIzpis .= '\fbox{\parbox{0.2\textwidth}{'.$textR.'}} '.$texSmallSkip.' '.$this->texNewLine;
+ $izpisano = 1;
+ }
}
}
}else{
@@ -1227,9 +926,8 @@ class MultiGridLatex extends LatexSurveyElement //izpis latex kode za okvir (brez obrobe oz. fbox) z odgovorom
//$tabela .= ' \indent \parbox{0.2\textwidth}{ '.$tableCentering.' '.$vodoravniOdgovori[$i].' } '.$texNewLine;
$tabela .= ' \parbox{0.2\textwidth}{ '.$tableCentering.' '.$vodoravniOdgovori[$i].' } '.$texNewLine;
- $tabela .= '\end{tabularx}'; //konec tabele, ki se je zacela pri izpisu skatle
+ $tabela .= '\end{xltabular}'; //konec tabele, ki se je zacela pri izpisu skatle
}
- //echo "TABELA TEX: ".$tabela."</br>";
}elseif($typeOfDocument == 'rtf'){
if($i != 0){ //ce ni prvi, dodaj prostor
$tabela .= ' '.$this->texBigSkip;
@@ -1244,7 +942,7 @@ class MultiGridLatex extends LatexSurveyElement if(!$izpisano){
foreach($this->textRArray AS $indeksTextRArray => $textR){
if($this->textRArray[$indeksTextRArray][$datum]){
- $textR = $this->encodeText($textR[$datum]);
+ $textR = LatexDocument::encodeText($textR[$datum]);
$textR = $tableCentering.' '.$textR;
$textRIzpis .= '\fbox{\parbox{0.2\textwidth}{'.$textR.'}} '.$this->texNewLine;
$izpisano = 1;
@@ -1287,16 +985,98 @@ class MultiGridLatex extends LatexSurveyElement }
#IZPIS ZA POVLECI SPUSTI - KONEC
-
- if($enota != 9){ //ce ni povleci spusti
+ if($enota != 9){ //ce ni povleci spusti
+ //ureditev stevila stolpcev (za parametre tabele in nadaljnji izris) glede na izbrano postavitev #################################################
+
+ if(($enota == 0||$enota == 3 || $enota == 11 || $enota == 12)||$spremenljivke['tip']==19||$spremenljivke['tip']==20){ //klasika ali dvojna tabela ali je multitext ali multinumber ali VAS ali slikovni tip
+ if(($trak == 0 || $enota == 3 || ($trak == 1 && $spremenljivke['tip'] == 16))||($spremenljivke['tip']==19||$spremenljivke['tip']==20)){
+ $steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 1; //ker je prvi stolpec prazen, je potrebno dodati + 1
+ if(count($missingOdgovori)!=0){ //ce so missingi
+ $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular + 1;
+ }
+ }elseif($trak == 1 && $enota == 0 && $spremenljivke['tip'] == 6){
+ $steviloStolpcevParameterTabular = $steviloStolpcev + 1;
+ }
+ }elseif($enota == 1){ //diferencial
+ if($trak == 0){ //ce ni na traku
+ //$steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
+ if(count($missingOdgovori)!=0){ //ce so missingi
+ $steviloStolpcevParameterTabular = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
+ $steviloStolpcev = $steviloStolpcev + 2 - count($missingOdgovori);
+ }else{
+ $steviloStolpcevParameterTabular = $steviloStolpcev = $steviloStolpcev + 2; //ker sta prvi in zadnji stolpec prazna, je potrebno dodati + 2
+ }
+ }else{ //ce je na traku
+ $steviloStolpcevParameterTabular = $steviloStolpcev + 2;
+ $steviloStolpcev = $steviloStolpcev + 2 + count($missingOdgovori);
+ }
+ }elseif($enota == 2 || $enota == 6){ //roleta ali izberite s seznama
+ $steviloStolpcevParameterTabular = 2; //pri roleti sta potrebna le dva stolpca
+ if(count($missingOdgovori)!=0){ //ce so missingi
+ $steviloStolpcev = $spremenljivke['grids'] + count($missingOdgovori) + 1; //+1, ker se pri izrisu indeks zacne z 1
+ }
+ }elseif($enota == 4){ //ena moznost proti drugi
+ $steviloStolpcevParameterTabular = 5;
+ if(count($missingOdgovori)!=0){
+ $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
+ $steviloStolpcev = $steviloStolpcev-count($missingOdgovori);
+ }
+ }elseif($enota == 5){ //maxdiff
+ $steviloStolpcevParameterTabular = 3;
+ if(count($missingOdgovori)!=0){
+ $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
+ $steviloStolpcev = $steviloStolpcev-count($missingOdgovori);
+ }
+ }elseif($enota == 8){ //tabela da/ne
+ $steviloStolpcevParameterTabular = $steviloStolpcev = 3;
+ if(count($missingOdgovori)!=0){
+ $steviloStolpcevParameterTabular = $steviloStolpcevParameterTabular+count($missingOdgovori);
+ $steviloStolpcev = $steviloStolpcev+count($missingOdgovori);
+ }
+ }
+ //ureditev stevila stolpcev (za parametre tabele in nadaljnji izris) glede na izbrano postavitev - konec #################################################
+
+ //ureditev parametrov za tabelo #################################################################################################
+ $parameterTabular = '';
+ for($i = 0; $i < $steviloStolpcevParameterTabular; $i++){
+ //ce je prvi stolpec in ni "ena moznost proti drugi" ALI je zadnji stolpec (pred missing-i) in je "diferencial" ali "ena moznost proti drugi" z missing-i
+ if( ($i == 0 && $enota != 4) || ($i == $spremenljivke['grids']+1 && $enota == 1) || (($i == $spremenljivke['grids']+2 && $enota == 4)&&(count($missingOdgovori)!=0)) ) {
+ if($enota == 0 || $enota == 1 || $enota == 3 || $enota == 11 || $enota == 12){ //ce je "klasicna tabela" ali diferencial ali dvojna tabela ali VAS ali slikovni tip
+ if($enota == 1){ //ce je diferencial
+ if($i == 0){ //ce je prvi stolpec
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'A' : 'l'); //leva poravnava stolpca fiksne sirine
+ }elseif($i == $spremenljivke['grids']+1){ //ce je zadnji stolpec
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'R' : 'r'); //desna poravnava stolpca fiksne sirine
+ }
+ }else{
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'A' : 'l'); //leva poravnava stolpca fiksne sirine
+ }
+ }else{
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'X' : 'l'); //leva poravnava stolpca prilagojena sirini
+ }
+ }elseif($i == $spremenljivke['grids']+2 && $enota == 4){ //ce je zadnji stolpec in je "ena moznost proti drugi" brez missing-ov
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'r' : 'r'); //desna poravnava
+ }
+ elseif($i == 0 && $enota == 4){ //ce je prvi stolpec in "ena moznost proti drugi"
+ //$parameterTabular .= ($typeOfDocument == 'pdf' ? 'r' : 'r'); //desna poravnava stolpca
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'l' : 'l'); //leva poravnava prvega stolpca
+ }elseif($i == (intval($steviloStolpcev/2)) && $enota == 3){ //ce smo na sredini stolpcev in je dvojna tabela
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'C|' : 'c|'); //sredinska poravnava stolpca
+ }elseif($i == ($steviloStolpcev) && $enota == 5){ //ce je zadnji stolpec in je maxdiff
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'R' : 'r'); //desna za pdf in sredinska poravnava stolpca za rtf
+ }else{
+ $parameterTabular .= ($typeOfDocument == 'pdf' ? 'C' : 'c'); //sredinska poravnava stolpca
+ }
+ }
+ //ureditev parametrov za tabelo - konec ##########################################################################################
#ZACETEK MAIN TABELE #########################################################################
- $tabela .= $this->StartLatexTable($typeOfDocument, $parameterTabular, 'tabularx', 'tabular', 1, 1);
+ $tabela .= $this->StartLatexTable($typeOfDocument, $parameterTabular, 'xltabular', 'tabular', 1, 1);
#nad prvo vrstico, ampak se vedno v tabeli - naslovi trakov, podnaslovi dvojne tabele ################################################
if( ($enota == 3) && ($podnaslov1 || $podnaslov2) ){ //ce je dvojna tabela in sta prisotna podnaslova
$tabela .= ' & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov1.'} & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov2.'} '.$texNewLine;
- //$tabela .= ' & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov1.'} & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov2.'} ';
+ //$tabela .= ' & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov1.'} & \multicolumn{'.intval($steviloStolpcev/2).'}{c}{'.$podnaslov2.'} ';
}elseif($trak == 1 && $spremenljivke['tip'] == 6 && ($enota == 0 || $enota == 1)){ //ce imamo obliko traku, uredi nadnaslove traka
if($spremenljivke['grids']%$trakNumOfTitles == 0){ //ce je stevilo stolpcev deljivo s trenutnim izbranim stevilom nadnaslovov
for($i=0; $i<$trakNumOfTitles; $i++){
@@ -1351,7 +1131,6 @@ class MultiGridLatex extends LatexSurveyElement if($enota == 1){ //ce je diferencial tabela
$tabela .= ' & ';
}
- //echo $tabela;
//missingi
if(count($missingOdgovori)!=0 && ($enota==0||$enota==1)){ //ce so missingi in (je klasicna tabela ali diferencial)
@@ -1363,7 +1142,6 @@ class MultiGridLatex extends LatexSurveyElement }
#nad prvo vrstico, ampak se vedno v tabeli - konec#######################################################
- //echo $steviloStolpcev."</br>";
//ureditev missing-ov za tabela da/ne, klasicna ali dvojna tabela #############################
if($enota==8){ //ce je tabela da/ne
@@ -1381,21 +1159,17 @@ class MultiGridLatex extends LatexSurveyElement }
}
}
-/* for($m=0;$m<count($vodoravniOdgovori);$m++){
- echo $vodoravniOdgovori[$m].'</br>';
- } */
+
}
//ureditev missing-ov za tabela da/ne, klasicna ali dvojna tabela - konec #####################
+
#prva vrstica tabele ####################################################################################
$tabela .= $this->LatexPrvaVrsticaMultiGrid($steviloStolpcev, $enota, $trak, $customColumnLabelOption, $spremenljivke, $vodoravniOdgovori, $missingOdgovori);
#prva vrstica tabele - konec ##################################################################################
-
- if($enota!=2 && $enota!=6){ //ce ni roleta in izberite s seznama in ena moznost proti drugi
+ if(($enota!=2 && $enota!=6)||($enota==2&&$spremenljivke['tip']==19)){ //ce ni roleta in izberite s seznama in ena moznost proti drugi
$tabela .= $texNewLine; //skok v drugo vrstico, kjer se zacnejo navpicni odgovori
}
-
- //echo "koda za tabelo: ".$tabela."</br>";
//preureditev stevila stolpcev za pravilen izris####################################
if($enota == 1){ //ce je diferencial tabela
@@ -1412,11 +1186,7 @@ class MultiGridLatex extends LatexSurveyElement if(($enota == 0) && count($missingOdgovori)!=0){ //ce je klasicna tabela in so missingi
//$steviloStolpcev = $steviloStolpcev + count($missingOdgovori);
- }
-
- //echo $steviloStolpcev.'</br>';
- //echo $spremenljivke['grids'].'</br>';
-
+ }
//preureditev stevila stolpcev za pravilen izris - konec ############################
//ureditev missing-ov za roleta in izberite iz seznama ##############################
@@ -1426,23 +1196,18 @@ class MultiGridLatex extends LatexSurveyElement }
}
//ureditev missing-ov za roleta in izberite iz seznama - konec ######################
-
- #izris vrstic tabele
- $trakStartingNumberTmp = null;
- //$tabela .= $this->LatexVrsticeMultigrid($steviloVrstic, $typeOfDocument, $enota, $simbolTex, $navpicniOdgovori, $trakStartingNumberTmp, $fillablePdf, $steviloStolpcev, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, $navpicniOdgovori2, $missingOdgovori, 0, 0, 0, $data, $export_subtype);
- $tabela .= $this->LatexVrsticeMultigrid($steviloVrstic, $typeOfDocument, $enota, $simbolTex, $navpicniOdgovori, $trakStartingNumberTmp, $fillablePdf, $steviloStolpcev, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, $navpicniOdgovori2, $missingOdgovori, 0, 0, 0, $data, $export_subtype, $this->preveriSpremenljivko, $this->userDataPresent);
+ #izris vrstic tabele
+ $tabela .= $this->LatexVrsticeMultigrid($steviloVrstic, $typeOfDocument, $enota, $simbolTex, $navpicniOdgovori, $trakStartingNumber, $fillablePdf, $steviloStolpcev, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, $navpicniOdgovori2, $missingOdgovori, 0, 0, 0, $data, $export_subtype, $this->preveriSpremenljivko, $this->userDataPresent, null, $this->exportDataType, null, null, $this->skipEmpty, $this->skipEmptySub);
#izris vrstic tabele - konec
-/* if($enota==12||$enota==11){
- echo "tabela tex: ".$tabela."</br>";
- } */
- $tabela .= $this->EndLatexTable($typeOfDocument, 'tabularx', 'tabular'); //zakljucek tabele
+ $tabela .= $this->EndLatexTable($typeOfDocument, 'xltabular', 'tabular'); //zakljucek tabele
//$tabela .= $texNewLineAfterTable;
#KONEC MAIN TABELE #########################################################################
}
//prostor po izpisu tabele
- $tabela .= $this->texBigSkip;
- $tabela .= $this->texBigSkip;
+ //$tabela .= $this->texBigSkip;
+ //$tabela .= $this->texBigSkip;
+ $tabela .= '\vspace{1 cm}';
//izpis tabela - konec
@@ -1552,10 +1317,9 @@ class MultiGridLatex extends LatexSurveyElement }
}
//ureditev parametrov za tabelo - konec
- //echo "parameterTabularLabelePrvaPod: ".$parameterTabularLabelePrvaPod."</br>";
//zacetek tabele
- $tex .= ($export_format == 'pdf' ? '{ \begin{tabularx}{1\textwidth}{'.$parameterTabularLabelePrvaPod.'}' : '\begin{tabular}{'.$parameterTabularLabelePrvaPod.'}');
+ $tex .= ($export_format == 'pdf' ? '{ \begin{xltabular}{1\textwidth}{'.$parameterTabularLabelePrvaPod.'}' : '\begin{tabular}{'.$parameterTabularLabelePrvaPod.'}');
//prva vrstica, ce so opisne labele
#IZRIS OPISNIH LABEL NAD DRSNIKOM #################################################
@@ -1571,13 +1335,13 @@ class MultiGridLatex extends LatexSurveyElement $tex .= ' & ';
//labela na levi strani
- $tex .= $this->encodeText($MinLabel);
+ $tex .= LatexDocument::encodeText($MinLabel, 0, 1);
//vmesni prazni stolpci
$steviloPraznihStolpcev = $steviloStolpcevPrvaVrstica - 2 + 1;
for($p=0; $p<$steviloPraznihStolpcev; $p++){
if($p==$steviloPraznihStolpcev-2){ //ce je pred-zadnji stolpec
- $tex .= '\multicolumn{2}{c}{'.$this->encodeText($MaxLabel).'}'; //labela na desni v zadnji dveh desnih stolpcih
+ $tex .= '\multicolumn{2}{c}{'.LatexDocument::encodeText($MaxLabel, 0, 1).'}'; //labela na desni v zadnji dveh desnih stolpcih
}elseif($p==$steviloPraznihStolpcev-1){ //ce je zadnji stolpec
}else{ //drugace
@@ -1587,7 +1351,6 @@ class MultiGridLatex extends LatexSurveyElement }
//labela na desni strani
- //$tex .= $this->encodeText($MaxLabel);
//v novo vrstico po izrisu opisnih label
$tex .= $this->texNewLine;
@@ -1607,7 +1370,6 @@ class MultiGridLatex extends LatexSurveyElement #IZRIS MOZNIH ODGOVOROV - KONEC
$tex .= ' & ';
- //echo $userAnswer[$key]."</br>";
if($export_format == 'pdf'){ //ce je pdf, pokazi drsnike tudi graficno
#IZRIS DRSNIKA {dolzina}{pozicija bunkice}####################################
$steviloStolpcevZaSlider = $steviloStolpcevPrvaVrstica - 1;
@@ -1694,8 +1456,7 @@ class MultiGridLatex extends LatexSurveyElement }
//konec tabele
- $tex .= ($export_format == 'pdf' ? "\\end{tabularx} }" : "\\end{tabular} \\noindent");
- //echo $tex;
+ $tex .= ($export_format == 'pdf' ? "\\end{xltabular} }" : "\\end{tabular} \\noindent");
################# izpis s samo eno tabelo, saj zaradi ltablex, to ni vec mozno - konec
#Konec tabele za izris odgovora in drsnika - konec #################################################################################
@@ -1758,9 +1519,9 @@ class MultiGridLatex extends LatexSurveyElement #############################################################################################################
//se ena tabela, da naredimo dovolj prostora na koncu vprasanja
- $tex .= ($export_format == 'pdf' ? '\begin{tabularx}{0.9\textwidth}{X}' : '');
+ $tex .= ($export_format == 'pdf' ? '\begin{xltabular}{0.9\textwidth}{X}' : '');
$tex .= $this->texNewLine;
- $tex .= ($export_format == 'pdf' ? '\end{tabularx}' : '');
+ $tex .= ($export_format == 'pdf' ? '\end{xltabular}' : '');
return $tex;
}
|