Moje ankete direktoriji - v grobem dokoncano

This commit is contained in:
pero1203 2022-10-12 10:57:11 +02:00
parent 21d9f751e1
commit 33ac1684a1
4 changed files with 152 additions and 292 deletions

View File

@ -86,10 +86,10 @@ class SurveyListFolders extends SurveyList{
global $global_user_id;
// Izpisemo folder box
$this->displayFolder($folder_id);
$folder_open = $this->displayFolder($folder_id);
// Izpisemo se vse subfolderje
echo '<ul id="folder_list_'.$folder_id.'" class="folder_list">';
echo '<ul id="folder_list_'.$folder_id.'" class="folder_list" '.($folder_open ? '' : 'style="display:none;"').'">';
$sqlChildren = sisplet_query("SELECT id FROM srv_mysurvey_folder WHERE usr_id='".$global_user_id."' AND parent='".$folder_id."' ORDER BY naslov ASC");
while($rowChildren = mysqli_fetch_array($sqlChildren)){
@ -102,10 +102,20 @@ class SurveyListFolders extends SurveyList{
// Izpisemo posamezen folder
private function displayFolder($folder_id){
global $lang;
global $global_user_id;
// Ce gre za root folder dobimo stevilo anket brez folderja
if($folder_id == '0'){
// Prestejemo ankete, ki niso v nobenem notranjem folderju - so v rootu
// Preverimo, ce ni noben drug folder aktiviran - potem je aktiviran root
$sql = sisplet_query("SELECT COUNT(id) AS active_count FROM srv_mysurvey_folder WHERE active='1' AND usr_id='".$global_user_id."'");
$row = mysqli_fetch_array($sql);
$folder_active = ($row['active_count'] == 0) ? 'active' : '';
$folder_open = 'open';
}
// Ce ne gre za root folder dobimo podatke o folderju
else{
@ -126,23 +136,25 @@ class SurveyListFolders extends SurveyList{
// Nastavimo, ce je to trenutno odprt folder
if($row['active'] == '1')
$this->current_folder = $row;
$folder_active = ($row['active'] == '1') ? 'active' : '';
$folder_open = ($row['open'] == '1') ? 'open' : '';
}
// Izrisemo folder box
// Ce je root
if($folder_id == '0'){
echo '<li id="folder_item_'.$folder_id.'" class="folder_item mySurvey_droppable" folder_id="'.$folder_id.'" onClick="mySurvey_folder_activate(\''.$folder_id.'\');">';
echo '<li id="folder_item_'.$folder_id.'" class="folder_item '.$folder_open.' '.$folder_active.' mySurvey_droppable" folder_id="'.$folder_id.'" onClick="mySurvey_folder_activate(\''.$folder_id.'\');">';
echo '<span class="faicon arrow"></span>';
echo '<span class="faicon folder"></span>';
echo $lang['srv_mySurvey_all_surveys'];
}
else{
echo '<li id="folder_item_'.$folder_id.'" class="folder_item mySurvey_draggable mySurvey_droppable" folder_id="'.$folder_id.'" onClick="mySurvey_folder_activate(\''.$folder_id.'\');">';
echo '<li id="folder_item_'.$folder_id.'" class="folder_item '.$folder_open.' '.$folder_active.' mySurvey_draggable mySurvey_droppable" folder_id="'.$folder_id.'" onClick="mySurvey_folder_activate(\''.$folder_id.'\');">';
echo '<span class="faicon arrow"></span>';
echo '<span class="faicon arrow" onClick="mySurvey_folder_toggle(\''.$folder_id.'\');"></span>';
echo '<span class="faicon folder"></span>';
echo $row['naslov'];
@ -163,6 +175,13 @@ class SurveyListFolders extends SurveyList{
}
echo '</li>';
// Vrnemo, ce je folder odprt ali ne
if($folder_open == 'open')
return true;
else
return false;
}
// Dodaten popup za ime direktorija pri dodajanju
@ -861,6 +880,16 @@ class SurveyListFolders extends SurveyList{
echo '<script type="text/javascript">mySurvey_folder_init();</script>';
}
// Razsirimo/skrcimo folder
if($_GET['a'] == 'mysurvey_folder_toggle'){
$folder_id = isset($_POST['folder_id']) ? $_POST['folder_id'] : '0';
$open = isset($_POST['open']) ? $_POST['open'] : '0';
// Nastavimo izbran folder na odprtega
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET open='".$open."' WHERE usr_id='".$global_user_id."' AND id='".$folder_id."'");
}
// Pokazemo popup za poimenovanje novega subfolderja
if($_GET['a'] == 'mysurvey_folder_add_popup'){
@ -952,8 +981,15 @@ class SurveyListFolders extends SurveyList{
if($drag_folder_id > 0){
// Preverimo, ce nismo droppali folder v svojega childa - tega nikoli ne pustimo, ker potem vse izgine
if(!$this->checkFolderIsChild($parent_folder_id, $drag_folder_id)){
// Nastavimo folderju novega parenta
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET parent='".$parent_folder_id."' WHERE id='".$drag_folder_id."' AND usr_id='".$global_user_id."'");
// Parenta razpremo
$sql = sisplet_query("UPDATE srv_mysurvey_folder SET open='1' WHERE id='".$parent_folder_id."' AND usr_id='".$global_user_id."'");
}
}
$this->getSurveys();
@ -980,5 +1016,25 @@ class SurveyListFolders extends SurveyList{
}
}
// Rekurzivno preverimo, ce je nek folder child drugega folderja
private function checkFolderIsChild($folder_id, $parent_folder_id){
// Ce je parent 0, je root in koncamo - folder ni child
if($folder_id == '0')
return false;
$sql = sisplet_query("SELECT parent FROM srv_mysurvey_folder WHERE id='".$folder_id."'");
$row = mysqli_fetch_array($sql);
if($row['parent'] == $parent_folder_id){
return true;
}
else{
return $this->checkFolderIsChild($row['parent'], $parent_folder_id);
}
}
}
?>

View File

@ -110,7 +110,7 @@ function mySurvey_folder_init() {
$('#survey_list .mySurvey_draggable').draggable({
revert: 'invalid',
opacitiy: '0.7',
opacitiy: '0.9',
helper: 'clone',
cursor: 'move',
cursorAt: { left: 20 },
@ -120,6 +120,29 @@ function mySurvey_folder_init() {
});
}
// Razpremo/skrcimo folder
function mySurvey_folder_toggle(folder_id){
if($('#folder_item_'+folder_id).hasClass('open'))
var open = 0;
else
var open = 1;
$.post('ajax.php?t=surveyListFolders&a=mysurvey_folder_toggle', {folder_id: folder_id, open: open}, function(){
if($('#folder_item_'+folder_id).hasClass('open')){
$('#folder_item_'+folder_id).removeClass('open');
$('#folder_list_'+folder_id).slideUp();
}
else{
$('#folder_item_'+folder_id).addClass('open');
$('#folder_list_'+folder_id).slideDown();
}
});
event.stopPropagation();
}
// Aktiviramo folder
function mySurvey_folder_activate(folder_id){

View File

@ -11113,7 +11113,7 @@ body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders
margin-bottom: 8px;
border: 1px solid #E5E5E5;
border-radius: 2px;
transition: 0.2s;
transition: background-color 0.2s;
}
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .left_content ul li.folder_item .faicon.arrow:before {
content: "";
@ -11256,130 +11256,37 @@ body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .right_content .second_line .filters #searchMySurveys button {
height: 40px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders table#surveyList_new tr.sl_header_new td {
background-color: #FFFFFF;
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .right_content footer {
width: calc(100% + 32px);
margin-left: -16px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_add_first a {
font-size: 16px;
font-weight: 600;
text-decoration: none;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_add_first a .faicon {
margin-right: 8px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders > .folder_holder .folder_holder {
margin-left: 36px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder {
margin-top: 16px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title {
display: flex;
justify-content: flex-start;
align-items: center;
box-sizing: border-box;
padding: 0 16px;
height: 40px;
background-color: #FFFFFF;
border: 1px solid #D3D3D3;
border-radius: 4px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_arrow_icon {
cursor: pointer;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_arrow_icon::before {
content: "";
font-size: 14px;
color: #333333;
margin-right: 8px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_icon::before {
content: "";
font-size: 16px;
font-weight: 400;
color: #1E88E5;
margin-right: 8px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title.open {
background-color: #F8F8F8;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title.open .folder_arrow_icon::before {
content: "";
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title.open .folder_icon::before {
font-weight: 600;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_title_text {
margin-right: 8px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_title_text a {
cursor: text;
text-decoration: none;
color: #333333;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_title_text input[type=text] {
font-size: 16px;
padding: 2px 3px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_title_edit {
margin: 0;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .map_holder_control {
display: none;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .map_holder_control .faicon::before {
font-size: 16px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title .folder_clickable {
cursor: pointer;
flex-grow: 1;
height: 100%;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title:hover .map_holder_control {
display: flex;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title:hover .map_holder_control a {
margin-left: 8px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_title span.folder_blue {
cursor: move;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_content.closed {
display: none;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder .folder_content.subfolder {
margin-bottom: 5px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder table#surveyList_new {
margin-bottom: 20px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folder_holder table#surveyList_new tr.anketa_list td.col3 {
cursor: move;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .folderhover {
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .folderhover {
background-color: #E5E5E5 !important;
border: 1px solid #E5E5E5 !important;
border-radius: 5px 5px 5px 5px;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper {
cursor: move;
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper {
width: 300px !important;
height: 40px !important;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper .map_holder_control {
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.folder_item .dots_ver,
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.folder_item .arrow {
display: none;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper td {
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col1 {
display: block;
box-sizing: border-box;
padding: 0 8px;
background-color: #F8F8F8;
border: 1px solid #E5E5E5;
border-radius: 2px;
}
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col2,
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col3,
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col4,
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col5,
body.body_mySurveys_folders #moje_ankete_edit #survey_list .survey_list_folders .mySurvey_draggable_helper.anketa_list .col6 {
display: none;
border: 0;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper td.col3 {
display: inline-block;
border: 0 !important;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper span.minus {
display: none !important;
}
body.body_mySurveys_folders #survey_list .div_sl_new.folders .mySurvey_draggable_helper span.map_holder_control {
display: none !important;
}
div.izvoz_nad_tabelo {

View File

@ -61,7 +61,7 @@ body.body_mySurveys_folders{
border: 1px solid $gray;
border-radius: 2px;
transition: 0.2s;
transition: background-color 0.2s;
.faicon.arrow:before{
content: "\f078";
@ -215,154 +215,13 @@ body.body_mySurveys_folders{
}
}
}
}
}
}
#survey_list .div_sl_new.folders{
table#surveyList_new{
tr.sl_header_new td{
background-color: $white;
}
}
.folder_add_first{
a{
font-size: 16px;
font-weight: 600;
text-decoration: none;
.faicon{
margin-right: 8px;
}
}
}
>.folder_holder .folder_holder{
margin-left: 36px;
}
.folder_holder {
margin-top: 16px;
.folder_title {
display: flex;
justify-content: flex-start;
align-items: center;
box-sizing: border-box;
padding: 0 16px;
height: 40px;
background-color: $white;
border: 1px solid $dark-gray2;
border-radius: 4px;
.folder_arrow_icon{
cursor: pointer;
}
.folder_arrow_icon::before{
content: "\f078";
font-size: 14px;
color: $black;
margin-right: 8px;
}
.folder_icon::before{
content: "\f07b";
font-size: 16px;
font-weight: 400;
color: $blue;
margin-right: 8px;
}
&.open{
background-color: $light-gray;
.folder_arrow_icon::before{
content: "\f077";
}
.folder_icon::before{
font-weight: 600;
footer{
width: calc(100% + 32px);
margin-left: -16px;
}
}
.folder_title_text {
margin-right: 8px;
a {
cursor: text;
text-decoration: none;
color: $black;
}
input[type="text"] {
font-size: 16px;
padding: 2px 3px;
}
}
.folder_title_edit{
margin: 0;
}
.map_holder_control {
display: none;
.faicon::before{
font-size: 16px;
}
}
.folder_clickable{
cursor: pointer;
flex-grow: 1;
height: 100%;
}
&:hover {
.map_holder_control {
display: flex;
a{
margin-left: 8px;
}
}
}
span.folder_blue {
cursor: move;
}
}
.folder_content {
&.closed {
display: none;
}
&.subfolder {
margin-bottom: 5px;
}
}
table#surveyList_new {
margin-bottom: 20px;
tr.anketa_list {
td.col3 {
cursor: move;
}
}
}
}
.folderhover{
background-color: $gray !important;
@ -371,23 +230,38 @@ body.body_mySurveys_folders{
}
.mySurvey_draggable_helper {
.map_holder_control {
width: 300px !important;
height: 40px !important;
&.folder_item{
.dots_ver,
.arrow{
display: none;
}
cursor: move;
td {
}
&.anketa_list{
.col1{
display: block;
box-sizing: border-box;
padding: 0 8px;
background-color: $light-gray;
border: 1px solid $gray;
border-radius: 2px;
}
.col2,
.col3,
.col4,
.col5,
.col6{
display: none;
border: 0;
}
td.col3 {
display: inline-block;
border: 0 !important;
}
span.minus {
display: none !important;
}
span.map_holder_control {
display: none !important;
}
}
}
}
}