File diff suppressed because one or more lines are too long
@@ -75,10 +75,10 @@ class indicatorsCalculator
|
||||
private $userGroupReportingMetadata = array("tableName" => "USR_REPORTING", "keyField" => "PRO_UID");
|
||||
private $processCategoryReportingMetadata = array("tableName" => "PRO_REPORTING", "keyField" => "PRO_UID");
|
||||
|
||||
private $peiCostFormula = "SUM(TOTAL_CASES_OUT * CONFIGURED_TASK_TIME - TOTAL_TIME_BY_TASK * USER_HOUR_COST)";
|
||||
private $peiCostFormula = "USER_HOUR_COST * SUM(case when TOTAL_TIME_BY_TASK >0 then TOTAL_CASES_OUT * CONFIGURED_TASK_TIME - TOTAL_TIME_BY_TASK * USER_HOUR_COST else 0 end)";
|
||||
private $peiFormula = "SUM(TOTAL_CASES_OUT*CONFIGURED_TASK_TIME) / SUM(SDV_TIME * TOTAL_CASES_OUT + TOTAL_TIME_BY_TASK)";
|
||||
|
||||
private $ueiCostFormula = "SUM(TOTAL_CASES_OUT * CONFIGURED_TASK_TIME - TOTAL_TIME_BY_TASK * USER_HOUR_COST)";
|
||||
private $ueiCostFormula = " USER_HOUR_COST * SUM(case when TOTAL_TIME_BY_TASK >0 then TOTAL_CASES_OUT * CONFIGURED_TASK_TIME - TOTAL_TIME_BY_TASK * USER_HOUR_COST else 0 end)";
|
||||
private $ueiFormula = "SUM(TOTAL_CASES_OUT * CONFIGURED_TASK_TIME) / SUM(TOTAL_TIME_BY_TASK * USER_HOUR_COST)";
|
||||
|
||||
public function getSkewOfDataDistribution($table, $field) {
|
||||
@@ -288,7 +288,6 @@ class indicatorsCalculator
|
||||
order by $this->ueiFormula DESC
|
||||
) i
|
||||
join (SELECT @curRow := 0) order_table";
|
||||
|
||||
$retval = $this->pdoExecutor($sqlString, $params);
|
||||
//$returnValue = $this->propelExecutor($sqlString);
|
||||
return $retval;
|
||||
@@ -653,7 +652,7 @@ class indicatorsCalculator
|
||||
$db = ";dbname=".$workSpace->dbName;
|
||||
$user = $workSpace->dbUser;
|
||||
$pass = $workSpace->dbPass;
|
||||
$connString = "mysql:$host$port$db;";
|
||||
$connString = "mysql:$host$port$db;charset=utf8;";
|
||||
|
||||
$dbh = new PDO($connString, $user, $pass);
|
||||
return $dbh;
|
||||
|
||||
@@ -15,6 +15,16 @@ ViewDashboardHelper.prototype.stringIfNull = function (val){
|
||||
return val;
|
||||
};
|
||||
|
||||
ViewDashboardHelper.prototype.zeroIfNull = function (val) {
|
||||
var retval = 0;
|
||||
if(val === null || val === undefined || val === "") {
|
||||
retval = 0;
|
||||
} else {
|
||||
retval = val;
|
||||
}
|
||||
return retval;
|
||||
};
|
||||
|
||||
ViewDashboardHelper.prototype.labelIfEmpty = function (val){
|
||||
if(val === null || val == undefined || val == ""){
|
||||
val = "(No Name)";
|
||||
|
||||
@@ -87,37 +87,20 @@ ViewDashboardPresenter.prototype.dashboardIndicatorsViewModel = function(data) {
|
||||
: "normal";
|
||||
|
||||
//rounding
|
||||
newObject.comparative = Math.round(newObject.comparative*1000)/1000;
|
||||
newObject.comparative = Math.round(newObject.comparative*100)/100;
|
||||
newObject.comparative = ((newObject.comparative > 0)? "+": "") + newObject.comparative;
|
||||
|
||||
newObject.percentComparative = (newObject.percentComparative != '--')
|
||||
? '(' + newObject.percentComparative + '%)'
|
||||
: "";
|
||||
newObject.percentComparative = (newObject.comparative == 0)
|
||||
? "(0%)"
|
||||
: newObject.percentComparative;
|
||||
|
||||
|
||||
newObject.value = (newObject.category == "normal")
|
||||
? Math.round(newObject.value) + ""
|
||||
: Math.round(newObject.value*100)/100 + ""
|
||||
|
||||
newObject.value = that.roundedIndicatorValue(newObject.value);
|
||||
newObject.favorite = 0;
|
||||
|
||||
newObject.percentageOverdueWidth = Math.round(newObject.percentageOverdue);
|
||||
newObject.percentageAtRiskWidth = Math.round(newObject.percentageAtRisk);
|
||||
//to be sure that percentages sum up to 100 (the rounding will lose decimals)%
|
||||
newObject.percentageOnTimeWidth = 100 - newObject.percentageOverdueWidth - newObject.percentageAtRiskWidth;
|
||||
|
||||
newObject.percentageOverdueToShow = ((newObject.percentageOverdue == 0 ||newObject.percentageOverdue == null )
|
||||
? ""
|
||||
: newObject.percentageOverdueWidth + "%");
|
||||
|
||||
newObject.percentageAtRiskToShow = ((newObject.percentageAtRisk == 0 || newObject.percentageAtRisk == null)
|
||||
? ""
|
||||
: newObject.percentageAtRiskWidth + "%");
|
||||
|
||||
newObject.percentageOnTimeToShow = ((newObject.percentageOnTime == 0 || newObject.percentageOnTime == 0)
|
||||
? G_STRING['ID_INBOX'] + ' ' + G_STRING['ID_EMPTY']
|
||||
: newObject.percentageOnTimeWidth + "%");
|
||||
|
||||
that.setStatusButtonWidthsAndDisplayValues(newObject);
|
||||
newObject.overdueVisibility = (newObject.percentageOverdueWidth > 0) ? "visible" : "hidden";
|
||||
newObject.atRiskVisibility = (newObject.percentageAtRiskWidth > 0) ? "visible" : "hidden";
|
||||
newObject.onTimeVisibility = (newObject.percentageOnTimeWidth > 0) ? "visible" : "hidden";
|
||||
@@ -135,6 +118,93 @@ ViewDashboardPresenter.prototype.dashboardIndicatorsViewModel = function(data) {
|
||||
return returnList;
|
||||
};
|
||||
|
||||
|
||||
ViewDashboardPresenter.prototype.roundedIndicatorValue = function (value) {
|
||||
if (value == 0) {
|
||||
return "0";
|
||||
}
|
||||
/*if (value > 0 && value < 0.1) {
|
||||
return "<0.1";
|
||||
}*/
|
||||
return Math.round(value*100)/100 + "";
|
||||
|
||||
}
|
||||
|
||||
ViewDashboardPresenter.prototype.setStatusButtonWidthsAndDisplayValues = function (data) {
|
||||
var minPercent = 10;
|
||||
var barsLessThanMin = [];
|
||||
var barsNormal = [];
|
||||
|
||||
var classifyBar = function (bar) {
|
||||
if (bar.valueRounded <= minPercent && bar.valueRounded > 0) {
|
||||
barsLessThanMin.push (bar);
|
||||
} else {
|
||||
barsNormal.push (bar)
|
||||
}
|
||||
}
|
||||
|
||||
var atRisk = {
|
||||
type : "atRisk",
|
||||
value : data.percentageAtRisk,
|
||||
valueRounded : Math.round(data.percentageAtRisk)
|
||||
};
|
||||
|
||||
var overdue = {
|
||||
type : "overdue",
|
||||
value : data.percentageOverdue,
|
||||
valueRounded : Math.round(data.percentageOverdue)
|
||||
};
|
||||
|
||||
var onTime = {
|
||||
type : "onTime",
|
||||
value : data.percentageOnTime,
|
||||
valueRounded : Math.round(data.percentageOnTime)
|
||||
};
|
||||
|
||||
atRisk.valueToShow = (this.helper.zeroIfNull(atRisk.valueRounded) == 0)
|
||||
? ""
|
||||
: atRisk.valueRounded + "%";
|
||||
|
||||
overdue.valueToShow = (this.helper.zeroIfNull(overdue.valueRounded) == 0)
|
||||
? ""
|
||||
: overdue.valueRounded + "%";
|
||||
|
||||
onTime.valueToShow = (this.helper.zeroIfNull(onTime.valueRounded) == 0)
|
||||
? ""
|
||||
: onTime.valueRounded + "%";
|
||||
|
||||
classifyBar(atRisk);
|
||||
classifyBar(overdue);
|
||||
classifyBar(onTime);
|
||||
|
||||
var widthToDivide = 100 - barsLessThanMin.length * minPercent;
|
||||
var normalsSum = 0;
|
||||
$.each (barsNormal, function() {
|
||||
normalsSum += this.valueRounded;
|
||||
});
|
||||
|
||||
$.each(barsNormal, function(key, bar) {
|
||||
bar.width = widthToDivide * bar.valueRounded / normalsSum;
|
||||
});
|
||||
|
||||
$.each(barsLessThanMin, function(key, bar) {
|
||||
bar.width = minPercent;
|
||||
});
|
||||
|
||||
if (atRisk.valueToShow == 0 && overdue.valueToShow == 0 && onTime.valueToShow == 0) {
|
||||
onTime.valueToShow = G_STRING['ID_INBOX'] + ' ' + G_STRING['ID_EMPTY'];
|
||||
onTime.width = 100;
|
||||
}
|
||||
|
||||
data.percentageOverdueWidth = overdue.width;
|
||||
data.percentageOnTimeWidth = onTime.width;
|
||||
data.percentageAtRiskWidth = atRisk.width;
|
||||
|
||||
data.percentageOverdueToShow = overdue.valueToShow;
|
||||
data.percentageAtRiskToShow = atRisk.valueToShow;
|
||||
data.percentageOnTimeToShow = onTime.valueToShow;
|
||||
}
|
||||
|
||||
/*++++++++ FIRST LEVEL INDICATOR DATA +++++++++++++*/
|
||||
ViewDashboardPresenter.prototype.getIndicatorData = function (indicatorId, indicatorType, initDate, endDate) {
|
||||
var that = this;
|
||||
@@ -184,8 +254,8 @@ ViewDashboardPresenter.prototype.peiViewModel = function(data) {
|
||||
};
|
||||
var newObject = that.helper.merge(originalObject, {}, map);
|
||||
graphData.push(newObject);
|
||||
originalObject.efficiencyIndexToShow = that.roundedIndicatorValue(originalObject.efficiencyIndex);
|
||||
originalObject.inefficiencyCostToShow = Math.round(originalObject.inefficiencyCost);
|
||||
originalObject.efficiencyIndexToShow = Math.round(originalObject.efficiencyIndex * 100) / 100;
|
||||
originalObject.indicatorId = data.id;
|
||||
originalObject.json = JSON.stringify(originalObject);
|
||||
});
|
||||
@@ -197,7 +267,7 @@ ViewDashboardPresenter.prototype.peiViewModel = function(data) {
|
||||
retval.dataToDraw = this.adaptGraphData(graphData);
|
||||
|
||||
retval.inefficiencyCostToShow = Math.round(retval.inefficiencyCost);
|
||||
retval.efficiencyIndexToShow = Math.round(retval.efficiencyIndex * 100) / 100;
|
||||
retval.efficiencyIndexToShow = that.roundedIndicatorValue(retval.efficiencyIndex);
|
||||
return retval;
|
||||
};
|
||||
|
||||
@@ -215,7 +285,7 @@ ViewDashboardPresenter.prototype.ueiViewModel = function(data) {
|
||||
var newObject = that.helper.merge(originalObject, {}, map);
|
||||
graphData.push(newObject);
|
||||
originalObject.inefficiencyCostToShow = Math.round(originalObject.inefficiencyCost);
|
||||
originalObject.efficiencyIndexToShow = Math.round(originalObject.efficiencyIndex * 100) / 100;
|
||||
originalObject.efficiencyIndexToShow = that.roundedIndicatorValue(originalObject.efficiencyIndex);
|
||||
originalObject.indicatorId = data.id;
|
||||
originalObject.json = JSON.stringify(originalObject);
|
||||
});
|
||||
@@ -226,7 +296,7 @@ ViewDashboardPresenter.prototype.ueiViewModel = function(data) {
|
||||
retval.dataToDraw = this.adaptGraphData(graphData);
|
||||
|
||||
retval.inefficiencyCostToShow = Math.round(retval.inefficiencyCost);
|
||||
retval.efficiencyIndexToShow = Math.round(retval.efficiencyIndex * 100) / 100;
|
||||
retval.efficiencyIndexToShow = that.roundedIndicatorValue(retval.efficiencyIndex);
|
||||
return retval;
|
||||
};
|
||||
|
||||
@@ -344,7 +414,7 @@ ViewDashboardPresenter.prototype.returnIndicatorSecondLevelPei = function(modelD
|
||||
};
|
||||
var newObject = that.helper.merge(originalObject, {}, map);
|
||||
originalObject.inefficiencyCostToShow = Math.round(originalObject.inefficiencyCost);
|
||||
originalObject.efficiencyIndexToShow = Math.round(originalObject.efficiencyIndex * 100) / 100;
|
||||
originalObject.efficiencyIndexToShow = that.roundedIndicatorValue(originalObject.efficiencyIndex);
|
||||
originalObject.deviationTimeToShow = Math.round(originalObject.deviationTime);
|
||||
originalObject.rankToShow = originalObject.rank + "/" + modelData.length;
|
||||
graphData.push(newObject);
|
||||
@@ -371,7 +441,7 @@ ViewDashboardPresenter.prototype.returnIndicatorSecondLevelUei = function(modelD
|
||||
};
|
||||
var newObject = that.helper.merge(originalObject, {}, map);
|
||||
originalObject.inefficiencyCostToShow = Math.round(originalObject.inefficiencyCost);
|
||||
originalObject.efficiencyIndexToShow = Math.round(originalObject.efficiencyIndex * 100) / 100;
|
||||
originalObject.efficiencyIndexToShow = that.roundedIndicatorValue(originalObject.efficiencyIndex);
|
||||
originalObject.deviationTimeToShow = Math.round(originalObject.deviationTime);
|
||||
originalObject.rankToShow = originalObject.rank + "/" + modelData.length;
|
||||
graphData.push(newObject);
|
||||
|
||||
@@ -195,6 +195,18 @@ WidgetBuilder.prototype.getIndicatorLoadedById = function (searchedIndicatorId)
|
||||
return retval;
|
||||
}
|
||||
|
||||
WidgetBuilder.prototype.getDashboardLoadedById = function (searchedDashboardId) {
|
||||
var retval = null;
|
||||
for (key in window.loadedDashboards) {
|
||||
var dashboard = window.loadedDashboards[key];
|
||||
if (dashboard.id == searchedDashboardId) {
|
||||
retval = dashboard;
|
||||
}
|
||||
}
|
||||
if (retval == null) { throw new Error(searchedIndicatorId + " was not found in the loaded indicators.");}
|
||||
return retval;
|
||||
}
|
||||
|
||||
WidgetBuilder.prototype.buildGeneralIndicatorFirstView = function (indicatorData) {
|
||||
_.templateSettings.variable = "indicator";
|
||||
var template = _.template ($("script.generalIndicatorMainPanel").html());
|
||||
@@ -223,6 +235,7 @@ model = new ViewDashboardModel(token, urlProxy, ws[3]);
|
||||
presenter = new ViewDashboardPresenter(model);
|
||||
|
||||
window.loadedIndicators = []; //updated in das-title-selector.click->fillIndicatorWidgets, ready->fillIndicatorWidgets
|
||||
window.loadedDashboards = [];
|
||||
window.currentEntityData = null;
|
||||
window.currentIndicator = null;//updated in ind-button-selector.click ->loadIndicator, ready->loadIndicator
|
||||
window.currentDashboardId = null;
|
||||
@@ -354,6 +367,7 @@ $(document).ready(function() {
|
||||
.done(function(indicatorsVM) {
|
||||
fillIndicatorWidgets(indicatorsVM);
|
||||
loadIndicator(getFavoriteIndicator().id, defaultInitDate(), defaultEndDate());
|
||||
setActiveDashboard();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -424,13 +438,23 @@ var selectedOrderOfDetailList = function () {
|
||||
|
||||
var selectDefaultMonthAndYear = function () {
|
||||
var compareDate = new Date();
|
||||
compareDate.setDate(1);
|
||||
compareDate.setMonth(compareDate.getMonth() - 1);
|
||||
var compareMonth = compareDate.getMonth() + 1;
|
||||
var compareYear = compareDate.getYear();
|
||||
var compareYear = compareDate.getFullYear();
|
||||
$('#month').val(compareMonth);
|
||||
$('#year').val(compareYear);
|
||||
}
|
||||
|
||||
var setActiveDashboard = function () {
|
||||
var builder = new WidgetBuilder();
|
||||
var dashboard = builder.getDashboardLoadedById(window.currentDashboardId);
|
||||
if (dashboard == null) {
|
||||
return;
|
||||
}
|
||||
$('#titleH4').text(dashboard.title);
|
||||
}
|
||||
|
||||
var initialDraw = function () {
|
||||
selectDefaultMonthAndYear();
|
||||
presenter.getUserDashboards(pageUserId)
|
||||
@@ -442,6 +466,7 @@ var initialDraw = function () {
|
||||
.done(function(indicatorsVM) {
|
||||
fillIndicatorWidgets(indicatorsVM);
|
||||
loadIndicator(getFavoriteIndicator().id, defaultInitDate(), defaultEndDate());
|
||||
setActiveDashboard();
|
||||
});
|
||||
});
|
||||
}
|
||||
@@ -514,6 +539,7 @@ var fillDashboardsList = function (presenterData) {
|
||||
}
|
||||
_.templateSettings.variable = "dashboard";
|
||||
var template = _.template ($("script.dashboardButtonTemplate").html())
|
||||
window.loadedDashboards = presenterData;
|
||||
for (key in presenterData) {
|
||||
var dashboard = presenterData[key];
|
||||
$('#dashboardsList').append(template(dashboard));
|
||||
@@ -624,7 +650,7 @@ var fillSpecialIndicatorFirstView = function(presenterData) {
|
||||
graph: {
|
||||
allowDrillDown:false,
|
||||
allowTransition:true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
gapWidth:0.3,
|
||||
useShadows: true,
|
||||
@@ -648,10 +674,11 @@ var fillSpecialIndicatorFirstView = function(presenterData) {
|
||||
axisY:{ showAxis: true, label: G_STRING['ID_COSTS']},
|
||||
gridLinesX:false,
|
||||
gridLinesY:true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: true,
|
||||
paddingTop: 50
|
||||
paddingTop: 50,
|
||||
colorPalette: ['#5486bf','#bf8d54','#acb30c','#7a0c0c','#bc0000','#906090','#007efb','#62284a','#0c7a7a','#74a9a9']
|
||||
}
|
||||
};
|
||||
|
||||
@@ -720,7 +747,7 @@ var fillSpecialIndicatorSecondView = function(presenterData) {
|
||||
graph: {
|
||||
allowTransition: false,
|
||||
allowDrillDown: true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: false,
|
||||
gridLinesX: true,
|
||||
@@ -728,7 +755,8 @@ var fillSpecialIndicatorSecondView = function(presenterData) {
|
||||
area: {visible: false, css:"area"},
|
||||
axisX:{ showAxis: true, label: G_STRING['ID_USER'] },
|
||||
axisY:{ showAxis: true, label: G_STRING['ID_COSTS'] },
|
||||
showErrorBars: true
|
||||
showErrorBars: true,
|
||||
colorPalette: ['#5486bf','#bf8d54','#acb30c','#7a0c0c','#bc0000','#906090','#007efb','#62284a','#0c7a7a','#74a9a9']
|
||||
|
||||
}
|
||||
};
|
||||
@@ -809,7 +837,7 @@ var fillGeneralIndicatorFirstView = function (presenterData) {
|
||||
graph: {
|
||||
allowTransition: false,
|
||||
allowDrillDown: true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: false,
|
||||
gridLinesX: true,
|
||||
@@ -831,7 +859,7 @@ var fillGeneralIndicatorFirstView = function (presenterData) {
|
||||
graph: {
|
||||
allowTransition: false,
|
||||
allowDrillDown: true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: false,
|
||||
gridLinesX: true,
|
||||
@@ -857,7 +885,7 @@ var fillGeneralIndicatorFirstView = function (presenterData) {
|
||||
axisY:{ showAxis: true, label: G_STRING.ID_TIME_HOURS },
|
||||
gridLinesX:false,
|
||||
gridLinesY:true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: true,
|
||||
paddingTop: 50,
|
||||
@@ -879,7 +907,7 @@ var fillGeneralIndicatorFirstView = function (presenterData) {
|
||||
axisY:{ showAxis: true, label: G_STRING.ID_TIME_HOURS },
|
||||
gridLinesX:false,
|
||||
gridLinesY:true,
|
||||
showTip: true,
|
||||
showTip: false,
|
||||
allowZoom: false,
|
||||
useShadows: true,
|
||||
paddingTop: 50,
|
||||
|
||||
@@ -503,7 +503,7 @@ Ext.onReady( function() {
|
||||
enableTabScroll : true,
|
||||
//anchor : '98%',
|
||||
width : '100%',
|
||||
height : 260,
|
||||
height : 160,
|
||||
defaults : {
|
||||
autoScroll :true
|
||||
},
|
||||
@@ -733,7 +733,7 @@ var addTab = function (flag) {
|
||||
width : "100%",
|
||||
items : [
|
||||
new Ext.Panel({
|
||||
height : 230,
|
||||
height : 130,
|
||||
width : "100%",
|
||||
border : true,
|
||||
bodyStyle : 'padding:10px',
|
||||
@@ -1156,12 +1156,12 @@ var saveAllIndicators = function (DAS_UID) {
|
||||
|
||||
data[field] = value.trim();
|
||||
}
|
||||
saveDashboardIndicator(data);
|
||||
saveDashboardIndicator(data, fieldsTab[0].id);
|
||||
}
|
||||
window.location = 'dashboardList';
|
||||
};
|
||||
|
||||
var saveDashboardIndicator = function (options) {
|
||||
var saveDashboardIndicator = function (options, id) {
|
||||
var data = {};
|
||||
data["DAS_UID"] = options['DAS_UID'];
|
||||
data["DAS_IND_TYPE"] = options['DAS_IND_TYPE'];
|
||||
@@ -1184,7 +1184,7 @@ var saveDashboardIndicator = function (options) {
|
||||
},
|
||||
data: JSON.stringify(data),
|
||||
success: function (response) {
|
||||
var jsonResp = Ext.util.JSON.decode(response.responseText);
|
||||
Ext.getCmp(id).setValue(response);
|
||||
},
|
||||
failure: function (response) {
|
||||
var jsonResp = Ext.util.JSON.decode(response.responseText);
|
||||
|
||||
@@ -31,21 +31,41 @@
|
||||
var oClientWinSize = getClientWindowSize();
|
||||
|
||||
var autoResizeScreen = function () {
|
||||
var dashboardFrame;
|
||||
var containerList1, containerList2;
|
||||
|
||||
dashboardFrame = document.getElementById('dashboardFrame');
|
||||
if (dashboardFrame) {
|
||||
height = getClientWindowSize().height-90;
|
||||
if (typeof dashboardFrame.style != 'undefined') {
|
||||
dashboardFrame.style.height = height;
|
||||
}
|
||||
if (typeof dashboardFrame.contentWindow.document != 'undefined') {
|
||||
dashboardFrame = dashboardFrame.contentWindow.document.getElementById('dashboardFrame');
|
||||
if (dashboardFrame && typeof dashboardFrame.style != 'undefined') {
|
||||
dashboardFrame.style.height = height-5;
|
||||
}
|
||||
dashboardFrame = document.getElementById('dashboardFrame');
|
||||
|
||||
containerList1 = document.getElementById("pm_header");
|
||||
if (document.getElementById("mainMenuBG") &&
|
||||
document.getElementById("mainMenuBG").parentNode &&
|
||||
document.getElementById("mainMenuBG").parentNode.parentNode &&
|
||||
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode &&
|
||||
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode
|
||||
){
|
||||
containerList2 = document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode;
|
||||
}
|
||||
if (containerList1 === containerList2) {
|
||||
height = oClientWinSize.height - containerList1.clientHeight;
|
||||
dashboardFrame.style.height = height;
|
||||
if (dashboardFrame.height ) {
|
||||
dashboardFrame.height = height;
|
||||
}
|
||||
} else {
|
||||
setTimeout('autoResizeScreen()', 2000);
|
||||
if (dashboardFrame) {
|
||||
height = getClientWindowSize().height-90;
|
||||
if (typeof dashboardFrame.style != 'undefined') {
|
||||
dashboardFrame.style.height = height;
|
||||
}
|
||||
if (typeof dashboardFrame.contentWindow.document != 'undefined') {
|
||||
dashboardFrame = dashboardFrame.contentWindow.document.getElementById('dashboardFrame');
|
||||
if (dashboardFrame && typeof dashboardFrame.style != 'undefined') {
|
||||
dashboardFrame.style.height = height-5;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
setTimeout('autoResizeScreen()', 2000);
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -14,9 +14,6 @@
|
||||
<link href="/css/general.css" rel="stylesheet">
|
||||
<link href="/css/dashboardStylesForIE.css" rel="stylesheet">
|
||||
|
||||
<link href='http://fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css'>
|
||||
<link href='http://fonts.googleapis.com/css?family=Chivo:400,400italic' rel='stylesheet' type='text/css'>
|
||||
|
||||
<script type="text/javascript" src="/js/jquery/jquery-1.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="/js/jquery/jquery-ui-1.11.2.min.js" ></script>
|
||||
<script src="/lib/pmdynaform/libs/bootstrap-3.1.1/js/bootstrap.min.js"></script>
|
||||
@@ -65,7 +62,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-footer text-center ind-title-selector">
|
||||
<%- indicator.title %>
|
||||
<div class="ellipsis"><%- indicator.title %></div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
@@ -108,7 +105,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-footer text-center ind-title-selector" style="clear:both; color:#606368;">
|
||||
<%- indicator.title %>
|
||||
<div class="ellipsis"><%- indicator.title %></div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
@@ -139,9 +136,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-footer text-center ind-title-selector">
|
||||
<span>
|
||||
<%- indicator.title %>
|
||||
</span>
|
||||
<div class="ellipsis"><%- indicator.title %></div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
@@ -360,7 +355,7 @@
|
||||
<i class="fa fa-bar-chart fa-2x"></i>
|
||||
<i class="fa fa-chevron-down fa-1x"></i>
|
||||
</a>
|
||||
<h4 id="titleH4" class="header-dashboard">{translate label="ID_MANAGERS_DASHBOARDS"}</h4>
|
||||
<h4 id="titleH4" class="header-dashboard"></h4>
|
||||
<div class="pull-right dashboard-right container-fluid">
|
||||
|
||||
<div class="row pull-left">
|
||||
@@ -375,7 +370,7 @@
|
||||
<script>
|
||||
now = new Date();
|
||||
anio = now.getFullYear();
|
||||
for(a=anio;a>=anio-7;a--){
|
||||
for(a=anio;a>=anio-10;a--){
|
||||
document.write('<option value="'+a+'">'+a+'</option>');
|
||||
}
|
||||
</script>
|
||||
@@ -435,7 +430,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="relatedLabel" style="clear:both; visibility:hidden;">
|
||||
<div id="relatedLabel" class="col-lg-12 col-md-12 bottom" style="clear:both; visibility:hidden;">
|
||||
<div>
|
||||
<center><h3></h3></center>
|
||||
</div>
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
.grid-stack-item[data-gs-x="2"] { left: 16.66666667% }
|
||||
.grid-stack-item[data-gs-x="1"] { left: 8.33333333% }
|
||||
|
||||
@media (max-width: 768px) {
|
||||
@media (max-width: 1000px) {
|
||||
.grid-stack-item {
|
||||
position: relative !important;
|
||||
width: auto !important;
|
||||
|
||||
@@ -4,6 +4,36 @@
|
||||
* For details, see http://www.apache.org/licenses/LICENSE-2.0.
|
||||
*/
|
||||
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Montserrat-Regular'), url('/fonts/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2') format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Montserrat-Bold'), url('/fonts/IQHow_FEYlDC4Gzy_m8fcoWiMMZ7xLd792ULpGE4W_Y.woff2') format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Chivo';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Chivo'), local('Chivo-Regular'), url('/fonts/UZPPER-oWTCIdBggEtZvZA.woff2') format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Chivo';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Chivo-Italic'), url('/fonts/Sj1QqLyoKuAyWOdnG3PRjw.woff2') format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: #f5f5f5;
|
||||
font-size: 15px;
|
||||
@@ -336,7 +366,8 @@ table.dataTable thead .sorting:after {
|
||||
.panel-red .panel-heading {
|
||||
border-color: #e14333;
|
||||
color: #fff;
|
||||
background-color: #e14333;
|
||||
/*background-color: #e14333;*/
|
||||
background-color: #EA3C53;
|
||||
}
|
||||
|
||||
.panel-red a {
|
||||
|
||||
Binary file not shown.
BIN
workflow/public_html/fonts/Sj1QqLyoKuAyWOdnG3PRjw.woff2
Normal file
BIN
workflow/public_html/fonts/Sj1QqLyoKuAyWOdnG3PRjw.woff2
Normal file
Binary file not shown.
BIN
workflow/public_html/fonts/UZPPER-oWTCIdBggEtZvZA.woff2
Normal file
BIN
workflow/public_html/fonts/UZPPER-oWTCIdBggEtZvZA.woff2
Normal file
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user