Mape v mojih anketah - prenova - V DELU

This commit is contained in:
pero1203 2022-10-06 11:23:59 +02:00
parent 092e28b682
commit ac6fe78a5d
9 changed files with 444 additions and 1857 deletions

View File

@ -3541,14 +3541,17 @@ class SurveyAdmin
private function displaySeznamAnket(){
global $lang, $site_url, $global_user_id, $admin_type, $site_domain;
# naložimo razred z seznamom anket
$SL = new SurveyList();
$SL = ($has_folders = SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SLCount = $SL->countSurveys();
$SLCountPhone = $SL->countPhoneSurveys();
// VSEBINA POSAMEZNEGA TABA PRI MOJIH ANKETAH
echo '<div id="moje_ankete_edit" class="page_'.$_GET['a'].' subpage_'.$_GET['t'].' '.(isset($_GET['b']) ? 'subpage_b_'.$_GET['b'] : '').' '.($SLCount == 0 ? 'page_ustvari_anketo' : '').' '.($SLCount > 0 && $SL->hasFolders() ? 'moje_ankete_folders' : '').' '.$this->layout_width.' '.$this->layout_menu.'">';
echo '<div id="moje_ankete_edit" class="page_'.$_GET['a'].' subpage_'.$_GET['t'].' '.(isset($_GET['b']) ? 'subpage_b_'.$_GET['b'] : '').' '.($SLCount == 0 ? 'page_ustvari_anketo' : '').' '.($SLCount > 0 && $has_folders ? 'moje_ankete_folders' : '').' '.$this->layout_width.' '.$this->layout_menu.'">';
// izpis pregledovanja
if ((!isset($_GET['a']) && !isset($_GET['anketa'])) || ($_GET['a'] == 'pregledovanje')) {

View File

@ -4087,13 +4087,17 @@ class SurveyAdminAjax {
// shranimo nastavitve
UserSetting::getInstance()->saveUserSetting();
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyListFilter') {
// setiramo nastavitve v UserSetting
$SL = new SurveyList();
$SL -> setFilter();
// setiramo nastavitve v UserSetting
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL->setFilter();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'default_surveyListSettings') {
@ -4120,8 +4124,10 @@ class SurveyAdminAjax {
if ($_POST['sortby'] != "" )
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL->saveCssSettings($_POST['data']);
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyList_goTo') {
@ -4130,7 +4136,7 @@ class SurveyAdminAjax {
UserSetting::getInstance()->setUserSetting('survey_list_order_by', $_POST['sortby']. ",".$_POST['sorttype']);
UserSetting::getInstance()->saveUserSetting();
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL->getSurveys();
}
@ -4141,37 +4147,37 @@ class SurveyAdminAjax {
UserSetting::getInstance()->setUserSetting('survey_list_folders', $val);
UserSetting::getInstance()->saveUserSetting();
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyList_user') {
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL -> setUserId();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyList_language') {
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL -> setUserLanguage();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyList_gdpr') {
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL -> setUserGDPR();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'surveyList_library') {
$SL = new SurveyList();
$SL = (SurveyList::hasFolders()) ? new SurveyListFolders() : new SurveyList();
$SL -> setUserLibrary();
$SL->getSurveys();
}
elseif ($_GET['a'] == 'survey_chaneg_type') {
global $site_url;

View File

@ -510,7 +510,7 @@ elseif ($_GET['t'] == 'surveyList') {
}
elseif ($_GET['t'] == 'surveyListFolders') {
$SL = new SurveyListFolders();
$SL->Ajax();
$SL->ajax();
}
elseif ($_GET['t'] == 'library') {
$l = new Library();

View File

@ -21,55 +21,55 @@ if(session_id() == '') {session_start();}
class SurveyList {
private $surveys_ids = array(); # array z id-ji anket
private $settingsArray = array(); # array z nastavitvami
protected $surveys_ids = array(); # array z id-ji anket
protected $settingsArray = array(); # array z nastavitvami
private $parentFolder; # osnovni direktorij
private $currentFolder; # trenutni direktorij
private $folders = array(); # array z direktoriji
protected $parentFolder; # osnovni direktorij
protected $currentFolder; # trenutni direktorij
protected $folders = array(); # array z direktoriji
private $user_id = null; # ali filtriramo po userju
private $g_uid = null; # globalna nastavitev user_id
private $g_adminType = null; # globalna nastavitev adminType
protected $user_id = null; # ali filtriramo po userju
protected $g_uid = null; # globalna nastavitev user_id
protected $g_adminType = null; # globalna nastavitev adminType
private $onlyPhone = false; # Ali prikazujemo samo telefonske ankete
protected $onlyPhone = false; # Ali prikazujemo samo telefonske ankete
private $lang_id = 0; # nastavitev languageType
protected $lang_id = 0; # nastavitev languageType
private $gdpr = 0; # nastavitev gdpr filter za ankete
protected $gdpr = 0; # nastavitev gdpr filter za ankete
private $dostopCondition = null; # shranimo omejitve dostopa (glede na tip uporabnika in uporabniški uid)
private $folderCondition = null; # shranimo omejevanja folderjev
protected $dostopCondition = null; # shranimo omejitve dostopa (glede na tip uporabnika in uporabniški uid)
protected $folderCondition = null; # shranimo omejevanja folderjev
private $libraryCondition = null; # shranimo novo omejevanje folderjev (moja knjiznica)
private $currentLibrary; # trenutni direktorij moje knjiznice
protected $libraryCondition = null; # shranimo novo omejevanje folderjev (moja knjiznica)
protected $currentLibrary; # trenutni direktorij moje knjiznice
private $filter = null; # filter za ime ankete
protected $filter = null; # filter za ime ankete
private $show_folders = 0; # ali prikazujemo mape ali ne (default zaenkrat da)
protected $show_folders = 0; # ali prikazujemo mape ali ne (default zaenkrat da)
private $isSearch = 0; # ali izvajamo search po anektah
private $searchString = ''; # geslo po katerem iscemo po anketah
private $searchStringProcessed = array(); # geslo po katerem iscemo po anketah, obdelano (skrajsano da isce tudi po drugih sklanjatvah)
private $searchSettings = array(); # nastavitve searcha
protected $isSearch = 0; # ali izvajamo search po anektah
protected $searchString = ''; # geslo po katerem iscemo po anketah
protected $searchStringProcessed = array(); # geslo po katerem iscemo po anketah, obdelano (skrajsano da isce tudi po drugih sklanjatvah)
protected $searchSettings = array(); # nastavitve searcha
# privzete nastavitve
private $pageno = 1; # na kateri strani navigacije smo
private $max_pages = 1; # koliko strani imamo
private $sortby = SRV_LIST_ORDER_BY; # id polja po katerem sortiramo
private $sorttype = SRV_LIST_ORDER_TYPE; # tip sortiranja 1= deac, 0 = asc
private $rec_per_page = SRV_LIST_REC_PER_PAGE; # število zapisov na stran
private $orderByText = false; # ali sortiramo po tekstovnem polju (takrat uporabimo upper)
protected $pageno = 1; # na kateri strani navigacije smo
protected $max_pages = 1; # koliko strani imamo
protected $sortby = SRV_LIST_ORDER_BY; # id polja po katerem sortiramo
protected $sorttype = SRV_LIST_ORDER_TYPE; # tip sortiranja 1= deac, 0 = asc
protected $rec_per_page = SRV_LIST_REC_PER_PAGE; # število zapisov na stran
protected $orderByText = false; # ali sortiramo po tekstovnem polju (takrat uporabimo upper)
# privzete možnosti
private $sort_types_options = array(1=>'DESC',2=>'ASC'); # možni načini sortiranja
private $appropriateStatus = '5,6'; # statusi ki veljajo kot ustrezni
protected $sort_types_options = array(1=>'DESC',2=>'ASC'); # možni načini sortiranja
protected $appropriateStatus = '5,6'; # statusi ki veljajo kot ustrezni
# možni načini sortiranja
private $order_by_options = array(
protected $order_by_options = array(
1=>'naslov',
2=>'active',
3=>'lib_glb',
@ -95,7 +95,7 @@ class SurveyList {
);
# polja za prikaz
private $dataFields = array(
protected $dataFields = array(
1=>array('id'=>1,'visible'=>1,'order_by'=>'naslov','header_field'=>'sl_naslov','alsoResize'=>'.sl_naslov','minWidth'=>100,'data_field'=>'naslov','data_type'=>'naslov', 'data_css'=>'sl_naslov_padding', 'order_text'=>true),
2=>array('id'=>2,'visible'=>1,'order_by'=>'active','header_field'=>'sl_active','lang_label'=>'sl_active_1','alsoResize'=>'.sl_active','minWidth'=>20,'maxWidth'=>30,'data_field'=>'active','data_type'=>'active','data_css'=>'anl_ac'),
3=>array('id'=>3,'visible'=>0,'order_by'=>'lib_glb','header_field'=>'sl_lib_glb','lang_label'=>'sl_lib_glb_1','alsoResize'=>'.sl_lib_glb','minWidth'=>20,'maxWidth'=>30,'data_field'=>'lib_glb','data_type'=>'lib_glb','data_css'=>'anl_ac'),
@ -229,9 +229,18 @@ class SurveyList {
// Vrnemo, ce imamo vklopljene folderje ali ne
public function hasFolders(){
public static function hasFolders(){
global $global_user_id;
if($this->show_folders == '1')
$show_folders = 0;
$userAccess = UserAccess::getInstance($global_user_id);
$detect = New Mobile_Detect();
if($userAccess->checkUserAccess('my_survey_folders') && !$detect->isMobile() && !$detect->isTablet())
$show_folders = UserSetting::getInstance()->getUserSetting('survey_list_folders');
if($show_folders == '1')
return true;
else
return false;
@ -890,16 +899,6 @@ class SurveyList {
global $lang;
// Prikaz novih folderjev - V DELU
/*if($this->show_folders == 1){
$surveyFolders = new SurveyListFolders();
$surveyFolders->display();
return;
}*/
// Gumba za ustvarjanje ankete - nekatere niso prikazane pri searchu
if($this->isSearch != 1){
@ -1506,7 +1505,7 @@ class SurveyList {
}
// Prikazemo gumb za sortiranje seznama anket
private function displaySortButton(){
protected function displaySortButton(){
global $lang, $site_url;
echo $lang['orderby'];
@ -1539,7 +1538,7 @@ class SurveyList {
}
// Prikazemo gumb za filtriranje seznama anket
private function displayFilterButton(){
protected function displayFilterButton(){
global $lang, $site_url, $admin_languages;
echo '<div id="filterButton" '.(($this->user_id || $this->lang_id != 0 || $this->gdpr != 0) ? 'class="active"' : '').'>';
@ -1593,7 +1592,7 @@ class SurveyList {
}
// Prikazemo preklop med navadnim pogledom in pogledom s folderji
private function displayFolderSwitch(){
protected function displayFolderSwitch(){
global $lang, $global_user_id;
// Preverimo, ce je funkcionalnost v paketu, ki ga ima uporabnik
@ -1628,7 +1627,7 @@ class SurveyList {
}
// Prikazemo nastavitve za napredno iskanje ce iscemo po anketah
private function displaySearchSettings(){
protected function displaySearchSettings(){
global $lang;
global $site_url;
@ -2092,7 +2091,7 @@ class SurveyList {
return $result;
}
private function createOrderUrlNew($id=null, $txt) {
protected function createOrderUrlNew($id=null, $txt) {
global $site_url;
if (!isset($id) || $id == null || $id == "") {
@ -2441,7 +2440,7 @@ class SurveyList {
}
/** vrne sql string za omejevanje dostopa uporabniku */
function getLanguageLimit() {
protected function getLanguageLimit() {
global $global_admin_type;
if ((int)$this->lang_id > 0) {
@ -2450,7 +2449,7 @@ class SurveyList {
}
/** vrne sql string za omejevanje dostopa uporabniku */
function getDostopAnketa() {
protected function getDostopAnketa() {
global $global_admin_type;
global $global_user_id;
@ -2503,7 +2502,7 @@ class SurveyList {
}
/** vrne order string za SQL s katerim sortiramo */
private function getOrderString() {
protected function getOrderString() {
if (!isset($this->sortby) || (int)$this->sortby == 0) {
$this->sortby = SRV_LIST_ORDER_BY;
@ -2536,13 +2535,13 @@ class SurveyList {
}
/** vrne Limit string za SQL s katerim prika?emo posamezno stran */
private function getLimitString() {
protected function getLimitString() {
$result = " LIMIT " . ($this->pageno * $this->rec_per_page - $this->rec_per_page) . ", " . $this->rec_per_page;
return $result;
}
// vrne sql string za search po anketah glede na nastavitve searcha
private function getSearchString(){
protected function getSearchString(){
$search_text = mysqli_real_escape_string($GLOBALS['connect_db'], $this->searchString);
$search_text = stripslashes(stripslashes($search_text));
@ -2641,7 +2640,7 @@ class SurveyList {
}
// Dobimo vse parametri searcha
private function getSearchParams(){
protected function getSearchParams(){
global $site_url;
$params = '';

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,97 @@
/** Izbrise anketo
*
* @param anketa
* @param confirmtext
* @return
*/
function anketa_delete_list (anketa, confirmtext) {
if (confirm(confirmtext)) {
$("#anketa_list_"+anketa).slideUp();
$.post('ajax.php?a=anketa_delete', {anketa: anketa, 'inList': 'true'}, function(response) {
if (response == '0') {
window.location = 'index.php';
}
});
}
}
/** doda/odstrani anketo v sistemsko knjiznico in refresa ikono za knjiznico ankete
*
*/
function surveyList_knjiznica (anketa) {
$("ul#surveyList").find("li#anketa_list_"+anketa).find(".sl_lib_glb").load('ajax.php?t=surveyList&a=surveyList_knjiznica', {anketa: anketa});
}
/** navadnega uporabnika obvesti da nima dostopa za dodajanje v sistemsko knjiznico
*
*/
function surveyList_knjiznica_noaccess (msg) {
genericAlertPopup('alert_parameter_msg');
}
/** doda/odstrani anketo v uporabnisko knjiznico in refresa ikono za knjiznico ankete
*
*/
function surveyList_myknjiznica (anketa) {
$("ul#surveyList").find("li#anketa_list_"+anketa).find(".sl_lib_usr").load('ajax.php?t=surveyList&a=surveyList_myknjiznica', {anketa: anketa});
//$('#folders').load('ajax.php?t=folders&a=folders_myknjiznica', {anketa: anketa});
}
function surveyList_myknjiznica_new (anketa) {
$.post('ajax.php?t=surveyList&a=surveyList_myknjiznica_new', {anketa: anketa}, function() {
window.location.reload(true);
});
}
function surveyList_knjiznica_new (anketa) {
$.post('ajax.php?t=surveyList&a=surveyList_knjiznica_new', {anketa: anketa}, function() {
window.location.reload(true);
});
}
// Prikaz vec na tri pikice v tabeli anket
function surveyList_show_more(ank_id){
if($('#survey_other_box_'+ank_id).hasClass('displayNone')){
$('.survey_other_box').addClass('displayNone');
$('#survey_other_box_'+ank_id).removeClass('displayNone');
}
else{
$('.survey_other_box').addClass('displayNone');
}
}
/* MOJE ANKETE - pogled z mapami */
// Preklopimo med prikazom folderjev in navadnim prikazom
function switchFolder(show){
if(show == 1)
var show_folders = 0;
else
var show_folders = 1;
$('#survey_list').load('ajax.php?a=surveyList_folders', {show_folders:show_folders}, function(){
$('#moje_ankete_edit').toggleClass('moje_ankete_folders');
});
}
// Aktiviramo folder
function mysurvey_folder_activate(folder_id){
$('#right_content').load('ajax.php?t=surveyListFolders&a=mysurvey_folder_activate', {folder_id: folder_id}, function(){
// Pobrisemo aktivni class aktivnega
$('.folder_item').removeClass('active');
// Dodamo aktivni class novemu
$('#folder_item_'+folder_id).addClass('active');
});
}
// inicializiramo drag/drop anket in folderjev
function surveyList_folder_init() {
@ -109,77 +203,6 @@ function copy_folder(folder){
}
// Preklopimo med prikazom folderjev in navadnim prikazom
function switchFolder(show){
if(show == 1)
var show_folders = 0;
else
var show_folders = 1;
$('#survey_list').load('ajax.php?a=surveyList_folders', {show_folders:show_folders});
}
/** Izbrise anketo
*
* @param anketa
* @param confirmtext
* @return
*/
function anketa_delete_list (anketa, confirmtext) {
if (confirm(confirmtext)) {
$("#anketa_list_"+anketa).slideUp();
$.post('ajax.php?a=anketa_delete', {anketa: anketa, 'inList': 'true'}, function(response) {
if (response == '0') {
window.location = 'index.php';
}
});
}
}
/** doda/odstrani anketo v sistemsko knjiznico in refresa ikono za knjiznico ankete
*
*/
function surveyList_knjiznica (anketa) {
$("ul#surveyList").find("li#anketa_list_"+anketa).find(".sl_lib_glb").load('ajax.php?t=surveyList&a=surveyList_knjiznica', {anketa: anketa});
}
/** navadnega uporabnika obvesti da nima dostopa za dodajanje v sistemsko knjiznico
*
*/
function surveyList_knjiznica_noaccess (msg) {
genericAlertPopup('alert_parameter_msg');
}
/** doda/odstrani anketo v uporabnisko knjiznico in refresa ikono za knjiznico ankete
*
*/
function surveyList_myknjiznica (anketa) {
$("ul#surveyList").find("li#anketa_list_"+anketa).find(".sl_lib_usr").load('ajax.php?t=surveyList&a=surveyList_myknjiznica', {anketa: anketa});
//$('#folders').load('ajax.php?t=folders&a=folders_myknjiznica', {anketa: anketa});
}
function surveyList_myknjiznica_new (anketa) {
$.post('ajax.php?t=surveyList&a=surveyList_myknjiznica_new', {anketa: anketa}, function() {
window.location.reload(true);
});
}
function surveyList_knjiznica_new (anketa) {
$.post('ajax.php?t=surveyList&a=surveyList_knjiznica_new', {anketa: anketa}, function() {
window.location.reload(true);
});
}
// Prikaz vec na tri pikice v tabeli anket
function surveyList_show_more(ank_id){
if($('#survey_other_box_'+ank_id).hasClass('displayNone')){
$('.survey_other_box').addClass('displayNone');
$('#survey_other_box_'+ank_id).removeClass('displayNone');
}
else{
$('.survey_other_box').addClass('displayNone');
}
}

View File

@ -10500,20 +10500,26 @@ span.cke_toolgroup .cke_button {
/*
Gumbi na vrhu pri mojih anketah
*/
#survey_list .first_line {
#survey_list .first_line,
#survey_list .second_line {
display: flex;
justify-content: left;
align-items: center;
margin-bottom: 40px;
}
#survey_list .first_line .button_quick_create {
#survey_list .first_line .button_quick_create,
#survey_list .second_line .button_quick_create {
display: flex;
align-items: center;
margin-left: 32px;
}
#survey_list .first_line .button_quick_create a {
#survey_list .first_line .button_quick_create a,
#survey_list .second_line .button_quick_create a {
text-decoration: none;
font-weight: 600;
}
#survey_list .first_line .button_quick_create .faicon {
#survey_list .first_line .button_quick_create .faicon,
#survey_list .second_line .button_quick_create .faicon {
margin-right: 8px;
}
@ -11089,16 +11095,29 @@ body.eng #survey_list .filters #folderSwitch {
.moje_ankete_folders #survey_list .survey_list_folders .right_content {
width: auto;
padding: 32px 16px;
/*.second_line{
display: flex;
} */
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .folder_title {
margin-bottom: 24px;
font-weight: 600;
font-size: 16px;
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line {
display: flex;
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line .create_buttons {
display: flex;
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line .filters {
width: auto;
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line .filters #searchMySurveys {
width: auto;
margin-left: 16px;
}
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line .filters #searchMySurveys #searchMySurvey,
.moje_ankete_folders #survey_list .survey_list_folders .right_content .second_line .filters #searchMySurveys button {
height: 40px;
}
#survey_list .div_sl_new.folders table#surveyList_new tr.sl_header_new td {
background-color: #FFFFFF;

View File

@ -45,6 +45,7 @@
}
}
// Vsebina na desni
.right_content{
width: auto;
@ -57,10 +58,27 @@
font-size: 16px;
}
/*.second_line{
.second_line{
display: flex;
} */
.create_buttons{
display: flex;
}
.filters{
width: auto;
#searchMySurveys{
width: auto;
margin-left: 16px;
#searchMySurvey,
button{
height: 40px;
}
}
}
}
}
}
}

View File

@ -2,7 +2,8 @@
Gumbi na vrhu pri mojih anketah
*/
#survey_list .first_line{
#survey_list .first_line,
#survey_list .second_line{
display: flex;
justify-content: left;
@ -15,6 +16,9 @@
}
.button_quick_create {
display: flex;
align-items: center;
margin-left: 32px;
a{