From 75160b12821f7f4299cce7f0b69c83c1502ae071 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Luka=20=C5=A0ijanec?= Date: Mon, 27 May 2024 13:08:29 +0200 Subject: 2024-02-19 upstream --- .../latexclasses/Vprasanja/GridMultipleLatex.php | 180 +++++++++------------ 1 file changed, 77 insertions(+), 103 deletions(-) (limited to 'admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php') diff --git a/admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php b/admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php index 3b67102..96dbff8 100644 --- a/admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php +++ b/admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php @@ -10,9 +10,9 @@ *****************************************/ -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); + 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); class GridMultipleLatex extends LatexSurveyElement { @@ -29,6 +29,9 @@ class GridMultipleLatex extends LatexSurveyElement private static $_instance; protected $texBigSkip = '\bigskip '; protected $loop_id = null; // id trenutnega loopa ce jih imamo + protected $usr_id = null; + protected $language; + protected $prevod; public static function getInstance() { @@ -38,28 +41,40 @@ class GridMultipleLatex extends LatexSurveyElement return new GridMultipleLatex(); } - public function export($spremenljivke=null, $export_format='', $questionText='', $fillablePdf=null, $texNewLine='', $usr_id=null, $db_table=null, $export_subtype='', $preveriSpremenljivko=null, $export_data_type='', $loop_id=null){ + public function export($spremenljivke=null, $export_format='', $questionText='', $fillablePdf=null, $texNewLine='', $usr_id=null, $db_table=null, $export_subtype='', $preveriSpremenljivko=null, $export_data_type='', $loop_id=null, $language=null){ + //$time_start = microtime(true); // Ce je spremenljivka v loopu $this->loop_id = $loop_id; + $this->usr_id = $usr_id; + + $this->language = $language; + + //preverjanje, ali je prevod + if(isset($_GET['language'])){ + $this->language = isset($_GET['language'])?$_GET['language']:null; + $this->prevod = 1; + }else{ + $this->prevod = 0; + } + //preverjanje, ali je prevod - konec + + //echo "tip izpisa: $export_data_type
"; //$export_data_type: 1 - Razsirjen, 2 - Skrcen $presirokaTabela = 0; //preveri, ce je kaj v bazi $questionText=0; $userDataPresent=0; $izpisOdgovorov = 0; + $userAnswer = null; if($usr_id){ //ce je prisotne id uporabnika, je izpis odgovorov in je potrebno narediti naslednje stvari - //$userAnswer = $this->GetUsersDataKombinirana($spremenljivke, $db_table, $usr_id, $questionText, $this->loop_id, $export_data_type); $userAnswer = $this->GetUsersDataKombinirana($spremenljivke, $db_table, $usr_id, $presirokaTabela, $this->loop_id, $export_data_type); foreach($userAnswer as $value){ if($value!=''){ $userDataPresent=1; } - //echo "Value: ".$value."
"; } $izpisOdgovorov = 1; } - //echo "Usr_id: ".$usr_id.'
'; - //echo "Stevilo odgovorov: ".count($userAnswer).'
'; 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 @@ -82,10 +97,10 @@ class GridMultipleLatex extends LatexSurveyElement } //poizvedba vseh potrebnih podatkov dodanih moznosti v kombinirani tabeli - $sqlMultiple = sisplet_query("SELECT g.*, s.tip, s.enota, s.dostop FROM srv_grid g, srv_grid_multiple m, srv_spremenljivka s WHERE s.id=g.spr_id AND g.spr_id=m.spr_id AND m.spr_id IN (".implode($multipleSprId, ',').") ORDER BY m.vrstni_red, g.vrstni_red"); + $sqlMultiple = sisplet_query("SELECT g.*, s.tip, s.enota, s.dostop FROM srv_grid g, srv_grid_multiple m, srv_spremenljivka s WHERE s.id=g.spr_id AND g.spr_id=m.spr_id AND m.spr_id IN (".implode(',', $multipleSprId).") ORDER BY m.vrstni_red, g.vrstni_red"); //echo "SELECT g.*, s.tip, s.enota, s.dostop FROM srv_grid g, srv_grid_multiple m, srv_spremenljivka s WHERE s.id=g.spr_id AND g.spr_id=m.spr_id AND m.spr_id IN (".implode($multipleSprId, ',').") ORDER BY m.vrstni_red, g.vrstni_red"; //poizvedba podnaslovov v kombinirani tabeli - $sqlMultiplePodNaslovi = sisplet_query("SELECT naslov FROM srv_spremenljivka WHERE id IN (".implode($multipleSprId, ',').")"); + $sqlMultiplePodNaslovi = sisplet_query("SELECT naslov FROM srv_spremenljivka WHERE id IN (".implode(',', $multipleSprId).")"); //novo za kombinirano tabelo - konec $spremenljivkaParams = new enkaParameters($spremenljivke['params']); @@ -114,14 +129,14 @@ class GridMultipleLatex extends LatexSurveyElement if($usr_id){ $multipleVredIdDrugo = array(); //polje za shranjevanje vre_id, kjer je prisotna moznost Drugo: //poizvedba vrednosti polj, kjer se pojavijo polja Drugo: - $sqlMultipleVredIdZaDrugo = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id IN (".implode($multipleSprId, ',').") AND other = 1"); + $sqlMultipleVredIdZaDrugo = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id IN (".implode(',', $multipleSprId).") AND other = 1"); while ($rowsqlMultipleVredIdZaDrugo = mysqli_fetch_array($sqlMultipleVredIdZaDrugo)) { $multipleVredIdDrugo[] = $rowsqlMultipleVredIdZaDrugo['id']; } if(!empty($multipleVredIdDrugo)){ $multipleBesediloDrugo = array(); //polje za shranjevanje vnesenega besedila iz strani respondenta, kjer je prisotna moznost Drugo: - $sqlStavekMultipleBesediloDrugo = "SELECT text FROM srv_data_text_active WHERE vre_id IN (".implode($multipleVredIdDrugo, ',').") AND usr_id=".$usr_id." "; + $sqlStavekMultipleBesediloDrugo = "SELECT text FROM srv_data_text_active WHERE vre_id IN (".implode(',', $multipleVredIdDrugo).") AND usr_id=".$usr_id." "; $sqlMultipleBesediloDrugo = sisplet_query($sqlStavekMultipleBesediloDrugo); while ($rowsqlMultipleBesediloDrugo = mysqli_fetch_array($sqlMultipleBesediloDrugo)) { $multipleBesediloDrugo[] = $rowsqlMultipleBesediloDrugo['text']; @@ -133,13 +148,27 @@ class GridMultipleLatex extends LatexSurveyElement //ce je prisoten id uporabnika - ureditev belezenja vnesenega odgovora pod Drugo: - konec //pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti - navpicni odgovori - while ($rowVrednost = mysqli_fetch_assoc($sqlVrednosti)){ - $stringTitleRow = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) )); + while ($rowVrednost = mysqli_fetch_assoc($sqlVrednosti)){ + $stringTitleRow = ''; + /* $stringTitleRow = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) )); # po potrebi prevedemo naslov $naslov = $this->srv_language_vrednost($rowVrednost['id']); if ($naslov != '') { //$rowVrednost['naslov'] = $naslov; $stringTitleRow = $naslov; + } */ + + if($this->prevod){ //ce je prevod ankete + # po potrebi prevedemo naslov + $rowl = $this->srv_language_vrednost($rowVrednost['id']); + if ($rowl != '') { + $stringTitleRow = ((( $rowl['naslov'] ) ? $rowl['naslov'] : ( ( $rowl['naslov2'] ) ? $rowl['naslov2'] : $rowl['variable'] ) )); //prevod naslova v ustreznem jeziku; + } + if($stringTitleRow == ''){ //ce ni prevoda, prevzemi izvirno + $stringTitleRow = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) )); + } + }else{ + $stringTitleRow = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) )); } $besediloDrugo = ''; @@ -148,13 +177,15 @@ class GridMultipleLatex extends LatexSurveyElement if($rowVrednost['other'] && $usr_id){ //zabelezi besedilo, ki je trenuten uporabnik za trenuten odgovor zapisal pod Drugo: $besediloDrugo = $multipleBesediloDrugo[$indeksBesediloDrugo]; - $this->encodeText($besediloDrugo); + LatexDocument::encodeText($besediloDrugo); $besediloDrugo = ' \\textcolor{crta}{\footnotesize{'.$besediloDrugo.'}} '; $indeksBesediloDrugo++; //povecaj indeks za izpis vnesenega besedila v Drugo: } //ce je drugo vnesen kot odgovor in je prisoten id uporabnika - konec - - array_push($navpicniOdgovori, $this->encodeText($stringTitleRow)." ".$besediloDrugo); //filanje polja z navpicnimi odgovori (po vrsticah) + if($usr_id){ + $stringTitleRow = Common::getInstance()->dataPiping($stringTitleRow, $usr_id, $loop_id); + } + array_push($navpicniOdgovori, LatexDocument::encodeText($stringTitleRow, 0, 1)." ".$besediloDrugo); //filanje polja z navpicnimi odgovori (po vrsticah) } //pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti - navpicni odgovori - konec @@ -164,19 +195,19 @@ class GridMultipleLatex extends LatexSurveyElement $steviloSkupinRoletSeznamov = 0; //belezi stevilo enot z roletami ali seznamov (pomembno za pravilen izris, za presiroko tabelo) $steviloOdgovorovRoletSeznamov = 0; //belezi stevilo posameznih odgovorov, ki sestavljajo razlicne rolete ali sezname $sprIdRoletSeznamov = 0; - $sprIdRoletSeznamovTmp = 0; + $sprIdRoletSeznamovTmp = 0; //pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - vodoravni odgovori while ($colVrednost = mysqli_fetch_assoc($sqlStolpciVrednosti)){ - - #staro, izpis naslovov stolpcev tabele z isto velikostjo pisave, kot vse ostalo - /* $stringTitleCol = $colVrednost['naslov']; - array_push($vodoravniOdgovori, $this->encodeText($stringTitleCol, 0, 1) ); //filanje polja z vodoravnimi odgovori (po stolpcih) */ - #staro - konec - - $stringTitleCol = $this->encodeText($colVrednost['naslov'], 0, 1); - $stringTitleCol = '\footnotesize{'.$stringTitleCol.'}'; //zmanjsanje pisave za naslove stolpcev tabele - array_push($vodoravniOdgovori, $stringTitleCol); //filanje polja z vodoravnimi odgovori (po stolpcih) + $stringTitleCol = ''; + $rowl = $this->srv_language_grid($colVrednost['variable'],$colVrednost['spr_id']); + if ($rowl !=null && strip_tags($rowl['naslov']) != '') $colVrednost['naslov'] = $rowl['naslov']; + $stringTitleCol = $colVrednost['naslov']; + if($usr_id){ + $stringTitleCol = Common::getInstance()->dataPiping($stringTitleCol, $usr_id, $loop_id); + } + $stringTitleCol = '\footnotesize{'.LatexDocument::encodeText($stringTitleCol, 0, 1).'}'; //zmanjsanje pisave za naslove stolpcev tabele + array_push($vodoravniOdgovori, $stringTitleCol); //filanje polja z vodoravnimi odgovori (po stolpcih) $rowMultiple = mysqli_fetch_array($sqlMultiple); array_push($vodoravniOdgovoriTip, $rowMultiple['tip']); //filanje polja s tipi spremenljivk @@ -187,38 +218,25 @@ class GridMultipleLatex extends LatexSurveyElement if(($rowMultiple['enota'] == 2 || $rowMultiple['enota'] == 6)){ $sprIdRoletSeznamov = $rowMultiple['spr_id']; } - - /* echo "enota ".$rowMultiple['enota']."
"; - echo "spr ".$rowMultiple['spr_id']."
"; */ - //if(($rowMultiple['enota'] == 2 || $rowMultiple['enota'] == 6)){ //ce je roleta ali seznam IN je izpis odgovorov + //if(($rowMultiple['enota'] == 2 || $rowMultiple['enota'] == 6)&&$izpisOdgovorov){ //ce je roleta ali seznam IN je izpis odgovorov if((($rowMultiple['enota'] == 2 || $rowMultiple['enota'] == 6)&&$izpisOdgovorov) || ($izpisOdgovorov&&$rowMultiple['tip']==6&&$export_data_type==2)){ //(ce je roleta ALI seznam IN je izpis odgovorov) ALI (je izpis odgovorov IN je radio button) if($sprIdRoletSeznamovTmp != $sprIdRoletSeznamov){ $steviloSkupinRoletSeznamov++; } $steviloOdgovorovRoletSeznamov++; - //echo "spr: $sprIdRoletSeznamov
"; } - $sprIdRoletSeznamovTmp = $sprIdRoletSeznamov; + $sprIdRoletSeznamovTmp = $sprIdRoletSeznamov; } //pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - vodoravni odgovori - konec $vodoravniOdgovoriVsi = $vodoravniOdgovori; - /* echo "stevilo skupin rolet/seznamov ".($steviloSkupinRoletSeznamov)."
"; - echo "stevilo odgovorov v roletah ali seznamu ".($steviloOdgovorovRoletSeznamov)."
"; */ - -/* echo "vodoravniOdgovoriSprId: "; - print_r($vodoravniOdgovoriSprId); - echo "
"; - echo "Enote: "; - print_r($vodoravniOdgovoriEnota); - echo "
"; */ //ureditev polja z nadnaslovi kombinirane tabele while ($rowMultiplePodNaslovi = mysqli_fetch_array($sqlMultiplePodNaslovi)){ - array_push($podNaslovi, $this->encodeText($rowMultiplePodNaslovi['naslov'])); + array_push($podNaslovi, LatexDocument::encodeText($rowMultiplePodNaslovi['naslov'], 0, 1)); } //ureditev polja z nadnaslovi kombinirane tabele - konec @@ -228,10 +246,8 @@ class GridMultipleLatex extends LatexSurveyElement $steviloPodstolpcev = $numColSql - $steviloOdgovorovRoletSeznamov + $steviloSkupinRoletSeznamov; $mejaZaVelikeTabele = 7; $velikostTabele = $steviloPodstolpcev-1; - //echo "velikost tabele: ".($velikostTabele)."
"; + if($velikostTabele > $mejaZaVelikeTabele){ //ce imamo veliko tabelo, jo je potrebno razbiti na vec tabel, ker drugace je presiroka - //echo "tabela je prevelika, ima ".($velikostTabele)." stolpcev
"; - $presirokaTabela = 1; $steviloTabelCelih = intval($velikostTabele / $mejaZaVelikeTabele); $steviloTabelMod = $velikostTabele % $mejaZaVelikeTabele; @@ -240,11 +256,6 @@ class GridMultipleLatex extends LatexSurveyElement $delnaTabela = 1; } $steviloTabel = $steviloTabelCelih + $delnaTabela; - - //echo "stevilo podtabel celih ".($steviloTabelCelih)."
"; - //echo "stevilo podtabel mod ".($steviloTabelMod)."
"; - //echo "stevilo podtabel za izpis: ".($steviloTabel)."
"; - //echo "stevilo podatkov za izpis: ".($steviloPodatkovZaIzpis)."
"; }else{ $presirokaTabela = 0; @@ -273,11 +284,6 @@ class GridMultipleLatex extends LatexSurveyElement $valueTmp = null; foreach($vodoravniOdgovoriSprId as $value){ //parametri tabele ZA OSTALE STOLPCE+pridobitev stevila stolpcev+priprava polj in spremenljivk ############### - //echo $vodoravniOdgovoriEnota[$indeksParameterTabular-1]."
"; - //echo "value: ".$value."
"; - //echo "valueTmp: ".$valueTmp."
"; - //echo "indeksParameterTabular: ".$indeksParameterTabular."
"; - //echo "Stevilo vodoravniOdgovoriSprId: ".count($vodoravniOdgovoriSprId)."
"; if($izpisOdgovorov == 0 || ($izpisOdgovorov == 1 && $vodoravniOdgovoriEnota[$indeksParameterTabular-1]==0 && $export_data_type == 1) || ($izpisOdgovorov == 1 && $vodoravniOdgovoriEnota[$indeksParameterTabular-1]==0 && $vodoravniOdgovoriTip[$indeksParameterTabular-1]!=6 && $export_data_type == 2)){ //ce je prazen vprasalnik ALI (je izpis odgovorov IN ni roleta/seznam IN je Razsirjen izvoz) ALI (je izpis odgovorov IN ni roleta/seznam IN ni radio button IN je skrcen izvoz) if($indeksParameterTabular==1){ //ce je prvi podstolpec @@ -345,8 +351,6 @@ class GridMultipleLatex extends LatexSurveyElement $indeksVodoravniOdgovori++; } //parametri tabele ZA OSTALE STOLPCE+pridobitev stevila stolpcev+priprava polj in spremenljivk - konec ########################################## - //echo "Parametri tabel: ".$parameterTabular."
"; - //brisanje odvecnih elementov polja in ponovna indeksacija polja foreach($toDelete as $value){ unset($vodoravniOdgovoriPrva[$value]); //brisanje ustreznih elementov polja @@ -371,20 +375,17 @@ class GridMultipleLatex extends LatexSurveyElement }else{ $numColSqlPrva = $numColSql; } - //echo "stevilo stolpcev prva vrstica $numColSqlPrva
"; //dodatna priprava polj in spremenljivk, ce enota je razlicna od nula oz. izris ni klasicna tabela - konec ############################# //ureditev parametrov za tabelo, pridobitev stevila stolpcev za vsak tip dodanega vprasanja (podstolpec), priprava polj in spremenljivk, ce enota je razlicna od nula oz. izris ni klasicna tabela - konec ######## //IZRIS TABELE - $tex .= $this->StartLatexTable($export_format, $parameterTabular, 'tabularx', 'tabular', 1, 1); //zacetek tabele + $tex .= $this->StartLatexTable($export_format, $parameterTabular, 'xltabular', 'tabular', 1, 1); //zacetek tabele #nadnaslovi nad prvo vrstico ######################################################### if($spremenljivke['grid_subtitle1']==1){ //ce so podnaslovi for($n=0;$n'; - //$tex .= ' & \multicolumn{'.$steviloPodStolpcev[$n].'}{c}{'.$podNaslovi[$n].'}'; $tex .= ' & \multicolumn{'.$steviloPodStolpcev[$n].'}{C}{'.$podNaslovi[$n].'}'; } } @@ -398,20 +399,20 @@ class GridMultipleLatex extends LatexSurveyElement $tex .= $texNewLine; - //print_r($userAnswer); - #izris vrstic tabele $fillablePdf = 0; //echo "stevilo stolpcev tabele $numColSql
"; - $tex .= $this->LatexVrsticeMultigrid($numRowsSql, $export_format, $enota, $simbolTex, $navpicniOdgovori, 0, $fillablePdf, $numColSql, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, 0, 0, $vodoravniOdgovoriTip, $vodoravniOdgovoriEnota, $vodoravniOdgovoriSprId, $userAnswer, $export_subtype, $preveriSpremenljivko, $userDataPresent, $presirokaTabela, $export_data_type); + $tex .= $this->LatexVrsticeMultigrid($numRowsSql, $export_format, $enota, null, $navpicniOdgovori, 0, $fillablePdf, $numColSql, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, 0, 0, $vodoravniOdgovoriTip, $vodoravniOdgovoriEnota, $vodoravniOdgovoriSprId, $userAnswer, $export_subtype, $preveriSpremenljivko, $userDataPresent, $presirokaTabela, $export_data_type, $this->usr_id, $this->loop_id); #izris vrstic tabele - konec - $tex .= $this->EndLatexTable($export_format, 'tabularx', 'tabular'); //zakljucek tabele + $tex .= $this->EndLatexTable($export_format, 'xltabular', 'tabular'); //zakljucek tabele //IZRIS TABELE - KONEC $tex .= $this->texBigSkip; $tex .= $this->texBigSkip; - + /* $time_end = microtime(true); + $execution_time = ($time_end - $time_start); + echo 'Total Execution Time kombinirana tabela: '.$execution_time.' sec'; */ return $tex; }elseif($presirokaTabela == 1){ //ce je tabela presiroka ################################################# @@ -419,7 +420,6 @@ class GridMultipleLatex extends LatexSurveyElement //za vsako spremenljivko oz. podtabelo foreach($multipleSprId AS $sprId){ - //echo "$sprId
"; #pobiranje podatkov o odgovorih respondenta za vsako podtabelo posebej if($usr_id){ //ce je prisotne id uporabnika, je izpis odgovorov in je potrebno narediti naslednje stvari @@ -429,13 +429,10 @@ class GridMultipleLatex extends LatexSurveyElement if($value!=''){ $userDataPresent=1; } - //echo "Value: ".$value."
"; } $izpisOdgovorov = 1; } - //echo "podatek je: ".$userDataPresent."
"; - /* print_r($userAnswer); - echo "
"; */ + #pobiranje podatkov o odgovorih respondenta za vsako podtabelo posebej - konec $vodoravniOdgovoriTip = array(); @@ -452,9 +449,12 @@ class GridMultipleLatex extends LatexSurveyElement array_push($vodoravniOdgovoriTip, $rowMultiple['tip']); //filanje polja s tipi spremenljivk array_push($vodoravniOdgovoriSprId, $rowMultiple['spr_id']); //filanje polja z id spremenljivk array_push($vodoravniOdgovoriEnota, $rowMultiple['enota']); //filanje polja z enoto spremenljivk - //print_r($vodoravniOdgovoriTip); - $stringTitleCol = $this->encodeText($rowMultiple['naslov'], 0, 1); - $stringTitleCol = '\footnotesize{'.$stringTitleCol.'}'; //zmanjsanje pisave za naslove stolpcev tabele + + $stringTitleCol = $rowMultiple['naslov']; + if($usr_id){ + $stringTitleCol = Common::getInstance()->dataPiping($stringTitleCol, $usr_id, $loop_id); + } + $stringTitleCol = '\footnotesize{'.LatexDocument::encodeText($stringTitleCol, 0, 1).'}'; //zmanjsanje pisave za naslove stolpcev tabele //if(($vodoravniOdgovoriEnota[0] == 2 || $vodoravniOdgovoriEnota[0] == 6) && $izpisOdgovorov && $export_data_type == 1){ //(ce je roleta ALI seznam) IN je izpis odgovorov IN razsirjen izvoz if(($vodoravniOdgovoriEnota[0] == 2 || $vodoravniOdgovoriEnota[0] == 6) && $izpisOdgovorov && $export_data_type == 1 || ($izpisOdgovorov && $export_data_type == 2 && $vodoravniOdgovoriTip[0] == 6 )){ //(ce je roleta ALI seznam) IN je izpis odgovorov IN razsirjen izvoz ALI (je izpis odgovorov IN skrcen izvoz IN radio button) @@ -462,48 +462,25 @@ class GridMultipleLatex extends LatexSurveyElement }else{ array_push($vodoravniOdgovori, $stringTitleCol); //filanje polja z vodoravnimi odgovori (po stolpcih) } - //array_push($vodoravniOdgovori, $stringTitleCol); //filanje polja z vodoravnimi odgovori (po stolpcih) - //echo $rowMultiple['naslov']."
"; } //poizvedba podnaslovov v podtabeli kombinirane tabele $sqlMultiplePodNaslovi = sisplet_query("SELECT naslov FROM srv_spremenljivka WHERE id =".$sprId); //ureditev polja z nadnaslovi kombinirane tabele while ($rowMultiplePodNaslovi = mysqli_fetch_array($sqlMultiplePodNaslovi)){ - array_push($podNaslovi, $this->encodeText($rowMultiplePodNaslovi['naslov'])); + array_push($podNaslovi,LatexDocument::encodeText($rowMultiplePodNaslovi['naslov'], 0, 1)); } //ureditev polja z nadnaslovi kombinirane tabele - konec $enota = $vodoravniOdgovoriEnota[0]; - /* print_r($vodoravniOdgovoriTip); - echo "
"; - print_r($vodoravniOdgovoriSprId); - echo "
";*/ - /* print_r($vodoravniOdgovoriEnota); - echo "
"; */ - /* print_r($vodoravniOdgovori); - echo "
"; */ //ureditev parametrov tabele - /* echo "enota:".$vodoravniOdgovoriEnota[0]."
"; - echo "izpisOdgovorov:".$izpisOdgovorov."
"; - echo "tip:".$vodoravniOdgovoriTip[0]."
"; - echo "export_data_type:".$export_data_type."
"; */ - //if(($enota == 2 || $enota == 6) && $izpisOdgovorov && $export_data_type == 1){ //(ce je roleta ALI seznam) IN je izpis odgovorov IN razsirjen izvoz if(($enota == 2 || $enota == 6) && $izpisOdgovorov && $export_data_type == 1 || ($izpisOdgovorov && $export_data_type == 2 && $vodoravniOdgovoriTip[0] == 6 )){ //(ce je roleta ALI seznam) IN je izpis odgovorov IN razsirjen izvoz ALI (je izpis odgovorov IN skrcen izvoz IN radio button) $steviloStolpcev = 1 + 1; }else{ $steviloStolpcev = count($vodoravniOdgovoriSprId) + 1; } - //echo "stevilo stolpcev: $steviloStolpcev
"; - - /* if((($vodoravniOdgovoriEnota[0] == 2 || $vodoravniOdgovoriEnota[0] == 6)&&$izpisOdgovorov&&$export_data_type == 1) || ($izpisOdgovorov&&$export_data_type == 2&&$vodoravniOdgovoriTip[$indeksParameterTabular-1]==6)){ //(ce je roleta ali izberite iz seznama IN je izpis odgovorov IN razsirjen izvoz) ALI (je izpis odgovorov IN skrcen izvoz IN radio button) - - } */ - - - //echo "stevilo stolpcev: $steviloStolpcev
"; $parameterTabular = ''; $parameterTabular .= ($export_format == 'pdf' ? 'A' : 'l'); //leva poravnava stolpca fiksne sirine ZA PRVI STOLPEC (parameteri tabele) @@ -511,7 +488,6 @@ class GridMultipleLatex extends LatexSurveyElement for($i=1; $i<$steviloStolpcev;$i++){ $parameterTabular .= ($export_format == 'pdf' ? 'C' : 'c'); //sredinska poravnava stolpca } - //echo "parametri tabele: $parameterTabular
"; //ureditev parametrov tabele - konec @@ -522,8 +498,6 @@ class GridMultipleLatex extends LatexSurveyElement $steviloPodStolpcev = $steviloStolpcev - 1; if($spremenljivke['grid_subtitle1']==1){ //ce so podnaslovi for($n=0;$n"; - //$tex .= ' & \multicolumn{'.$steviloPodStolpcev.'}{c}{'.$podNaslovi[$n].'}'; $tex .= ' & \multicolumn{'.$steviloPodStolpcev.'}{C}{'.$podNaslovi[$n].'}'; } } @@ -540,7 +514,7 @@ class GridMultipleLatex extends LatexSurveyElement #izris vrstic tabele $fillablePdf = 0; //echo "stevilo stolpcev tabele $steviloStolpcev
"; - $tex .= $this->LatexVrsticeMultigrid($numRowsSql, $export_format, $enota, $simbolTex, $navpicniOdgovori, 0, $fillablePdf, $steviloStolpcev, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, 0, 0, $vodoravniOdgovoriTip, $vodoravniOdgovoriEnota, $vodoravniOdgovoriSprId, $userAnswer, $export_subtype, $preveriSpremenljivko, $userDataPresent, $presirokaTabela, $export_data_type); + $tex .= $this->LatexVrsticeMultigrid($numRowsSql, $export_format, $enota, null, $navpicniOdgovori, 0, $fillablePdf, $steviloStolpcev, $spremenljivke, $trak, $vodoravniOdgovori, $texNewLine, 0, 0, $vodoravniOdgovoriTip, $vodoravniOdgovoriEnota, $vodoravniOdgovoriSprId, $userAnswer, $export_subtype, $preveriSpremenljivko, $userDataPresent, $presirokaTabela, $export_data_type, $this->usr_id, $this->loop_id); #izris vrstic tabele - konec $tex .= $this->EndLatexTable($export_format, 'tabularx', 'tabular'); //zakljucek tabele -- cgit v1.2.3