6439 lines
257 KiB
PHP
6439 lines
257 KiB
PHP
<?php
|
|
|
|
/**
|
|
* KONSTANTE (skopirano iz SurveyAdmin...)
|
|
*
|
|
*/
|
|
|
|
// STARO
|
|
define("A_REPORTI", "reporti");
|
|
|
|
// tipi uporabnikov, (za kontrolo prikaza posameznih elementov) za preverjanje kličemo funkcijo user_role_cehck
|
|
define("U_ROLE_ADMIN", 0);
|
|
define("U_ROLE_MANAGER", 1);
|
|
define("U_ROLE_CLAN", 2);
|
|
define("U_ROLE_NAROCNIK", 3);
|
|
|
|
define("EXPORT_FOLDER", "admin/survey/SurveyData");
|
|
|
|
global $site_path;
|
|
|
|
class SurveyAdminAjax {
|
|
|
|
var $anketa; // trenutna anketa
|
|
var $grupa; // trenutna grupa
|
|
var $spremenljivka; // trenutna spremenljivka
|
|
var $branching = 0; // pove, ce smo v branchingu
|
|
var $stran;
|
|
var $podstran;
|
|
var $skin = 0;
|
|
var $survey_type; // privzet tip je anketa na vecih straneh
|
|
|
|
var $displayLinkIcons = false; // zaradi nenehnih sprememb je trenutno na false, se kasneje lahko doda v nastavitve
|
|
var $displayLinkText = true; // zaradi nenehnih sprememb je trenutno na true, se kasneje lahko doda v nastavitve
|
|
var $setting = null;
|
|
|
|
var $db_table = '';
|
|
|
|
var $icons_always_on = false; # ali ima uporabnik nastavljeno da so ikone vedno vidne
|
|
var $full_screen_edit = false; # ali ima uporabnik nastavljeno da ureja vprašanja v fullscreen načinu
|
|
|
|
var $SurveyAdmin = null;
|
|
|
|
/**
|
|
* @desc konstruktor
|
|
*/
|
|
function __construct($action = 0, $anketa = 0) {
|
|
global $surveySkin, $site_url, $global_user_id;
|
|
global $lang;
|
|
|
|
$this->SurveyAdmin = new SurveyAdmin($action);
|
|
|
|
if (isset ($surveySkin))
|
|
$this->skin = $surveySkin;
|
|
else
|
|
$this->skin = 0;
|
|
|
|
// polovimo anketa ID
|
|
if (isset ($_GET['anketa']))
|
|
$this->anketa = $_GET['anketa'];
|
|
elseif (isset ($_POST['anketa']))
|
|
$this->anketa = $_POST['anketa'];
|
|
elseif ($anketa != 0)
|
|
$this->anketa = $anketa;
|
|
|
|
UserSetting :: getInstance()->Init($global_user_id);
|
|
$this->icons_always_on = UserSetting :: getInstance()->getUserSetting('icons_always_on');
|
|
$this->full_screen_edit = UserSetting :: getInstance()->getUserSetting('full_screen_edit');
|
|
|
|
SurveyInfo::getInstance()->SurveyInit($this->anketa);
|
|
|
|
$this->db_table = SurveyInfo::getInstance()->getSurveyArchiveDBString();
|
|
|
|
$this->survey_type = $this->SurveyAdmin->getSurvey_type($this->anketa);
|
|
|
|
if ($_GET['a'] == 'branching' || $this->survey_type > 1)
|
|
$this->branching = 1;
|
|
|
|
if ($this->anketa > 0) {
|
|
// preverimo ali anketa sploh obstaja
|
|
if (!$this->SurveyAdmin->checkAnketaExist()) {
|
|
header('location: ' . $site_url . 'admin/survey/index.php');
|
|
} else
|
|
|
|
// preverimo userjev dostop // posebej je dovoljen dostop za pasiven do analize in reportov
|
|
if ($this->SurveyAdmin->checkDostop() || $this->SurveyAdmin->checkDostopAktiven() || $_GET['a']==A_ANALYSIS || $_GET['a']=='analiza' || $_GET['a']=='analizaReloadData' || $_GET['t']==A_ANALYSIS || $_GET['a']==A_REPORTI ) {
|
|
|
|
// ok
|
|
|
|
} else {
|
|
header('location: ' . $site_url . 'admin/main/login.php?l=' . base64_encode($_SERVER['REQUEST_URI']));
|
|
die(); // pri ajax klicih ne sme naprej, da ne more pisat v bazo
|
|
}
|
|
|
|
}
|
|
|
|
if ($action == 0) {
|
|
if (isset ($_GET['anketa'])) {
|
|
|
|
SurveyInfo :: getInstance()->SurveyInit($this->anketa);
|
|
|
|
if (isset ($_GET['grupa'])) {
|
|
$this->grupa = $_GET['grupa'];
|
|
|
|
} elseif (!isset ($_GET['a'])) {
|
|
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$this->anketa' ORDER BY vrstni_red LIMIT 1");
|
|
$row = mysqli_fetch_array($sql);
|
|
$this->grupa = $row['id'];
|
|
|
|
if ($this->survey_type == 2)
|
|
header('Location: index.php?anketa=' . $this->anketa . '&grupa=' . $this->grupa . '');
|
|
|
|
}
|
|
/*
|
|
// meta podatki, ki jih beremo z JS
|
|
echo '<form name="meta" action="" style="display:none">';
|
|
echo '<input type="hidden" name="anketa" id="srv_meta_anketa_id" value="' . $this->anketa . '" />';
|
|
echo '<input type="hidden" name="grupa" id="srv_meta_grupa" value="' . $this->grupa . '" />';
|
|
echo '<input type="hidden" name="branching" id="srv_meta_branching" value="' . $this->branching . '" />';
|
|
echo '<input type="hidden" name="podstran" id="srv_meta_podstran" value="' . $_GET['m'] . '" />';
|
|
echo '<input type="hidden" name="akcija" id="srv_meta_akcija" value="' . $_GET['a'] . '" />';
|
|
echo '<input type="hidden" name="full_screen_edit" id="srv_meta_full_screen_edit" value="' . ($this->full_screen_edit == 1 ? 1 : 0) . '" />';
|
|
echo '</form>';
|
|
*/
|
|
}
|
|
|
|
// tole je, ce se inicializira v branhingu z $action=-1 (pa mogoce/najbrz se kje), da se ne prikazujejo 2x te meta podatki in redirecta...
|
|
} else {
|
|
if ($this->anketa == 0) die();
|
|
}
|
|
|
|
$this->stran = $_GET['a'];
|
|
|
|
}
|
|
|
|
/**
|
|
* @desc pohendla ajax zahteve
|
|
*/
|
|
function ajax() {
|
|
global $lang;
|
|
global $site_path;
|
|
global $site_url;
|
|
global $global_user_id;
|
|
|
|
if (isset ($_POST['spremenljivka']))
|
|
$spremenljivka = $_POST['spremenljivka'];
|
|
if (isset ($_POST['tip']))
|
|
$tip = $_POST['tip'];
|
|
if (isset ($_POST['survey_type']))
|
|
$survey_type = $_POST['survey_type'];
|
|
if (isset ($_POST['anketa'])) {
|
|
$anketa = $_POST['anketa'];
|
|
$this->anketa = $_POST['anketa'];
|
|
}
|
|
if (isset ($_POST['naslov']))
|
|
$naslov = $_POST['naslov'];
|
|
if (isset ($_POST['naslov2']))
|
|
$naslov2 = $_POST['naslov2'];
|
|
if (isset ($_POST['grupa']))
|
|
$grupa = $_POST['grupa'];
|
|
if (isset ($_POST['vrednost']))
|
|
$vrednost = $_POST['vrednost'];
|
|
if (isset ($_POST['serialize']))
|
|
$serialize = $_POST['serialize'];
|
|
if (isset ($_POST['thisgrupa']))
|
|
$thisgrupa = $_POST['thisgrupa'];
|
|
if (isset ($_POST['intro']))
|
|
$intro = $_POST['intro'];
|
|
if (isset ($_POST['concl']))
|
|
$concl = $_POST['concl'];
|
|
if (isset ($_POST['size']))
|
|
$size = $_POST['size'];
|
|
if (isset ($_POST['skala']))
|
|
$skala = $_POST['skala'];
|
|
if (isset ($_POST['undecided']))
|
|
$undecided = $_POST['undecided'];
|
|
if (isset ($_POST['grid']))
|
|
$grid = $_POST['grid'];
|
|
if (isset ($_POST['text']))
|
|
$text = $_POST['text'];
|
|
if (isset ($_POST['url']))
|
|
$url = $_POST['url'];
|
|
if (isset ($_POST['cookie']))
|
|
$cookie = $_POST['cookie'];
|
|
if (isset ($_POST['cookie_return']))
|
|
$cookie_return = $_POST['cookie_return'];
|
|
if (isset ($_POST['dostop']))
|
|
$dostop = $_POST['dostop'];
|
|
if (isset ($_POST['uid']))
|
|
$uid = $_POST['uid'];
|
|
if (isset ($_POST['variable']))
|
|
$variable = $_POST['variable'];
|
|
if (isset ($_POST['user_from_cms']))
|
|
$user_from_cms = $_POST['user_from_cms'];
|
|
if (isset ($_POST['skin']))
|
|
$skin = $_POST['skin'];
|
|
if (isset ($_POST['odgovarja']))
|
|
$odgovarja = $_POST['odgovarja'];
|
|
if (isset ($_POST['dostop_edit']))
|
|
$dostop_edit = $_POST['dostop_edit'];
|
|
if (isset ($_POST['branching']))
|
|
$this->branching = $_POST['branching'];
|
|
if (isset ($_POST['label']))
|
|
$label = $_POST['label'];
|
|
if (isset ($_POST['cela']))
|
|
$cela = $_POST['cela'];
|
|
if (isset ($_POST['decimalna']))
|
|
$decimalna = $_POST['decimalna'];
|
|
if (isset ($_POST['enota']))
|
|
$enota = $_POST['enota'];
|
|
// posiljanje mailov ob obvescanju
|
|
if (isset ($_POST['alert_finish_respondent']))
|
|
$alert_finish_respondent = $_POST['alert_finish_respondent'];
|
|
if (isset ($_POST['alert_finish_respondent_cms']))
|
|
$alert_finish_respondent_cms = $_POST['alert_finish_respondent_cms'];
|
|
if (isset ($_POST['alert_finish_author']))
|
|
$alert_finish_author = $_POST['alert_finish_author'];
|
|
if (isset ($_POST['alert_finish_author_uid']))
|
|
$alert_finish_author_uid = $_POST['alert_finish_author_uid'];
|
|
if (isset ($_POST['alert_finish_other']))
|
|
$alert_finish_other = $_POST['alert_finish_other'];
|
|
if (isset ($_POST['alert_finish_other_emails']))
|
|
$alert_finish_other_emails = $_POST['alert_finish_other_emails'];
|
|
if (isset ($_POST['alert_finish_subject']))
|
|
$alert_finish_subject = $_POST['alert_finish_subject'];
|
|
if (isset ($_POST['alert_finish_text']))
|
|
$alert_finish_text = $_POST['alert_finish_text'];
|
|
if (isset ($_POST['alert_expire_days']))
|
|
$alert_expire_days = $_POST['alert_expire_days'];
|
|
if (isset ($_POST['alert_expire_author']))
|
|
$alert_expire_author = $_POST['alert_expire_author'];
|
|
if (isset ($_POST['alert_expire_author_uid']))
|
|
$alert_expire_author_uid = $_POST['alert_expire_author_uid'];
|
|
if (isset ($_POST['alert_expire_other']))
|
|
$alert_expire_other = $_POST['alert_expire_other'];
|
|
if (isset ($_POST['alert_expire_other_emails']))
|
|
$alert_expire_other_emails = $_POST['alert_expire_other_emails'];
|
|
if (isset ($_POST['alert_expire_subject']))
|
|
$alert_expire_subject = $_POST['alert_expire_subject'];
|
|
if (isset ($_POST['alert_expire_text']))
|
|
$alert_expire_text = $_POST['alert_expire_text'];
|
|
if (isset ($_POST['alert_delete_author']))
|
|
$alert_delete_author = $_POST['alert_delete_author'];
|
|
if (isset ($_POST['alert_delete_other']))
|
|
$alert_delete_other = $_POST['alert_delete_other'];
|
|
if (isset ($_POST['alert_delete_author_uid']))
|
|
$alert_delete_author_uid = $_POST['alert_delete_author_uid'];
|
|
if (isset ($_POST['alert_delete_other_emails']))
|
|
$alert_delete_other_emails = $_POST['alert_delete_other_emails'];
|
|
if (isset ($_POST['alert_delete_subject']))
|
|
$alert_delete_subject = $_POST['alert_delete_subject'];
|
|
if (isset ($_POST['alert_delete_text']))
|
|
$alert_delete_text = $_POST['alert_delete_text'];
|
|
if (isset ($_POST['alert_active_author']))
|
|
$alert_active_author = $_POST['alert_active_author'];
|
|
if (isset ($_POST['alert_active_author_uid']))
|
|
$alert_active_author_uid = $_POST['alert_active_author_uid'];
|
|
if (isset ($_POST['alert_active_other']))
|
|
$alert_active_other = $_POST['alert_active_other'];
|
|
if (isset ($_POST['alert_active_other_emails']))
|
|
$alert_active_other_emails = $_POST['alert_active_other_emails'];
|
|
if (isset ($_POST['alert_active_subject0']))
|
|
$alert_active_subject0 = $_POST['alert_active_subject0'];
|
|
if (isset ($_POST['alert_active_text0']))
|
|
$alert_active_text0 = $_POST['alert_active_text0'];
|
|
if (isset ($_POST['alert_active_subject1']))
|
|
$alert_active_subject1 = $_POST['alert_active_subject1'];
|
|
if (isset ($_POST['alert_active_text1']))
|
|
$alert_active_text1 = $_POST['alert_active_text1'];
|
|
// posiljanje mailov ob obvescanju
|
|
if (isset ($_POST['user_base']))
|
|
$user_base = $_POST['user_base'];
|
|
if (isset ($_POST['progressbar']))
|
|
$progressbar = $_POST['progressbar'];
|
|
if (isset ($_POST['spr_id']))
|
|
$spr_id = $_POST['spr_id'];
|
|
if (isset ($_POST['vre_id']))
|
|
$vre_id = $_POST['vre_id'];
|
|
if (isset ($_POST['usr_id']))
|
|
$usr_id = $_POST['usr_id'];
|
|
if (isset ($_POST['value']))
|
|
$value = $_POST['value'];
|
|
if (isset ($_POST['textfield']))
|
|
$textfield = $_POST['textfield'];
|
|
if (isset ($_POST['grd_id']))
|
|
$grd_id = $_POST['grd_id'];
|
|
if (isset ($_POST['timer']))
|
|
$timer = $_POST['timer'];
|
|
if (isset ($_POST['intro_opomba']))
|
|
$intro_opomba = $_POST['intro_opomba'];
|
|
if (isset ($_POST['akronim']))
|
|
$akronim = $_POST['akronim'];
|
|
if (isset ($_POST['paramName']))
|
|
$paramName = $_POST['paramName'];
|
|
if (isset ($_POST['paramValue']))
|
|
$paramValue = $_POST['paramValue'];
|
|
if (isset ($_POST['antonucci']))
|
|
$antonucci = $_POST['antonucci'];
|
|
if (isset ($_POST['podpora']))
|
|
$podpora = $_POST['podpora'];
|
|
if (isset ($_POST['design']))
|
|
$design = $_POST['design'];
|
|
if (isset ($_POST['subject']))
|
|
$subject = $_POST['subject'];
|
|
if (isset ($_POST['grids']))
|
|
$grids = $_POST['grids'];
|
|
if (isset ($_POST['other']))
|
|
$other = $_POST['other'];
|
|
if (isset ($_POST['expire']))
|
|
$expire = $_POST['expire'];
|
|
if (isset ($_POST['starts']))
|
|
$starts = $_POST['starts'];
|
|
if (isset ($_POST['info']))
|
|
$info = $_POST['info'];
|
|
if (isset ($_POST['what']))
|
|
$what = $_POST['what'];
|
|
if (isset ($_POST['state']))
|
|
$state = $_POST['state'];
|
|
if (isset ($_POST['return_finished']))
|
|
$return_finished = $_POST['return_finished'];
|
|
if (isset ($_POST['subsequent_answers']))
|
|
$subsequent_answers = $_POST['subsequent_answers'];
|
|
if (isset ($_POST['cookie_continue']))
|
|
$cookie_continue = $_POST['cookie_continue'];
|
|
if (isset ($_POST['block_ip']))
|
|
$block_ip = $_POST['block_ip'];
|
|
if (isset ($_POST['child']))
|
|
$child = $_POST['child'];
|
|
if (isset ($_POST['reminder']))
|
|
$reminder = $_POST['reminder'];
|
|
if (isset ($_POST['min']))
|
|
$min = $_POST['min'];
|
|
if (isset ($_POST['results']))
|
|
$results = $_POST['results'];
|
|
if (isset ($_POST['vote_limit']))
|
|
$vote_limit = $_POST['vote_limit'];
|
|
if (isset ($_POST['vote_count']))
|
|
$vote_count = $_POST['vote_count'];
|
|
if (isset ($_POST['orientation']))
|
|
$orientation = $_POST['orientation'];
|
|
if (isset ($_POST['pid']))
|
|
$pid = $_POST['pid'];
|
|
|
|
if (strpos($_SERVER['HTTP_REFERER'], 'parent_if') !== false) {
|
|
$_GET['parent_if'] = substr( $_SERVER['HTTP_REFERER'], strpos($_SERVER['HTTP_REFERER'], 'parent_if')+10 );
|
|
}
|
|
|
|
SurveyInfo :: getInstance()->SurveyInit($anketa);
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
$this->survey_type = SurveyInfo :: getInstance()->getSurveyColumn('survey_type');
|
|
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
|
|
|
|
// hendlanje AJAX zahtev (po novem so ene tudi obicne, ne-ajax)
|
|
|
|
if ($_GET['a'] == 'edit_anketa') {
|
|
Common::updateEditStamp();
|
|
if ($naslov != '' && $naslov != 'undefined') {
|
|
sisplet_query("UPDATE srv_anketa SET naslov='$naslov' WHERE id='$anketa'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
}
|
|
$sql = sisplet_query("SELECT naslov FROM srv_anketa WHERE id='$anketa'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
$row = mysqli_fetch_array($sql);
|
|
// echo ' <a href="#" onclick="anketa_title_edit(\''.$this->anketa.'\',\'1\'); return false;" title="'.$lang['srv_anketa_title_edit'].'"><img src="img_'.$this->skin.'/pencil.png" alt="" /></a>';
|
|
echo ' <a href="index.php?anketa=' . $this->anketa . '">' . $row['naslov'] . '</a>';
|
|
|
|
// echo $naslov;
|
|
}
|
|
|
|
elseif ($_GET['a'] == "anketaadddevice") {
|
|
// PDO bom moral dat da bo varno...ko bo čas... torej nikoli :)
|
|
|
|
$name = str_replace ("'", "", $_POST['tablet_name']);
|
|
$secret = str_replace ("'", "", $_POST['tablet_secret']);
|
|
$terminal_srv_id = intval($_POST['terminal_srv_id']);
|
|
$local_srv_id = intval($_POST['sid']);
|
|
|
|
if (is_numeric ($terminal_srv_id) && is_numeric ($local_srv_id) && $terminal_srv_id >0 && $local_srv_id > 0) {
|
|
$sql = sisplet_query("INSERT INTO srv_fieldwork (terminal_id, sid_terminal, sid_server, secret) VALUES ('" .$name ."', '" .$terminal_srv_id ."', '" .$local_srv_id ."', '" .$secret ."')");
|
|
}
|
|
|
|
header ('location: index.php?anketa=' .$local_srv_id .'&a=fieldwork');
|
|
}
|
|
elseif ($_GET['a'] == "anketadeldevice") {
|
|
// PDO bom moral dat da bo varno...ko bo čas... torej nikoli :)
|
|
|
|
$dev_id = intval($_GET['dev']);
|
|
|
|
if (is_numeric ($dev_id) && $dev_id >0) {
|
|
$sql = sisplet_query("DELETE FROM srv_fieldwork WHERE id='" .$dev_id ."'");
|
|
}
|
|
header ('location: index.php?anketa=' .$_GET['srv'] .'&a=fieldwork');
|
|
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_anketa_note') {
|
|
if ($anketa && isset ($_POST['note']) && $_POST['note'] != '' && $_POST['note'] != 'undefined') {
|
|
Common::updateEditStamp();
|
|
$sql = sisplet_query("UPDATE srv_anketa SET intro_opomba='" . $_POST['note'] . "' WHERE id='$anketa'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'edit_anketa_akronim') {
|
|
if ($anketa && isset ($_POST['akronim']) && $_POST['akronim'] != '' && $_POST['akronim'] != 'undefined') {
|
|
Common::updateEditStamp();
|
|
$sql = sisplet_query("UPDATE srv_anketa SET akronim='" . $_POST['akronim'] . "' WHERE id='$anketa'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'quick_title_edit') {
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
$naslov = $row['naslov'];
|
|
$akronim = $row['akronim'];
|
|
|
|
echo '<div id="quick_title_edit" class="divPopUp">';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="quick_title_edit_cancel(); return false;">✕</a></div>';
|
|
|
|
echo '<h2>'.$lang['srv_ime'].'</h2>';
|
|
|
|
echo '<div class="quick_title_edit_label taLeft floatLeft">'.$lang['srv_novaanketa_polnoime'].':</div>';
|
|
echo '<div class="floatLeft" >';
|
|
echo '<input type="text" id="novaanketa_naslov_1" name="novaanketa_naslov_1" value="'.$naslov.'" class="full" maxlength="'.ANKETA_NASLOV_MAXLENGTH.'" onfocus="if(this.value==\''.$lang['srv_naslov'].'\') {this.value=\'\';}" />';
|
|
echo '<span id="novaanketa_naslov_1_chars" class="spaceLeft">'.mb_strlen($naslov, 'UTF-8').'/'.ANKETA_NASLOV_MAXLENGTH.'</span>';
|
|
echo '<br class="clr"/><i class="gray small">'.$lang['srv_interno_ime'].'</i>';
|
|
echo '</div>';
|
|
|
|
echo '<br class="clr"/><br class="clr"/>';
|
|
|
|
echo '<div class="quick_title_edit_label taLeft floatLeft">'.$lang['srv_novaanketa_kratkoime'].':</div>';
|
|
echo '<div class="floatLeft">';
|
|
$name_changed = ($naslov != $akronim) ? '1' : '0';
|
|
echo '<input type="text" id="novaanketa_akronim_1" name="novaanketa_akronim_1" value="'.$akronim.'" class="full" maxlength="'.ANKETA_AKRONIM_MAXLENGTH.'" onfocus="$(this).attr(\'changed\',\'1\'); if(this.value==\''.$lang['srv_naslov'].'\') {this.value=\'\';}" changed="'.$name_changed.'" />';
|
|
echo '<span id="novaanketa_akronim_1_chars" class="spaceLeft">'.mb_strlen($akronim, 'UTF-8').'/'.ANKETA_AKRONIM_MAXLENGTH.'</span>';
|
|
echo '<br class="clr"/><i class="gray small">'.$lang['srv_objavljeno_ime'].'</i>';
|
|
echo '</div>';
|
|
|
|
echo '<br class="clr"/><br class="clr"/>';
|
|
|
|
echo '<div class="quick_title_edit_label taLeft floatLeft">'.$lang['srv_list_no_data_create_note'].':</div>';
|
|
echo '<div class="floatLeft">';
|
|
echo '<textarea id="novaanketa_opis_1" name="novaanketa_opis_1" class="full" rows="3">'.$row['intro_opomba'].'</textarea>';
|
|
echo '</div>';
|
|
|
|
echo '<script>';
|
|
echo "$('#novaanketa_naslov_1').keyup(function(){
|
|
var max = parseInt($(this).attr('maxlength'));
|
|
if($(this).val().length > max){
|
|
$(this).val($(this).val().substr(0, $(this).attr('maxlength')));
|
|
}
|
|
|
|
$('#'+$(this).attr('id')+'_chars').html($(this).val().length + ' / '+max);
|
|
check_akronim();
|
|
|
|
});
|
|
$('#novaanketa_akronim_1').keyup(function(){
|
|
var max = parseInt($(this).attr('maxlength'));
|
|
if($(this).val().length > max){
|
|
$(this).val($(this).val().substr(0, $(this).attr('maxlength')));
|
|
}
|
|
$('#'+$(this).attr('id')+'_chars').html($(this).val().length + ' / '+max);
|
|
|
|
});
|
|
function check_akronim() {
|
|
if ( $('#novaanketa_akronim_1').attr('changed') == '0') {
|
|
$('#novaanketa_akronim_1').val($('#novaanketa_naslov_1').val());
|
|
}
|
|
|
|
var max = $('#novaanketa_akronim_1').attr('maxlength');
|
|
var leng = $('#novaanketa_akronim_1').val().length;
|
|
|
|
$('#novaanketa_akronim_1_chars').html(leng + ' / '+max);
|
|
}
|
|
";
|
|
echo '</script>';
|
|
|
|
|
|
//echo '<span class="floatleft spaceLeft" title="'.$lang['srv_settings_quick'].'"><a class="" href="#" onclick="quick_title_edit_save(\'true\'); return false;"><span>'.$lang['srv_settings_quick'].'</span></a></span>';
|
|
|
|
echo '<div class="buttons_holder">';
|
|
echo '<span class="buttonwrapper floatRight" title="'.$lang['srv_save_profile_yes'].'"><a class="ovalbutton ovalbutton_orange" href="#" onclick="quick_title_edit_save(); return false;"><span>'.$lang['srv_save_profile_yes'].'</span></a></span>';
|
|
echo '<span class="buttonwrapper floatRight spaceRight" title="'.$lang['srv_cancel'].'"><a class="ovalbutton ovalbutton_gray" href="#" onclick="quick_title_edit_cancel(); return false;"><span>'.$lang['srv_cancel'].'</span></a></span>';
|
|
echo '</div>';
|
|
|
|
echo '</div>';
|
|
}
|
|
elseif ($_GET['a'] == 'quick_title_edit_save') {
|
|
|
|
$update=array();
|
|
|
|
if (isset($_POST['naslov']) && trim($_POST['naslov']) != '') {
|
|
$update[] = " naslov='".trim($_POST['naslov'])."'";
|
|
}
|
|
if (isset($_POST['akronim']) && trim($_POST['akronim']) != '') {
|
|
$update[] = " akronim='".trim($_POST['akronim'])."'";
|
|
}
|
|
if (isset($_POST['intro_opomba']) /*&& trim($_POST['intro_opomba']) != ''*/) {
|
|
$update[] = " intro_opomba='".trim($_POST['intro_opomba'])."'";
|
|
}
|
|
if (count($update) > 0 ) {
|
|
sisplet_query("UPDATE srv_anketa SET ".implode(',',$update)." WHERE id='".$this->anketa."'");
|
|
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
if (isset($_POST['quick_settings']) && $_POST['quick_settings'] == 'true') {
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'].'&a='.A_QUICK_SETTINGS;
|
|
return;
|
|
}
|
|
|
|
if (isset($_GET['ajaxa']) && trim($_GET['ajaxa']) != '') {
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'].'&a='.$_GET['ajaxa'];
|
|
return;
|
|
} else {
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'];
|
|
return;
|
|
}
|
|
}
|
|
if (isset($_POST['quick_settings']) && $_POST['quick_settings'] == 'true') {
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'].'&a='.A_QUICK_SETTINGS;
|
|
return;
|
|
}
|
|
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'];
|
|
return;
|
|
}
|
|
elseif ($_GET['a'] == 'editanketaintro') {
|
|
Common::updateEditStamp();
|
|
|
|
$show_intro = $_POST['show_intro'];
|
|
$show_concl = $_POST['show_concl'];
|
|
$concl_link = $_POST['concl_link'];
|
|
$intro_opomba = $_POST['intro_opomba'];
|
|
$concl_opomba = $_POST['concl_opomba'];
|
|
if ($_POST['concl_link'] == 1)
|
|
$concl_link = 0;
|
|
else
|
|
$concl_link = 1;
|
|
|
|
$sql = sisplet_query("UPDATE srv_anketa SET
|
|
introduction='$intro', conclusion='$concl', text='$text', url='$url' ,
|
|
show_intro = '$show_intro', show_concl='$show_concl', concl_link='$concl_link',
|
|
intro_opomba = '$intro_opomba', concl_opomba = '$concl_opomba'
|
|
WHERE id='$anketa'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
header('Location: index.php?anketa=' . $anketa . '');
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'settings_anketa') {
|
|
|
|
$this->anketa = $anketa;
|
|
$this->grupa = $grupa;
|
|
|
|
$this->SurveyAdmin->anketa_nastavitve();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'editanketasettings') {
|
|
Common::updateEditStamp();
|
|
|
|
#sistemske nastavitve
|
|
if ($_GET['m'] == 'system') {
|
|
if (isset ($_POST['SurveyDostop'])) {
|
|
$val = $_POST['SurveyDostop'];
|
|
if ($val >= 0) {
|
|
$sql = sisplet_query("UPDATE misc SET value='$val' WHERE what = 'SurveyDostop'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
if (isset ($_POST['SurveyCookie'])) {
|
|
$val = $_POST['SurveyCookie'];
|
|
$sql = sisplet_query("UPDATE misc SET value='$val' WHERE what = 'SurveyCookie'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
if (isset ($_POST['SurveyForum'])) {
|
|
$val = $_POST['SurveyForum'];
|
|
$sql = sisplet_query("UPDATE misc SET value='$val' WHERE what = 'SurveyForum'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
elseif ($_GET['m'] == 'global_user_settings') {
|
|
if (isset ($_POST['language'])) {
|
|
$lang = $_POST['language'];
|
|
|
|
sisplet_query("UPDATE users SET lang = '$lang' WHERE id = '$global_user_id'");
|
|
}
|
|
|
|
$poslane_spremenljivke = [
|
|
'advancedMySurveys',
|
|
'oneclickCreateMySurveys',
|
|
'lockSurvey',
|
|
'autoActiveSurvey',
|
|
'activeComments',
|
|
'showIntro',
|
|
'showConcl',
|
|
'showSurveyTitle',
|
|
'showSAicon',
|
|
'showLanguageShortcut'
|
|
];
|
|
|
|
foreach($poslane_spremenljivke as $post_variable) {
|
|
if (isset ($_POST[$post_variable])) {
|
|
$val = $_POST[$post_variable];
|
|
|
|
UserSetting::getInstance()->setUserSetting($post_variable, $val);
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
}
|
|
}
|
|
|
|
} elseif ($_GET['m'] == 'global_user_myProfile') {
|
|
|
|
|
|
// preveri prejsnje podatke
|
|
$sqlU = sisplet_query ("SELECT name, surname, email, pass FROM users WHERE id='".$global_user_id."'");
|
|
$rowU = mysqli_fetch_assoc($sqlU);
|
|
|
|
$name_before = $rowU['name'];
|
|
$surname_before = $rowU['surname'];
|
|
$email_before = $rowU['email'];
|
|
$password_before = $rowU['pass'];
|
|
|
|
// Spremenimo ime
|
|
if (isset($_POST['ime']) && $_POST['ime'] != '' && $_POST['ime'] != $name_before) {
|
|
|
|
$checkIme = sisplet_query ("SELECT * FROM users WHERE name='".$_POST['ime']."' AND surname='" .$_POST['priimek']."' AND id!='".$global_user_id."'");
|
|
if (mysqli_num_rows ($checkIme) == 0){
|
|
|
|
$ime = $_POST['ime'];
|
|
//$ime = strtolower($_POST['ime']);
|
|
$ime = CleanXSS($ime);
|
|
|
|
$result = sisplet_query ("UPDATE users SET name='$ime' WHERE id='".$global_user_id."'");
|
|
}
|
|
}
|
|
|
|
// Spremenimo priimek
|
|
if (isset($_POST['priimek']) && $_POST['priimek'] != '' && $_POST['priimek'] != $surname_before) {
|
|
|
|
$checkIme = sisplet_query ("SELECT * FROM users WHERE name='".$_POST['ime']."' AND surname='" .$_POST['priimek']."' AND id!='".$global_user_id."'");
|
|
if (mysqli_num_rows ($checkIme) == 0){
|
|
|
|
$priimek = $_POST['priimek'];
|
|
//$priimek = strtolower($_POST['priimek']);
|
|
$priimek = CleanXSS($priimek);
|
|
|
|
$result = sisplet_query ("UPDATE users SET surname='$priimek' WHERE id='".$global_user_id."'");
|
|
}
|
|
}
|
|
|
|
// Obveščanje posodobi
|
|
if(isset($_POST['gdpr_agree'])){
|
|
sisplet_query ("UPDATE users SET gdpr_agree='".$_POST['gdpr_agree']."' WHERE id='".$global_user_id."'");
|
|
}
|
|
|
|
if(!empty($_POST['google-2fa']) && !empty($_POST['google-2fa-secret'])){
|
|
|
|
User::getInstance($global_user_id)->setOption('google-2fa-secret', $_POST['google-2fa-secret']);
|
|
User::getInstance($global_user_id)->setOption('google-2fa-validation', 'NOT');
|
|
|
|
}elseif(!empty($_POST['google_2fa_koda_validate']) && empty($_POST['google-2fa-secret'])){
|
|
$google2fa = new \Sonata\GoogleAuthenticator\GoogleAuthenticator();
|
|
$secret = User::option($global_user_id, 'google-2fa-secret');
|
|
|
|
if ($google2fa->checkCode($secret, $_POST['google_2fa_koda_validate'])) {
|
|
sisplet_query ("UPDATE user_options SET option_value=NOW() WHERE option_name='google-2fa-validation'");
|
|
echo 'success';
|
|
return true;
|
|
}
|
|
|
|
}
|
|
|
|
if(empty($_POST['google-2fa']) && !empty($_POST['google_2fa_akcija']) && $_POST['google_2fa_akcija'] == 'deactivate' && !empty($_POST['google_2fa_deaktiviraj'])){
|
|
$user_2fa = User::option($global_user_id, 'google-2fa-secret');
|
|
$user_2fa_validate = User::option($global_user_id, 'google_2fa_koda_validate');
|
|
|
|
$google2fa = new \Sonata\GoogleAuthenticator\GoogleAuthenticator();
|
|
|
|
if($google2fa->checkCode($user_2fa, $_POST['google_2fa_deaktiviraj']) && $user_2fa_validate != 'NOT'){
|
|
sisplet_query("DELETE FROM user_options WHERE user_id='".$global_user_id."' AND option_name IN ('google-2fa-secret', 'google-2fa-validation')");
|
|
|
|
echo 'success';
|
|
return true;
|
|
}else{
|
|
echo 'error';
|
|
return true;
|
|
}
|
|
}
|
|
|
|
//Uporabnik si ni kode shranil
|
|
if(empty($_POST['google-2fa']) && !empty($_POST['google_2fa_akcija']) && $_POST['google_2fa_akcija'] == 'reset'){
|
|
|
|
if(User::option($global_user_id, 'google-2fa-validation') == 'NOT') {
|
|
sisplet_query("DELETE FROM user_options WHERE user_id='".$global_user_id."' AND option_name IN ('google-2fa-secret', 'google-2fa-validation')");
|
|
echo 'success';
|
|
return true;
|
|
}
|
|
|
|
}
|
|
|
|
// Spremenimo geslo
|
|
if (isset($_POST['geslo']) && $_POST['geslo'] != '' && $_POST['geslo'] != $password_before) {
|
|
global $pass_salt;
|
|
global $cookie_domain;
|
|
|
|
$geslo = $_POST['geslo'];
|
|
$geslo = CleanXSS ($geslo);
|
|
|
|
if (isset($_POST['geslo'])
|
|
&& $_POST['geslo'] != "PRIMERZELODOLGEGAGESLA"
|
|
&& $password_before != base64_encode((hash('SHA256', $geslo.$pass_salt)))
|
|
&& $_POST['geslo'] == $_POST['geslo2']){
|
|
|
|
|
|
$result = sisplet_query ("UPDATE users SET pass='".base64_encode((hash(SHA256, $geslo.$pass_salt)))."' WHERE id='".$global_user_id."'");
|
|
setcookie('uid', '', time() - 3600, '/', $cookie_domain);
|
|
setcookie('secret', '', time() - 3600, '/', $cookie_domain);
|
|
setcookie('unam', '', time() - 3600, '/', $cookie_domain);
|
|
|
|
global $site_frontend;
|
|
if($site_frontend == 'drupal') {
|
|
setcookie('spremembaGesla', '1', time() + 3600, '/',
|
|
$cookie_domain);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Alternativni emaili
|
|
if (isset($_POST['alternative_email']) && validEmail($_POST['alternative_email'])) {
|
|
|
|
global $pass_salt;
|
|
$email = $_POST['alternative_email'];
|
|
|
|
// naredi link za aktivacijo
|
|
$code = base64_encode((hash('SHA256', time() .$pass_salt . $email. $rowU['name'])));
|
|
|
|
// Vstavimo novega userja v users_to_be kjer caka na aktivacijo
|
|
$insert_id = sisplet_query ("INSERT INTO users_to_be
|
|
(type, email, name, user_id, timecode, code, lang)
|
|
VALUES
|
|
('3', '".$email."', '".$rowU['name']."', '".$global_user_id."', '".time()."', '$code', '" .$lang['id']. "')", "id");
|
|
|
|
$poslji_email = [];
|
|
|
|
$PageName = AppSettings::getInstance()->getSetting('app_settings-app_name');
|
|
|
|
// Pošljemo email na alternativni email in nato še na primarni email samo obvestilo o dodanem emailu
|
|
$poslji_email['novi'] = [
|
|
'email' => $email,
|
|
'naslov' => str_replace ("#PAGENAME#", $PageName, $lang['add_alternative_email_subject'])
|
|
];
|
|
$poslji_email['primarni'] = [
|
|
'email' => $email_before,
|
|
'naslov' => str_replace ("#PAGENAME#", $PageName, $lang['add_alternative_primary_email_subject'])
|
|
];
|
|
|
|
$uporabnik = sisplet_query("SELECT name, surname FROM users WHERE id='".$global_user_id."'", "obj");
|
|
|
|
// Sporočilo, ki ga posredujemo na nov email za aktivacijo
|
|
$alVsebina = str_replace ("#PRIMARNIEMAIL#", $email_before, $lang['add_alternative_email']);
|
|
$alVsebina = str_replace ("#ALTERNATIVNIEMAIL#", $email, $alVsebina);
|
|
$alVsebina = str_replace ("#NAME#", $uporabnik->name .' ' .$uporabnik->surname, $alVsebina);
|
|
$alVsebina = str_replace ("#PAGENAME#", $PageName, $alVsebina);
|
|
$alVsebina = str_replace ("#CODESTART#", '<a href="' .$site_url .'frontend/api/api.php?action=activate_second_email&enc='.base64_encode('code=' .$code .'&id=' .$insert_id).'">', $alVsebina);
|
|
$alVsebina = str_replace ("#CODEEND#", '</a>', $alVsebina);
|
|
|
|
|
|
// Pošljemo še email na primarni email
|
|
$prVsebina= str_replace ("#ALTERNATIVNIEMAIL#", $email, $lang['add_alternative_primary_email']);
|
|
$prVsebina= str_replace ("#NAME#", $uporabnik->name .' ' .$uporabnik->surname, $prVsebina);
|
|
$prVsebina= str_replace ("#PAGENAME#", $PageName, $prVsebina);
|
|
|
|
// Podpis
|
|
$signature = Common::getEmailSignature();
|
|
$poslji_email['novi']['vsebina'] = $alVsebina . $signature;
|
|
$poslji_email['primarni']['vsebina'] = $prVsebina. $signature;
|
|
|
|
|
|
foreach($poslji_email as $poslji) {
|
|
try {
|
|
$MA = new MailAdapter();
|
|
$MA->addRecipients($poslji['email']);
|
|
$MA->sendMail(stripslashes($poslji['vsebina']), $poslji['naslov']);
|
|
} catch (Exception $e) {
|
|
error_log("Email pri dodajanju emaila ni bil poslan: $e");
|
|
}
|
|
}
|
|
|
|
echo 'success';
|
|
return true;
|
|
}
|
|
|
|
if (isset($_POST['active_email']) && $_POST['active_email'] != 'new') {
|
|
|
|
$emails = User::getInstance()->allEmails('without master');
|
|
|
|
foreach($emails as $email){
|
|
$active = 0;
|
|
if($email->id == $_POST['active_email'] )
|
|
$active = 1;
|
|
|
|
sisplet_query("UPDATE user_emails SET active='".$active."' WHERE id='".$email->id."'");
|
|
}
|
|
}
|
|
|
|
|
|
if (isset($_POST['izbrisiAlternativniEmail']) && $_POST['izbrisiAlternativniEmail'] == 1 && !empty($_POST['alternativniEmailId'])) {
|
|
sisplet_query("DELETE FROM user_emails WHERE user_id='".$global_user_id."' AND id='".$_POST['alternativniEmailId']."'");
|
|
}
|
|
|
|
// Izbriše račun - v bazi posatvimo na 0 in spremenimo email, da je bil odjavljen
|
|
if (isset($_POST['izbrisiRacun']) && $_POST['izbrisiRacun'] == 1) {
|
|
global $cookie_domain;
|
|
|
|
$result = sisplet_query ("UPDATE users SET status=0, email=CONCAT('UNSU8MD-', UNIX_TIMESTAMP(), email) WHERE id='".$global_user_id."'");
|
|
|
|
setcookie ('uid', '', time()-3600, '/', $cookie_domain);
|
|
setcookie ('secret', '', time()-3600, '/', $cookie_domain);
|
|
setcookie ('unam', '', time()-3600, '/', $cookie_domain);
|
|
|
|
echo 'izbrisan';
|
|
return null;
|
|
}
|
|
|
|
} elseif ($_GET['m'] == A_MAILING || $_GET['m'] == 'inv_server' || $_GET['m'] == 'email_server') { // smtp mailing
|
|
if ($_POST['submited'] == 1){
|
|
|
|
if ((int)$_POST['anketa'] > 0){
|
|
$this->anketa = $_POST['anketa'];
|
|
}
|
|
|
|
// Squalo vklopljen
|
|
if(isset($_POST['squalo_mode'])){
|
|
|
|
// 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 = 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) {
|
|
if (substr($key, 0, 7) == 'timing_') {
|
|
GlobalMisc::setMisc($key, $val);
|
|
}
|
|
}
|
|
} else { // globalne nastavitve
|
|
|
|
if (isset ($_POST['phone']) || isset ($_POST['email'])) {
|
|
$phone = $_POST['phone'];
|
|
$email = $_POST['email'];
|
|
// nastavimo respondente iz baze, kreiramo novo sistemsko spremenljivko
|
|
if ($phone == 1 or $email == 1) {
|
|
$this->SurveyAdmin->createUserbaseSystemVariable($phone, $email);
|
|
$user_base = 1;
|
|
} else {
|
|
$this->SurveyAdmin->createUserbaseSystemVariable($phone, $email);
|
|
$user_base = 0;
|
|
$_POST['user_base'] = 0;
|
|
}
|
|
}
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
|
|
if (isset($_POST['resp_change_lang'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('resp_change_lang', $_POST['resp_change_lang']);
|
|
}
|
|
|
|
if (isset($_POST['resp_change_lang_type'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('resp_change_lang_type', $_POST['resp_change_lang_type']);
|
|
}
|
|
|
|
if (isset($_POST['display_backlink'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('display_backlink', $_POST['display_backlink']);
|
|
}
|
|
|
|
if (isset($_POST['mobile_friendly'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('mobile_friendly', $_POST['mobile_friendly']);
|
|
}
|
|
|
|
if (isset($_POST['hide_mobile_img'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('hide_mobile_img', $_POST['hide_mobile_img']);
|
|
}
|
|
|
|
if (isset($_POST['mobile_tables'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('mobile_tables', $_POST['mobile_tables']);
|
|
}
|
|
|
|
if (isset($_POST['export_font_size'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_font_size', $_POST['export_font_size']);
|
|
}
|
|
if (isset($_POST['export_numbering'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_numbering', $_POST['export_numbering']);
|
|
}
|
|
if (isset($_POST['export_show_if'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_show_if', $_POST['export_show_if']);
|
|
}
|
|
if (isset($_POST['export_show_intro'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_show_intro', $_POST['export_show_intro']);
|
|
}
|
|
|
|
if (isset($_POST['export_data_type'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_type', $_POST['export_data_type']);
|
|
}
|
|
if (isset($_POST['export_data_font_size'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_font_size', $_POST['export_data_font_size']);
|
|
}
|
|
if (isset($_POST['export_data_numbering'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_numbering', $_POST['export_data_numbering']);
|
|
}
|
|
if (isset($_POST['export_data_show_if'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_show_if', $_POST['export_data_show_if']);
|
|
}
|
|
if (isset($_POST['export_data_show_recnum'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_show_recnum', $_POST['export_data_show_recnum']);
|
|
}
|
|
if (isset($_POST['export_data_PB'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_PB', $_POST['export_data_PB']);
|
|
}
|
|
if (isset($_POST['export_data_skip_empty'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_skip_empty', $_POST['export_data_skip_empty']);
|
|
}
|
|
if (isset($_POST['export_data_skip_empty_sub'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_skip_empty_sub', $_POST['export_data_skip_empty_sub']);
|
|
}
|
|
if (isset($_POST['export_data_landscape'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('export_data_landscape', $_POST['export_data_landscape']);
|
|
}
|
|
|
|
if (isset($_POST['privacy'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_privacy', $_POST['privacy']);
|
|
}
|
|
|
|
if (isset($_POST['survey_hint'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_hint', $_POST['survey_hint']);
|
|
}
|
|
|
|
if (isset($_POST['survey_hide_title'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_hide_title', $_POST['survey_hide_title']);
|
|
}
|
|
|
|
if (isset($_POST['survey_track_reminders'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_track_reminders', $_POST['survey_track_reminders']);
|
|
}
|
|
|
|
if (isset($_POST['enumerate'])) {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('enumerate', $_POST['enumerate']);
|
|
}
|
|
|
|
if (isset($_POST['anketa_folder'])) {
|
|
|
|
if($_POST['anketa_folder'] == '0'){
|
|
$sql = sisplet_query("DELETE FROM srv_mysurvey_anketa WHERE ank_id='".$anketa."' AND usr_id='".$global_user_id."'");
|
|
}
|
|
else{
|
|
// Razpremo folder v akterega uvrscamo anketo
|
|
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET open='1' WHERE id='".$_POST['anketa_folder']."' AND usr_id='".$global_user_id."'");
|
|
|
|
// Vstavimo anketo
|
|
$sql = sisplet_query("INSERT INTO srv_mysurvey_anketa (ank_id, usr_id, folder) VALUES ('".$anketa."', '".$global_user_id."', '".$_POST['anketa_folder']."') ON DUPLICATE KEY UPDATE folder='".$_POST['anketa_folder']."'");
|
|
}
|
|
}
|
|
|
|
// shranjujemo dodatne prevode besedil...
|
|
if (isset($_POST['extra_translations'])) {
|
|
|
|
// Preverimo, če dobimo podatek za izbris vseh prevodov
|
|
$post = $_POST;
|
|
if(!empty($_POST['remove_lang'])){
|
|
$post = [];
|
|
parse_str($_POST['data'], $post);
|
|
}
|
|
|
|
foreach ($post AS $key => $val) {
|
|
if (substr($key, 0, 8) == 'srvlang_') {
|
|
if ($val != '' && empty($_POST['remove_lang'])) {
|
|
// očistimo HTML tage, če gre za gumbe
|
|
if (in_array(substr($key, 8), [
|
|
'srv_nextpage',
|
|
'srv_nextpage_uvod',
|
|
'srv_prevpage',
|
|
'srv_lastpage',
|
|
'srv_forma_send',
|
|
'srv_konec'
|
|
])) {
|
|
$val = strip_tags($val);
|
|
}
|
|
|
|
// Počistimo besedilo preden shranimo v bazo, saj je bila težava za tuje jezike
|
|
$purifier = New Purifier();
|
|
$val = $purifier->purify_DB($val);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting($key, $val);
|
|
} else {
|
|
SurveySetting::removeSurveyMiscSetting($key);
|
|
}
|
|
// pri osnovnem jeziku vnesemo 2x - enkrat brez pripone ID jezika, enkrat s pripono (ker se nekje uporablja eno, nekje drugo...)
|
|
if (! is_numeric(substr($key, strrpos($key, '_') + 1))) {
|
|
if ($val != '') {
|
|
SurveySetting::getInstance()->setSurveyMiscSetting($key.'_'.SurveyInfo::getInstance()->getSurveyColumn('lang_resp'), $val);
|
|
} else {
|
|
SurveySetting::removeSurveyMiscSetting($key.'_'.SurveyInfo::getInstance()->getSurveyColumn('lang_resp'));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Ce imamo vec jezikov popravimo vrednost v sistemskem vprasanju "language"
|
|
if(isset($_POST['lang_resp'])){
|
|
|
|
// Popravljamo samo ce imamo vec jezikov
|
|
$sqlL = sisplet_query("SELECT id FROM srv_language WHERE ank_id='$this->anketa'");
|
|
if (mysqli_num_rows($sqlL) > 0){
|
|
$new_resp_lang_id = $_POST['lang_resp'];
|
|
$old_resp_lang_id = SurveyInfo::getInstance()->getSurveyColumn('lang_resp');
|
|
|
|
// Dobimo id vprasanja
|
|
$sqlS = sisplet_query("SELECT s.id AS spr_id FROM srv_spremenljivka s, srv_grupa g WHERE g.ank_id='$this->anketa' AND s.gru_id=g.id AND s.skupine='3'");
|
|
$spr_id = 0;
|
|
if(mysqli_num_rows($sqlS) > 0){
|
|
|
|
$rowS = mysqli_fetch_array($sqlS);
|
|
$spr_id = $rowS['spr_id'];
|
|
|
|
if($spr_id > 0){
|
|
|
|
$p = new Prevajanje($this->anketa);
|
|
$bck_lang_id = $lang['id'];
|
|
|
|
// Pobrisemo staro vrednost default jezika za respondente
|
|
$p->include_lang($old_resp_lang_id);
|
|
// Noce prjet zaradi čšž-jev tko da je to se najlazje:)
|
|
if (strcmp($lang['language'], 'Slovenščina') == 0)
|
|
$sqlV = sisplet_query("DELETE FROM srv_vrednost WHERE naslov='Slovenščina' AND spr_id='$spr_id'");
|
|
else
|
|
$sqlV = sisplet_query("DELETE FROM srv_vrednost WHERE naslov='".$lang['language']."' AND spr_id='$spr_id'");
|
|
|
|
// Dodamo novo vrednost v vprasanje "language"
|
|
$v = new Vprasanje($this->anketa);
|
|
$v->spremenljivka = $spr_id;
|
|
$p->include_lang($new_resp_lang_id);
|
|
$vre_id = $v->vrednost_new($lang['language']);
|
|
|
|
// Preklopimo nazaj na originalen jezik
|
|
$p->include_lang($bck_lang_id);
|
|
|
|
// Prestevilcimo in popravimo vrstni red
|
|
Common::repareVrednost($spr_id);
|
|
Common::prestevilci($spr_id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Zaradi zavihkov sproti preverjamo katere variable lahko shranimo če so bile podane preko $_POST
|
|
$allVariableToSave = array (
|
|
'cookie',
|
|
'cookie_return',
|
|
'return_finished',
|
|
'subsequent_answers',
|
|
'cookie_continue',
|
|
'user_from_cms',
|
|
'user_base',
|
|
'phone',
|
|
'email',
|
|
'social_network',
|
|
'quiz',
|
|
'uporabnost',
|
|
'usercode_skip',
|
|
'usercode_required',
|
|
'usercode_text',
|
|
'block_ip',
|
|
'starts',
|
|
'expire',
|
|
'dostop',
|
|
'odgovarja',
|
|
'vote_limit',
|
|
'vote_count',
|
|
'form_open',
|
|
'lang_admin',
|
|
'lang_resp',
|
|
'multilang',
|
|
'slideshow',
|
|
'mass_insert',
|
|
'show_email',
|
|
'show_concl',
|
|
'concl_link',
|
|
'url',
|
|
'conclusion',
|
|
'concl_end_button',
|
|
'concl_back_button',
|
|
'vprasanje_tracking',
|
|
'continue_later',
|
|
'js_tracking',
|
|
'defValidProfile',
|
|
'showItime',
|
|
'showLineNumber',
|
|
'parapodatki'
|
|
);
|
|
|
|
|
|
// ce mamo radio: user_from_cms potem mamo tudi checkbox user_from_cms_email
|
|
if(isset($_POST['user_from_cms'])) {
|
|
$allVariableToSave[] = 'user_from_cms_email';
|
|
if (!isset($_POST['user_from_cms_email']))
|
|
$_POST['user_from_cms_email'] = 0;
|
|
if ($_POST['user_from_cms']==2 && !isset($_POST['cookie']))
|
|
$_POST['cookie'] = -1;
|
|
}
|
|
|
|
$setString = "";
|
|
$prefix = "";
|
|
foreach ($allVariableToSave as $value) {
|
|
|
|
if (isset ($_POST[$value]) ) {
|
|
$setString .= $prefix . $value . " = '" . $_POST[$value] . "'"; // tale se ze zanasa na mysqli_real_escape_string($GLOBALS['connect_db'], _string() v function.php
|
|
$prefix = ", ";
|
|
}
|
|
}
|
|
|
|
# če je anketa označena kot trajna, jo hkrati aktiviramo če še ni
|
|
if (isset($_POST['trajna_anketa']) && $_POST['trajna_anketa'] == 'on') {
|
|
$setString .= $prefix . "active = '1'";
|
|
$prefix = ", ";
|
|
}
|
|
|
|
if ($setString != "") {
|
|
$sql = sisplet_query("UPDATE srv_anketa SET " . $setString . " WHERE id='$anketa'") or die(mysqli_error($GLOBALS['connect_db']));
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
}
|
|
|
|
if (isset($_POST['progressbar'])) {
|
|
$sql = sisplet_query("UPDATE srv_anketa SET progressbar='$_POST[progressbar]' WHERE id='$anketa'");
|
|
}
|
|
|
|
if ($_POST['quiz'] == 1) { // za kviz je anketa vedno v pogoji in bloki načinu
|
|
sisplet_query("UPDATE srv_anketa SET survey_type='3' WHERE id = '$anketa'");
|
|
ob_start();
|
|
$ba = new BranchingAjax($this->anketa);
|
|
$ba->ajax_dodaj_blok_interpretacije();
|
|
ob_get_clean();
|
|
}
|
|
|
|
// nastavitve za knjiznico
|
|
if (isset($_POST['javne_ankete'])) {
|
|
if ($_POST['javne_ankete'] == 1) {
|
|
$sqlk = sisplet_query("SELECT * FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='0'");
|
|
if (mysqli_num_rows($sqlk) == 0) {
|
|
$sql1 = sisplet_query("SELECT id FROM srv_library_folder WHERE uid='0' AND tip='1' AND parent='0' AND lang='$lang[id]'");
|
|
$row1 = mysqli_fetch_array($sql1);
|
|
sisplet_query("INSERT INTO srv_library_anketa (ank_id, uid, folder) VALUES ('$this->anketa', '0', '$row1[id]')");
|
|
}
|
|
} else {
|
|
sisplet_query("DELETE FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='0'");
|
|
}
|
|
}
|
|
if (isset($_REQUEST['moje_ankete'])) {
|
|
if ($_REQUEST['moje_ankete'] == 1) {
|
|
$sqlk = sisplet_query("SELECT * FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='$global_user_id'");
|
|
if (mysqli_num_rows($sqlk) == 0) {
|
|
$sql1 = sisplet_query("SELECT id FROM srv_library_folder WHERE uid='$global_user_id' AND tip='1' AND parent='0'");
|
|
$row1 = mysqli_fetch_array($sql1);
|
|
sisplet_query("INSERT INTO srv_library_anketa (ank_id, uid, folder) VALUES ('$this->anketa', '$global_user_id', '$row1[id]')");
|
|
}
|
|
} else {
|
|
sisplet_query("DELETE FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='$global_user_id'");
|
|
}
|
|
}
|
|
|
|
if ($_POST['multilang'] == 1) {
|
|
$this->SurveyAdmin->createUserbaseSystemVariable(0, 0, 1);
|
|
}
|
|
|
|
SurveySetting::getInstance()->Init($anketa);
|
|
|
|
$surveysetting = array(
|
|
'survey_comment',
|
|
'survey_comment_showalways',
|
|
'question_comment',
|
|
'survey_comment_viewadminonly',
|
|
'survey_comment_viewauthor',
|
|
'question_comment_viewadminonly',
|
|
'question_comment_viewauthor',
|
|
'question_resp_comment_viewadminonly',
|
|
'question_resp_comment_inicialke',
|
|
'question_resp_comment_inicialke_alert',
|
|
'question_resp_comment',
|
|
'survey_comment_resp',
|
|
'survey_comment_showalways_resp',
|
|
'survey_comment_viewadminonly_resp',
|
|
'survey_comment_viewauthor_resp',
|
|
'question_comment_text',
|
|
'question_note_write',
|
|
'question_note_view',
|
|
'question_resp_comment_show_open',
|
|
'sortpostorder',
|
|
'addfieldposition',
|
|
'commentmarks',
|
|
'commentmarks_who',
|
|
'comment_history',
|
|
'survey_ip',
|
|
'survey_show_ip',
|
|
'survey_browser',
|
|
'survey_js',
|
|
'survey_referal',
|
|
'survey_date',
|
|
'preview_disableif',
|
|
'preview_disablealert',
|
|
'preview_displayifs',
|
|
'preview_displayvariables',
|
|
'preview_hidecomment',
|
|
'preview_hide_survey_comment',
|
|
'preview_survey_comment_showalways',
|
|
'preview_disable_test_insert',
|
|
);
|
|
|
|
foreach ($surveysetting AS $key) {
|
|
if ( isset($_POST[$key]) )
|
|
SurveySetting::getInstance()->setSurveyMiscSetting($key, $_POST[$key]);
|
|
}
|
|
|
|
// shranjujemo skrivanje metapodatkov
|
|
if (isset($_POST['hide_metadata'])) {
|
|
foreach ($_POST AS $key => $val) {
|
|
if (substr($key, 0, 14) == 'hide_metadata_') {
|
|
if ($val == 1)
|
|
SurveySetting::getInstance()->setSurveyMiscSetting($key, '1');
|
|
else
|
|
SurveySetting::removeSurveyMiscSetting($key);
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($dostop_edit == 1 && isset ($global_user_id) && $global_user_id > 0) {
|
|
global $admin_type;
|
|
|
|
$uid = $_POST['uid'];
|
|
|
|
// ne pustimo da ni izbran noben user, ker potem nihče več nima dostopa do ankete zato dodamo kontrolo na global_user_id
|
|
// prav tako ne smemo onemogočiti dostopa avtorju
|
|
$avtorSql = sisplet_query("SELECT insert_uid FROM srv_anketa WHERE id='" . $this->anketa . "'");
|
|
$avtorRow = mysqli_fetch_assoc($avtorSql);
|
|
|
|
// 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 . "'";
|
|
if ($admin_type == 0) {
|
|
$avtorPogoj = '';
|
|
$avtorID = '';
|
|
}
|
|
$uid_canedits = " AND uid NOT IN (".implode(',', $uid).") ";
|
|
$sql = sisplet_query("DELETE FROM srv_dostop WHERE ank_id='$anketa' ". $avtorID . $avtorPogoj . $uid_canedits);
|
|
if (!$sql) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
if (isset ($uid) && $uid != null && is_array($uid))
|
|
foreach ($uid AS $val) {
|
|
//if ($val != $global_user_id)
|
|
$sql = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, aktiven) VALUES ('$anketa', '$val', '1')");
|
|
}
|
|
|
|
// pasivnih ni vec.....................
|
|
if (isset($_POST['uid_passive']) && $_POST['uid_passive'] != null && is_array($_POST['uid_passive']))
|
|
foreach ($_POST['uid_passive'] AS $val) {
|
|
//if ($val != $global_user_id)
|
|
$sql = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, aktiven) VALUES ('$anketa', '$val', '0')");
|
|
}
|
|
|
|
if (isset($_POST['dostop_language'])) {
|
|
sisplet_query("DELETE FROM srv_dostop_language WHERE ank_id = '$anketa'");
|
|
foreach ($_POST['dostop_language'] AS $val) {
|
|
$val = explode('-', $val);
|
|
$uid = $val[0];
|
|
$lang_id = $val[1];
|
|
sisplet_query("INSERT INTO srv_dostop_language (ank_id, uid, lang_id) VALUES ('$anketa', '$uid', '$lang_id')");
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($_POST['comment_send'] != '') {
|
|
|
|
// nastavitev, da se okno s komentarji prvic prikaze odprto
|
|
if ($_POST['srv_c_alert'] == '1')
|
|
$ocena = 5;
|
|
else $ocena = 0;
|
|
|
|
$ba = new BranchingAjax($this->anketa);
|
|
$ba->ajax_comment_manage(0, 0, $_POST['comment_send'], $ocena);
|
|
|
|
// posiljanje komentarjev na maile
|
|
if ($_POST['srv_c_to_mail'] == '1') {
|
|
|
|
$sr = SurveyInfo::getSurveyRow();
|
|
|
|
foreach ($_POST['mails'] AS $email) {
|
|
|
|
//$email = $rowa['email'];
|
|
$content = $_POST['comment_send'].' <br /><br /><a href="'.$site_url.'admin/survey/index.php?anketa='.$this->anketa.'">'.$site_url.'admin/survey/index.php?anketa='.$this->anketa.'</a>';
|
|
$subject = $lang['srv_admin_s_comments'].': '.$sr['naslov'];
|
|
|
|
try
|
|
{
|
|
$MA = new MailAdapter($this->anketa, $type='alert');
|
|
$MA->addRecipients($email);
|
|
$resultX = $MA->sendMail(stripslashes($content), $subject);
|
|
}
|
|
catch (Exception $e)
|
|
{
|
|
}
|
|
|
|
if ($resultX) {
|
|
$status = 1; // poslalo ok
|
|
} else {
|
|
$status = 2; // ni poslalo
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# nastavimo še stvari za slideshow
|
|
if (isset($_POST['slideshow'])) {
|
|
if ((int)$_POST['slideshow'] == 1) {
|
|
# spremenimo skin v slideshow
|
|
$ss = new SurveySlideshow($this->anketa);
|
|
$ss -> setSlideshowSkin();
|
|
}
|
|
}
|
|
|
|
$urlprefix = "?";
|
|
if (isset ($anketa) && $anketa != null && $anketa != "") {
|
|
$anketaurl = $urlprefix . 'anketa=' . $anketa;
|
|
$urlprefix = "&";
|
|
}
|
|
if ($_REQUEST['location'] == 'jezik' && $_REQUEST['multilang'] == '1') {
|
|
$locationurl = $urlprefix . 'a=prevajanje';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['uporabnost'] == 1) {
|
|
$locationurl = $urlprefix . 'a=uporabnost';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['user_from_cms'] == 2 && $_REQUEST['location'] != 'piskot') {
|
|
$locationurl = $urlprefix . 'a=vnos';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['quiz'] == 1) {
|
|
$locationurl = $urlprefix . 'a=kviz';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['phone'] == 1) {
|
|
$locationurl = $urlprefix . 'a='.A_TELEPHONE;
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['email'] == 1) {
|
|
#$locationurl = $urlprefix . 'a=invitations';
|
|
$locationurl = $urlprefix . 'a='.A_VABILA;
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['social_network'] == 1) {
|
|
$locationurl = $urlprefix . 'a=social_network';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'vabila ') {
|
|
// izpisemo vsebino nastavitev za vabila
|
|
$locationurl = $urlprefix . 'a='.A_VABILA;
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['slideshow'] == 1) {
|
|
$locationurl = $urlprefix.'a=slideshow';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'system') {
|
|
$locationurl = $urlprefix.'a=nastavitve&m=system';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'global_user_settings') {
|
|
$locationurl = $urlprefix.'a=nastavitve&m=global_user_settings';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'global_user_myProfile') {
|
|
$locationurl = $urlprefix.'a=nastavitve&m=global_user_myProfile';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'predvidenicasi') {
|
|
$locationurl = $urlprefix.'a=nastavitve&m=predvidenicasi';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'vabila_settings') {
|
|
$locationurl = $urlprefix.'a='.A_VABILA;
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'inv_server') {
|
|
$locationurl = $urlprefix.'a=invitations&m=inv_settings';
|
|
$urlprefix = "&";
|
|
} else if ($_REQUEST['m'] == 'email_server') {
|
|
$locationurl = $urlprefix.'a=alert&m=email_server';
|
|
$urlprefix = "&";
|
|
} else if ($_POST['location'] == 'handleUserCodeSetting') {
|
|
$locationurl = $urlprefix.'&a='.A_VABILA;
|
|
$urlprefix = "&";
|
|
} else {
|
|
$location = (isset ($_POST['location']) && $_POST['location'] != null && $_POST['location'] != "") ? $location = $_POST['location'] : 'nastavitve';
|
|
$locationurl = $urlprefix . 'a=' . $location;
|
|
$urlprefix = "&";
|
|
}
|
|
if (isset($_REQUEST['submited']) && $_REQUEST['submited'] == 1) {
|
|
$locationurl .= $urlprefix.'s=1'.($_GET['show_back'] ? '&show_back=true' : '');
|
|
}
|
|
if ( isset($_REQUEST['lang_id']) ) {
|
|
$locationurl .= $urlprefix.'lang_id='.$_REQUEST['lang_id'];
|
|
}
|
|
header('Location: ' . $site_url . 'admin/survey/index.php' . $anketaurl . $locationurl);
|
|
}
|
|
elseif ($_GET['a'] == 'enableEmailInvitation') {
|
|
|
|
// Vklop vabil z individualizirano kodo (posta, sms)
|
|
if(isset($_POST['what']) && $_POST['what'] == '2'){
|
|
sisplet_query("UPDATE srv_anketa SET user_base='1', usercode_required='1', show_email='0' WHERE id='$anketa'");
|
|
SurveySession::sessionStart($anketa);
|
|
SurveySession::set('inv_noEmailing', 1);
|
|
}
|
|
// Vklop vabil brez individualizirano kode (samo posiljanje mailov)
|
|
elseif(isset($_POST['what']) && $_POST['what'] == '3'){
|
|
sisplet_query("UPDATE srv_anketa SET user_base='1', individual_invitation='0', usercode_skip='1', show_email='0' WHERE id='$anketa'");
|
|
}
|
|
// Vklop vabil za rocno posiljanje
|
|
elseif(isset($_POST['what']) && $_POST['what'] == '4'){
|
|
sisplet_query("UPDATE srv_anketa SET user_base='1', usercode_required='1', show_email='0' WHERE id='$anketa'");
|
|
}
|
|
// Vklop klasicnih email vabil
|
|
else{
|
|
sisplet_query("UPDATE srv_anketa SET user_base='1', show_email='0' WHERE id='$anketa'");
|
|
}
|
|
|
|
sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$anketa."', 'email')");
|
|
|
|
sisplet_query('COMMIT');
|
|
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $anketa.'&a=invitations&s=1';
|
|
exit();
|
|
}
|
|
elseif ($_GET['a'] == 'editanketatema') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_anketa SET skin='$skin', progressbar='$progressbar' WHERE id='$anketa'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
header('Location: index.php?anketa=' . $anketa . '&a=tema&s=1');
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'editanketaalert') {
|
|
Common::updateEditStamp();
|
|
if ($_POST['m'] == 'complete') {
|
|
if ($alert_finish_respondent != 1)
|
|
$alert_finish_respondent = 0;
|
|
if ($alert_finish_respondent_cms != 1)
|
|
$alert_finish_respondent_cms = 0;
|
|
if ($alert_finish_author != 1)
|
|
$alert_finish_author = 0;
|
|
if ($alert_finish_other != 1 || !$alert_finish_other_emails)
|
|
$alert_finish_other = 0; // če ni emailov, damo alert_more na 0
|
|
|
|
// shranimo dodatne emaile
|
|
$mySqlInsert = sisplet_query("INSERT INTO srv_alert (ank_id, finish_respondent, finish_respondent_cms, finish_author, finish_other, finish_other_emails, finish_subject, finish_text, reply_to) VALUES " .
|
|
"('".$this->anketa."', '$alert_finish_respondent', '$alert_finish_respondent_cms', '$alert_finish_author', '$alert_finish_other', '$alert_finish_other_emails', '$alert_finish_subject', '$alert_finish_text', '$_POST[reply_to]') " .
|
|
"ON DUPLICATE KEY UPDATE finish_respondent = '$alert_finish_respondent', finish_respondent_cms = '$alert_finish_respondent_cms', finish_author = '$alert_finish_author', finish_other = '$alert_finish_other', finish_other_emails='$alert_finish_other_emails', finish_subject='$alert_finish_subject', finish_text='$alert_finish_text', reply_to='$_POST[reply_to]'");
|
|
if (!$mySqlInsert)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
// ponastavimo alert_admin
|
|
// najprej vse stare zapise postavimo na 0 nato pa setiramo na 1 kjer je potrebno
|
|
$mysqlUpdate = sisplet_query("UPDATE srv_dostop SET alert_complete='0' WHERE ank_id = '$this->anketa'");
|
|
if (!$mysqlUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
if ($alert_finish_author && $alert_finish_author_uid) {
|
|
foreach ($alert_finish_author_uid as $authorId) {
|
|
$sqlInsertUpdate = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, alert_complete) VALUES ('$this->anketa', '$authorId', 1) ON DUPLICATE KEY UPDATE alert_complete=1");
|
|
if (!$sqlInsertUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
|
|
} else if ($_POST['m'] == 'expired') {
|
|
if ($alert_expire_author != 1)
|
|
$alert_expire_author = 0;
|
|
if ($alert_expire_other != 1 || !$alert_expire_other_emails)
|
|
$alert_expire_other = 0; // če ni emailov, damo alert_more na 0
|
|
|
|
// izračunamo datum kdaj moramo obvestiti uporabnike
|
|
$dayDif = is_numeric($alert_expire_days) ? $alert_expire_days : 0;
|
|
|
|
$mySqlInsert = sisplet_query("INSERT INTO srv_alert (ank_id, expire_days, expire_author, expire_other, expire_other_emails, expire_subject, expire_text, reply_to) VALUES " .
|
|
"('".$this->anketa."', '$dayDif', '$alert_expire_author', '$alert_expire_other', '$alert_expire_other_emails', '$alert_expire_subject', '$alert_expire_text', '$_POST[reply_to]') " .
|
|
"ON DUPLICATE KEY UPDATE expire_days = '$dayDif', expire_author = '$alert_expire_author', expire_other = '$alert_expire_other', expire_other_emails='$alert_expire_other_emails', expire_subject='$alert_expire_subject', expire_text='$alert_expire_text', reply_to='$_POST[reply_to]'");
|
|
if (!$mySqlInsert)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
// ponastavimo alert_admin
|
|
// najprej vse stare zapise postavimo na 0 nato pa setiramo na 1 kjer je potrebno
|
|
$mysqlUpdate = sisplet_query("UPDATE srv_dostop SET alert_expire='0' WHERE ank_id = '$anketa'");
|
|
if (!$mysqlUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
if ($alert_expire_author && $alert_expire_author_uid) {
|
|
foreach ($alert_expire_author_uid as $authorId) {
|
|
$sqlInsertUpdate = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, alert_expire) VALUES ('$this->anketa', '$authorId', 1) ON DUPLICATE KEY UPDATE alert_expire=1");
|
|
if (!$sqlInsertUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
|
|
SurveyAlert::getInstance()->Init($anketa, $global_user_id);
|
|
SurveyAlert::getInstance()->prepareSendExpireAlerts();
|
|
|
|
} elseif ($_POST['m'] == 'active') {
|
|
|
|
if ($alert_active_author != 1)
|
|
$alert_active_author = 0;
|
|
if ($alert_active_other != 1 || !$alert_active_other_emails)
|
|
$alert_active_other = 0; // če ni emailov, damo alert_more na 0
|
|
|
|
$mySqlInsert = sisplet_query("INSERT INTO srv_alert (ank_id, active_author, active_other, active_other_emails, active_subject0, active_text0, active_subject1, active_text1, reply_to) VALUES " .
|
|
"('".$this->anketa."', '$alert_active_author', '$alert_active_other', '$alert_active_other_emails', '$alert_active_subject0', '$alert_active_text0', '$alert_active_subject1', '$alert_active_text1', '$_POST[reply_to]') " .
|
|
"ON DUPLICATE KEY UPDATE active_author = '$alert_active_author', active_other = '$alert_active_other', active_other_emails='$alert_active_other_emails', active_subject0='$alert_active_subject0', active_text0='$alert_active_text0', active_subject1='$alert_active_subject1', active_text1='$alert_active_text1', reply_to='$_POST[reply_to]'");
|
|
|
|
if (!$mySqlInsert)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
// ponastavimo alert_admin
|
|
// najprej vse stare zapise postavimo na 0 nato pa setiramo na 1 kjer je potrebno
|
|
$mysqlUpdate = sisplet_query("UPDATE srv_dostop SET alert_active='0' WHERE ank_id = '$anketa'");
|
|
if (!$mysqlUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
if ($alert_active_author && $alert_active_author_uid) {
|
|
foreach ($alert_active_author_uid as $authorId) {
|
|
$sqlInsertUpdate = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, alert_active) VALUES ('$this->anketa', '$authorId', 1) ON DUPLICATE KEY UPDATE alert_active=1");
|
|
if (!$sqlInsertUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
} else if ($_POST['m'] == 'delete') {
|
|
|
|
if ($alert_delete_author != 1)
|
|
$alert_delete_author = 0;
|
|
if ($alert_delete_other != 1 || !$alert_delete_other_emails)
|
|
$alert_delete_other = 0; // če ni emailov, damo alert_more na 0
|
|
|
|
$mySqlInsert = sisplet_query("INSERT INTO srv_alert (ank_id, delete_author, delete_other, delete_other_emails, delete_subject, delete_text, reply_to) VALUES " .
|
|
"('".$this->anketa."', '$alert_delete_author', '$alert_delete_other', '$alert_delete_other_emails', '$alert_delete_subject', '$alert_delete_text', '$_POST[reply_to]') " .
|
|
"ON DUPLICATE KEY UPDATE delete_author = '$alert_delete_author', delete_other = '$alert_delete_other', delete_other_emails='$alert_delete_other_emails', delete_subject='$alert_delete_subject', delete_text='$alert_delete_text', reply_to='$_POST[reply_to]'");
|
|
if (!$mySqlInsert)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
// ponastavimo alert_admin
|
|
// najprej vse stare zapise postavimo na 0 nato pa setiramo na 1 kjer je potrebno
|
|
$mysqlUpdate = sisplet_query("UPDATE srv_dostop SET alert_delete='0' WHERE ank_id = '$anketa'");
|
|
if (!$mysqlUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
if ($alert_delete_author && $alert_delete_author_uid) {
|
|
foreach ($alert_delete_author_uid as $authorId) {
|
|
$sqlInsertUpdate = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, alert_delete) VALUES ('$this->anketa', '$authorId', 1) ON DUPLICATE KEY UPDATE alert_delete=1");
|
|
if (!$sqlInsertUpdate)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
header('Location: index.php?anketa=' . $anketa . '&a=alert&m='.$_POST['m'].(isset($_REQUEST['submited']) && $_REQUEST['submited'] == 1 ? '&s=1' : ''));
|
|
} elseif ($_GET['a'] == 'alert_edit_if') {
|
|
Common::updateEditStamp();
|
|
|
|
$uid = $_POST['uid'];
|
|
$type = $_POST['type'];
|
|
|
|
if ($type == 1) { // avtor oz. kdor ma dostop
|
|
|
|
$sql = sisplet_query("SELECT alert_complete_if FROM srv_dostop WHERE uid = '$uid' AND ank_id='$this->anketa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['alert_complete_if'] > 0) {
|
|
$if = $row['alert_complete_if'];
|
|
} else {
|
|
sisplet_query("INSERT INTO srv_if (id) VALUES ('')");
|
|
$if = mysqli_insert_id($GLOBALS['connect_db']);
|
|
$s = sisplet_query("INSERT INTO srv_condition (id, if_id, vrstni_red) VALUES ('', '$if', '1')");
|
|
$s = sisplet_query("UPDATE srv_dostop SET alert_complete_if='$if' WHERE uid = '$uid' AND ank_id='$this->anketa'");
|
|
}
|
|
|
|
} elseif ($type == 2) { // respondent
|
|
|
|
$sql = sisplet_query("SELECT finish_respondent_if FROM srv_alert WHERE ank_id='$this->anketa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['finish_respondent_if'] > 0) {
|
|
$if = $row['finish_respondent_if'];
|
|
} else {
|
|
sisplet_query("INSERT INTO srv_if (id) VALUES ('')");
|
|
$if = mysqli_insert_id($GLOBALS['connect_db']);
|
|
$s = sisplet_query("INSERT INTO srv_condition (id, if_id, vrstni_red) VALUES ('', '$if', '1')");
|
|
$s = sisplet_query("UPDATE srv_alert SET finish_respondent_if='$if' WHERE ank_id='$this->anketa'");
|
|
}
|
|
|
|
} elseif ($type == 3) { // respondent iz cmsja
|
|
|
|
$sql = sisplet_query("SELECT finish_respondent_cms_if FROM srv_alert WHERE ank_id='$this->anketa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['finish_respondent_cms_if'] > 0) {
|
|
$if = $row['finish_respondent_cms_if'];
|
|
} else {
|
|
sisplet_query("INSERT INTO srv_if (id) VALUES ('')");
|
|
$if = mysqli_insert_id($GLOBALS['connect_db']);
|
|
$s = sisplet_query("INSERT INTO srv_condition (id, if_id, vrstni_red) VALUES ('', '$if', '1')");
|
|
$s = sisplet_query("UPDATE srv_alert SET finish_respondent_cms_if='$if' WHERE ank_id='$this->anketa'");
|
|
}
|
|
|
|
} elseif ($type == 4) { // ostali (vneseni rocno)
|
|
|
|
$sql = sisplet_query("SELECT finish_other_if FROM srv_alert WHERE ank_id='$this->anketa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['finish_other_if'] > 0) {
|
|
$if = $row['finish_other_if'];
|
|
} else {
|
|
sisplet_query("INSERT INTO srv_if (id) VALUES ('')");
|
|
$if = mysqli_insert_id($GLOBALS['connect_db']);
|
|
$s = sisplet_query("INSERT INTO srv_condition (id, if_id, vrstni_red) VALUES ('', '$if', '1')");
|
|
$s = sisplet_query("UPDATE srv_alert SET finish_other_if='$if' WHERE ank_id='$this->anketa'");
|
|
}
|
|
|
|
}
|
|
|
|
if ( ! $if > 0 ) return;
|
|
|
|
$b = new Branching($this->anketa);
|
|
$b->condition_editing($if, -3);
|
|
|
|
} elseif ($_GET['a'] == 'anketa' || $_GET['a'] == 'nova-anketa-in-hierarhija' || $_GET['a'] == 'anketa_from_text') {
|
|
Common::updateEditStamp();
|
|
|
|
if (trim($_POST['survey_type']) == '') {
|
|
$_POST['survey_type'] = 2;
|
|
}
|
|
$anketa = $this->SurveyAdmin->nova_anketa($naslov, $intro_opomba, $akronim, $_POST['survey_type'], $skin);
|
|
|
|
// Ce imamo pri ustvarjanju doloceno tudi mapo, anketo vstavimo v njo
|
|
if(isset($_POST['folder']) && $_POST['folder'] > 0){
|
|
|
|
// Razpremo folder v akterega uvrscamo anketo
|
|
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET open='1' WHERE id='".$_POST['folder']."' AND usr_id='".$global_user_id."'");
|
|
|
|
// Vstavimo anketo
|
|
$sql = sisplet_query("INSERT INTO srv_mysurvey_anketa (ank_id, usr_id, folder) VALUES ('".$anketa."', '".$global_user_id."', '".$_POST['folder']."')");
|
|
}
|
|
|
|
// Če ob ustvarjanju ankete vključimo še hierarhijos
|
|
if(!empty($_POST['vkljuciHierarhijo'])){
|
|
sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$anketa."', 'hierarhija')");
|
|
|
|
(new \Hierarhija\Hierarhija($anketa))->DolociPraviceUporabniku();
|
|
}
|
|
|
|
// Ce ustvarjamo anketo preko uvoza iz besedila
|
|
if(isset($_POST['from_text']) && $_GET['a'] == 'anketa_from_text'){
|
|
|
|
$from_text = $_POST['from_text'];
|
|
$text_array = Common::anketaArrayFromText($from_text);
|
|
|
|
$spr_id = 0;
|
|
|
|
// Loop po vseh vprasanjih, ki jih uvazamo
|
|
foreach($text_array as $vprasanje){
|
|
|
|
$ba = new BranchingAjax($anketa);
|
|
|
|
// Imamo samo naslov vprasanja - text tip (21)
|
|
if(count($vprasanje) == 1){
|
|
$b = new Branching($anketa);
|
|
$spr_id = $ba->spremenljivka_new(0, 0, 1);
|
|
|
|
Vprasanje::change_tip($spr_id, $tip='21');
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov='".$vprasanje['title']."' WHERE id='".$spr_id."'");
|
|
}
|
|
// Imamo variable - radio tip (1)
|
|
else{
|
|
$b = new Branching($anketa);
|
|
$spr_id = $ba->spremenljivka_new(0, 0, 1);
|
|
|
|
Vprasanje::change_tip($spr_id, $tip='1');
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov='".$vprasanje['title']."' WHERE id='".$spr_id."'");
|
|
$sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spr_id'");
|
|
|
|
unset($vprasanje['title']);
|
|
|
|
// Loop po variablah
|
|
foreach($vprasanje as $key => $var_title){
|
|
|
|
$v = new Vprasanje();
|
|
$v->spremenljivka = $spr_id;
|
|
$vrednost = $v->vrednost_new($var_title);
|
|
|
|
Common::prestevilci($spr_id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
flush();
|
|
|
|
echo 'index.php?anketa=' . $anketa;
|
|
|
|
} elseif ($_GET['a'] == 'anketa_active') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
if ($row['active'] == 0) {
|
|
$active = 1;
|
|
$backup = 0;
|
|
|
|
# preverimo ali ima uporabnik izklopljeno zaklepanje
|
|
# polovimo nastavitve uporabnika
|
|
global $global_user_id;
|
|
UserSetting::getInstance()->Init($global_user_id);
|
|
# ali zaklepamo anketo ob aktivaciji
|
|
$lockSurvey = UserSetting::getInstance()->getUserSetting('lockSurvey');
|
|
|
|
$locked = "'".(int)$lockSurvey."'";
|
|
|
|
// ponastavimo datume
|
|
if ($_POST['starts']) {
|
|
$starts = ", starts='" . $_POST['starts'] . "' ";
|
|
$activity_starts = "'".$_POST['starts']."'";
|
|
} else {
|
|
$starts = ", starts=NOW() ";
|
|
$activity_starts = 'NOW()';
|
|
}
|
|
if ($_POST['expire']) {
|
|
# če je datum expire od trajne ankete '2099-01-01' in anketo deaktiviramo moramo spremeniti datum expire da ni več videti kot trajna
|
|
if ($_POST['expire'] == PERMANENT_DATE) {
|
|
$dateToday = date("Y-m-d"); // danes
|
|
$_POST['expire'] = $dateToday;
|
|
}
|
|
$expire = ", expire='" . $_POST['expire'] . "' ";
|
|
$activity_expire = "'".$_POST['expire']."'";
|
|
} else {
|
|
$expire = ", expire=NOW() + INTERVAL 30 DAY ";
|
|
$activity_expire = 'NOW() + INTERVAL 30 DAY';
|
|
}
|
|
} else {
|
|
$active = 0;
|
|
$backup = $row['backup'];
|
|
$locked = "locked";
|
|
|
|
if(Common::checkModule('maza') && SurveyInfo::getSurveyModules('maza')){
|
|
$maza = new MAZA($this->anketa);
|
|
$maza ->maza_off();
|
|
}
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_anketa SET active='$active', backup='$backup', locked=$locked $starts $expire WHERE id = '$anketa'");
|
|
|
|
# dodamo zapis v srv_activity
|
|
if ($active == 1) {
|
|
$activity_insert_string = "INSERT INTO srv_activity (sid, starts, expire, uid) VALUES('".$anketa."', $activity_starts, $activity_expire, '".$global_user_id."' );";
|
|
$sql_insert = sisplet_query($activity_insert_string);
|
|
}
|
|
|
|
# vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
# posljemo mail ob spremembi aktivnosti ankete
|
|
SurveyAlert::getInstance()->Init($anketa, $global_user_id);
|
|
SurveyAlert::getInstance()->sendMailActive();
|
|
|
|
# popravimo tudi alerte za pošiljanje ob poteku ankete
|
|
SurveyAlert::getInstance()->setDefaultAlertBeforeExpire();
|
|
|
|
|
|
$this->anketa = $anketa;
|
|
if ($_POST['folders'] && $_POST['folders'] == 'true') { // če smo na folderjih zlistamo folderje
|
|
# osvezimo samo ikonico in ne celotnih map
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
echo '<a href="#" onclick="anketa_active(\''.$this->anketa.'\',\''.(int)$row['active'].'\',\'true\'); return false;">' .
|
|
'<img src="'.$site_url.'admin/survey/icons/icons/star_'.((int)$row['active']==1?'on':'off').'.png" alt="'.(int)$row['active'].'" title="'.((int)$row['active']==1?$lang['srv_anketa_active']:$lang['srv_anketa_noactive']).'" />'.
|
|
'</a> ';
|
|
}
|
|
else { // čene izpišemo zgornjo vrstico ankete in nardimo link
|
|
$this->SurveyAdmin->displayAktivnost();
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'anketa_vabila_sending') {
|
|
$_GET['a'] = 'email';
|
|
$_GET['m'] = 'usermailing';
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->usermailing();
|
|
}
|
|
elseif ($_GET['a'] == 'anketa_delete') {
|
|
Common::updateEditStamp();
|
|
|
|
$rowa = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
//notify all maza app users who participate in this survey that this survey has ended
|
|
if(SurveyInfo::getSurveyModules('maza') && $rowa['active'] = 1){
|
|
$maza = new MAZA($this->anketa);
|
|
$maza ->maza_off();
|
|
}
|
|
|
|
$this->SurveyAdmin->anketa_delete($anketa);
|
|
|
|
# če postamo iz survey_lista (prva stran) preverimo koliko anket je ostalo, če je bila zadnja osvežimo celotno stran
|
|
if (isset($_POST['inList'] ) && $_POST['inList'] == 'true' ) {
|
|
# preštejemo število anket.
|
|
global $admin_type, $global_user_id;
|
|
//SELECT count(sa.id) AS cnt FROM srv_anketa sa WHERE sa.backup='0' AND sa.id > 0 AND (sa.dostop >= '2' OR sa.id IN (SELECT ank_id FROM srv_dostop WHERE uid='90'))
|
|
$stringSurveyList = "SELECT count(sa.id) AS cnt FROM srv_anketa sa WHERE sa.backup='0' AND sa.id > 0 AND (sa.dostop >= '".$admin_type."' OR sa.id IN (SELECT ank_id FROM srv_dostop WHERE uid='".$global_user_id."'))";
|
|
$sqlSurveyList = sisplet_query($stringSurveyList);
|
|
$rowSurveyList = mysqli_fetch_assoc($sqlSurveyList);
|
|
# v ajax post vrnemo število anket
|
|
echo $rowSurveyList['cnt'];
|
|
return;
|
|
}
|
|
if ($rowa['backup'] > 0)
|
|
echo 'index.php?anketa=' . $rowa['backup'] . '&a=arhivi';
|
|
else
|
|
echo 'index.php';
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'nova_grupa') {
|
|
Common::updateEditStamp();
|
|
|
|
if($anketa > 0){
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$anketa'");
|
|
$nums = mysqli_num_rows($sql);
|
|
$vrstni_red = $nums + 1;
|
|
|
|
$sql = sisplet_query("INSERT INTO srv_grupa (id, ank_id, naslov, vrstni_red) VALUES ('', '$anketa', '$lang[srv_stran] $vrstni_red', '$vrstni_red')");
|
|
$insert_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
// Ce dodamo 4. stran vklopimo progress indicator (pri 3 straneh ali manj je po default izklopljen)
|
|
if($vrstni_red == 4){
|
|
$sqlP = sisplet_query("UPDATE srv_anketa SET progressbar='1' WHERE id='$anketa'");
|
|
}
|
|
|
|
echo 'index.php?anketa=' . $anketa . '&grupa=' . $insert_id . '&novagrupa=true';
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_grupa') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_grupa SET naslov = '$naslov' WHERE id='$grupa'");
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'save_edit_grupa') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_grupa SET naslov = '$naslov' WHERE id='$grupa'");
|
|
echo '<span id="grupaName">' . $naslov . "</span>";
|
|
$this->SurveyAdmin->showEditPageDiv($grupa, false);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'save_edit_uporabnost_link') {
|
|
Common::updateEditStamp();
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('uporabnost_link_'.$_POST['grupa'], $_POST['link']);
|
|
$sql = sisplet_query("SELECT naslov FROM srv_grupa WHERE id = '$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
echo '<span id="grupaName">' . $row['naslov'] . "</span>";
|
|
$this->SurveyAdmin->showEditPageDiv($grupa, false);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'brisi_grupo') {
|
|
Common::updateEditStamp();
|
|
|
|
if($grupa > 0 && $anketa > 0){
|
|
|
|
$sql = sisplet_query("SELECT id FROM srv_spremenljivka WHERE gru_id='$grupa'");
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
$sql1 = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$row[id]'");
|
|
}
|
|
$sql = sisplet_query("DELETE FROM srv_spremenljivka WHERE gru_id='$grupa'");
|
|
|
|
$sqlOldGrupa = sisplet_query("SELECT vrstni_red FROM srv_grupa WHERE id='$grupa'");
|
|
$rowOldGrupa = mysqli_fetch_assoc($sqlOldGrupa);
|
|
$sql = sisplet_query("DELETE FROM srv_grupa WHERE id = '$grupa'");
|
|
|
|
// popravimo vrstni red grup
|
|
$sqlUpdateVrestniRed = sisplet_query("UPDATE srv_grupa SET vrstni_red = vrstni_red-1 WHERE id = '$grupa' AND vrstni_red > '".$rowOldGrupa['vrstni_red']."'");
|
|
|
|
// preverimo ce imamo kaksno grupo
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$anketa'");
|
|
$nums = mysqli_num_rows($sql);
|
|
if ($nums == 0) {
|
|
// dodamo eno grupo
|
|
$vrstni_red = 1;
|
|
$sql = sisplet_query("INSERT INTO srv_grupa (id, ank_id, naslov, vrstni_red) VALUES ('', '$anketa', '$lang[srv_stran] $vrstni_red', '$vrstni_red')");
|
|
$insert_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $anketa;
|
|
die();
|
|
}
|
|
$this->SurveyAdmin->repareGrupa($anketa);
|
|
|
|
if ($thisgrupa != $grupa) {
|
|
$redirect = '&grupa=' . $thisgrupa;
|
|
} else
|
|
$redirect = '';
|
|
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $anketa . '&grupa=' . $redirect;
|
|
die();
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'nova_spremenljivka') {
|
|
Common::updateEditStamp();
|
|
|
|
$rowb = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
$this->grupa = $grupa;
|
|
|
|
if ($rowb['branching'] == 0) { // obicno dodajanje spremenljivke
|
|
|
|
if ($this->grupa > 0) {
|
|
|
|
$sql = sisplet_query("SELECT ank_id, vrstni_red FROM srv_grupa WHERE id = '$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$this->anketa = $row['ank_id'];
|
|
|
|
if ($spremenljivka > 0) {
|
|
$row3 = Cache::srv_spremenljivka($spremenljivka);
|
|
$vrstni_red = $row3['vrstni_red'];
|
|
|
|
$sql3 = sisplet_query("UPDATE srv_spremenljivka SET vrstni_red = vrstni_red+1 WHERE gru_id = '$grupa' AND vrstni_red >= '$vrstni_red'");
|
|
} else {
|
|
$sql3 = sisplet_query("SELECT id FROM srv_spremenljivka WHERE gru_id='$grupa'");
|
|
$nums = mysqli_num_rows($sql3);
|
|
$vrstni_red = $nums +1;
|
|
}
|
|
$spr_id = $this->SurveyAdmin->nova_spremenljivka($grupa, $row['vrstni_red'], $vrstni_red);
|
|
}
|
|
|
|
} else { // ce mamo branching, je treba dodati tudi v srv_branching
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
|
|
$Branching->spremenljivka_new($spremenljivka);
|
|
|
|
$Branching->repare_vrstni_red();
|
|
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
$this->SurveyAdmin->vprasanja();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'nova_spremenljivka_vrivanje') {
|
|
Common::updateEditStamp();
|
|
|
|
$last = substr($spremenljivka, strlen($spremenljivka) - 5, strlen($spremenljivka));
|
|
|
|
//ugotovimo id grupe kjer se je zgodil drop
|
|
if ($last == "_last") {
|
|
//dodajanje na konec (popravimo spremenljivko)
|
|
$spremenljivka = substr($spremenljivka, 0, strlen($spremenljivka) - 5);
|
|
|
|
// ni vprasanj, ugotovimo id prve grupe
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$this->anketa' ORDER BY vrstni_red LIMIT 1");
|
|
$row = mysqli_fetch_array($sql);
|
|
$grupa = $row['id'];
|
|
} else {
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
$grupa = $row['gru_id'];
|
|
}
|
|
|
|
$this->grupa = $grupa;
|
|
|
|
//ugotovimo vrstni red grupe
|
|
$sql = sisplet_query("SELECT ank_id, vrstni_red FROM srv_grupa WHERE id = '$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$this->anketa = $row['ank_id'];
|
|
|
|
//ugotovimo vrstni red vprasanja kamor ga vstavljamo
|
|
$row3 = Cache::srv_spremenljivka($spremenljivka);
|
|
$vrstni_red = $row3['vrstni_red'];
|
|
|
|
if ($last == "_last") {
|
|
$vrstni_red++;
|
|
}
|
|
//popravimo vrstni red vprasanj za vstavljenim
|
|
$sql3 = sisplet_query("UPDATE srv_spremenljivka SET vrstni_red = vrstni_red+1 WHERE gru_id = '$grupa' AND vrstni_red >= '$vrstni_red'");
|
|
|
|
//ustvarimo novo vprasanje na pravem mestu
|
|
$this->SurveyAdmin->nova_spremenljivka($grupa, $row['vrstni_red'], $vrstni_red);
|
|
|
|
//nastavimo tudi tip vprasanja ki smo ga draggali
|
|
//substring je st. vprasanja (tip)
|
|
$type = substr($child, 10);
|
|
|
|
//textbox vprasanje - ena vrstica
|
|
if ($type == "401") {
|
|
$type = 4;
|
|
}
|
|
//textbox vprasanje - 5 vrstic
|
|
elseif ($type == "405") {
|
|
$sql = sisplet_query("SELECT params FROM srv_spremenljivka WHERE gru_id='$grupa' AND vrstni_red='$vrstni_red'");
|
|
$row = mysqli_fetch_array($sql);
|
|
Common::updateEditStamp();
|
|
|
|
// v polje params spremenljivke shranimo spremembo parametra
|
|
$newParams = new enkaParameters($row['params']);
|
|
$newParams->set("taSize", 5);
|
|
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET params='" . $newParams->getString() . "' WHERE gru_id='$grupa' AND vrstni_red='$vrstni_red'");
|
|
|
|
$type = 4;
|
|
}
|
|
|
|
$sql5 = sisplet_query("UPDATE srv_spremenljivka SET tip='$type' WHERE gru_id='$grupa' AND vrstni_red='$vrstni_red'");
|
|
//popravimo size na 1 za število
|
|
if ($type == 7 || $type == 21)
|
|
$sql5 = sisplet_query("UPDATE srv_spremenljivka SET size='1' WHERE gru_id='$grupa' AND vrstni_red='$vrstni_red'");
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
$this->SurveyAdmin->vprasanja();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'nova_spremenljivka_in_grupa') {
|
|
Common::updateEditStamp();
|
|
|
|
$rowb = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
if ($_POST['grupa'] == 'all') {
|
|
// ugotovimo id grupa od spremenljivke
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
$this->grupa = $row['gru_id'];
|
|
$grupa = $row['gru_id'];
|
|
|
|
} else {
|
|
$this->grupa = $_POST['grupa'];
|
|
$grupa = $_POST['grupa'];
|
|
}
|
|
|
|
if ($rowb['branching'] == 0) { // obicno dodajanje spremenljivke
|
|
|
|
if ($this->grupa > 0) {
|
|
$sql = sisplet_query("SELECT ank_id, vrstni_red FROM srv_grupa WHERE id = '$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$this->anketa = $row['ank_id'];
|
|
|
|
if ($spremenljivka > 0) {
|
|
$row3 = Cache::srv_spremenljivka($spremenljivka);
|
|
$vrstni_red = $row3['vrstni_red'];
|
|
|
|
$sql3 = sisplet_query("UPDATE srv_spremenljivka SET vrstni_red = vrstni_red+1 WHERE gru_id = '$grupa' AND vrstni_red >= '$vrstni_red'");
|
|
} else {
|
|
$sql3 = sisplet_query("SELECT id FROM srv_spremenljivka WHERE gru_id='$grupa'");
|
|
$nums = mysqli_num_rows($sql3);
|
|
$vrstni_red = $nums +1;
|
|
}
|
|
}
|
|
|
|
//ustvarimo novo vprasanje na pravem mestu
|
|
$spr_id = $this->SurveyAdmin->nova_spremenljivka($grupa, $row['vrstni_red'], $vrstni_red);
|
|
|
|
} else { // ce mamo branching, je treba dodati tudi v srv_branching
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
|
|
$Branching->spremenljivka_new($spremenljivka);
|
|
|
|
$Branching->repare_vrstni_red();
|
|
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
if (isset($_POST['full_screen']) && $_POST['full_screen'] == 'true') { // v fullscreenu vrnemo samo id nove spremenljivke
|
|
echo $spr_id;
|
|
} else { // v normalnem načinu vrenmo html editmode vprašanja
|
|
if ($rowb['branching'] == 0)
|
|
$movable = ' movable';
|
|
else
|
|
$movable = '';
|
|
|
|
// prikažemo vprašanje v edit načinu
|
|
echo ' <div id="spremenljivka_' . $spr_id . '" class="spremenljivka' . $movable . '">';
|
|
$this->SurveyAdmin->vprasanje_edit($spr_id);
|
|
echo ' </div> <!-- /spremenljivka_' . $spr_id . ' -->';
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'refresh_grupe') {
|
|
$this->SurveyAdmin->grupe();
|
|
}
|
|
elseif ($_GET['a'] == 'refresh_right_panel') {
|
|
global $site_url;
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $anketa . '&grupa='.$grupa;
|
|
}
|
|
elseif ($_GET['a'] == 'brisi_spremenljivko') {
|
|
$this->ajax_brisi_spremenljivko();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'nova_vrednost') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id='$spremenljivka' AND vrstni_red>0");
|
|
$row = mysqli_fetch_array($sql);
|
|
$nums = mysqli_num_rows($sql);
|
|
$vrstni_red = $nums +1;
|
|
|
|
$row1 = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
$variable = $vrstni_red; // tole se itak popravi v prestevilci()
|
|
|
|
// če smo postali polje undecided, rejected inappropriate
|
|
$_otherStatus = array (
|
|
99,
|
|
98,
|
|
97
|
|
);
|
|
$_otherStatusFields = array (
|
|
99 => 'undecided',
|
|
98 => 'rejected',
|
|
97 => 'inappropriate'
|
|
);
|
|
$_otherStatusDefaults = array (
|
|
99 => 'Ne vem',
|
|
98 => 'Zavrnil',
|
|
97 => 'Neustrezno'
|
|
);
|
|
|
|
if (!in_array($other, $_otherStatus)) { // nismo kreirali polja 99,98,97
|
|
if ($other == 1)
|
|
$naslov = $lang['srv_other'] . ':';
|
|
else
|
|
$naslov = '';
|
|
// vrednost dodamo v tabelo
|
|
$sql = sisplet_query("INSERT INTO srv_vrednost (id, spr_id, naslov, variable, vrstni_red, other) " .
|
|
"VALUES ('', '$spremenljivka', '$naslov', '$variable', '$vrstni_red', '$other')");
|
|
} else {
|
|
// polja 99,98,97 damo v tabelo srv_vrednost smo za spremenljivke tipa: 1,2,3,4,7,8
|
|
if (in_array($row1['tip'], array (
|
|
1,
|
|
2,
|
|
3,
|
|
4,
|
|
7,
|
|
8
|
|
))) { // za tipe vprašanj 1,2,3 dodamo variablo v tabelo srv_vrednost
|
|
// po novem so neopredeljene vrednosti negativne : -99,-98,-97
|
|
$_otherVariables = array ( 99=>'-99',98=>'-98',97=>'-97');
|
|
|
|
$variable = $_otherVariables[$other];
|
|
$naslov = $_otherStatusDefaults[$other];
|
|
$sql = sisplet_query("INSERT INTO srv_vrednost (id, spr_id, naslov, variable, vrstni_red, other) " .
|
|
"VALUES ('', '$spremenljivka', '$naslov', '$variable', '$vrstni_red', '$other')");
|
|
}
|
|
|
|
// spremenimo nastavitev v srv_spremenljvka
|
|
if ($row1[$_otherStatusFields[$other]] == 0) {
|
|
$_updateState = $_otherStatusFields[$other] . "='1'";
|
|
} else {
|
|
$_updateState = $_otherStatusFields[$other] . "='0'";
|
|
// pobrišemo spremenljivkko če je nastavljena
|
|
$sqlDelete = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id = '" . $spremenljivka . "' AND other = '" . $other . "'");
|
|
}
|
|
|
|
// nardimo updejt posameznega polja ( undecided, rejected inappropriate) v tabeli srv_spremenljivka
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET $_updateState WHERE id='$spremenljivka'");
|
|
// enako mormo updejtat kadar pobrišemo vrednost preko gumba -
|
|
}
|
|
|
|
// dodamo vrednosti -4 za novo variablo k že vpisanim odgovorom
|
|
// multigridu dodamo vrednost -4
|
|
if ($row1['tip'] == 6) {
|
|
$sql = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id = '$spremenljivka'");
|
|
$sql1 = sisplet_query("SELECT id FROM srv_user WHERE ank_id='$anketa'");
|
|
while ($row1 = mysqli_fetch_assoc($sql1)) {
|
|
mysqli_data_seek($sql, 0);
|
|
while ($row = mysqli_fetch_assoc($sql)) {
|
|
$s = sisplet_query("INSERT INTO srv_data_grid".$this->db_table." (spr_id, vre_id, usr_id, grd_id) VALUES ('$spremenljivka', '$row[id]', '$row1[id]', '-4')");
|
|
}
|
|
}
|
|
}
|
|
if ($row1['tip'] == 16) { // multicheckbox
|
|
$sql = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id = '$spremenljivka'");
|
|
$sql1 = sisplet_query("SELECT id FROM srv_user WHERE ank_id='$anketa'");
|
|
while ($row1 = mysqli_fetch_assoc($sql1)) {
|
|
mysqli_data_seek($sql, 0);
|
|
while ($row = mysqli_fetch_assoc($sql)) {
|
|
$s = sisplet_query("INSERT INTO srv_data_grid".$this->db_table." (spr_id, vre_id, usr_id, grd_id) VALUES ('$spremenljivka', '$row[id]', '$row1[id]', '-4')");
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($row1['tip'] == 17) {
|
|
$sql = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id = '$spremenljivka'");
|
|
$sql1 = sisplet_query("SELECT id FROM srv_user WHERE ank_id='$anketa'");
|
|
while ($row1 = mysqli_fetch_assoc($sql1)) {
|
|
mysqli_data_seek($sql, 0);
|
|
while ($row = mysqli_fetch_assoc($sql)) {
|
|
$s = sisplet_query("INSERT INTO srv_data_rating (spr_id, vre_id, usr_id, vrstni_red) VALUES ('$spremenljivka', '$row[id]', '$row1[id]', '-4')");
|
|
}
|
|
}
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci($spremenljivka);
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_vrednost') {
|
|
Common::updateEditStamp();
|
|
$sql = sisplet_query("SELECT variable FROM srv_vrednost WHERE id ='$vrednost'");
|
|
$row = mysqli_fetch_array($sql);
|
|
if ($row['variable'] != $variable)
|
|
$variable_custom = ", variable_custom='1' ";
|
|
else
|
|
$variable_custom = '';
|
|
|
|
$sql = sisplet_query("UPDATE srv_vrednost SET naslov = '$naslov', naslov2 ='$naslov2', variable='$variable' $variable_custom WHERE id='$vrednost'");
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_vrednost_size') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_vrednost SET size = '$size' WHERE id = '$vrednost'");
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'edit_vsota') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vsota = '$vrednost' WHERE id='$spremenljivka'");
|
|
}
|
|
elseif ($_GET['a'] == 'edit_limit') {
|
|
Common::updateEditStamp();
|
|
|
|
if($vrednost == "")
|
|
$vrednost = 0;
|
|
if($min == "")
|
|
$min = 0;
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vsota_limit = '$vrednost', vsota_min = '$min' WHERE id='$spremenljivka'");
|
|
}
|
|
elseif ($_GET['a'] == 'edit_vsota_omejitve') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vsota_limittype = '$tip' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->display_vsota_omejitve($spremenljivka, $tip);
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_vsota_reminder') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vsota_reminder = '$reminder' WHERE id='$spremenljivka'");
|
|
}
|
|
elseif ($_GET['a'] == 'editor_vrednost') {
|
|
|
|
$sql = sisplet_query("SELECT naslov, naslov2, variable, spr_id FROM srv_vrednost WHERE id = '$vrednost'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
echo '<p><b>' . $lang['srv_editirajvrednost'] . '</b></p>';
|
|
echo '<form action="">';
|
|
echo '<textarea name="naslov" id="naslovvrednost_' . $vrednost . '">' . $row['naslov'] . '</textarea>';
|
|
echo '<input type="hidden" name="naslov2" id="naslov2_' . $vrednost . '" value="' . $row['naslov2'] . '">';
|
|
echo '<input type="hidden" name="variable" id="variable_' . $vrednost . '" value="' . $row['variable'] . '">';
|
|
echo '<input type="submit" value="' . $lang['srv_zapri'] . '"
|
|
onclick="javascript:editor_vrednost_close(\'' . $vrednost . '\', \'' . $row['spr_id'] . '\'); return false;">';
|
|
echo '</form>';
|
|
}
|
|
elseif ($_GET['a'] == 'editor_note') {
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
echo '<p><b>' . $lang['srv_editirajopombo'] . '</b></p>';
|
|
|
|
echo '<form action="">';
|
|
echo '<textarea name="naslov" id="naslovvnote_' . $spremenljivka . '">' . $row['info'] . '</textarea>';
|
|
echo '<input type="submit" value="' . $lang['srv_zapri'] . '"
|
|
onclick="javascript:editor_note_close(\'' . $spremenljivka . '\'); return false;">';
|
|
echo '</form>';
|
|
}
|
|
elseif ($_GET['a'] == 'editor_note_save') {
|
|
|
|
$info = $_POST['content'];
|
|
$sqlUpdate = sisplet_query("UPDATE srv_spremenljivka SET info ='" . $info . "' WHERE id = '" . $spremenljivka . "'");
|
|
}
|
|
elseif ($_GET['a'] == 'brisi_vrednost') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("SELECT spr_id, other FROM srv_vrednost WHERE id = '$vrednost'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$spremenljivka = $row['spr_id'];
|
|
|
|
$sql = sisplet_query("DELETE FROM srv_vrednost WHERE id='$vrednost'");
|
|
|
|
// če je other 99,98,97 moramo nastavit ustrezno polje še v srv_spremenljivka na 0
|
|
$_otherStatus = array (
|
|
99,
|
|
98,
|
|
97
|
|
);
|
|
$_otherStatusFields = array (
|
|
99 => 'undecided',
|
|
98 => 'rejected',
|
|
97 => 'inappropriate'
|
|
);
|
|
if (in_array($row['other'], $_otherStatus))
|
|
$sqlUpdate = sisplet_query("UPDATE srv_spremenljivka SET " . $_otherStatusFields[$row['other']] . "=0 WHERE id = '" . $spremenljivka . "'");
|
|
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
|
|
$this->SurveyAdmin->prestevilci($spremenljivka);
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_gridvrednost') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("SELECT * FROM srv_grid WHERE spr_id='$spremenljivka' AND vrstni_red='$grid'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row != FALSE) {
|
|
|
|
//poiscemo id grida, ki ga zelimo popraviti
|
|
$id = $row['id'];
|
|
|
|
$sql = sisplet_query("UPDATE srv_grid SET naslov = '$naslov' WHERE id='$id' AND spr_id='$spremenljivka'");
|
|
|
|
//za popravljanje ze obstojecih vprasanj - nastavinmo variablo na isto kot je pozicija grida
|
|
if ($row['variable'] == '') {
|
|
$sql = sisplet_query("UPDATE srv_grid SET variable = '$grid' WHERE id='$id' AND spr_id='$spremenljivka'");
|
|
}
|
|
|
|
//za popravljanje ze obstojecih vprasanj - nastavinmo vrstni red na isto kot je pozicija grida
|
|
if ($row['vrstni_red'] == 0) {
|
|
$sql = sisplet_query("UPDATE srv_grid SET vrstni_red = '$grid' WHERE id='$id' AND spr_id='$spremenljivka'");
|
|
}
|
|
|
|
} else {
|
|
$sql = sisplet_query("SELECT MAX(id) FROM srv_grid WHERE spr_id='$spremenljivka' ");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
//nastavimo id na najvecji v vprasanju
|
|
$id = $row['MAX(id)'] + 1;
|
|
|
|
$sql1 = sisplet_query("INSERT INTO srv_grid (id, spr_id, naslov, vrstni_red, variable) VALUES ('$id', '$spremenljivka', '$naslov', '$grid', '$grid')");
|
|
}
|
|
}
|
|
|
|
//editiranje variabel gridov
|
|
elseif ($_GET['a'] == 'edit_grids') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['grids_edit'] == 1)
|
|
$sql1 = sisplet_query("UPDATE srv_spremenljivka SET grids_edit='0' WHERE id='$spremenljivka'");
|
|
else
|
|
$sql1 = sisplet_query("UPDATE srv_spremenljivka SET grids_edit='1' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_gridID') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_grid SET variable = '$grid' WHERE id='$grd_id' AND spr_id='$spremenljivka'");
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_grid_number') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET grids = '$grids' WHERE id='$spremenljivka'");
|
|
|
|
//dodamo manjkajoce gride v bazo
|
|
$this->SurveyAdmin->addMissingGrids($spremenljivka);
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka') {
|
|
Common::updateEditStamp();
|
|
|
|
if (strtolower(substr($naslov, 0, 3)) != '<p>' && strtolower(substr($naslov, -4)) != '</p>' && strrpos($naslov, '<p>') === false) {
|
|
//$naslov = '<p>'.nl2br($naslov).'</p>';
|
|
$naslov = '<p>' . str_replace(NEW_LINE, "</p>\n<p>", $naslov) . '</p>';
|
|
}
|
|
|
|
// Počistimo opombo
|
|
$info = trim(strip_tags($info));
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov = '$naslov', info='$info' WHERE id='$spremenljivka'");
|
|
|
|
if ($_REQUEST['normalmode'] == 1)
|
|
$this->SurveyAdmin->vprasanje($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_label') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov = '$naslov' WHERE id='$spremenljivka'");
|
|
$this->SurveyAdmin->vprasanje($spremenljivka);
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['variable'] != $variable) {
|
|
$variable_custom = ", variable_custom='1' ";
|
|
} else {
|
|
$variable_custom = '';
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_variable') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['variable'] != $variable)
|
|
$variable_custom = ", variable_custom='1' ";
|
|
else
|
|
$variable_custom = '';
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET variable='$variable' $variable_custom WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->check_spremenljivka_variable($spremenljivka, $variable);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_skala') {
|
|
Common::updateEditStamp();
|
|
|
|
# popravimo skalo spremenljivke
|
|
# skala - 0 Ordinalna
|
|
# skala - 1 Nominalna
|
|
if ( isset($skala)) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET skala='".$skala."' WHERE id='$spremenljivka'");
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_tip') {
|
|
Common::updateEditStamp();
|
|
|
|
$row5 = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
// pri tipu besedilo* nastavimo privzeto velikost na 1
|
|
if ($tip == 21 && ($size == "" || $size== "undefined")) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET size='1' WHERE id='$spremenljivka'");
|
|
}
|
|
else if ($row5['size'] < 3) { //popravimo velikost v primeru prehoda iz antonucci/number vprasanja
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET size='3' WHERE id='$spremenljivka'");
|
|
}
|
|
// kalkulacija ima vedno size 1
|
|
if ($tip == 22) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET size='1' WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
if ($size > 0)
|
|
$_size = ", size='$size'";
|
|
else
|
|
$_size = "";
|
|
|
|
// če smo dobili postali polje undecided, rejected inappropriate
|
|
$_otherStatus = array (
|
|
99,
|
|
98,
|
|
97
|
|
);
|
|
$_otherStatusFields = array (
|
|
99 => 'undecided',
|
|
98 => 'rejected',
|
|
97 => 'inappropriate'
|
|
);
|
|
|
|
if ($undecided && in_array($undecided, $_otherStatus)) {
|
|
$_updateState = "";
|
|
// updejtamo sistemske variable če jih dobimo z ajaxa
|
|
if ($row5[$_otherStatusFields[$undecided]] == 0)
|
|
$_updateState .= ", " . $_otherStatusFields[$undecided] . "='1'";
|
|
else
|
|
$_updateState .= ", " . $_otherStatusFields[$undecided] . "='0'";
|
|
}
|
|
// nardimo updejt posameznega polja ( undecided, rejected inappropriate) v tabeli srv_spremenljivka
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET tip = '$tip' $_size $_updateState WHERE id='$spremenljivka'");
|
|
|
|
// popravimo variable za m.grid in m.checkbox
|
|
if ($tip == 6 || $tip == 16 || $tip == 19 || $tip == 20) {
|
|
$this->SurveyAdmin->addMissingGrids($spremenljivka);
|
|
}
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if (($row['tip'] <= 3 || $row['tip'] == 9 || $row['tip'] == 12 || $row['tip'] == 15 || $row['tip'] == 17 || $row['tip'] == 18) && ($size > 0 || $row5['tip'] != $tip)) {
|
|
|
|
$sqlp = sisplet_query("SELECT vrstni_red FROM srv_grupa WHERE id='$row[gru_id]'");
|
|
$rowp = mysqli_fetch_array($sqlp);
|
|
|
|
//if ($row['tip'] == 2 || $row['tip'] == 18) {
|
|
if ($row['tip'] == 2 || $row['tip'] == 18 || $row['tip'] == 27) {
|
|
sisplet_query("UPDATE srv_vrednost SET variable=CONCAT('$row5[variable]', CHAR(vrstni_red+96)) WHERE spr_id='$spremenljivka' AND other <= 1");
|
|
} else {
|
|
sisplet_query("UPDATE srv_vrednost SET variable=vrstni_red WHERE spr_id='$spremenljivka' AND other <= 1");
|
|
}
|
|
|
|
|
|
$sql1 = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id='$spremenljivka' AND other <=1");
|
|
$rows = mysqli_num_rows($sql1);
|
|
if ($rows < $row['size']) {
|
|
for ($i = 1; $i <= $row['size'] - $rows; $i++) {
|
|
if ($row['tip'] == 2 || $row['tip'] == 18)
|
|
$variable = $row5['variable'] . chr($i + $rows +96);
|
|
else
|
|
$variable = $i + $rows;
|
|
$sql2 = sisplet_query("INSERT INTO srv_vrednost (spr_id, variable, vrstni_red) VALUES ('$spremenljivka', '$variable', '" . ($i + $rows) . "')");
|
|
}
|
|
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
}
|
|
elseif ($rows > $row['size']) {
|
|
|
|
$sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND naslov='' AND vrstni_red > '$row[size]' AND other <= 1");
|
|
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
}
|
|
|
|
}
|
|
else if (($row['tip'] == 6 || $row['tip'] == 16 || $row['tip'] == 19 || $row['tip'] == 20 || $row['tip'] == 18) && $row5['tip'] != $tip) {
|
|
sisplet_query("UPDATE srv_vrednost SET variable=CONCAT('$row5[variable]', CHAR(vrstni_red+96)) WHERE spr_id='$spremenljivka' AND variable_custom='0' AND other <= 1");
|
|
|
|
/* Pri enovnosnih poljih pobri"semo nepotrebne spremenljivke v bazi
|
|
* to so:
|
|
* -text -> tip = 4
|
|
* -label -> tip = 5
|
|
* -number -> tip = 7
|
|
* -datum -> tip = 8
|
|
* */
|
|
}
|
|
else if ($row['tip'] == 7) { // number
|
|
// preverimo če sploh in koliko variable rabimo
|
|
$sql1 = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id='$spremenljivka' AND other <=1");
|
|
$rows = mysqli_num_rows($sql1);
|
|
|
|
if ($rows < $row['size']) {
|
|
for ($i = 1; $i <= $row['size'] - $rows; $i++) {
|
|
if ($row['tip'] == 2)
|
|
$variable = $row5['variable'] . chr($i + $rows +96);
|
|
else
|
|
$variable = $i + $rows;
|
|
$sql2 = sisplet_query("INSERT INTO srv_vrednost (spr_id, variable, vrstni_red) VALUES ('$spremenljivka', '$variable', '" . ($i + $rows) . "')");
|
|
}
|
|
}
|
|
}
|
|
else if ($row['tip'] == 21) { // besedilo*
|
|
// pobrisemo odvecne variable pri preklopu na besedilo*
|
|
$sql1 = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id='$spremenljivka'");
|
|
$rows = mysqli_num_rows($sql1);
|
|
|
|
if ($rows > $row['text_kosov'])
|
|
$sql2 = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND vrstni_red > '$row[text_kosov]'");
|
|
}
|
|
else if (($row['tip'] == 4 || $row['tip'] == 5 || $row['tip'] == 8) && $row5['tip'] != $tip) {
|
|
// $sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND naslov='' AND vrstni_red > '1'");
|
|
// $sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND other <= 1");
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
}
|
|
|
|
if (($row['tip'] == 7 || $row['tip'] == 12 || $row['tip'] == 15) && $row['size'] > 2) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET size=1 WHERE id='$spremenljivka'");
|
|
// $sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND naslov='' AND vrstni_red > '1'");
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
}
|
|
|
|
if ($row['tip'] == 9) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET antonucci=1, size=0 WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
if ($row['tip'] == 10 || $row['tip'] == 11 || $row['tip'] == 12 || $row['tip'] == 13 || $row['tip'] == 14 || $row['tip'] == 15) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET podpora=1 WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
//dodajanje page-breakov pri SN-imena, SN-social in SN-povezave
|
|
if ($row['tip'] == 9 || $row['tip'] == 10 || $row['tip'] == 13) {
|
|
$sql = sisplet_query("UPDATE srv_branching SET pagebreak=1 WHERE element_spr='$spremenljivka' AND ank_id='".$this->anketa."'");
|
|
|
|
//$sql = sisplet_query("INSERT INTO srv_branching (ank_id, element_spr, vrstni_red, pagebreak) VALUES ('$this->anketa', '$spremenljivka', 0 ,'1') ON DUPLICATE KEY UPDATE pagebreak=1");
|
|
|
|
$sqlX = sisplet_query("SELECT g.ank_id FROM srv_grupa g, srv_spremenljivka s WHERE s.id='$spremenljivka' AND (g.id=s.gru_id) ");
|
|
$rowX = mysqli_fetch_array($sqlX);
|
|
|
|
$anketa = $rowX['ank_id'];
|
|
|
|
//include_once ('Branching.php');
|
|
$b = new Branching($anketa);
|
|
|
|
$b->repare_vrstni_red();
|
|
$b->trim_grupe();
|
|
|
|
if ($this->branching == 0) {
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$anketa'");
|
|
|
|
$nums = mysqli_num_rows($sql);
|
|
$vrstni_red = $nums + 1;
|
|
|
|
$sql = sisplet_query("INSERT INTO srv_grupa (id, ank_id, naslov, vrstni_red) VALUES ('', '$anketa', '$lang[srv_stran] $vrstni_red', '$vrstni_red')");
|
|
$insert_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
// Ce dodamo 4. stran vklopimo progress indicator (pri 3 straneh ali manj je po default izklopljen)anketa
|
|
if($vrstni_red == 4){
|
|
$sqlP = sisplet_query("UPDATE srv_anketa SET progressbar='1' WHERE id='$anketa'");
|
|
}
|
|
}
|
|
}
|
|
|
|
// dodamo -4 multigridu in multicheckboxu
|
|
if ( $tip == 2 || $tip == 6 || $tip == 16) {
|
|
$sql = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id = '$spremenljivka'");
|
|
$sql1 = sisplet_query("SELECT id FROM srv_user WHERE ank_id='$anketa'");
|
|
while ($row1 = mysqli_fetch_array($sql1)) {
|
|
if ($tip == 2) // checkboxu damo -4 samo en zapis -4 za vse vrednosti
|
|
$s = sisplet_query("INSERT INTO srv_data_vrednost".$this->db_table." (spr_id, vre_id, usr_id) VALUES ('$spremenljivka', '-4', '$row1[id]')");
|
|
|
|
mysqli_data_seek($sql, 0);
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
|
|
if ($tip == 6)
|
|
$s = sisplet_query("INSERT INTO srv_data_grid".$this->db_table." (spr_id, vre_id, usr_id, grd_id) VALUES ('$spremenljivka', '$row[id]', '$row1[id]', '-4')");
|
|
if ($tip == 16)
|
|
$s = sisplet_query("INSERT INTO srv_data_checkgrid".$this->db_table." (spr_id, vre_id, usr_id, grd_id) VALUES ('$spremenljivka', '$row[id]', '$row1[id]', '-4')");
|
|
}
|
|
}
|
|
}
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_textboxes') {
|
|
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET text_kosov='$size' WHERE id='$spremenljivka'");
|
|
|
|
$rowV = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
$sql1 = sisplet_query("SELECT id FROM srv_vrednost WHERE spr_id='$spremenljivka' AND other <=1");
|
|
$rows = mysqli_num_rows($sql1);
|
|
if ($rows < $size) {
|
|
for ($i = 1; $i <= $size - $rows; $i++) {
|
|
$variable = $rowV['variable'].chr(96 + $i + $rows);
|
|
$sql2 = sisplet_query("INSERT INTO srv_vrednost (spr_id, naslov, variable, vrstni_red) VALUES ('$spremenljivka', '', '$variable', '" . ($i + $rows) . "')");
|
|
}
|
|
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
} else if ($rows > $size) {
|
|
# pobrisemo odvecna polja
|
|
$sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spremenljivka' AND vrstni_red > '$size'");
|
|
}
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_text_orientation') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET text_orientation='$orientation' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_antonucci') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET antonucci='$antonucci' WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_design') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET design='$design', cela=2, decimalna=0 WHERE id='$spremenljivka'");
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_ranking_k') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET ranking_k='$size' WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_podpora') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET podpora='$podpora' WHERE id='$spremenljivka'");
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_number') {
|
|
Common::updateEditStamp();
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET cela='$cela', decimalna='$decimalna', enota='$enota' WHERE id='$spremenljivka'");
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'edit_spremenljivka_param') {
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
Common::updateEditStamp();
|
|
|
|
// v polje params spremenljivke shranimo spremembo parametra
|
|
$newParams = new enkaParameters($row['params']);
|
|
$newParams->set($paramName, $paramValue);
|
|
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET params='" . $newParams->getString() . "' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->repareVrednost($spremenljivka);
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_random') {
|
|
Common::updateEditStamp();
|
|
/** random polje:
|
|
* 0 = sort po vrstnem redu
|
|
* 1 = sort random
|
|
* 2 = sort po abecedi naraščajoče
|
|
* 3 = sort po abecedi padajoče
|
|
*/
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['random'] == 3) {
|
|
$random = 0;
|
|
} else {
|
|
$random = $row['random'] + 1;
|
|
}
|
|
$other = ($random) ? " AND other='0'" : "";
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET random = '$random' WHERE id='$spremenljivka'");
|
|
$sql1 = sisplet_query("UPDATE srv_vrednost SET random = '$random' WHERE spr_id ='$spremenljivka' $other");
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'random_vrednost') {
|
|
Common::updateEditStamp();
|
|
/** random polje:
|
|
* 0 = sort po vrstnem redu
|
|
* 1 = sort random
|
|
* 2 = sort po abecedi naraščajoče
|
|
* 3 = sort po abecedi padajoče
|
|
*/
|
|
|
|
$sql = sisplet_query("SELECT random FROM srv_vrednost WHERE id = '$vrednost'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['random'] == 3) {
|
|
$random = 0;
|
|
} else {
|
|
$random = $row['random'] + 1;
|
|
}
|
|
|
|
sisplet_query("UPDATE srv_vrednost SET random = '$random' WHERE id = '$vrednost'");
|
|
$this->SurveyAdmin->random_vrednost($vrednost);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_stat') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['stat'] == 1) {
|
|
$stat = 0;
|
|
} else {
|
|
$stat = 1;
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET stat = '$stat' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_stat($spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_orientation') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['orientation'] == 1) {
|
|
$orientation = 0;
|
|
} else if ($row['orientation'] == 0) {
|
|
$orientation = 2;
|
|
} else if ($row['orientation'] == 2) {
|
|
$orientation = 1;
|
|
}
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET orientation = '$orientation' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_orientation($spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_checkbox_hide') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['checkboxhide'] == 1) {
|
|
$checkboxhide = 0;
|
|
} else {
|
|
$checkboxhide = 1;
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET checkboxhide = '$checkboxhide' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_checkbox_hide($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_reminder') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['reminder'] == 0) {
|
|
$reminder = 1;
|
|
}
|
|
elseif ($row['reminder'] == 1) {
|
|
$reminder = 2;
|
|
} else {
|
|
$reminder = 0;
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET reminder = '$reminder' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_reminder($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_sistem') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['sistem'] == 1) {
|
|
$sistem = 0;
|
|
} else {
|
|
$sistem = 1;
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET sistem = '$sistem' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_sistem($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_visible') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['visible'] == 1) {
|
|
$visible = 0;
|
|
} else {
|
|
$visible = 1;
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET visible = '$visible' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_visible($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_textfield') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
|
|
if ($row['textfield'] == 1) {
|
|
$textfield = 0;
|
|
$label = '';
|
|
} else {
|
|
$textfield = 1;
|
|
$label = $lang['srv_other'] . ':';
|
|
}
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET textfield = '$textfield', textfield_label='$label' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'spremenljivka_timer') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET timer = '$timer' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->spremenljivka_timer($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_textfield') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("UPDATE srv_vrednost SET naslov = '$label' WHERE id='$vrednost'");
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'vrstnired_vrednost') {
|
|
Common::updateEditStamp();
|
|
|
|
$exploded = explode('&', $serialize);
|
|
|
|
$i = 1;
|
|
foreach ($exploded AS $key) {
|
|
$key = str_replace('spremenljivka_', '', $key);
|
|
$explode = explode('[]=', $key);
|
|
$sql = sisplet_query("UPDATE srv_vrednost SET vrstni_red = '$i' WHERE id = '$explode[1]'");
|
|
$i++;
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci(); // TODO, tukaj bi moral biti id spremenljivke
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'vrstnired_vprasanje') {
|
|
Common::updateEditStamp();
|
|
|
|
$exploded = explode('&', $serialize);
|
|
|
|
if ($_POST['grupa'] != 'all') {
|
|
// sortiramo samo v okviru ene strani
|
|
$i = 1;
|
|
foreach ($exploded AS $key) {
|
|
$key = str_replace('vprasanja', '', $key);
|
|
$explode = explode('[]=', $key);
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vrstni_red = '$i' WHERE id = '$explode[1]'");
|
|
$i++;
|
|
}
|
|
} else {
|
|
|
|
|
|
// da ne updejtamo vseh spremenljivk, popravljamo podatke samo pri "prizadetih" grupah
|
|
$moved_spr = str_replace('spremenljivka_', '', $_POST['moved']);
|
|
|
|
// id stare gurpe
|
|
$strGr = "select gru_id FROM srv_spremenljivka where id = '".$moved_spr."'";
|
|
$sqlGr = sisplet_query($strGr);
|
|
$rowGr = mysqli_fetch_assoc($sqlGr);
|
|
$oldPageId = $rowGr['gru_id'];
|
|
|
|
// id nove grupe
|
|
$newPageId = str_replace('fieldset_page_', '', $_POST['topage']);
|
|
|
|
$grNew = array();
|
|
$grOld = array();
|
|
// vse psremenljvke ki so v novi gupi
|
|
$strGrNew = "select id FROM srv_spremenljivka where gru_id = '".$newPageId."'";
|
|
$sqlGrNew = sisplet_query($strGrNew);
|
|
while ($rowGrNew = mysqli_fetch_assoc($sqlGrNew)) {
|
|
$grNew[$rowGrNew['id']] = $newPageId;
|
|
}
|
|
// vse spremenljivke ki so v stari grupi
|
|
$strGrOld = "select id FROM srv_spremenljivka where gru_id = '".$oldPageId."'";
|
|
$sqlGrOld = sisplet_query($strGrOld);
|
|
while ($rowGrOld = mysqli_fetch_assoc($sqlGrOld)) {
|
|
$grOld[$rowGrOld['id']] = $oldPageId;
|
|
}
|
|
$serialized = array();
|
|
// zloopamo skozi prejeta vprašanja in popravimo grupe
|
|
$grupa_test = null;
|
|
$vrstni_red = 1;
|
|
foreach ($exploded AS $key) {
|
|
$key = str_replace('spremenljivka[]=', '', $key);
|
|
// ce je $key spremenljivka ki jo premikamo ji dodelimo novo grupo
|
|
if ($moved_spr == $key) {
|
|
$grupa = $newPageId;
|
|
} else {
|
|
$grupa = isset($grNew[$key])
|
|
? $grNew[$key]
|
|
: (isset($grOld[$key])
|
|
? $grOld[$key]
|
|
: null);
|
|
}
|
|
if ($grupa_test != $grupa) {
|
|
// resetriamo couner
|
|
$vrstni_red = 1;
|
|
$grupa_test = $grupa;
|
|
}
|
|
if ($grupa != null) {
|
|
$serialized[$key] = array('id'=>$key, 'grupa'=>$grupa, 'vrstni_red'=>$vrstni_red);
|
|
$vrstni_red ++;
|
|
|
|
}
|
|
}
|
|
// updejtamo serializirane podatke
|
|
foreach ( $serialized as $key => $value ) {
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET gru_id='".$value['grupa']."', vrstni_red = '".$value['vrstni_red']."' WHERE id = '".$value['id']."'");
|
|
}
|
|
}
|
|
$this->SurveyAdmin->prestevilci();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'vrstnired_vprasanje_forma') {
|
|
Common::updateEditStamp();
|
|
|
|
$exploded = explode('&', $serialize);
|
|
|
|
$i = 1;
|
|
foreach ($exploded AS $key) {
|
|
$key = str_replace('vprasanja', '', $key);
|
|
$explode = explode('[]=', $key);
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET vrstni_red = '$i' WHERE id = '$explode[1]'");
|
|
$i++;
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
$this->SurveyAdmin->vprasanja();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'vrstnired_grupa') {
|
|
Common::updateEditStamp();
|
|
|
|
$exploded = explode('&', $serialize);
|
|
|
|
$i = 1;
|
|
foreach ($exploded AS $key) {
|
|
$key = str_replace('grupe', '', $key);
|
|
$explode = explode('[]=', $key);
|
|
$sql = sisplet_query("UPDATE srv_grupa SET vrstni_red = '$i' WHERE id = '$explode[1]'");
|
|
$i++;
|
|
}
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'premakni_vprasanje') {
|
|
Common::updateEditStamp();
|
|
|
|
$row = Cache::srv_spremenljivka($spremenljivka);
|
|
$old_grupa = $row['gru_id'];
|
|
|
|
$sql = sisplet_query("SELECT MAX(vrstni_red) AS max FROM srv_spremenljivka WHERE gru_id='$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$vrstni_red = $row['max'] + 1;
|
|
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET gru_id='$grupa', vrstni_red='$vrstni_red' WHERE id='$spremenljivka'");
|
|
|
|
$this->SurveyAdmin->repareSpremenljivka($old_grupa);
|
|
$this->SurveyAdmin->repareSpremenljivka($grupa);
|
|
|
|
$this->SurveyAdmin->prestevilci();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'intro_concl_fullscreeen') {
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
|
|
echo ' <div id="spremenljivka_' . $_POST['introconcl'] . '" class="spremenljivka" style="margin-top:15px">';
|
|
$Branching->introduction_conclusion($_POST['introconcl'], 1);
|
|
echo ' </div> <!-- /spremenljivka_' . $_POST['introconcl'] . ' -->';
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'editmode_spremenljivka') {
|
|
$this->grupa = $grupa;
|
|
$this->SurveyAdmin->vprasanje_edit($spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'editmode_spremenljivka_single') {
|
|
$Branching = new Branching($this->anketa);
|
|
$Branching->display();
|
|
}
|
|
|
|
elseif ($_GET['a'] == 'normalmode_spremenljivka') {
|
|
|
|
$this->SurveyAdmin->vprasanje($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'editmode_grupa') {
|
|
|
|
if ($_POST['pages'] == "1") {
|
|
$this->SurveyAdmin->showEditPageDiv($grupa, true);
|
|
} else {
|
|
$this->SurveyAdmin->grupa_edit($grupa);
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'branch_editmode_grupa') {
|
|
$this->SurveyAdmin->branch_grupa_edit($grupa, $spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'branch_normalmode_grupa') {
|
|
$this->SurveyAdmin->branch_normalmode_grupa($grupa, $spremenljivka);
|
|
}
|
|
elseif ($_GET['a'] == 'normalmode_grupa') {
|
|
|
|
$sql = sisplet_query("SELECT ank_id FROM srv_grupa WHERE id = '$grupa'");
|
|
$row = mysqli_fetch_array($sql);
|
|
$this->anketa = $row['ank_id'];
|
|
|
|
$this->SurveyAdmin->grupa($grupa);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'copy_spremenljivka') {
|
|
|
|
$this->SurveyAdmin->clipboard_display($spremenljivka);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'copy_remove') {
|
|
|
|
$this->SurveyAdmin->clipboard_display(-1);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_data_vrednost_ch') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("DELETE FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$spr_id' AND vre_id='$vre_id' AND usr_id='$usr_id'");
|
|
|
|
if ($value == 1) {
|
|
$s = sisplet_query("INSERT INTO srv_data_vrednost".$this->db_table." (spr_id, vre_id, usr_id) VALUES ('$spr_id', '$vre_id', '$usr_id')");
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_data_vrednost') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("DELETE FROM srv_data_vrednost".$this->db_table." WHERE spr_id='$spr_id' AND usr_id='$usr_id'");
|
|
|
|
if ($vre_id != 0) {
|
|
sisplet_query("INSERT INTO srv_data_vrednost".$this->db_table." (spr_id, vre_id, usr_id) VALUES ('$spr_id', '$vre_id', '$usr_id')");
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_data_grid') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("UPDATE srv_data_grid".$this->db_table." SET grd_id='$grd_id' WHERE spr_id='$spr_id' AND vre_id='$vre_id' AND usr_id='$usr_id'");
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_data_text') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("DELETE FROM srv_data_text".$this->db_table." WHERE spr_id='$spr_id' AND vre_id='$vre_id' AND usr_id='$usr_id'");
|
|
|
|
if ($value != '') {
|
|
sisplet_query("INSERT INTO srv_data_text".$this->db_table." (spr_id, vre_id, usr_id, text) VALUES ('$spr_id', '$vre_id', '$usr_id', '$value')");
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_data_delete') {
|
|
Common::updateEditStamp();
|
|
|
|
sisplet_query("DELETE FROM srv_user WHERE id = '$usr_id'");
|
|
}
|
|
elseif ($_GET['a'] == 'delete_all') {
|
|
Common::updateEditStamp();
|
|
|
|
$sql = sisplet_query("DELETE FROM srv_user WHERE ank_id = '$this->anketa'");
|
|
|
|
# pobrišemo še DATA datoteke in HTML -dashboard če obstajajo
|
|
global $site_path;
|
|
$folder = $site_path . EXPORT_FOLDER.'/';
|
|
#pobrišemo header datoteko
|
|
if (file_exists($folder.'export_header_'.$this->anketa.'_*.dat')) {
|
|
unlink($folder.'export_header_'.$this->anketa.'_*.dat');
|
|
}
|
|
# pobrišemo data datoteko
|
|
if (file_exists($folder.'export_data_'.$this->anketa.'_*.dat')) {
|
|
unlink($folder.'export_data_'.$this->anketa.'_*.dat');
|
|
}
|
|
# pobrišemo dashboard
|
|
if (file_exists($folder.'export_dashboard_'.$this->anketa.'_*.html')) {
|
|
unlink($folder.'export_dashboard_'.$this->anketa.'_*.html');
|
|
}
|
|
|
|
echo 'index.php?anketa=' . $this->anketa . '&a='.A_COLLECT_DATA;
|
|
}
|
|
elseif ($_GET['a'] == A_REPORTI) { // ajax funkcije za analizo
|
|
|
|
switch ($_GET['m']) {
|
|
case M_ANALYSIS_STATISTICS :
|
|
$options = array ();
|
|
$options['startDate'] = (isset ($_POST['startDate'])) ? $_POST['startDate'] : null;
|
|
$options['endDate'] = (isset ($_POST['endDate'])) ? $_POST['endDate'] : null;
|
|
$options['type'] = (isset ($_POST['type'])) ? $_POST['type'] : null;
|
|
//include_once ('Analiza.php');
|
|
$analiza = new Analiza($this->anketa, $_GET['m']);
|
|
$analiza->displayStats($options);
|
|
break;
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'analizaDisplayData') { // ajax funkcije za analizo
|
|
$podstran = $_POST['podstran'];
|
|
SurveyAnalysis::Init($this->anketa);
|
|
SurveyAnalysis::Display();
|
|
|
|
} elseif ($_GET['a'] == 'anketa_active_refresh') {
|
|
SurveyInfo :: getInstance()->SurveyInit($anketa);
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
# updejtjmo pošiljanje alertov
|
|
SurveyAlert::getInstance()->Init($anketa, $global_user_id);
|
|
SurveyAlert::getInstance()->prepareSendExpireAlerts();
|
|
|
|
if ($_POST['folders'] && $_POST['folders'] == 'true') { // če smo na folderjih zlistamo folderje
|
|
// osvezimo samo ikonico in ne celotnih map
|
|
|
|
echo '<a href="#" onclick="anketa_active(\''.$this->anketa.'\',\''.(int)$row['active'].'\',\'true\'); return false;">' .
|
|
'<img src="'.$site_url.'admin/survey/icons/icons/star_'.((int)$row['active']==1?'on':'off').'.png" alt="'.(int)$row['active'].'" title="'.((int)$row['active']==1?$lang['srv_anketa_active']:$lang['srv_anketa_noactive']).'" />'.
|
|
'</a> ';
|
|
} else {
|
|
$this->SurveyAdmin->displayAktivnost();
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'anketa_show_activation') {
|
|
global $global_user_id;
|
|
|
|
$folders = $_POST['folders'];
|
|
|
|
# za koliko časa aktiviramo
|
|
$mth = 3;
|
|
|
|
$starts = date("d.m.Y"); // danes
|
|
$startsDB = date("Y-m-d"); // danes
|
|
$cd = strtotime($starts);
|
|
$expire = date('d.m.Y', mktime(0, 0, 0, date('m', $cd) + $mth, date('d', $cd), date('Y', $cd)));
|
|
$expireDB = date('Y-m-d', mktime(0, 0, 0, date('m', $cd) + $mth, date('d', $cd), date('Y', $cd)));
|
|
|
|
# preverimo ali ima uporabnik izklopljeno zaklepanje
|
|
# polovimo nastavitve uporabnika
|
|
|
|
UserSetting::getInstance()->Init($global_user_id);
|
|
# ali zaklepamo anketo ob aktivaciji
|
|
$lockSurvey = UserSetting::getInstance()->getUserSetting('lockSurvey');
|
|
|
|
# aktiviramo anketo
|
|
#avtomatsko aktiviramo anketo za 1 mesec in o tem obvestimo uporabnika.
|
|
$updateString = "UPDATE srv_anketa SET active='1', locked='".(int)$lockSurvey."', backup='0', starts='".$startsDB."', expire='".$expireDB."' WHERE id='$anketa'";
|
|
$sql = sisplet_query($updateString) or die(mysqli_error($GLOBALS['connect_db']));
|
|
|
|
// Zapišemo vsako aktivacijo ankete po dnevih
|
|
$activity_insert_string = "INSERT INTO srv_activity (sid, starts, expire, uid) VALUES('" . $anketa . "', '" . $startsDB . "', '" . $expireDB . "', '" . $global_user_id . "' )";
|
|
$sql_insert = sisplet_query($activity_insert_string);
|
|
|
|
# popravimo timestamp za regeneracijo dashboarda
|
|
Common::getInstance()->Init($anketa);
|
|
Common::getInstance()->updateEditStamp();
|
|
|
|
# vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
# posljemo mail ob spremembi aktivnosti ankete
|
|
SurveyAlert::getInstance()->Init($anketa, $global_user_id);
|
|
SurveyAlert::getInstance()->sendMailActive();
|
|
|
|
# Preverimo, ce gre za phishing
|
|
$check = new SurveyCheck($anketa);
|
|
$check->checkPhishing();
|
|
|
|
# Aktivacijski pop up za hierarhijo
|
|
if(SurveyInfo::getInstance()->checkSurveyModule('hierarhija')){
|
|
// Anketo zaklenemo
|
|
sisplet_query("UPDATE srv_anketa SET locked='1' WHERE id = '$anketa'");
|
|
|
|
// Popup
|
|
echo '<div id="anketa_activate_note" class="divPopUp">';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="anketa_activate_save(\''.$this->anketa.'\',\''.$folders.'\'); return false;">✕</a></div>';
|
|
|
|
echo '<h2>' . $lang['srv_hierarchy_activation_header'] . '.</h2>';
|
|
|
|
echo '<div>' . $lang['srv_activation_expire'] . $expire . '</div>';
|
|
echo '<div id="div_anketa_activate_more"><br/>';
|
|
printf($lang['srv_activation_setting'], $anketa);
|
|
echo '</div>';
|
|
|
|
// Seznam uporabnikov na katere je bil poslan email
|
|
// Dobimo samo uporabnike na zadnjem nivoju in to obvestilo prikažemo samo prvič ko se aktivira anketa
|
|
if(SurveyInfo::getSurveyModules('hierarhija') == 1) {
|
|
$users_upravicen_do_evalvacije = (new \Hierarhija\Model\HierarhijaOnlyQuery())->queryStrukturaUsers($anketa, ' AND hs.level=(SELECT MAX(level) FROM srv_hierarhija_struktura WHERE anketa_id=' . $anketa . ') GROUP BY users.id');
|
|
echo '<div class="hierarhija-aktivacija-seznam-uporabnikov">';
|
|
echo '<div class="oranzna">';
|
|
|
|
echo '<h3>' . Hierarhija\HierarhijaHelper::textGledeNaOpcije($anketa, 'srv_hierarchy_email_code') . '</h3>';
|
|
|
|
if(\Hierarhija\Model\HierarhijaQuery::getOptions($anketa, 'onemogoci_dostop_uciteljem') == 1)
|
|
echo '<h3>' . $lang['srv_hierarchy_teacher_can_not_access']. '</h3>';
|
|
|
|
echo '</div>';
|
|
echo '<ul>';
|
|
while ($uporabnik = $users_upravicen_do_evalvacije->fetch_object()) {
|
|
echo '<li>' . $uporabnik->email . '</li>';
|
|
}
|
|
echo '</ul>';
|
|
echo '</div>';
|
|
}
|
|
}
|
|
else {
|
|
// Brez timerja
|
|
//echo '<script>stopActivationTimer();</script>';
|
|
|
|
# Aktivacijski pop up za vse ostale ankete
|
|
echo '<div id="anketa_activate_note" class="divPopUp">';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="anketa_activate_save(\''.$this->anketa.'\',\''.$folders.'\'); return false;">✕</a></div>';
|
|
|
|
echo '<h2>' . $lang['srv_activation_header'] . '.</h2>';
|
|
|
|
// GDPR opozorilo ce ni potencialno GDPR
|
|
echo '<p class="bold">';
|
|
printf($lang['srv_activation_text_nongdpr'], $anketa);
|
|
echo '</p>';
|
|
echo '<p class="bold">';
|
|
echo $lang['srv_activation_text_nongdpr2'];
|
|
echo '</p>';
|
|
|
|
echo '<div>' . $lang['srv_activation_expire'] .'<b>'.$expire.'</b></div>';
|
|
echo '<div id="div_anketa_activate_more"><br/>';
|
|
printf($lang['srv_activation_setting'], $anketa);
|
|
echo '</div>';
|
|
|
|
echo '<div id="div_lock_survey">';
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->showLockSurvey();
|
|
echo '</div>';
|
|
}
|
|
|
|
# skrit div za dodatne nastavitve
|
|
echo '<div id="anketa_activate_settings" class="displayNone">';
|
|
echo '<br/>';
|
|
echo '<fieldset><legend>'.$lang['srv_activate_duration'].'</legend>';
|
|
echo '<p><input id="radioAuto" type="radio" name="radioTrajanje" value="0" checked="checked" >';
|
|
echo '<label for="radioAuto">'.$lang['srv_activate_duration_auto'].'<span id="startsAuto">' . $starts . '</span>'.$lang['srv_activate_duration_auto_to'].'<span id="expireAuto">' . $expire . '</span></label><br/>';
|
|
echo '</p><p><input id="radioManual" type="radio" name="radioTrajanje" value="1" >';
|
|
echo '<label for="radioManual">' . $lang['srv_activate_duration_manual'];
|
|
echo '<input id="startsManual" type="text" name="startsManual" value="' . $starts . '" /> <span id="starts_img_manual" class="sprites calendar_ico"></span>';
|
|
echo $lang['srv_activate_duration_manual_to'];
|
|
echo '<input id="expireManual" type="text" name="expireManual" value="' . $expire . '" /> <span id="expire_img_manual" class="sprites calendar_ico"></span><br/>';
|
|
echo '</label></p>';
|
|
echo '</fieldset>';
|
|
|
|
echo '<fieldset><legend>'.$lang['srv_vote_limit'].'</legend>';
|
|
echo '<p><label>' . $lang['srv_vote_limit'] . ':</label>';
|
|
echo '<input type="radio" name="vote_count_limit" value="0" id="vote_count_limit_0"' . ($row['vote_limit'] == 0 ? ' checked="checked"' : '') . ' onClick="voteCountToggle(0)" /><label for="vote_count_limit_0">' . $lang['no1'] . '</label>';
|
|
echo '<input type="radio" name="vote_count_limit" value="1" id="vote_count_limit_1"' . ($row['vote_limit'] == 1 ? ' checked="checked"' : '') . ' onClick="voteCountToggle(1)" /><label for="vote_count_limit_1">' . $lang['yes'] . '</label>';
|
|
echo '<input type="radio" name="vote_count_limit" value="2" id="vote_count_limit_2"' . ($row['vote_limit'] == 2 ? ' checked="checked"' : '') . ' onClick="voteCountToggle(2)" /><label for="vote_count_limit_2">' . $lang['srv_data_only_valid'] . ' (status 5, 6)</label>';
|
|
echo '</p><p id="voteCountToggle1"' . ( $row['vote_limit'] == 0 ? ' class="displayNone"' : '' ).'>';
|
|
echo '<label for="anketa' . $row['id'] . '" >'.$lang['srv_vote_count'].':</label>';
|
|
echo '<input type="text" id="vote_count_val" name="vote_count_val" value="' . $row['vote_count'] . '" style="width:50px; margin-left: 5px;" maxlength="7" />';
|
|
echo '</p>';
|
|
echo '</fieldset>';
|
|
|
|
echo '
|
|
<script type="text/javascript">
|
|
Calendar.setup({
|
|
inputField : "startsManual",
|
|
ifFormat : "%d.%m.%Y",
|
|
button : "starts_img_manual",
|
|
singleClick : true,
|
|
onUpdate : updateManual
|
|
});
|
|
Calendar.setup({
|
|
inputField : "expireManual",
|
|
ifFormat : "%d.%m.%Y",
|
|
button : "expire_img_manual",
|
|
singleClick : true,
|
|
onUpdate : updateManual
|
|
});
|
|
</script>';
|
|
|
|
echo '</div>';
|
|
|
|
// Timer counter
|
|
echo '<div id="divAvtoClose" active="1" >'.$lang['srv_activate_duration_autostart'].': <span>10</span> s.</div>';
|
|
|
|
// Gumb zapri
|
|
echo '<div class="buttonwrapper buttons_holder"><a class="ovalbutton ovalbutton_orange" href="#" onclick="anketa_activate_save(\''.$this->anketa.'\',\''.$folders.'\'); return false;"><span>' . $lang['srv_zapri'] . '</span></a></div>';
|
|
|
|
echo '</div>';
|
|
|
|
} elseif ($_GET['a'] == 'anketa_save_activation') {
|
|
|
|
Common::updateEditStamp();
|
|
# po potrebi shranimo dodatne nastavitve
|
|
|
|
$dbStarts = DateTime::createFromFormat('d.m.Y',$_POST['durationStarts']);
|
|
$dbStarts = $dbStarts->format('Y-m-d');
|
|
$dbExpire = DateTime::createFromFormat('d.m.Y', $_POST['durationExpire']);
|
|
$dbExpire = $dbExpire->format('Y-m-d');
|
|
|
|
$updateString = "UPDATE srv_anketa SET";
|
|
if ((int)$_POST['durationType'] == 1) {
|
|
$updateString .= " starts = '".$dbStarts."', expire='".$dbExpire."'";
|
|
$prefix = ',';
|
|
}
|
|
|
|
if ((int)$_POST['voteCountLimitType'] == 1) {
|
|
$updateString .= $prefix." vote_limit = '1', vote_count='".(int)$_POST['voteCountValue']."'";
|
|
$prefix = ',';
|
|
}
|
|
elseif ((int)$_POST['voteCountLimitType'] == 2) {
|
|
$updateString .= $prefix." vote_limit = '2', vote_count='".(int)$_POST['voteCountValue']."'";
|
|
$prefix = ',';
|
|
}
|
|
else {
|
|
$updateString .= $prefix." vote_limit = '0'";
|
|
$prefix = ',';
|
|
}
|
|
|
|
$updateString .= " WHERE id='$anketa'";
|
|
$sql = sisplet_query($updateString);
|
|
|
|
#updejtamo srv_alert
|
|
global $global_user_id;
|
|
SurveyAlert::getInstance()->Init($this->anketa, $global_user_id);
|
|
SurveyAlert::getInstance()->prepareSendExpireAlerts();
|
|
|
|
# vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
}
|
|
elseif ($_GET['a'] == 'anketa_getDates') {
|
|
// prikažemo vmesnik za izbiro datuma
|
|
// preberemo datume aktivnosti
|
|
//$sqlDates = sisplet_query("SELECT starts, expire FROM srv_anketa WHERE id='" . $this->anketa . "'");
|
|
//$rowDates = mysqli_fetch_assoc($sqlDates);
|
|
$rowDates = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
$dateToday = date("Y-m-d"); // danes
|
|
$cd = strtotime($dateToday);
|
|
$mth = 1;
|
|
$dateMonth = date('Y-m-d', mktime(0, 0, 0, date('m', $cd) + $mth, date('d', $cd), date('Y', $cd)));
|
|
|
|
// datumi niso nastavljeni predlagamo avtomtsko.
|
|
$dateAllSet = ($rowDates['starts'] == '0000-00-00' && $rowDates['expire'] == '0000-00-00');
|
|
// novo: če uporabnik v 3 sekundah ne klikne na alert, izberemo "avtomatsko" 1 mesec
|
|
$dateAllSet = 1;
|
|
$rowDates['starts'] = (($rowDates['starts'] == '0000-00-00') ? $dateToday : $rowDates['starts']);
|
|
$rowDates['expire'] = (($rowDates['expire'] == '0000-00-00') ? $dateMonth : $rowDates['expire']);
|
|
|
|
echo '<fieldset><legend>'.$lang['srv_activate_duration'].'</legend>';
|
|
echo '<input id="radioAuto" type="radio" name="radioTrajanje" value="0" ' . (($dateAllSet) ? ' checked="checked" ' : '') . '/>';
|
|
echo $lang['srv_activate_duration_auto'].'<span id="startsAuto">' . $dateToday . '</span>'.$lang['srv_activate_duration_auto_to'].'<span id="expireAuto">' . $dateMonth . '</span> <br/>';
|
|
echo '<input id="radioManual" type="radio" name="radioTrajanje" value="1" ' . (($dateAllSet) ? '' : ' checked="checked" ') . '/>';
|
|
echo $lang['srv_activate_duration_manual'];
|
|
echo '<input id="startsManual" type="text" name="startsManual" value="' . $rowDates['starts'] . '" />
|
|
<span id="starts_img_manual" class="sprites calendar_ico"></span>';
|
|
echo $lang['srv_activate_duration_manual_to'];
|
|
echo '<input id="expireManual" type="text" name="expireManual" value="' . $rowDates['expire'] . '" /> <span id="expire_img_manual" class="sprites calendar_ico"></span><br/>';
|
|
echo '<div id="divAvtoClose" >'.$lang['srv_activate_duration_autostart'].'<span id="spanAvtoClose">3</span> s</div>';
|
|
echo '<div id="trajanjeLink" class="trajanjeLinkOff"><span class="sprites trajanje_star"></span> '.$lang['srv_activate_duration_button'].'</div>';
|
|
echo '
|
|
<script type="text/javascript">
|
|
Calendar.setup({
|
|
inputField : "startsManual",
|
|
ifFormat : "%Y-%m-%d",
|
|
button : "starts_img_manual",
|
|
singleClick : true,
|
|
onUpdate : updateManual
|
|
});
|
|
Calendar.setup({
|
|
inputField : "expireManual",
|
|
ifFormat : "%Y-%m-%d",
|
|
button : "expire_img_manual",
|
|
singleClick : true,
|
|
onUpdate : updateManual });' .
|
|
|
|
'$("#trajanjeLink").click(function(){ anketa_setActive(\'' . $this->anketa . '\',\'' . $_POST['folders'] . '\') });
|
|
$("#trajanjeLink").mouseenter(function(){$(this).addClass(\'trajanjeLinkOn\');});
|
|
$("#trajanjeLink").mouseleave(function(){$(this).removeClass(\'trajanjeLinkOn\');});
|
|
closeTimeout = setTimeout(function() {autoCloseActivationDiv(\'' . $this->anketa . '\',\'' . $_POST['folders'] . '\');}, 1000);
|
|
$("#surveyTrajanje").bind("click", function() {$("#divAvtoClose").hide();});
|
|
</script>
|
|
';
|
|
}
|
|
elseif ($_GET['a'] == 'save_global') {
|
|
if (isset ($anketa) || isset ($what) || isset ($state)) {
|
|
Common::updateEditStamp();
|
|
$updateString = "UPDATE srv_anketa SET $what='" . $state . "' WHERE id='" . $anketa . "'";
|
|
$sql = sisplet_query($updateString);
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'sysFilterEditMode') {
|
|
global $global_user_id;
|
|
$mode = (isset ($_POST['mode'])) ? $_POST['mode'] : 'normal';
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
Setting :: getInstance()->DisplaySystemFilters($mode);
|
|
}
|
|
elseif ($_GET['a'] == 'sysFilterAdd') {
|
|
global $global_user_id;
|
|
global $admin_type;
|
|
|
|
if (isset ($_POST['filter']) && isset ($_POST['text']) && isset ($_POST['fid']) && $admin_type == 0) {
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
Setting :: getInstance()->AddS($_POST['filter'], $_POST['text'], $_POST['fid']);
|
|
Setting :: getInstance()->DisplaySystemFilters('edit');
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'sysFilterDelete') {
|
|
global $global_user_id;
|
|
global $admin_type;
|
|
if (isset ($_POST['id']) && $admin_type == 0) {
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
Setting :: getInstance()->DeleteSystemFilters($_POST['id']);
|
|
Setting :: getInstance()->DisplaySystemFilters('edit');
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'sysFilterSave') {
|
|
global $global_user_id;
|
|
global $admin_type;
|
|
if (isset ($_POST['id']) && isset ($_POST['filter']) && isset ($_POST['text']) && $admin_type == 0) {
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
Setting :: getInstance()->SaveSystemFilters($_POST['id'], $_POST['filter'], $_POST['text']);
|
|
Setting :: getInstance()->DisplaySystemFilters('edit');
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'save_reportSetting') {
|
|
global $lang, $global_user_id;
|
|
|
|
SurveyUserSetting :: getInstance()->Init($_POST['anketa'], $_POST['uid']);
|
|
SurveyUserSetting :: getInstance()->setShowPdfIf($_POST['state']);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'saveSrvMisc') {
|
|
global $global_user_id;
|
|
if (isset ($_POST['what']) && isset ($_POST['value'])) {
|
|
Setting :: getInstance()->Init($global_user_id);
|
|
Setting :: getInstance()->setSysMiscSetting($_POST['what'], $_POST['value']);
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'saveSrvSurveyMisc') { // shranimonastavitev posamezne ankete
|
|
if (isset ($_POST['anketa']) && $_POST['anketa'] != '') {
|
|
SurveySetting :: getInstance()->Init($_POST['anketa']);
|
|
if (isset ($_POST['what']) && isset ($_POST['value'])) {
|
|
SurveySetting :: getInstance()->setSurveyMiscSetting($_POST['what'], $_POST['value']);
|
|
}
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'save_userSetting') { // shranimo nastavitev posameznega uporabnika
|
|
if (isset ($_POST['uid']) && $_POST['uid'] != '') {
|
|
UserSetting :: getInstance()->Init($_POST['uid']);
|
|
if (isset ($_POST['what']) && isset ($_POST['state'])) {
|
|
UserSetting :: getInstance()->setUserSetting($_POST['what'], $_POST['state']);
|
|
}
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'vnosiReloadData') {
|
|
global $global_user_id;
|
|
#$dsd = new DisplaySurveyData($this->anketa);
|
|
#$dsd->displayData();
|
|
SurveyDataDisplay::Init($this->anketa);
|
|
SurveyDataDisplay::displayVnosiHTML();
|
|
}
|
|
elseif ($_GET['a'] == 'vnosiReloadLeftFilter') {
|
|
global $global_user_id;
|
|
SurveyDataDisplay::Init($this->anketa);
|
|
SurveyDataDisplay::displayLeftFilters();
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_loadFilterProfile') {
|
|
global $global_user_id;
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->showFilterProfiles();
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_show_chart_color') {
|
|
|
|
SurveyAnalysis::Init($this->anketa);
|
|
SurveyAnalysis::showChartColorProfiles();
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_loadMissingProfile') {
|
|
global $global_user_id;
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->showMissingValues();
|
|
}
|
|
elseif ($_GET['a'] == 'analizaMissingProfileDropdownReloadData') {
|
|
global $global_user_id;
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->analizaMissingProfileDropdownReloadData();
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_changeViewFilterProfile') {
|
|
global $global_user_id;
|
|
// SurveyUserSetting :: getInstance()->Init($this->anketa, $global_user_id);
|
|
// SurveyUserSetting :: getInstance()->saveSettings('default_missing_profile', $_POST['profileId']);
|
|
// če ni več seja pobirsemo session za to nastavitev
|
|
|
|
if ( $_POST['profileId'] != 0 )
|
|
$_SESSION['missing_profile_from_session'] = false;
|
|
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->showFilterProfiles($_POST['profileId']);
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_changeViewMissingProfile') {
|
|
global $global_user_id;
|
|
// SurveyUserSetting :: getInstance()->Init($this->anketa, $global_user_id);
|
|
// SurveyUserSetting :: getInstance()->saveSettings('default_missing_profile', $_POST['profileId']);
|
|
// če ni več seja pobirsemo session za to nastavitev
|
|
|
|
if ( $_POST['profileId'] != 0 )
|
|
$_SESSION['missing_profile_from_session'] = false;
|
|
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->showMissingValues($_POST['profileId']);
|
|
}
|
|
elseif ($_GET['a'] == 'changeMissingProfileDropdown') {
|
|
global $global_user_id;
|
|
|
|
SurveyUserSetting :: getInstance()->Init($this->anketa, $global_user_id);
|
|
SurveyUserSetting :: getInstance()->saveSettings('default_missing_profile', $_POST['profileId']);
|
|
|
|
// če ni več seja pobirsemo session za to nastavitev
|
|
if ( $_POST['profileId'] != 0 )
|
|
unset($_SESSION['missing_profile_from_session']);
|
|
else {
|
|
$_SESSION['missing_profile_from_session'] = true;
|
|
}
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'changeFilterProfileDropdown') {
|
|
global $global_user_id;
|
|
|
|
$pid = $_POST['profileId'];
|
|
SurveyFilterProfiles :: getInstance()->Init($this->anketa, $global_user_id);
|
|
SurveyFilterProfiles :: getInstance()->setCurrentProfile($pid);
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_createFilterProfile') {
|
|
global $global_user_id;
|
|
|
|
SurveyFilterProfiles :: getInstance()->Init($this->anketa, $global_user_id);
|
|
$new_id = SurveyFilterProfiles :: getInstance()->newProfile($_POST['profileName']);
|
|
|
|
SurveyFilterProfiles :: getInstance()->setCurrentProfile($new_id);
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_runFilterProfile') {
|
|
global $global_user_id;
|
|
|
|
// shranimo.
|
|
$pid = $_POST['profileId'];
|
|
SurveyFilterProfiles :: getInstance()->Init($this->anketa, $global_user_id);
|
|
SurveyFilterProfiles :: getInstance()->setCurrentProfile($pid);
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_deleteFilterProfile') {
|
|
global $global_user_id;
|
|
|
|
SurveyFilterProfiles :: getInstance()->Init($this->anketa, $global_user_id);
|
|
$newId = SurveyFilterProfiles :: getInstance()->deleteProfile($_POST['profileId']);
|
|
|
|
SurveyFilterProfiles :: getInstance()->setCurrentProfile($newId);
|
|
}
|
|
elseif ($_GET['a'] == 'analiza_renameFilterProfile') {
|
|
global $global_user_id;
|
|
SurveyFilterProfiles :: getInstance()->Init($this->anketa, $global_user_id);
|
|
$updated = SurveyFilterProfiles :: getInstance()->renameProfile($_POST['profileId'],$_POST['newProfileName']);
|
|
}
|
|
elseif ($_GET['a'] == 'analizaFilterProfileDropdownReloadData') {
|
|
global $global_user_id;
|
|
|
|
$analiza = new Analiza($this->anketa, $_POST['podstran']);
|
|
$analiza->analizaFilterProfileDropdownReloadData();
|
|
}
|
|
|
|
|
|
elseif ($_GET['a'] == 'filter_editing') {
|
|
Common::updateEditStamp();
|
|
|
|
if (isset ($_COOKIE['filter_' . $this->anketa])) {
|
|
$if_id = $_COOKIE['filter_' . $this->anketa];
|
|
} else {
|
|
sisplet_query("INSERT INTO srv_if (id) VALUES ('')");
|
|
$if_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
sisplet_query("INSERT INTO srv_condition (id, if_id, vrstni_red) VALUES ('', '$if_id', '1')");
|
|
setcookie('filter_' . $this->anketa, $if_id);
|
|
}
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
$Branching->condition_editing($if_id, -1);
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'filter_remove') {
|
|
Common::updateEditStamp();
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
ob_start();
|
|
$Branching->ajax_if_remove($_COOKIE['filter_' . $this->anketa]);
|
|
ob_get_clean();
|
|
setcookie('filter_' . $this->anketa, '', time() - 3600);
|
|
echo 'index.php?anketa=' . $this->anketa . '&a='.A_COLLECT_DATA;
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'filter_close') {
|
|
|
|
echo 'index.php?anketa=' . $this->anketa . '&a='.A_COLLECT_DATA;
|
|
}
|
|
elseif ($_GET['a'] == 'handleUserCodeSetting') {
|
|
Common::updateEditStamp();
|
|
|
|
if (isset ($_POST['phone']) && isset ($_POST['email']) && isset ($this->anketa)) {
|
|
|
|
//$sql = sisplet_query("UPDATE srv_anketa SET phone = '" . $_POST['phone'] . "', email = '" . $_POST['email'] . "' , social_network = '" . $_POST['social_network'] . "' WHERE id = '" . $this->anketa . "'");
|
|
|
|
if($_POST['phone'] == '1')
|
|
$sql = sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$this->anketa."', 'phone')");
|
|
else
|
|
$sql = sisplet_query("DELETE FROM srv_anketa_module WHERE ank_id='".$this->anketa."' AND modul='phone'");
|
|
|
|
if($_POST['email'] == '1')
|
|
$sql = sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$this->anketa."', 'email')");
|
|
else
|
|
$sql = sisplet_query("DELETE FROM srv_anketa_module WHERE ank_id='".$this->anketa."' AND modul='email'");
|
|
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
$this->SurveyAdmin->createUserbaseSystemVariable($_POST['phone'], $_POST['email']);
|
|
}
|
|
elseif (isset ($_POST['usercode_skip']) && isset ($this->anketa)) {
|
|
$sql = sisplet_query("UPDATE srv_anketa SET usercode_skip = '" . $_POST['usercode_skip'] . "', cookie='-1' WHERE id = '" . $this->anketa . "'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
}
|
|
elseif (isset ($_POST['usercode_required']) && isset ($this->anketa)) {
|
|
$sql = sisplet_query("UPDATE srv_anketa SET usercode_required = '" . $_POST['usercode_required'] . "' WHERE id = '" . $this->anketa . "'");
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
} else
|
|
echo 'Napaka!';
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
if ($_POST['all'] == 1)
|
|
$sas->respondenti_iz_baze();
|
|
else
|
|
$sas->showUserCodeSettings($row);
|
|
}
|
|
elseif ($_GET['a'] == 'anketaActiveEmail') {
|
|
Common::updateEditStamp();
|
|
|
|
// če je email 0, aktiviramo email in hkrati user_base
|
|
if (SurveyInfo::getInstance()->checkSurveyModule('email')) {
|
|
$strUpdate = "UPDATE srv_anketa SET user_base = 1 WHERE id = '" . $this->anketa . "'";
|
|
$sqlUpdate = sisplet_query($strUpdate);
|
|
|
|
$sql = sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$this->anketa."', 'email')");
|
|
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
$_email = 1;
|
|
} else {
|
|
// če je email 1 deaktiviramo email in hkrati preverimo še telefon in ponastavimo user_base
|
|
$strUserBase = "";
|
|
if (!SurveyInfo::getInstance()->checkSurveyModule('phone'))
|
|
$strUserBase = " user_base = 0,";
|
|
$strUpdate = "UPDATE srv_anketa SET" . $strUserBase . " WHERE id = '" . $this->anketa . "'";
|
|
$sqlUpdate = sisplet_query($strUpdate);
|
|
|
|
$sql = sisplet_query("DELETE FROM srv_anketa_module WHERE ank_id='".$this->anketa."' AND modul='email'");
|
|
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
$_email = 0;
|
|
}
|
|
|
|
$this->SurveyAdmin->createUserbaseSystemVariable((int)SurveyInfo::getInstance()->checkSurveyModule('phone'), $_email);
|
|
}
|
|
elseif ($_GET['a'] == 'editRespondentVrednost') {
|
|
Common::updateEditStamp();
|
|
if (isset ($_POST['spr_id']) && $_POST['spr_id'] != "" && isset ($_POST['usr_id']) && $_POST['usr_id'] != "") {
|
|
$strUpdate = "INSERT INTO srv_data_text".$this->db_table." (spr_id, usr_id, text) VALUES ('" . $_POST['spr_id'] . "', '" . $_POST['usr_id'] . "', '" . $_POST['val'] . "') " .
|
|
"ON DUPLICATE KEY UPDATE text = '" . $_POST['val'] . "'";
|
|
$sqlUpdate = sisplet_query($strUpdate);
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'edit_email_invitations') {
|
|
|
|
if ($_POST['id'] == '0') {
|
|
$email_template_name = "Moja predloga";
|
|
$email_template_subject = $_POST['email_subject'];
|
|
$email_template_text = $_POST['email_text'];
|
|
} else {
|
|
// iz baze poberemo vrednosti
|
|
$sql = sisplet_query("SELECT * FROM srv_userbase_invitations WHERE id = '" . $_POST['id'] . "'");
|
|
$row = mysqli_fetch_assoc($sql);
|
|
$email_template_name = $row['name'];
|
|
$email_template_subject = $row['subject'];
|
|
$email_template_text = $row['text'];
|
|
}
|
|
|
|
echo '<div style="margin-bottom:10px;">';
|
|
echo '<input id="template_id" type="hidden" value="' . $_POST['id'] . '">';
|
|
echo '<p> <span class="labelSpan" >Ime:</span>';
|
|
echo '<input id="template_name_' . $_POST['id'] . '" type="text" value="' . $email_template_name . '"></p>';
|
|
echo '<p> <span class="labelSpan" >Zadeva:</span>';
|
|
echo '<input id="template_subject_' . $_POST['id'] . '" type="text" value="' . $email_template_subject . '"></p>';
|
|
echo '<p> <span class="labelSpan" >' . $lang['text'] . ':</span><br/>';
|
|
echo '<textarea name="template_text_' . $_POST['id'] . '" id="template_text_' . $_POST['id'] . '">' . $email_template_text . '</textarea></p>';
|
|
echo ' <span class="floatRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_red" href="#" onclick="email_invitations_close(\'close\'); return false;"><span><img src="icons/icons/bin_closed.png" alt="" vartical-align="middle" />' . $lang['srv_zapri'] . '</span></a></div></span>';
|
|
if ($_POST['id'] != '0') {
|
|
echo ' <span class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_green" href="#" onclick="email_invitations_close(\'save\'); return false;"><span><img src="icons/icons/cog_save.png" alt="" vartical-align="middle" />shrani predlogo</span></a></div></span>';
|
|
}
|
|
echo ' <span class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="email_invitations_close(\'new\'); return false;"><span><img id="email_save" src="icons/icons/cog_add.png" alt="" vartical-align="middle" />nova predloga</span></a></div></span>';
|
|
echo ' <div class="clr"></div>';
|
|
echo '</div>';
|
|
echo '<script type="text/javascript">';
|
|
// echo '$(document).ready(function() {' .
|
|
echo ' create_editor(\'template_text_' . $_POST['id'] . '\');';
|
|
// ' });';
|
|
echo '</script>';
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_email_invitations_save') {
|
|
Common::updateEditStamp();
|
|
if ($_POST['template_name'] != "") {
|
|
if ($_POST['what'] == 'save') {
|
|
// shranimo obstoječo
|
|
$sql_update = sisplet_query("UPDATE srv_userbase_invitations SET name = '" . $_POST['template_name'] . "', subject = '" . $_POST['template_subject'] . "', text = '" . $_POST['template_text'] . "' WHERE id = '" . $_POST['id'] . "'");
|
|
$this->SurveyAdmin->show_email_invitation_templates($_POST['id']);
|
|
|
|
}
|
|
elseif ($_POST['what'] == 'new') {
|
|
// shranimo kot novo
|
|
$sql_insert = sisplet_query("INSERT INTO srv_userbase_invitations (name, subject, text) VALUES('" . $_POST['template_name'] . "', '" . $_POST['template_subject'] . "', '" . $_POST['template_text'] . "');");
|
|
$id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
$errorMsg = null;
|
|
if (mysqli_affected_rows($GLOBALS['connect_db']) < 1) {
|
|
// predloga s tem imenom že obstaja
|
|
$errorMsg = "Predloga s tem imenom že obstaja!";
|
|
//poiščemo id te predlogo
|
|
$sql = sisplet_query("SELECT id FROM srv_userbase_invitations WHERE name = '" . $_POST['template_name'] . "'");
|
|
$row = mysqli_fetch_assoc($sql);
|
|
$id = $row['id'];
|
|
}
|
|
if ($id < 1)
|
|
$id = 1;
|
|
$this->SurveyAdmin->show_email_invitation_templates($id, $errorMsg);
|
|
}
|
|
} else {
|
|
$errorMsg = "Manjka ime predloge!";
|
|
$this->SurveyAdmin->show_email_invitation_templates($id, $errorMsg);
|
|
}
|
|
}
|
|
elseif ($_GET['a'] == 'change_email_invitations_template') {
|
|
$this->SurveyAdmin->show_email_invitation_values($_POST['id']);
|
|
}
|
|
elseif ($_GET['a'] == 'email_invitation_delete_template') {
|
|
Common::updateEditStamp();
|
|
$id = 1;
|
|
if ($_POST['id'] > 1) {
|
|
$errorMsg = "Predloga je bila izbrisana!";
|
|
$sql_delete = sisplet_query("DELETE FROM srv_userbase_invitations WHERE id = '" . $_POST['id'] . "'");
|
|
if (mysqli_affected_rows($GLOBALS['connect_db']) < 1) {
|
|
$errorMsg = "Napaka! Predloge ni bilo mogoče izbrisati!";
|
|
$id = $_POST['id'];
|
|
}
|
|
}
|
|
elseif ($_POST['id'] == 1) {
|
|
$errorMsg = "Privzete predloge ni mogoče izbrisati!";
|
|
} else {
|
|
$errorMsg = "Manjka id. Predloge ni mogoče izbrisati!";
|
|
}
|
|
$this->SurveyAdmin->show_email_invitation_templates($id, $errorMsg);
|
|
}
|
|
elseif ($_GET['a'] == 'show_insert_email_respondents') {
|
|
// če je id > 0 vstavljamo iz lste
|
|
$users = "";
|
|
if ($_POST['id'] > 0) {
|
|
// preberemo respondente
|
|
$_users = array ();
|
|
$sqlRespondenti = sisplet_query("SELECT line FROM srv_userbase_respondents WHERE list_id = '" . $_POST['id'] . "'");
|
|
while ($row_respondenti = mysqli_fetch_assoc($sqlRespondenti)) {
|
|
$_users[] = $row_respondenti['line'];
|
|
}
|
|
$users = implode(NEW_LINE, $_users);
|
|
}
|
|
echo '<div id="insert_email_respondents">';
|
|
echo '<fieldset><legend>' . $lang['srv_massinsert'] . '</legend>';
|
|
echo '<p><strong>';
|
|
$sql = sisplet_query("SELECT 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' ORDER BY g.vrstni_red, s.vrstni_red");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
$i = 0;
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
if ($i++ != 0)
|
|
echo ',';
|
|
echo '' . strip_tags($row['variable']) . '';
|
|
}
|
|
echo '</strong></p>';
|
|
echo '<form id="frm_email_respondents" action="index.php?anketa=' . $this->anketa . '&a=email" method="post">';
|
|
echo '<div style="float:left; width:390px;"><textarea name="userinsert" style="width:380px; height:300px">' . $users . '</textarea></div>';
|
|
echo '<div style="float:right; width:410px; border:1px solid #e2e2e2; background-color: #f2f2f2; padding:5px;">' . $lang['srv_masstxt'] . '</div>';
|
|
echo '<div class="clr"></div>';
|
|
echo '</form>';
|
|
echo '</fieldset><br/>';
|
|
echo '<div class="floatRight spaceLeft"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_red" href="#" onclick="close_insert_email_respondents(); return false;"><span><img src="icons/icons/accept.png" alt="" vartical-align="middle" />' . $lang['close'] . '</span></a></div></div>';
|
|
echo '<div class="floatRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_green" href="#" onclick="$(\'#frm_email_respondents\').submit(); return false;"><span><img src="icons/icons/accept.png" alt="" vartical-align="middle" />' . $lang['add'] . '</span></a></div></div>';
|
|
echo '<div class="clr"></div>';
|
|
echo '</div>';
|
|
}
|
|
elseif ($_GET['a'] == 'show_edit_email_respondents') {
|
|
echo '<div id="insert_email_respondents">';
|
|
echo '<fieldset><legend>' . $lang['srv_massinsert'] . '</legend>';
|
|
|
|
$_sistemske = array ();
|
|
$labels = "";
|
|
$users = "";
|
|
|
|
$listName = "Moji respondenti";
|
|
// če je id=0 urejamo respondente iz trenutne ankete, če je id > 0 pa urejamo respondente že shranjene liste
|
|
if ($_POST['id'] == 0) {
|
|
//poiščemo sistemske spremenljivke
|
|
$labelsPrefix = "";
|
|
$sqlSistemske = sisplet_query("SELECT s.id, s.naslov FROM srv_spremenljivka s, srv_grupa g WHERE s.sistem='1' AND s.gru_id=g.id AND g.ank_id='$this->anketa' ORDER BY g.vrstni_red, s.vrstni_red");
|
|
while ($rowSistemske = mysqli_fetch_assoc($sqlSistemske)) {
|
|
$_sistemske[] = $rowSistemske['id'];
|
|
$labels .= $labelsPrefix . strip_tags($rowSistemske['naslov']);
|
|
$labelsPrefix = ",";
|
|
}
|
|
// zloopamo po userjih ankete
|
|
$str_qry_users = "SELECT u.id AS usr_id FROM srv_user AS u WHERE u.ank_id = '" . $this->anketa . "' ";
|
|
$qry_users = sisplet_query($str_qry_users) or die(mysqli_error($GLOBALS['connect_db']));
|
|
|
|
while ($row_users = mysqli_fetch_assoc($qry_users)) {
|
|
$tmpUsers = "";
|
|
$usersPrefix = "";
|
|
foreach ($_sistemske as $sistemska) {
|
|
$textSql = sisplet_query("SELECT text FROM srv_data_text".$this->db_table." WHERE spr_id = '" . $sistemska . "' AND usr_id = '" . $row_users['usr_id'] . "'");
|
|
$textRow = mysqli_fetch_assoc($textSql);
|
|
$tmpUsers .= $usersPrefix . strip_tags($textRow['text']);
|
|
$usersPrefix = ",";
|
|
}
|
|
$_users[] = $tmpUsers;
|
|
}
|
|
|
|
}
|
|
elseif ($_POST['id'] > 0) {
|
|
// preberemo stare vrednosti
|
|
// preberemo ime liste in sistemske spremenljivke
|
|
$sqlLista = sisplet_query("SELECT * FROM srv_userbase_respondents_lists WHERE id = '" . $_POST['id'] . "'");
|
|
$rowLista = mysqli_fetch_assoc($sqlLista);
|
|
$labels = $rowLista['variables'];
|
|
$listName = $rowLista['name'];
|
|
// preberemo respondente
|
|
$_users = array ();
|
|
$sqlRespondenti = sisplet_query("SELECT line FROM srv_userbase_respondents WHERE list_id = '" . $_POST['id'] . "'");
|
|
while ($row_respondenti = mysqli_fetch_assoc($sqlRespondenti)) {
|
|
$_users[] = $row_respondenti['line'];
|
|
}
|
|
}
|
|
|
|
echo '<input type="hidden" name="list_id" id="list_id" value="' . $_POST['id'] . '">';
|
|
echo '<input type="hidden" name="list_variables_' . $_POST['id'] . '" id="list_variables_' . $_POST['id'] . '" value="' . $labels . '">';
|
|
echo '<p>Ime liste: <input name="list_name_' . $_POST['id'] . '" id="list_name_' . $_POST['id'] . '" value="' . $listName . '">';
|
|
echo '<p>Sistemske spremenljivke: <strong>' . $labels . '</strong></p>';
|
|
|
|
echo '<div style="float:left; width:410px;"><textarea name="list_text_' . $_POST['id'] . '" id="list_text_' . $_POST['id'] . '" style="width:400px; height:300px">';
|
|
if ($_users)
|
|
echo implode(NEW_LINE, $_users);
|
|
echo '</textarea></div>';
|
|
echo '<div style="float:right; width:410px; border:1px solid #e2e2e2; background-color: #f2f2f2; padding:5px;">' . $lang['srv_masstxt'] . '</div>';
|
|
echo '<div class="clr"></div>';
|
|
|
|
echo '</fieldset><br/>';
|
|
echo '<div class="floatRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_red" href="#" onclick="close_edit_email_respondents(\'close\'); return false;"><span><img src="icons/icons/bin_closed.png" alt="" vartical-align="middle" />' . $lang['close'] . '</span></a></div></div>';
|
|
if ($_POST['id'] != '0') {
|
|
echo '<div class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_green" href="#" onclick="close_edit_email_respondents(\'save\'); return false;"><span><img src="icons/icons/book_save.png" alt="" vartical-align="middle" />Shrani listo</span></a></div></div>';
|
|
}
|
|
echo '<div class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="close_edit_email_respondents(\'new\'); return false;"><span><img src="icons/icons/book_add.png" alt="" vartical-align="middle" />Nova lista</span></a></div></div>';
|
|
echo '<div class="clr"></div>';
|
|
echo '</div>';
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'edit_respondents_list_save') {
|
|
Common::updateEditStamp();
|
|
$id = $_POST['list_id'];
|
|
if ($_POST['list_name'] != "") {
|
|
if ($_POST['what'] == 'save') {
|
|
// shranimo obstoječo
|
|
$sql_update = sisplet_query("UPDATE srv_userbase_respondents_lists SET name = '" . $_POST['list_name'] . "', variables = '" . $_POST['list_variables'] . "' WHERE id = '" . $id . "'");
|
|
// pobrišemo stare zapise in dodamo nove
|
|
$sql_delete = sisplet_query("DELETE FROM srv_userbase_respondents WHERE list_id = '" . $id . "'");
|
|
// zapišemo nove respondente
|
|
$vrstice = explode(NEW_LINE, $_POST['list_text']);
|
|
foreach ($vrstice AS $vrstica) {
|
|
$sql_insert = sisplet_query("INSERT INTO srv_userbase_respondents (list_id, line) VALUES('" . $id . "', '" . $vrstica . "');");
|
|
}
|
|
$errorMsg = "Lista je bila shranjena!";
|
|
}
|
|
elseif ($_POST['what'] == 'new') {
|
|
// shranimo kot novo listo
|
|
$sql_insert = sisplet_query("INSERT INTO srv_userbase_respondents_lists (name, variables) VALUES('" . $_POST['list_name'] . "', '" . $_POST['list_variables'] . "');");
|
|
$iid = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
$errorMsg = null;
|
|
if (mysqli_affected_rows($GLOBALS['connect_db']) < 1) {
|
|
// predloga s tem imenom že obstaja
|
|
$errorMsg = "Lista s tem imenom že obstaja!";
|
|
//poiščemo id te predlogo
|
|
$sql = sisplet_query("SELECT id FROM srv_userbase_respondents_lists WHERE name = '" . $_POST['list_name'] . "'");
|
|
$row = mysqli_fetch_assoc($sql);
|
|
$id = $row['id'];
|
|
}
|
|
elseif ($iid > 0) {
|
|
// vstavimo še respondente
|
|
// najprej razdelimo vrstice
|
|
$vrstice = explode(NEW_LINE, $_POST['list_text']);
|
|
foreach ($vrstice AS $vrstica) {
|
|
$sql_insert = sisplet_query("INSERT INTO srv_userbase_respondents (list_id, line) VALUES('" . $iid . "', '" . $vrstica . "');");
|
|
}
|
|
$errorMsg = "Lista je bila kreirana!";
|
|
$id = $iid;
|
|
}
|
|
}
|
|
} else {
|
|
$errorMsg = "Manjka ime liste!";
|
|
}
|
|
if ($id < 1)
|
|
$id = 1;
|
|
$this->SurveyAdmin->show_userbase_respondents_lists($id, $errorMsg);
|
|
}
|
|
elseif ($_GET['a'] == 'change_respondent_list') {
|
|
$this->SurveyAdmin->show_userbase_list_respondents($_POST['id']);
|
|
}
|
|
elseif ($_GET['a'] == 'delete_respondent_list') {
|
|
Common::updateEditStamp();
|
|
if ($_POST['id'] != "") {
|
|
$errorMsg = "Lista je bila izbrisana!";
|
|
$sql_delete1 = sisplet_query("DELETE FROM srv_userbase_respondents WHERE list_id = '" . $_POST['id'] . "'");
|
|
$aff1 = mysqli_affected_rows($GLOBALS['connect_db']);
|
|
$sql_delete2 = sisplet_query("DELETE FROM srv_userbase_respondents_lists WHERE id = '" . $_POST['id'] . "'");
|
|
$aff2 = mysqli_affected_rows($GLOBALS['connect_db']);
|
|
if ($aff2 < 1) {
|
|
$errorMsg = "Napaka! Predloge ni bilo mogoče izbrisati!";
|
|
}
|
|
|
|
}
|
|
$this->SurveyAdmin->show_userbase_respondents_lists(null, $errorMsg);
|
|
}
|
|
elseif ($_GET['a'] == 'change_mailto_radio') {
|
|
$this->SurveyAdmin->show_mailto_users($_POST['mailto_radio'], $_POST['mailto_status']);
|
|
}
|
|
elseif ($_GET['a'] == 'preview_mailto_email') {
|
|
|
|
$this->SurveyAdmin->preview_mailto_email($_POST['mailto_radio'], $_POST['mailto_status']);
|
|
}
|
|
elseif ($_GET['a'] == 'show_surveyListSettings') {
|
|
$SL = new SurveyList();
|
|
UserSetting::getInstance()->Init();
|
|
if ($_POST['sortby'] != "" ) {
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
|
|
}
|
|
echo '<div id="survey_list_settings">';
|
|
$SL -> displaySettings();
|
|
echo '</div>';
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'show_surveyListQickInfo') {
|
|
$SL = new SurveyList();
|
|
$SL -> displayListQickInfo();
|
|
}
|
|
elseif ($_GET['a'] == 'save_surveyListSettings') {
|
|
// setiramo nastavitve v UserSetting
|
|
UserSetting::getInstance()->Init();
|
|
UserSetting::getInstance()->setUserSetting('survey_list_rows_per_page', $_POST['rows_per_page']);
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order', $_POST['vrstniRed']);
|
|
UserSetting::getInstance()->setUserSetting('survey_list_visible', $_POST['data']);
|
|
if ($_POST['sortby'] != "" )
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
|
|
|
|
// shranimo nastavitve
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
|
|
$SL = new SurveyList();
|
|
$SL->getSurveys();
|
|
}
|
|
elseif ($_GET['a'] == 'surveyListFilter') {
|
|
// setiramo nastavitve v UserSetting
|
|
$SL = new SurveyList();
|
|
$SL -> setFilter();
|
|
$SL->getSurveys();
|
|
}
|
|
elseif ($_GET['a'] == 'default_surveyListSettings') {
|
|
// setiramo nastavitve v UserSetting
|
|
$SL = new SurveyList();
|
|
|
|
UserSetting::getInstance()->Init();
|
|
UserSetting::getInstance()->setUserSetting('survey_list_rows_per_page', $SL->getDef_Rows_per_page());
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order', '');
|
|
UserSetting::getInstance()->setUserSetting('survey_list_visible', '');
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order_by', '');
|
|
// shranimo nastavitve
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
|
|
|
|
$SL->saveCssSettings('');
|
|
echo '<div id="survey_list_settings">';
|
|
$SL->displaySettings();
|
|
|
|
echo '</div>';
|
|
}
|
|
elseif ($_GET['a'] == 'save_surveyListCssSettings') {
|
|
UserSetting::getInstance()->Init();
|
|
if ($_POST['sortby'] != "" )
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
|
|
|
|
$SL = new SurveyList();
|
|
$SL->saveCssSettings($_POST['data']);
|
|
$SL->getSurveys();
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_goTo') {
|
|
UserSetting::getInstance()->Init();
|
|
if ($_POST['sortby'] != "" )
|
|
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
|
|
$SL = new SurveyList();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_folders') {
|
|
$val = $_POST['show_folders'];
|
|
|
|
UserSetting::getInstance()->Init();
|
|
UserSetting::getInstance()->setUserSetting('survey_list_folders', $val);
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
|
|
$SL = new SurveyList();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_user') {
|
|
|
|
$SL = new SurveyList();
|
|
$SL -> setUserId();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_language') {
|
|
|
|
$SL = new SurveyList();
|
|
$SL -> setUserLanguage();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_gdpr') {
|
|
|
|
$SL = new SurveyList();
|
|
$SL -> setUserGDPR();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'surveyList_library') {
|
|
|
|
$SL = new SurveyList();
|
|
$SL -> setUserLibrary();
|
|
$SL->getSurveys();
|
|
|
|
}
|
|
elseif ($_GET['a'] == 'survey_chaneg_type') {
|
|
global $site_url;
|
|
$errorMsg = null;
|
|
// preverimo ali moramo spremeniti vrsto ankete, ali samo izpisemo opozorila
|
|
if ($_POST['change_type_submit'] == 'true') {
|
|
if ($_POST['new_type'] == 0) {
|
|
// za preklop na glasovanje zaenkrat nimamo omejitev
|
|
}
|
|
else if ($_POST['new_type'] == 1) {
|
|
// za preklop na formo zaenkrat nimamo omejitev
|
|
}
|
|
else if ($_POST['new_type'] == 2) { // ce zelimo tip 2 (navadna anketa) preverimo da nimamo pogojev (if-ov)
|
|
// $sql = sisplet_query("SELECT * FROM srv_branching WHERE ank_id='$this->anketa' AND element_if > 0");
|
|
// if (mysqli_num_rows($sql) > 0) {
|
|
// $errorMsg = $lang['srv_vrsta_survey_with_pages_error'];
|
|
// }
|
|
}
|
|
elseif ($_POST['new_type'] == 3) {
|
|
// za preklop na anketo s pogoje zaenkrat nimamo omejitev
|
|
} else {
|
|
$errorMsg = $lang['srv_vrsta_survey_error_not_suported'];
|
|
}
|
|
|
|
if ($errorMsg == null) {
|
|
Common::updateEditStamp();
|
|
sisplet_query("UPDATE srv_anketa SET survey_type = '" . $_POST['new_type'] . "' WHERE id = '$this->anketa'");
|
|
|
|
switch ($_POST['new_type']) {
|
|
case 0 : // glasovanja
|
|
break;
|
|
case 1 : // forma - izklopimo uvod in zakljucek
|
|
sisplet_query("UPDATE srv_anketa SET show_intro = '0', show_concl = '0' WHERE id = '$this->anketa'");
|
|
break;
|
|
case 2 : // Anketa na vec straneh
|
|
break;
|
|
case 3 : // anketa s pogoji
|
|
break;
|
|
}
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
// sisplet_query("UPDATE srv_anketa SET branching='1' WHERE id = '$this->anketa'");
|
|
$location = "";
|
|
if ($_POST['new_type'] == 3)
|
|
$location = "&a=branching";
|
|
echo '<script type="text/javascript">';
|
|
echo '$(document).ready(function() {' .
|
|
'$("#fullscreen").fadeOut("slow");' .
|
|
' vnos_redirect(\'' . $site_url . 'admin/survey/index.php?anketa=' . $this->anketa . $location . '\');' .
|
|
' });';
|
|
echo '</script>';
|
|
die();
|
|
}
|
|
}
|
|
|
|
echo '<div id="change_survey_type">';
|
|
echo '<div id="change_survey_type_note">';
|
|
echo $lang['srv_vrsta_survey_note_' . $_POST['new_type'].'_1'];
|
|
echo $lang['srv_vrsta_survey_note_' . $_POST['new_type'].'_2'];
|
|
switch ( $_POST['new_type'] ) {
|
|
case 1:
|
|
echo Help :: display('srv_vrsta_survey_with_form');
|
|
break;
|
|
case 2:
|
|
echo Help :: display('srv_vrsta_survey_with_pages');
|
|
break;
|
|
case 3:
|
|
echo Help :: display('srv_type_with_conditions');
|
|
break;
|
|
}
|
|
|
|
if ($errorMsg != null) {
|
|
echo '<div id="div_error" class="red floatLeft"><img src="icons/icons/error.png" alt="" vartical-align="middle" />' . $errorMsg . '</div>';
|
|
}
|
|
echo '</div>';
|
|
echo '<div class="clr"></div>';
|
|
echo '<div class="">';
|
|
|
|
$buttonTitle = array( 0 => $lang['srv_vrsta_survey_with_pool'],
|
|
1 => $lang['srv_vrsta_survey_with_form'],
|
|
2 => $lang['srv_vrsta_survey_with_pages'],
|
|
3 => $lang['srv_vrsta_survey_with_conditions'],
|
|
4 => $lang['srv_vrsta_survey_with_usability']);
|
|
|
|
echo '<span class="floatRight spaceRight" ><div class="buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="survey_chaneg_type(\'' . $_POST['new_type'] . '\',\'true\'); return false;" title="' . $buttonTitle[$_POST['new_type']] . '"><span>' . $buttonTitle[$_POST['new_type']] . '</span></a></div></span>';
|
|
echo '<span class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_gray" href="#" onclick="survey_chaneg_type_cancle(); return false;"><span>' . $lang['cancel'] . '</span></a></div></span>';
|
|
|
|
echo '<div class="clr"></div>';
|
|
echo '</div>';
|
|
|
|
echo '</div>';
|
|
}
|
|
elseif ($_GET['a'] == 'preview_spremenljivka') {
|
|
global $site_path;
|
|
|
|
SurveyInfo :: getInstance()->SurveyInit($anketa);
|
|
|
|
$offset = 0;
|
|
$zaporedna = 0;
|
|
$count_type = SurveyInfo :: getInstance()->getSurveyCountType();
|
|
|
|
if ($count_type) {
|
|
|
|
// Preštejemo koliko vprašanj je bilo do sedaj
|
|
$sqlg = sisplet_query("SELECT vrstni_red FROM srv_grupa WHERE id = (SELECT gru_id FROM srv_spremenljivka WHERE id = '" . $_POST['spremenljivka'] . "')");
|
|
$rowg = mysqli_fetch_assoc($sqlg);
|
|
$vrstni_red = $rowg['vrstni_red'];
|
|
|
|
$sqlCountPast = sisplet_query("SELECT count(*) as cnt FROM srv_spremenljivka s, srv_grupa g WHERE g.ank_id='" . $_POST['anketa'] . "' AND s.gru_id=g.id AND g.vrstni_red < '$vrstni_red' ORDER BY g.vrstni_red ASC, s.vrstni_red ASC");
|
|
$rowCount = mysqli_fetch_assoc($sqlCountPast);
|
|
$offset = $rowCount['cnt'];
|
|
|
|
// poiscemo vprasanja / spremenljivke
|
|
$sql = sisplet_query("SELECT id FROM srv_spremenljivka WHERE gru_id=(SELECT gru_id FROM srv_spremenljivka WHERE id = '" . $_POST['spremenljivka'] . "') AND visible='1' ORDER BY vrstni_red ASC");
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
if ($row['id'] == $_POST['spremenljivka']) {
|
|
$zaporedna++;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
echo '<div id="preview_spremenljivka">';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="preview_spremenljivka_cancle(); return false;">✕</a></div>';
|
|
|
|
include_once('../../main/survey/app/global_function.php');
|
|
new \App\Controllers\SurveyController(true);
|
|
|
|
if (isset($_POST['lang_id'])) {
|
|
save('lang_id', (int)$_POST['lang_id']);
|
|
}
|
|
echo ' <div id="spremenljivka_preview">';
|
|
if ( $_POST['spremenljivka'] == -1 ) {
|
|
\App\Controllers\BodyController::getInstance()->displayIntroduction();
|
|
}
|
|
elseif ( $_POST['spremenljivka'] == -2 ) {
|
|
\App\Controllers\BodyController::getInstance()->displayKonec();
|
|
}
|
|
elseif ( $_POST['spremenljivka'] == -3 ) {
|
|
\App\Controllers\StatisticController::displayStatistika();
|
|
}
|
|
else {
|
|
save('forceShowSpremenljivka', true);
|
|
save('question_preview', true);
|
|
\App\Controllers\Vprasanja\VprasanjaController::getInstance()->displaySpremenljivka($_POST['spremenljivka'], $offset, $zaporedna);
|
|
}
|
|
echo ' </div>';
|
|
|
|
echo '<div class="buttons_holder">';
|
|
echo '<span class="floatRight">';
|
|
echo ' <div class="buttonwrapper floatRight"><a class="ovalbutton ovalbutton_orange" href="#" onclick="preview_spremenljivka_cancle(); return false;"><span>' . $lang['srv_zapri'] . '</span></a></div> ';
|
|
echo ' <div class="buttonwrapper spaceRight floatRight"><a class="ovalbutton ovalbutton_gray" href="#" onclick="window.open(\''.$site_url.'admin/survey/ajax.php?t=branching&a=spremenljivka_preview_print&anketa='.$this->anketa.'&spremenljivka='.$_POST['spremenljivka'].'\', \'print\', \'scrollbars=1\'); return false;"><span><img src="img_0/printer.png" /> ' . $lang['hour_print2'] . '</span></a></div> ';
|
|
echo '</span>';
|
|
echo '</div>';
|
|
|
|
echo '</div>';
|
|
}
|
|
else if ($_GET['a'] == 'preview_page') {
|
|
echo '<div id="preview_page">';
|
|
echo ' <div id="page_preview">';
|
|
echo 'TODO';
|
|
echo ' </div>';
|
|
echo ' <div class="clr"></div>';
|
|
echo ' <div class="">';
|
|
echo ' <span class="floatRight spaceRight"><div class="buttonwrapper"><a class="ovalbutton ovalbutton_red" href="#" onclick="preview_page_cancle(); return false;"><span>' . $lang['back'] . '</span></a></div></span>';
|
|
echo ' <div class="clr"></div>';
|
|
echo ' </div>';
|
|
echo '</div>';
|
|
}
|
|
/*else if ($_GET['a'] == 'rename_variable') {
|
|
if ($_POST['show'] == 'true') {
|
|
echo '<input type="text" name="variable" id="variable_' . $spremenljivka . '" value="' . $_POST['value'] . '" class="variableinput variableinput_noborder" onkeyup="edit_spremenljivka_variable(\'' . $spremenljivka . '\');" ' . ' />';
|
|
echo '<script type="text/javascript">';
|
|
echo '$(document).ready(function() {';
|
|
echo ' $("#variable_' . $spremenljivka . '").keypress(function(e){if(e.which==13) rename_variable(\'' . $spremenljivka . '\', $(this).val()' . ', \'' . $_POST['variable_custom'] . '\', \'false\'); });';
|
|
echo '});';
|
|
echo '</script>';
|
|
|
|
} else {
|
|
echo $_POST['value'];
|
|
echo '<a href="#" onclick="rename_variable(\'' . $spremenljivka . '\', \'' . $_POST['value'] . '\', \'' . $_POST['variable_custom'] . '\', \'true\'); return false;" title="' . $lang['edit3'] . '"><img id="edit_variable_' . $spremenljivka . '" src="img_' . $this->skin . '/pencil.png" /></a>';
|
|
|
|
}
|
|
}*/
|
|
|
|
else if ($_GET['a'] == 'form_settings') {
|
|
Common::updateEditStamp();
|
|
|
|
if($what == 'finish_author' || $what == 'finish_respondent_cms' || $what == 'finish_other' | $what == 'finish_other_emails') {
|
|
sisplet_query("INSERT INTO srv_alert (ank_id, $what) VALUES ('$this->anketa', '$results')
|
|
ON DUPLICATE KEY UPDATE $what = '$results' ");
|
|
}
|
|
else{
|
|
sisplet_query("UPDATE srv_anketa SET $what = '$results' WHERE id = '$this->anketa'");
|
|
}
|
|
|
|
// vsilimo refresh podatkov
|
|
SurveyInfo :: getInstance()->resetSurveyData();
|
|
|
|
$this->SurveyAdmin->display_form_simple(1);
|
|
}
|
|
else if ($_GET['a'] == 'form_extra') {
|
|
|
|
//prikazemo na desni intro
|
|
if($what == 'show_intro'){
|
|
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
|
|
echo ' <div id="spremenljivka_-1" class="spremenljivka" style="margin-top:15px">';
|
|
$Branching->introduction_conclusion(-1, 1);
|
|
echo ' </div> <!-- /spremenljivka_-1 -->';
|
|
}
|
|
//prikazemo na desni zakljucek
|
|
else{
|
|
//include_once ('Branching.php');
|
|
$Branching = new Branching($this->anketa);
|
|
|
|
echo ' <div id="spremenljivka_-2" class="spremenljivka" style="margin-top:15px">';
|
|
$Branching->introduction_conclusion(-2, 1);
|
|
echo ' </div> <!-- /spremenljivka_-2 -->';
|
|
}
|
|
}
|
|
else if ($_GET['a'] == 'insert_grupa_before') {
|
|
Common::updateEditStamp();
|
|
|
|
// ugotovimo vrstni red trenutne grupe
|
|
$string_select_vrstni_red_grupe = "SELECT vrstni_red FROM srv_grupa WHERE ank_id = '" . $anketa . "' AND id='" . $_POST['grupa'] . "' ORDER BY vrstni_red DESC";
|
|
$sql_select_vrstni_red_grupe = sisplet_query($string_select_vrstni_red_grupe);
|
|
$row_select_vrstni_red_grupe = mysqli_fetch_assoc($sql_select_vrstni_red_grupe);
|
|
|
|
// dodelimmo ime nove grupe
|
|
$string_select_max_grupe = "SELECT max(vrstni_red)+1 as nova_grupa_id FROM srv_grupa WHERE ank_id = '" . $anketa . "'";
|
|
$sql_select_max_grupe = sisplet_query($string_select_max_grupe);
|
|
$row_select_max_grupe = mysqli_fetch_assoc($sql_select_max_grupe);
|
|
$nova_grupa_name = $lang['srv_stran'] . " " . $row_select_max_grupe['nova_grupa_id'];
|
|
|
|
// premaknemo vrstni red grupam ki so nižje kot trenutna
|
|
$string_update_vrstni_red = "UPDATE srv_grupa SET vrstni_red = vrstni_red + 1 WHERE ank_id = '" . $anketa . "' AND vrstni_red >= '" . $row_select_vrstni_red_grupe['vrstni_red'] . "'";
|
|
$sql_update_vrstni_red = sisplet_query($string_update_vrstni_red);
|
|
|
|
// vstavimo novo grupo
|
|
$string_insert = "INSERT INTO srv_grupa (id, ank_id, naslov, vrstni_red) VALUES ('', '$anketa', '$nova_grupa_name', '$row_select_vrstni_red_grupe[vrstni_red]')";
|
|
$sql_insert = sisplet_query($string_insert);
|
|
$insert_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
// Ce dodamo 4. stran vklopimo progress indicator (pri 3 straneh ali manj je po default izklopljen)
|
|
$sql = sisplet_query("SELECT id FROM srv_grupa WHERE ank_id='$anketa'");
|
|
$vrstni_red = mysqli_num_rows($sql);
|
|
if($vrstni_red == 4){
|
|
$sqlP = sisplet_query("UPDATE srv_anketa SET progressbar='1' WHERE id='$anketa'");
|
|
}
|
|
|
|
$redirect = '&grupa=' . $insert_id;
|
|
echo 'index.php?anketa=' . $anketa . $redirect;
|
|
}
|
|
else if ($_GET['a'] == 'grupa_recount') {
|
|
Common::updateEditStamp();
|
|
|
|
// preberemo vse gupe sortirane po vrstnem redu
|
|
$string_select_grupe = "SELECT id FROM srv_grupa WHERE ank_id = '" . $anketa . "' ORDER BY vrstni_red";
|
|
$sql_select_grupe = sisplet_query($string_select_grupe);
|
|
$i = 1;
|
|
while ($row_select_grupe = mysqli_fetch_assoc($sql_select_grupe)) {
|
|
$grupa_name = $lang[srv_stran].' '. $i++;
|
|
|
|
sisplet_query("UPDATE srv_grupa SET naslov = '".$grupa_name."' WHERE id = '$row_select_grupe[id]'");
|
|
}
|
|
|
|
$redirect = '&grupa=' . $grupa;
|
|
echo 'index.php?anketa=' . $anketa . $redirect;
|
|
} else if ($_GET['a'] == 'outputLanguageNote') {
|
|
global $lang;
|
|
|
|
header('Content-Type: text/html; charset=UTF-8');
|
|
echo $lang[$_POST['note']];
|
|
|
|
} else if ($_GET['a'] == 'redirect') {
|
|
echo $site_url . 'admin/survey/index.php?anketa=' . $_POST['anketa'] . '&grupa=' . $_POST['grupa'];
|
|
die();
|
|
} else if ($_GET['a'] == 'change_alert_respondent') {
|
|
Common::updateEditStamp();
|
|
$is_checked = ( $_POST['checked'] && $_POST['checked'] == "true" ? true : false);
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->display_alert_label($_POST['what'],$is_checked);
|
|
} else if ($_GET['a'] == 'alert_add_necessary_sysvar') {
|
|
Common::updateEditStamp();
|
|
$this->SurveyAdmin->alert_add_necessary_sysvar();
|
|
$is_checked = ( $_POST['checked'] && $_POST['checked'] == "true" ? true : false);
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->display_alert_label($_POST['what'],$is_checked);
|
|
} else if ($_GET['a'] == 'alert_change_user_from_cms') {
|
|
Common::updateEditStamp();
|
|
$this->SurveyAdmin->alert_change_user_from_cms();
|
|
} else if ($_GET['a'] == 'survey_respondents') {
|
|
Common::updateEditStamp();
|
|
SurveyRespondents :: getInstance()->Init($anketa);
|
|
SurveyRespondents :: getInstance()->Ajax($_GET['b']);
|
|
} elseif ($_GET['a'] == 'comment_manage') {
|
|
$this->SurveyAdmin->comment_manage();
|
|
} elseif ($_GET['a'] == 'recalc_alert_expire') {
|
|
$days = (isset($_POST['days']) && is_numeric($_POST['days']) ? $_POST['days'] : 0);
|
|
|
|
// izračunamo nov datum poteka ankete s pomočjo sql-a
|
|
$sql_newDate = sisplet_query("SELECT DATE_SUB(expire,INTERVAL $days DAY) as newdate FROM srv_anketa WHERE id = '$anketa'");
|
|
$row_newDate = mysqli_fetch_assoc($sql_newDate);
|
|
echo $row_newDate['newdate'];
|
|
|
|
} elseif ($_GET['a'] == 'displayInfoBox') {
|
|
$this->SurveyAdmin->displayInfoBox();
|
|
} elseif ($_GET['a'] == 'anketa_aktivacija_note') {
|
|
Common::updateEditStamp();
|
|
$this->SurveyAdmin->anketa_aktivacija_note();
|
|
} elseif ($_GET['a'] == 'anketa_aktivacija_mailto_preview') {
|
|
Common::updateEditStamp();
|
|
SurveyInfo::getInstance()->SurveyInit($this->anketa);
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->displayBtnMailtoPreview($row);
|
|
|
|
} elseif ($_GET['a'] == 'statisticDateRefresh') {
|
|
# refresha datumski pregled
|
|
$ss=new SurveyStatistic();
|
|
$ss->Init($this->anketa);
|
|
$ss->PrepareDateView();
|
|
$ss->DisplayDateView();
|
|
} elseif ($_GET['a'] == 'statisticTimelineDropdownRefresh') {
|
|
# refresha datumski pregled
|
|
$ss=new SurveyStatistic();
|
|
$ss->Init($this->anketa);
|
|
$ss->DisplayTimelineDropdowns();
|
|
|
|
} elseif ($_GET['a'] == 'statisticReloadInvitationFilter') {
|
|
#refresha pregled po statusih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> changeInvitationFilter();
|
|
} elseif ($_GET['a'] == 'statisticInfoRefresh') {
|
|
#refresha pregled po statusih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> prepareStatusView();
|
|
$ss -> DisplayInfoView();
|
|
} elseif ($_GET['a'] == 'statisticAnswerStateRefresh') {
|
|
#refresha pregled po statusih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> prepareStatusView();
|
|
$ss -> DisplayAnswerStateView();
|
|
} elseif ($_GET['a'] == 'statisticPageStateRefresh') {
|
|
#refresha pregled po statusih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> prepareStatusView();
|
|
$ss -> DisplayPagesStateView();
|
|
} elseif ($_GET['a'] == 'statisticStatusRefresh') {
|
|
#refresha pregled po statusih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> prepareStatusView();
|
|
$ss -> DisplayStatusView();
|
|
} elseif ($_GET['a'] == 'statisticReferalRefresh') {
|
|
#refresha pregled po referalih
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> prepareStatusView();
|
|
$ss -> DisplayReferalsView();
|
|
} elseif ($_GET['a'] == 'survey_statistic_referal') {
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> DisplayReferalsList();
|
|
} elseif ($_GET['a'] == 'survey_statistic_ip_list') {
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> DisplayIPList();
|
|
} elseif ($_GET['a'] == 'survey_statistic_status') {
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> DisplayUserByStatus();
|
|
} elseif ($_GET['a'] == 'statisticAnswerStateRefresh') {
|
|
$ss = new SurveyStatistic();
|
|
$ss -> Init($this->anketa);
|
|
$ss -> DisplayAnswerStateView();
|
|
}elseif ($_GET['a'] == 'editsAnalysisContinuousEditing') {
|
|
# refresha neprekinjeno urejanje
|
|
$sea=new SurveyEditsAnalysis($this->anketa);
|
|
$sea->ajax_drawContinuEditsTable();
|
|
}elseif ($_GET['a'] == 'show_bottom_icons') {
|
|
$this->SurveyAdmin->showVprasalnikBottom('gray');
|
|
} elseif ($_GET['a'] == 'save_user_settings') {
|
|
Common::updateEditStamp();
|
|
UserSetting::getInstance()->Init();
|
|
if (isset($_POST['icons_always_on']))
|
|
UserSetting::getInstance()->setUserSetting('icons_always_on', $_POST['icons_always_on']);
|
|
if (isset($_POST['full_screen_edit'])) {
|
|
UserSetting::getInstance()->setUserSetting('full_screen_edit', $_POST['full_screen_edit']);
|
|
}
|
|
UserSetting::getInstance()->saveUserSetting();
|
|
} elseif ($_GET['a'] == 'display_success_save') {
|
|
$this->SurveyAdmin->displaySuccessSave();
|
|
} elseif ($_GET['a'] == 'vnosi_show_status_casi') {
|
|
SurveyStatusCasi :: Init($anketa);
|
|
if (isset($pid) && $pid > 0) {
|
|
SurveyStatusCasi :: setCurentProfileId($pid);
|
|
}
|
|
SurveyStatusCasi :: DisplayProfile($pid);
|
|
} elseif ($_GET['a'] == 'vnosi_show_rezanje_casi') {
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->show_rezanje_casi();
|
|
} elseif ($_GET['a'] == 'vnosi_save_status_casi') {
|
|
Common::updateEditStamp();
|
|
SurveyStatusCasi :: Init($anketa);
|
|
$new_id = SurveyStatusCasi :: saveNewProfile($pid,$_POST['name'],$_POST['status']);
|
|
SurveyStatusCasi :: setDefaultProfileId($new_id);
|
|
echo $new_id;
|
|
} elseif ($_GET['a'] == 'vnosi_change_status_casi') {
|
|
Common::updateEditStamp();
|
|
SurveyStatusCasi :: Init($anketa);
|
|
SurveyStatusCasi :: setDefaultProfileId($pid);
|
|
} elseif ($_GET['a'] == 'vnosi_run_status_casi') {
|
|
Common::updateEditStamp();
|
|
SurveyStatusCasi :: Init($anketa);
|
|
SurveyStatusCasi :: saveProfile($pid,$_POST['status']);
|
|
SurveyStatusCasi :: setDefaultProfileId($pid);
|
|
} elseif ($_GET['a'] == 'vnosi_run_rezanje_casi') {
|
|
Common::updateEditStamp();
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->save_rezanje_casi();
|
|
} elseif ($_GET['a'] == 'vnosi_delete_status_casi') {
|
|
Common::updateEditStamp();
|
|
SurveyStatusCasi :: Init($anketa);
|
|
SurveyStatusCasi :: Delete($pid);
|
|
SurveyStatusCasi :: setDefaultProfileId(1);
|
|
} elseif ($_GET['a'] == 'submitArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: createArchiveFromAnaliza();
|
|
|
|
} elseif ($_GET['a'] == 'doArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: DisplayDoArchive();
|
|
} elseif ($_GET['a'] == 'emailArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: EmailArchive($_POST['aid']);
|
|
|
|
} elseif ($_GET['a'] == 'sendEmailArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: SendEmailArchive($_POST['aid'], $_POST['subject'], $_POST['text'], mysql_real_unescape_string($_POST['emails']));
|
|
} elseif ($_GET['a'] == 'editArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: EditArchive($_POST['aid']);
|
|
} elseif ($_GET['a'] == 'saveArchiveAnaliza') {
|
|
$aid = (isset($_POST['aid']) && trim($_POST['aid'])) ? $_POST['aid'] : 0;
|
|
$name = (isset($_POST['name']) && trim($_POST['name'])) ? $_POST['name'] : null;
|
|
$note = (isset($_POST['note']) && trim($_POST['note'])) ? $_POST['note'] : null;
|
|
$access = (isset($_POST['access']) && trim($_POST['access'])) ? $_POST['access'] : 0;
|
|
$access_password = (isset($_POST['access_password']) && trim($_POST['access_password'])) ? $_POST['access_password'] : null;
|
|
$duration = (isset($_POST['duration']) && trim($_POST['duration'])) ? trim($_POST['duration']) : null;
|
|
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: SaveArchive($aid,$name,$note,$access,$duration,$access_password);
|
|
|
|
} elseif ($_GET['a'] == 'refreshArchiveAnaliza') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: ListArchive();
|
|
} elseif ($_GET['a'] == 'askDeleteArchiveAnaliza') {
|
|
$aid = (isset($_POST['aid']) && trim($_POST['aid'])) ? $_POST['aid'] : 0;
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: AskDeleteArchive($aid);
|
|
} elseif ($_GET['a'] == 'doDeleteArchiveAnaliza') {
|
|
$aid = (isset($_POST['aid']) && trim($_POST['aid'])) ? $_POST['aid'] : 0;
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
echo SurveyAnalysisArchive :: DoDeleteArchive($aid);
|
|
} elseif ($_GET['a'] == 'createArchiveBeforeEmail') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: createArchiveBeforeEmail();
|
|
} elseif ($_GET['a'] == 'createArchiveCrosstabBeforeEmail') {
|
|
SurveyAnalysisArchive :: Init($this->anketa);
|
|
SurveyAnalysisArchive :: archiveCrosstabBeforeEmail();
|
|
} elseif ($_GET['a'] == 'toggle_komentarji') {
|
|
Common::updateEditStamp();
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
if ($_GET['survey_comment'] == '1') {
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment', '3');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly', '3');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_showalways', '0');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_view', '3');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_write', '0');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment', '3');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment_viewadminonly', '3');
|
|
|
|
} else {
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_showalways', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_view', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_write', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment_viewadminonly', '');
|
|
}
|
|
|
|
header("Location: $_SERVER[HTTP_REFERER]&show_survey_comment=1");
|
|
|
|
} elseif ($_GET['a'] == 'refreshCollectData') {
|
|
|
|
SurveyDataDisplay::Init($this->anketa);
|
|
SurveyDataDisplay::displayFilters();
|
|
SurveyDataDisplay::displayVnosiHTML();
|
|
|
|
} elseif ($_GET['a'] == 'reloadData') {
|
|
|
|
echo '<div id="analiza_data">';
|
|
Timer::StartTimer($lang['srv_collectData']);
|
|
SurveyDataDisplay::Init($this->anketa);
|
|
SurveyDataDisplay::displayFilters();
|
|
SurveyDataDisplay::displayVnosiHTML();
|
|
echo '</div>'; // div_analiza_data
|
|
|
|
Timer::GetTimer($lang['srv_collectData']);
|
|
|
|
} elseif ($_GET['a'] == 'dataDeleteRow') {
|
|
|
|
if ((int)$usr_id > 0) {
|
|
|
|
// Preverimo ce gre za prvo popravljanje podatkov in avtomatskoustvarimo arhiv podatkov ce je potrebno
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->checkFirstDataChange();
|
|
|
|
sisplet_query("UPDATE srv_user SET deleted = '1', time_edit = NOW() WHERE id = '$usr_id'");
|
|
sisplet_query('COMMIT');
|
|
|
|
echo '0';
|
|
}
|
|
else {
|
|
echo 'Error: Invalid user ID!';
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'dataDeleteMultipleRow') { // V DELU...
|
|
|
|
// ulovimo json objekt z userji za brisanje
|
|
if ( is_array($_POST['users']) && count($_POST['users']) > 0 ) {
|
|
|
|
// Preverimo ce gre za prvo popravljanje podatkov in avtomatskoustvarimo arhiv podatkov ce je potrebno
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->checkFirstDataChange();
|
|
|
|
$users = implode(',',$_POST['users']);
|
|
|
|
sisplet_query("UPDATE srv_user SET deleted = '1', time_edit = NOW() WHERE id IN (".$users.")");
|
|
sisplet_query('COMMIT');
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'dataCopyRow') {
|
|
|
|
if ((int)$usr_id > 0) {
|
|
|
|
// Preverimo ce gre za prvo popravljanje podatkov in avtomatskoustvarimo arhiv podatkov ce je potrebno
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->checkFirstDataChange();
|
|
|
|
global $connect_db;
|
|
SurveyCopy::setSrcSurvey($this->anketa);
|
|
SurveyCopy::setSrcConectDb($connect_db);
|
|
SurveyCopy::setDestSite(0);
|
|
$new_usr_id = SurveyCopy::copyRespondent($usr_id);
|
|
|
|
echo $new_usr_id;
|
|
}
|
|
else {
|
|
echo 'Error: Invalid user ID!';
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'check_survey_permanent') {
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
if ($row['expire'] == PERMANENT_DATE ) {
|
|
echo 'true';
|
|
} else {
|
|
echo 'false';
|
|
}
|
|
} elseif ($_GET['a'] == 'refresh_nastavitve_trajanje') {
|
|
$_GET['a'] = 'trajanje';
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->DisplayNastavitveTrajanje();
|
|
$sas->DisplayNastavitveMaxGlasov();
|
|
} elseif ($_GET['a'] == 'show_collect_data_setting') {
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->Show_collect_data_setting();
|
|
} elseif ($_GET['a'] == 'enable_addvance') {
|
|
Common::updateEditStamp();
|
|
|
|
if (isset ($_POST['what']) && ($_POST['what'] == 'email' || $_POST['what'] == 'phone')) {
|
|
$_phone = (int) (SurveyInfo::getInstance()->checkSurveyModule('phone') || $_POST['what'] == 'phone');
|
|
$_email = (int) (SurveyInfo::getInstance()->checkSurveyModule('email') || $_POST['what'] == 'email');
|
|
// nastavimo respondente iz baze, kreiramo novo sistemsko spremenljivko
|
|
$this->SurveyAdmin->createUserbaseSystemVariable($_phone, $_email);
|
|
if ($_POST['what'] == 'phone') {
|
|
# redirektamo na telefon
|
|
|
|
#echo 'index.php?anketa=' . $this->anketa . '&a=telefon';
|
|
echo 'index.php?anketa=' . $this->anketa . '&a=telephone';
|
|
}
|
|
if ($_POST['what'] == 'email') {
|
|
# redirektamo na email
|
|
#echo 'index.php?anketa=' . $this->anketa . '&a=email&m=emailnastavitve';
|
|
echo 'index.php?anketa=' . $this->anketa . '&a=invitations&m=add_recipients_view';
|
|
}
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'save_editcss') {
|
|
Common::updateEditStamp();
|
|
|
|
$css_content = mysql_real_unescape_string($_POST['css_content']);
|
|
|
|
SurveyInfo::getInstance()->SurveyInit($this->anketa);
|
|
SurveyInfo::getInstance()->resetSurveyData();
|
|
$row = SurveyInfo::getInstance()->getSurveyRow();
|
|
|
|
$profile = $_POST['profile'];
|
|
$mobile = $_POST['mobile'];
|
|
|
|
$sqlp = sisplet_query("SELECT usr_id FROM srv_theme_profiles".($mobile=='1' ? '_mobile' : '')." WHERE id = '$profile'");
|
|
$rowp = mysqli_fetch_array($sqlp);
|
|
|
|
$skin_name = $rowp['usr_id'].'_'.$_POST['skin_name'];
|
|
//$old_name = $global_user_id.'_'.$_POST['old_name'];
|
|
|
|
//unlink('../../main/survey/skins/'.$old_name.'.css');
|
|
|
|
$f = fopen('../../main/survey/skins/'.$skin_name.'.css', 'w');
|
|
fwrite($f, $css_content);
|
|
fclose($f);
|
|
|
|
ob_clean();
|
|
echo $skin_name;
|
|
|
|
} elseif ($_GET['a'] == 'testiranje') {
|
|
Common::updateEditStamp();
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->tabTestiranje();
|
|
|
|
} elseif ($_GET['a'] == 'nice_url') {
|
|
$this->ajax_nice_url();
|
|
|
|
} elseif ($_GET['a'] == 'nice_url_remove') {
|
|
$this->ajax_nice_url_remove();
|
|
|
|
} elseif ($_GET['a'] == 'comment_ocena') {
|
|
$type = $_POST['type'];
|
|
|
|
if ($type == 'question_comment') {
|
|
$ocena = $_POST['ocena'];
|
|
$id = $_POST['id'];
|
|
|
|
$s = sisplet_query("UPDATE post SET ocena = '$ocena' WHERE id = '$id'");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
} elseif ($type == 'respondent_comment') {
|
|
|
|
$text2 = $_POST['text2'];
|
|
$id = $_POST['id'];
|
|
|
|
$s = sisplet_query("UPDATE srv_data_text".$this->db_table." SET text2 = '$text2' WHERE id = '$id'");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
} elseif ($type == 'respondent_survey_comment') {
|
|
|
|
$ocena = $_POST['ocena'];
|
|
$id = $_POST['id'];
|
|
|
|
$s = sisplet_query("UPDATE srv_comment_resp SET ocena = '$ocena' WHERE id = '$id'");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'comment_on_comment') {
|
|
$id = $_POST['id'];
|
|
$vsebina = $_POST['vsebina'];
|
|
|
|
if ($vsebina == '') return;
|
|
|
|
$sql = sisplet_query("SELECT vsebina FROM post WHERE id='$id'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
$f = new Forum();
|
|
$vsebina = $row['vsebina'].'<blockquote style="margin-left:20px"><b>'.$f->user($global_user_id).'</b> ('.$f->datetime1(date('Y-m-d h:i:s')).'):<br />'.$vsebina.'</blockquote>';
|
|
|
|
sisplet_query("UPDATE post SET vsebina='$vsebina' WHERE id='$id'");
|
|
|
|
} elseif ($_GET['a'] == 'archivePopup') {
|
|
echo '<div class="survey_archive_popup">';
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->backup_create_popup();
|
|
echo '</div>';
|
|
|
|
} elseif ($_GET['a'] == 'backup_data') {
|
|
global $connect_db;
|
|
|
|
$data = false;
|
|
if ($_GET['data'] == 'true')
|
|
$data = true;
|
|
|
|
SurveyCopy::setSrcSurvey($this->anketa);
|
|
SurveyCopy::setSrcConectDb($connect_db);
|
|
SurveyCopy::saveArrayFile($data);
|
|
|
|
} elseif ($_GET['a'] == 'backup_restore') {
|
|
global $connect_db;
|
|
|
|
$filename = $_GET['filename'];
|
|
|
|
SurveyCopy::setSrcSurvey($this->anketa);
|
|
SurveyCopy::setSrcConectDb($connect_db);
|
|
SurveyCopy::setDestSite(0);
|
|
$id = SurveyCopy::restoreArrayFile($filename);
|
|
|
|
if ($id > 0)
|
|
header("Location: index.php?anketa=$id");
|
|
|
|
} elseif ($_GET['a'] == 'archive_download') {
|
|
global $connect_db;
|
|
|
|
$data = false;
|
|
if ($_GET['data'] == 'true')
|
|
$data = true;
|
|
|
|
SurveyCopy::setSrcSurvey($this->anketa);
|
|
SurveyCopy::setSrcConectDb($connect_db);
|
|
SurveyCopy::setDestSite(0);
|
|
|
|
SurveyCopy::downloadArrayFile($data);
|
|
|
|
} elseif ($_GET['a'] == 'archive_restore') {
|
|
|
|
set_time_limit(1800);
|
|
|
|
$has_data = isset($_POST['has_data']) ? $_POST['has_data'] : 0;
|
|
|
|
// Restore samo ankete
|
|
if (!empty($_FILES['restore']['tmp_name']) && $has_data != 1) {
|
|
$contents = file_get_contents($_FILES['restore']['tmp_name']);
|
|
//$array = unserialize($contents);
|
|
$array = unserialize(base64_decode($contents));
|
|
}
|
|
// Restore ankete s podatki
|
|
elseif (!empty($_FILES['restore_data']['tmp_name']) && $has_data == 1) {
|
|
$contents = file_get_contents($_FILES['restore_data']['tmp_name']);
|
|
//$array = unserialize($contents);
|
|
$array = unserialize(base64_decode($contents));
|
|
}
|
|
|
|
if ( is_array($array) ) {
|
|
global $connect_db;
|
|
|
|
SurveyCopy::setSrcSurvey(-1);
|
|
SurveyCopy::setSrcConectDb($connect_db);
|
|
SurveyCopy::setDestSite(0);
|
|
|
|
SurveyCopy::setSourceArray($array);
|
|
|
|
if ( SurveyCopy::getErrors() == '' ){
|
|
|
|
// Dobimo id kopije ankete in preusmerimo na urejanje
|
|
$new_survey_id = SurveyCopy::doCopy();
|
|
|
|
echo '<meta http-equiv="refresh" content="0;url='.$site_url.'admin/survey/index.php?anketa='.$new_survey_id.'">';
|
|
//echo '<meta http-equiv="refresh" content="0;url='.$site_url.'admin/survey/">';
|
|
}
|
|
else{
|
|
//print_r( SurveyCopy::getErrors() );
|
|
|
|
// Ce je prislo do napake preusmerimo nazaj na isto stran
|
|
echo '<meta http-equiv="refresh" content="0;url='.$site_url.'admin/survey/index.php?a=ustvari_anketo&b=archive&error=2">';
|
|
}
|
|
} else {
|
|
|
|
$error = ($has_data == 1) ? $_FILES['restore_data']['error'] : $_FILES['restore']['error'];
|
|
|
|
switch ($error) {
|
|
case UPLOAD_ERR_OK:
|
|
break;
|
|
case UPLOAD_ERR_INI_SIZE:
|
|
$response = 'The uploaded file exceeds the upload_max_filesize directive in php.ini.';
|
|
break;
|
|
case UPLOAD_ERR_FORM_SIZE:
|
|
$response = 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.';
|
|
break;
|
|
case UPLOAD_ERR_PARTIAL:
|
|
$response = 'The uploaded file was only partially uploaded.';
|
|
break;
|
|
case UPLOAD_ERR_NO_FILE:
|
|
$response = 'No file was uploaded.';
|
|
break;
|
|
case UPLOAD_ERR_NO_TMP_DIR:
|
|
$response = 'Missing a temporary folder. Introduced in PHP 4.3.10 and PHP 5.0.3.';
|
|
break;
|
|
case UPLOAD_ERR_CANT_WRITE:
|
|
$response = 'Failed to write file to disk. Introduced in PHP 5.1.0.';
|
|
break;
|
|
case UPLOAD_ERR_EXTENSION:
|
|
$response = 'File upload stopped by extension. Introduced in PHP 5.2.0.';
|
|
break;
|
|
default:
|
|
$response = 'Unknown error';
|
|
$response = 'Wrong file format';
|
|
break;
|
|
}
|
|
//echo $response;
|
|
|
|
// Ce je prislo do napake preusmerimo nazaj na isto stran
|
|
echo '<meta http-equiv="refresh" content="0;url='.$site_url.'admin/survey/index.php?a=ustvari_anketo&b=archive&error=1">';
|
|
}
|
|
} elseif ($_GET['a'] == 'add_to_library') {
|
|
global $global_user_id;
|
|
|
|
$where = $_POST['where'];
|
|
|
|
if ($where == 'lib') {
|
|
$sqlk = sisplet_query("SELECT * FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='0'");
|
|
if (mysqli_num_rows($sqlk) == 0) {
|
|
$sql1 = sisplet_query("SELECT id FROM srv_library_folder WHERE uid='0' AND tip='1' AND parent='0' AND lang='$lang[id]'");
|
|
$row1 = mysqli_fetch_array($sql1);
|
|
sisplet_query("INSERT INTO srv_library_anketa (ank_id, uid, folder) VALUES ('$this->anketa', '0', '$row1[id]')");
|
|
}
|
|
}
|
|
|
|
if ($where == 'mylib') {
|
|
$sqlk = sisplet_query("SELECT * FROM srv_library_anketa WHERE ank_id='$this->anketa' AND uid='$global_user_id'");
|
|
if (mysqli_num_rows($sqlk) == 0) {
|
|
$sql1 = sisplet_query("SELECT id FROM srv_library_folder WHERE uid='$global_user_id' AND tip='1' AND parent='0'");
|
|
$row1 = mysqli_fetch_array($sql1);
|
|
sisplet_query("INSERT INTO srv_library_anketa (ank_id, uid, folder) VALUES ('$this->anketa', '$global_user_id', '$row1[id]')");
|
|
}
|
|
}
|
|
} elseif ($_GET['a'] == 'new_anketa') {
|
|
global $global_user_id, $site_url;
|
|
|
|
$naslov = trim($_POST['naslov']);
|
|
|
|
echo '<div id="new_anketa_div">';
|
|
$newSurvey = new NewSurvey();
|
|
$newSurvey->displayNewSurveyPage();
|
|
echo '</div>';
|
|
|
|
} elseif ($_GET['a'] == 'srv_password') {
|
|
|
|
$password = $_POST['password'];
|
|
if ($password != '') {
|
|
$s = sisplet_query("REPLACE INTO srv_password (ank_id, password) VALUES ('$this->anketa', '$password')");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
|
|
} elseif ($_GET['a'] == 'srv_password_del') {
|
|
|
|
$password = $_POST['password'];
|
|
if ($password != '') {
|
|
$s = sisplet_query("DELETE FROM srv_password WHERE ank_id='$this->anketa' AND password = '$password'");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
} elseif ($_GET['a'] == 'getDataStatusTitles') {
|
|
global $lang;
|
|
$return = array();
|
|
$return['status6'] = $lang['srv_userstatus_6'];
|
|
$return['status5'] = $lang['srv_userstatus_5'];
|
|
$return['status4'] = $lang['srv_userstatus_4'];
|
|
$return['status3'] = $lang['srv_userstatus_3'];
|
|
$return['status2'] = $lang['srv_userstatus_2'];
|
|
$return['status1'] = $lang['srv_userstatus_1'];
|
|
$return['status0'] = $lang['srv_userstatus_0'];
|
|
|
|
echo json_encode($return);
|
|
|
|
} elseif ($_GET['a'] == 'getDataLurkerTitles') {
|
|
global $lang;
|
|
|
|
$return = array();
|
|
$return['status1'] = $lang['yes'];
|
|
$return['status0'] = $lang['no'];
|
|
|
|
echo json_encode($return);
|
|
|
|
} elseif ($_GET['a'] == 'getDataEmailTitles') {
|
|
global $lang;
|
|
|
|
$return = array();
|
|
$return['email0'] = $lang['srv_data_emailstatus_0'];
|
|
$return['email1'] = $lang['srv_data_emailstatus_1'];
|
|
$return['email2'] = $lang['srv_data_emailstatus_2'];
|
|
|
|
echo json_encode($return);
|
|
|
|
} elseif ($_GET['a'] == 'alert_custom') {
|
|
$this->ajax_alert_custom();
|
|
|
|
} elseif ($_GET['a'] == 'alert_custom_save') {
|
|
$this->ajax_alert_custom_save();
|
|
|
|
} elseif ($_GET['a'] == 'exportChangeCheckbox') {
|
|
|
|
if(isset($_POST['name']) && $_POST['name'] != '') {
|
|
|
|
session_start();
|
|
|
|
// Resetiramo vse nastavitve
|
|
$_SESSION['exportHiddenSystem'] = false;
|
|
$_SESSION['exportFullMeta'] = false;
|
|
$_SESSION['exportOnlyData'] = false;
|
|
|
|
// Nastavimo ustrezno nastavitev
|
|
$_SESSION[$_POST['name']] = true;
|
|
}
|
|
} elseif ($_GET['a'] == 'exportChangeRadio') {
|
|
if(isset($_POST['name']) && $_POST['name'] != '') {
|
|
session_start();
|
|
|
|
$_SESSION[$_POST['name']] = $_POST['value'];
|
|
}
|
|
} elseif ($_GET['a'] == 'setExpirePermanent') {
|
|
|
|
$rowDates['starts'] = SurveyInfo::getInstance()->getSurveyColumn('starts');
|
|
$rowDates['expire'] = SurveyInfo::getInstance()->getSurveyColumn('expire');
|
|
|
|
# če slučajno nimamo nastavljenih datumov
|
|
$dateToday = date("Y-m-d"); // danes
|
|
$rowDates['starts'] = (($rowDates['starts'] == '0000-00-00') ? $dateToday : $rowDates['starts']);
|
|
|
|
if (isset($_POST['makePermanent']) && $_POST['makePermanent'] == 'true') {
|
|
# anketo naredimo za trajno
|
|
$rowDates['expire'] = PERMANENT_DATE;
|
|
$permanent = '1';
|
|
} else {
|
|
# anketo ni več trajna
|
|
#določimo nov datum poteka
|
|
$cd = strtotime($dateToday);
|
|
# za koliko časa aktiviramo
|
|
$mth = 3;
|
|
$dateMonth = date('Y-m-d', mktime(0, 0, 0, date('m', $cd) + $mth, date('d', $cd), date('Y', $cd)));
|
|
$rowDates['expire'] = (($rowDates['expire'] == '0000-00-00' || $rowDates['expire'] == PERMANENT_DATE) ? $dateMonth : $rowDates['expire']);
|
|
$permanent = '0';
|
|
}
|
|
|
|
#nastavimo aktivnost
|
|
$sql_update_string = "UPDATE srv_anketa SET active='1', starts='".$rowDates['starts']."', expire='".$rowDates['expire']."' WHERE id = '$anketa'";
|
|
$sql_update = sisplet_query($sql_update_string);
|
|
if (!$sql_update) {
|
|
$msg = $sql_update_string. ' : '. mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
|
|
# dodamo zapis v srv_activity
|
|
$activity_insert_string = "INSERT IGNORE INTO srv_activity (sid, starts, expire, uid) VALUES('".$anketa."', '".$rowDates['starts']."', '".$rowDates['expire']."', '".$global_user_id."')";
|
|
$msg.=$activity_insert_string;
|
|
$sql_insert = sisplet_query($activity_insert_string);
|
|
if (!$sql_insert) {
|
|
$msg .= $activity_insert_string. ' : '. mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
sisplet_query('COMMIT');
|
|
|
|
$_expire = explode('-',$rowDates['expire']);
|
|
$expire = $_expire[2].'.'.$_expire[1].'.'.$_expire[0];
|
|
|
|
echo json_encode(array('expire'=>$expire, 'permanent' => $permanent, 'msg'=>$msg));
|
|
return;
|
|
} elseif ($_GET['a'] == 'doCMSUserFilterCheckbox') {
|
|
session_start();
|
|
$_SESSION['sid_'.$anketa]['doCMSUserFilter'] = $_POST['checked'] == 'true' ? true : false;
|
|
session_commit();
|
|
|
|
} elseif ($_GET['a'] == 'anketa_restore') {
|
|
$this->ajax_anketa_restore();
|
|
|
|
} elseif ($_GET['a'] == 'data_restore') {
|
|
$this->ajax_data_restore();
|
|
|
|
} elseif ($_GET['a'] == 'deleteSurveyDataFile') {
|
|
$this->ajax_deleteSurveyDataFile();
|
|
|
|
} elseif ($_GET['a'] == 'analisysIncludeTestData') {
|
|
session_start();
|
|
$_SESSION['testData'][$this->anketa]['includeTestData'] = $_POST['includeTestData'];
|
|
session_commit();
|
|
|
|
} elseif ($_GET['a'] == 'reminder_all') {
|
|
$this->ajax_reminder_all();
|
|
|
|
} elseif ($_GET['a'] == 'get_variable_labels') {
|
|
$this->ajax_get_variable_labels();
|
|
|
|
} elseif ($_GET['a'] == 'remove_logo') {
|
|
$this->ajax_remove_logo();
|
|
|
|
} elseif ($_GET['a'] == 'makeEncodedIzvozUrlString') {
|
|
echo ''.makeEncodedIzvozUrlString($_POST['string']);
|
|
|
|
} elseif ($_GET['a'] == 'dostop_admin') {
|
|
$this->ajax_dostop_admin();
|
|
|
|
} elseif ($_GET['a'] == 'testiranje_preview_settings') {
|
|
$this->ajax_testiranje_preview_settings();
|
|
|
|
} elseif ($_GET['a'] == 'testiranje_preview_settings_save') {
|
|
$this->ajax_testiranje_preview_settings_save();
|
|
|
|
} elseif ($_GET['a'] == 'comments_onoff') {
|
|
$this->ajax_comments_onoff();
|
|
|
|
} elseif ($_GET['a'] == 'runLanguageTechnology') {
|
|
header('Content-Type: application/json; charset=UTF-8');
|
|
$parsedData= array();
|
|
try {
|
|
$settings = array();
|
|
foreach(array('lt_language', 'lt_min_FWD', 'lt_min_nNoM', 'lt_min_vNoM', 'lt_special_setting') AS $_key) {
|
|
if (isset ($_POST['settings'][$_key]))
|
|
$settings[$_key] = $_POST['settings'][$_key];
|
|
}
|
|
|
|
$slt = new SurveyLanguageTechnology($this->anketa);
|
|
$settings = $slt->setup($settings);
|
|
$parsedData = $slt->parseSpremenljivka($spremenljivka);
|
|
$settings['lt_spremenljivka'] = $spremenljivka;
|
|
|
|
$parsedData['setting'] = $settings;
|
|
$parsedData['error'] = array('hasError'=> false, 'msg' => '');
|
|
|
|
} catch (Exception $e) {
|
|
$parsedData['error'] = array('hasError'=> true, 'msg' => 'Prišlo je do napake');
|
|
}
|
|
if (isset($parsedData['language'])) {
|
|
//unset($parsedData['language']);
|
|
}
|
|
echo json_encode($parsedData);
|
|
exit();
|
|
} elseif ($_GET['a'] == 'runLanguageTechnologyWord') {
|
|
header('Content-Type: application/json; charset=UTF-8');
|
|
$parsedData= array();
|
|
try {
|
|
$settings = array();
|
|
if (isset ($_POST['lt_language']))
|
|
$settings['lt_language'] = $_POST['lt_language'];
|
|
if (isset ($_POST['lt_min_FWD']))
|
|
$settings['lt_min_FWD'] = $_POST['lt_min_FWD'];
|
|
if (isset ($_POST['lt_min_nNoM']))
|
|
$settings['lt_min_nNoM'] = $_POST['lt_min_nNoM'];
|
|
if (isset ($_POST['lt_min_vNoM']))
|
|
$settings['lt_min_vNoM'] = $_POST['lt_min_vNoM'];
|
|
|
|
$word = $_REQUEST['lt_word'];
|
|
$wordType = $_REQUEST['lt_tag'];
|
|
$slt = new SurveyLanguageTechnology($this->anketa);
|
|
$settings = $slt->setup($settings);
|
|
$parsedData = $slt->parseWord($word, $wordType);
|
|
$settings['lt_spremenljivka'] = $spremenljivka;
|
|
|
|
$parsedData['setting'] = $settings;
|
|
$parsedData['error'] = array('hasError'=> false, 'msg' => '');
|
|
|
|
} catch (Exception $e) {
|
|
$parsedData['error'] = array('hasError'=> true, 'msg' => 'Prišlo je do napake');
|
|
|
|
}
|
|
if (isset($parsedData['language'])) {
|
|
//unset($parsedData['language']);
|
|
}
|
|
echo json_encode($parsedData);
|
|
exit();
|
|
} elseif ($_GET['a'] == 'runLanguageTechnologyHypoHypernym') {
|
|
header('Content-Type: application/json; charset=UTF-8');
|
|
$parsedData= array();
|
|
try {
|
|
$synsets = $_REQUEST['synsets'];
|
|
|
|
$slt = new SurveyLanguageTechnology($this->anketa);
|
|
$settings = array();
|
|
|
|
if (isset ($_POST['settings']['lt_language']))
|
|
$settings['lt_language'] = $_POST['settings']['lt_language'];
|
|
$settings = $slt->setup($settings);
|
|
|
|
$parsedData = $slt->getHypoHypernym($synsets);
|
|
|
|
$parsedData['setting']['lt_spremenljivka'] = $spremenljivka;
|
|
$parsedData['setting']['synsets'] = $synsets;
|
|
|
|
$parsedData['error'] = array('hasError'=> false, 'msg' => '');
|
|
|
|
} catch (Exception $e) {
|
|
$parsedData['error'] = array('hasError'=> true, 'msg' => 'Prišlo je do napake');
|
|
|
|
}
|
|
if (isset($parsedData['language'])) {
|
|
//unset($parsedData['language']);
|
|
}
|
|
echo json_encode($parsedData);
|
|
exit();
|
|
} elseif ($_GET['a'] == 'exportLanguageTechnology') {
|
|
header('Content-Type: application/json; charset=UTF-8');
|
|
|
|
$result = array();
|
|
try {
|
|
$slt = new SurveyLanguageTechnology($this->anketa);
|
|
$url = $slt->exportLanguageTechnology($_REQUEST['lt_data'], $_REQUEST['language']);
|
|
$result['error'] = false;
|
|
$result['filename'] = $url;
|
|
$result['url'] = makeEncodedIzvozUrlString('izvoz.php?a=lt_excel&file=' . $url);;
|
|
} catch (Exception $e) {
|
|
$result['error'] = true;
|
|
$result['filename'] = '';
|
|
$result['url'] = '';
|
|
$result['msg'] = $e->getMessage();
|
|
}
|
|
echo json_encode($result);
|
|
exit();
|
|
}
|
|
else { // genericna resitev za vse nadaljne
|
|
|
|
$ajax = 'ajax_' . $_GET['a'];
|
|
|
|
if ( method_exists('SurveyAdminAjax', $ajax) )
|
|
$this->$ajax();
|
|
else
|
|
echo 'method: "'.$ajax.'" does not exist';
|
|
}
|
|
|
|
}
|
|
// Ajax :end
|
|
|
|
function ajax_brisi_spremenljivko () {
|
|
global $lang;
|
|
|
|
Common::updateEditStamp();
|
|
|
|
$spremenljivka = $_POST['spremenljivka'];
|
|
$anketa = $_POST['anketa'];
|
|
$grupa = $_POST['grupa'];
|
|
|
|
$this->grupa = $grupa;
|
|
$this->anketa = $anketa;
|
|
|
|
$confirmed = $_POST['confirmed'];
|
|
$return = array();
|
|
|
|
// preverimo, da ni spremenljivka v kaksnem pogoju, preden jo zbrisemo
|
|
if (!$this->SurveyAdmin->check_spremenljivka_delete($spremenljivka)) {
|
|
$return['error'] = 1;
|
|
|
|
$return['output'] = '<div class="popup_close"><a href="#" onClick="$(\'#dropped_alert\').hide(); $(\'#fade\').fadeOut(); return false;">✕</a></div>';
|
|
$return['output'] .= '<h2>'.$lang['srv_warning'].'</h2>';
|
|
|
|
$return['output'] .= '<p>'.$lang['spremenljivka_delete_in_if'].'</p>';
|
|
|
|
$return['output'] .= '<span class="buttonwrapper floatRight"><a class="ovalbutton ovalbutton_gray" href="#" onclick="$(\'#dropped_alert\').hide(); $(\'#fade\').fadeOut(); return false;"><span>'.$lang['srv_analiza_arhiviraj_cancle'].'</span></a></span>';
|
|
|
|
echo json_encode($return);
|
|
|
|
return;
|
|
}
|
|
|
|
// preverimo, ce obstajajo ze podatki za spremenljivko - v tem primeru damo dodaten error
|
|
if ($confirmed != '1') {
|
|
|
|
$sql = sisplet_query("SELECT count(*) AS count FROM srv_user WHERE ank_id='$this->anketa' AND deleted='0' AND preview='0'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['count'] > 0) {
|
|
|
|
$return['error'] = 2;
|
|
|
|
$return['output'] = '<div class="popup_close"><a href="#" onClick="$(\'#dropped_alert\').hide(); $(\'#fade\').fadeOut(); return false;">✕</a></div>';
|
|
$return['output'] .= '<h2>'.$lang['srv_warning'].'</h2>';
|
|
|
|
$return['output'] .= '<p>'.$lang['spremenljivka_delete_data'].'</p>';
|
|
$return['output'] .= '<p>'.$lang['srv_brisispremenljivkoconfirm_data'].'</p><br />';
|
|
|
|
$return['output'] .= '<span class="buttonwrapper floatRight"><a class="ovalbutton ovalbutton_orange" href="#" onclick="brisi_spremenljivko(\''.$spremenljivka.'\', \'\', \'1\'); return false;"><span>'.$lang['srv_brisispremenljivko'].'</span></a></span>';
|
|
$return['output'] .= '<span class="buttonwrapper floatRight spaceRight"><a class="ovalbutton ovalbutton_gray" href="#" onclick="$(\'#dropped_alert\').hide(); $(\'#fade\').fadeOut(); return false;"><span>'.$lang['srv_analiza_arhiviraj_cancle'].'</span></a></span>';
|
|
//$return['output'] .= '<p><a href="#" onclick="brisi_spremenljivko(\''.$spremenljivka.'\', \'\', \'1\'); return false;">'.$lang['srv_brisispremenljivko'].'</a> <a href="#" onclick="$(\'#dropped_alert\').hide(); $(\'#fade\').fadeOut(); return false;">'.$lang['srv_analiza_arhiviraj_cancle'].'</a></p>';
|
|
|
|
echo json_encode($return);
|
|
|
|
return;
|
|
}
|
|
|
|
//Preverimo, če je vklopljena hierarhija, ker potem tudi ne moremo bristati vloge
|
|
if(SurveyInfo::getInstance()->checkSurveyModule('hierarhija') && Cache::get_spremenljivka($spremenljivka, 'variable') == 'vloga'){
|
|
$return['error'] = 1;
|
|
$return['output'] = '<p>'.$lang['srv_hierarchy_delete_vloga'].'</p>';
|
|
|
|
echo json_encode($return);
|
|
|
|
return;
|
|
}
|
|
}
|
|
|
|
$b = new Branching($this->anketa);
|
|
|
|
// ce je za spremenljivko PB, ga prestavimo na prejsnjo spremenljivko
|
|
$rowg = Cache::srv_branching($spremenljivka, 0);
|
|
if ($rowg['pagebreak'] == 1) {
|
|
$s = sisplet_query("UPDATE srv_branching SET pagebreak='1' WHERE element_spr='{$b->find_prev_spr($spremenljivka)}' AND ank_id='$this->anketa'");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
$this->SurveyAdmin->brisi_spremenljivko($spremenljivka);
|
|
|
|
if ($_COOKIE['srv_clipboard_' . $this->anketa] == $spremenljivka)
|
|
$this->SurveyAdmin->clipboard_display(-1);
|
|
|
|
$this->SurveyAdmin->prestevilci(0);
|
|
|
|
$b->check_loop();
|
|
ob_start();
|
|
$b->branching_struktura();
|
|
|
|
$return['error'] = 0;
|
|
$return['output'] = ob_get_clean().$echo;
|
|
|
|
echo json_encode($return);
|
|
}
|
|
|
|
function ajax_nice_url () {
|
|
global $site_path;
|
|
|
|
Common::updateEditStamp();
|
|
|
|
$add = false;
|
|
|
|
$anketa = $_POST['anketa'];
|
|
$nice_url = $_POST['nice_url'];
|
|
|
|
$nice_url = preg_replace("#[^A-Za-z0-9-]#", "", $nice_url);
|
|
|
|
$f = @fopen($site_path.'.htaccess', 'rb');
|
|
if ($f !== false) {
|
|
$add = true;
|
|
while (!feof($f)) {
|
|
$r = fgets($f);
|
|
if (strpos($r, "^".$nice_url.'\b') !== false) { // preverimo, da ni tak redirect ze dodan
|
|
$add = false;
|
|
}
|
|
}
|
|
fclose($f);
|
|
}
|
|
|
|
// Ne pustimo manj kot 3 znake
|
|
if (strlen($nice_url) < 3) $add = false;
|
|
|
|
// Ne pustimo vec kot 20 znakov
|
|
if (strlen($nice_url) > 20) $add = false;
|
|
|
|
sisplet_query("BEGIN"); // damo v transakcijo, da se ne more kdo med tedva querija ustulit
|
|
|
|
$sql = sisplet_query("SELECT id FROM srv_nice_links WHERE link = '$nice_url'");
|
|
if (mysqli_num_rows($sql) > 0) $add = false;
|
|
|
|
if (SurveyInfo::getInstance()->checkSurveyModule('uporabnost'))
|
|
$link = 'main/survey/uporabnost.php?anketa=' . $anketa ;
|
|
else
|
|
$link = 'main/survey/index.php?anketa=' . $anketa ;
|
|
|
|
|
|
// Dodamo nice url
|
|
if ($add) {
|
|
|
|
// Dodamo nice url za anketo
|
|
$f = @fopen($site_path.'.htaccess', 'a');
|
|
if ($f !== false) {
|
|
fwrite($f, "\nRewriteRule ^".$nice_url.'\b(.*) '.$link."&foo=\$1&%{QUERY_STRING}");
|
|
|
|
// Dodamo nice url v bazo
|
|
$s = sisplet_query("INSERT INTO srv_nice_links (id,ank_id,link) VALUES ('','$this->anketa','$nice_url')");
|
|
|
|
// Dobimo id nice url-ja ce ga slucajno rabimo za skupine
|
|
$nice_url_id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
// Preverimo ce obstajajo skupine in se njim nastavimo nice url
|
|
$ss = new SurveySkupine($this->anketa);
|
|
$skupine_spr_id = $ss->hasSkupine();
|
|
|
|
// Ce imamo skupine jim dodamo nice url
|
|
if($skupine_spr_id != 0){
|
|
|
|
$sqlS = sisplet_query("SELECT * FROM srv_vrednost WHERE spr_id='$skupine_spr_id'");
|
|
if(mysqli_num_rows($sqlS) > 0){
|
|
|
|
// Loop cez obstojece skupine
|
|
while($rowS = mysqli_fetch_array($sqlS)){
|
|
|
|
$nice_url_skupina = $nice_url.'_'.$rowS['vrstni_red'];
|
|
$link_skupina = $link.'&skupina='.$rowS['id'];
|
|
|
|
// Skupini dodamo nice url zapis v htaccess
|
|
fwrite($f, "\nRewriteRule ^".$nice_url_skupina.'\b(.*) '.$link_skupina."&foo=\$1&%{QUERY_STRING}");
|
|
|
|
// Skupini zapisemo nice url se v bazo
|
|
$sqlSI = sisplet_query("INSERT INTO srv_nice_links_skupine
|
|
(ank_id, nice_link_id, vre_id, link)
|
|
VALUES
|
|
('".$this->anketa."', '".$nice_url_id."', '".$rowS['id']."', '".$nice_url_skupina."')
|
|
");
|
|
}
|
|
}
|
|
}
|
|
|
|
fclose($f);
|
|
}
|
|
}
|
|
|
|
sisplet_query("COMMIT");
|
|
|
|
echo 'index.php?anketa='.$anketa.'&a=vabila&m=settings'.(!$add?'&error='.$nice_url:'');
|
|
}
|
|
|
|
function ajax_nice_url_remove () {
|
|
global $site_path;
|
|
|
|
Common::updateEditStamp();
|
|
|
|
$anketa = $_GET['anketa'];
|
|
$nice_url_id = $_GET['nice_url'];
|
|
|
|
$sql = sisplet_query("SELECT id, link FROM srv_nice_links WHERE id = '$nice_url_id'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
$nice_url = $row['link'];
|
|
|
|
$f = fopen($site_path.'.htaccess', 'rb');
|
|
if ($f !== false) {
|
|
$output = array();
|
|
while (!feof($f)) {
|
|
$r = fgets($f);
|
|
if (strpos($r, "^".$nice_url.'\b(.*) ') !== false && strpos($r, "?anketa=".$anketa."") !== false) {
|
|
// kao pobrisemo vrstico
|
|
} else {
|
|
$output[] = $r;
|
|
}
|
|
}
|
|
fclose($f);
|
|
}
|
|
|
|
if (count($output) > 0) {
|
|
|
|
$f = fopen($site_path.'.htaccess', 'w');
|
|
if ($f !== false) {
|
|
foreach ($output AS $line) {
|
|
fwrite($f, $line);
|
|
}
|
|
fclose($f);
|
|
|
|
$sql = sisplet_query("DELETE FROM srv_nice_links WHERE id = '$nice_url_id'");
|
|
|
|
// Preverimo ce imamo skupine s tem urljem in jih pobrisemo
|
|
$sqlS = sisplet_query("SELECT * FROM srv_nice_links_skupine WHERE ank_id='$anketa' AND nice_link_id='$nice_url_id'");
|
|
if(mysqli_num_rows($sqlS) > 0){
|
|
|
|
$f = fopen($site_path.'.htaccess', 'rb');
|
|
if ($f !== false) {
|
|
$outputS = array();
|
|
while (!feof($f)) {
|
|
|
|
$r = fgets($f);
|
|
|
|
// Loop cez vse skupine
|
|
$delete = false;
|
|
$sqlS = sisplet_query("SELECT * FROM srv_nice_links_skupine WHERE ank_id='$anketa' AND nice_link_id='$nice_url_id'");
|
|
while($rowS = mysqli_fetch_array($sqlS)){
|
|
|
|
if (strpos($r, "^".$rowS['link'].'\b(.*) ') !== false && strpos($r, "?anketa=".$anketa."&skupina=".$rowS['vre_id']."") !== false) {
|
|
// pobrisemo vrstico in vnos v bazi
|
|
$sqlD = sisplet_query("DELETE FROM srv_nice_links_skupine WHERE ank_id='$anketa' AND nice_link_id='$row[id]' AND vre_id='$rowS[vre_id]'");
|
|
$delete = true;
|
|
}
|
|
}
|
|
if($delete == false){
|
|
$outputS[] = $r;
|
|
}
|
|
}
|
|
fclose($f);
|
|
}
|
|
|
|
if (count($outputS) > 0) {
|
|
|
|
$f = fopen($site_path.'.htaccess', 'w');
|
|
if ($f !== false) {
|
|
foreach ($outputS AS $line) {
|
|
fwrite($f, $line);
|
|
}
|
|
fclose($f);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
header('Location: index.php?anketa='.$anketa.'&a=vabila&m=settings');
|
|
}
|
|
|
|
function ajax_alert_custom() {
|
|
global $lang;
|
|
global $global_user_id;
|
|
|
|
$anketa = $this->anketa;
|
|
$type = $_POST['type'];
|
|
$uid = (int)$_POST['uid'];
|
|
|
|
// najprej preberemo splosne nastavitve alertov
|
|
$sqlAlert = sisplet_query("SELECT * FROM srv_alert WHERE ank_id = '$anketa'");
|
|
if (!$sqlAlert)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
if (mysqli_num_rows($sqlAlert) > 0) {
|
|
$rowAlert = mysqli_fetch_array($sqlAlert);
|
|
}
|
|
else {
|
|
SurveyAlert::getInstance()->Init($anketa, $global_user_id);
|
|
$rowAlert = SurveyAlert::setDefaultAlertBeforeExpire();
|
|
}
|
|
|
|
$subject = ($rowAlert['finish_subject'] ? $rowAlert['finish_subject'] : $lang['srv_alert_finish_subject']);
|
|
|
|
// Custom podpis
|
|
$signature = Common::getEmailSignature();
|
|
$text = ($rowAlert['finish_text'] != ''? $rowAlert['finish_text'] : nl2br($lang['srv_alert_finish_text'].$signature) );
|
|
|
|
|
|
// z nastavitvami za trenutnega povozimo splošne nastavitve
|
|
$sql = sisplet_query("SELECT subject, text FROM srv_alert_custom WHERE ank_id='$this->anketa' AND type='$type' AND uid='$uid'");
|
|
if (mysqli_num_rows($sql) > 0) {
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
$subject = $row['subject'];
|
|
$text = $row['text'];
|
|
}
|
|
|
|
echo '<form action="ajax.php?a=alert_custom_save" name="alert_custom" method="post">';
|
|
echo '<input type="hidden" name="anketa" value="'.$this->anketa.'">';
|
|
echo '<input type="hidden" name="type" value="'.$type.'">';
|
|
echo '<input type="hidden" name="uid" value="'.$uid.'">';
|
|
|
|
echo '<p><label for="subject">' . $lang['subject'] . ': </label><input type="text" id="subject" name="subject" value="' . $subject . '" size="90"/></p>';
|
|
|
|
|
|
// prikaze editor za ne-spremenljivko (za karkoli druzga pac)
|
|
echo ' <p><label for="text">' . $lang['text'] . ':</label>';
|
|
echo ' <textarea name="text" id="text" rows="3" >' . $text . '</textarea>';
|
|
echo ' </p>';
|
|
echo '</div>';
|
|
|
|
echo '<div class="buttonwrapper floatRight spaceRight"><a class="ovalbutton ovalbutton_orange" onclick="$(\'form[name=alert_custom]\').submit(); return false;" href="#"><span>'.$lang['save'].'</span></a></div>';
|
|
echo '<div class="buttonwrapper floatRight spaceRight"><a class="ovalbutton ovalbutton_gray" onclick="remove_editor(\'text\'); $(\'#fade\').fadeOut(\'slow\'); $(\'#vrednost_edit\').hide().html(\'\'); return false;" href="#"><span>'.$lang['srv_analiza_arhiviraj_cancle'].'</span></a></div>';
|
|
|
|
echo '</form>';
|
|
|
|
}
|
|
|
|
function ajax_alert_custom_save () {
|
|
|
|
$uid = $_POST['uid'];
|
|
$type = $_POST['type'];
|
|
|
|
$subject = $_POST['subject'];
|
|
$text = $_POST['text'];
|
|
|
|
$sql = sisplet_query("REPLACE INTO srv_alert_custom (ank_id, type, uid, subject, text) VALUES ('$this->anketa', '$type', '$uid', '$subject', '$text')");
|
|
if (!$sql) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
header("Location: index.php?anketa={$this->anketa}&a=alert");
|
|
|
|
}
|
|
|
|
function ajax_anketa_restore() {
|
|
|
|
$id = (int)$_POST['id'];
|
|
|
|
sisplet_query("UPDATE srv_anketa SET active='0' WHERE active='-1' AND id='$id'");
|
|
|
|
}
|
|
|
|
function ajax_data_restore() {
|
|
|
|
$id = (int)$_POST['id'];
|
|
|
|
sisplet_query("UPDATE srv_user SET deleted='0', time_edit=NOW() WHERE deleted='1' AND ank_id='$id'");
|
|
|
|
header("Location: index.php?anketa=".$id);
|
|
|
|
}
|
|
|
|
function ajax_deleteSurveyDataFile() {
|
|
global $lang, $admin_type, $site_path;
|
|
$id = (int)$_POST['anketa'];
|
|
$result = $lang['srv_deleteSurveyDataFile_error_note'];
|
|
if ( $id > 0) {
|
|
#pobrišemo header datoteke
|
|
if (file_exists($site_path.'admin/survey/SurveyData/'.'export_header_'.$id.'.dat')) {
|
|
unlink($site_path.'admin/survey/SurveyData/'.'export_header_'.$id.'.dat');
|
|
}
|
|
|
|
#pobrišemo data datoteko
|
|
if (file_exists($site_path.'admin/survey/SurveyData/'.'export_data_'.$id.'.dat')) {
|
|
unlink($site_path.'admin/survey/SurveyData/'.'export_data_'.$id.'.dat');
|
|
}
|
|
|
|
#pobrišemo tmp
|
|
if (file_exists($site_path.'admin/survey/SurveyData/'.'export_data_'.$id.'.tmp')) {
|
|
unlink($site_path.'admin/survey/SurveyData/'.'export_data_'.$id.'.tmp');
|
|
}
|
|
|
|
# odstranimo morebitne SN datoteke - header
|
|
$files = glob($site_path.'admin/survey/SurveyData/'.'export_sn_header_'.$id.'_*.dat');
|
|
if(count($files ) > 0) {
|
|
foreach ($files AS $file) {
|
|
unlink($file);
|
|
}
|
|
}
|
|
# odstranimo morebitne SN datoteke - data
|
|
$files = glob($site_path.'admin/survey/SurveyData/'.'export_sn_data_'.$id.'_*.dat');
|
|
if(count($files ) > 0) {
|
|
foreach ($files AS $file) {
|
|
unlink($file);
|
|
}
|
|
}
|
|
$result = $lang['srv_deleteSurveyDataFile_success_note'];
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
function ajax_reminder_all () {
|
|
|
|
$what = $_GET['what'];
|
|
|
|
if ( ! $this->anketa > 0) return;
|
|
|
|
if ($what == 'soft') {
|
|
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET reminder='1' WHERE tip !='5' AND id IN (SELECT element_spr FROM srv_branching WHERE ank_id='$this->anketa' AND element_spr > 0)");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
} else if ($what == 'hard') {
|
|
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET reminder='2' WHERE tip !='5' AND id IN (SELECT element_spr FROM srv_branching WHERE ank_id='$this->anketa' AND element_spr > 0)");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
} else if ($what == 'no') {
|
|
|
|
$s = sisplet_query("UPDATE srv_spremenljivka SET reminder='0' WHERE id IN (SELECT element_spr FROM srv_branching WHERE ank_id='$this->anketa' AND element_spr > 0)");
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
}
|
|
|
|
header("Location: index.php?anketa=".$this->anketa);
|
|
|
|
}
|
|
|
|
function ajax_get_variable_labels () {
|
|
global $lang;
|
|
|
|
$spr = array_unique( $_POST['spr'] );
|
|
|
|
$response = array();
|
|
|
|
foreach ($spr AS $spr_id) {
|
|
|
|
$s = sisplet_query("SELECT tip FROM srv_spremenljivka WHERE id = '$spr_id'");
|
|
$r = mysqli_fetch_array($s);
|
|
|
|
if ( in_array($r['tip'], array(1, 3)) ) {
|
|
|
|
$output = array();
|
|
|
|
$output['spr'] = $spr_id;
|
|
$output['tip'] = $r['tip'];
|
|
|
|
$output['values'] = array();
|
|
|
|
$sql = sisplet_query("SELECT naslov, variable FROM srv_vrednost WHERE spr_id='$spr_id' ORDER BY vrstni_red ASC");
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
$output['values'][$row['variable']] = strip_tags( $row['naslov'] );
|
|
}
|
|
|
|
$output['values']['-1'] = $lang['srv_bottom_data_legend_note_li1a'];
|
|
$output['values']['-2'] = $lang['srv_bottom_data_legend_note_li2a'];
|
|
$output['values']['-3'] = $lang['srv_bottom_data_legend_note_li3a'];
|
|
$output['values']['-4'] = $lang['srv_bottom_data_legend_note_li4a'];
|
|
$output['values']['-5'] = $lang['srv_bottom_data_legend_note_li5a'];
|
|
|
|
$response[] = $output;
|
|
|
|
} elseif ( in_array($r['tip'], array(6, 16)) ) {
|
|
|
|
$output = array();
|
|
|
|
$output['spr'] = $spr_id;
|
|
$output['tip'] = $r['tip'];
|
|
|
|
$output['values'] = array();
|
|
|
|
$sql = sisplet_query("SELECT naslov, variable FROM srv_grid WHERE spr_id='$spr_id' ORDER BY vrstni_red ASC");
|
|
while ($row = mysqli_fetch_array($sql)) {
|
|
$output['values'][$row['variable']] = strip_tags( $row['naslov'] );
|
|
}
|
|
|
|
$output['values']['-1'] = $lang['srv_bottom_data_legend_note_li1a'];
|
|
$output['values']['-2'] = $lang['srv_bottom_data_legend_note_li2a'];
|
|
$output['values']['-3'] = $lang['srv_bottom_data_legend_note_li3a'];
|
|
$output['values']['-4'] = $lang['srv_bottom_data_legend_note_li4a'];
|
|
$output['values']['-5'] = $lang['srv_bottom_data_legend_note_li5a'];
|
|
|
|
$response[] = $output;
|
|
}
|
|
|
|
}
|
|
|
|
echo json_encode($response);
|
|
|
|
}
|
|
|
|
function ajax_remove_logo () {
|
|
|
|
$profile = $_POST['profile'];
|
|
|
|
$sql = sisplet_query("SELECT logo FROM srv_theme_profiles WHERE id = '$profile'");
|
|
$row = mysqli_fetch_array($sql);
|
|
|
|
if ($row['logo'] != '')
|
|
unlink( dirname(__FILE__).'/../../main/survey/uploads/'.$row['logo'] );
|
|
|
|
$s = sisplet_query("UPDATE srv_anketa SET logo = '' WHERE id = '$this->anketa'");
|
|
$s = sisplet_query("UPDATE srv_theme_profiles SET logo = '' WHERE id = '$profile'");
|
|
|
|
|
|
|
|
if (!$s) echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
}
|
|
|
|
function ajax_dostop_active_show_all(){
|
|
|
|
$show_all = $_POST['show_all'];
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->display_dostop_users($show_all);
|
|
}
|
|
|
|
/**
|
|
* omogoci administratorjem dostop do ankete (za omejeno obdobje)
|
|
*
|
|
*/
|
|
function ajax_dostop_admin () {
|
|
global $lang;
|
|
|
|
if ($_POST['remove'] == 1) {
|
|
$s = sisplet_query("UPDATE srv_anketa SET dostop_admin = NOW() - INTERVAL 1 WEEK WHERE id = '$this->anketa'");
|
|
} else {
|
|
$s = sisplet_query("UPDATE srv_anketa SET dostop_admin = NOW() + INTERVAL 1 WEEK WHERE id = '$this->anketa'");
|
|
}
|
|
|
|
SurveyInfo::getInstance()->resetSurveyData();
|
|
|
|
$this->SurveyAdmin->request_help_content();
|
|
}
|
|
|
|
|
|
function ajax_testiranje_preview_settings () {
|
|
global $lang;
|
|
global $global_user_id;
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
|
|
// Preverimo, ce je funkcionalnost v paketu, ki ga ima uporabnik
|
|
$userAccess = UserAccess::getInstance($global_user_id);
|
|
|
|
$preview_disableif = SurveySetting::getInstance()->getSurveyMiscSetting('preview_disableif');
|
|
$preview_disablealert = SurveySetting::getInstance()->getSurveyMiscSetting('preview_disablealert');
|
|
$preview_displayifs = SurveySetting::getInstance()->getSurveyMiscSetting('preview_displayifs');
|
|
$preview_displayvariables = SurveySetting::getInstance()->getSurveyMiscSetting('preview_displayvariables');
|
|
$preview_hidecomment = SurveySetting::getInstance()->getSurveyMiscSetting('preview_hidecomment');
|
|
|
|
$question_resp_comment = SurveySetting::getInstance()->getSurveyMiscSetting('question_resp_comment');
|
|
$question_resp_comment_show_open = SurveySetting::getInstance()->getSurveyMiscSetting('question_resp_comment_show_open');
|
|
|
|
$question_resp_comment_inicialke = SurveySetting::getInstance()->getSurveyMiscSetting('question_resp_comment_inicialke');
|
|
$question_resp_comment_inicialke_alert = SurveySetting::getInstance()->getSurveyMiscSetting('question_resp_comment_inicialke_alert');
|
|
|
|
echo '<h2>'.$lang['srv_test_sett_txt'].'</h2>';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="$(\'#vrednost_edit\').html(\'\').hide(); $(\'#fade\').fadeOut(); return false;">✕</a></div>';
|
|
|
|
echo '<form name="testiranje_preview_settings" action="#" method="get">';
|
|
echo '<input type="hidden" name="anketa" value="'.$this->anketa.'">';
|
|
|
|
// Nastavitve komentarjev - preverimo ce so na voljo v paketu
|
|
if($userAccess->checkUserAccess($what='question_type_location')){
|
|
echo '<div style="float: right; width: 260px">';
|
|
|
|
echo '<p style="margin-top:0">'.$lang['srv_testiranje_komentarji'].': ';
|
|
echo '<input type="radio" name="question_resp_comment" value="0" id="question_resp_comment_0" ' . ($question_resp_comment == 0 ? ' checked' : '') . ' onclick="testiranje_settings();"><label for="question_resp_comment_0">' . $lang['no'] . '</label> ';
|
|
echo '<input type="radio" name="question_resp_comment" value="1" id="question_resp_comment_1" ' . ($question_resp_comment == 1 ? ' checked' : '') . ' onclick="testiranje_settings();"><label for="question_resp_comment_1">' . $lang['yes'] . '</label> ';
|
|
echo '</p>';
|
|
echo '<p class="question_resp_comment">'.$lang['srv_comments_show_open'].': <br />';
|
|
echo '<input type="radio" name="question_resp_comment_show_open" value="" id="question_resp_comment_show_open_0" ' . ($question_resp_comment_show_open == 0 ? ' checked' : '') . '/><label for="question_resp_comment_show_open_0">' . $lang['forma_settings_open'] . '</label> ';
|
|
echo '<input type="radio" name="question_resp_comment_show_open" value="1" id="question_resp_comment_show_open_1" ' . ($question_resp_comment_show_open == 1 ? ' checked' : '') . '/><label for="question_resp_comment_show_open_1">' . $lang['forma_settings_closed'] . '</label> ';
|
|
echo '</p><p class="question_resp_comment">';
|
|
echo '' . $lang['srv_q_inicialke'] . ': <br />';
|
|
echo '<input type="radio" name="question_resp_comment_inicialke" value="0" id="question_resp_comment_inicialke_0" ' . ($question_resp_comment_inicialke == 0 ? ' checked' : '') . ' onclick="testiranje_settings();"><label for="question_resp_comment_inicialke_0">' . $lang['no'] . '</label> ';
|
|
echo '<input type="radio" name="question_resp_comment_inicialke" value="1" id="question_resp_comment_inicialke_1" ' . ($question_resp_comment_inicialke == 1 ? ' checked' : '') . ' onclick="testiranje_settings();"><label for="question_resp_comment_inicialke_1">' . $lang['yes'] . '</label> ';
|
|
echo '</p>';
|
|
echo '<p class="question_resp_comment question_resp_comment_inicialke">' . $lang['srv_q_inicialke_alert'] . ': <br />';
|
|
echo '<input type="radio" name="question_resp_comment_inicialke_alert" value="0" id="question_resp_comment_inicialke_alert_0" ' . ($question_resp_comment_inicialke_alert == 0 ? ' checked' : '') . '/><label for="question_resp_comment_inicialke_alert_0">' . $lang['srv_reminder_off2'] . '</label><br> ';
|
|
echo '<input type="radio" name="question_resp_comment_inicialke_alert" value="1" id="question_resp_comment_inicialke_alert_1" ' . ($question_resp_comment_inicialke_alert == 1 ? ' checked' : '') . '/><label for="question_resp_comment_inicialke_alert_1">' . $lang['srv_reminder_soft2'] . '</label><br> ';
|
|
echo '<input type="radio" name="question_resp_comment_inicialke_alert" value="2" id="question_resp_comment_inicialke_alert_2" ' . ($question_resp_comment_inicialke_alert == 2 ? ' checked' : '') . '/><label for="question_resp_comment_inicialke_alert_2">' . $lang['srv_reminder_hard2'] . '</label> ';
|
|
echo '</p>';
|
|
echo '<p><a href="index.php?anketa='.$this->anketa.'&a=urejanje&advanced_expanded=1">('.$lang['srv_details_settings'].')</a></p>';
|
|
|
|
echo '</div>';
|
|
|
|
?><script>
|
|
testiranje_settings();
|
|
</script><?
|
|
}
|
|
|
|
echo '<h3>'.$lang['srv_preview_defaults'].'</h3>';
|
|
|
|
echo '<p><label for="disableif"><input type="checkbox" value="1" '.($preview_disableif==1?' checked':'').' name="disableif" id="disableif">';
|
|
echo ' '.$lang['srv_disableif'].'</label></p>';
|
|
|
|
echo '<p><label for="disablealert"><input type="checkbox" value="1" '.($preview_disablealert==1?' checked':'').' name="disablealert" id="disablealert">';
|
|
echo ' '.$lang['srv_disablealert'].'</label></p>';
|
|
|
|
echo '<p><label for="displayifs"><input type="checkbox" value="1" '.($preview_displayifs==1?' checked':'').' name="displayifs" id="displayifs">';
|
|
echo ' '.$lang['srv_displayifs'].'</label></p>';
|
|
|
|
echo '<p><label for="displayvariables"><input type="checkbox" value="1" '.($preview_displayvariables==1?' checked':'').' name="displayvariables" id="displayvariables">';
|
|
echo ' '.$lang['srv_displayvariables'].'</label></p>';
|
|
|
|
// Nastavitve komentarjev - preverimo ce so na voljo v paketu
|
|
if($userAccess->checkUserAccess($what='question_type_location')){
|
|
echo '<p><label for="hidecomment"><input type="checkbox" value="1" '.($preview_hidecomment==1?' checked':'').' name="hidecomment" id="hidecomment">';
|
|
echo ' '.$lang['srv_preview_comments2'].'</label></p>';
|
|
}
|
|
|
|
echo '<div style="clear:both;"></div>';
|
|
|
|
echo '<div class="buttonwrapper floatRight">
|
|
<a class="ovalbutton ovalbutton_orange btn_savesettings" onclick="testiranje_preview_settings_save(); return false;" href="#">
|
|
<span>'.$lang['edit1337'].'</span>
|
|
</a>
|
|
</div>
|
|
|
|
<div class="buttonwrapper spaceRight floatRight">
|
|
<a class="ovalbutton ovalbutton_gray btn_savesettings" onclick="$(\'#vrednost_edit\').html(\'\').hide(); $(\'#fade\').fadeOut(); return false;" href="#" style="margin-left:10px">
|
|
<span>'.$lang['srv_cancel'].'</span>
|
|
</a>
|
|
</div>';
|
|
|
|
echo '</form>';
|
|
}
|
|
|
|
function ajax_testiranje_preview_settings_save () {
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('preview_disableif', $_POST['disableif'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('preview_disablealert', $_POST['disablealert'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('preview_displayifs', $_POST['displayifs'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('preview_displayvariables', $_POST['displayvariables'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('preview_hidecomment', $_POST['hidecomment'].'');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment', $_POST['question_resp_comment'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment_show_open', $_POST['question_resp_comment_show_open'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment_inicialke', $_POST['question_resp_comment_inicialke'].'');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment_inicialke_alert', $_POST['question_resp_comment_inicialke_alert'].'');
|
|
|
|
}
|
|
|
|
// vklopi izklopi _vse_ komentarje
|
|
function ajax_comments_onoff () {
|
|
|
|
if ($_GET['do'] == 'on') {
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment', 3);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly', 3);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_view', 3);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_write', 0);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment', 3);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment_viewadminonly', 3);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment', 1);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment_viewadminonly', 3);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_resp', 4);
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly_resp', 4);
|
|
|
|
header("Location: index.php?anketa=".$this->anketa."&a=urejanje&show=on_alert");
|
|
|
|
} elseif ($_GET['do'] == 'off') {
|
|
|
|
SurveySetting::getInstance()->Init($this->anketa);
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_view', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_note_write', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_comment_viewadminonly', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('question_resp_comment_viewadminonly', '');
|
|
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_resp', '');
|
|
SurveySetting::getInstance()->setSurveyMiscSetting('survey_comment_viewadminonly_resp', 4);
|
|
|
|
header("Location: index.php?anketa=".$this->anketa."&a=urejanje");
|
|
}
|
|
|
|
}
|
|
|
|
// Vklopi/izklopi napredni modul (sn, kviz, slideshow...)
|
|
function ajax_toggle_advanced_module(){
|
|
global $lang, $site_url, $global_user_id;
|
|
|
|
if (isset ($_POST['value']))
|
|
$value = $_POST['value'];
|
|
if (isset ($_POST['what']))
|
|
$what = $_POST['what'];
|
|
|
|
|
|
// Updatamo bazo
|
|
if($value == '1')
|
|
$sql = sisplet_query("INSERT INTO srv_anketa_module (ank_id, modul) VALUES ('".$this->anketa."', '".$what."')");
|
|
else
|
|
$sql = sisplet_query("DELETE FROM srv_anketa_module WHERE ank_id='".$this->anketa."' AND modul='".$what."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
|
|
if ($what == 'uporabnost' && $value == '1'){
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->uporabnost();
|
|
}
|
|
elseif ($what == 'hierarhija' && $value == '1'){
|
|
\Hierarhija\Hierarhija::hierarhijaInit($this->anketa);
|
|
|
|
// Če je anketa že aktivirana jo ponovno izključimo
|
|
if(SurveyInfo::getInstance()->getSurveyColumn('active') == 1)
|
|
sisplet_query("UPDATE srv_anketa SET active = '0' WHERE id='".$this->anketa."'");
|
|
}
|
|
elseif ($what == 'quiz' && $value == '1'){
|
|
// kviz
|
|
$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);
|
|
$sap->displaySettings();
|
|
}
|
|
elseif ($what == 'slideshow' && $value == '1'){
|
|
$ss = new SurveySlideshow($this->anketa);
|
|
$ss->ShowSlideshowSetings();
|
|
}
|
|
elseif ($what == 'user_from_cms' && $value == '2') {
|
|
// Updatamo se mass insert
|
|
$sql = sisplet_query("UPDATE srv_anketa SET mass_insert='1', user_from_cms='2' WHERE id='".$this->anketa."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->vnos();
|
|
}
|
|
elseif ($what == 'user_from_cms' && $value == '0') {
|
|
// Updatamo se mass insert
|
|
$sql = sisplet_query("UPDATE srv_anketa SET mass_insert='0', user_from_cms='0' WHERE id='".$this->anketa."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
elseif ($what == 'phone' && $value == '1'){
|
|
$ST = new SurveyTelephone($this->anketa);
|
|
$ST->action($_GET['m']);
|
|
|
|
$sql = sisplet_query("UPDATE srv_anketa SET user_base='1' WHERE id='".$this->anketa."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
elseif ($what == 'phone' && $value == '0'){
|
|
$sql = sisplet_query("UPDATE srv_anketa SET user_base='0' WHERE id='".$this->anketa."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
}
|
|
elseif ($what == 'social_network' && $value == '1'){
|
|
// urejanje respondentov
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->SN_Settings();
|
|
}
|
|
elseif ($what == '360_stopinj' && $value == '1'){
|
|
// analiza 360 stopinj
|
|
$s360 = new Survey360($this->anketa);
|
|
$s360->displaySettings();
|
|
}
|
|
elseif ($what == '360_stopinj_1ka' && $value == '1'){
|
|
// analiza 360 stopinj 1ka
|
|
$s360 = new Survey3601ka($this->anketa);
|
|
$s360->displaySettings();
|
|
}
|
|
elseif ($what == 'chat' && $value == '1'){
|
|
// chat
|
|
$sc = new SurveyChat($this->anketa);
|
|
$sc->displaySettings();
|
|
}
|
|
elseif ($what == 'panel' && $value == '1'){
|
|
// panel
|
|
$sp = new SurveyPanel($this->anketa);
|
|
$sp->activatePanel();
|
|
$sp->displaySettings();
|
|
}
|
|
}
|
|
|
|
// Zgenerira key za api
|
|
function ajax_generate_API_key(){
|
|
global $lang, $site_url, $global_user_id;
|
|
|
|
$identifier = '';
|
|
$private_key = '';
|
|
|
|
// Zgeneriramo identifier (identifikator)
|
|
$identifier = bin2hex(openssl_random_pseudo_bytes(8));
|
|
|
|
// Zgeneriramo privatni ključ - po novem uporabimo openssl in ne mcrypt
|
|
//$private_key = bin2hex(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
|
|
$private_key = bin2hex(openssl_random_pseudo_bytes(32, $strong=true));
|
|
|
|
// Updatamo bazo
|
|
$sql = sisplet_query("INSERT INTO srv_api_auth (usr_id, identifier, private_key) VALUES ('".$global_user_id."', '".$identifier."', '".$private_key."')
|
|
ON DUPLICATE KEY UPDATE identifier='".$identifier."', private_key='".$private_key."'");
|
|
if (!$sql)
|
|
echo mysqli_error($GLOBALS['connect_db']);
|
|
|
|
echo '<div class="title">'.$lang['srv_api_auth_title'].'</div>';
|
|
|
|
echo '<br />';
|
|
|
|
echo 'ID: ';
|
|
echo '<br /><span class="bold">'.$identifier.'</span>';
|
|
|
|
echo '<br /><br />';
|
|
|
|
echo 'PRIVATNI KLJUČ: ';
|
|
echo '<br /><span class="bold">'.$private_key.'</span>';
|
|
|
|
echo '<br /><br />';
|
|
|
|
// Gumb za zapiranje
|
|
echo '<div class="floatRight spaceRight">';
|
|
echo '<div class="buttonwrapper" title="'.$lang['srv_zapri'].'">';
|
|
echo '<a class="ovalbutton ovalbutton" onclick="close_API_window(); return false;" href="#">';
|
|
echo '<span>'.$lang['srv_zapri'].'</span>';
|
|
echo '</a>';
|
|
echo '</div>';
|
|
echo '</div>';
|
|
}
|
|
|
|
// Prikaze uvoz iz besedila znotraj ankete (popup)
|
|
function ajax_show_import_from_text(){
|
|
global $lang, $site_url, $global_user_id;
|
|
|
|
// uvoz iz besedila
|
|
echo '<div class="fieldset anketa_from_text">';
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="popupImportAnketaFromText_close();">✕</a></div>';
|
|
|
|
// Naslov
|
|
echo '<h2>' . $lang['srv_newSurvey_survey_from_text_title'] . ' '.Help::display('srv_create_survey_from_text').'</h2>';
|
|
echo '<span>' . $lang['srv_newSurvey_survey_from_text_text'] . '</span>';
|
|
|
|
// Input okno za text
|
|
echo '<div id="input_field_holder"><div id="input_field">';
|
|
//echo '<textarea placeholder="'.$lang['srv_newSurvey_survey_from_text_example'].'" onKeyUp="$(\'#preview_field\').html($(\'textarea\').val());"></textarea>';
|
|
echo '<textarea id="anketa_from_text_textarea" placeholder="'.$lang['srv_newSurvey_survey_from_text_example'].'" onKeyUp="anketaFromText_preview();"></textarea>';
|
|
echo '</div></div>';
|
|
|
|
// Preview okno
|
|
echo '<div id="preview_field_holder"><div id="preview_field">';
|
|
echo '<span class="italic">'.$lang['srv_poglejanketo2'].'</span>';
|
|
echo '</div></div>';
|
|
|
|
echo '</div>';
|
|
|
|
|
|
// Gumba naprej in preklici
|
|
echo '<div class="noSurvey_buttons">';
|
|
|
|
echo ' <span class="floatRight spaceRight buttonwrapper"><a class="ovalbutton ovalbutton_orange" href="#" onclick="importAnketaFromText();" title="'.$lang['srv_newSurvey_survey_from_text'].'">';
|
|
echo ' <span>'.$lang['next1'].'</span>';
|
|
echo ' </a></span>';
|
|
|
|
echo ' <span class="floatRight spaceRight buttonwrapper"><a class="ovalbutton ovalbutton_gray" href="#" onclick="popupImportAnketaFromText_close();" title="'.$lang['srv_cancel'].'">';
|
|
echo ' <span>'.$lang['srv_cancel'].'</span>';
|
|
echo ' </a></span>';
|
|
|
|
echo '</div>';
|
|
}
|
|
|
|
// Uvoz iz besedila znotraj ankete (popup)
|
|
function ajax_import_from_text(){
|
|
global $site_url;
|
|
|
|
// Ce ustvarjamo anketo preko uvoza iz besedila
|
|
if(isset($_POST['from_text'])){
|
|
|
|
$from_text = $_POST['from_text'];
|
|
$text_array = Common::anketaArrayFromText($from_text);
|
|
|
|
$spr_id = 0;
|
|
|
|
// Loop po vseh vprasanjih, ki jih uvazamo
|
|
foreach($text_array as $vprasanje){
|
|
|
|
$ba = new BranchingAjax($this->anketa);
|
|
|
|
// Imamo samo naslov vprasanja - text tip (21)
|
|
if(count($vprasanje) == 1){
|
|
$b = new Branching($this->anketa);
|
|
$spr_id = $ba->spremenljivka_new(0, 0, 1);
|
|
|
|
Vprasanje::change_tip($spr_id, $tip='21');
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov='".$vprasanje['title']."' WHERE id='".$spr_id."'");
|
|
}
|
|
// Imamo variable - radio tip (1)
|
|
else{
|
|
$b = new Branching($this->anketa);
|
|
$spr_id = $ba->spremenljivka_new(0, 0, 1);
|
|
|
|
Vprasanje::change_tip($spr_id, $tip='1');
|
|
$sql = sisplet_query("UPDATE srv_spremenljivka SET naslov='".$vprasanje['title']."' WHERE id='".$spr_id."'");
|
|
$sql = sisplet_query("DELETE FROM srv_vrednost WHERE spr_id='$spr_id'");
|
|
|
|
unset($vprasanje['title']);
|
|
|
|
// Loop po variablah
|
|
foreach($vprasanje as $key => $var_title){
|
|
|
|
$v = new Vprasanje();
|
|
$v->spremenljivka = $spr_id;
|
|
$vrednost = $v->vrednost_new($var_title);
|
|
|
|
Common::prestevilci($spr_id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
flush();
|
|
|
|
echo $site_url.'admin/survey/index.php?anketa='.$this->anketa;
|
|
}
|
|
|
|
|
|
// Dodeljevanje uredniskega dostopa do ankete
|
|
private function ajax_add_survey_dostop_popup(){
|
|
global $lang, $pass_salt, $global_user_id, $site_path, $site_url, $admin_type;
|
|
|
|
$_POST['addusers'] = mysql_real_unescape_string($_POST['addusers']);
|
|
$users = explode(NEW_LINE, $_POST['addusers']);
|
|
$sqlu = sisplet_query("SELECT email, name FROM users WHERE id = '".$global_user_id."'");
|
|
$rowu = mysqli_fetch_array($sqlu);
|
|
|
|
$MailReply = $rowu['email'];
|
|
$nameAuthor = $rowu['name'];
|
|
|
|
|
|
// Vsebina popupa
|
|
echo '<div class="popup_close"><a href="#" onClick="dostopAddAccessPopupClose(); return false;">✕</a></div>';
|
|
|
|
echo '<h2>'.$lang['srv_dostop_addusers'].'</h2>';
|
|
|
|
|
|
echo '<div class="popup_content">';
|
|
|
|
// Loop cez vse vnesesne userje, ki jim dajemo dostop
|
|
foreach ($users AS $user) {
|
|
|
|
$user = explode(',', $user);
|
|
$email = trim($user[0]);
|
|
$name = trim($user[1])!='' ? trim($user[1]) : $email;
|
|
$surnname = trim($user[2])!='' ? trim($user[2]) : $email;
|
|
|
|
if($email != ''){
|
|
|
|
echo '<div class="row">';
|
|
|
|
// Ce gre za veljaven email dodamo userja
|
|
if (validEmail($email)) {
|
|
|
|
$id = 0;
|
|
$sqlu = sisplet_query("SELECT id FROM users WHERE email='$email'");
|
|
|
|
$create_new_account = false;
|
|
|
|
// Ce user, ki ga dodajamo, se ne obstaja, ga ustvarimo - PO NOVEM SAMO CE SMO ADMIN
|
|
if (mysqli_num_rows($sqlu) == 0 && $admin_type == 0) {
|
|
$s = sisplet_query("INSERT INTO users (name, surname, email, pass, type, when_reg, came_from) VALUES ('$name', '$surnname', '$email', '" .base64_encode((hash(SHA256, '' .$pass_salt))) ."', '3', DATE_FORMAT(NOW(), '%Y-%m-%d'), '1')");
|
|
$id = mysqli_insert_id($GLOBALS['connect_db']);
|
|
|
|
$create_new_account = true;
|
|
}
|
|
// Drugace pridobimo podatke o userju iz baze
|
|
else {
|
|
$rowu = mysqli_fetch_array($sqlu);
|
|
$id = $rowu['id'];
|
|
}
|
|
|
|
// Ce je bil ustvarjen oz ga imamo ze v bazi, mu damo dostop in posljemo mail
|
|
if($id > 0){
|
|
|
|
$sqlDostopExist = sisplet_query("SELECT * FROM srv_dostop WHERE ank_id='".$this->anketa."' AND uid='".$id."' AND aktiven='1'");
|
|
if(mysqli_num_rows($sqlDostopExist) == 0){
|
|
|
|
$s = sisplet_query("INSERT INTO srv_dostop (ank_id, uid, aktiven) VALUES ('$this->anketa', '$id', '1')");
|
|
|
|
// V kolikor gre za hierarhijo, potem še enkrat preverimo v bazi in dodelimo dostop tudi do hierarhije status 2 - naknadno dodan administrator
|
|
if(SurveyInfo::checkSurveyModule('hierarhija', $this->anketa))
|
|
sisplet_query("INSERT INTO srv_hierarhija_users (user_id, anketa_id, type) VALUES ('".$id."', '".$this->anketa."', 2)");
|
|
|
|
$naslov = SurveyInfo::getInstance()->getSurveyColumn('naslov');
|
|
|
|
$subject = $lang['srv_dostopmail_1'].' '.$naslov.'.';
|
|
|
|
$content = $lang['srv_dostopmail_2'].' <span style="color:red;">'.$nameAuthor.'</span> (<a style="color:#1e88e5 !important; text-decoration:none !important;" href="mailto:'.$MailReply.'">'.$MailReply.'</a>) '.$lang['srv_dostopmail_3'].' <a style="color:#1e88e5 !important; text-decoration:none !important;" href="'.$site_url.'admin/survey/index.php?anketa='.$this->anketa.'"><span style="font-weight:bold;">'.$naslov.'.</span></a><br /><br />
|
|
'.$lang['srv_dostopmail_4'].' <a style="color:#1e88e5 !important; text-decoration:none !important;" href="'.$site_url.'">'.$site_url.'</a> '.$lang['srv_dostopmail_5'].' (<a style="color:#1e88e5 !important; text-decoration:none !important;" href="mailto:'.$email.'">'.$email.'</a>).';
|
|
|
|
// Ce email se ni registriran, dodamo dodatno obvestilo
|
|
if(mysqli_num_rows($sqlu) == 0 && $admin_type == 0){
|
|
$content .= '<br /><br />'.$lang['srv_dostopmail_7'];
|
|
$content .= ' <a style="color:#1e88e5 !important; text-decoration:none !important;" href="'.$site_url.'/admin/survey/index.php?a=nastavitve&m=global_user_myProfile">'.$lang['edit_data'].'</a> ';
|
|
$content .= $lang['srv_dostopmail_72'];
|
|
}
|
|
|
|
// Sporočilo urednika (opcijsko)
|
|
if(isset($_POST['addusers_note']) && $_POST['addusers_note'] != ''){
|
|
|
|
$_POST['addusers_note'] = mysql_real_unescape_string($_POST['addusers_note']);
|
|
|
|
$content .= '<br /><br /><span style="font-weight:bold;">'.$lang['srv_dostopmail_note'].'</span><br /><br />';
|
|
$content .= '<span style="color:red;">'.$_POST['addusers_note'].'</span>';
|
|
}
|
|
|
|
// Podpis
|
|
$signature = Common::getEmailSignature();
|
|
$content .= $signature;
|
|
|
|
try{
|
|
$MA = new MailAdapter($this->anketa, $type='account');
|
|
$MA->addRecipients($email);
|
|
$resultX = $MA->sendMail(stripslashes($content), $subject);
|
|
|
|
if($resultX){
|
|
echo '<span><span class="email bold">'.$email.' - </span>'.($create_new_account ? $lang['srv_dostop_addusers_success_create'] : $lang['srv_dostop_addusers_success']).'</span>';
|
|
}
|
|
else{
|
|
echo '<span class="red"><span class="email bold">'.$email.' - </span>'.$lang['srv_dostop_addusers_error3'].'</span>';
|
|
}
|
|
}
|
|
catch (Exception $e){
|
|
echo '<span class="red"><span class="email bold">'.$email.' - </span>'.$lang['srv_dostop_addusers_error3'].'</span>';
|
|
}
|
|
}
|
|
// Uporabnik ze ima dostop
|
|
else{
|
|
echo '<span><span class="email bold">'.$email.' - </span>'.$lang['srv_dostop_addusers_error4'].'</span>';
|
|
}
|
|
}
|
|
// Uporabnika ni v bazi
|
|
else{
|
|
echo '<span class="red"><span class="email bold">'.$email.' - </span>'.$lang['srv_dostop_addusers_error2'].'</span>';
|
|
}
|
|
}
|
|
// Mail ni veljaven
|
|
else{
|
|
echo '<span class="red"><span class="email bold">'.$email.' - </span>'.$lang['srv_dostop_addusers_error1'].'</span>';
|
|
}
|
|
|
|
echo '</div>';
|
|
}
|
|
}
|
|
|
|
echo '</div>';
|
|
|
|
echo '<div class="buttons_holder">';
|
|
echo '<span class="buttonwrapper floatRight" title="'.$lang['srv_zapri'].'"><a class="ovalbutton ovalbutton_gray" href="#" onclick="dostopAddAccessPopupClose(); return false;"><span>'.$lang['srv_zapri'].'</span></a></span>';
|
|
echo '</div>';
|
|
}
|
|
|
|
private function ajax_refresh_dostop_settings(){
|
|
|
|
$_GET['a'] = 'dostop';
|
|
|
|
$sas = new SurveyAdminSettings();
|
|
$sas->anketa_nastavitve_global();
|
|
}
|
|
|
|
|
|
// Display consulting popup
|
|
function ajax_consulting_popup_open () {
|
|
global $lang;
|
|
|
|
echo '<div class="popup_close"><a href="#" onClick="quick_title_edit_cancel(); return false;">✕</a></div>';
|
|
|
|
echo '<h2>'.$lang['srv_svetovanje'].'</h2>';
|
|
|
|
|
|
echo '<div class="popup_content consulting">';
|
|
|
|
echo $lang['srv_svetovanje_text'].': ';
|
|
echo '<br /><br />';
|
|
|
|
echo ' <div class="row">';
|
|
|
|
echo ' <div class="col">';
|
|
echo ' <a href="https://www.go-tel.si/instrukcije/1KA" target="_blank"><span class="faicon cog_large"></span><span>'.$lang['srv_svetovanje_uporaba'].'</span></a>';
|
|
echo ' </div>';
|
|
|
|
echo ' <div class="col">';
|
|
echo ' <a href="https://www.go-tel.si/instrukcije/statistika" target="_blank"><span class="faicon chart_large"></span><span>'.$lang['srv_svetovanje_statistika'].'</span></a>';
|
|
echo ' </div>';
|
|
|
|
echo ' <div class="col">';
|
|
echo ' <a href="https://www.1ka.si/d/sl/cenik/ostale-storitve" target="_blank"><span class="faicon reload_large"></span><span>'.$lang['srv_svetovanje_metodologija'].'</span></a>';
|
|
echo ' </div>';
|
|
|
|
echo '</div>';
|
|
|
|
echo '</div>';
|
|
|
|
echo '<div class="buttons_holder">';
|
|
echo '<span class="buttonwrapper floatRight" title="'.$lang['srv_zapri'].'"><a class="ovalbutton ovalbutton_gray" href="#" onclick="smtpAAIPopupClose(); return false;"><span>'.$lang['srv_zapri'].'</span></a></span>';
|
|
echo '</div>';
|
|
}
|
|
|
|
// Alert na vsa vprašanja - popup
|
|
private function ajax_alert_all_popup(){
|
|
global $lang;
|
|
|
|
$alert_type = $_POST['alert_type'];
|
|
|
|
|
|
// Vsebina popupa
|
|
echo '<div class="popup_close"><a href="#" onClick="AlertAllPopupClose(); return false;">✕</a></div>';
|
|
|
|
echo '<h2>'.$lang['srv_'.$alert_type.'_reminder_all'].'</h2>';
|
|
|
|
echo '<div class="popup_content">';
|
|
echo $lang['srv_reminder_popup_warning'];
|
|
echo '</div>';
|
|
|
|
echo '<div class="buttons_holder">';
|
|
echo '<span class="buttonwrapper floatRight" style="margin:3px" title="'.$lang['srv_zapri']
|
|
.'"><a class="ovalbutton ovalbutton_gray" href="#" onclick="AlertAllPopupClose(); return false;"><span>'
|
|
.$lang['srv_zapri'].'</span></a></span>';
|
|
echo '<span class="buttonwrapper floatRight" style="margin:3px" title="'.$lang['srv_tip_sample_t6_8_o2']
|
|
.'"><a class="ovalbutton ovalbutton_gray" href="ajax.php?a=reminder_all&what='.$alert_type.'&anketa='.$this->anketa.'"><span>'
|
|
.$lang['srv_tip_sample_t6_8_o2'].'</span></a></span>';
|
|
echo '</div>';
|
|
}
|
|
}
|
|
|
|
?>
|