Redesign - status dashboard, tabela s podatki (V DELU)

This commit is contained in:
pero1203 2022-02-09 13:01:47 +01:00
parent c79b1d7afb
commit d8cdc233cb
10 changed files with 872 additions and 225 deletions

View File

@ -1965,10 +1965,6 @@ class SurveyAdmin
$podstran = M_ANALYSIS_SUMMARY;
}
}
// Zavihki STATUS
elseif($_GET['a'] == 'reporti'){
$podstran = 'status';
}
elseif($_GET['a'] == 'usable_resp'){
$podstran = 'usable_resp';
}

View File

@ -296,11 +296,11 @@ class SurveyStaticHtml
if( in_array($data_file_status, array(FILE_STATUS_SRV_DELETED, FILE_STATUS_NO_DATA))
&& in_array($podstran, array(
'para_analysis_graph', 'para_graph', 'usable_resp', 'status_advanced',
'status', 'para_analysis_graph', 'para_graph', 'usable_resp', 'status_advanced',
'data', 'quick_edit', 'variables', 'export',
'sumarnik', 'descriptor', 'frequency', 'crosstabs', 'ttest', 'means', 'break', 'multicrosstabs', 'charts', 'analysis_links'
)) ){
echo 'xx';
return;
}
@ -620,57 +620,6 @@ class SurveyStaticHtml
echo '</div>';
}
}
// Nastavitve statusa
elseif ($podstran == 'status') {
$ss = new SurveyStatistic();
$ss->Init($this->sid);
echo '<div id="div_status_filtri_right" class="right_options_holder">';
echo '<div id="dashboardEmailInvitationFilter" style="position:absolute; right:20px; top:46px;">';
echo $ss->emailInvitationFilter($this->emailInvitation);
echo '</div>';
echo '<ul>';
# če imamo vabila
$row = SurveyInfo::getSurveyRow();
if ($row['email'] || $row['user_base']) {
if ($ss->cnt_all == $ss->cnt_email) {
echo '<li>';
# filter za emaile
echo $lang['srv_statistic_email_invitation'];
echo '<select id="filter_email_status" name="filter_email_status" onchange="statisticRefreshAllBoxes(\'invitation\'); return false;" >';
echo '<option value="0" disabled="disabled">' . $lang['srv_statistic_email_invitation_all'] . '</option>';
echo '<option value="1" selected="selected">' . $lang['srv_statistic_email_invitation_only_email'] . '</option>';
echo '<option value="2" disabled="disabled">' . $lang['srv_statistic_email_invitation_no_email'] . '</option>';
echo '</select>';
echo '</li>';
} else {
echo '<li>';
# filter za emaile
echo $lang['srv_statistic_email_invitation'];
echo '<select id="filter_email_status" name="filter_email_status" onchange="statisticRefreshAllBoxes(\'invitation\'); return false;" >';
echo '<option value="0"' . ($ss->emailInvitation == 0 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_all'] . '</option>';
echo '<option value="1"' . ($ss->emailInvitation == 1 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_only_email'] . '</option>';
echo '<option value="2"' . ($ss->emailInvitation == 2 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_no_email'] . '</option>';
echo '</select>';
echo '</li>';
}
}
echo '<li>';
# filter za čase
$TimeProfileData = SurveyTimeProfiles:: GetDates();
$separator = ($row['email'] || $row['user_base']) ? true : false;
SurveyTimeProfiles::DisplayLink(false, $separator);
echo '</li>';
echo '</ul>';
echo '</div>';
}
echo '</div>';
}

View File

@ -728,35 +728,53 @@ class SurveyStatistic {
$_sql_qry = sisplet_query($_sql_string);
list($dashboard_update_time) = mysqli_fetch_row($_sql_qry);
echo '<div class="dashboard_top_settings">';
echo '<div class="dashboard_top_info">';
echo ' <span id="srv_dashboard_updated">'.$lang['srv_dashboard_updated'].$dashboard_update_time.'</span>';
echo $SDF->getDataFileInfo();
echo '</div>';
echo ' <div id="div_status_filtri_right" class="dashboard_top_filters">';
$this->displayTopFilters();
echo ' </div>';
echo '</div>';
# preberemo cache file in ga zehamo
echo $this->ReadCacheFile();
}
else {
$dashboard_update_time = date("d.m.Y, H:i:s");
echo '<div class="dashboard_top_settings">';
echo '<div class="dashboard_top_info">';
echo ' <span id="srv_dashboard_updated">'.$lang['srv_dashboard_updated'].$dashboard_update_time.'</span>';
echo ' <div class="dashboard_top_info">';
$dashboard_update_time = date("d.m.Y, H:i:s");
echo ' <span id="srv_dashboard_updated">'.$lang['srv_dashboard_updated'].$dashboard_update_time.'</span>';
#preberemo podatke o datoteki
echo $SDF->getDataFileInfo();
// Ce ne zbiramo parapodatkov casov resevanja izpisemo opozorilo
if($paradata_date == 1)
echo '<span>'.$lang['srv_dashboard_paradata_date_warning'].'</span>';
echo ' <span>'.$lang['srv_dashboard_paradata_date_warning'].'</span>';
// Prikazemo filter na datum ce je vklopljen
if (SurveyTimeProfiles::getCurentProfileId() != STP_DEFAULT_PROFILE){
echo '<div id="displayFilterNotes">';
echo ' <div id="displayFilterNotes">';
SurveyTimeProfiles :: printIsDefaultProfile();
echo '</div>';
echo ' </div>';
}
echo ' </div>';
echo ' <div id="div_status_filtri_right" class="dashboard_top_filters">';
$this->displayTopFilters();
echo ' </div>';
echo '</div>';
@ -817,7 +835,8 @@ class SurveyStatistic {
echo '<div class="dashboard_box" id="div_statistic_visit">';
echo '<div class="box_title">'.$lang['srv_statistic_timeline_title'].' '.Help :: display('srv_statistic_timeline_title').'</div>';
echo ' <div class="box_title">'.$lang['srv_statistic_timeline_title'].' '.Help :: display('srv_statistic_timeline_title').'</div>';
$this->DisplayFilters();
echo ' <div name="div_statistic_visit_data" id="div_statistic_visit_data" >';
@ -864,6 +883,55 @@ class SurveyStatistic {
$dashboardHtml = null;
}
// Prikazemo filtre na vrhu dashboarda
function DisplayTopFilters(){
global $lang;
echo '<div id="dashboardEmailInvitationFilter" class="filter_setting">';
echo $this->emailInvitationFilter($this->emailInvitation);
echo '</div>';
# če imamo vabila - filter za emaile
$row = SurveyInfo::getSurveyRow();
if ($row['email'] || $row['user_base']) {
if ($this->cnt_all == $this->cnt_email) {
echo '<div class="filter_setting">';
echo $lang['srv_statistic_email_invitation'];
echo ' <select id="filter_email_status" name="filter_email_status" class="dropdown small" onchange="statisticRefreshAllBoxes(\'invitation\'); return false;" >';
echo ' <option value="0" disabled="disabled">' . $lang['srv_statistic_email_invitation_all'] . '</option>';
echo ' <option value="1" selected="selected">' . $lang['srv_statistic_email_invitation_only_email'] . '</option>';
echo ' <option value="2" disabled="disabled">' . $lang['srv_statistic_email_invitation_no_email'] . '</option>';
echo ' </select>';
echo '</div>';
}
else {
echo '<div class="filter_setting">';
echo $lang['srv_statistic_email_invitation'];
echo ' <select id="filter_email_status" name="filter_email_status" class="dropdown small" onchange="statisticRefreshAllBoxes(\'invitation\'); return false;" >';
echo ' <option value="0"' . ($this->emailInvitation == 0 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_all'] . '</option>';
echo ' <option value="1"' . ($this->emailInvitation == 1 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_only_email'] . '</option>';
echo ' <option value="2"' . ($this->emailInvitation == 2 ? ' selected="selected"' : '') . '>' . $lang['srv_statistic_email_invitation_no_email'] . '</option>';
echo ' </select>';
echo '</div>';
}
}
# filter za čase
echo '<div class="filter_setting">';
echo ' <div id="link_time_profile" class="filter_time_profile" title="' . $lang['srv_time_profile_link_title'] . '" onClick="timeProfileAction(\'showProfiles\');">';
echo ' <span class="faicon calendar_icon"></span>'.$lang['srv_time_profile_link'];
echo ' </div>';
echo '</div>';
}
/** Funkcija prikaze osnovnih informacij
*
*/
@ -1177,7 +1245,7 @@ class SurveyStatistic {
}
// vsota vlejavnih
if ($cntValid > 0 || !$this->hideNullValues_status) {
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum_valid'].'</td>';
echo '<td>'.($this->cntUserByStatus['valid']).'</td>';
echo '</tr>';
@ -1203,7 +1271,7 @@ class SurveyStatistic {
// vsota nevlejavnih
if ($cntNonValid > 0 || !$this->hideNullValues_status) {
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum_nonvalid'].'</td>';
echo '<td>'.($this->cntUserByStatus['nonvalid']).'</td>';
echo '</tr>';
@ -1214,14 +1282,14 @@ class SurveyStatistic {
$view_count = SurveySetting::getInstance()->getSurveyMiscSetting('view_count');
if ($view_count == "") $view_count = 0;
if ($view_count > 0 || !$this->hideNullValues_status){
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum_view'].'</td>';
echo '<td>'.($view_count).'</td>';
echo '</tr>';
}
// Vsota anketiranih
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum_surveyed'].'</td>';
echo '<td>'.($this->cntUserByStatus['valid']+$this->cntUserByStatus['nonvalid']).'</td>';
echo '</tr>';
@ -1265,7 +1333,7 @@ class SurveyStatistic {
// vsota emaili
if ($cntInvitation > 0 || !$this->hideNullValues_status) {
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_sum2'].'</td>';
echo '<td>'.($this->cntUserByStatus['invitation']).'</td>';
echo '</tr>';
@ -1273,7 +1341,7 @@ class SurveyStatistic {
// Vsota vseh
echo '<tr>';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_sum_all'].'</td>';
echo '<td>'.($this->cntUserByStatus['valid']+$this->cntUserByStatus['nonvalid']+$this->cntUserByStatus['invitation']).'</td>';
echo '</tr>';
@ -1301,8 +1369,9 @@ class SurveyStatistic {
echo '<div class="box_title">'.$lang['srv_statistic_answer_state_title'].' '.Help :: display('srv_statistic_answer_state_title').'</div>';
echo '<div class="floatRight">'.$lang['srv_statistic_answer_state_base'].': ';
echo '<select id="userStatusBase" onchange="changeUserStatusBase()">';
echo '<div class="box_top_settings">';
echo $lang['srv_statistic_answer_state_base'].': ';
echo '<select id="userStatusBase" class="dropdown small" onchange="changeUserStatusBase()">';
foreach ($order as $key) {
echo '<option '.($this->realUsersByStatus_base.'' == $key.'' ? ' selected="selected"' : '').' value="'.$key.'" >'.$lang['srv_userstatus_'.$key].'</option>';
}
@ -1315,7 +1384,7 @@ class SurveyStatistic {
echo '<tr class="row1">';
echo '<td>'.$lang['srv_statistic_answer_state_status'].'</td>';
echo '<td>'.$lang['srv_statistic_answer_state_frequency'].'</strong></td>';
echo '<td>'.$lang['srv_statistic_answer_state_frequency'].'</td>';
echo '<td>'.$lang['srv_statistic_answer_state_percent'].'</td>';
echo '</tr>';
@ -1354,7 +1423,8 @@ class SurveyStatistic {
echo '<tr class="row1">';
echo '<td>'.$lang['srv_statistic_answer_state_usability'].' ('.$sur->bottom_usable_limit.'%/'.$sur->top_usable_limit.'%)</td>';
echo '<td></td>';
echo '<td>'.$lang['srv_statistic_answer_state_frequency'].'</td>';
echo '<td>'.$lang['srv_statistic_answer_state_percent'].'</td>';
echo '</tr>';
echo '<tr>';
@ -1401,7 +1471,8 @@ class SurveyStatistic {
echo '<tr class="row1">';
echo '<td>'.$lang['srv_statistic_answer_state_breakoff'].'</td>';
echo '<td></td>';
echo '<td>'.$lang['srv_statistic_answer_state_frequency'].'</td>';
echo '<td>'.$lang['srv_statistic_answer_state_percent'].'</td>';
echo '</tr>';
$introBreakoff = $status3 + $status4;
@ -1614,7 +1685,7 @@ class SurveyStatistic {
}
// dodamo sumo
echo '<tr class="anl_dash_bt strong">';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum_clicked'].'</td>';
echo '<td>'.$value_sum.'</td>';
echo '</tr>';
@ -1624,7 +1695,7 @@ class SurveyStatistic {
echo '</tr>';
if (!($value_sum_nonvalid == 0 || $value_sum == 0 )) {
echo '<tr class="anl_dash_bt strong">';
echo '<tr class="row_sum">';
echo '<td>' . $lang['srv_statistic_redirection_sum'] . '</td>';
echo '<td>'.($value_sum+$value_sum_nonvalid).'</td>';
echo '</tr>';
@ -1633,21 +1704,24 @@ class SurveyStatistic {
echo '<div id="referal_detail">';
echo '<span class="dashboard_title">'.$lang['srv_statistic_details'].'</span></div>';
echo '<span class="dashboard_title">'.$lang['srv_statistic_details'].'</span>';
if ($this->cntValidRedirections > 0) {
echo '<div class="spaceLeft"><a href="#" onclick="survey_statistic_referal(this); return false;" value="0" title="'.$lang['srv_statistic_detail_referal'].'">'.$lang['srv_statistic_detail_referal'].'</a></div>';
echo '<span><a href="#" onclick="survey_statistic_referal(this); return false;" value="0" title="'.$lang['srv_statistic_detail_referal'].'">'.$lang['srv_statistic_detail_referal'].'</a></span>';
}
else {
echo '<div class="spaceLeft">'.$lang['srv_statistic_show_no_referals'].'</div>';
echo '<span>'.$lang['srv_statistic_show_no_referals'].'</span>';
}
echo '<div class="spaceLeft"><a href="#" onclick="ip_list_podrobno(this); return false;" value="0" title="'.$lang['srv_statistic_detail_IP'].'">'.$lang['srv_statistic_detail_IP'].'</a></div>';
}
echo '<span><a href="#" onclick="ip_list_podrobno(this); return false;" value="0" title="'.$lang['srv_statistic_detail_IP'].'">'.$lang['srv_statistic_detail_IP'].'</a></span>';
# skrita div aza podrobnosti
echo '<div id="survey_referals" class="displayNone"></div>';
echo '<div id="ip_list_podrobno" class="displayNone"></div>';
# skrita div aza podrobnosti
echo '<div id="survey_referals" style="display:none;"></div>';
echo '<div id="ip_list_podrobno" style="display:none;"></div>';
echo '</div>';
}
}
/** Funkcija za prikaz klikov po straneh
@ -1661,20 +1735,27 @@ class SurveyStatistic {
echo '<div class="box_title">'.$lang['srv_statistic_pages_state_title'].' '.Help :: display('srv_statistic_pages_state_title').'</div>';
echo '<div class="box_top_settings">';
// Filter po osnovi
if ($this->emailInvitation == 1) {
$order = array('email','3ll','4ll','5ll',5,6);
} else {
}
else {
$order = array('3ll','4ll','5ll',5,6);
}
echo '<div class="floatRight">'.$lang['srv_statistic_answer_state_base'].': ';
echo '<select id="pageUserStatusBase" onchange="changePageUserStatusBase()">';
echo $lang['srv_statistic_answer_state_base'].': ';
echo '<select id="pageUserStatusBase" class="dropdown small" onchange="changePageUserStatusBase()">';
foreach ($order as $key) {
echo '<option '.($this->pageUsersByStatus_base.'' == $key.'' ? ' selected="selected"' : '').' value="'.$key.'" >'.$lang['srv_userstatus_'.$key].'</option>';
}
echo '</select>';
echo '</div>';
$status_filter_string = '';
switch($this->pageUsersByStatus_base){
case 'email':
@ -1702,8 +1783,6 @@ class SurveyStatistic {
break;
}
echo '<br class="clr">';
$pages=array();
$maxValue = 0;
if ($this->emailInvitation > 0) {
@ -1768,10 +1847,10 @@ class SurveyStatistic {
echo '</tr>';
#strani
echo '<tr>';
/*echo '<tr>';
echo '<td></td>';
echo '<td></td>';
echo '</tr>';
echo '</tr>';*/
foreach ($pages as $key => $page) {
$value = $page['cnt'];
@ -1785,10 +1864,10 @@ class SurveyStatistic {
}
#strani
echo '<tr>';
/*echo '<tr>';
echo '<td></td>';
echo '<td</td>';
echo '</tr>';
echo '</tr>';*/
# status 6 - "Koncal",
$value6 = $this->realUsersByStatus[6]['cnt'];
@ -1817,10 +1896,10 @@ class SurveyStatistic {
echo '</tr>';
#črta
echo '<tr>';
/*echo '<tr>';
echo '<td></td>';
echo '<td></td>';
echo '</tr>';
echo '</tr>';*/
# končal ne glede na to ali je lurker
echo '<tr>';
@ -1830,7 +1909,6 @@ class SurveyStatistic {
echo '<span class="graph_text">'.$valueall.'</span>';
echo '</td>';
echo '</tr>';
}
echo '</table>';
@ -1947,34 +2025,41 @@ class SurveyStatistic {
function DisplayFilters () {
global $lang;
echo '<div class="box_top_settings">';
// Kumulativa
echo '<span class="floatRight" style="display:inline-block; vertical-align: middle;">';
echo $lang['srv_statistic_hide_null'];
echo '<input id="hideNullValues_dates" name="hideNullValues_dates" type="checkbox" onclick="statisticFilterDateRefresh();"'.($this->hideNullValues_dates ? ' checked="checked"' : '').' autocomplete="off">';
echo '</span>';
echo '<div>';
echo ' <input id="hideNullValues_dates" name="hideNullValues_dates" type="checkbox" onclick="statisticFilterDateRefresh();"'.($this->hideNullValues_dates ? ' checked="checked"' : '').' autocomplete="off">';
echo ' <label for="hideNullValues_dates">'.$lang['srv_statistic_hide_null'].'</label>';
echo '</div>';
// Skrij 0
echo '<span class="floatRight" style="display:inline-block; margin-right:10px; vertical-align: middle;">';
echo '<label for="timelineDropDownType" autocomplete="off">'.$lang['srv_statistic_kumulativa'].': </label>';
echo '<input type="checkbox" id="timelineDropDownType" name="timelineDropDownType" value="0" '.($this->timelineDropDownType == 1 ? ' checked="checked"' : '').' autocomplete="off" style="margin:0px!important;" onclick="statisticDropdownChange();" >';
echo '</span>';
echo '<div>';
echo ' <input type="checkbox" id="timelineDropDownType" name="timelineDropDownType" value="0" '.($this->timelineDropDownType == 1 ? ' checked="checked"' : '').' autocomplete="off" style="margin:0px!important;" onclick="statisticDropdownChange();" >';
echo ' <label for="timelineDropDownType" autocomplete="off">'.$lang['srv_statistic_kumulativa'].'</label>';
echo '</div>';
echo '<br class="clr"/>';
echo '</div>';
echo '<div class="box_top_settings">';
// Osnova
echo '<span id="span_timelineDropDownType" class="floatLeft">';
echo '<div id="span_timelineDropDownType">';
$this->DisplayTimelineDropdowns();
echo '</span>';
echo '</div>';
// Oblika
echo '<span class="floatRight">';
echo '<label>'.$lang['srv_statistic_period'].'</label>:';
echo '<select id="period" name="period" size="1" onchange="statisticFilterDateRefresh();" autocomplete="off" >';
echo '<div>';
echo $lang['srv_statistic_period'].':';
echo ' <select id="period" name="period" class="dropdown small" size="1" onchange="statisticFilterDateRefresh();" autocomplete="off" >';
foreach ( $this->periods as $key => $_period) {
echo '<option value="' . $_period . '" ' . ( $_period == $this->period ? ' selected="selected" ' : '') . '>'.$lang['srv_statistic_period_' . $_period ].'</option>';
echo ' <option value="' . $_period . '" ' . ( $_period == $this->period ? ' selected="selected" ' : '') . '>'.$lang['srv_statistic_period_' . $_period ].'</option>';
}
echo '</select>';
echo '</span>';
echo ' </select>';
echo '</div>';
echo '</div>';
}
function DisplayTimelineDropdowns() {
@ -1983,7 +2068,7 @@ class SurveyStatistic {
echo $lang['srv_statistic_answer_state_base'].': ';
if ($this->timelineDropDownType == 0) {
echo '<select name="type" id="type" onchange="statisticFilterDateRefresh();" autocomplete="off">';
echo '<select name="type" id="type" class="dropdown small" onchange="statisticFilterDateRefresh();" autocomplete="off">';
echo '<option value="'.TYPE_ALL.'"' . ($this -> type == TYPE_ALL ? ' selected' : '') . ' class="opt_bold">'.$lang['srv_userstatus_total'].'</option>';
echo '<option value="'.TYPE_APPROPRIATE.'"' . ($this -> type == TYPE_APPROPRIATE ? ' selected' : '') . ' class="opt_bold">'.$lang['srv_userstatus_appropriate'].'</option>';
@ -2010,7 +2095,7 @@ class SurveyStatistic {
'5ll'=>TYPE_STATUS_KUMULATIVE_5ll,
5=>TYPE_STATUS_KUMULATIVE_5,
6=>TYPE_STATUS_KUMULATIVE_6,);
echo '<select name="type" id="type" onchange="statisticFilterDateRefresh();" autocomplete="off">';
echo '<select name="type" id="type" class="dropdown small" onchange="statisticFilterDateRefresh();" autocomplete="off">';
foreach ($order as $key => $value) {
echo '<option value="'.$value.'" '.($this -> type .'' == $value.'' ? ' selected="selected"' : '').' value="'.$value.'" >'.$lang['srv_userstatus_'.$key].'</option>';
}
@ -2049,7 +2134,7 @@ class SurveyStatistic {
}
// dodamo sumo
echo '<tr class="row_suma">';
echo '<tr class="row_sum">';
echo '<td>'.$lang['srv_statistic_redirection_sum'].'</td>';
echo '<td>'.$cnt.' </td>';
echo '</tr>';

View File

@ -816,83 +816,6 @@ class SurveyDataDisplay{
# če imamo podatke
if (self::$dataFileStatus != FILE_STATUS_SRV_DELETED) {
echo '<div id="dataSettingsCheckboxes" '.(self::$displayEditIconsSettings ? '' : ' style="display:none;"').'>';
echo '<div id="toggleDataCheckboxes2" onClick="toggleDataCheckboxes(\'data\');"><span class="faicon close icon-orange" style="padding-bottom:2px;"></span> '.$lang['srv_data_settings_checkboxes2'].'</div>';
if(self::$dataFileStatus != FILE_STATUS_NO_DATA){
echo '<div id="dataSetingsLinks" class="data noBorder">';
self::displayLeftFilters();
echo '</div>'; // konec diva za paginacijo
}
if (self :: $is_social_network == false || self::$_VARS[VAR_CIRCLES] == 0) {
echo '<div class="clr" id="dataIconSetingsLinks" >'.$lang['srv_dataIcons_note'].'&nbsp;&nbsp;';
if (self::$_VARS[VAR_SHOW_SYSTEM] == false ) {
echo '<input type="checkbox" id="dataIcons_quick_view" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_quick_view'] == true ? ' checked="checekd"' : '').'/><label for="dataIcons_quick_view">'.$lang['srv_dataIcons_quick_view'].'</label>';
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_labels" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_labels'] == true ? ' checked="checekd"' : '').'/><label for="dataIcons_labels">'.$lang['srv_dataIcons_labels'].'</label>';
if ( self::showMultiple() ) {
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_multiple" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_multiple'] == true ? ' checked="checekd"' : '').' /><label for="dataIcons_multiple">'.$lang['srv_dataIcons_multiple'].'</label>';
}
} else {
echo '<input type="checkbox" id="dataIcons_quick_view" disabled="disabled" /><label for="dataIcons_quick_view" class="gray">'.$lang['srv_dataIcons_quick_view'].'</label>';
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_labels" disabled="disabled" /><label for="dataIcons_labels" class="gray">'.$lang['srv_dataIcons_labels'].'</label>';
if ( self::showMultiple() ) {
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_multiple" disabled="disabled" /><label for="dataIcons_multiple" class="gray">'.$lang['srv_dataIcons_multiple'].'</label>';
}
}
# preverimo koliko anket je dejansko uporbaniških
# za potrebne statuse
$statuses = SurveyStatusProfiles :: getStatusAsArrayString();
$lurkers = false;
if (is_array($statuses) && count($statuses) > 0) {
# najprej preverimo ali filtriramo lurkereje
if (isset($statuses['lurker'])) {
$lurkers = true;
unset($statuses['lurker']);
}
if (count($statuses) > 0) {
$sstring = ' AND last_status IN (';
foreach ($statuses AS $skey => $status) {
if (is_numeric($skey)) {
$sstring.=$prefix.$skey;
} else if($skey == 'null') {
$sstring.=$prefix.'-1';
}
$prefix = ',';
}
$sstring .=')';
}
}
$q = sisplet_query("SELECT count(*) FROM srv_user WHERE ank_id = '".self::$sid."' AND user_id > 0 AND deleted='0' ".$sstring);
list($cnt) = mysqli_fetch_row($q);
if ($cnt > 0) {
echo '<span class="spaceLeft">';
self::displayOnlyCMS();
echo '</span>';
}
echo '</div>';
echo '<div class="clr"></div>';
}
echo '</div>';
# ali imamo testne podatke
if (self::$_HAS_TEST_DATA) {
# izrišemo bar za testne podatke
@ -1190,15 +1113,14 @@ class SurveyDataDisplay{
global $site_path;
global $global_user_id;
// na vrhu in na dnu izrisemo paginacijo
if(self::$dataFileStatus != FILE_STATUS_NO_DATA && (int)self::$_RECORD_COUNT > 0) {
echo '<div id="vnosi_paginacija" class="top_paginacija">';
self::displayPaginacija($position='_top');
echo '</div>';
// Izrisemo search
if(!self::$_VARS[VAR_CODING])
self::displayDataSearch();
// Zgornje nastavitve nad tabelo
echo '<div class="data_table_top_holder">';
// Checkboxa za urejanje in izpise podatkov ter razpiranje dodatnih nastavitev
@ -1230,11 +1152,101 @@ class SurveyDataDisplay{
echo '<div id="toggleDataCheckboxes" ' . $borderLeft . ' onClick="toggleDataCheckboxes(\'data\');"><span class="faicon ' . ($arrow == 1 ? ' dropup_blue' : 'dropdown_blue') . '"></span> ' . $lang['srv_extra_settings'] . '</div>';
echo '</div>';
// Search
if(!self::$_VARS[VAR_CODING])
self::displayDataSearch();
// Paginacija
echo '<div id="vnosi_paginacija" class="top_paginacija">';
self::displayPaginacija($position='_top');
echo '</div>';
// Dodatne nastavitve, ki se razprejo
echo '<div id="dataSettingsCheckboxes" '.(self::$displayEditIconsSettings ? '' : ' style="display:none;"').'>';
echo '<div id="toggleDataCheckboxes2" onClick="toggleDataCheckboxes(\'data\');"><span class="faicon close icon-orange" style="padding-bottom:2px;"></span> '.$lang['srv_data_settings_checkboxes2'].'</div>';
if(self::$dataFileStatus != FILE_STATUS_NO_DATA){
echo '<div id="dataSetingsLinks" class="data noBorder">';
self::displayLeftFilters();
echo '</div>'; // konec diva za paginacijo
}
if (self :: $is_social_network == false || self::$_VARS[VAR_CIRCLES] == 0) {
echo '<div class="clr" id="dataIconSetingsLinks" >'.$lang['srv_dataIcons_note'].'&nbsp;&nbsp;';
if (self::$_VARS[VAR_SHOW_SYSTEM] == false ) {
echo '<input type="checkbox" id="dataIcons_quick_view" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_quick_view'] == true ? ' checked="checekd"' : '').'/><label for="dataIcons_quick_view">'.$lang['srv_dataIcons_quick_view'].'</label>';
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_labels" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_labels'] == true ? ' checked="checekd"' : '').'/><label for="dataIcons_labels">'.$lang['srv_dataIcons_labels'].'</label>';
if ( self::showMultiple() ) {
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_multiple" onchange="changeDataIcons(); return false;"'.(self::$displayEditIcons['dataIcons_multiple'] == true ? ' checked="checekd"' : '').' /><label for="dataIcons_multiple">'.$lang['srv_dataIcons_multiple'].'</label>';
}
} else {
echo '<input type="checkbox" id="dataIcons_quick_view" disabled="disabled" /><label for="dataIcons_quick_view" class="gray">'.$lang['srv_dataIcons_quick_view'].'</label>';
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_labels" disabled="disabled" /><label for="dataIcons_labels" class="gray">'.$lang['srv_dataIcons_labels'].'</label>';
if ( self::showMultiple() ) {
echo '&nbsp;&nbsp;';
echo '<input type="checkbox" id="dataIcons_multiple" disabled="disabled" /><label for="dataIcons_multiple" class="gray">'.$lang['srv_dataIcons_multiple'].'</label>';
}
}
# preverimo koliko anket je dejansko uporbaniških
# za potrebne statuse
$statuses = SurveyStatusProfiles :: getStatusAsArrayString();
$lurkers = false;
if (is_array($statuses) && count($statuses) > 0) {
# najprej preverimo ali filtriramo lurkereje
if (isset($statuses['lurker'])) {
$lurkers = true;
unset($statuses['lurker']);
}
if (count($statuses) > 0) {
$sstring = ' AND last_status IN (';
foreach ($statuses AS $skey => $status) {
if (is_numeric($skey)) {
$sstring.=$prefix.$skey;
} else if($skey == 'null') {
$sstring.=$prefix.'-1';
}
$prefix = ',';
}
$sstring .=')';
}
}
$q = sisplet_query("SELECT count(*) FROM srv_user WHERE ank_id = '".self::$sid."' AND user_id > 0 AND deleted='0' ".$sstring);
list($cnt) = mysqli_fetch_row($q);
if ($cnt > 0) {
echo '<span class="spaceLeft">';
self::displayOnlyCMS();
echo '</span>';
}
echo '</div>';
}
echo '</div>';
echo '</div>';
}
echo '<br class="clr" />';
// Vklopljeni filtri
echo '<div id="displayFilterNotes">';
# če ne uporabljamo privzetega časovnega profila izpišemo opozorilo
@ -1262,12 +1274,7 @@ class SurveyDataDisplay{
echo '</div>';
$folder = $site_path . EXPORT_FOLDER.'/';
// Div s tabelo
echo '<div id="div_vnosi_data">';
if ((self::$dataFileStatus == 1 || self::$dataFileStatus == 0) && self::$dataFileName !== null) {
@ -1416,6 +1423,8 @@ class SurveyDataDisplay{
# ali smo v edit načinu ali monitoringu
$cssEdit = (self::$_VARS[VAR_EDIT] || self::$_VARS[VAR_MONITORING]?' editData':'');
echo '<table id="dataTable" class="scrollTable no_wrap_td'.$cssEdit.'" '.(self::$_VARS[VAR_EDIT]?' title="'.$lang['srv_edit_data_title'].'"':'').'>';
// Nastavimo colgroup, da na njega vezemo vse sirine v tabeli, zaradi resizinga stolpcev

View File

@ -12038,12 +12038,44 @@ table#standard_words_table th div.standardna-beseda-th {
align-items: center;
}
.dashboard_top_info {
.dashboard_top_settings {
display: flex;
align-items: center;
justify-content: space-between;
}
.dashboard_top_settings .dashboard_top_info {
font-size: 14px;
}
.dashboard_top_info span {
.dashboard_top_settings .dashboard_top_info span {
font-size: 14px;
}
.dashboard_top_settings .dashboard_top_filters {
display: flex;
align-items: center;
}
.dashboard_top_settings .dashboard_top_filters .filter_setting {
margin-left: 16px;
}
.dashboard_top_settings .dashboard_top_filters .filter_setting select.dropdown {
width: auto;
margin: 0 0 0 8px;
}
.dashboard_top_settings .dashboard_top_filters .filter_setting .filter_time_profile {
cursor: pointer;
padding: 4px 16px;
font-size: 14px;
line-height: 18px;
border: 1px solid #E5E5E5;
border-radius: 2px;
transition: 0.2s;
}
.dashboard_top_settings .dashboard_top_filters .filter_setting .filter_time_profile .faicon {
margin-right: 8px;
color: #1E88E5;
}
.dashboard_top_settings .dashboard_top_filters .filter_setting .filter_time_profile:hover {
background-color: #F8F8F8;
}
.dashboard_boxes {
display: flex;
@ -12078,12 +12110,17 @@ table#standard_words_table th div.standardna-beseda-th {
}
.dashboard_boxes .dashboard_box .box_top_settings {
display: flex;
align-items: center;
margin-bottom: 8px;
}
.dashboard_boxes .dashboard_box .box_top_settings span,
.dashboard_boxes .dashboard_box .box_top_settings label {
font-size: 14px;
}
.dashboard_boxes .dashboard_box .box_top_settings select.dropdown {
width: auto;
margin: 0 0 0 8px;
}
.dashboard_boxes .dashboard_box table {
width: 100%;
margin: 0 0 16px 0;
@ -12099,6 +12136,9 @@ table#standard_words_table th div.standardna-beseda-th {
font-weight: 600;
background-color: #F8F8F8;
}
.dashboard_boxes .dashboard_box table tr.row_sum td {
font-weight: 600;
}
.dashboard_boxes .dashboard_box table tr td {
padding: 4px 16px 4px 8px;
font-size: 14px;
@ -12114,7 +12154,7 @@ table#standard_words_table th div.standardna-beseda-th {
.dashboard_boxes .dashboard_box table tr td .graph_db {
float: left;
height: 16px;
margin-top: 2px;
margin-top: 1px;
background-color: #1E88E5;
}
.dashboard_boxes .dashboard_box table tr td .graph_text {
@ -12132,12 +12172,56 @@ table#standard_words_table th div.standardna-beseda-th {
.dashboard_boxes .dashboard_box#div_statistic_info table tr td:nth-child(3) {
font-weight: 600;
}
.dashboard_boxes .dashboard_box#div_statistic_status table tr td:first-child {
padding-left: 16px;
}
.dashboard_boxes .dashboard_box#div_statistic_status table tr td:nth-child(2), .dashboard_boxes .dashboard_box#div_statistic_status table tr td:nth-child(3) {
text-align: right;
}
.dashboard_boxes .dashboard_box#div_statistic_status table tr.row1 td:first-child {
padding-left: 8px;
}
.dashboard_boxes .dashboard_box#div_statistic_answer_state table tr td:nth-child(2), .dashboard_boxes .dashboard_box#div_statistic_answer_state table tr td:nth-child(3) {
width: 80px;
text-align: right;
}
.dashboard_boxes .dashboard_box#div_statistic_referals table tr td:first-child {
width: 140px;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail {
display: flex;
flex-direction: column;
margin-top: 16px;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail span {
margin-bottom: 8px;
font-size: 14px;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail span.dashboard_title {
font-weight: 600;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail span a {
text-decoration: none;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail table {
margin-bottom: 16px;
}
.dashboard_boxes .dashboard_box#div_statistic_referals #referal_detail table tr td:first-child {
width: 90px;
}
.dashboard_boxes .dashboard_box#div_statistic_visit .box_top_settings > div select.dropdown {
width: 130px;
}
.dashboard_boxes .dashboard_box#div_statistic_visit .box_top_settings:nth-child(3) {
justify-content: space-between;
}
.dashboard_boxes .dashboard_box#div_statistic_visit table tr td:first-child {
width: 140px;
}
.dashboard_boxes .dashboard_box#div_statistic_pages_state table tr td:first-child {
width: 140px;
}
.survey_referals_tbl {
width: 100%;
border-spacing: 0px;
@ -15658,6 +15742,170 @@ textarea#addusers, textarea#addusers_note {
color: #FFC700;
}
#anketa_edit.page_data.fullwidth {
padding: 0 16px;
}
.data_table_top_holder {
position: relative;
display: flex;
align-items: center;
box-sizing: border-box;
margin-bottom: 16px;
padding: 8px 16px;
background: #F8F8F8;
border: 1px solid #E5E5E5;
border-radius: 2px;
}
.data_table_top_holder #vnosi_paginacija {
display: flex;
position: absolute;
right: 16px;
}
.data_table_bottom_holder {
margin-top: 32px;
}
#div_vnosi_data table#dataTable {
table-layout: fixed;
width: 0px;
padding: 0px;
margin: 0px;
border-collapse: collapse;
border-spacing: 0px;
/*.dataCell {
position: relative;
white-space: nowrap;
overflow: hidden;
width: 100%;
min-width: 20px;
max-height: 1.1em;
padding: 3px 0;
text-indent: 3px;
&:hover {
.tableResize {
background-color: $blue;
}
}
}
.headerCell {
white-space: nowrap;
padding: 3px;
}
th {
font-weight: normal;
text-align: left;
cursor: pointer;
}
col {
width: 100px;
}
col.data_edit {
width: 23px;
}
td {
padding: 3px;
font-weight: normal;
text-align: left;
max-width: 200px;
overflow: hidden;
line-height: 18px;
.highlighted {
font-weight: bold;
color: red;
background-color: yellow;
}
}
td.data_edit {
.pdf {
cursor: pointer;
}
.rtf {
cursor: pointer;
}
.evoli {
cursor: pointer;
}
.evoli2 {
cursor: pointer;
}
.evoli3 {
cursor: pointer;
}
.mfdps {
cursor: pointer;
}
}
select {
font-size: 11px !important;
width: 100%;
}
th.hover {
background-color: $gray;
}
tbody {
.active {
background-color: $gray !important;
}
tr {
&:nth-child(odd) {
}
&:nth-child(even) {
background-color: $gray;
}
}
}
.delete_data_row {
margin: 0;
}
.scrollContent.coding {
td {
&:hover {
background-color: $gray;
cursor: pointer;
}
}
td.enkaIcon {
&:hover {
background-color: white;
}
}
td.cellGreen {
&:hover {
background-color: #E6FFCC;
cursor: auto;
}
}
}*/
}
#div_vnosi_data table#dataTable colgroup col {
width: 100px;
}
#div_vnosi_data table#dataTable colgroup col.data_edit {
width: 23px;
}
#div_vnosi_data table#dataTable thead tr th {
padding: 16px;
overflow: hidden;
white-space: nowrap;
font-size: 16px;
font-weight: 600;
background: #F8F8F8;
border: 1px solid #E5E5E5;
}
#div_vnosi_data table#dataTable tbody tr td {
box-sizing: border-box;
height: 40px;
padding: 0 16px;
font-size: 14px;
border: 1px solid #E5E5E5;
}
#div_analiza_data .div_analiza_holder,
#div_means_data .div_analiza_holder,
#div_break_data .div_analiza_holder,

View File

@ -0,0 +1,5 @@
#anketa_edit.page_data.fullwidth{
padding: 0 16px;
}

View File

@ -0,0 +1,174 @@
#div_vnosi_data{
//width: 100%;
//overflow-y: auto;
table#dataTable {
table-layout: fixed;
width: 0px;
padding: 0px;
margin: 0px;
border-collapse: collapse;
border-spacing: 0px;
colgroup{
col {
width: 100px;
&.data_edit {
width: 23px;
}
}
}
thead{
tr{
th{
padding: 16px;
overflow: hidden;
white-space: nowrap;
font-size: 16px;
font-weight: 600;
background: $light-gray;
border: 1px solid $gray;
}
}
}
tbody{
tr{
td{
box-sizing: border-box;
height: 40px;
padding: 0 16px;
font-size: 14px;
border: 1px solid $gray;
}
}
}
/*.dataCell {
position: relative;
white-space: nowrap;
overflow: hidden;
width: 100%;
min-width: 20px;
max-height: 1.1em;
padding: 3px 0;
text-indent: 3px;
&:hover {
.tableResize {
background-color: $blue;
}
}
}
.headerCell {
white-space: nowrap;
padding: 3px;
}
th {
font-weight: normal;
text-align: left;
cursor: pointer;
}
col {
width: 100px;
}
col.data_edit {
width: 23px;
}
td {
padding: 3px;
font-weight: normal;
text-align: left;
max-width: 200px;
overflow: hidden;
line-height: 18px;
.highlighted {
font-weight: bold;
color: red;
background-color: yellow;
}
}
td.data_edit {
.pdf {
cursor: pointer;
}
.rtf {
cursor: pointer;
}
.evoli {
cursor: pointer;
}
.evoli2 {
cursor: pointer;
}
.evoli3 {
cursor: pointer;
}
.mfdps {
cursor: pointer;
}
}
select {
font-size: 11px !important;
width: 100%;
}
th.hover {
background-color: $gray;
}
tbody {
.active {
background-color: $gray !important;
}
tr {
&:nth-child(odd) {
}
&:nth-child(even) {
background-color: $gray;
}
}
}
.delete_data_row {
margin: 0;
}
.scrollContent.coding {
td {
&:hover {
background-color: $gray;
cursor: pointer;
}
}
td.enkaIcon {
&:hover {
background-color: white;
}
}
td.cellGreen {
&:hover {
background-color: #E6FFCC;
cursor: auto;
}
}
}*/
}
}

View File

@ -0,0 +1,40 @@
.data_table_top_holder{
position: relative;
display: flex;
align-items: center;
box-sizing: border-box;
margin-bottom: 16px;
padding: 8px 16px;
background: $light-gray;
border: 1px solid $gray;
border-radius: 2px;
#vnosi_paginacija{
display: flex;
position: absolute;
right: 16px;
}
#data_search_filter{
}
.dataSettingsBasic{
}
}
#displayFilterNotes{
//margin-bottom: 16px;
}
.data_table_bottom_holder{
margin-top: 32px;
}

View File

@ -1,3 +1,6 @@
@import "data_table";
@import "test_data_warning";
@import "data_layout";
@import "data_table_settings";
@import "data_table";

View File

@ -1,12 +1,56 @@
.dashboard_top_info{
font-size: 14px;
.dashboard_top_settings{
display: flex;
align-items: center;
justify-content: space-between;
span{
.dashboard_top_info{
font-size: 14px;
span{
font-size: 14px;
}
}
.dashboard_top_filters{
display: flex;
align-items: center;
.filter_setting{
margin-left: 16px;
select.dropdown{
width: auto;
margin: 0 0 0 8px;
}
.filter_time_profile{
cursor: pointer;
padding: 4px 16px;
font-size: 14px;
line-height: 18px;
border: 1px solid $gray;
border-radius: 2px;
transition: 0.2s;
.faicon{
margin-right: 8px;
color: $blue;
}
&:hover{
background-color: $light-gray;
}
}
}
}
}
.dashboard_boxes{
display: flex;
flex-wrap: wrap;
@ -50,12 +94,19 @@
.box_top_settings{
display: flex;
align-items: center;
margin-bottom: 8px;
span,
label{
font-size: 14px;
}
select.dropdown{
width: auto;
margin: 0 0 0 8px;
}
}
table{
@ -80,6 +131,12 @@
}
}
&.row_sum{
td{
font-weight: 600;
}
}
td{
padding: 4px 16px 4px 8px;
@ -99,7 +156,7 @@
.graph_db {
float: left;
height: 16px;
margin-top: 2px;
margin-top: 1px;
background-color: $blue;
}
@ -132,11 +189,25 @@
// Box 2
&#div_statistic_status{
table tr td{
table tr{
&:nth-child(2),
&:nth-child(3){
text-align: right;
td{
&:first-child{
padding-left: 16px;
}
&:nth-child(2),
&:nth-child(3){
text-align: right;
}
}
&.row1{
td:first-child{
padding-left: 8px;
}
}
}
}
@ -148,6 +219,7 @@
&:nth-child(2),
&:nth-child(3){
width: 80px;
text-align: right;
}
}
@ -156,16 +228,82 @@
// Box 4
&#div_statistic_referals{
table tr td{
&:first-child{
width: 140px;
}
}
#referal_detail{
display: flex;
flex-direction: column;
margin-top: 16px;
span{
margin-bottom: 8px;
&.dashboard_title{
font-weight: 600;
}
font-size: 14px;
a{
text-decoration: none;
}
}
table{
margin-bottom: 16px;
tr{
td{
&:first-child{
width: 90px;
}
}
}
}
}
}
// Box 5
&#div_statistic_visit{
.box_top_settings{
>div{
select.dropdown{
width: 130px;
}
}
&:nth-child(3){
justify-content: space-between;
}
}
table tr td{
&:first-child{
width: 140px;
}
}
}
// Box 6
&#div_statistic_pages_state{
table tr td{
&:first-child{
width: 140px;
}
}
}
}
}