Merge branch 'master' into release/produkcija

# Conflicts:
#	admin/survey/classes/class.Vprasanje.php
#	admin/survey/export/latexclasses/class.LatexSurvey.php
#	composer.lock
#	resources/sass/admin/Settings/navigation.scss
#	resources/sass/admin/admin.scss
#	resources/sass/admin/basic/basic.scss
#	resources/sass/admin/branching/questions/question_box.scss
#	resources/sass/admin/branching/toolbox.scss
#	resources/sass/admin/comments.scss
#	resources/sass/admin/header.scss
#	resources/sass/admin/icons/invitation.scss
#	resources/sass/admin/icons/modules.scss
#	resources/sass/admin/icons/question_edit.scss
#	resources/sass/admin/icons/standard.scss
#	resources/sass/admin/library.scss
#	resources/sass/admin/payments.scss
#	resources/sass/admin/publish/invitations.scss
#	resources/sass/admin/publish/settings.scss
#	resources/sass/admin/users.scss
#	resources/sass/main/main/basic.scss
#	resources/sass/main/main/content.scss
#	resources/sass/main/main_mobile/content.scss
#	vendor/composer/autoload_files.php
#	vendor/composer/autoload_static.php
#	vendor/composer/installed.json
#	vendor/maxmind-db/reader/CHANGELOG.md
#	vendor/maxmind-db/reader/composer.json
#	vendor/maxmind-db/reader/ext/php_maxminddb.h
#	vendor/maxmind-db/reader/package.xml
#	vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Decoder.php
This commit is contained in:
pero1203 2021-06-05 14:05:41 +02:00
commit 0ffc82b55f
724 changed files with 125640 additions and 35992 deletions

View File

@ -339,10 +339,8 @@ class Branching {
$row = SurveyInfo::getInstance()->getSurveyRow();
//if ($row['toolbox'] == 1 || $row['toolbox'] == 2)
if($this->survey_type != 0)
$this->toolbox_basic2();
//else
if ($row['toolbox'] >= 3)
$this->toolbox_library();
@ -353,6 +351,8 @@ class Branching {
});
</script><?php
// Mobile add question
MobileSurveyAdmin::displayAddQuestion($this->anketa);
}
/**
@ -679,7 +679,7 @@ class Branching {
# find & replace
if ($row['locked'] == 0) {
echo '<p>';
echo '<a href="#" onclick="find_replace(); return false;" title="'.$lang['srv_find_replace'].'" ><span class="advanced_setting"><span class="faicon replace"></span></span>'.$lang['srv_find_replace'].'</a>';
echo '<a href="#" onclick="find_replace(); return false;" title="'.$lang['srv_find_replace_words'].'" ><span class="advanced_setting"><span class="faicon replace"></span></span>'.$lang['srv_find_replace_words'].'</a>';
echo '</p>';
}
@ -1069,6 +1069,8 @@ class Branching {
printf ($lang['srv_new_survey_success3'], 'index.php?anketa='.$this->anketa.'&a=branching&change_mode=1&what=toolbox&value=3');
echo ' </div>';
MobileSurveyAdmin::displayNoQuestions($this->anketa);
echo '</li>';
}
@ -1102,9 +1104,6 @@ class Branching {
}
//$sqlQ = sisplet_query("SELECT * FROM srv_branching WHERE ank_id='$this->anketa' AND parent='0' ORDER BY vrstni_red ASC");
//if (!$sqlQ) echo mysqli_error($GLOBALS['connect_db']);
//while ($rowQ = mysqli_fetch_array($sqlQ)) {
foreach (Cache::srv_branching_parent($this->anketa, $parent) AS $k => $rowQ) {
$this->display_element($rowQ['element_spr'], $rowQ['element_if']);
}
@ -1631,6 +1630,8 @@ class Branching {
if ( in_array($row['tip'], array(1,2,6,16,19,20)) ) {
if ($row['enota'] != 10 && $row['orientation'] != 10){
echo '<div class="add-variable tip_'.$row['tip'].'"><a href="#" onclick="vprasanje_fullscreen(\''.$spremenljivka.'\'); return false;" title="'.$lang['srv_novavrednost'].'"><span class="faicon add small"></span> '.$lang['srv_novavrednost'].'</a></div>';
MobileSurveyAdmin::displayAddQuestionCategory($this->anketa, $spremenljivka, $row['tip']);
}
}
@ -6836,7 +6837,8 @@ class Branching {
}
if ( ! ( mysqli_num_rows($sql1)==1 && $spr_id==0 ) ) {
echo '<div id="div_condition_editing_operators" style="padding-left:1%">'.$lang['srv_add_cond'].':
echo '<div id="div_condition_editing_operators" style="padding-left:1%">'.$lang['srv_add_cond'].' '.Help::display('srv_if_operator').':
<a href="#" onclick="condition_add(\''.$if.'\', \'0\', \'0\', \''.$vrednost.'\'); return false;"><strong>&nbsp;AND&nbsp;</strong></a>,
<a href="#" onclick="condition_add(\''.$if.'\', \'0\', \'1\', \''.$vrednost.'\'); return false;"><strong>&nbsp;AND NOT&nbsp;</strong></a>,
<a href="#" onclick="condition_add(\''.$if.'\', \'1\', \'0\', \''.$vrednost.'\'); return false;"><strong>&nbsp;OR&nbsp;</strong></a>,
@ -7227,7 +7229,7 @@ class Branching {
// right_bracket buttons
if ($row_count['count'] != 1 || $row['right_bracket']>0 || $row['left_bracket']>0) {
echo '<td class="tbl_ce_lor white" style="width:50px; text-align:center" nowrap>';
echo '<td class="tbl_ce_tb white" style="width:50px; text-align:center" nowrap>';
if ($row['right_bracket'] > 0)
echo '<a href="#" onclick="javascript:bracket_edit_new(\''.$condition.'\', \''.$vrednost.'\', \'right\', \'minus\'); return false;" title="'.$lang['srv_zaklepaj_rem'].'"><span class="faicon delete_circle"></span></a>';
@ -7235,24 +7237,23 @@ class Branching {
echo '<span class="faicon delete_circle icon-grey_normal"></span>';
echo '<a href="#" onclick="javascript:bracket_edit_new(\''.$condition.'\', \''.$vrednost.'\', \'right\', \'plus\' ); return false;" title="'.$lang['srv_zaklepaj_add'].'"><span class="faicon add small"></span></a>';
} else {
echo '<td class="tbl_ce_lor white" style="width:50px; text-align:center" nowrap>';
}
else {
echo '<td class="tbl_ce_tb white" style="width:50px; text-align:center" nowrap>';
}
echo '</td>';
// move
echo '<td class="tbl_ce_bck_blue white" style="text-align:right; width:30px">';
echo '<td class="tbl_ce_tb white" style="text-align:right; width:30px">';
if ($row_count['count'] != 1 )
echo '<img src="img_0/move_updown.png" class="move" title="'.$lang['srv_move'].'" />';
echo '</td>';
// remove
echo '<td class="tbl_ce_bck_blue white" style="text-align:left; width:30px">';
echo '<td class="tbl_ce_lor white" style="text-align:left; width:30px">';
if ($row_count['count'] != 1 )
echo '<a href="#" onclick="condition_remove(\''.$row['if_id'].'\', \''.$condition.'\', \''.$vrednost.'\'); return false;" title="'.$lang['srv_if_rem'].'"><span class="faicon delete icon-grey_dark_link"></span></a>'."\n";
//else
//echo '<span class="sprites cancel_blue_light"></span>'."\n";
echo '</td>';

View File

@ -37,6 +37,7 @@
* slideshow (prezentacija)
* social_network (socialna omrežja - generator imen)
* quiz (kviz s pravilnimi/napacnimi odgovori)
* voting (volitve z anonimnimi vabili)
* uporabnost (evalvacija strani - split screen)
* panel (povezovanje ankete s panelom - npr. Valicon, GFK...)
* 360_stopinj (adecco)
@ -266,158 +267,93 @@ class SurveyAdmin
global $site_domain;
global $aai_instalacija;
$sql = sisplet_query("SELECT email FROM users WHERE id='$global_user_id'");
$row = mysqli_fetch_assoc($sql);
if ($row['email'] == "test@1ka.si") {
echo '<div id="test_user_alert">';
echo '<span>' . $lang['notify_testUser'] . '</span>';
echo '</div>';
}
echo '<div id="blue_header"><a href="' . $site_url . 'admin/survey"></a></div>';
// user navigacija
echo '<div id="enka_nav">';
// Search po zunanji lupini - preusmeri na drupalov search
echo '<div id="search_holder">';
if($lang['id'] != "1")
$drupal_search_url = 'https://www.1ka.si/d/en/iskanje/';
else
$drupal_search_url = 'https://www.1ka.si/d/sl/iskanje/';
echo '<form method="GET" id="1kasf" action="'.$drupal_search_url.'">';
echo '<input type="hidden" id="drupal_search_url" name="drupal_search_url" value="'.$drupal_search_url.'" />';
echo '<a href="#" onclick="showSearch();"><span class="faicon search pointer"></span></a> ';
echo '<input id="searchSurvey" type="text" value="" placeholder="' . $lang['s_search_frontend'] . '" name="search" />';
echo '<input type="button" style="display: none;" value="' . $lang['s_search'] . '" />';
echo '</form>';
echo '</div>';
// Hitra pomoč - povezave na linke s pomočjo na www.1ka.si
$subdomain = ($lang['id'] == "1") ? 'www' : 'english';
$help_url = Common::getHelpUrl($subdomain, $this->first_action);
echo '<div id="help_holder">';
echo ' <a href="' . $help_url . '" title="' . $lang['srv_settings_help'] . '" target="_blank">';
echo '<span class="faicon help2"></span>';
echo '</a> ';
echo '</div>';
// povezava na fieldwork sync
if ($this->anketa > 0) {
// poglej če je tale ID ankete v srv_fieldwork
$sql = sisplet_query("SELECT id FROM srv_fieldwork where sid_server='" . $this->anketa . "'");
if (mysqli_num_rows($sql) > 0) {
// nariši link.
echo '<div id="fieldwork_holder">';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_FIELDWORK . '" title="' . $lang['srv_vrsta_survey_type_13'] . '">';
echo '<span class="sprites fieldwork"></span>';
echo '</a> ';
echo '</div>';
}
}
$sql = $this->db_select_user($global_user_id);
$row = mysqli_fetch_array($sql);
$text = $row['name'] . ' ' . $row['surname'];
$text = (strlen($text) > 25) ? substr($text, 0, 25) . '...' : $text;
echo '<div id="xtradiv"><strong class="xtraname">' . $text . ' <span class="faicon after sort_down_arrow"/></strong>';
echo '<div id="xtradivSettings">';
echo '<span class="xtraSetting"><a class="xtra" href="' . $site_url . 'admin/survey/index.php?a=nastavitve&m=global_user_myProfile"><span class="faicon user"></span>' . $lang['edit_data'] . '</a></span>';
// Odjava na nov nacin preko frontend/api
echo '<form name="odjava" method="post" action="'.$site_url.'frontend/api/api.php?action=logout">';
echo '<span class="xtraSetting"><a class="xtra" href="#" onClick="document.odjava.submit();"><span class="faicon logout"></span>' . $lang['logout'] . '</a></span>';
echo '</form>';
echo '</div>';
echo '</div>';
echo '</div>';
// logotip
echo '<div id="logo">';
$logo_class = ($lang['id'] != "1") ? ' class="english"' : '';
$su = ($site_url == "https://www.1ka.si/" && $lang['id'] != "1") ? "https://www.1ka.si/d/en/" : $site_url;
echo '<a href="' . $su . '" title="' . $lang['srv_1cs'] . '" id="enka_logo" ' . $logo_class . '></a>';
echo '</div>';
echo '<div id="main_holder">';
echo '<div id="main">';
/***** SEZNAM ANKET - Ce ni nastavljene ankete, potem prikazujemo seznam na prvi strani *****/
if (!($this->anketa > 0)) {
/********************* GLAVA *********************/
echo '<header>';
$this->displaySeznamAnket();
}
/***** GLAVNA VSEBINA - Znotraj posamezne ankete *****/
else{
// DESKTOP HEADER
echo '<div class="desktop_header">';
echo ' <div id="anketa"' . ($this->anketa == 0 ? ' class="prva"' : '') . '>';
// Nastavitve zgoraj desno v headerju (search, help, profil...)
$this->displayHeaderRight();
// logotip
$this->displayHeaderLogo();
// Znotraj posamezne ankete
if($this->anketa > 0){
// Utripajoc napis "Demo anketa"
$this->displayHeaderDemoSurvey();
// Prikaze podatke o anketi in navigacijo - na vrhu (top bar)
$this->displayAnketaTop();
$this->displayHeaderAnketa();
}
// Seznam anket
else{
$this->displayHeaderSeznamAnket();
}
echo '</div>';
// MOBILE HEADER
echo '<div class="mobile_header">';
$mobile_admin = new MobileSurveyAdmin($this);
$mobile_admin->displayHeaderMobile();
echo '</div>';
echo '</header>';
/********************* GLAVA - END *********************/
/********************* MAIN *********************/
echo '<div id="main">';
// SEZNAM ANKET - Ce ni nastavljene ankete, potem prikazujemo seznam na prvi strani *****/
if (!($this->anketa > 0)) {
$this->displaySeznamAnket();
}
// ZNOTRAJ ANKETE
else{
echo '<div id="anketa">';
echo '<div id="anketa_edit" class="page_'.$_GET['a'].' subpage_'.$_GET['m'].' '.($this->survey_type == '1' ? 'forma' : '').' '.($this->survey_type == '0' ? 'glasovanje' : '').'">';
$this->displayAnketa();
echo '</div>';
echo ' </div> <!-- /anketa -->';
// Predpregled tipa vprašanj - prikazujemo samo kadar smo v urejanju ankete
if (($_GET['a'] == '' && isset($_GET['anketa'])) || $_GET['a'] == 'branching') {
echo '<div id="tip_preview">';
echo '<div class="top-left"></div><div class="top-right"></div><div class="inside">';
$this->getTipPreviewHtml();
echo '</div><div class="bottom-left"></div><div class="bottom-right"></div>';
echo '</div>'; // tip_preview
}
// Utripajoc napis "Demo anketa"
$row = SurveyInfo::getInstance()->getSurveyRow();
if ($row['invisible'] == 1 && !Dostop::isMetaAdmin()) {
echo '<div id="invisible-layer"></div>';
echo '<div id="invisible-close" onClick="window.close(); return false;"><span>' . $lang['srv_close_invisible'] . '</span></div>';
?> <script> $('#invisible-close span').effect("pulsate", {times: 3}, 2000); </script> <?
}
echo '</div>';
}
/***** SKRITI DIVI ZA POPUPE *****/
$this->displayHiddenPopups();
echo '</div> <!-- /main -->';
echo '</div>';
/********************* MAIN - END *********************/
/***** FOOTER *****/
/********************* FOOTER *********************/
$this->displayFooter();
/********************* FOOTER - END *********************/
echo '</div> <!-- /main_holder -->';
}
// Prikazemo skrite dive za popupe
private function displayHiddenPopups(){
global $lang;
// Predpregled tipa vprašanj - prikazujemo samo kadar smo v urejanju ankete
$this->getTipPreviewHtml();
// Loading ikona
echo ' <div id="loading">';
echo ' <span class="faicon spinner fa-spin spaceRight"></span> '.$lang['srv_saving'];
@ -546,8 +482,147 @@ class SurveyAdmin
echo '</div>';
}
// Prikazemo podatke zgoraj desno v glavi (search, user, help)
private function displayHeaderRight(){
global $site_url;
global $global_user_id;
global $lang;
// user navigacija
echo '<div id="enka_nav">';
// Gumb za nadgraditev paketa v mojih anketah (ce imamo vklopljene pakete in nimamo 3ka paketa)
if($this->anketa == 0){
global $app_settings;
if($app_settings['commercial_packages'] == true){
// Preverimo trenuten paket uporabnika
$userAccess = UserAccess::getInstance($global_user_id);
$current_package = $userAccess->getPackage();
if($current_package != '3' && !$userAccess->userNotAuthor()){
$drupal_url = ($lang['id'] == '2') ? $site_url.'d/en/' : $site_url.'d/';
$upgrade_url = $drupal_url.'izvedi-nakup/3/podatki';
$button_text = ($current_package == '2') ? $lang['srv_access_upgrade2'] : $lang['srv_access_upgrade'];
echo '<div class="upgrade_package">';
echo '<div class="buttonwrapper"><a class="ovalbutton ovalbutton_purple" href="'.$upgrade_url.'" target="_blank"><span>'.$button_text.'</span></a></div>';
echo '</div>';
}
}
}
// Search po zunanji lupini - preusmeri na drupalov search
echo '<div id="search_holder">';
if($lang['id'] != "1")
$drupal_search_url = 'https://www.1ka.si/d/en/iskanje/';
else
$drupal_search_url = 'https://www.1ka.si/d/sl/iskanje/';
echo '<form method="GET" id="1kasf" action="'.$drupal_search_url.'">';
echo '<input type="hidden" id="drupal_search_url" name="drupal_search_url" value="'.$drupal_search_url.'" />';
echo '<a href="#" onclick="showSearch();"><span class="faicon search pointer"></span></a> ';
echo '<input id="searchSurvey" type="text" value="" placeholder="' . $lang['s_search_frontend'] . '" name="search" />';
echo '<input type="button" style="display: none;" value="' . $lang['s_search'] . '" />';
echo '</form>';
echo '</div>';
// Hitra pomoč - povezave na linke s pomočjo na www.1ka.si
$subdomain = ($lang['id'] == "1") ? 'www' : 'english';
$help_url = Common::getHelpUrl($subdomain, $this->first_action);
echo '<div id="help_holder">';
echo ' <a href="' . $help_url . '" title="' . $lang['srv_settings_help'] . '" target="_blank">';
echo '<span class="faicon help2"></span>';
echo '</a> ';
echo '</div>';
// povezava na fieldwork sync
if ($this->anketa > 0) {
// poglej če je tale ID ankete v srv_fieldwork
$sql = sisplet_query("SELECT id FROM srv_fieldwork where sid_server='" . $this->anketa . "'");
if (mysqli_num_rows($sql) > 0) {
// nariši link.
echo '<div id="fieldwork_holder">';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_FIELDWORK . '" title="' . $lang['srv_vrsta_survey_type_13'] . '">';
echo '<span class="sprites fieldwork"></span>';
echo '</a> ';
echo '</div>';
}
}
// User profil
$sql = $this->db_select_user($global_user_id);
$row = mysqli_fetch_array($sql);
$text = $row['name'] . ' ' . $row['surname'];
$text = (strlen($text) > 25) ? substr($text, 0, 25) . '...' : $text;
echo '<div id="xtradiv"><strong class="xtraname">'.$text.' <span class="faicon after sort_down_arrow"/></strong>';
echo '<div id="xtradivSettings">';
echo '<span class="xtraSetting"><a class="xtra" href="' . $site_url . 'admin/survey/index.php?a=nastavitve&m=global_user_myProfile"><span class="faicon user"></span>' . $lang['edit_data'] . '</a></span>';
// Odjava na nov nacin preko frontend/api
echo '<form name="odjava" id="form_odjava_desktop" method="post" action="'.$site_url.'frontend/api/api.php?action=logout">';
echo '<span class="xtraSetting"><a class="xtra" href="#" onClick="$(\'#form_odjava_desktop\').submit();"><span class="faicon logout"></span>' . $lang['logout'] . '</a></span>';
echo '</form>';
echo '</div>';
echo '</div>';
echo '</div>';
}
// Prikazemo logo zgoraj levo
public function displayHeaderLogo(){
global $lang;
global $site_url;
echo '<div id="logo">';
$logo_class = ($lang['id'] != "1") ? ' class="english"' : '';
$su = ($site_url == "https://www.1ka.si/" && $lang['id'] != "1") ? "https://www.1ka.si/d/en/" : $site_url;
echo '<a href="' . $su . '" title="' . $lang['srv_1cs'] . '" id="enka_logo" ' . $logo_class . '></a>';
echo '</div>';
}
// Utripajoc napis "Demo anketa"
private function displayHeaderDemoSurvey(){
global $lang;
$row = SurveyInfo::getInstance()->getSurveyRow();
if ($row['invisible'] == 1 && !Dostop::isMetaAdmin()) {
echo '<div id="invisible-layer"></div>';
echo '<div id="invisible-close" onClick="window.close(); return false;"><span>' . $lang['srv_close_invisible'] . '</span></div>';
?> <script> $('#invisible-close span').effect("pulsate", {times: 3}, 2000); </script> <?
}
}
// Prikaze podatke o anketi na vrhu
private function displayAnketaTop(){
private function displayHeaderAnketa(){
global $lang;
global $site_url;
@ -566,6 +641,59 @@ class SurveyAdmin
$this->thirdNavigation();
}
/**
* prikaze glavo v seznamu anket
*
*/
private function displayHeaderSeznamAnket(){
global $lang, $site_url, $global_user_id, $admin_type, $site_domain;
// Pobrisemo vse preview vnose
Common::deletePreviewData($this->anketa);
# naložimo razred z seznamom anket
$SL = new SurveyList();
$SLCount = $SL->countSurveys();
$SLCountPhone = $SL->countPhoneSurveys();
// Obvestilo da ima uporabnik neprebrano sporocilo
$NO = new Notifications();
$countMessages = $NO->countMessages();
if ($countMessages > 0) {
echo '<div id="new_notification_alert" onClick="showUnreadMessages();">';
echo $lang['srv_notifications_alert'];
echo '</div>';
// Ce imamo vklopljen avtomatski prikaz sporcila (za pomembne zadeve), ga prikazemo po loadu
if($NO->checkForceShow())
echo '<script>$(document).ready(function(){showUnreadMessages();})</script>';
}
// GDPR popup za prejemanje obvestil - force ce ga se ni izpolnil - SAMO NA www.1ka.si, test.1ka.si in virtualkah
if (($site_url == 'https://www.1ka.si/' || $site_url == 'http://test.1ka.si/' || $site_url == 'https://1ka.arnes.si/' || ($cookie_domain == '.1ka.si' && $virtual_domain == true))
&& User::getInstance()->getSetting($setting='gdpr_agree') == '-1') {
// Avtomatsko prikazemo po loadu
echo '<script>$(document).ready(function(){showGDPRMessage();})</script>';
}
echo '<div id="anketa_active" class="folders">';
echo ' <div id="topLine2">&nbsp;</div>';
echo ' <div id="surveyNavigation">';
$SL->display_tabs();
echo ' </div>';
echo '</div>';
# smo v knjižnici
$SL->display_sub_tabs();
}
// Priakz footerja
private function displayFooter(){
global $lang;
@ -574,7 +702,8 @@ class SurveyAdmin
global $aai_instalacija;
global $mysql_database_name;
echo '<div id="srv_footer">';
echo '<footer id="srv_footer">';
// Leva stran footerja
@ -647,11 +776,10 @@ class SurveyAdmin
echo '</div>';
echo '</div>'; // END #main
echo '</div>'; // END #main_holder
echo '</footer>';
}
// Prikaze ime ankete, zvezdico in tiste linke spodi (ker se vse refresha z ajaxom)
private function anketa_active() {
global $lang;
@ -1168,6 +1296,18 @@ class SurveyAdmin
echo '<span class="module_icon quiz"></span>';
echo '</a>';
echo '</li>';
}
# volitve
if (isset($modules['voting'])) {
$css = ($this->first_action == A_VOTING) ? 'on' : 'off';
echo '<li class="space">&nbsp;</li>';
echo '<li>';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_VOTING . '" title="' . $lang['srv_vrsta_survey_type_18'] . '">';
echo '<span class="module_icon voting"></span>';
echo '</a>';
echo '</li>';
}
# napredni parapodatki
if (isset($modules['advanced_paradata'])) {
@ -1776,6 +1916,14 @@ class SurveyAdmin
|| isset($modules['slideshow'])) ? '' : ' side-right';
echo '<li class="space"></li>';
echo '<li><a class="no-img' . $_right . $_active . '" href="' . $site_url . 'admin/survey/index.php?anketa=' . $this->anketa . '&amp;a=' . A_KVIZ . '" title="' . $lang['srv_kviz'] . '">' . $lang['srv_kviz'] . '</a></li>';
}
#volitve
if (isset($modules['voting'])) {
$_active = ($_GET['a'] == A_VOTING) ? ' active' : '';
$_right = (isset($modules['social_network'])
|| isset($modules['slideshow'])) ? '' : ' side-right';
echo '<li class="space"></li>';
echo '<li><a class="no-img' . $_right . $_active . '" href="' . $site_url . 'admin/survey/index.php?anketa=' . $this->anketa . '&amp;a=' . A_VOTING . '" title="' . $lang['srv_voting'] . '">' . $lang['srv_voting'] . '</a></li>';
}
#napredni parapodatki
if (isset($modules['advanced_paradata'])) {
@ -1822,13 +1970,15 @@ class SurveyAdmin
echo '</li>';
echo '<li class="space"></li>';
# parapodatki (browser, os, js...)
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == A_PARA_GRAPH ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_PARA_GRAPH . '" title="' . $lang['srv_metapodatki'] . '">';
echo $lang['srv_metapodatki'] . '</a>';
echo '</li>';
echo '<li class="space"></li>';
# parapodatki (browser, os, js...) - volitve imajo to ugasnjeno
if(!SurveyInfo::getInstance()->checkSurveyModule('voting')) {
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == A_PARA_GRAPH ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_PARA_GRAPH . '" title="' . $lang['srv_metapodatki'] . '">';
echo $lang['srv_metapodatki'] . '</a>';
echo '</li>';
echo '<li class="space"></li>';
}
# neodgovori in uporabnost enot
//if ($admin_type === '0') {
@ -1849,6 +1999,16 @@ class SurveyAdmin
echo '</li>';
echo '<li class="space"></li>';
# kakovost resp - V DELU - ZAENKRAT SAMO ADMINI
if ($admin_type === '0') {
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == A_KAKOVOST_RESP ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_KAKOVOST_RESP . '" title="' . $lang['srv_kakovost'] . '">';
echo $lang['srv_kakovost'] . '</a>';
echo '</li>';
echo '<li class="space"></li>';
}
# speeder index - V DELU - ZAENKRAT SAMO ADMINI
if ($admin_type === '0') {
echo '<li>';
@ -1869,8 +2029,8 @@ class SurveyAdmin
echo '<li class="space"></li>';
}
# IP analiza lokacij - gorenje ima to ugasnjeno
if (!Common::checkModule('gorenje')) {
# IP analiza lokacij - gorenje ima to ugasnjeno, volitve imajo tudi ugasnjeno
if (!Common::checkModule('gorenje') && !SurveyInfo::getInstance()->checkSurveyModule('voting')) {
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == A_GEOIP_LOCATION ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_GEOIP_LOCATION . '" title="' . $lang['srv_geoip_location'] . '">';
@ -1923,17 +2083,21 @@ class SurveyAdmin
}
# langStatistic
#langStatistic naj bo viden samo če imamo različne jezike
$qry_string = "SELECT language FROM srv_user WHERE ank_id = '" . $this->anketa . "' AND preview = '0' AND deleted='0' group by language";
$qry = (sisplet_query($qry_string));
$cntLang = mysqli_num_rows($qry);
if ($cntLang > 1) {
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == 'langStatistic' ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=langStatistic" title="' . $lang['srv_languages_statistics'] . '">';
echo $lang['srv_languages_statistics'] . '</a>';
echo '</li>';
echo '<li class="space"></li>';
#langStatistic naj bo viden samo če imamo različne jezike in nimamo volitev
if (!Common::checkModule('gorenje') && !SurveyInfo::getInstance()->checkSurveyModule('voting')) {
$qry_string = "SELECT language FROM srv_user WHERE ank_id = '" . $this->anketa . "' AND preview = '0' AND deleted='0' group by language";
$qry = (sisplet_query($qry_string));
$cntLang = mysqli_num_rows($qry);
if ($cntLang > 1) {
echo '<li>';
echo '<a class="no-img' . ($_GET['a'] == 'langStatistic' ? ' active' : '') . '"'
. ' href="index.php?anketa=' . $this->anketa . '&amp;a=langStatistic" title="' . $lang['srv_languages_statistics'] . '">';
echo $lang['srv_languages_statistics'] . '</a>';
echo '</li>';
echo '<li class="space"></li>';
}
}
echo '</ul>';
@ -2002,7 +2166,7 @@ class SurveyAdmin
// Zavihki PODATKI
elseif($_GET['a'] == 'data'){
if(!isset($_GET['m'])){
if(!isset($_GET['m']) || $_GET['m'] == 'view'){
$podstran = 'data';
}
elseif($_GET['m'] == 'quick_edit'){
@ -2183,6 +2347,7 @@ class SurveyAdmin
|| $_GET['a'] == 'uporabnost'
|| ($_GET['a'] == 'hierarhija_superadmin' && $hierarhija_type < 5)
|| $_GET['a'] == 'kviz'
|| $_GET['a'] == 'voting'
|| $_GET['a'] == 'slideshow'
|| $_GET['a'] == 'vnos'
|| $_GET['a'] == A_TELEPHONE
@ -2308,6 +2473,13 @@ class SurveyAdmin
$SUR->displayUporabnost();
echo ' </div>';
}
// prikaze modul kakovost
elseif ($_GET['a'] == A_KAKOVOST_RESP) {
echo ' <div id="surveyKakovostResp">';
$SUR = new SurveyKakovost($this->anketa);
$SUR->displayKakovost();
echo ' </div>';
}
// Prikaze analizo hitrosti respondenta
elseif ($_GET['a'] == A_SPEEDER_INDEX) {
echo ' <div id="surveySpeederIndex">';
@ -2433,6 +2605,7 @@ class SurveyAdmin
elseif ($_GET['a'] == 'uporabnost'
|| ($_GET['a'] == 'hierarhija_superadmin' && $hierarhija_type < 5)
|| $_GET['a'] == 'kviz'
|| $_GET['a'] == 'voting'
|| $_GET['a'] == 'slideshow'
|| $_GET['a'] == 'vnos'
|| $_GET['a'] == A_TELEPHONE
@ -3094,7 +3267,7 @@ class SurveyAdmin
}
// Linki za napredne module
function showAdvancedModulesLinks()
private function showAdvancedModulesLinks()
{
global $lang;
global $site_url;
@ -3143,6 +3316,12 @@ class SurveyAdmin
echo '<li ' . ($get == A_KVIZ ? ' class="highlightLineTab"' : ' class="nonhighlight"') . '>';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a='.A_KVIZ.'" title="' . $lang['srv_vrsta_survey_type_6'] . '" '.(!$userAccess->checkUserAccess($what='kviz') ? 'class="user_access_locked"' : '').'><span>' . $lang['srv_vrsta_survey_type_6'] . '</span></a></li> ';
# Volitve
if ($admin_type == 0) {
echo '<li ' . ($get == A_VOTING ? ' class="highlightLineTab"' : ' class="nonhighlight"') . '>';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a='.A_VOTING.'" title="' . $lang['srv_vrsta_survey_type_18'] . '" '.(!$userAccess->checkUserAccess($what='voting') ? 'class="user_access_locked"' : '').'><span>' . $lang['srv_vrsta_survey_type_18'] . '</span></a></li> ';
}
# Socialna omrezja
echo '<li ' . ($get == A_SOCIAL_NETWORK ? ' class="highlightLineTab"' : ' class="nonhighlight"') . '>';
echo '<a href="index.php?anketa=' . $this->anketa . '&amp;a=' . A_SOCIAL_NETWORK . '" title="' . $lang['srv_vrsta_survey_type_8'] . '" '.(!$userAccess->checkUserAccess($what='social_network') ? 'class="user_access_locked"' : '').'><span>' . $lang['srv_vrsta_survey_type_8'] . '</span></a></li> ';
@ -3279,54 +3458,15 @@ class SurveyAdmin
* prikaze seznam anket in polje za dodajanje na prvi strani
*
*/
function displaySeznamAnket(){
private function displaySeznamAnket(){
global $lang, $site_url, $global_user_id, $admin_type, $site_domain;
// Pobrisemo vse preview vnose
Common::deletePreviewData($this->anketa);
# naložimo razred z seznamom anket
$SL = new SurveyList();
$SLCount = $SL->countSurveys();
$SLCountPhone = $SL->countPhoneSurveys();
// Obvestilo da ima uporabnik neprebrano sporocilo
$NO = new Notifications();
$countMessages = $NO->countMessages();
if ($countMessages > 0) {
echo '<div id="new_notification_alert" onClick="showUnreadMessages();">';
echo $lang['srv_notifications_alert'];
echo '</div>';
// Ce imamo vklopljen avtomatski prikaz sporcila (za pomembne zadeve), ga prikazemo po loadu
if($NO->checkForceShow())
echo '<script>$(document).ready(function(){showUnreadMessages();})</script>';
}
// GDPR popup za prejemanje obvestil - force ce ga se ni izpolnil - SAMO NA www.1ka.si, test.1ka.si in virtualkah
if (($site_url == 'https://www.1ka.si/' || $site_url == 'http://test.1ka.si/' || $site_url == 'https://1ka.arnes.si/' || ($cookie_domain == '.1ka.si' && $virtual_domain == true))
&& User::getInstance()->getSetting($setting='gdpr_agree') == '-1') {
// Avtomatsko prikazemo po loadu
echo '<script>$(document).ready(function(){showGDPRMessage();})</script>';
}
echo '<div id="anketa_active" class="folders">';
echo ' <div id="topLine2">&nbsp;</div>';
echo ' <div id="surveyNavigation">';
$SL->display_tabs();
echo ' </div>';
echo '</div>';
# smo v knjižnici
$SL->display_sub_tabs();
// VSEBINA POSAMEZNEGA TABA PRI MOJIH ANKETAH
echo '<div id="moje_ankete_edit" class="page_'.$_GET['a'].' subpage_'.$_GET['t'].' '.(isset($_GET['b']) ? 'subpage_b_'.$_GET['b'] : '').' '.($SLCount == 0 ? 'page_ustvari_anketo' : '').'">';
@ -3616,6 +3756,8 @@ class SurveyAdmin
echo '</div>';
}
/**
* vrne kodo ankete, ki se jo uporabi za embed
*
@ -3800,7 +3942,7 @@ class SurveyAdmin
}
}
if (($_GET['a'] == A_COLLECT_DATA || $_GET['a'] == A_USABLE_RESP || $_GET['a'] == A_SPEEDER_INDEX || $_GET['a'] == A_REMINDER_TRACKING || $_GET['a'] == A_TEXT_ANALYSIS || $_GET['a'] == A_EDITS_ANALYSIS || $_GET['a'] == A_ANALYSIS) && $_GET['m'] != 'analysis_links' && $_GET['m'] != 'anal_arch')
if (($_GET['a'] == A_COLLECT_DATA || $_GET['a'] == A_USABLE_RESP || $_GET['a'] == A_KAKOVOST_RESP || $_GET['a'] == A_SPEEDER_INDEX || $_GET['a'] == A_REMINDER_TRACKING || $_GET['a'] == A_TEXT_ANALYSIS || $_GET['a'] == A_EDITS_ANALYSIS || $_GET['a'] == A_ANALYSIS) && $_GET['m'] != 'analysis_links' && $_GET['m'] != 'anal_arch')
$this->displayExportHover($navigation);
} else if ($navigation == 1) {
@ -4933,10 +5075,24 @@ class SurveyAdmin
* preview
*
*/
function getTipPreviewHtml(){
private function getTipPreviewHtml(){
global $lang;
global $global_user_id;
// Predpregled tipa vprašanj - prikazujemo samo kadar smo v urejanju ankete
if (!$this->anketa > 0)
return;
if ( ($_GET['a'] != '' || !isset($_GET['anketa'])) && $_GET['a'] != 'branching' )
return;
echo '<div id="tip_preview">';
echo '<div class="top-left"></div><div class="top-right"></div><div class="inside">';
// Preverimo, ce je funkcionalnost v paketu, ki ga ima uporabnik
$userAccess = UserAccess::getInstance($global_user_id);
@ -5842,6 +5998,11 @@ class SurveyAdmin
echo '</div>';
}
}
echo '</div><div class="bottom-left"></div><div class="bottom-right"></div>';
echo '</div>'; // tip_preview
}
/**

View File

@ -849,12 +849,33 @@ class SurveyAdminAjax {
$this->anketa = $_POST['anketa'];
}
$MA = new MailAdapter($this->anketa, $type='alert');
// Squalo vklopljen
if(isset($_POST['squalo_mode'])){
$settings = $MA->getSettingsFromRequest($_REQUEST);
$mode = $_REQUEST['SMTPMailMode'];
// Squalo vklopljen
if($_POST['squalo_mode'] == '1'){echo $_POST['squalo_mode'];
sisplet_query("UPDATE srv_anketa_module SET vrednost='2' WHERE ank_id='".$this->anketa."' AND modul='email'");
}
// Squalo izklopljen
else{
sisplet_query("UPDATE srv_anketa_module SET vrednost='1' WHERE ank_id='".$this->anketa."' AND modul='email'");
$MA->setSettings($mode, $settings);
$MA = new MailAdapter($this->anketa, $type='alert');
$settings = $MA->getSettingsFromRequest($_REQUEST);
$mode = $_REQUEST['SMTPMailMode'];
$MA->setSettings($mode, $settings);
}
}
else{
$MA = new MailAdapter($this->anketa, $type='alert');
$settings = $MA->getSettingsFromRequest($_REQUEST);
$mode = $_REQUEST['SMTPMailMode'];
$MA->setSettings($mode, $settings);
}
}
} elseif ($_GET['m'] == 'predvidenicasi') { // predvideni casi
foreach($_POST AS $key => $val) {
@ -1260,7 +1281,7 @@ class SurveyAdminAjax {
$avtorSql = sisplet_query("SELECT insert_uid FROM srv_anketa WHERE id='" . $this->anketa . "'");
$avtorRow = mysqli_fetch_assoc($avtorSql);
// da ne more zbrisat avtorja (razen če je test@1ka.si)
// da ne more zbrisat avtorja
$avtorPogoj = (isset ($avtorRow['insert_uid']) && $avtorRow['insert_uid'] > 0) ? " AND (uid != ".$avtorRow['insert_uid']." )" : "";
// da ne more zbrisat sam sebe
$avtorID = " AND uid != '" . $global_user_id . "'";
@ -6119,6 +6140,17 @@ class SurveyAdminAjax {
$sq = new SurveyQuiz($this->anketa);
$sq->displaySettings();
}
elseif ($what == 'voting' && $value == '1'){
// Volitve
$sv = new SurveyVoting($this->anketa);
// Izvedemo vse potrebno pri vklopu (vklopimo obvescanje, ugasnemo belezenje parapodatkov...)
$sv->turnOnVoting();
// Prikazemo morebitne nastavitve
$sv->displaySettings();
}
elseif ($what == 'advanced_paradata' && $value == '1'){
// kviz
$sap = new SurveyAdvancedParadata($this->anketa);

View File

@ -441,86 +441,106 @@ class SurveyAdminSettings {
/* PISKOTEK */
if ($_GET['a'] == A_PRIKAZ) {
echo '<fieldset>';
echo '<legend>' . $lang['srv_data_valid_units_settings'] . '</legend>';
echo '<p>';
echo '<span class="strong" >'.$lang['srv_prikaz_default_valid'].'</span>';
echo '<label><input type="radio" name="defValidProfile" '.($row['defValidProfile']==2?' checked':'').' value="2">'.'(5,6) '.$lang['srv_data_valid_units'].'</label>';
echo '<label><input type="radio" name="defValidProfile" '.($row['defValidProfile']==3?' checked':'').' value="3">'.'(6) '.$lang['srv_data_finished_units'].'</label>';
echo '</p>';
echo '<p>';
echo '<span class="strong" >'.$lang['srv_prikaz_showItime'].'</span>';
echo '<label><input type="radio" name="showItime" '.((int)$row['showItime']==0?' checked':'').' value="0">'.$lang['no1'].'</label>';
echo '<label><input type="radio" name="showItime" '.((int)$row['showItime']==1?' checked':'').' value="1">'.$lang['yes'].'</label>';
echo '</p>';
// Pri volitvah ne moremo prikazati datuma respondenta
if(!SurveyInfo::getInstance()->checkSurveyModule('voting')){
echo '<p>';
echo '<span class="strong" >'.$lang['srv_prikaz_showItime'].'</span>';
echo '<label><input type="radio" name="showItime" '.((int)$row['showItime']==0?' checked':'').' value="0">'.$lang['no1'].'</label>';
echo '<label><input type="radio" name="showItime" '.((int)$row['showItime']==1?' checked':'').' value="1">'.$lang['yes'].'</label>';
echo '</p>';
}
echo '<p>';
echo '<span class="strong" >'.$lang['srv_prikaz_showLineNumber'].'</span>';
echo '<label><input type="radio" name="showLineNumber" '.((int)$row['showLineNumber']==0?' checked':'').' value="0">'.$lang['no1'].'</label>';
echo '<label><input type="radio" name="showLineNumber" '.((int)$row['showLineNumber']==1?' checked':'').' value="1">'.$lang['yes'].'</label>';
echo '</p>';
echo '</fieldset>';
echo '</fieldset>';
}
/*Piskotek*/
if ($_GET['a'] == 'piskot') {
echo '<fieldset style="position:relative">';
// Pri volitvah ne moremo popravljati nastavitev piskotka
if(SurveyInfo::getInstance()->checkSurveyModule('voting')){
echo '<div id="cookie_alert" class="google_yellow">';
echo '<span class="">'.$lang['srv_cookie_alert_title'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert_1'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert_2'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert'].'</span>';
echo '</div>';
echo '<fieldset style="position:relative">';
echo '<legend>' . $lang['srv_cookie'] . '</legend>';
echo '<span class="red bold">'.$lang['srv_voting_no_cookie'].'</span>';
echo '</fieldset>';
echo '<legend>' . $lang['srv_cookie'] . '</legend>';
echo '</form>';
// Shrani piskotek za X casa
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie'] . Help :: display('srv_cookie') .':</label></span>';
echo ' <label for="cookie_-1"><input type="radio" name="cookie" value="-1" id="cookie_-1"' . ($row['cookie'] == -1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_-1'] . '</label>' . "\n\r";
echo ' <label for="cookie_0"><input type="radio" name="cookie" value="0" id="cookie_0"' . ($row['cookie'] == 0 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_0'] . '</label>' . "\n\r";
echo ' <label for="cookie_1"><input type="radio" name="cookie" value="1" id="cookie_1"' . ($row['cookie'] == 1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_1'] . '</label>' . "\n\r";
echo ' <label for="cookie_2"><input type="radio" name="cookie" value="2" id="cookie_2"' . ($row['cookie'] == 2 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_2'] . '</label>' . "\n\r";
echo '<br/>';
return;
}
// Ko se uporabnik vrne (zacne od zacetka/nadaljuje kjer je ostal)
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie_return'] . Help :: display('srv_cookie_return') . ':</label></span>';
echo ' <label for="cookie_return_0"><input type="radio" name="cookie_return" value="0" id="cookie_return_0"' . ($row['cookie_return'] == 0 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_return_start'] . '</label>' . "\n\r";
echo ' <div class="no-cookie"><label for="cookie_return_1"><input type="radio" name="cookie_return" value="1" id="cookie_return_1"' . ($row['cookie_return'] == 1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_return_middle'] . '</label></div>' . "\n\r";
echo '<br>';
echo '<fieldset style="position:relative">';
// Ce je zakljucil lahko naknadno ureja svoje odgovore
echo '<div class="no-cookie no-cookie-return"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_return_finished'] . Help :: display('srv_return_finished') . ':</label></span>';
echo ' <label for="return_finished_1"><input type="radio" name="return_finished" value="1" id="return_finished_1"' . ($row['return_finished'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_return_finished_yes'] . '</label>' . "\n\r";
echo ' <label for="return_finished_0"><input type="radio" name="return_finished" value="0" id="return_finished_0"' . ($row['return_finished'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_return_finished_no'] . '</label></div>' . "\n\r";
echo '<div id="cookie_alert" class="google_yellow">';
echo '<span class="">'.$lang['srv_cookie_alert_title'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert_1'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert_2'].'</span>';
echo '<span class="">'.$lang['srv_cookie_alert'].'</span>';
echo '</div>';
echo '<legend>' . $lang['srv_cookie'] . '</legend>';
// Shrani piskotek za X casa
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie'] . Help :: display('srv_cookie') .':</label></span>';
echo ' <label for="cookie_-1"><input type="radio" name="cookie" value="-1" id="cookie_-1"' . ($row['cookie'] == -1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_-1'] . '</label>' . "\n\r";
echo ' <label for="cookie_0"><input type="radio" name="cookie" value="0" id="cookie_0"' . ($row['cookie'] == 0 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_0'] . '</label>' . "\n\r";
echo ' <label for="cookie_1"><input type="radio" name="cookie" value="1" id="cookie_1"' . ($row['cookie'] == 1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_1'] . '</label>' . "\n\r";
echo ' <label for="cookie_2"><input type="radio" name="cookie" value="2" id="cookie_2"' . ($row['cookie'] == 2 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_2'] . '</label>' . "\n\r";
echo '<br/>';
// Ko se uporabnik vrne (zacne od zacetka/nadaljuje kjer je ostal)
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie_return'] . Help :: display('srv_cookie_return') . ':</label></span>';
echo ' <label for="cookie_return_0"><input type="radio" name="cookie_return" value="0" id="cookie_return_0"' . ($row['cookie_return'] == 0 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_return_start'] . '</label>' . "\n\r";
echo ' <div class="no-cookie"><label for="cookie_return_1"><input type="radio" name="cookie_return" value="1" id="cookie_return_1"' . ($row['cookie_return'] == 1 ? ' checked="checked"' : '') . ' onclick="checkcookie();" />' . $lang['srv_cookie_return_middle'] . '</label></div>' . "\n\r";
echo '<br>';
// Ce je zakljucil lahko naknadno ureja svoje odgovore
echo '<div class="no-cookie no-cookie-return"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_return_finished'] . Help :: display('srv_return_finished') . ':</label></span>';
echo ' <label for="return_finished_1"><input type="radio" name="return_finished" value="1" id="return_finished_1"' . ($row['return_finished'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_return_finished_yes'] . '</label>' . "\n\r";
echo ' <label for="return_finished_0"><input type="radio" name="return_finished" value="0" id="return_finished_0"' . ($row['return_finished'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_return_finished_no'] . '</label></div>' . "\n\r";
echo '<br/>';
// Nikoli ne more popravljati svojih odgovorov (tudi ce se npr. vrne na prejsnjo stran)
echo '<div class="no-subsequent-answers"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_subsequent_answers'] . Help :: display('srv_subsequent_answers') . ':</label></span>';
echo ' <label for="subsequent_answers_1"><input type="radio" name="subsequent_answers" value="1" id="subsequent_answers_1"' . ($row['subsequent_answers'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_subsequent_answers_yes'] . '</label>' . "\n\r";
echo ' <label for="subsequent_answers_0"><input type="radio" name="subsequent_answers" value="0" id="subsequent_answers_0"' . ($row['subsequent_answers'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_subsequent_answers_no'] . '</label></div>' . "\n\r";
echo '<br/>';
echo '<div class="no-subsequent-answers"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_subsequent_answers'] . Help :: display('srv_subsequent_answers') . ':</label></span>';
echo ' <label for="subsequent_answers_1"><input type="radio" name="subsequent_answers" value="1" id="subsequent_answers_1"' . ($row['subsequent_answers'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_subsequent_answers_yes'] . '</label>' . "\n\r";
echo ' <label for="subsequent_answers_0"><input type="radio" name="subsequent_answers" value="0" id="subsequent_answers_0"' . ($row['subsequent_answers'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_subsequent_answers_no'] . '</label></div>' . "\n\r";
echo '<br/>';
// Ce ni sprejel piskotka lahko/ne more nadaljevati
echo '<div class="no-cookie"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie_continue'] . Help :: display('srv_cookie_continue') . ':</label></span>';
echo ' <label for="cookie_continue_1"><input type="radio" name="cookie_continue" value="1" id="cookie_continue_1"' . ($row['cookie_continue'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_cookie_continue_yes'] . '</label>' . "\n\r";
echo ' <label for="cookie_continue_0"><input type="radio" name="cookie_continue" value="0" id="cookie_continue_0"' . ($row['cookie_continue'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_cookie_continue_no'] . '</label></div>' . "\n\r";
echo '<br/>';
// Ce ni sprejel piskotka lahko/ne more nadaljevati
echo '<div class="no-cookie"><span class="nastavitveSpan3 bold" ><label>' . $lang['srv_cookie_continue'] . Help :: display('srv_cookie_continue') . ':</label></span>';
echo ' <label for="cookie_continue_1"><input type="radio" name="cookie_continue" value="1" id="cookie_continue_1"' . ($row['cookie_continue'] == 1 ? ' checked="checked"' : '') . ' />' . $lang['srv_cookie_continue_yes'] . '</label>' . "\n\r";
echo ' <label for="cookie_continue_0"><input type="radio" name="cookie_continue" value="0" id="cookie_continue_0"' . ($row['cookie_continue'] == 0 ? ' checked="checked"' : '') . ' />' . $lang['srv_cookie_continue_no'] . '</label></div>' . "\n\r";
echo '<br/>';
echo '<br/>';
echo '<br/>';
// Prepoznaj respondenta
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_user'] . Help :: display('srv_user_from_cms') . ':</label></span>';
echo ' <label for="user_1"><input type="radio" name="user_from_cms" value="1" id="user_1"' . ($row['user_from_cms'] == 1 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').removeAttr(\'disabled\')" />' . $lang['srv_respondent'] . '</label>' . "\n\r";
echo ' <label for="user_2"><input type="radio" name="user_from_cms" value="2" id="user_2"' . ($row['user_from_cms'] == 2 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').removeAttr(\'disabled\')" />' . $lang['srv_vnasalec'] . '</label>' . "\n\r";
echo ' <label for="user_0"><input type="radio" name="user_from_cms" value="0" id="user_0"' . ($row['user_from_cms'] == 0 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').attr(\'disabled\', true); _user_from_cms(); " />' . $lang['no1'] . '</label>' . "\n\r";
echo '<br/>';
// Prepoznaj respondenta
echo '<span class="nastavitveSpan3 bold" ><label>' . $lang['srv_user'] . Help :: display('srv_user_from_cms') . ':</label></span>';
echo ' <label for="user_1"><input type="radio" name="user_from_cms" value="1" id="user_1"' . ($row['user_from_cms'] == 1 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').removeAttr(\'disabled\')" />' . $lang['srv_respondent'] . '</label>' . "\n\r";
echo ' <label for="user_2"><input type="radio" name="user_from_cms" value="2" id="user_2"' . ($row['user_from_cms'] == 2 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').removeAttr(\'disabled\')" />' . $lang['srv_vnasalec'] . '</label>' . "\n\r";
echo ' <label for="user_0"><input type="radio" name="user_from_cms" value="0" id="user_0"' . ($row['user_from_cms'] == 0 ? ' checked="checked"' : '') . ' onclick="javascript:checkcookie(); $(\'#user_1_email\').attr(\'disabled\', true); _user_from_cms(); " />' . $lang['no1'] . '</label>' . "\n\r";
echo '<br/>';
// Ob izpolnjevanju prikazi email
echo '<div id="cms_email">';
echo ' <span class="nastavitveSpan3 bold" >&nbsp;</span><label>' . $lang['srv_user_cms_show'] . Help :: display('srv_user_from_cms_email') . ':</label>';
echo ' <label for="user_1_email"><input type="checkbox" name="user_from_cms_email" value="1" id="user_1_email"' . ($row['user_from_cms_email'] == 1 ? ' checked="checked"' : '') . ' '.($row['user_from_cms']>0?'':' disabled="true" ').'/>' . $lang['srv_user_cms_email'] . '</label>' . "\n\r";
// Ob izpolnjevanju prikazi email
echo '<div id="cms_email">';
echo ' <span class="nastavitveSpan3 bold" >&nbsp;</span><label>' . $lang['srv_user_cms_show'] . Help :: display('srv_user_from_cms_email') . ':</label>';
echo ' <label for="user_1_email"><input type="checkbox" name="user_from_cms_email" value="1" id="user_1_email"' . ($row['user_from_cms_email'] == 1 ? ' checked="checked"' : '') . ' '.($row['user_from_cms']>0?'':' disabled="true" ').'/>' . $lang['srv_user_cms_email'] . '</label>' . "\n\r";
echo '</div>';
echo '</fieldset>';
@ -539,52 +559,52 @@ class SurveyAdminSettings {
// For modul maza, show all cookie settings
$isMaza = (SurveyInfo::checkSurveyModule('maza')) ? 1 : 0;
?> <script>
?> <script>
function checkcookie () {
function checkcookie () {
if ($('input[name=cookie]:checked').val() == '-1' && $('input[name=user_from_cms]:checked').val() == '0' && <?echo $row['user_base'];?> != 1 && <?echo $isMaza;?> != 1) {
$('input[name=cookie_return]').attr('disabled', true);
$('input[name=return_finished]').attr('disabled', true);
$('.no-cookie').css('visibility', 'hidden');
}
if ($('input[name=cookie]:checked').val() == '-1' && $('input[name=user_from_cms]:checked').val() == '0' && <?echo $row['user_base'];?> != 1 && <?echo $isMaza;?> != 1) {
$('input[name=cookie_return]').attr('disabled', true);
$('input[name=return_finished]').attr('disabled', true);
$('.no-cookie').css('visibility', 'hidden');
}
else {
$('input[name=cookie_return]').attr('disabled', false);
$('input[name=return_finished]').attr('disabled', false);
$('.no-cookie').css('visibility', 'visible');
}
$('input[name=cookie_return]').attr('disabled', false);
$('input[name=return_finished]').attr('disabled', false);
$('.no-cookie').css('visibility', 'visible');
}
if ( $('input[name=cookie_return]:checked').val() == 1 ) {
$('.no-cookie-return').css('visibility', 'hidden');
}
if ( $('input[name=cookie_return]:checked').val() == 1 ) {
$('.no-cookie-return').css('visibility', 'hidden');
}
else {
$('.no-cookie-return').css('visibility', 'visible');
}
$('.no-cookie-return').css('visibility', 'visible');
}
if ( $('input[name=user_from_cms]:checked').val() == 0 ) {
$('#cms_email').css('visibility', 'hidden');
}
if ( $('input[name=user_from_cms]:checked').val() == 0 ) {
$('#cms_email').css('visibility', 'hidden');
}
else {
$('#cms_email').css('visibility', 'visible');
$('#cms_email').css('visibility', 'visible');
}
if ( $('input[name=user_from_cms]:checked').val() == 2 ) {
$('#vnos_modul').show();
}
$('#vnos_modul').show();
}
else {
$('#vnos_modul').hide();
}
}
$('#vnos_modul').hide();
}
}
checkcookie();
cookie_alert();
checkcookie();
cookie_alert();
</script> <?
$stringDostopAvtor = "SELECT count(*) as isAvtor FROM srv_dostop WHERE ank_id = '" . $this->anketa . "' AND (uid='" . $global_user_id . "' OR uid IN (SELECT user FROM srv_dostop_manage WHERE manager='$global_user_id' ))";
$sqlDostopAvtor = sisplet_query($stringDostopAvtor);
$rowDostopAvtor = mysqli_fetch_assoc($sqlDostopAvtor);
$avtorRow = SurveyInfo::getInstance()->getSurveyRow();
$stringDostopAvtor = "SELECT count(*) as isAvtor FROM srv_dostop WHERE ank_id = '" . $this->anketa . "' AND (uid='" . $global_user_id . "' OR uid IN (SELECT user FROM srv_dostop_manage WHERE manager='$global_user_id' ))";
$sqlDostopAvtor = sisplet_query($stringDostopAvtor);
$rowDostopAvtor = mysqli_fetch_assoc($sqlDostopAvtor);
$avtorRow = SurveyInfo::getInstance()->getSurveyRow();
echo '<br/>';
@ -626,15 +646,15 @@ class SurveyAdminSettings {
echo '</fieldset>';
echo '<br/>';
echo '<br/>';
// Preverimo, ce je funkcionalnost v paketu, ki ga ima uporabnik
global $global_user_id;
$userAccess = UserAccess::getInstance($global_user_id);
// dodajanje gesel za anketo
echo '<fieldset><legend>'.$lang['srv_password'].' '.Help::display('srv_dostop_password').'</legend>';
// dodajanje gesel za anketo
echo '<fieldset><legend>'.$lang['srv_password'].' '.Help::display('srv_dostop_password').'</legend>';
if(!$userAccess->checkUserAccess($what='password')){
$userAccess->displayNoAccess($what='password');
@ -810,13 +830,16 @@ class SurveyAdminSettings {
echo '</a>';
}
#<a href="#" onclick="$(\'#komentarji_napredno\').toggle(); return false;">'.$lang['srv_detail_settings'].'</a>'
echo '</p>';
echo '<p><a href="#" onclick="$(\'#komentarji_napredno\').toggle(); return false;"><span class="bold">'.$lang['srv_detail_settings'].'</span></a></p>';
echo '<p><a href="index.php?anketa='.$this->anketa.'&a=komentarji"><span class="bold">'.$lang['comments'].'</span></a><br>';
echo '<a href="index.php?anketa='.$this->anketa.'&a=vabila"><span class="bold">'.$lang['srv_vabila'].'</span></a></p>';
echo '<p><a href="index.php?anketa='.$this->anketa.'&a=komentarji"><span class="bold">'.$lang['comments'].'</span></a></p>';
echo '<p><a href="index.php?anketa='.$this->anketa.'&a=vabila"><span class="bold">'.$lang['srv_vabila'].'</span></a></p>';
echo '<p><a href="#" onclick="$(\'#komentarji_napredno\').fadeToggle(); $(\'#komentarji_napredno_arrow\').toggleClass(\'arrow2_d\'); $(\'#komentarji_napredno_arrow\').toggleClass(\'arrow2_u\'); return false;">';
echo ' <span class="bold">'.$lang['srv_detail_settings'].'&nbsp;</span>';
echo ' <span id="komentarji_napredno_arrow" class="faicon arrow2_d"></span>';
echo '</a></p>';
echo '</fieldset>';
@ -1397,11 +1420,29 @@ class SurveyAdminSettings {
echo '<fieldset class="wide">';
echo '<legend>'.$lang['srv_sledenje'].'</legend>';
// Preverimo ce je vklopljen modul za volitve - potem ne pustimo nobenih preklopov
$voting_disabled = '';
$voting_disabled_class = '';
if(SurveyInfo::getInstance()->checkSurveyModule('voting')){
$voting_disabled = ' disabled';
$voting_disabled_class = ' class="gray"';
echo '<p class="red">'.$lang['srv_voting_warning_paradata'].'</p>';
}
echo '<p>'.$lang['srv_metadata_desc'].'</p>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_browser'].':</label></span> <label for="survey_browser_1"><input type="radio" name="survey_browser" id="survey_browser_1" value="1"'.($browser==1?' checked':'').'>'.$lang['no'].'</label> <label for="survey_browser_0"><input type="radio" name="survey_browser" id="survey_browser_0" value="0"'.($browser==0?' checked':'').'>'.$lang['yes'].'</label><br class="clr"/>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_referal'].':</label></span> <label for="survey_referal_1"><input type="radio" name="survey_referal" id="survey_referal_1" value="1"'.($referal==1?' checked':'').'>'.$lang['no'].'</label> <label for="survey_referal_0"><input type="radio" name="survey_referal" id="survey_referal_0" value="0"'.($referal==0?' checked':'').'>'.$lang['yes'].'</label><br class="clr"/>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_date'].':</label></span> <label for="survey_date_1"><input type="radio" name="survey_date" id="survey_date_1" value="1"'.($date==1?' checked':'').'>'.$lang['no'].'</label> <label for="survey_date_0"><input type="radio" name="survey_date" id="survey_date_0" value="0"'.($date==0?' checked':'').'>'.$lang['yes'].'</label><br class="clr"/>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_browser'].':</label></span>';
echo ' <label for="survey_browser_1" '.$voting_disabled_class.'><input type="radio" name="survey_browser" id="survey_browser_1" value="1"'.($browser==1?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="survey_browser_0" '.$voting_disabled_class.'><input type="radio" name="survey_browser" id="survey_browser_0" value="0"'.($browser==0?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label><br class="clr"/>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_referal'].':</label></span>';
echo ' <label for="survey_referal_1" '.$voting_disabled_class.'><input type="radio" name="survey_referal" id="survey_referal_1" value="1"'.($referal==1?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="survey_referal_0" '.$voting_disabled_class.'><input type="radio" name="survey_referal" id="survey_referal_0" value="0"'.($referal==0?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label><br class="clr"/>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_date'].':</label></span>';
echo ' <label for="survey_date_1" '.$voting_disabled_class.'><input type="radio" name="survey_date" id="survey_date_1" value="1"'.($date==1?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="survey_date_0" '.$voting_disabled_class.'><input type="radio" name="survey_date" id="survey_date_0" value="0"'.($date==0?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label><br class="clr"/>';
echo '</fieldset>';
@ -1410,17 +1451,24 @@ class SurveyAdminSettings {
echo '<fieldset>';
echo '<legend>'.$lang['srv_sledenje_ip_title'].'</legend>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_ip'].':</label></span> <label for="survey_ip_1"><input type="radio" name="survey_ip" id="survey_ip_1" value="1"'.($ip==1?' checked':'').'>'.$lang['no'].'</label> <label for="survey_ip_0"><input type="radio" name="survey_ip" id="survey_ip_0" value="0"'.($ip==0?' checked':'').'>'.$lang['yes'].'</label>';
if($ip == 0 && $ip_show != 1)
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_ip'].':</label></span>';
echo ' <label for="survey_ip_1" '.$voting_disabled_class.'><input type="radio" name="survey_ip" id="survey_ip_1" value="1"'.($ip==1?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="survey_ip_0" '.$voting_disabled_class.'><input type="radio" name="survey_ip" id="survey_ip_0" value="0"'.($ip==0?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label>';
if($ip == 0 && $ip_show != 1)
echo '<div class="spaceLeft floatRight red" style="display:inline; width:520px;">'.$lang['srv_sledenje_ip_alert'].'</div>';
echo '<br class="clr"/>';
if($ip == 0 && ($admin_type == 0 || $admin_type == 1)){
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_show_ip'].':</label></span> <label for="survey_show_ip_0"><input type="radio" name="survey_show_ip" id="survey_show_ip_0" value="0"'.($ip_show==0?' checked':'').'>'.$lang['no'].'</label> <label for="survey_show_ip_1"><input type="radio" name="survey_show_ip" id="survey_show_ip_1" value="1"'.($ip_show==1?' checked':'').'>'.$lang['yes'].'</label>';
if($ip_show == 1)
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_show_ip'].':</label></span>';
echo ' <label for="survey_show_ip_0" '.$voting_disabled_class.'><input type="radio" name="survey_show_ip" id="survey_show_ip_0" value="0"'.($ip_show==0?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="survey_show_ip_1" '.$voting_disabled_class.'><input type="radio" name="survey_show_ip" id="survey_show_ip_1" value="1"'.($ip_show==1?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label>';
if($ip_show == 1)
echo '<div class="spaceLeft floatRight red" style="display:inline; width:520px;">'.$lang['srv_show_ip_alert'].'</div>';
}
@ -1433,9 +1481,12 @@ class SurveyAdminSettings {
echo '<fieldset class="wide">';
echo '<legend>'.$lang['srv_sledenje_identifikatorji_title'].' '.Help::display('srv_email_with_data').'</legend>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_identifikatorji'].':</label></span> <label for="show_email_0"><input type="radio" name="show_email" id="show_email_0" value="0"'.($row['show_email']==0?' checked':'').'>'.$lang['no'].'</label> <label for="show_email_1"><input type="radio" name="show_email" id="show_email_1" value="1"'.($row['show_email']==1?' checked':'').'>'.$lang['yes'].'</label>';
if($row['show_email'] == 1)
echo '<div class="spaceLeft floatRight red" style="display:inline; width:520px;">'.$lang['srv_show_mail_with_data3'].'</div>';
echo '<span class="nastavitveSpan1 wide"><label>'.$lang['srv_sledenje_identifikatorji'].':</label></span>';
echo ' <label for="show_email_0" '.$voting_disabled_class.'><input type="radio" name="show_email" id="show_email_0" value="0"'.($row['show_email']==0?' checked':'').' '.$voting_disabled.'>'.$lang['no'].'</label>';
echo ' <label for="show_email_1" '.$voting_disabled_class.'><input type="radio" name="show_email" id="show_email_1" value="1"'.($row['show_email']==1?' checked':'').' '.$voting_disabled.'>'.$lang['yes'].'</label>';
if($row['show_email'] == 1)
echo '<div class="spaceLeft floatRight red" style="display:inline; width:520px;">'.$lang['srv_show_mail_with_data3'].'</div>';
echo '</fieldset>';
}
@ -2732,94 +2783,45 @@ class SurveyAdminSettings {
echo ' <fieldset>'. "\n";
echo ' <legend>' . $lang['srv_alert_prejemnik'] . '</legend>'. "\n";
// Vklop/izklop obvescanja lahko naredi samo admin ali manager
if(true /*$admin_type == 0 || $admin_type == 1 || (isset($app_settings['commercial_packages']) && $app_settings['commercial_packages'] == true)*/){
// respondent - ne prikazemo ce gre za glasovanje
if($rowS['survey_type'] != 0){
echo '<p>';
echo '<input type="checkbox" name="alert_finish_respondent" id="alert_finish_respondent" value="1" onChange="change_alert_respondent(\'finish_respondent\', $(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;" ' . ($rowAlert['finish_respondent'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_respondent">';
$this->display_alert_label('finish_respondent',($rowAlert['finish_respondent'] == 1));
echo '</span>'. "\n";
// respondent - ne prikazemo ce gre za glasovanje oz. volitve
if($rowS['survey_type'] != 0 && !SurveyInfo::getInstance()->checkSurveyModule('voting')){
echo '<p>';
echo '<input type="checkbox" name="alert_finish_respondent" id="alert_finish_respondent" value="1" onChange="change_alert_respondent(\'finish_respondent\', $(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;" ' . ($rowAlert['finish_respondent'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_respondent">';
$this->display_alert_label('finish_respondent',($rowAlert['finish_respondent'] == 1));
echo '</span>'. "\n";
// Ce imamo vec prevodov omogocimo za vsak prevod svoj email
$this->display_alert_label('finish_respondent_language',($rowAlert['finish_respondent'] == 1));
echo '</p>';
}
//respondent iz cms
echo '<p><input type="checkbox" name="alert_finish_respondent_cms" id="alert_finish_respondent_cms" value="1" onChange="change_alert_respondent(\'finish_respondent_cms\', $(this)); chnage_alert_instruction($(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;" ' . ($rowAlert['finish_respondent_cms'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_respondent_cms">';
$this->display_alert_label('finish_respondent_cms',($rowAlert['finish_respondent_cms'] == 1));
echo '</span></p>'. "\n";
// Ce imamo vec prevodov omogocimo za vsak prevod svoj email
$this->display_alert_label('finish_respondent_language',($rowAlert['finish_respondent'] == 1));
echo '</p>';
}
// avtor ankete oz osebe z dostopom
//echo '<p><input type="checkbox" name="alert_finish_author" id="alert_finish_author" value="1" onChange="change_alert_respondent(\'finish_author\', $(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;"' . ($rowAlert['finish_author'] == 1 ? ' checked' : '') . '>';
echo '<p><input type="checkbox" name="alert_finish_author" id="alert_finish_author" value="1" onChange="change_alert_respondent(\'finish_author\', $(this));"' . ($rowAlert['finish_author'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_author">';
$this->display_alert_label('finish_author',($rowAlert['finish_author'] == 1));
echo '</span></p>';
// respondent iz cms ne prikazemo ce gre za volitve
if(!SurveyInfo::getInstance()->checkSurveyModule('voting')){
echo '<p><input type="checkbox" name="alert_finish_respondent_cms" id="alert_finish_respondent_cms" value="1" onChange="change_alert_respondent(\'finish_respondent_cms\', $(this)); chnage_alert_instruction($(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;" ' . ($rowAlert['finish_respondent_cms'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_respondent_cms">';
$this->display_alert_label('finish_respondent_cms',($rowAlert['finish_respondent_cms'] == 1));
echo '</span></p>'. "\n";
}
// posebej navedeni maili
echo '<p><input type="checkbox" name="alert_finish_other" id="alert_finish_other" value="1"' . (($rowAlert['finish_other'] == 1 || ($rowAlert['finish_other_emails'] && $rowAlert['finish_other'] != 0)) ? ' checked' : '') . ' onchange="toggleStatusAlertOtherCheckbox(\'finish_other\'); if ( ! $(this).attr(\'checked\') ) { $(\'form[name=alertanketa_' . $anketa . ']\').submit(); }"><label for="alert_finish_other">' . $lang['email_prejemniki'] . $lang['email_one_per_line'] . '</label>';
echo ' <a href="#" onclick="alert_custom(\'other\', \'0\'); return false;" title="'.$lang['srv_alert_custom'].'"><span class="faicon text_file_small"></span></a>';
echo ' <a href="#" onclick="alert_edit_if(\'4\'); return false;"><span class="faicon if_add" '.($rowAlert['finish_other_if']==0?'style=""':'').'></span></a> ';
if ($rowAlert['finish_other_if']>0) { if ($b==null) $b = new Branching($this->anketa); $b->conditions_display($rowAlert['finish_other_if']); }
echo '</p>';
// avtor ankete oz osebe z dostopom
//echo '<p><input type="checkbox" name="alert_finish_author" id="alert_finish_author" value="1" onChange="change_alert_respondent(\'finish_author\', $(this)); $(\'form[name=alertanketa_' . $anketa . ']\').submit(); return false;"' . ($rowAlert['finish_author'] == 1 ? ' checked' : '') . '>';
echo '<p><input type="checkbox" name="alert_finish_author" id="alert_finish_author" value="1" onChange="change_alert_respondent(\'finish_author\', $(this));"' . ($rowAlert['finish_author'] == 1 ? ' checked' : '') . '>';
echo '<span id="label_alert_finish_author">';
$this->display_alert_label('finish_author',($rowAlert['finish_author'] == 1));
echo '</span></p>';
echo '<p id="alert_holder_finish_other_emails" '.($rowAlert['finish_other'] == 0 ? 'class="displayNone"' : '' ).'>';
echo '<label for="alert_finish_other_emails">' . $lang['email'] . ':</label>' .
'<textarea name="alert_finish_other_emails" id="alert_finish_other_emails" style="height:100px" onblur="$(\'form[name=alertanketa_' . $anketa . ']\').submit();">' . $rowAlert['finish_other_emails'] . '</textarea>' .
'</p>';
}
// Ostali samo vidijo kaj je vklopljeno
else{
// Text z obvestilom in linkom na cenik/obrazec za vklop nastavitev
echo '<p>'.$lang['srv_alert_turnOn_text'].'</p>';
// posebej navedeni maili
echo '<p><input type="checkbox" name="alert_finish_other" id="alert_finish_other" value="1"' . (($rowAlert['finish_other'] == 1 || ($rowAlert['finish_other_emails'] && $rowAlert['finish_other'] != 0)) ? ' checked' : '') . ' onchange="toggleStatusAlertOtherCheckbox(\'finish_other\'); if ( ! $(this).attr(\'checked\') ) { $(\'form[name=alertanketa_' . $anketa . ']\').submit(); }"><label for="alert_finish_other">' . $lang['email_prejemniki'] . $lang['email_one_per_line'] . '</label>';
echo ' <a href="#" onclick="alert_custom(\'other\', \'0\'); return false;" title="'.$lang['srv_alert_custom'].'"><span class="faicon text_file_small"></span></a>';
echo ' <a href="#" onclick="alert_edit_if(\'4\'); return false;"><span class="faicon if_add" '.($rowAlert['finish_other_if']==0?'style=""':'').'></span></a> ';
if ($rowAlert['finish_other_if']>0) { if ($b==null) $b = new Branching($this->anketa); $b->conditions_display($rowAlert['finish_other_if']); }
echo '</p>';
// respondent - ne prikazemo ce gre za glasovanje
if($rowS['survey_type'] != 0){
echo '<p>';
echo '<input type="checkbox" ' . ($rowAlert['finish_respondent'] == 1 ? ' checked' : '') . ' disabled="disabled">';
$value = $rowAlert['finish_respondent'] == 1 ? 1 : 0;
echo '<input type="hidden" name="alert_finish_respondent" value="'.$value.'">';
echo '<span id="label_alert_finish_respondent">';
$this->display_alert_label('finish_respondent',($rowAlert['finish_respondent'] == 1));
echo '</span>'. "\n";
// Ce imamo vec prevodov omogocimo za vsak prevod svoj email
$this->display_alert_label('finish_respondent_language',($rowAlert['finish_respondent'] == 1));
echo '</p>';
}
//respondent iz cms
echo '<p><input type="checkbox" ' . ($rowAlert['finish_respondent_cms'] == 1 ? ' checked' : '') . ' disabled="disabled">';
$value = $rowAlert['finish_respondent_cms'] == 1 ? 1 : 0;
echo '<input type="hidden" name="alert_finish_respondent_cms" value="'.$value.'">';
echo '<span id="label_alert_finish_respondent_cms">';
$this->display_alert_label('finish_respondent_cms',($rowAlert['finish_respondent_cms'] == 1));
echo '</span></p>'. "\n";
// avtor ankete oz osebe z dostopom
echo '<p><input type="checkbox" ' . ($rowAlert['finish_author'] == 1 ? ' checked' : '') . ' disabled="disabled">';
$value = $rowAlert['finish_author'] == 1 ? 1 : 0;
echo '<input type="hidden" name="alert_finish_author" value="'.$value.'">';
echo '<span id="label_alert_finish_author">';
$this->display_alert_label('finish_author',($rowAlert['finish_author'] == 1));
echo '</span></p>';
// posebej navedeni maili
echo '<p><input type="checkbox" ' . (($rowAlert['finish_other'] == 1 || ($rowAlert['finish_other_emails'] && $rowAlert['finish_other'] != 0)) ? ' checked' : '') . ' disabled="disabled"><label for="alert_finish_other">' . $lang['email_prejemniki'] .'</label>'. $lang['email_one_per_line'];
$value = $rowAlert['finish_other'] == 1 || ($rowAlert['finish_other_emails'] && $rowAlert['finish_other'] != 0) ? 1 : 0;
echo '<input type="hidden" name="alert_finish_other" value="'.$value.'">';
echo ' <a href="#" onclick="alert_custom(\'other\', \'0\'); return false;" title="'.$lang['srv_alert_custom'].'"><span class="faicon text_file_small"></span></a>';
echo ' <a href="#" onclick="alert_edit_if(\'4\'); return false;"><span class="faicon if_add" '.($rowAlert['finish_other_if']==0?'style=""':'').'></span></a> ';
if ($rowAlert['finish_other_if']>0) { if ($b==null) $b = new Branching($this->anketa); $b->conditions_display($rowAlert['finish_other_if']); }
echo '</p>';
echo '<p id="alert_holder_finish_other_emails" '.($rowAlert['finish_other'] == 0 ? 'class="displayNone"' : '' ).'>';
echo '<label for="alert_finish_other_emails">' . $lang['email'] . ':</label>' .
'<textarea name="alert_finish_other_emails" id="alert_finish_other_emails" style="height:100px" onblur="$(\'form[name=alertanketa_' . $anketa . ']\').submit();">' . $rowAlert['finish_other_emails'] . '</textarea>' .
'</p>';
}
echo '<p id="alert_holder_finish_other_emails" '.($rowAlert['finish_other'] == 0 ? 'class="displayNone"' : '' ).'>';
echo '<label for="alert_finish_other_emails">' . $lang['email'] . ':</label>' .
'<textarea name="alert_finish_other_emails" id="alert_finish_other_emails" style="height:100px" onblur="$(\'form[name=alertanketa_' . $anketa . ']\').submit();">' . $rowAlert['finish_other_emails'] . '</textarea>' .
'</p>';
echo '</fieldset>';
@ -8697,6 +8699,36 @@ class SurveyAdminSettings {
}
echo '</div>';
}
elseif ($_GET['a'] == 'voting'){
// Ce so vabila ze vklopljena ne pustimo vklopa
if(isset($modules['voting']) || (!isset($modules['voting']) && SurveyInfo::getInstance()->checkSurveyModule('email'))){
$disabled = ' disabled="disabled"';
$css_disabled = ' gray';
}
echo '<fieldset><legend>'.$lang['srv_voting'].'</legend>';
echo '<label class="strong'.$css_disabled.'"><input type="checkbox" id="advanced_module_voting" name="voting" value="1" '. (isset($modules['voting']) ? ' checked="checked"' : '').$disabled.' onChange="toggleAdvancedModule(\'voting\');" />';
echo $lang['srv_vrsta_survey_type_18'] . '</label>';
echo '<br><i>'.$lang['srv_voting_info'].'</i>';
// Opozorilo, da so vabila ze vklopljena in zato modula ni mogoce vklopiti
if(!isset($modules['voting']) && SurveyInfo::getInstance()->checkSurveyModule('email')){
echo '<br><br><i class="red bold">'.$lang['srv_voting_info_error'].'</i><br>';
}
echo '</fieldset>';
echo '<br />';
echo '<div id="globalSettingsInner">';
if(isset($modules['voting'])){
$sv = new SurveyVoting($this->anketa);
$sv->displaySettings();
}
echo '</div>';
}
elseif ($_GET['a'] == 'advanced_paradata'){
echo '<fieldset><legend>'.$lang['srv_advanced_paradata'].'</legend>';
@ -9268,6 +9300,8 @@ class SurveyAdminSettings {
echo '<a href="#" onClick="generate_API_key(); return false;">'.$lang['srv_api_auth2'].'</a>';
echo '<br /><br />';
echo $lang['additional_info_api'];
echo '</fieldset>';
@ -9475,10 +9509,9 @@ class SurveyAdminSettings {
// Save gumb - ce ni AAI
if(!$aai_instalacija){
echo ' <div class="buttonwrapper floatLeft spaceLeft"><a class="ovalbutton ovalbutton_gray" href="#" onclick="izbrisi1kaRacun();"><span>'.$lang['delete_account'] . '</span></a></div>';
echo ' <div class="buttonwrapper floatLeft spaceLeft"><a class="ovalbutton ovalbutton_orange btn_savesettings" href="#" onclick="save1kaRacunSettings();"><span>'.$lang['edit1337'] . '</span></a></div>';
echo ' <div class="buttonwrapper floatLeft spaceLeft"><a class="ovalbutton ovalbutton_orange" href="#" onclick="izbrisi1kaRacun();"><span>'.$lang['delete_account'] . '</span></a></div>';
echo '<span class="clr"></span>';
// div za prikaz uspešnosti shranjevanja

View File

@ -1610,6 +1610,11 @@ class Common {
$help_url = 'https://www.1ka.si/d/en/help/user-guide/edit/settings';
}
// Moje ankete - narocila
else if ($_GET['a'] == 'narocila') {
$help_url = 'https://www.1ka.si/d/en/services';
}
// Ostale default podstrani
else {
switch ($podstran) {
@ -2027,6 +2032,12 @@ class Common {
$help_url = 'https://www.1ka.si/d/sl/pomoc/vodic-za-uporabnike/urejanje/vprasalnik';
}
// Moje ankete - narocila
else if ($_GET['a'] == 'narocila') {
$help_url = 'https://www.1ka.si/d/en/services';
$help_url = 'https://www.1ka.si/d/sl/cenik';
}
// Ostale default podstrani
else {
switch ($podstran) {

View File

@ -1918,6 +1918,7 @@ class GDPR{
// PODATKI O POOBLAŠČENI OSEBI ZA VARSTVO OSEBNIH PODATKOV
$result[4]['heading'] = $lang['srv_gdpr_survey_gdpr_about_text5_1'];
// DPO
if($gdpr_survey_settings['authorized'] == ''){
// Zasebnik brez DPO
@ -1941,18 +1942,42 @@ class GDPR{
}
// Ce ga ni vnesel, je DPO mail enak splosnemu mailu oz. mailu avtorja ankete
else{
if($gdpr_settings['email'] != '')
if($gdpr_settings['email'] != ''){
$gdpr_authorized = $gdpr_settings['email'];
else
}
else{
$gdpr_authorized = User::getInstance()->primaryEmail();
}
}
}
}
else{
$gdpr_authorized = $gdpr_survey_settings['authorized'];
}
// Kontaktni email
if($gdpr_survey_settings['contact_email'] == ''){
$user_settings = self::getUserSettings();
// Kontaktni mail je enak mailu, ki ga je vnesel v splosnih nastavitvah
if($user_settings['email'] != ''){
$gdpr_contact_email = $user_settings['email'];
}
// Ce ga ni vnesel, je kontaktni mail enak mailu avtorja ankete
else{
$gdpr_contact_email = User::getInstance()->primaryEmail();
}
}
else{
$gdpr_contact_email = $gdpr_survey_settings['contact_email'];
}
$result[4]['text'][0] = $lang['srv_gdpr_survey_gdpr_about_text5_2'].' <strong>'.$gdpr_authorized.'</strong>';
// Ce mail ni isti izpisemo se avtorja
if($gdpr_authorized != $gdpr_contact_email)
$result[4]['text'][1] = $lang['srv_gdpr_survey_gdpr_about_text5_2_2'].' <strong>'.$gdpr_contact_email.'</strong>';
// ZAVAROVANJE PODATKOV
$result[5]['heading'] = $lang['srv_gdpr_survey_gdpr_about_text6_1'];

View File

@ -288,32 +288,32 @@ class Library {
// Anketa ze obstaja v javni knjiznici - jo pobrisemo
if (mysqli_num_rows($sqlPublic) > 0) {
echo ' <a href="/" onclick="surveyList_knjiznica_new(\''.$row1['id'].'\'); return false;" title="'.$lang['srv_ank_lib_off'].'">';
echo ' <span class="sprites faicon remove icon-orange small"></span> '.$lang['srv_ank_lib_off'];
echo ' <span class="sprites faicon remove icon-orange small"></span> <span class="library_item_setting_text">'.$lang['srv_ank_lib_off'].'</span>';
echo ' </a>';
}
// Anketo dodamo v javno knjiznico
else{
echo ' <a href="/" onclick="surveyList_knjiznica_new(\''.$row1['id'].'\'); return false;" title="'.$lang['srv_ank_lib_on'].'">';
echo ' <span class="sprites faicon library"></span> '.$lang['srv_ank_lib_on'];
echo ' <span class="sprites faicon library"></span> <span class="library_item_setting_text">'.$lang['srv_ank_lib_on'].'</span>';
echo ' </a>';
}
}
// nova anketa kot template iz knjiznice
echo '<a href="/" onclick="anketa_copy(\''.$row1['id'].'\'); return false;" title="'.$lang['srv_library_use_survey'].'"><span class="faicon copy"></span> '.$lang['srv_anketacopy'].'</a> ';
echo '<a href="'.$site_url.'main/survey/'.(!SurveyInfo::getInstance()->checkSurveyModule('uporabnost') ? 'index' : 'uporabnost').'.php?anketa='.$row1['id'].'&preview=on" target="_blank" title="'.$lang['srv_poglejanketo'].'"><span class="faicon preview"></span> '.$lang['srv_poglejanketo2'].'</a> ';
echo '<a href="/" onclick="anketa_copy(\''.$row1['id'].'\'); return false;" title="'.$lang['srv_library_use_survey'].'"><span class="faicon copy"></span> <span class="library_item_setting_text">'.$lang['srv_anketacopy'].'</span></a> ';
echo '<a href="'.$site_url.'main/survey/'.(!SurveyInfo::getInstance()->checkSurveyModule('uporabnost') ? 'index' : 'uporabnost').'.php?anketa='.$row1['id'].'&preview=on" target="_blank" title="'.$lang['srv_poglejanketo'].'"><span class="faicon preview"></span> <span class="library_item_setting_text">'.$lang['srv_poglejanketo2'].'</span></a> ';
// brisi iz knjiznice
if ($admin_type == 0) {
echo ' <a href="index.php?anketa='.$row1['id'].'" title="'.$lang['srv_editirajanketo'].'"><span class="faicon edit"></span> '.$lang['edit3'].'</a>';
echo ' <a href="index.php?anketa='.$row1['id'].'" title="'.$lang['srv_editirajanketo'].'"><span class="faicon edit"></span> <span class="library_item_setting_text">'.$lang['edit3'].'</span></a>';
}
if ($admin_type==0 && $this->tab==2) {// sistemska
echo ' <a href="/" onclick="library_del_anketa(\''.$row1['id'].'\', \''.$lang['srv_anketadeletelibrary_4'].'\',\''.$this->tab.'\',\''.$this->prva.'\'); return false;" title="'.$lang['srv_ank_lib_off'].'"><span class="sprites faicon remove icon-orange small"></span> '.$lang['hour_remove'].'</a>';
echo ' <a href="/" onclick="library_del_anketa(\''.$row1['id'].'\', \''.$lang['srv_anketadeletelibrary_4'].'\',\''.$this->tab.'\',\''.$this->prva.'\'); return false;" title="'.$lang['srv_ank_lib_off'].'"><span class="sprites faicon remove icon-orange small"></span> <span class="library_item_setting_text">'.$lang['hour_remove'].'</span></a>';
}
if($this->tab==3){// moja knjiznica
echo ' <a href="/" onclick="library_del_myanketa(\''.$row1['id'].'\', \''.$lang['srv_anketadeletelibrary_3'].'\',\''.$this->tab.'\',\''.$this->prva.'\'); return false;" title="'.$lang['srv_ank_mylib_off'].'"><span class="faicon remove icon-orange small"></span> '.$lang['hour_remove'].'</a>';
echo ' <a href="/" onclick="library_del_myanketa(\''.$row1['id'].'\', \''.$lang['srv_anketadeletelibrary_3'].'\',\''.$this->tab.'\',\''.$this->prva.'\'); return false;" title="'.$lang['srv_ank_mylib_off'].'"><span class="faicon remove icon-orange small"></span> <span class="library_item_setting_text">'.$lang['hour_remove'].'</span></a>';
}
}
else {

View File

@ -485,8 +485,7 @@ class SurveyCopy {
'edit_time' => "NOW()",
'folder' => "'1'",
'forum' => "'0'",
'thread' => "'0'",
'old_email_style' => "'0'");
'thread' => "'0'");
# user_id ni enak če je anketa na drugem strežniku zato v tem primeru damo -1 da na drugem strežniku vemo da je to kopija od drugod
if (self::$destSite != 0) {

View File

@ -725,6 +725,11 @@ class SurveyInfo
$module_availible = false;
break;
case 'voting':
if(!$userAccess->checkUserAccess($what='voting'))
$module_availible = false;
break;
case 'social_network':
if(!$userAccess->checkUserAccess($what='social_network'))
$module_availible = false;
@ -792,6 +797,11 @@ class SurveyInfo
return false;
break;
case 'voting':
if(!$userAccess->checkUserAccess($what='voting'))
return false;
break;
case 'social_network':
if(!$userAccess->checkUserAccess($what='social_network'))
return false;

View File

@ -168,7 +168,8 @@ class SurveyList {
// Ali prikazujemo folderje ali ne
$userAccess = UserAccess::getInstance($global_user_id);
if($userAccess->checkUserAccess('my_survey_folders'))
$detect = New Mobile_Detect();
if($userAccess->checkUserAccess('my_survey_folders') && !$detect->isMobile() && !$detect->isTablet())
$this->show_folders = UserSetting::getInstance()->getUserSetting('survey_list_folders');
# koliko zapisov prikazujemo na stran
@ -1505,7 +1506,6 @@ class SurveyList {
echo ' <span class="spaceRight" style="vertical-align:0px;">'.$folder['naslov'].'</span>';
// Ikona za dodajanje folderja
//echo ' <a href="#" title="'.$lang['srv_mySurvey_create_folder'].'" onClick="create_folder(\''.$folder['id'].'\'); return false;"><span class="sprites add_blue pointer" style="height: 16px;"></span></a>';
echo '</div>';
@ -1524,7 +1524,7 @@ class SurveyList {
echo ' <span class="faicon folder icon-blue"></span> <span id="folder_title_text_'.$folder['id'].'" class="folder_title_text spaceRight" style="vertical-align:0px;"><a href="#" onClick="edit_title_folder(\''.$folder['id'].'\'); return false;">'.$folder['naslov'].'</a></span>';
// Ikona za dodajanje folderja
echo ' <a href="#" title="'.$lang['srv_mySurvey_create_folder'].'" onClick="create_folder(\''.$folder['id'].'\'); return false;"><span class="faicon add icon-blue pointer map_holder_control"></span></a>';
echo ' <a href="#" title="'.$lang['srv_mySurvey_create_subfolder'].'" onClick="create_folder(\''.$folder['id'].'\'); return false;"><span class="faicon add icon-blue pointer map_holder_control"></span></a>';
// Ikona za brisanje folderja
echo ' <a href="#" title="'.$lang['srv_mySurvey_delete_folder'].'" onClick="delete_folder(\''.$folder['id'].'\'); return false;"><span class="faicon remove icon-orange pointer map_holder_control"></span></a>';
@ -1541,7 +1541,7 @@ class SurveyList {
$this->displayNewSurveyList($folder['id']);
// Izpisemo se vse folderje znotraj trenutnega folderja
$sql = sisplet_query("SELECT * FROM srv_mysurvey_folder WHERE usr_id='$global_user_id' AND parent='".$folder['id']."' ORDER BY naslov ASC");
$sql = sisplet_query("SELECT * FROM srv_mysurvey_folder WHERE usr_id='$global_user_id' AND parent='".$folder['id']."' ORDER BY id DESC");
if(mysqli_num_rows($sql) > 0) {
while($row = mysqli_fetch_array($sql)){
echo '<div id="folder_holder_'.$row['id'].'" class="folder_holder">';
@ -2934,6 +2934,13 @@ class SurveyList {
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET open='1' WHERE id='".$parent."' AND usr_id='$global_user_id'");
$sql = sisplet_query("INSERT INTO srv_mysurvey_folder (usr_id, parent, naslov) VALUES ('".$global_user_id."','".$parent."', '".$lang['srv_mySurvey_new_folder']."')");
$new_folder_id = mysqli_insert_id($GLOBALS['connect_db']);
$SL = new SurveyList();
$SL->getSurveys();
echo '<input type="hidden" id="new_added_folder" value="'.$new_folder_id.'">';
}
// Pobrisali smo obstojec folder

View File

@ -227,6 +227,9 @@ class SurveyPostProcess {
} elseif ($_GET['a'] == 'edit_data_question_save') {
$this->ajax_edit_data_question_save(0);
} elseif ($_GET['a'] == 'edit_data_question_upload_delete') {
$this->ajax_edit_data_question_upload_delete();
} elseif ($_GET['a'] == 'get_inline_edit') {
$this->ajax_get_inline_edit();
@ -256,10 +259,7 @@ class SurveyPostProcess {
} elseif ($_GET['a'] == 'coding_filter') {
$this->ajax_coding_filter();
}
}
/**
@ -548,6 +548,25 @@ class SurveyPostProcess {
header("Location: index.php?anketa=".$this->anketa."&a=data&m=edit");*/
}
// Pobrisemo upload datoteke v urejanju podatkov
function ajax_edit_data_question_upload_delete () {
Common::updateEditStamp();
$spr_id = $_POST['spr_id'];
$usr_id = $_POST['usr_id'];
$code = $_POST['code'];
$s = sisplet_query("DELETE FROM srv_data_upload WHERE ank_id='".$this->anketa."' AND usr_id='".$usr_id."' AND code='".$code."'");
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
$s2 = sisplet_query("DELETE FROM srv_data_text".$this->db_table." WHERE spr_id='".$spr_id."' AND usr_id='".$usr_id."'");
if (!$s2) echo mysqli_error($GLOBALS['connect_db']);
$this->ajax_edit_data_question();
self::forceRefreshData($this->anketa);
}
function ajax_get_inline_edit () {
$spr_id = $_POST['spr_id'];

View File

@ -929,6 +929,10 @@ class SurveyStatistic {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_6'];
$prefix = ', ';
}
if (isset($modules['voting'])) {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_18'];
$prefix = ', ';
}
if (isset($modules['phone'])) {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_7'];
$prefix = ', ';

View File

@ -1,4 +1,5 @@
<?php
/** @author: Gorazd Veselič
*
* @Desc: za upravljanje z profili statusov za podatke in izvoze
@ -1112,22 +1113,29 @@ class SurveyStatusProfiles
$values = self::getProfilesValues();
$collect_all_status = $values['all_status'];
#če ni ustreznih uporabnikov je privzeto vsi
// če ni ustreznih uporabnikov je privzeto vsi
if (self::$allValidCount == 0) {
$pid = 1;
$pid = 1;
$disabledValid = ' disabled="disabled"';
$disabledGray = ' gray';
} else if (self::$allValidCount > 0 && $collect_all_status == 0) {
if ( $pid == 1 ) {
}
else if (self::$allValidCount > 0 && $collect_all_status == 0) {
/*if ( $pid == 1 ) {
#$pid = 2;
$pid = self::$survayDefaultUstrezni;
}
$disabledAll = ' disabled="disabled"';
$disabledAllGray = ' gray';
}*/
if((int)self::$allUserCount > 1000){
$disabledAll = ' disabled="disabled"';
$disabledAllGray = ' gray';
}
}
echo '<label class="middle'.$disabledAllGray.'">';
echo '<input type="radio" id="statusAllUnit" name="statusOnlyValid" value="1"'.($pid == 1?' checked="checked"':'').$disabledAll.' onchange="changeOnlyValidRadio();" autocomplete="off">';
echo $lang['srv_data_all_units'].'&nbsp;('.(int)self::$allUserCount.')';;
echo $lang['srv_data_all_units'].'&nbsp;('.(int)self::$allUserCount.')';
echo '</label>';
echo '&nbsp;';
@ -1136,11 +1144,11 @@ class SurveyStatusProfiles
echo '<input type="radio" id="statusValidUnit" name="statusOnlyValid" value="2"'.($pid==2?' checked="checked"':'').$disabledValid.' onchange="changeOnlyValidRadio();" autocomplete="off">';
echo $lang['srv_data_valid_units'].'&nbsp;('.(int)self::$allValidCount.')';
echo '</label>';
} else {
}
else {
echo '<label class="middle'.$disabledGray .'">';
echo '<input type="radio" id="statusValidUnit" name="statusOnlyValid" value="3"'.($pid==3?' checked="checked"':'').$disabledValid.' onchange="changeOnlyValidRadio();" autocomplete="off">';
echo $lang['srv_data_finished_units'].'&nbsp;('.(int)self::$allValidCount.')';
}
echo '&nbsp;'.Help::display('srv_data_only_valid');

View File

@ -1130,8 +1130,6 @@ class Vprasanje {
$this->edit_stolpci();
if($row['tip'] == 2) {
//$this->edit_checkboxhide(); // TODO: a se to sploh kje uporablja? :)
//$this->edit_checkbox_limit();
$this->edit_checkbox_max_limit();
$this->edit_checkbox_min_limit();
}
@ -1139,15 +1137,11 @@ class Vprasanje {
if($row['tip'] <= 3)
$this->edit_stat();
/*if ($row['tip'] == 1 || $row['tip'] == 2 || $row['tip'] == 3 || $row['tip'] == 6)
$this->edit_skala();*/
if ($row['tip'] == 6)
$this->edit_grid_dynamic();
if ($row['tip'] == 1 || $row['tip'] == 6) {
$this->edit_onchange_submit();
//$this->edit_hidden_default();
}
if ($row['tip'] == 1 || $row['tip'] == 3)
@ -1166,9 +1160,6 @@ class Vprasanje {
if ($row['tip'] == 21)
$this->edit_show_prevAnswers();
/*if (in_array($row['tip'], array(1,2,3,6,16,19,20,24)))
$this->edit_other_field();*/
echo '</fieldset>';
// Posebni tipi text vprasanja (signature, captcha, upload, email)
@ -1886,9 +1877,6 @@ class Vprasanje {
#'email','ime','priimek','telefon','naziv','drugo'
echo '<p><span class="title">'.$lang['srv_label'].':</span><span class="content"><input type="text" name="label" value="'.$row['label'].'" maxlength="80" /></span></p>';
//echo '<p><span class="title">'.$lang['srv_datapiping'].': '.Help::display('DataPiping').'</span> '.$lang['srv_datapiping_txt'].'</p>';
}
/**
@ -4326,8 +4314,13 @@ class Vprasanje {
echo '<span class="content"><select id="presetValue" name="presetValue" style="width:120px; text-overflow:ellipsis;">';
echo ' <option value="0">'.$lang['no'].'</option>';
while($rowV = mysqli_fetch_array($sqlV)){
$naslov = (strlen($rowV['naslov']) > 20) ? substr($rowV['naslov'],0,20).'...' : $rowV['naslov'];
echo ' <option value="'.$rowV['id'].'" '.($presetValue == $rowV['id'] ? ' selected="selected"' : '').'>'.$rowV['variable'].' ('.$naslov.')</option>';
$naslov = (strlen($rowV['naslov']) > 20) ? substr($rowV['naslov'], 0, 20).'...' : $rowV['naslov'];
$naslov = strip_tags($naslov);
$naslov = ($naslov == '') ? '' : '('.$naslov.')';
echo ' <option value="'.$rowV['id'].'" '.($presetValue == $rowV['id'] ? ' selected="selected"' : '').'>'.$rowV['variable'].' '.$naslov.'</option>';
}
echo '</select></span>';

View File

@ -0,0 +1,746 @@
<?php
/*
* Class, ki skrbi za mobile izris admin vmesnika
*
*/
class MobileSurveyAdmin{
var $surveyAdminClass;
function __construct($surveyAdminClass){
global $site_url;
$this->surveyAdminClass = $surveyAdminClass;
}
// Izris glave z menijem - znotraj ankete
public function displayHeaderMobile(){
echo '<div class="mobile_header '.($this->surveyAdminClass->anketa > 0 ? 'survey_edit' : 'survey_list').'">';
// Ikona za meni
$this->displayMenuIcon();
// Meni
$this->displayMenu();
// Naslov ankete
if($this->surveyAdminClass->anketa > 0){
$this->displaySurveyTitle();
}
// Logo - enak kot na desktopu
else{
$this->displayLogo();
}
// Se inicializiramo zeynep jquery mobile menu
echo '<script> mobile_init(); </script>';
echo '</div>';
}
// Prikazemo mobile logo
private function displayLogo(){
global $lang;
global $site_url;
echo '<div class="mobile_logo">';
$logo_class = ($lang['id'] != "1") ? ' class="english"' : '';
$su = ($site_url == "https://www.1ka.si/" && $lang['id'] != "1") ? "https://www.1ka.si/d/en/" : $site_url;
echo '<a href="' . $su . '" title="' . $lang['srv_1cs'] . '" id="enka_logo" ' . $logo_class . '></a>';
echo '</div>';
}
private function displaySurveyTitle(){
SurveyInfo::getInstance()->SurveyInit($this->surveyAdminClass->anketa);
$row = SurveyInfo::getInstance()->getSurveyRow();
echo '<div class="mobile_survey_title">'.$row['naslov'].'</div>';
}
private function displayMenuIcon(){
echo '<div class="mobile_menu_icon mobile_menu_open">';
echo ' <span class="faicon bars"></span>';
echo '</div>';
echo '<div class="mobile_menu_icon mobile_menu_close">';
echo ' <span>✕</span>';
echo '</div>';
}
// Izris menija
private function displayMenu(){
echo '<div class="mobile_menu first" data-menu-name="first">';
// Izris uporabniških podatkov v dropdownu
$this->displayMenuUser();
// Meni znotraj ankete
if($this->surveyAdminClass->anketa > 0){
// Izris glavne navigacije v dropdownu
$this->displayMenuSurveyNavigation();
// Izris akcij za anketo (kopiraj, brisi...) v dropdownu
$this->displayMenuSurveyActions();
}
// Meni v mojih anketah
else{
$this->displayMenuMySurveysNavigation();
}
echo '</div>';
}
// Izris uporabniških podatkov v dropdownu
private function displayMenuUser(){
global $lang, $global_user_id, $site_url;
$sql = $this->surveyAdminClass->db_select_user($global_user_id);
$row = mysqli_fetch_array($sql);
$user_name = $row['name'] . ' ' . $row['surname'];
$user_name = (strlen($user_name) > 25) ? substr($user_name, 0, 25) . '...' : $user_name;
$user_email = '<br><span class="email">'.$row['email'].'</span>';
echo '<div class="mobile_menu_user">';
echo '<ul>';
echo ' <li class="has-submenu">';
echo ' <a href="#" data-submenu="submenu_user" title="'.$user_name.'"><span class="faicon arrow_back"></span>'.$user_name.$user_email.'</a>';
echo ' </li>';
// Podmeni
echo ' <div id="submenu_user" class="submenu">';
// Podmeni header
echo ' <div class="submenu-header" data-submenu-close="submenu_user">';
echo ' <a href="#"><span class="faicon arrow_back"></span></a>';
echo ' <label>'.$user_name.'</label>';
echo ' </div>';
// Podmeni vsebina
echo ' <div class="submenu_user_content">';
echo ' <div><a href="'.$site_url.'admin/survey/index.php?a=nastavitve&m=global_user_myProfile"><span class="faicon user"></span>' . $lang['edit_data'] . '</a></div>';
// Odjava na nov nacin preko frontend/api
echo ' <div><form name="odjava" id="form_odjava" method="post" action="'.$site_url.'frontend/api/api.php?action=logout">';
echo ' <span class="as_link" onClick="$(\'#form_odjava\').submit();"><span class="faicon logout"></span>' . $lang['logout'] . '</span>';
echo ' </form></div>';
echo ' </div>';
echo ' </div>';
echo '</ul>';
echo '</div>';
}
// Izris glavne navigacije v mojih anketah
private function displayMenuMySurveysNavigation(){
global $lang, $admin_type, $app_settings;
# naložimo razred z seznamom anket
$SL = new SurveyList();
$SLCount = $SL->countSurveys();
$SLCountPhone = $SL->countPhoneSurveys();
echo '<div class="mobile_menu_navigation">';
echo '<ul>';
// MOJE ANKETE
$this->displayMenuItem($lang['srv_pregledovanje'], $url='index.php?a=pregledovanje');
// TELEFONSKA ANKETA
if ($SLCountPhone > 0 && $admin_type != '0') {
$this->displayMenuItem($lang['srv_telephone_surveys'], $url='index.php?a=phoneSurveys');
}
// AKTIVNOST
if ($SLCount > 0 && $admin_type == 0) {
$submenu = array(
array(
'title' => $lang['srv_ankete'],
'url' => 'index.php?a=diagnostics'
),
array(
'title' => $lang['srv_weekly_diagnostics'],
'url' => 'index.php?a=diagnostics&t=time_span_daily'
),
array(
'title' => $lang['srv_monthly_diagnostics'],
'url' => 'index.php?a=diagnostics&t=time_span_monthly'
),
array(
'title' => $lang['srv_yearly_diagnostics'],
'url' => 'index.php?a=diagnostics&t=time_span_yearly'
),
array(
'title' => $lang['srv_all_diagnostics'],
'url' => 'index.php?a=diagnostics&t=time_span&uvoz=0&ustrezni=1&delnoustrezni=1&neustrezni=0'
),
array(
'title' => $lang['srv_metapodatki'],
'url' => 'index.php?a=diagnostics&t=paradata'
)
);
$this->displayMenuItemWithSubmenu($name='diagnostics', $lang['srv_diagnostics'], $submenu);
}
// UPORABNIKI
if ($admin_type <= 1) {
// Admini imajo pregled nad vsemi zavihki uporabnikov
if ($admin_type == 0) {
$submenu = array(
array(
'title' => $lang['n_users_list'],
'url' => 'index.php?a=diagnostics&t=uporabniki'
),
array(
'title' => $lang['n_users_list_all'],
'url' => 'index.php?a=diagnostics&t=uporabniki&m=all'
),
array(
'title' => $lang['n_deleted_users'],
'url' => 'index.php?a=diagnostics&t=uporabniki&m=izbrisani'
),
array(
'title' => $lang['n_unconfirmed_users'],
'url' => 'index.php?a=diagnostics&t=uporabniki&m=nepotrjeni'
),
array(
'title' => $lang['n_unsigned_users'],
'url' => 'index.php?a=diagnostics&t=uporabniki&m=odjavljeni'
),
array(
'title' => $lang['srv_hierarchy_users_access'],
'url' => 'index.php?a=diagnostics&t=uporabniki&m=sa-modul'
),
);
}
// Manegerji imajo samo osnovni pregled svojih uporabnikov
if ($admin_type == 1) {
$submenu = array(
array(
'title' => $lang['n_users_list'],
'url' => 'index.php?a=diagnostics&t=uporabniki'
)
);
}
$this->displayMenuItemWithSubmenu($name='uporabniki', $lang['hour_users'], $submenu);
}
// KNJIZNICA
$submenu = array(
array(
'title' => $lang['srv_javna_knjiznica'],
'url' => 'index.php?a=knjiznica'
),
array(
'title' => $lang['srv_moja_knjiznica'],
'url' => 'index.php?a=knjiznica&t=moje_ankete'
)
);
$this->displayMenuItemWithSubmenu($name='knjiznica', $lang['srv_library'], $submenu);
// NASTAVITVE
if ($admin_type == '0') {
$submenu = array(
array(
'title' => $lang['srv_settingsSystem'],
'url' => 'index.php?a=nastavitve&m=system'
),
array(
'title' => $lang['srv_testiranje_predvidenicas'],
'url' => 'index.php?a=nastavitve&m=predvidenicasi'
),
array(
'title' => $lang['srv_collectData'],
'url' => 'index.php?a=nastavitve&m=collectData'
),
array(
'title' => $lang['srv_nice_url'],
'url' => 'index.php?a=nastavitve&m=nice_links'
),
array(
'title' => $lang['srv_anketa_admin'],
'url' => 'index.php?a=nastavitve&m=anketa_admin'
),
array(
'title' => $lang['srv_anketa_deleted'],
'url' => 'index.php?a=nastavitve&m=anketa_deleted'
),
array(
'title' => $lang['srv_data_deleted'],
'url' => 'index.php?a=nastavitve&m=data_deleted'
),
array(
'title' => $lang['srv_user_settings'],
'url' => 'index.php?a=nastavitve&m=global_user_settings'
),
array(
'title' => $lang['edit_data'],
'url' => 'index.php?a=nastavitve&m=global_user_myProfile'
),
);
}
else{
$submenu = array(
array(
'title' => $lang['srv_user_settings'],
'url' => 'index.php?a=nastavitve&m=global_user_settings'
),
array(
'title' => $lang['edit_data'],
'url' => 'index.php?a=nastavitve&m=global_user_myProfile'
),
);
}
$this->displayMenuItemWithSubmenu($name='nastavitve', $lang['settings'], $submenu);
// NAROCILA
if($app_settings['commercial_packages']){
// placila - samo admini
if ($admin_type == '0') {
$submenu = array(
array(
'title' => $lang['srv_narocila_my'],
'url' => 'index.php?a=narocila'
),
array(
'title' => $lang['srv_placila'],
'url' => 'index.php?a=narocila&m=placila'
)
);
$this->displayMenuItemWithSubmenu($name='nastavitve', $lang['settings'], $submenu);
}
// moja narocila
else{
$this->displayMenuItem($lang['srv_narocila'], $url='index.php?a=narocila');
}
}
// GDPR
$request_counter = GDPR::countUserUnfinishedRequests();
$submenu = array(
array(
'title' => $lang['srv_gdpr_user_settings'],
'url' => 'index.php?a=gdpr'
),
array(
'title' => $lang['srv_gdpr_survey_list'],
'url' => 'index.php?a=gdpr&m=placila'
),
array(
'title' => $lang['srv_gdpr_dpa'],
'url' => 'index.php?a=gdpr'
),
array(
'title' => $lang['srv_gdpr_requests'].' ('.$request_counter.')',
'url' => 'index.php?a=gdpr&m=gdpr_requests'
)
);
// Vse zahteve za izbris - samo ADMINI
if($admin_type == '0'){
$submenu[] = array(
'title' => $lang['srv_gdpr_requests_all'],
'url' => 'index.php?a=gdpr&m=gdpr_requests_all'
);
}
$this->displayMenuItemWithSubmenu($name='gdpr', 'GDPR', $submenu);
echo '</ul>';
echo '</div>';
}
// Izris glavne navigacije v anketi
private function displayMenuSurveyNavigation(){
global $lang;
$hierarhija_type = (!empty($_SESSION['hierarhija'][$this->surveyAdminClass->anketa]['type']) ? $_SESSION['hierarhija'][$this->surveyAdminClass->anketa]['type'] : null);
$row = SurveyInfo::getInstance()->getSurveyRow();
SurveyInfo:: getInstance()->SurveyInit($this->surveyAdminClass->anketa);
$modules = SurveyInfo::getSurveyModules();
$d = new Dostop();
echo '<div class="mobile_menu_navigation first" data-menu-name="first">';
echo '<ul>';
// MOJE ANKETE
echo '<li>';
echo '<a class="left-1ka" href="index.php?a=pregledovanje" title="' . $lang['srv_pregledovanje'] . ' (' . strtolower($lang['srv_create_survey']) . ', ' . strtolower($lang['srv_library']) . ')">' . $lang['srv_pregledovanje'] . '</a>';
echo '</li>';
// STATUS
if ($this->surveyAdminClass->skin == 0 && $this->surveyAdminClass->isAnketar == false && $d->checkDostopSub('dashboard')) {
if(SurveyInfo::getInstance()->checkSurveyModule('voting')){
$this->displayMenuItem($lang['srv_status_summary'], $url='index.php?anketa='.$this->anketa.'&a='.A_REPORTI);
}
else{
$submenu = array(
array(
'title' => $lang['srv_status_summary'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_REPORTI
),
array(
'title' => $lang['srv_metapodatki'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_PARA_GRAPH
)
);
$this->displayMenuItemWithSubmenu($name='dashboard', $lang['srv_navigation_status'], $submenu);
}
}
// UREJANJE
if ($d->checkDostopSub('edit') && $hierarhija_type < 5 && !$this->surveyAdminClass->isAnketar) {
$submenu = array(
array(
'title' => $lang['srv_editirajanketo2'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . ($this->surveyAdminClass->survey_type > 1 ? '&a=' . A_BRANCHING : '')
),
array(
'title' => $lang['srv_nastavitve_ankete'] ,
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_SETTINGS
),
array(
'title' => $lang['srv_themes'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_TEMA
),
array(
'title' => $lang['srv_analiza_arhiv'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_ARHIVI
),
);
$this->displayMenuItemWithSubmenu($name='edit', $lang['srv_vprasalnik'], $submenu);
}
# TESTIRANJE - ne prikazemo v glasovanju
if ($this->surveyAdminClass->survey_type != 0 && $this->surveyAdminClass->survey_type != 1 && $d->checkDostopSub('test')) {
$submenu = array(
array(
'title' => $lang['srv_testiranje_diagnostika'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_TESTIRANJE . '&m=' . M_TESTIRANJE_DIAGNOSTIKA
),
array(
'title' => $lang['srv_testiranje_komentarji'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_KOMENTARJI
),
array(
'title' => $lang['srv_testiranje_vnosi'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_TESTIRANJE . '&m=' . M_TESTIRANJE_VNOSI
),
);
$this->displayMenuItemWithSubmenu($name='test', $lang['srv_testiranje'], $submenu);
}
// OBJAVA
if ($d->checkDostopSub('publish')) {
$submenu = array(
array(
'title' => $lang['srv_publication_base'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_VABILA . '&m=settings'
),
array(
'title' => $lang['srv_publication_url'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_VABILA . '&m=url'
),
array(
'title' => $lang['srv_inv_nav_invitations'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_INVITATIONS . '&m=settings'
),
);
$this->displayMenuItemWithSubmenu($name='publish', $lang['srv_vabila'], $submenu);
}
// PODATKI - ne prikazemo v glasovanju
if ($this->surveyAdminClass->survey_type != 0 && $d->checkDostopSub('data')) {
$submenu = array(
array(
'title' => $lang['srv_link_data_browse'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_COLLECT_DATA
),
array(
'title' => $lang['srv_data_navigation_calculate'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_COLLECT_DATA . '&m=calculation'
),
array(
'title' => $lang['srv_data_navigation_import'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_COLLECT_DATA . '&m=append'
)
);
if ($d->checkDostopSub('export')) {
$submenu[] = array(
'title' => $lang['srv_export_tab'],
'url' => 'index.php?anketa=' . $this->surveyAdminClass->anketa . '&a=' . A_COLLECT_DATA_EXPORT
);
}
$this->displayMenuItemWithSubmenu($name='data', $lang['srv_results'], $submenu);
}
// ANALIZA
if ($d->checkDostopSub('analyse')) {
// Hierarhija
if (SurveyInfo::getInstance()->checkSurveyModule('hierarhija')) {
$this->displayMenuItem($lang['srv_stat_analiza'], $url='index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_MEANS_HIERARHY);
}
// Navadne analize
else{
$submenu = array(
array(
'title' => $lang['srv_stat_analiza'],
'name' => 'analyse_submenu',
'submenu' => array(
array(
'title' => $lang['srv_analiza_arhiviraj_type_0'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_SUMMARY
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_1'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_DESCRIPTOR
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_2'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_FREQUENCY
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_3'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_CROSSTAB
),
array(
'title' => $lang['srv_multicrosstabs'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_MULTICROSSTABS
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_4'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_MEANS
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_5'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_TTEST
),
array(
'title' => $lang['srv_analiza_arhiviraj_type_6'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_BREAK
)
)
),
array(
'title' => $lang['srv_analiza_charts'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_CHARTS
),
array(
'title' => $lang['srv_reporti'],
'url' => 'index.php?anketa='.$this->surveyAdminClass->anketa.'&a='.A_ANALYSIS.'&m='.M_ANALYSIS_LINKS
),
);
$this->displayMenuItemWithSubmenu($name='analyse', $lang['srv_analiza'], $submenu);
}
}
echo '</ul>';
echo '</div>';
}
// Izris akcij za anketo (kopiraj, brisi...) v dropdownu
private function displayMenuSurveyActions(){
global $lang;
echo '<div class="mobile_menu_actions">';
# kopiranje
echo ' <a href="#" onclick="anketa_copy_top(\'' . $this->surveyAdminClass->anketa . '\'); return false;" title="'.$lang['srv_anketacopy'].'" class="srv_ico">';
echo ' <span class="faicon anketa_copy"></span> '.$lang['srv_anketacopy'];
echo ' </a>';
# brisanje
echo ' <a href="#" onclick="anketa_delete(\'' . $this->surveyAdminClass->anketa . '\', \'' . $lang['srv_anketadeleteconfirm'] . '\'); return false;" title="' . $lang['srv_anketadelete'] . '" class="srv_ico">';
echo ' <span class="faicon anketa_delete" title="'.$lang['srv_anketadelete'].'"></span> '.$lang['srv_anketadelete'];
echo ' </a>';
echo '</div>';
}
private function displayMenuItemWithSubmenu($name, $title, $submenu){
global $lang;
echo '<li class="has-submenu">';
echo ' <a href="#" data-submenu="submenu_'.$name.'" title="'.$title.'">'.$title.'<span class="faicon arrow_back"></span></a>';
echo '</li>';
// Podmeni
echo '<div id="submenu_'.$name.'" class="submenu">';
// Podmeni header
echo '<div class="submenu-header" data-submenu-close="submenu_'.$name.'">';
// Nazaj
echo ' <a href="#"><span class="faicon arrow_back"></span></a>';
// Label
echo '<label>'.$title.'</label>';
echo '</div>';
// Vsebina podmenija
echo '<ul>';
foreach($submenu as $submenu_item){
// Dodaten podmeni
if(isset($submenu_item['name'])){
//$this->displaySubmenuItem($submenu_item['name'], $submenu_item['title'], $submenu_item['submenu']);
$this->displayMenuItemWithSubmenu($submenu_item['name'], $submenu_item['title'], $submenu_item['submenu']);
}
else{
$this->displayMenuItem($submenu_item['title'], $submenu_item['url']);
}
}
echo '</ul>';
echo '</div>';
}
private function displayMenuItem($title, $url){
echo '<li>';
echo '<a href="'.$url.'" title="'.$title.'">'.$title.'</a>';
echo '</li>';
}
// Gumb za dodajanje vprasanja
public static function displayAddQuestion($ank_id){
global $lang;
echo '<div class="mobile_add_question bottom">';
echo ' <span class="buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="mobile_add_question_popup(); return false;">';
echo ' <span class="plus">+</span> ';
echo ' <span>'.$lang['srv_mobile_add_question'].'</span>';
echo ' </a></span>';
echo '</div>';
// Popup za dodajanje vprašanja
echo '<div class="mobile_add_question_popup">';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'1\');"><span class="faicon radio_32"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_1'].'</span></div>';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'2\');"><span class="faicon check_32"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_2'].'</span></div>';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'21\');"><span class="faicon abc_32"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_21'].'</span></div>';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'7\');"><span class="faicon number_32"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_7'].'</span></div>';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'5\');"><span class="faicon nagovor"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_5'].'</span></div>';
echo ' <div class="mobile_add_question_item" onClick="mobile_add_question(\'6\');"><span class="faicon matrix_32"></span> <span class="item_text">'.$lang['srv_vprasanje_tip_6'].'</span></div>';
echo ' <span class="buttonwrapper mobile_add_question_button">';
echo ' <a class="ovalbutton ovalbutton_orange" href="#" onclick="mobile_add_question_popup_close(); return false;"><span>Zapri</span></a>';
echo ' </span>';
echo '</div>';
}
// Div ko se nimamo nobenega vprasanja v anketi
public static function displayNoQuestions($ank_id){
global $lang;
// Skrijemo spodnji gumb
echo '<style>.mobile_add_question.bottom{display: none;}</style>';
echo '<div class="mobile_add_question center">';
echo ' <span class="buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="mobile_add_question_popup(); return false;">';
echo ' <span class="plus">+</span> ';
echo ' <span>'.$lang['srv_mobile_add_question'].'</span>';
echo ' </a></span>';
echo '</div>';
}
// Div za dodajanje kategorije v vprasanje
public static function displayAddQuestionCategory($ank_id, $spr_id, $tip){
global $lang;
echo '<div class="add-variable-mobile">';
echo ' <a href="#" onclick="vrednost_new_mobile(\''.$spr_id.'\', \''.$tip.'\'); return false;" title="'.$lang['srv_novavrednost'].'"><span class="faicon add small"></span> '.$lang['srv_novavrednost'].'</a>';
echo '</div>';
}
}

View File

@ -2319,12 +2319,12 @@ class SurveyChart {
'radar_scale' => 0, // skala pri radarju (na osi / diagonalno)
'3d_pie' => 0, // tip kroznega grafa (navaden / 3d)
'labelWidth' => 50, // sirina label (50% / 20%)
'barLabel' => 0, // prikaz label v stolpicnih grafih
'barLabel' => 1, // prikaz label v stolpicnih grafih
'barLabelSmall' => 1, // prikaz label pod 5% v stolpicnih grafih (zraven stolpca)
'rotate' => 0, // obrnjeni gridi in variable (pri vseh MG - multiradio, multinumber...)
'colors' => $colors, // custom barve grafa
'show_avg' => -1, // prikaz povprecja na grafu (samo pri ordinalnih radio)
'show_numerus' => -1, // prikaz numerusa na grafu
'show_numerus' => 1, // prikaz numerusa na grafu
'otherType' => 0, // poravnava other tabel
'otherFreq' => 0, // izpis frekvenc v other tabeli
'hideEmptyVar' => 0, // ali izpuscamo prazne opcije brez odgovora (ce je nad 20 variabel -> default 1)

View File

@ -1396,7 +1396,7 @@ class SurveyTableChart {
'radar_type' => 0, // tip radarj (crte / liki)
'radar_scale' => 0, // skala pri radarju (na osi / diagonalno)
'labelWidth' => 50, // sirina label (50% / 20%)
'barLabel' => 0, // prikaz label v stolpicnih grafih
'barLabel' => 1, // prikaz label v stolpicnih grafih
'rotate' => 0, // obrnjeni gridi in variable (pri multinumber...)
'hq' => 1, // visoka locljivost grafa
'show_numerus' => 1, // prikaz numerusa

View File

@ -1427,7 +1427,7 @@ class SurveyDataCollect{
$_dataLine .= STR_DLMT. (($rowUser['status'] == 5 || $rowUser['status'] == 6) && $rowUser['lurker'] == 0 ? '1' : '0');
# dodamo email (invitation)k podatkom - če je bilo poslano z emailom ali je uporabnik ročno vnesel email
$_dataLine .= STR_DLMT. ((int)$rowUser['inv_res_id'] > 0
$_dataLine .= STR_DLMT. ((int)$rowUser['inv_res_id'] > 0 || (int)$rowUser['inv_res_id'] == -1
# uporabnik je bil dodan z email vabilom
? ((int)$rowUser['status'] == 1 || (int)$rowUser['status'] >= 3
# email je bil odposlan

View File

@ -1105,29 +1105,32 @@ class SurveyDataDisplay{
echo ' <input type="checkbox" onclick="setDataView(\''.VAR_DATA.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_DATA] ? ' checked="checked"' : '').(self::$_VARS[VAR_SHOW_SYSTEM] ? ' disabled' : '').' id="data" /><label for="data" '.(self::$_VARS[VAR_SHOW_SYSTEM] ? ' class="gray"' : '').'>'.$lang['srv_displaydata_data'].'</label>';
echo '</li>';
// meta
echo '<li>';
echo ' <input type="checkbox" onclick="setDataView(\''.VAR_METAFULL.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_METAFULL] ? ' checked="checked"' : '').(self::$_VARS[VAR_SHOW_SYSTEM] ? ' disabled' : '').' id="fullmeta" /><label for="fullmeta" '.(self::$_VARS[VAR_SHOW_SYSTEM] ? ' class="gray"' : '').'>'.$lang['srv_displaydata_meta'].'</label>';
echo '</li>';
// če imamo sistemske podatke katere moramo prikazovati ločeno - IDENTIFIKATORJI
if (!isset(self::$_HEADERS['_settings']['count_system_data_variables']) || (isset(self::$_HEADERS['_settings']['count_system_data_variables']) && (int)self::$_HEADERS['_settings']['count_system_data_variables'] > 0)) {
// Preverimo ce je vklopljen modul za volitve - potem nimamo identifikatorjev
if(!SurveyInfo::getInstance()->checkSurveyModule('voting')){
// Parapodatki
echo '<li>';
echo ' <label><input type="checkbox" onclick="setDataView(\''.VAR_SHOW_SYSTEM.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_SHOW_SYSTEM] ? ' checked="checked"' : '').' id="showsystem" />'.$lang['srv_displaydata_system_data'].'</label>';
echo '</li>';
}
// Po novem vedno prikazemo checkbox identifikatorji - samo je odkljukan in disablan
else{
echo '<li>';
echo ' <label class="gray"><input type="checkbox" checked="checked" disabled="disabled" id="showsystem" />'.$lang['srv_displaydata_system_data'].'</label>';
echo '</li>';
}
echo ' <input type="checkbox" onclick="setDataView(\''.VAR_METAFULL.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_METAFULL] ? ' checked="checked"' : '').(self::$_VARS[VAR_SHOW_SYSTEM] ? ' disabled' : '').' id="fullmeta" /><label for="fullmeta" '.(self::$_VARS[VAR_SHOW_SYSTEM] ? ' class="gray"' : '').'>'.$lang['srv_displaydata_meta'].'</label>';
echo '</li>';
// datum
echo '<li>';
echo '<label '.(self::$_VARS[VAR_SHOW_SYSTEM] ? ' class="gray"' : '').'><input type="checkbox" onclick="setDataView(\''.VAR_SHOW_DATE.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_SHOW_DATE] ? ' checked="checked"' : '').(self::$_VARS[VAR_SHOW_SYSTEM] ? ' disabled' : '').' id="showdate" />'.$lang['srv_data_date'].'</label>';
echo '</li>';
// če imamo sistemske podatke katere moramo prikazovati ločeno - IDENTIFIKATORJI
if(!isset(self::$_HEADERS['_settings']['count_system_data_variables']) || (isset(self::$_HEADERS['_settings']['count_system_data_variables']) && (int)self::$_HEADERS['_settings']['count_system_data_variables'] > 0)) {
echo '<li>';
echo ' <label><input type="checkbox" onclick="setDataView(\''.VAR_SHOW_SYSTEM.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_SHOW_SYSTEM] ? ' checked="checked"' : '').' id="showsystem" />'.$lang['srv_displaydata_system_data'].'</label>';
echo '</li>';
}
// Po novem vedno prikazemo checkbox identifikatorji - samo je odkljukan in disablan
else{
echo '<li>';
echo ' <label class="gray"><input type="checkbox" checked="checked" disabled="disabled" id="showsystem" />'.$lang['srv_displaydata_system_data'].'</label>';
echo '</li>';
}
// datum
echo '<li>';
echo '<label '.(self::$_VARS[VAR_SHOW_SYSTEM] ? ' class="gray"' : '').'><input type="checkbox" onclick="setDataView(\''.VAR_SHOW_DATE.'\',$(this).is(\':checked\'))" '.( self::$_VARS[VAR_SHOW_DATE] ? ' checked="checked"' : '').(self::$_VARS[VAR_SHOW_SYSTEM] ? ' disabled' : '').' id="showdate" />'.$lang['srv_data_date'].'</label>';
echo '</li>';
}
// zaporedna številka
echo '<li>';
@ -1422,8 +1425,6 @@ class SurveyDataDisplay{
echo '<colgroup>';
# colspan za ikonce
if ($stolpci > 0) {
//for ($i=0; $i<$stolpci; $i++)
// echo '<col class="data_edit">';
echo '<col class="data_edit"'.($stolpci > 1 ? (' span="'.$stolpci.'"') : '').'>';
}
@ -1533,8 +1534,6 @@ class SurveyDataDisplay{
# colspan za ikonce
if ($stolpci > 0) {
//for ($i=0; $i<$stolpci; $i++)
// echo '<th class="data_edit">&nbsp;</th>';
echo '<th class="data_edit"'.($stolpci > 1 ? (' colspan="'.$stolpci.'"') : '').'>&nbsp;</td>';
}
@ -1547,7 +1546,7 @@ class SurveyDataDisplay{
if (isset(self::$_SVP_PV[$spid]) && count($spremenljivka['grids']) > 0) {
if(self::$showLineNumber && $spr_cont+1 == self::$lineoffset) {
echo '<th title="'.$lang['srv_line_number'].'" spr_id="lineNo">';
echo '<div class="dataCell" >'.$lang['srv_line_number'].'</div>';
echo '<div class="dataCell">'.$lang['srv_line_number'].'</div>';
echo '</th>';
}
@ -2749,7 +2748,7 @@ class SurveyDataDisplay{
echo '</div>';
//div na desni z metapodatki
// Div na desni z metapodatki
echo '<div id="quick_edit_meta">';
self::displayQuickEditMeta();
echo '</div>';
@ -2990,21 +2989,25 @@ class SurveyDataDisplay{
echo '<tr><td class="left">'.$lang['srv_recnum'].':</td>';
echo '<td class="right">'.($rowu['recnum'] ? $rowu['recnum'] : '&nbsp;').'</td></tr>';
// browser
echo '<tr><td class="left">'.$lang['browser'].':</td>';
echo '<td class="right">'.($rowu['useragent'] ? $rowu['useragent'] : '&nbsp;').'</td></tr>';
// Pri volitvah nimamo parapodatkov
if (!SurveyInfo::getInstance()->checkSurveyModule('voting')){
// javascript
echo '<tr><td class="left">'.$lang['javascript'].':</td>';
echo '<td class="right">'.(($rowu['javascript'] == 1) ? $lang['yes'] : $lang['no1']).'</td></tr>';
// browser
echo '<tr><td class="left">'.$lang['browser'].':</td>';
echo '<td class="right">'.($rowu['useragent'] ? $rowu['useragent'] : '&nbsp;').'</td></tr>';
// jezik
// Dobimo vse jezike za katere obstaja jezikovna datoteka
include_once($site_path.'lang/jeziki.php');
$jeziki = $lang_all_global['ime'];
$jeziki['0'] = $lang['language'];
echo '<tr><td class="left">'.$lang['lang'].':</td>';
echo '<td class="right">'.$jeziki[$rowu['language']].'</td></tr>';
// javascript
echo '<tr><td class="left">'.$lang['javascript'].':</td>';
echo '<td class="right">'.(($rowu['javascript'] == 1) ? $lang['yes'] : $lang['no1']).'</td></tr>';
// jezik
// Dobimo vse jezike za katere obstaja jezikovna datoteka
include_once($site_path.'lang/jeziki.php');
$jeziki = $lang_all_global['ime'];
$jeziki['0'] = $lang['language'];
echo '<tr><td class="left">'.$lang['lang'].':</td>';
echo '<td class="right">'.$jeziki[$rowu['language']].'</td></tr>';
}
// status
echo '<tr><td class="left">'.$lang['status'].':</td>';
@ -3014,77 +3017,78 @@ class SurveyDataDisplay{
echo '<tr><td class="left">'.$lang['srv_data_lurker'].':</td>';
echo '<td class="right">'.(($rowu['lurker'] == 1) ? $lang['yes'] : $lang['no1']).'</td></tr>';
//referer
echo '<tr><td class="left">'.$lang['referer'].':</td>';
echo '<td class="right">'.($rowu['referer'] ? $rowu['referer'] : '&nbsp;').'</td></tr>';
// Pri volitvah nimamo parapodatkov
if (!SurveyInfo::getInstance()->checkSurveyModule('voting')){
//email - samo forma
if($rowa['survey_type'] == 1){
echo '<tr><td class="left">'.$lang['email'].':</td>';
echo '<td class="right">'.($rowu['email'] ? $rowu['email'] : '&nbsp;').'</td></tr>';
}
// referer
echo '<tr><td class="left">'.$lang['referer'].':</td>';
echo '<td class="right">'.($rowu['referer'] ? $rowu['referer'] : '&nbsp;').'</td></tr>';
// spreminjal
$datetime = strtotime($rowu['time_insert']);
$text = date("d.m.Y, H:i:s", $datetime);
echo '<tr><td class="left">'.$lang['timeinsert'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
// email - samo forma
if($rowa['survey_type'] == 1){
echo '<tr><td class="left">'.$lang['email'].':</td>';
echo '<td class="right">'.($rowu['email'] ? $rowu['email'] : '&nbsp;').'</td></tr>';
}
$datetime = strtotime($rowu['time_edit']);
$text = date("d.m.Y, H:i:s", $datetime);
echo '<tr><td class="left">'.$lang['timeedit'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
// spreminjal
$datetime = strtotime($rowu['time_insert']);
$text = date("d.m.Y, H:i:s", $datetime);
echo '<tr><td class="left">'.$lang['timeinsert'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
// preberemo popravljanje po straneh
$sqlG = sisplet_query("SELECT ug.time_edit, g.naslov FROM srv_user_grupa".self::$db_table." ug, srv_grupa g WHERE g.ank_id = '".self::$sid."' AND ug.usr_id = '".self::$usr_id."' AND g.id = ug.gru_id ORDER BY g.vrstni_red ASC");
while($rowG = mysqli_fetch_array($sqlG)){
$datetime = strtotime($rowu['time_edit']);
$text = date("d.m.Y, H:i:s", $datetime);
echo '<tr><td class="left">'.$lang['timeedit'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
$datetime = strtotime($rowG['time_edit']);
$text = date("d.m.Y, H:i:s", $datetime);
// preberemo popravljanje po straneh
$sqlG = sisplet_query("SELECT ug.time_edit, g.naslov FROM srv_user_grupa".self::$db_table." ug, srv_grupa g WHERE g.ank_id = '".self::$sid."' AND ug.usr_id = '".self::$usr_id."' AND g.id = ug.gru_id ORDER BY g.vrstni_red ASC");
while($rowG = mysqli_fetch_array($sqlG)){
echo '<tr><td class="left">'.$rowG['naslov'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
}
$datetime = strtotime($rowG['time_edit']);
$text = date("d.m.Y, H:i:s", $datetime);
if ( $admin_type <= 1 /* && what more??? */ ) {
echo '<tr><td class="left">'.$rowG['naslov'].':</td>';
echo '<td class="right">'.$text.'</td></tr>';
}
echo '<tr><td class="left">'.$lang['srv_sc_txt1'].':</td>';
echo '<td class="right"><a href="#" onclick="sc_display(\''.self::$usr_id.'\'); return false;">'.$lang['srv_sc_txt2'].'</a></td></tr>';
if ( $admin_type <= 1) {
}
echo '<tr><td class="left">'.$lang['srv_sc_txt1'].':</td>';
echo '<td class="right"><a href="#" onclick="sc_display(\''.self::$usr_id.'\'); return false;">'.$lang['srv_sc_txt2'].'</a></td></tr>';
# preberemo vklopljene module
//potrebuje se za modul MAZA, da aplikacija izpolni te hidden inpute
//rabi pa se to za povezavo respondenta med tebelama maza_app_users in srv_user
if(SurveyInfo::checkSurveyModule('maza')){
$maza_query = "SELECT mau.identifier, mau.deviceInfo, mau.tracking_log FROM maza_app_users as mau
JOIN maza_srv_users AS msu ON mau.id = msu.maza_user_id
JOIN srv_user AS su ON msu.srv_user_id = su.id
WHERE su.id = '".self::$usr_id."';";
}
}
$sql = sisplet_query($maza_query, 'array');
# preberemo vklopljene module
//potrebuje se za modul MAZA, da aplikacija izpolni te hidden inpute
//rabi pa se to za povezavo respondenta med tebelama maza_app_users in srv_user
if(SurveyInfo::checkSurveyModule('maza')){
$maza_query = "SELECT mau.identifier, mau.deviceInfo, mau.tracking_log FROM maza_app_users as mau
JOIN maza_srv_users AS msu ON mau.id = msu.maza_user_id
JOIN srv_user AS su ON msu.srv_user_id = su.id
WHERE su.id = '".self::$usr_id."';";
//it is already there
if(count($sql) > 0){
//NextPin link
echo '<tr><td class="left">'.$lang['srv_maza_nextpin_link'].':</td>';
echo '<td class="right"><a href="http://traffic.ijs.si/NextPin/?user=1KAPanel_'.$sql[0]['identifier'].'">'
. 'http://traffic.ijs.si/NextPin/?user=1KAPanel_'.$sql[0]['identifier'].'</a></td></tr>';
//Device info
echo '<tr><td class="left">'.$lang['srv_maza_device_info'].':</td>';
echo '<td class="right">'.$sql[0]['deviceInfo'].'</td></tr>';
//Tracking logs
echo '<tr><td class="left">'.$lang['srv_maza_user_app_logs'].':</td>';
echo '<td class="right">'.$sql[0]['tracking_log'].'</td></tr>';
}
}
$sql = sisplet_query($maza_query, 'array');
//it is already there
if(count($sql) > 0){
//NextPin link
echo '<tr><td class="left">'.$lang['srv_maza_nextpin_link'].':</td>';
echo '<td class="right"><a href="http://traffic.ijs.si/NextPin/?user=1KAPanel_'.$sql[0]['identifier'].'">'
. 'http://traffic.ijs.si/NextPin/?user=1KAPanel_'.$sql[0]['identifier'].'</a></td></tr>';
//Device info
echo '<tr><td class="left">'.$lang['srv_maza_device_info'].':</td>';
echo '<td class="right">'.$sql[0]['deviceInfo'].'</td></tr>';
//Tracking logs
echo '<tr><td class="left">'.$lang['srv_maza_user_app_logs'].':</td>';
echo '<td class="right">'.$sql[0]['tracking_log'].'</td></tr>';
}
}
echo '</table>';
echo '<div id="survey-connect-disp" style="display:none"></div>';
//echo '<script> sc_display(\''.self::$usr_id.'\'); </script>';
}

View File

@ -57,9 +57,8 @@ class SurveyDataFile {
$this->data_file_name = $folder . 'export_data_'.$this->anketa.'.dat';
// Vedno ob inicializaciji preverimo status datoteke
if($this->checked == false) {
if($this->checked == false)
$this->checkFile();
}
}
@ -213,6 +212,19 @@ class SurveyDataFile {
WHERE u.ank_id = '".$this->anketa."' AND preview='0' AND (u.testdata = '1' OR u.testdata = '2') AND u.deleted = '0'");
list($this->has_test_data) = mysqli_fetch_row($_qry_cnt_testdata);
// Ce ne belezimo parapodatka o datumu responsa, preverimo zadnji timestamp resevanja ankete
if(SurveySetting::getInstance()->getSurveyMiscSetting('survey_date') == 1) {
$sql_last_response_time = sisplet_query("SELECT UNIX_TIMESTAMP(last_response_time) AS last_response_time FROM srv_anketa WHERE id='".$this->anketa."'");
list($last_response_time) = mysqli_fetch_row($sql_last_response_time);
if($this->data_file_time < $last_response_time){
$this->clearFiles();
$this->file_status = FILE_STATUS_NO_FILE;
}
}
// Preverimo ce imamo usability stolpec v header datoteki ali ce imamo na novo testne podatke - potem pobrisemo vse datoteke, ker moramo vse generirati na novo
if($this->checkUsability() || $this->checkTestData()){
$this->clearFiles();

View File

@ -0,0 +1,97 @@
<?php
/**
*
* Skripta za testiranje Squalo API-ja
*
**/
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
include_once '../../../definition.php';
include_once '../../../../../function.php';
include_once '../../../../../vendor/autoload.php';
//$squalo = new SqualoApi();
//$result = $squalo->createList($list_name='Testni seznam Xyz');
/*$result = $squalo->createNewsletter(
$list_id = '11',
$subject = 'Testek',
$body = 'Testno sporočilo...',
$body_alt = 'Testno sporočilo ALT...',
$from_email = 'peter.hrvatin@gmail.com',
$from_name = 'Peter',
$reply_to_email = 'peter.hrvatin@gmail.com',
$language = 'sl'
);*/
//$result = $squalo->addRecipient($email='peter.h1203@gmail.com', $list_id='5');
//$result = $squalo->sendEmails($newsletter_id='24');
//$result = $squalo->deleteRecipient($recipient_id='2');
$squalo = new SurveyInvitationsSqualo($ank_id='10');
// Ustvarimo testni seznam z respondenti
/*$list_name = 'List test 1';
$recipients = array(
array(
'email' => 'peter.hrvatin@gmail.com',
'custom_attributes' => array(
'firstname' => 'Peterx',
'lastname' => 'Hrvax',
'url' => 'www.google.si'
)
),
array(
'email' => 'peter.h1203@gmail.com',
'custom_attributes' => array(
'firstname' => 'Peter12',
'lastname' => 'Hrva12',
'url' => 'www.najdi.si'
)
),
array(
'email' => 'peter.hrvatin@siol.net',
'custom_attributes' => array(
'firstname' => 'Petersiol',
'lastname' => 'Hrvaxsiol',
'url' => 'www.1ka.si'
)
)
);
$result = $squalo->createList($list_name, $recipients);*/
// Ustvarimo mail in posljemo
/*$list_id = '11';
$subject = 'Testni subject';
$body = 'Sporočilo v emailu... Še nekaj atributov url: #URL#, ime: #FIRSTNAME#';
$from_email = 'peter.hrvatin@gmail.com';
$from_name = 'Peter Gmail';
$reply_to_email = 'peter.hrvatin@gmail.com';
$result = $squalo->sendEmail($subject, $body, $list_id, $from_email, $from_name, $reply_to_email);*/
echo '<pre>'; print_r($result); echo '</pre>';

View File

@ -2,7 +2,7 @@
/**
*
* Class ki vsebuje funkcije APIJA (prijava, registracija v 1ko)
* Class ki vsebuje funkcije Squalo APIJA (dodajanje prejemnikov, posiljanje...)
*
*/
@ -37,16 +37,25 @@ class SqualoApi {
// Decode json response
$response_array = json_decode($response, true);
// Zalogiramo kaj se je dogajalo
$SL = new SurveyLog();
// Error
if($response_array['errorCode'] != '0'){
$result['error'] = $response_array["errorMessage"]. ' (code '.$response_array["errorCode"].')';
$result['success'] = false;
$SL->addMessage(SurveyLog::MAILER, "NAPAKA pri SQUALO API klicu ('.$action.')! ".$result['error']);
}
else{
$result = $response_array;
$result['success'] = true;
$SL->addMessage(SurveyLog::MAILER, "USPEŠEN SQUALO API klic ('.$action.').");
}
$SL->write();
return $result;
}
@ -145,7 +154,9 @@ class SqualoApi {
$response = $this->executeCall($action, $method, $data);
return $response;
$list_id = ($response['success']) ? $response['list']['id'] : '0';
return $list_id;
}
/*
@ -182,7 +193,9 @@ class SqualoApi {
$response = $this->executeCall($action, $method, $data);
return $response;
$newsletter_id = ($response['success']) ? $response['newsletter']['id'] : '0';
return $newsletter_id;
}
/*
@ -214,6 +227,19 @@ class SqualoApi {
$action = 'create-recipient';
$method = 'POST';
// Pretvorimo atribute po meri v pravo obliko
$custom_attributes_squalo = array();
$i = 0;
foreach($custom_attributes as $key => $value){
$custom_attributes_squalo[$i] = array(
"name" => $key,
"value" => $value
);
$i++;
}
$data = array(
'email' => $email,
'listIds' => array($list_id),
@ -221,12 +247,15 @@ class SqualoApi {
'confirmed' => true,
'enabled' => true,
'gdprCanSend' => true,
'gdprCanTrack' => true
'gdprCanTrack' => true,
'customAttributes' => $custom_attributes_squalo
);
$response = $this->executeCall($action, $method, $data);
return $response;
$recipient_id = ($response['success']) ? $response['recipient']['id'] : '0';
return $recipient_id;
}
/*

View File

@ -0,0 +1,480 @@
<?php
/**
*
* Class ki vsebuje funkcije potrebne za posiljanje vabil preko SQUALO
*
*/
class SurveyInvitationsSqualo {
private $anketa;
private $squaloEnabled;
private $squaloActive;
public function __construct($anketa){
$this->anketa = $anketa;
// Preverimo ce je squalo omogocen na tej instalaciji in anketi
$this->squaloEnabled = $this->checkSqualoEnabled() ? true : false;
// Preverimo ce je squalo vklopljen na anketi
$this->squaloActive = $this->checkSqualoActive() ? true : false;
}
public function getSqualoEnabled(){
return $this->squaloEnabled;
}
public function getSqualoActive(){
return $this->squaloActive;
}
// Preverimo ce je squalo omogocen na instalaciji
private function checkSqualoEnabled(){
global $mysql_database_name;
global $admin_type;
global $squalo_user;
global $squalo_key;
// Zaenkrat imajo squalo samo admini
if($admin_type != 0)
return false;
// Squalo je omogocen samo na testu, www in virtualkah
if($mysql_database_name != 'www1kasi' && $mysql_database_name != 'test1kasi' && $mysql_database_name != 'real1kasi')
return false;
// Zaenkrat imajo squalo samo admini
if(!isset($squalo_user) || $squalo_user == '' || !isset($squalo_key) || $squalo_key == '')
return false;
return true;
}
// Preverimo ce je squalo vklopljen na anketi
private function checkSqualoActive(){
$vabila_type = SurveyInfo::getSurveyModules('email');
// Vklopljen squalo
if($vabila_type === '2'){
return true;
}
return false;
}
// Izvedemo squalo pošiljanje (ustvarimo seznam, newsletter, pošljemo maile)
public function sendSqualoInvitations($sql_recipients_query, $sending_data){
global $global_user_id;
global $site_url;
// Preverimo ce je vklopljen modul za volitve
$voting = SurveyInfo::getInstance()->checkSurveyModule('voting');
// Ce mamo SEO
$nice_url = SurveyInfo::getSurveyLink();
// Ali imamo individualizirana vabila s kodo
$surveySettings = SurveyInfo::getInstance()->getSurveyRow();
$individual = (int)$surveySettings['individual_invitation'];
# zakeširamo user_id za datapiping
$arryDataPiping = array();
$qryDataPiping = sisplet_query("SELECT id, inv_res_id FROM srv_user WHERE ank_id='$this->anketa' AND inv_res_id IS NOT NULL");
while (list($dpUid, $dpInvResId) = mysqli_fetch_row($qryDataPiping)) {
if ((int)$dpInvResId > 0 && (int)$dpUid > 0) {
$arryDataPiping[$dpInvResId] = (int)$dpUid;
}
}
$duplicated = array();
# array za rezultate
$send_ok = array();
$send_ok_ids = array();
$send_users_data = array();
$send_error = array();
$send_error_ids = array();
// Loop po prejemnikih
$recipients = array();
while ($sql_row = mysqli_fetch_assoc($sql_recipients_query)) {
$password = $sql_row['password'];
$email = $sql_row['email'];
// Preverimo ce je duplikat
if ($dont_send_duplicated == true && isset($duplicated[$email])) {
$duplicated[$email] ++;
continue;
}
$duplicated[$email] = 1;
if ( ($individual == 1 && trim($email) != '' && trim($password) != '') || ($individual == 0 && trim($email) != '') ){
// odvisno ali imamo url za jezik.
if ($sending_data['msg_url'] != null && trim($sending_data['msg_url']) != '' ) {
$url = $sending_data['msg_url'] . ($individual == 1 ? '?code='.$password : '');
}
else {
$url = $nice_url . ($individual == 1 ? '&code='.$password : '');
}
$url .= '&ai='.(int)$sending_data['arch_id'];
// odjava
$unsubscribe = $site_url . 'admin/survey/unsubscribe.php?anketa=' . $this->anketa . '&code='.$password;
$custom_attributes = array(
'url' => '<a href="' . $url . '">' . $url . '</a>',
'urllink' => $url,
'firstname' => $sql_row['firstname'],
'lastname' => $sql_row['lastname'],
//'email' => $sql_row['email'],
'code' => $sql_row['password'],
'password' => $sql_row['password'],
'phone' => $sql_row['phone'],
'custom' => $sql_row['custom'],
'unsubscribe' => $unsubscribe,
);
$recipients[] = array(
'email' => $sql_row['email'],
'name' => $sql_row['firstname'],
'surname' => $sql_row['lastname'],
'custom_attributes' => $custom_attributes
);
$_user_data = $sql_row;
$send_users_data[] = $_user_data;
$send_emails[] = $email;
$send_ids[] = $sql_row['id'];
}
}
// Ustvarimo squalo seznam z respondenti
$list_name = $global_user_id.'_'.$this->anketa.'_'.$sending_data['arch_id'];
$list_id = $this->createList($list_name, $recipients);
// Ce so vsi prejemniki ok dodani na seznam, ustvarimo mail in posljemo
if($list_id != false)
$squalo_sending_result = $this->sendEmail($sending_data['subject_text'], $sending_data['body_text'], $list_id, $sending_data['from_email'], $sending_data['from_name'], $sending_data['reply_to_email']);
// Napaka pri squalo posiljanju oz. dodajanju - zabelezimo kot da ni noben ok poslan
if(!$squalo_sending_result || !$list_id){
$send_error = $send_emails;
$send_error_ids = $send_ids;
foreach($send_users_data as $key => $val){
$val['status'] = 2;
$send_users_data[$key] = $val;
}
$send_ok = array();
$send_ok_ids = array();
# updejtamo status za errorje
if (count($send_error_ids) > 0) {
$sqlQuery = sisplet_query("UPDATE srv_invitations_recipients SET last_status = GREATEST(last_status,2) WHERE id IN (".implode(',',$send_error_ids).") AND last_status IN ('0')");
if (!$sqlQuery) {
$error = mysqli_error($GLOBALS['connect_db']);
}
}
$results = array(
'send_ok' => $send_ok,
'send_ok_ids' => $send_ok_ids,
'send_users_data' => $send_users_data,
'send_error' => $send_error,
'send_error_ids' => $send_error_ids,
);
return $results;
}
// Ok squalo posiljanje - zabelezimo da so bili vsi ok poslani
$send_ok = $send_emails;
$send_ok_ids = $send_ids;
foreach($send_users_data as $key => $val){
$val['status'] = 1;
$send_users_data[$key] = $val;
}
$send_error = array();
$send_error_ids = array();
// updejtamo userja da mu je bilo poslano - SQUALO je vedno vse ok
if (count($send_ok_ids) > 0) {
$sqlQuery = sisplet_query("UPDATE srv_invitations_recipients SET sent='1', date_sent='".$sending_data['date_sent']."' WHERE id IN (".implode(',',$send_ok_ids).")");
if (!$sqlQuery) {
$error = mysqli_error($GLOBALS['connect_db']);
}
// statuse popravimo samo če vabilo še ni bilo poslano ali je bila napaka
$sqlQuery = sisplet_query("UPDATE srv_invitations_recipients SET last_status='1' WHERE id IN (".implode(',',$send_ok_ids).") AND last_status IN ('0','2')");
if (!$sqlQuery) {
$error = mysqli_error($GLOBALS['connect_db']);
}
// Pri volitvah za sabo pobrisemo podatke preko katerih bi lahko povezali prejemnike z responsi
if($voting){
$sqlQuery = sisplet_query("UPDATE srv_invitations_recipients
SET cookie='', password=''
WHERE id IN (".implode(',',$send_ok_ids).") AND sent='1' AND last_status='1' AND ank_id='".$this->anketa."'
");
if (!$sqlQuery) {
$error = mysqli_error($GLOBALS['connect_db']);
}
}
}
// če mamo personalizirana email vabila, userje dodamo v bazo
if ($individual == 1) {
if (SurveyInfo::getInstance()->getSurveyColumn('db_table') == 1)
$db_table = '_active';
$inv_variables_link = array('email'=>'email','geslo'=>'password','ime'=>'firstname','priimek'=>'lastname','naziv'=>'salutation','telefon'=>'phone','drugo'=>'custom','odnos'=>'relation','last_status'=>'last_status','sent'=>'sent','responded'=>'responded','unsubscribed'=>'unsubscribed');
$sys_vars = $this->getSystemVars();
foreach($send_users_data as $_user_data){
// dodamo še userja v srv_user da je kompatibilno s staro logiko
$strInsertDataText = array();
$strInsertDataVrednost = array();
// Pri volitvah zaradi anonimizacije ignoriramo vse identifikatorje
if($voting){
$_r = sisplet_query("INSERT INTO srv_user
(ank_id, cookie, pass, last_status, inv_res_id)
VALUES
('".$this->anketa."', '".$_user_data['cookie']."', '".$_user_data['password']."', '".$_user_data['status']."', '-1') ON DUPLICATE KEY UPDATE cookie = '".$_user_data['cookie']."', pass='".$_user_data['password']."'
");
// Ce ne belezimo parapodatka za cas responsa, anonimno zabelezimo cas zadnjega responsa
sisplet_query("UPDATE srv_anketa SET last_response_time=NOW() WHERE id='".$this->anketa."'");
}
else{
$_r = sisplet_query("INSERT INTO srv_user
(ank_id, email, cookie, pass, last_status, time_insert, inv_res_id)
VALUES
('".$this->anketa."', '".$_user_data['email']."', '".$_user_data['cookie']."', '".$_user_data['password']."', '".$_user_data['status']."', NOW(), '".$_user_data['id']."') ON DUPLICATE KEY UPDATE cookie = '".$_user_data['cookie']."', pass='".$_user_data['password']."'
");
}
$usr_id = mysqli_insert_id($GLOBALS['connect_db']);
if ($usr_id) {
// dodamo še srv_userbase in srv userstatus
sisplet_query("INSERT INTO srv_userbase (usr_id, tip, datetime, admin_id) VALUES ('".$usr_id."','0',NOW(),'".$global_user_id."')");
sisplet_query("INSERT INTO srv_userstatus (usr_id, tip, status, datetime) VALUES ('".$usr_id."', '0', '0', NOW())");
// dodamo še podatke za posameznega userja za sistemske spremenljivke
foreach ($sys_vars AS $sid => $spremenljivka) {
$_user_variable = $inv_variables_link[$spremenljivka['variable']];
if (trim($_user_data[$_user_variable]) != '' && $_user_data[$_user_variable] != null) {
if($spremenljivka['variable'] == 'odnos')
$strInsertDataVrednost[] = "('".$sid."','".$spremenljivka['vre_id'][trim($_user_data[$_user_variable])]."','".$usr_id."')";
else
$strInsertDataText[] = "('".$sid."','".$spremenljivka['vre_id']."','".trim($_user_data[$_user_variable])."','".$usr_id."')";
}
}
}
// Pri volitvah zaradi anonimizacije ne vsatvimo nicesar v sistemske spremenljivke
if(!$voting){
// vstavimo v srv_data_text
if (count($strInsertDataText) > 0) {
$strInsert = "INSERT INTO srv_data_text".$db_table." (spr_id, vre_id, text, usr_id) VALUES ";
$strInsert .= implode(',',$strInsertDataText);
sisplet_query($strInsert);
}
// vstavimo v srv_data_vrednost
if (count($strInsertDataVrednost) > 0) {
$strInsert = "INSERT INTO srv_data_vrednost".$db_table." (spr_id, vre_id, usr_id) VALUES ";
$strInsert .= implode(',',$strInsertDataVrednost);
sisplet_query($strInsert);
}
}
}
}
$results = array(
'send_ok' => $send_ok,
'send_ok_ids' => $send_ok_ids,
'send_users_data' => $send_users_data,
'send_error' => $send_error,
'send_error_ids' => $send_error_ids,
);
return $results;
}
// Ustvarimo nov seznam in nanj dodamo respondente
private function createList($list_name, $recipients){
$squalo_api = new SqualoApi();
// Ustvarimo prazen seznam
$list_id = $squalo_api->createList($list_name);
// Napaka pri ustvarjanju seznama
if($list_id == '0'){
echo 'Napaka pri ustvarjanju Squalo seznama.';
return false;
}
// Dodamo respondente na ta seznam
foreach($recipients as $recipient){
$email = $recipient['email'];
$custom_attributes = $recipient['custom_attributes'];
$recipient_id = $squalo_api->addRecipient($email, $list_id, $custom_attributes);
// Napaka pri ustvarjanju seznama
if($recipient_id == '0'){
echo 'Napaka pri dodajanju prejemnika '.$email.' na Squalo seznam.';
return false;
}
}
return $list_id;
}
// Ustvarimo nov email z vsebino (api klic createNewsletter) in posljemo na vse naslove v seznamu
private function sendEmail($subject, $body, $list_id, $from_email, $from_name, $reply_to_email){
$squalo_api = new SqualoApi();
// Zamenjamo datapiping npr. #URL# -> {subtag:url}...
$subject = self::squaloDatapiping($subject);
$body = self::squaloDatapiping($body);
$language = 'sl';
// Api klic za ustvarjanje emaila
$newsletter_id = $squalo_api->createNewsletter($list_id, $subject, $body, $body, $from_email, $from_name, $reply_to_email, $language='sl');
// Napaka pri ustvarjanju newsletterja
if($newsletter_id == '0'){
echo 'Napaka pri ustvarjanju Squalo newsletterja.';
return false;
}
// Api klic za posiljanje na naslove
$result = $squalo_api->sendEmails($newsletter_id);
// Napaka pri ustvarjanju newsletterja
if(!$result['success']){
echo 'Napaka pri pošiljanju emailov za Squalo newsletter '.$newsletter_id.'.';
return false;
}
return $result;
}
private static function squaloDatapiping($text){
$text_fixed = str_replace(
array(
'#URL#',
'#URLLINK#',
'#UNSUBSCRIBE#',
'#FIRSTNAME#',
'#LASTNAME#',
'#EMAIL#',
'#CODE#',
'#PASSWORD#',
'#PHONE#',
'#SALUTATION#',
'#CUSTOM#',
'#RELATION#',
),
array(
'{subtag:url}',
'{subtag:urllink}',
'{subtag:unsubscribe}',
'{subtag:firstname}',
'{subtag:lastname}',
'{subtag:email}',
'{subtag:code}',
'{subtag:password}',
'{subtag:phone}',
'{subtag:salutation}',
'{subtag:custom}'
),
$text
);
return $text_fixed;
}
private function getSystemVars(){
$inv_variables = array('email','password','ime','priimek','naziv','telefon','drugo','odnos');
// polovimo sistemske spremenljivke z vrednostmi
$qrySistemske = sisplet_query("SELECT s.id, s.naslov, s.variable
FROM srv_spremenljivka s, srv_grupa g
WHERE s.sistem='1' AND s.gru_id=g.id AND g.ank_id='".$this->anketa."' AND variable IN ("."'" . implode("','",$inv_variables)."')
ORDER BY g.vrstni_red, s.vrstni_red
");
$sys_vars = array();
$sys_vars_ids = array();
while ($row = mysqli_fetch_assoc($qrySistemske)) {
$sys_vars[$row['id']] = array('id'=>$row['id'], 'variable'=>$row['variable'],'naslov'=>$row['naslov']);
$sys_vars_ids[] = $row['id'];
}
$sqlVrednost = sisplet_query("SELECT spr_id, id AS vre_id, vrstni_red, variable FROM srv_vrednost WHERE spr_id IN(".implode(',',$sys_vars_ids).") ORDER BY vrstni_red ASC ");
while ($row = mysqli_fetch_assoc($sqlVrednost)) {
// Ce gre za odnos imamo radio
if($sys_vars[$row['spr_id']]['variable'] == 'odnos'){
if(!isset($sys_vars[$row['spr_id']]['vre_id'][$row['vrstni_red']]))
$sys_vars[$row['spr_id']]['vre_id'][$row['variable']] = $row['vre_id'];
}
elseif (!isset($sys_vars[$row['spr_id']]['vre_id'])) {
$sys_vars[$row['spr_id']]['vre_id'] = $row['vre_id'];
}
}
return $sys_vars;
}
}

View File

@ -35,6 +35,7 @@ class CrossRoad {
break;
case A_NONRESPONSE_GRAPH:
case A_USABLE_RESP:
case A_KAKOVOST_RESP:
case A_SPEEDER_INDEX:
case A_TEXT_ANALYSIS:
case A_GEOIP_LOCATION:
@ -183,6 +184,7 @@ class CrossRoad {
case A_UPORABNOST:
case A_HIERARHIJA_SUPERADMIN:
case A_KVIZ:
case A_VOTING:
case A_ADVANCED_PARADATA:
case A_JSON_SURVEY_EXPORT:
case A_VNOS:

View File

@ -39,6 +39,7 @@
define("NAVI_HIERARHIJA_SUPERADMIN", "NAVI_HIERARHIJA_SUPERADMIN");
define("NAVI_HIERARHIJA", "NAVI_HIERARHIJA");
define("NAVI_KVIZ", "NAVI_KVIZ");
define("NAVI_VOTING", "NAVI_VOTING");
define("NAVI_VNOS", "NAVI_VNOS");
define("NAVI_PHONE", "NAVI_PHONE");
define("NAVI_360", "NAVI_360");
@ -56,6 +57,7 @@
define("A_NONRESPONSE_GRAPH", "nonresponse_graph");
define("A_PARA_GRAPH", "para_graph");
define("A_USABLE_RESP", "usable_resp");
define("A_KAKOVOST_RESP", "kakovost_resp");
define("A_SPEEDER_INDEX", "speeder_index");
define("A_TEXT_ANALYSIS", "text_analysis");
define("A_GEOIP_LOCATION", "geoip_location");
@ -178,6 +180,7 @@
define('A_UPORABNOST', 'uporabnost');
define('A_HIERARHIJA_SUPERADMIN', 'hierarhija_superadmin');
define('A_KVIZ', 'kviz');
define('A_VOTING', 'voting');
define('A_VNOS', 'vnos');
define('A_PHONE', 'telefon'); # Telefon
define('T_PHONE', 'telefon'); # Telefon

View File

@ -141,12 +141,19 @@ class BesediloLatex extends LatexSurveyElement
$rowVrednost = mysqli_fetch_array($sqlVrednosti);
if($spremenljivke['tip'] == 21){ //ce je ta novo besedilo, ki je v uporabi
//$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' AND vre_id='".$rowVrednost['id']."' AND loop_id $loop_id");
$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' AND vre_id='".$rowVrednost['id']."' ");
$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>";
}elseif($spremenljivke['tip'] == 4){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' ");
//$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";
}
}
$sqlUserAnswer = sisplet_query($sqlUserAnswerString);
$userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
//echo "userAnswer: ".$userAnswer['text']."</br>";
//ureditev polja s podatki trenutnega uporabnika - konec ##############################################
@ -237,21 +244,29 @@ class BesediloLatex extends LatexSurveyElement
$rowVrednost['naslov'] = $naslov;
}
//ureditev polja s podatki trenutnega uporabnika ######################################################
if($spremenljivke['tip'] == 21){ //ce je ta novo besedilo, ki je v uporabi
//$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' AND vre_id='".$rowVrednost['id']."' AND loop_id $loop_id");
$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' AND vre_id='".$rowVrednost['id']."' ");
$userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
$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 "userAnswer: ".$userAnswer['text']."</br>";
}elseif($spremenljivke['tip'] == 4){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
//$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' AND vre_id='".$rowVrednost['id']."' AND loop_id $loop_id");
$sqlUserAnswer = sisplet_query("SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' ");
$userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
//echo "SELECT text FROM srv_data_text".$db_table." WHERE spr_id='".$spremenljivke['id']."' AND usr_id='".$usr_id."' </br>";
//echo "userAnswer: ".$userAnswer['text']."</br>";
$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";
}
}
$sqlUserAnswer = sisplet_query($sqlUserAnswerString);
$userAnswer = mysqli_fetch_assoc($sqlUserAnswer);
//ureditev polja s podatki trenutnega uporabnika - konec ##############################################
//priprava besedila za izpis
$stringNaslov = $rowVrednost['naslov'];
$stringNaslov = Common::getInstance()->dataPiping($stringNaslov, $usr_id, $loop_id);
//priprava besedila za izpis - konec
//ce ni other ali missing
if( (int)$rowVrednost['other'] == 0 ){
@ -295,9 +310,7 @@ class BesediloLatex extends LatexSurveyElement
}
array_push($textBoxes, $dataTextBox); //filanje polja s praznimi text box-i
array_push($besedila, $this->encodeText($rowVrednost['naslov']) ); //filanje polja z besedili
array_push($besedila, $this->encodeText($stringNaslov)); //filanje polja z besedili
if($okvir == 0){
if($spremenljivke['tip'] == 21){ //ce je ta novo besedilo, ki je v uporabi
@ -307,7 +320,7 @@ class BesediloLatex extends LatexSurveyElement
//izpis besedila
if($polozajBesedila!=0){ //ce je prisotno dodatno besedilo ob okvirju
$tex .= $this->encodeText($rowVrednost['naslov'])." ";
$tex .= $this->encodeText($stringNaslov)." ";
}
$tex .= ' '.$dataTextBox;
}elseif($spremenljivke['tip'] == 4){ //ce je ta staro besedilo, ki ni vec v uporabi vsaj 9 let (2020)
@ -325,7 +338,7 @@ class BesediloLatex extends LatexSurveyElement
}
//izpis besedila
$tex .= $this->encodeText($rowVrednost['naslov']);
$tex .= $this->encodeText($stringNaslov)." ";
//izpis text box-a dolocene sirine in visine z besedilom odgovora
$tex .= ' '.$dataTextBox;
@ -335,10 +348,15 @@ class BesediloLatex extends LatexSurveyElement
}
else { //drugace, ce imamo missinge ali podobne, jih zabelezi v polju
// imamo polje drugo - ne vem, zavrnil...
$array_others[$rowVrednost['id']] = array(
/* $array_others[$rowVrednost['id']] = array(
'naslov'=>$rowVrednost['naslov'],
'vrstni_red'=>$rowVrednost['vrstni_red'],
'value'=>$text[$rowVrednost['vrstni_red']],
); */
$array_others[$rowVrednost['id']] = array(
'naslov'=>$this->encodeText($stringNaslov),
'vrstni_red'=>$rowVrednost['vrstni_red'],
'value'=>$text[$rowVrednost['vrstni_red']],
);
}
@ -434,7 +452,7 @@ class BesediloLatex extends LatexSurveyElement
}
}
//echo "tex koda: ".$tex." in indeks $indeksZaWhile</br>";
return $tex;
}

View File

@ -95,8 +95,9 @@ class RadioCheckboxSelectLatex extends LatexSurveyElement
if (strip_tags($rowl['naslov2']) != '') $rowVrednost['naslov2'] = $rowl['naslov2'];
#ce je respondent odgovarjal v drugem jeziku - konec ################
$stringTitle = ($this->encodeText(( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ), $rowVrednost['id'] ));
$stringTitle = '\\textcolor{crta}{'.$stringTitle.'}';
$stringTitle = ( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] );
$stringTitle = Common::getInstance()->dataPiping($stringTitle, $usr_id, $loop_id);
$stringTitle = '\\textcolor{crta}{'.$this->encodeText($stringTitle).'}';
//echo $stringTitle."za indeks: ".$indeksZaWhile."</br>";
//stetje stevila vrstic
@ -263,8 +264,6 @@ class RadioCheckboxSelectLatex extends LatexSurveyElement
while ($rowVrednost = mysqli_fetch_assoc($sqlVrednosti)){
$prop['full'] = ( isset($userAnswer[$rowVrednost['id']]) );
//if($this->language>1){ //ce je prevod ankete
if($this->prevod){ //ce je prevod ankete
$rowl = $this->srv_language_vrednost($rowVrednost['id']); //pridobi prevod naslova v ustreznem jeziku
$stringTitle = ((( $rowl['naslov'] ) ? $rowl['naslov'] : ( ( $rowl['naslov2'] ) ? $rowl['naslov2'] : $rowl['variable'] ) )); //prevod naslova v ustreznem jeziku
@ -272,6 +271,8 @@ class RadioCheckboxSelectLatex extends LatexSurveyElement
$stringTitle = ((( $rowVrednost['naslov'] ) ? $rowVrednost['naslov'] : ( ( $rowVrednost['naslov2'] ) ? $rowVrednost['naslov2'] : $rowVrednost['variable'] ) ));
}
$stringTitle = Common::getInstance()->dataPiping($stringTitle, $usr_id, $loop_id);
//echo "naslov: $stringTitle</br>";
//echo "jezik: ".$this->language."</br>";
if ( $spremenljivke['tip'] == 1 || $spremenljivke['tip'] == 3 ){

View File

@ -273,7 +273,9 @@ class SteviloLatex extends LatexSurveyElement
}
//izpis besedila enote
$tex .= $this->encodeText($rowVrednost['naslov']);
$stringEnota = $rowVrednost['naslov'];
$stringEnota = Common::getInstance()->dataPiping($stringEnota, $usr_id, $loop_id);
$tex .= $this->encodeText($stringEnota);
if($okvir == 1){ //ce rabimo prazen okvir, izpisi
//izpis praznega text box-a dolocene sirine in visine
@ -317,7 +319,9 @@ class SteviloLatex extends LatexSurveyElement
$tex .= ' & '; //v nov stolpec tabele
}
$tex .= ' '.$this->encodeText($rowVrednost['naslov']);
$stringEnota = $rowVrednost['naslov'];
$stringEnota = Common::getInstance()->dataPiping($stringEnota, $usr_id, $loop_id);
$tex .= ' '.$this->encodeText($stringEnota);
if($indeksZaWhile==1&&$export_format=='pdf'){ //ce je prvi okvir in je pdf
//$tex .= ' \hspace{0.5cm} '; //dodaj še nekaj prostora, za prvim okvirjem, da bo dovolj prostora

View File

@ -261,6 +261,10 @@ class LatexStatus {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_6'];
$prefix = ', ';
}
if ($row['voting'] == 1) {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_18'];
$prefix = ', ';
}
if ($row['phone'] == 1) {
$enabled_advanced .= $prefix . $lang['srv_vrsta_survey_type_7'];
$prefix = ', ';

View File

@ -440,11 +440,12 @@ class LatexSurvey{
if ( !$this->getGrupa() ){
if ( SurveyInfo::getInstance()->getSurveyShowConcl() && SurveyInfo::getInstance()->getSurveyConcl() )
{ // ce obstaja footer izpisemo footer
}
}
// Izpis grafa in tabele za NIJZ na koncu dokumenta
// Izpis grafa in tabele za NIJZ na koncu dokumenta
global $site_domain;
if( ($site_domain == 'test.1ka.si' && $this->anketa == '8892') || ($site_domain == 'anketa.nijz.si' && $this->anketa == '126738') ){
@ -1056,12 +1057,6 @@ class LatexSurvey{
$output .= ' '.$row_if['label'].' ';
$output .= ') ';
}
//echo $output."</br>";
/* $this->pdf->SetTextColor(0,0,150);
$this->pdf->setFont('','B',$this->font);
$this->pdf->MultiCell(90, 1, $this->encodeText($output),0,'L',0,1,0,0);
$this->pdf->SetTextColor(0,0,0);
$this->pdf->setFont('','',$this->font); */
return $output;
}
@ -1249,55 +1244,6 @@ class LatexSurvey{
$posLi = strpos($text, $findLi);
$posPar = strpos($text, $findPar);
//ureditev izrisa slike
/* if($posImg !== false){
$numOfImgs = substr_count($text, $findImg); //stevilo '<img ' v tekstu
$posImg = strpos($text, $findImg);
$textPrej = '';
$textPotem = '';
for($i=0; $i<$numOfImgs; $i++){
$posImg = strpos($text, $findImg);
$textPrej = substr($text, 0, $posImg); //tekst do img
$textPotem = substr($text, $posImg); //tekst po img, z vkljuceno hmlt kodo z img
$posImgEnd = strpos($textPotem, '/>'); //pozicija, kjer se konca html koda za img
$textPotem = substr($textPotem, $posImgEnd+strlen('/>')); //tekst od konca html kode za img dalje
//$text = $textPrej.' '.PIC_SIZE_ANS."{".$this->path2UploadedImages."".$this->getImageName($text, 0, '<img')."}".' '.$textPotem;
//$text = $textPrej.' '.PIC_SIZE_ANS."{".$this->path2UploadedImages."".$this->getImageName($text, 0, '<img', $vre_id)."}".' '.$textPotem;
$imageName = $this->path2UploadedImages."".$this->getImageName($text, 0, '<img', $vre_id);
$imageNameTest = $imageName.'.png'; //za preveriti, ali obstaja slikovna datoteka na strezniku
//error_log("iz survey element: ".$imageNameTest);
//echo("iz survey element: ".$imageNameTest."</br>");
if(filesize($imageNameTest) > 0){
$text = $textPrej.' '.PIC_SIZE_ANS."{".$imageName."}".' '.$textPotem;
}else{
$image = $lang['srv_pc_unavailable'];
$text = $textPrej.' '.$image.' '.$textPotem;
}
}
//pred ureditvijo posebnih karakterjev, odstrani del teksta s kodo za sliko, da se ne pojavijo tezave zaradi imena datoteke od slike
$findImgCode = '\includegraphics';
$posOfImgCode = strpos($text, $findImgCode);
//echo $posOfImgCode."</br>";
$textToImgCode = substr($text, 0, $posOfImgCode); //tekst do $findImgCode
//echo $textToImgCode."</br>";
$textFromImgCode = substr($text, $posOfImgCode); //tekst po $findImgCode
//echo $textFromImgCode."</br>";
$findImgCodeEnd = '}';
//$posOfImgCodeEnd = strpos($text, $findImgCodeEnd);
$posOfImgCodeEnd = strpos($textFromImgCode, $findImgCodeEnd);
//echo $posOfImgCodeEnd."</br>";
$textAfterImgCode = substr($textFromImgCode, $posOfImgCodeEnd+1); //tekst po $findImgCodeEnd
//echo $textAfterImgCode."</br>";
$textOfImgCode = substr($text, $posOfImgCode, $posOfImgCodeEnd+1);
//echo $textOfImgCode."</br>";
$text = $textToImgCode.$textAfterImgCode;
//pred ureditvijo posebnih karakterjev, odstrani del teksta s kodo za sliko, da se ne pojavijo tezave zaradi imena datoteke od slike - konec
} */
//ureditev izrisa slike - konec
//ureditev posebnih karakterjev za Latex http://www.cespedes.org/blog/85/how-to-escape-latex-special-characters, https://en.wikibooks.org/wiki/LaTeX/Special_Characters#Other_symbols
$text = str_replace('\\','\textbackslash{} ',$text);
@ -1335,12 +1281,6 @@ class LatexSurvey{
}
//ureditev preureditve html kode ul in li v latex itemize - konec
//po ureditvi posebnih karakterjev, dodati del teksta s kodo za sliko, ce je slika prisotna
/* if($posImg !== false){
$text = substr_replace($text, $textOfImgCode, $posOfImgCode, 0);
} */
//po ureditvi posebnih karakterjev, dodati del teksta s kodo za sliko, ce je slika prisotna
if($posPar !== false){ //ce je kaksen html tag <p>, dodaj prazno vrstico oz. break
if($numOfUl!=0 && $posLi !== false){ //ce imamo ul in li
$divider = ' ';

View File

@ -906,7 +906,12 @@ class LatexSurveyElement{
//$text = str_replace('{','\{',$text);
//$text = str_replace('}','\}',$text);
$text = str_replace('$','\$ ',$text);
$text = str_replace('#','\# ',$text);
if(substr_count($text, '#')){ //ce je stevilo # vecje od 1
$text = str_replace('#','\#',$text);
}else{
$text = str_replace('#','\# ',$text);
}
$text = str_replace('%','\% ',$text);
$text = str_replace('€','\euro',$text);
$text = str_replace('^','\textasciicircum{} ',$text);
@ -962,6 +967,7 @@ class LatexSurveyElement{
$text = str_replace('<ul>','\begin{itemize} ', $text);
$text = str_replace('<ul','\begin{itemize} ', $text);
$text = str_replace('<li>','\item ', $text);
$text = str_replace('<li','\item ', $text);
$text = str_replace('</ul>','\end{itemize} \ ', $text);
}
//echo "prazno v html: ".strpos($text, '\r')."</br>";
@ -980,6 +986,7 @@ class LatexSurveyElement{
if($numOfOl!=0 && $posLi !== false){ //ce imamo ol in li
$text = str_replace('<ol>','\begin{enumerate} ', $text);
$text = str_replace('<li>','\item ', $text);
$text = str_replace('<li','\item ', $text);
$text = str_replace('</ol>','\end{enumerate} \ ', $text);
}
//echo "prazno v html: ".strpos($text, '\r')."</br>";
@ -1022,7 +1029,7 @@ class LatexSurveyElement{
$numOfAt = substr_count($text, $findAt); //stevilo '@' v besedilu
$posAt = strpos($text, $findAt);
if($posAt){ //ce je prisotna afna
if($posAt && $posSpace1){ //ce je prisotna afna in je prisoten presledek v besedilu
//echo "afna je: $posAt </br>";
//echo "Encoding: ".$text."</br>";
@ -1058,9 +1065,11 @@ class LatexSurveyElement{
//RESEVANJE odstranitve dodatnih style tag-ov po ul, ipd. #######################################################
$findStyleTag = 'style="';
$findStyleTagEnd = '"';
//$findStyleTagEnd = '"';
$findStyleTagEnd = '">';
$numOfStyleTags = substr_count($text, $findStyleTag); //stevilo 'style=" ' v tekstu
//echo "stevilo style: ".$numOfStyleTags." </br>";
//echo $text."</br>";
for($s=0; $s<$numOfStyleTags; $s++){ //za vsako najdeno 'style=" ' besedilo, uredi njeno odstranitev
$posStyleTag = strpos($text, $findStyleTag);
$posStyleTagEnd = strpos($text, $findStyleTagEnd, $posStyleTag); //strpos(string,find,start) najdi $findStyleTagEnd v $text, isci od $posStyleTag dalje
@ -1933,16 +1942,28 @@ class LatexSurveyElement{
if($spremenljivke['tip'] != 24){ //ce ni kombinirana tabela z izberite s seznama (ali roleto)
if($data[$userAnswerIndex[$spremenljivke['id']]]==($indeksRoleta)){ //ce je prisoten podatek za doloceni indeks seznama, ga izpisi
//$tex .= '& \\textcolor{crta}{'.$vodoravniOdgovori[$j-1].'}'; //izris odgovora respondenta v roleti ali seznamu
$tex .= '& \\textcolor{crta}{\footnotesize{'.$vodoravniOdgovori[$j-1].'}}'; //izris odgovora respondenta v roleti ali seznamu
//$tex .= '& \\textcolor{crta}{\footnotesize{'.$vodoravniOdgovori[$j-1].'}}'; //izris odgovora respondenta v roleti ali seznamu
if($export_data_type==0||$export_data_type==2){ //ce skrcen izvoz
$tex .= '& \\textcolor{crta}{\footnotesize{'.$vodoravniOdgovori[$j-1].'}}'; //izris odgovora respondenta v roleti ali
}else{ //drugace, ce je razsirjen izvoz
$tex .= '\item[] \\textcolor{crta}{\footnotesize{'.$vodoravniOdgovori[$j-1].'}}'; //izris odgovora respondenta v roleti ali
}
$noItem = 0;
//echo "podatek je prisoten: ".$vodoravniOdgovori[$j-1]."</br>";
}else{
$tex .= ' & '.$vodoravniOdgovori[$j-1];
//echo "tip exp: ".$export_data_type."</br>";
if($export_data_type==0||$export_data_type==2){ //ce skrcen izvoz
$tex .= ' & '.$vodoravniOdgovori[$j-1];
}else{ //drugace, ce je razsirjen izvoz
}
}
}else{ //ce je kombinirana tabela z izberite s seznama (ali roleto)
$tex .= ' & \\textcolor{crta}{\footnotesize{'.$data[$userAnswerIndex[$spremenljivke['id']]].'}}';
/* echo "odgovor : ".$data[$userAnswerIndex[$spremenljivke['id']]]."</br>";
print_r($data); */
}
}
@ -1961,6 +1982,7 @@ class LatexSurveyElement{
$roletaAliSeznam = 1;
}
}elseif($enota == 4){ //ena moznost proti drugi
//$tex .= '& '.$simbolTex.' & '.$lang['srv_tip_sample_t6_4_vmes'].' & '.$simbolTex;
//$this->getAnswerSymbol($export_format, $fillablePdf, $vodoravniOdgovoriTip[$j-1], $numColSql, 0, $data[$userAnswerIndex[$spremenljivke['id']]])
@ -2098,7 +2120,7 @@ class LatexSurveyElement{
if( in_array($spremenljivkeTip, array(21, 4, 7, 8, 18, 17)) ){//ce je tip besedilo ali stevilo ali datum ali vsota ali razvrscanje
$rowAnswers = mysqli_fetch_assoc($sqlUserAnswer);
if($rowAnswers){ //ce je kaj v bazi
//echo "Nekaj je v bazi za spremenljivko".$spremenljivkeId." in usr".$usr_id."</br>";
//echo "Nekaj je v bazi za spremenljivko".$spremenljivkeId." in usr ".$usr_id."</br>";
$userDataPresent++;
}
}else{
@ -2119,7 +2141,7 @@ class LatexSurveyElement{
}
}
}
//echo "userDataPresent za tip ".$spremenljivkeTip." id".$spremenljivkeId." usr ".$usr_id." je:".$userDataPresent."</br>";
//echo "userDataPresent za tip ".$spremenljivkeTip." id ".$spremenljivkeId." usr ".$usr_id." je:".$userDataPresent." in loop: $loop_id</br>";
return $userDataPresent;
}
#funkcija, ki skrbi za preverjanje obstoja podatkov za vprasanja, ki niso grid ali kombinirana tabela - konec

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Some files were not shown because too many files have changed in this diff Show More