2020-08-14 13:36:36 +02:00
< ? php
/***************************************
* Description : Priprava Latex kode za Besedilo
*
* Vprašanje je prisotno :
* tip 21 z vsemi orientacijami
*
* Autor : Patrik Pucer
* Datum : 07 - 08 / 2017
*****************************************/
2020-12-07 09:43:59 +01:00
define ( " PIC_SIZE " , " \ includegraphics[width=10cm] " ); //slika sirine 50mm
define ( " ICON_SIZE " , " \ includegraphics[width=0.5cm] " ); //za ikone @ slikovni tip
2020-08-14 13:36:36 +02:00
class BesediloLatex extends LatexSurveyElement
{
var $internalCellHeight ;
protected $texBigSkip = '\bigskip' ;
protected $export_subtype ;
2020-10-14 11:10:43 +02:00
protected $path2SignatureImages ;
protected $texGapBeforeTable = '\vspace*{-\baselineskip}' ;
2020-08-14 13:36:36 +02:00
public function __construct ()
{
//parent::getGlobalVariables();
}
/************************************************
* Get instance
************************************************/
private static $_instance ;
protected $loop_id = null ; // id trenutnega loopa ce jih imamo
public static function getInstance ()
{
if ( self :: $_instance )
return self :: $_instance ;
return new BesediloLatex ();
}
public function export ( $spremenljivke = null , $export_format = '' , $questionText = null , $fillablePdf = null , $texNewLine = '' , $usr_id = null , $db_table = null , $anketa = null , $export_subtype = '' , $preveriSpremenljivko = null , $export_data_type = null , $loop_id = null ){
global $site_path ;
$this -> path2HeatmapImages = $site_path . 'main/survey/uploads/' ;
// Ce je spremenljivka v loopu
$this -> loop_id = $loop_id ;
$this -> export_subtype = $export_subtype ;
2020-08-31 14:16:26 +02:00
//preveri, ce je kaj v bazi
2020-08-14 13:36:36 +02:00
$userDataPresent = $this -> GetUsersData ( $db_table , $spremenljivke [ 'id' ], $spremenljivke [ 'tip' ], $usr_id , $this -> loop_id );
//echo "userDataPresent za spremenljivko".$spremenljivke['id']." je: ".$userDataPresent."</br>";
if ( $userDataPresent || $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
global $lang ;
global $site_url ;
// iz baze preberemo vse moznosti - ko nimamo izpisa z odgovori respondenta
$sqlVrednosti = sisplet_query ( " SELECT id, naslov, naslov2, variable, other FROM srv_vrednost WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' ORDER BY vrstni_red " );
$numRowsSql = mysqli_num_rows ( $sqlVrednosti );
$spremenljivkaParams = new enkaParameters ( $spremenljivke [ 'params' ]);
$tex = '' ;
$podatekVBazi = 0 ;
$symbol = $this -> getAnswerSymbol ( $export_format , $fillablePdf , $spremenljivke [ 'tip' ], $spremenljivke [ 'grids' ], 0 , 0 ); //poberi simbol checkbox za other in missing moznosti odgovora
//nastavitve text box-a iz baze##########################
$steviloOken = $spremenljivke [ 'text_kosov' ];
$postavitev = $spremenljivke [ 'orientation' ];
$polozajBesedila = $spremenljivke [ 'text_orientation' ]; //polozaj besedila pred text box-om
$textboxHeightOrig = ( $spremenljivkaParams -> get ( 'taSize' ) ? $spremenljivkaParams -> get ( 'taSize' ) : 1 );
$textboxHeight = ( $textboxHeightOrig * 0.3 ) . 'cm' ;
$textboxWidth = ( $spremenljivkaParams -> get ( 'taWidth' ) ? $spremenljivkaParams -> get ( 'taWidth' ) : - 1 );
if ( $textboxWidth == - 1 ){ //ce je vrednost -1, je default t.j. 30 oz. 0.30 sirine
$textboxWidth = 0.30 ;
} else { //drugace, izracunaj sirino
$textboxWidth = $textboxWidth / 100 ; //pretvorimo sirino v odstotke oz. decimalke
}
//$textboxWidth = $textboxWidth / $steviloOken; //ce je vec oken, se sirina text box-a ustrezno/proporcionalno zmanjsa
$textboxWidth = $textboxWidth / ( $steviloOken * 1.1 ); //ce je vec oken, se sirina text box-a ustrezno/proporcionalno zmanjsa
$textboxWidth = ( string ) $textboxWidth ; //pretvorimo stevilo (decimalke) v string
2020-08-31 14:16:26 +02:00
/* echo " steviloOken: " . $steviloOken . " </br> " ;
echo " visina iz nastavitev: " . $textboxHeightOrig . " </br> " ;
echo " sirina iz nastavitev: " . $textboxWidth . " </br> " ;
echo " sirina izracunana: " . $textboxWidth . " </br> " ; */
2020-08-14 13:36:36 +02:00
//textboxWidth se rocno povozi pod "ureditev parametrov za tabelo"
//nastavitve text box-a iz baze - konec####################
$array_others = array (); //polje za drugo, missing, ...
$besedila = array (); //polje, ki hrani besedila, ki pridejo poleg text box-ov
$besedila = [];
$textBoxes = array (); //polje, ki hrani latex za prazne text box-e
$textBoxes = [];
$textboxAllignment = 'c' ; //poravnava textboxa z besedilom
$oznakaOdgovora = 'a' ;
$indeksZaWhile = 1 ;
$oznakaVprasanja = $this -> UrediOznakoVprasanja ( $spremenljivke [ 'id' ]); //uredi oznako vprasanja, ker ne sme biti stevilska
//ureditev parametrov za tabelo#############################
$parameterTabular = '' ;
if ( $steviloOken == 1 ){ //ce je samo en okvir za vnos besedila
if ( $polozajBesedila == 0 || $polozajBesedila != 1 ){ //ce ni besedila ali besedilo ni SPREDAJ
$steviloStolpcevTabele = $steviloOken ;
} elseif ( $polozajBesedila == 1 ){ //ce je besedilo SPREDAJ
$steviloStolpcevTabele = $steviloOken * 2 ;
}
} else { //ce je vec okvirjev za vnos besedila, se ignorira nastavitev za besedilo SPREDAJ, saj se bo prineslo na ZGORAJ
if ( $polozajBesedila == 1 ){
$polozajBesedila = 3 ;
}
$steviloStolpcevTabele = $steviloOken ;
}
for ( $i = 0 ; $i < $steviloStolpcevTabele ; $i ++ ){
if ( $polozajBesedila == 1 && $i % 2 == 0 ){ //ce je polozaj besedila SPREDAJ in je stolpec za besedilo
if ( $userDataPresent ){
$parameterTabular .= ( $export_format == 'pdf' ? 'X' : 'l' ); //desna poravnava stolpca
} else {
$parameterTabular .= ( $export_format == 'pdf' ? 'R' : 'l' ); //desna poravnava stolpca
}
} else {
$parameterTabular .= ( $export_format == 'pdf' ? 'X' : 'l' ); //leva poravnava stolpca
}
}
//echo "stevilo oken: ".$steviloOken."</br>";
//echo "parametri tabele: ".$parameterTabular."</br>";
//$textboxWidth = 30 / $steviloStolpcevTabele / 100; //povozil $textboxWidth tako, da zadeva je v skladu s prejsnjimi izvozi
//echo "sirina 2: ".$textboxWidth."</br>";
//ureditev parametrov za tabelo - konec######################
//if(0){
//if($steviloOken == 1 && $polozajBesedila == 0){ //ce imamo samo en kos besedila brez pripisanega texta
//ureditev polja s podatki trenutnega uporabnika ######################################################
$rowVrednost = mysqli_fetch_array ( $sqlVrednosti );
2020-08-28 09:27:20 +02:00
if ( $spremenljivke [ 'tip' ] == 21 ){ //ce je ta novo besedilo, ki je v uporabi
2021-04-12 17:34:29 +02:00
$sqlUserAnswerString = " SELECT text FROM srv_data_text " . $db_table . " WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' AND usr_id=' " . $usr_id . " ' AND vre_id=' " . $rowVrednost [ 'id' ] . " ' " ;
if ( $loop_id ){ //ce je prisoten se loop_id, je tega potrebno dodati sql stavku
$sqlUserAnswerString .= " AND loop_id= $loop_id " ;
}
//echo $sqlUserAnswerString."</br>";
2020-08-28 09:27:20 +02:00
} elseif ( $spremenljivke [ 'tip' ] == 4 ){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
2021-04-12 17:34:29 +02:00
//$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' ");
$sqlUserAnswerString = " SELECT text FROM srv_data_text " . $db_table . " WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' AND usr_id=' " . $usr_id . " ' " ;
if ( $loop_id ){ //ce je prisoten se loop_id, je tega potrebno dodati sql stavku
$sqlUserAnswerString .= " AND loop_id= $loop_id " ;
}
2020-08-28 09:27:20 +02:00
}
2021-04-12 17:34:29 +02:00
$sqlUserAnswer = sisplet_query ( $sqlUserAnswerString );
2020-08-14 13:36:36 +02:00
$userAnswer = mysqli_fetch_assoc ( $sqlUserAnswer );
//echo "userAnswer: ".$userAnswer['text']."</br>";
//ureditev polja s podatki trenutnega uporabnika - konec ##############################################
if ( $userAnswer ){ //ce je kaj v bazi oz. se izpisujejo odgovori respondenta
$podatekVBazi = 1 ;
//print_r($spremenljivke);
2020-08-31 14:16:26 +02:00
// imamo upload vprašanje
2020-08-14 13:36:36 +02:00
if ( $spremenljivke [ 'upload' ]){
//echo "Je upload za ".$spremenljivke['id']."</br>";
# imena datotek
2020-08-31 14:16:26 +02:00
if ( $userAnswer [ 'text' ] != '' ){
2020-08-26 11:26:12 +02:00
$textUpload = ( '' . $site_url . 'main/survey/download.php?anketa=' . $anketa . '&code=' . $userAnswer [ 'text' ] . ' ' );
2020-08-14 13:36:36 +02:00
} else {
$tex .= '' ;
}
}
// imamo signature vprašanje
elseif ( $spremenljivke [ 'signature' ] == 1 ){
$imageName = $usr_id . '_' . $spremenljivke [ 'id' ] . '_' . $anketa . '.png' ; //ime slike
$image = PIC_SIZE . " { " . $this -> path2HeatmapImages . " " . $imageName . " } " ; //priprave slike predefinirane dimenzije
$tex .= $image . " " . $texNewLine ; //izris slike
//$tex .= $lang['srv_signature_name'].' '.$userAnswer['text'].$texNewLine;
$textSignature = $lang [ 'srv_signature_name' ] . ' ' . $userAnswer [ 'text' ];
}
else {
//$tex .= $userAnswer['text'];
//$textboxHeight = 0;
}
if ( $export_data_type == 2 ){ //ce je izpis skrcen in je prazen vprasalnik
$okvir = 0 ;
2020-08-31 15:35:04 +02:00
$izpisanoBesediloPoStarem = 0 ;
2020-08-14 13:36:36 +02:00
} elseif ( $export_data_type == 1 ){ //ce je izpis razsirjen
$okvir = 1 ; //rabimo okvir
2020-10-14 10:11:24 +02:00
//$okvir = 0; //ne rabimo okvir
2020-08-14 13:36:36 +02:00
}
} else { //ce je prazen vprasalnik
$okvir = 1 ; //rabimo okvir
}
//}else{
2020-08-31 14:16:26 +02:00
/* echo " postavitev besedila: " . $postavitev . " " . $spremenljivke [ 'id' ] . " </br> " ;
echo " položaj besedila: " . $polozajBesedila . " </br> " ; */
2020-08-14 13:36:36 +02:00
if ( $okvir == 1 ){
2020-10-14 11:10:43 +02:00
2020-08-31 14:16:26 +02:00
if (( $postavitev != 0 )){ //ce ni vodoravno ob vprasanju, uporabi za izpis tabelo
if ( $steviloOken > 1 ){ //ce je stevilo oken vec kot 1, zacni novo tabelo
2020-10-14 11:10:43 +02:00
//Ureditev dodajanja manjsega razmika med besedilom vprasanja in tabelo
$tex .= $this -> texGapBeforeTable ;
//Ureditev dodajanja manjsega razmika med besedilom vprasanja in tabelo - konec
2020-08-31 14:16:26 +02:00
#ZACETEK TABELE
2020-10-14 11:10:43 +02:00
//zacetek tabele
$tex .= $this -> StartLatexTable ( $export_format , $parameterTabular , 'tabularx' , 'tabular' , 1 , 1 );
2020-08-31 14:16:26 +02:00
}
2020-08-14 13:36:36 +02:00
//echo "ni vodoravno ob vprašanju </br>";
//}elseif($postavitev==0&&($polozajBesedila!=0&&$polozajBesedila!=1)){ //ce je vodoravno ob vprasanju in ni dodatnega besedila ali ni besedila pred okvirjem, uporabi za izpis tabelo
} elseif ( $postavitev == 0 && $polozajBesedila == 3 ){ //
#ZACETEK TABELE
//zacetek tabele
$tex .= $this -> StartLatexTable ( $export_format , $parameterTabular , 'tabularx' , 'tabular' , 1 , 1 );
//echo "je vodoravno ob vprašanju zgoraj</br>";
} elseif ( $postavitev == 0 && $polozajBesedila == 2 ){
//zacetek tabele
$tex .= $this -> StartLatexTable ( $export_format , $parameterTabular , 'tabularx' , 'tabular' , 1 , 1 );
//echo "je vodoravno ob vprašanju spodaj</br>";
} elseif ( $postavitev == 0 && $steviloOken > 1 ){
//zacetek tabele
$tex .= $this -> StartLatexTable ( $export_format , $parameterTabular , 'tabularx' , 'tabular' , 1 , 1 );
//echo "stevilo oken večje in ob vprašanju </br>";
}
}
//echo "tex koda: ".$tex."</br>";
// iz baze preberemo vse moznosti - ko nimamo izpisa z odgovori respondenta
$sqlVrednosti = sisplet_query ( " SELECT id, naslov, naslov2, variable, other FROM srv_vrednost WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' ORDER BY vrstni_red " );
2020-08-31 15:35:04 +02:00
2020-08-14 13:36:36 +02:00
//pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti
while ( $rowVrednost = mysqli_fetch_assoc ( $sqlVrednosti )){
# po potrebi se prevede besedilo, ki se pojavi pred textbox-om
$naslov = $this -> srv_language_vrednost ( $rowVrednost [ 'id' ]);
if ( $naslov != '' ) {
$rowVrednost [ 'naslov' ] = $naslov ;
}
2021-04-14 19:22:31 +02:00
2020-08-14 13:36:36 +02:00
//ureditev polja s podatki trenutnega uporabnika ######################################################
2020-08-28 09:27:20 +02:00
if ( $spremenljivke [ 'tip' ] == 21 ){ //ce je ta novo besedilo, ki je v uporabi
2021-04-12 17:34:29 +02:00
$sqlUserAnswerString = " SELECT text FROM srv_data_text " . $db_table . " WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' AND usr_id=' " . $usr_id . " ' AND vre_id=' " . $rowVrednost [ 'id' ] . " ' " ;
if ( $loop_id ){ //ce je prisoten se loop_id, je tega potrebno dodati sql stavku
$sqlUserAnswerString .= " AND loop_id= $loop_id " ;
}
2020-08-28 09:27:20 +02:00
//echo "userAnswer: ".$userAnswer['text']."</br>";
2021-04-12 17:34:29 +02:00
} elseif ( $spremenljivke [ 'tip' ] == 4 ){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
$sqlUserAnswerString = " SELECT text FROM srv_data_text " . $db_table . " WHERE spr_id=' " . $spremenljivke [ 'id' ] . " ' AND usr_id=' " . $usr_id . " ' " ;
if ( $loop_id ){ //ce je prisoten se loop_id, je tega potrebno dodati sql stavku
$sqlUserAnswerString .= " AND loop_id= $loop_id " ;
}
2020-08-28 09:27:20 +02:00
}
2021-04-12 17:34:29 +02:00
$sqlUserAnswer = sisplet_query ( $sqlUserAnswerString );
$userAnswer = mysqli_fetch_assoc ( $sqlUserAnswer );
2020-08-14 13:36:36 +02:00
//ureditev polja s podatki trenutnega uporabnika - konec ##############################################
2021-04-14 19:22:31 +02:00
//priprava besedila za izpis
$stringNaslov = $rowVrednost [ 'naslov' ];
$stringNaslov = Common :: getInstance () -> dataPiping ( $stringNaslov , $usr_id , $loop_id );
//priprava besedila za izpis - konec
2020-08-14 13:36:36 +02:00
//ce ni other ali missing
if ( ( int ) $rowVrednost [ 'other' ] == 0 ){
//ureditev besedila odgovora respondenta v doloceno barvo
if ( $export_format == 'pdf' ){
$besedilo = '\\textcolor{crta}{' ;
} else {
$besedilo = '' ;
}
if ( $spremenljivke [ 'signature' ] == 1 ){
$besedilo .= $textSignature ;
//}elseif($spremenljivke['upload'] == 1){
2020-08-26 11:26:12 +02:00
} elseif ( $spremenljivke [ 'upload' ]){
//$besedilo .= $textUpload;
$besedilo .= $this -> encodeText ( $textUpload );
2020-08-14 13:36:36 +02:00
} else {
2020-08-26 11:26:12 +02:00
//$besedilo .= $userAnswer['text'];
$besedilo .= $this -> encodeText ( $userAnswer [ 'text' ]);
2020-08-14 13:36:36 +02:00
}
if ( $export_format == 'pdf' ){
$besedilo .= '}' ;
}
//ureditev besedila odgovora respondenta v doloceno barvo - konec
//priprava latex kode za text box dolocene sirine in visine glede na export format z ustreznim besedilom odgovora
2020-10-14 10:11:24 +02:00
if ( $okvir == 1 ){ //ce rabimo okvir, izpisi
if ( $podatekVBazi && $export_format == 'pdf' ){ //ce je podatek v bazi in je pdf oz. se izpisuje odgovore respondenta
2020-09-09 08:32:55 +02:00
$dataTextBox = $besedilo ; //izpis besedila brez okvirja
2020-08-14 13:36:36 +02:00
} else {
2020-09-09 08:32:55 +02:00
//echo "Pos: ".$postavitev."</br>";
if (( $postavitev != 0 )){ //ce ni vodoravno ob vprasanju
$tex .= ' \\\\ ' ; //skoci v novo vrstico
}
$dataTextBox = $this -> LatexTextBox ( $export_format , $textboxHeight , $textboxWidth , $besedilo , $textboxAllignment , 0 ); //izpisi okvir
2020-08-14 13:36:36 +02:00
}
} else {
$dataTextBox = $besedilo ; //izpis besedila brez okvirja
}
array_push ( $textBoxes , $dataTextBox ); //filanje polja s praznimi text box-i
2021-04-14 19:22:31 +02:00
array_push ( $besedila , $this -> encodeText ( $stringNaslov )); //filanje polja z besedili
2020-08-14 13:36:36 +02:00
if ( $okvir == 0 ){
2020-08-31 15:35:04 +02:00
if ( $spremenljivke [ 'tip' ] == 21 ){ //ce je ta novo besedilo, ki je v uporabi
if ( $indeksZaWhile != 1 ){
$tex .= ' \\\\ ' ; //skoci v novo vrstico
}
//izpis besedila
2021-04-14 19:22:31 +02:00
if ( $polozajBesedila != 0 ){ //ce je prisotno dodatno besedilo ob okvirju
$tex .= $this -> encodeText ( $stringNaslov ) . " " ;
2020-08-31 15:35:04 +02:00
}
$tex .= ' ' . $dataTextBox ;
} elseif ( $spremenljivke [ 'tip' ] == 4 ){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
if ( $izpisanoBesediloPoStarem == 0 ){
$tex .= $dataTextBox ;
$izpisanoBesediloPoStarem = 1 ;
}
2020-08-14 13:36:36 +02:00
}
} elseif ( $okvir == 1 ){
//if($polozajBesedila==1){ //ce je polozaj besedila SPREDAJ
if ( $polozajBesedila == 1 && $steviloOken == 1 ){ //ce je polozaj besedila SPREDAJ in je samo 1 okvir za vnos besedila
if ( $indeksZaWhile != 1 ){
$tex .= ' ' ; //skoci v nov stolpec
}
//izpis besedila
2021-04-14 19:22:31 +02:00
$tex .= $this -> encodeText ( $stringNaslov ) . " " ;
2020-08-14 13:36:36 +02:00
//izpis text box-a dolocene sirine in visine z besedilom odgovora
$tex .= ' ' . $dataTextBox ;
2020-08-31 15:35:04 +02:00
}
2020-08-14 13:36:36 +02:00
}
}
else { //drugace, ce imamo missinge ali podobne, jih zabelezi v polju
// imamo polje drugo - ne vem, zavrnil...
2021-04-14 19:22:31 +02:00
/* $array_others [ $rowVrednost [ 'id' ]] = array (
2020-08-14 13:36:36 +02:00
'naslov' => $rowVrednost [ 'naslov' ],
'vrstni_red' => $rowVrednost [ 'vrstni_red' ],
'value' => $text [ $rowVrednost [ 'vrstni_red' ]],
2021-04-14 19:22:31 +02:00
); */
$array_others [ $rowVrednost [ 'id' ]] = array (
'naslov' => $this -> encodeText ( $stringNaslov ),
'vrstni_red' => $rowVrednost [ 'vrstni_red' ],
'value' => $text [ $rowVrednost [ 'vrstni_red' ]],
2020-08-14 13:36:36 +02:00
);
}
$oznakaOdgovora ++ ;
$indeksZaWhile ++ ;
}
//pregled vseh moznih vrednosti (kategorij) po $sqlVrednosti - konec
if ( $okvir == 1 ){
//ureditev polozaja besedila poleg text box-a ZGORAJ
if ( $polozajBesedila != 0 && $polozajBesedila == 3 ){ //ce je prisotno besedilo in ni pod text box-om
$tex .= $this -> izrisVrsticePoStolpcih ( $steviloStolpcevTabele , $besedila );
$tex .= $texNewLine ; //dodaj po izpisu besedil še skok v novo vrstico
}
//ureditev polozaja besedila poleg text box-a ZGORAJ - konec
if ( $polozajBesedila != 1 ){ //ce ni polozaj besedila SPREDAJ
//izpis praznih text box-ov dolocene sirine in visine
$tex .= $this -> izrisVrsticePoStolpcih ( $steviloStolpcevTabele , $textBoxes );
//izpis praznih text box-ov dolocene sirine in visine - konec
}
//ureditev polozaja besedila poleg text box-a SPODAJ
if ( $polozajBesedila != 0 && $polozajBesedila == 2 ){ //ce je prisotno besedilo in ni pod text box-om
$tex .= $texNewLine ; //dodaj po izpisu besedil še skok v novo vrstico
$tex .= $this -> izrisVrsticePoStolpcih ( $steviloStolpcevTabele , $besedila );
}
//ureditev polozaja besedila poleg text box-a SPODAJ
}
if ( $okvir == 1 ){
if ( $postavitev != 0 ){
2020-08-31 14:16:26 +02:00
if ( $steviloOken > 1 ){ //ce je stevilo oken vec kot 1, zakljuci tabelo
//zakljucek tabele
$tex .= $this -> EndLatexTable ( $export_format , 'tabularx' , 'tabular' );
#KONEC TABELE
}
2020-08-14 13:36:36 +02:00
} elseif ( $postavitev == 0 && $polozajBesedila == 3 ){
//zakljucek tabele
$tex .= $this -> EndLatexTable ( $export_format , 'tabularx' , 'tabular' );
#KONEC TABELE
} elseif ( $postavitev == 0 && $polozajBesedila == 2 ){
//zakljucek tabele
$tex .= $this -> EndLatexTable ( $export_format , 'tabularx' , 'tabular' );
#KONEC TABELE
} elseif ( $postavitev == 0 && $steviloOken > 1 ){
//zakljucek tabele
$tex .= $this -> EndLatexTable ( $export_format , 'tabularx' , 'tabular' );
#KONEC TABELE
}
}
//}
//$tex .= ' \vspace{0.3cm} ';
// Izris polj drugo - ne vem...
if ( count ( $array_others ) > 0 ) {
$tex .= $texNewLine ;
foreach ( $array_others AS $oKey => $other ) {
$tex .= $symbol . ' ' . $other [ 'naslov' ] . ' ' ;
if ( $postavitev != 0 ){
$tex .= $texNewLine ;
}
}
}
if (( $postavitev == 0 )){ //ce je vodoravno ob vprasanju
$tex .= ' \par } ' ; //zakljuci odstavek
}
//echo "izpisani podatek: ".$podatekVBazi."</br>";
2020-08-31 14:16:26 +02:00
//if($podatekVBazi==1&&$export_data_type==2){ //ce je podatek v bazi in je izpis skrcen
if ( $podatekVBazi == 1 ){ //ce je podatek v bazi
if ( $export_data_type == 2 || $steviloOken == 1 ){ //ce je izpis skrcen ali je stevilo oken 1
2020-10-01 10:05:42 +02:00
$tex .= " \ " ; //da ni tezave z "there is no line here to end"
2020-08-31 14:16:26 +02:00
$tex .= $texNewLine ;
$tex .= $texNewLine ;
}
2020-08-14 13:36:36 +02:00
} else {
2020-08-31 14:16:26 +02:00
$tex .= $this -> texBigSkip ;
2020-09-09 08:32:55 +02:00
$tex .= $this -> texBigSkip . " \ " ;
2020-08-31 14:16:26 +02:00
$tex .= $texNewLine . " " ;
2020-08-14 13:36:36 +02:00
}
if ( $export_format == 'pdf' ){ //ce je pdf
//$tex .= '\\end{absolutelynopagebreak}'; //zakljucimo environment, da med vprasanji ne bo prelomov strani
2020-08-31 15:35:04 +02:00
//echo "tex koda: ".$tex." in indeks $indeksZaWhile</br>";
2020-08-14 13:36:36 +02:00
} else { //ce je rtf
}
}
2021-04-12 17:34:29 +02:00
//echo "tex koda: ".$tex." in indeks $indeksZaWhile</br>";
2020-08-14 13:36:36 +02:00
return $tex ;
}
#funkcija, ki skrbi za izris vrstice tabele po stolpcih
function izrisVrsticePoStolpcih ( $steviloStolpcevTabele = null , $array = []){
$tex = '' ;
for ( $i = 0 ; $i < $steviloStolpcevTabele ; $i ++ ){
if ( $i != 0 ){ //ce ni prvi stolpec
$tex .= ' & ' ; //dodaj oznako za prehod v nov stolpec
//$tex .= ' \\\\ '; //dodaj oznako za prehod v novo vrstico
}
$tex .= $array [ $i ];
}
return $tex ;
}
#funkcija, ki skrbi za izris - konec
}