summaryrefslogtreecommitdiffstats
path: root/admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php
diff options
context:
space:
mode:
authorAnton Luka Šijanec <anton@sijanec.eu>2024-05-27 13:08:29 +0200
committerAnton Luka Šijanec <anton@sijanec.eu>2024-05-27 13:08:29 +0200
commit75160b12821f7f4299cce7f0b69c83c1502ae071 (patch)
tree27e25e4ccaef45f0c58b22831164050d1af1d4db /admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php
parentprvi-commit (diff)
download1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar.gz
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar.bz2
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar.lz
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar.xz
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.tar.zst
1ka-75160b12821f7f4299cce7f0b69c83c1502ae071.zip
Diffstat (limited to 'admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php')
-rw-r--r--admin/survey/export/latexclasses/Vprasanja/GridMultipleLatex.php180
1 files changed, 77 insertions, 103 deletions
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 "<b>tip izpisa: $export_data_type</b> </br>"; //$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."</br>";
}
$izpisOdgovorov = 1;
}
- //echo "Usr_id: ".$usr_id.'</br>';
- //echo "Stevilo odgovorov: ".count($userAnswer).'</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
@@ -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']."</br>";
- echo "spr ".$rowMultiple['spr_id']."</br>"; */
- //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 </br>";
}
- $sprIdRoletSeznamovTmp = $sprIdRoletSeznamov;
+ $sprIdRoletSeznamovTmp = $sprIdRoletSeznamov;
}
//pregled vseh odgovorov po stolpcih po $sqlStolpciVrednosti - vodoravni odgovori - konec
$vodoravniOdgovoriVsi = $vodoravniOdgovori;
- /* echo "stevilo skupin rolet/seznamov ".($steviloSkupinRoletSeznamov)." </br>";
- echo "stevilo odgovorov v roletah ali seznamu ".($steviloOdgovorovRoletSeznamov)." </br>"; */
-
-/* echo "vodoravniOdgovoriSprId: ";
- print_r($vodoravniOdgovoriSprId);
- echo "</br>";
- echo "Enote: ";
- print_r($vodoravniOdgovoriEnota);
- echo "</br>"; */
//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 "<b>velikost tabele: </b>".($velikostTabele)." </br>";
+
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</br>";
-
$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)." </br>";
- //echo "stevilo podtabel mod ".($steviloTabelMod)." </br>";
- //echo "stevilo podtabel za izpis: ".($steviloTabel)." </br>";
- //echo "stevilo podatkov za izpis: ".($steviloPodatkovZaIzpis)." </br>";
}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]."</br>";
- //echo "value: ".$value."</br>";
- //echo "valueTmp: ".$valueTmp."</br>";
- //echo "indeksParameterTabular: ".$indeksParameterTabular."</br>";
- //echo "Stevilo vodoravniOdgovoriSprId: ".count($vodoravniOdgovoriSprId)."</br>";
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."</br>";
-
//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 </br>";
//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<count($podNaslovi);$n++){
- //echo $podNaslovi[$n].'</br>';
- //$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 </br>";
- $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 '<b>Total Execution Time kombinirana tabela:</b> '.$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</br>";
#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."</br>";
}
$izpisOdgovorov = 1;
}
- //echo "podatek je: ".$userDataPresent."</br>";
- /* print_r($userAnswer);
- echo "</br>"; */
+
#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']."</br>";
}
//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 "</br>";
- print_r($vodoravniOdgovoriSprId);
- echo "</br>";*/
- /* print_r($vodoravniOdgovoriEnota);
- echo "</br>"; */
- /* print_r($vodoravniOdgovori);
- echo "</br>"; */
//ureditev parametrov tabele
- /* echo "enota:".$vodoravniOdgovoriEnota[0]."</br>";
- echo "izpisOdgovorov:".$izpisOdgovorov."</br>";
- echo "tip:".$vodoravniOdgovoriTip[0]."</br>";
- echo "export_data_type:".$export_data_type."</br>"; */
- //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</br>";
-
- /* 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</br>";
$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 </br>";
//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<count($podNaslovi);$n++){
- //echo "podnaslov za sprem ".$vodoravniOdgovoriSprId[0]." je: ".$podNaslovi[$n]." število stolpcev pa $steviloPodStolpcev</br>";
- //$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 </br>";
- $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