Merge luxembourg-dev improvements into standard core

- Remove deprecated features: account/login system, scenarios, food module, offset/payment, estimation pages
- Remove Italian language support and old backup files
- Update core files: index.php (error reporting, bookmark include, scenario handlers)
- Update _front_controller.php (remove deprecated routes, add extended page)
- Update _content.php (remove offset link, remove scenario panel, remove estimation nav)
- Add new files from luxembourg-dev:
  - _extended.php (informational pages)
  - includes/_functions_bookmark.php (enhanced bookmark handling)
  - language files for bookmarks and survey module (de_DE and en_GB)
- Maintain full compatibility with client directories (jugend, waldorf-jugend-dev, xx_klima-arena-jugend)
This commit is contained in:
2026-03-18 16:08:15 +01:00
parent 1db0cbecc7
commit 42c2c74acf
68 changed files with 605 additions and 25479 deletions

View File

@ -1,144 +0,0 @@
<script type="text/javascript">
var chartCalcAvoidance = AmCharts.makeChart("chart-area-avoidance", {
"rotate": false,
"precision": 2,
"addClassNames": "true",
"type": "serial",
"fontFamily": "Helvetica",
"categoryField": "category",
"startDuration": 0,
"columnSpacing": 15,
"trendLines": [],
"dataProvider":[
{
"category": "<?php echo TXT_RESULT_SELF; ?>",
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_food']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_consumption']); ?>
},
{
"category": "<?php echo TXT_RESULT_OTHER; ?>",
"<?php echo TXT_CHART_LIVING_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_consumption']); ?>
}
],
"graphs": [
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['living']; ?>",
"id": "AmGraph-self-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['mobility']; ?>",
"id": "AmGraph-self-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['food']; ?>",
"id": "AmGraph-self-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['consumption']; ?>",
"id": "AmGraph-self-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['living']; ?>",
"id": "AmGraph-other-compensation",
"color": "#ffffff",
"labelText": "[[value]] t",
// "newStack": true,
"title": "<?php echo TXT_CHART_LIVING_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['mobility']; ?>",
"id": "AmGraph-other-ee",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['consumption']; ?>",
"id": "AmGraph-other-oeko",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
}
],
// EOF graphs
// "guides": [],
"valueAxes": [{
"maximum": <?php echo getMyResultChart($_SESSION['emission']['td']['total_max']); ?>,
"id": "axis-1",
"stackType": "regular",
"title": "<?php echo TXT_CHART_VALUE_AXIS; ?>",
// "totalText": "[[total]]",
"labelsEnabled": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.1
}],
"categoryAxis": {
"gridPosition": "start",
"boldLabels": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.2
},
"allLabels": [],
"balloon": {
"fontSize": 14,
"cornerRadius": 0,
"borderThickness": 1,
"fillAlpha": 0.9
}
});
</script>

View File

@ -1,208 +0,0 @@
<script type="text/javascript">
var chartCalcComplete = AmCharts.makeChart("chart-area-complete", {
"rotate": false,
"precision": 2,
"addClassNames": "true",
"type": "serial",
"fontFamily": "Helvetica",
"categoryField": "category",
"startDuration": 0,
"columnSpacing": 15,
"trendLines": [],
"dataProvider":[
{
"category": "<?php echo TXT_CHART_VALUE_AXIS_CO2_AND_SELF; ?>",
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_public_consumption']); ?>,
"<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_living']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_living']); ?>
},
{
"category": "<?php echo TXT_RESULT_OTHER; ?>",
"<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_MOBILITY_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_living']); ?>
}
],
"graphs": [
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['public-consumption']; ?>",
"id": "AmGraph-public-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['consumption']; ?>",
"id": "AmGraph-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['food']; ?>",
"id": "AmGraph-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['mobility']; ?>",
"id": "AmGraph-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['living']; ?>",
"id": "AmGraph-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['consumption']; ?>",
"id": "AmGraph-self-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['food']; ?>",
"id": "AmGraph-self-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['mobility']; ?>",
"id": "AmGraph-self-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['living']; ?>",
"id": "AmGraph-self-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['consumption']; ?>",
"id": "AmGraph-other-oeko",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['mobility']; ?>",
"id": "AmGraph-other-ee",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['living']; ?>",
"id": "AmGraph-other-compensation",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_OTHER; ?>"
}
],
// EOF graphs
// "guides": [],
"valueAxes": [{
"maximum": <?php echo getMyResultChart($_SESSION['emission']['td']['total_max']); ?>,
"id": "axis-1",
"stackType": "regular",
"title": "<?php echo TXT_CHART_VALUE_AXIS; ?>",
// "totalText": "[[total]]",
"labelsEnabled": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.1
}],
"categoryAxis": {
"gridPosition": "start",
"boldLabels": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.2
},
"allLabels": [],
"balloon": {
"fontSize": 14,
"cornerRadius": 0,
"borderThickness": 1,
"fillAlpha": 0.9
}
});
</script>

View File

@ -1,287 +0,0 @@
<script type="text/javascript">
var chartScenarioComplete = AmCharts.makeChart("chart-scenario-complete-area", {
"rotate": false,
"precision": 2,
"addClassNames": "true",
"type": "serial",
"fontFamily": "Helvetica",
"categoryField": "category",
"startDuration": 0,
"columnSpacing": 15,
"trendLines": [],
"dataProvider":[{
"category": "<?php echo TXT_TIME_PERIOD_TD; ?>",
<?php if($customer_settings['display']['chart_quota2']) echo '"'.TXT_CHART_QUOTA_2.'": '.getMyResultChart(QUOTA_2_TD).','; ?>
// "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_public_consumption']); ?>,
// "<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_consumption']); ?>,
// "<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_food']); ?>,
// "<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_mobility']); ?>,
// "<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_living']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_public_consumption']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['td']['total_living']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_MOBILITY_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['td']['total_living']); ?>
},
<?php if($customer_settings['display']['st'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_ST; ?>",
<?php if($customer_settings['display']['chart_quota2']) echo '"'.TXT_CHART_QUOTA_2.'": '.getMyResultChart(QUOTA_2_ST).','; ?>
// "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_public_consumption']); ?>,
// "<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_consumption']); ?>,
// "<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_food']); ?>,
// "<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_mobility']); ?>,
// "<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_living']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['st']['total_public_consumption']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['st']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['st']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['st']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['st']['total_living']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['st']['total_consumption']); ?>,
"<?php echo TXT_CHART_MOBILITY_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['st']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['st']['total_living']); ?>
},
<?php endif; ?>
<?php if($customer_settings['display']['mt'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_MT; ?>",
<?php if($customer_settings['display']['chart_quota2']) echo '"'.TXT_CHART_QUOTA_2.'": '.getMyResultChart(QUOTA_2_MT).','; ?>
// "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_public_consumption']); ?>,
// "<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_consumption']); ?>,
// "<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_food']); ?>,
// "<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_mobility']); ?>,
// "<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_living']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['mt']['total_public_consumption']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['mt']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['mt']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['mt']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['mt']['total_living']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['mt']['total_consumption']); ?>,
"<?php echo TXT_CHART_MOBILITY_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['mt']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_OTHER; ?>": <?php echo getMyResultChart($_SESSION['emission_other']['mt']['total_living']); ?>
},
<?php endif; ?>
<?php if($customer_settings['display']['lt'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_LT; ?>",
<?php if($customer_settings['display']['chart_quota2']) echo '"'.TXT_CHART_QUOTA_2.'": '.getMyResultChart(QUOTA_2_LT).','; ?>
// "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_public_consumption']); ?>,
// "<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_consumption']); ?>,
// "<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_food']); ?>,
// "<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_mobility']); ?>,
// "<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_living']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['lt']['total_public_consumption']); ?>,
"<?php echo TXT_CHART_CONSUMPTION_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['lt']['total_consumption']); ?>,
"<?php echo TXT_CHART_FOOD_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['lt']['total_food']); ?>,
"<?php echo TXT_CHART_MOBILITY_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['lt']['total_mobility']); ?>,
"<?php echo TXT_CHART_LIVING_SELF; ?>": <?php echo getMyResultChart($_SESSION['emission_self']['lt']['total_living']); ?>
}
<?php endif; ?>
],
"graphs": [
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['public-consumption']; ?>",
"id": "AmGraph-public-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['consumption']; ?>",
"id": "AmGraph-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['food']; ?>",
"id": "AmGraph-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['mobility']; ?>",
"id": "AmGraph-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY; ?>"
}, {
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['living']; ?>",
"id": "AmGraph-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['public-consumption']; ?>",
"id": "AmGraph-self-public-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['consumption']; ?>",
"id": "AmGraph-self-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['food']; ?>",
"id": "AmGraph-self-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['mobility']; ?>",
"id": "AmGraph-self-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['living']; ?>",
"id": "AmGraph-self-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_SELF; ?>"
},
{
"newStack": true,
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['consumption']; ?>",
"id": "AmGraph-other-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['mobility']; ?>",
"id": "AmGraph-other-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['living']; ?>",
"id": "AmGraph-other-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineColor": "<?php echo $customer_settings['css']['color']['quota2']; ?>",
"lineThickness": 4,
"lineAlpha": 0.4,
"id": "AmGraph-quota2",
"title": "<?php echo TXT_CHART_QUOTA_2; ?>",
"type": "step",
"bullet":"square",
"bulletAlpha":1,
"bulletSize":8,
"bulletBorderAlpha":0,
"valueField": "<?php echo TXT_CHART_QUOTA_2; ?>"
}
],
// EOF graphs
// "guides": [],
"valueAxes": [{
"id": "axis-1",
"stackType": "regular",
"title": "<?php echo TXT_CHART_VALUE_AXIS; ?>",
// "totalText": "[[total]]",
"labelsEnabled": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.1
}],
"categoryAxis": {
"gridPosition": "start",
"boldLabels": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.2
},
"allLabels": [],
"balloon": {
"fontSize": 14,
"cornerRadius": 0,
"borderThickness": 1,
"fillAlpha": 0.9
}
});
</script>

View File

@ -1,245 +0,0 @@
<script type="text/javascript">
var chartScenario = AmCharts.makeChart("chart-scenario-area", {
"rotate": false,
"precision": 2,
"addClassNames": "true",
"type": "serial",
"fontFamily": "Helvetica",
"categoryField": "category",
"startDuration": 0,
"columnSpacing": 15,
"trendLines": [],
"dataProvider":[{
"category": "<?php echo TXT_TIME_PERIOD_TD; ?>",
<?php if($customer_settings['display']['chart_quota']) echo '"'.TXT_CHART_QUOTA.'": '.getMyResultChart(QUOTA_TD).''; ?>,
"<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_mobility']); ?>,
"<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_food']); ?>,
"<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_consumption']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['td']['total_public_consumption']); ?>
},
<?php if($customer_settings['display']['st'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_ST; ?>",
<?php if($customer_settings['display']['chart_quota']) echo '"'.TXT_CHART_QUOTA.'": '.getMyResultChart(QUOTA_ST).''; ?>,
"<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_mobility']); ?>,
"<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_food']); ?>,
"<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_consumption']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['st']['total_public_consumption']); ?>
},
<?php endif; ?>
<?php if($customer_settings['display']['mt'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_MT; ?>",
<?php if($customer_settings['display']['chart_quota']) echo '"'.TXT_CHART_QUOTA.'": '.getMyResultChart(QUOTA_MT).''; ?>,
"<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_mobility']); ?>,
"<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_food']); ?>,
"<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_consumption']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['mt']['total_public_consumption']); ?>
},
<?php endif; ?>
<?php if($customer_settings['display']['lt'] == true): ?>
{
"category": "<?php echo TXT_TIME_PERIOD_LT; ?>",
<?php if($customer_settings['display']['chart_quota']) echo '"'.TXT_CHART_QUOTA.'": '.getMyResultChart(QUOTA_LT).''; ?>,
"<?php echo TXT_CHART_LIVING; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_living']); ?>,
"<?php echo TXT_CHART_MOBILITY; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_mobility']); ?>,
"<?php echo TXT_CHART_FOOD; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_food']); ?>,
"<?php echo TXT_CHART_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_consumption']); ?>,
"<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>": <?php echo getMyResultChart($_SESSION['emission']['lt']['total_public_consumption']); ?>
}
<?php endif; ?>
],
"graphs": [
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['public-consumption']; ?>",
"id": "AmGraph-public-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_PUBLIC_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['consumption']; ?>",
"id": "AmGraph-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['food']; ?>",
"id": "AmGraph-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['mobility']; ?>",
"id": "AmGraph-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY; ?>"
}, {
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color']['living']; ?>",
"id": "AmGraph-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['living']; ?>",
"id": "AmGraph-self-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_LIVING_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['mobility']; ?>",
"id": "AmGraph-self-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['food']; ?>",
"id": "AmGraph-self-food",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_FOOD_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_FOOD_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_self']['consumption']; ?>",
"id": "AmGraph-self-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_SELF; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['living']; ?>",
"id": "AmGraph-other-living",
"color": "#ffffff",
"labelText": "[[value]] t",
"newStack": true,
"title": "<?php echo TXT_CHART_LIVING_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_LIVING_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['mobility']; ?>",
"id": "AmGraph-other-mobility",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_MOBILITY_OTHER; ?>"
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineAlpha": 0,
"fillAlphas": 1,
"fillColors": "<?php echo $customer_settings['css']['color_other']['consumption']; ?>",
"id": "AmGraph-other-consumption",
"color": "#ffffff",
"labelText": "[[value]] t",
"title": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
"type": "column",
"valueField": "<?php echo TXT_CHART_CONSUMPTION_OTHER; ?>",
},
{
"balloonText": "[[title]]: <b>[[value]] t</b>",
"lineColor": "<?php echo $customer_settings['css']['color']['quota']; ?>",
"lineThickness": 4,
"lineAlpha": 0.4,
"id": "AmGraph-quota",
"title": "<?php echo TXT_CHART_QUOTA; ?>",
"type": "step",
"bullet":"square",
"bulletAlpha":1,
"bulletSize":8,
"bulletBorderAlpha":0,
"valueField": "<?php echo TXT_CHART_QUOTA; ?>"
}
],
// EOF graphs
// "guides": [],
"valueAxes": [{
"id": "axis-1",
"stackType": "regular",
"title": "<?php echo TXT_CHART_VALUE_AXIS; ?>",
"labelsEnabled": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.1
}],
"categoryAxis": {
"gridPosition": "start",
"boldLabels": true,
"tickLength": 0,
"axisAlpha": 0.4,
"axisColor": "#eeeeee",
"gridAlpha": 0.2
},
"allLabels": [],
"balloon": {
"fontSize": 14,
"cornerRadius": 0,
"borderThickness": 1,
"fillAlpha": 0.9
}
});
</script>

View File

@ -1,36 +0,0 @@
<hr>
<div class="row" style="margin-bottom:20px">
<div class="col-xs-6 col-sm-2 col-sm-offset-4">
<?php
if($parent_page != "")
{
echo '<button class="btn btn-primary" type="submit" name="submit_target['.$parent_page.']" id="submit-overview" title="'.TXT_NAV_BOTTOM_OVERVIEW.'">';
echo ($customer_settings['display']['use_icons']) ? '<i class="fa fa-arrow-up fa-lg"></i>' : TXT_NAV_BOTTOM_OVERVIEW;
echo '</button>';
}
if($current_page != "")
{
echo '<button class="btn btn-primary" type="submit" id="submit-refresh" title="'.TXT_NAV_BOTTOM_REFRESH.'">';
echo ($customer_settings['display']['use_icons']) ? '<i class="fa fa-refresh fa-lg"></i>&nbsp;&nbsp;'.TXT_NAV_BOTTOM_REFRESH : TXT_NAV_BOTTOM_REFRESH;
echo '</button>';
}
?>
</div>
<?php
if($prev_page != "" || $next_page != "") echo '<div class="col-xs-6 text-right">';
if($prev_page != "") {
echo '<button class="btn btn-primary" type="submit" name="submit_target['.$prev_page.']" id="submit-back" title="'.TXT_NAV_BOTTOM_ZURUECK.'">';
echo ($customer_settings['display']['use_icons']) ? '<i class="fa fa-arrow-left fa-lg"></i>' : TXT_NAV_BOTTOM_ZURUECK;
echo '</button>';
}
if($next_page != "") {
echo '<button class="btn btn-primary" type="submit" name="submit_target['.$next_page.']" id="submit-forward" title="'.TXT_NAV_BOTTOM_WEITER.'">';
echo ($customer_settings['display']['use_icons']) ? '<i class="fa fa-arrow-right fa-lg"></i>' : TXT_NAV_BOTTOM_WEITER;
echo '</button>';
}
if($prev_page != "" || $next_page != "") echo '</div>';
?>
</div>

View File

@ -29,26 +29,12 @@ if(isset($cat))
$include_file_calc = '_living_hs.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_NAV_HEIZUNG).' | ';
$display_tab_calc = true;
$display_js_cat = 'living-hs';
break;
case "living-hs-estimate":
$include_file_calc = '_living_hs_estimate.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_LIVING_HS_ESTIMATE_HEADLINE).' | ';
$display_tab_calc = true;
$display_tab_calc_nav = false;
$display_js_cat = 'living-hs';
break;
case "living-pt":
$include_file_calc = '_living_pt.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_NAV_STROM).' | ';
$display_tab_calc = true;
$display_js_cat = 'living-pt';
break;
case "living-pt-estimate":
$include_file_calc = '_living_pt_estimate.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_LIVING_PT_ESTIMATE_HEADLINE).' | ';
$display_tab_calc = true;
$display_tab_calc_nav = false;
$display_js_cat = 'living-pt';
break;
case "mobility-daily":
@ -76,12 +62,6 @@ if(isset($cat))
$display_tab_calc_nav = true;
$display_js_cat = 'mobility';
break;
case "food":
$include_file_calc = '_food.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_FOOD_HEADLINE).' | ';
$display_tab_calc = true;
$display_js_cat = 'food';
break;
case "consumption":
$include_file_calc = '_consumption.php';
$title = strip_tags(TXT_NAV_CALCULATOR.': '.TXT_CONSUMPTION_HEADLINE).' | ';
@ -94,89 +74,13 @@ if(isset($cat))
$display_tab_calc = true;
$display_js_cat = 'footprint';
break;
// Scenario
case "sc-start":
$include_file_scenario = '_sc_start.php';
$title = strip_tags(TXT_NAV_SCENARIO).' | ';
$display_tab_scenario = true;
$display_js_cat = 'start';
break;
case "sc-living-hs":
$include_file_scenario = '_sc_living_hs.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_LIVING_HS_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'living-hs';
break;
case "sc-living-pt":
$include_file_scenario = '_sc_living_pt.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_LIVING_PT_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'living-pt';
break;
case "sc-mobility":
$include_file_scenario = '_sc_mobility.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_NAV_MOBILITAET_CARS).' | ';
$display_tab_scenario = true;
$display_js_cat = 'mobility';
break;
case "sc-mobility-travel":
$include_file_scenario = '_sc_mobility-travel.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_MOBILITY_TRAVEL_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'mobility';
break;
case "sc-mobility-flight":
$include_file_scenario = '_sc_mobility-flight.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_MOBILITY_FLIGHT_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'mobility';
break;
case "sc-food":
$include_file_scenario = '_sc_food.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_FOOD_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'food';
break;
case "sc-consumption":
$include_file_scenario = '_sc_consumption.php';
$title = strip_tags(TXT_NAV_SCENARIO.': '.TXT_CONSUMPTION_HEADLINE).' | ';
$display_tab_scenario = true;
$display_js_cat = 'consumption';
break;
case "sc-footprint":
$include_file_scenario = '_sc_footprint.php';
$title = strip_tags(TXT_NAV_SCENARIO).': '.TXT_FOOTPRINT_HEADLINE.' | ';
$display_tab_scenario = true;
$display_js_cat = 'footprint';
case "extended":
$include_file_calc = '_extended.php';
$title = strip_tags(TXT_NAV_EXTENDED).' | ';
$display_tab_calc = true;
$display_js_cat = 'extended';
break;
case "account":
$include_file_login = '_account.php';
$title = strip_tags(TXT_LOGIN_ACCOUNT_HEADLINE).' | ';
break;
case "login":
$include_file_login = '_login.php';
$title = strip_tags(TXT_LOGIN_ACCOUNT_HEADLINE).' | ';
break;
case "register":
$include_file_login = '_register.php';
$title = strip_tags(TXT_LOGIN_ACCOUNT_HEADLINE).' | ';
break;
case "reminder":
$include_file = '_account_reminder.inc.php';
$title = strip_tags(TXT_PASSWORD_FORGOTTEN_HEADLINE).' | ';
break;
case "offset":
$include_file = '_offset.inc.php';
$title = strip_tags(TXT_OFFSET_HEADLINE).' | ';
break;
case "payment":
$include_file = '_payment.inc.php';
$title = strip_tags(TXT_OFFSET_HEADLINE).' | ';
break;
case "process_offset":
updateOffset();
case "bookmark":
$display_tab_intro = false;
$display_tab_bookmark = true;

View File

@ -0,0 +1,147 @@
<?php
/**
* Retrieve bookmark_data
* 2021-12-31: Zweite Tabelle 'bookmark_data_2' eingeführt für Daten ab 2022
*
* @return array
*/
function getBookmarkData($bookmark)
{
GLOBAL $customer_settings;
GLOBAL $db;
$data_array = array();
// 2021-12-31: Bookmarks VOR 2022 wurden in 'bookmark_data' gespeichert
$sql = "SELECT data_id, DATE_FORMAT(date_added,'%d.%m.%y') as f_date_added, DATE_FORMAT(last_modified,'%d.%m.%y') as f_last_modified, email, name, address, zip, city, district, school, data, emission, emission_self, emission_other, kwh, performance FROM ".TABLE_BOOKMARK_DATA." ";
$sql .= "WHERE bookmark_id = '".$db->escape($bookmark)."' AND client_id = '".$customer_settings['customer']['session_id']."'";
if($result = $db->get_results($sql))
{
foreach($result as $query_result)
{
$data_array[] = array('data_id' => $query_result->data_id,
'date_added' => $query_result->f_date_added,
'last_modified' => $query_result->f_last_modified,
'email' => $query_result->email,
'name' => $query_result->name,
'address' => $query_result->address,
'zip' => $query_result->zip,
'city' => $query_result->city,
'district' => $query_result->district,
'school' => $query_result->school,
'data' => json_decode($query_result->data, true)
);
}
}
else
{
if(isset($GLOBALS['EZSQL_ERROR'])) db_error($GLOBALS['EZSQL_ERROR'], __LINE__, __FILE__, $rollback = false, $exit = true);
}
// Kein Treffer in 'bookmark_data':
// 2021-12-31: Bookmarks AB 2022 werden in 'bookmark_data_2' gespeichert
if(empty($data_array)):
$sql = "SELECT data_id, DATE_FORMAT(date_added,'%d.%m.%y') as f_date_added, DATE_FORMAT(last_modified,'%d.%m.%y') as f_last_modified, email, name, address, zip, city, district, school, data, emission, emission_self, emission_other, kwh, performance FROM ".TABLE_BOOKMARK_DATA_2." ";
$sql .= "WHERE bookmark_id = '".$db->escape($bookmark)."' AND client_id = '".$customer_settings['customer']['session_id']."'";
if($result = $db->get_results($sql))
{
foreach($result as $query_result)
{
$data_array[] = array('data_id' => $query_result->data_id,
'date_added' => $query_result->f_date_added,
'last_modified' => $query_result->f_last_modified,
'email' => $query_result->email,
'name' => $query_result->name,
'address' => $query_result->address,
'zip' => $query_result->zip,
'city' => $query_result->city,
'district' => $query_result->district,
'school' => $query_result->school,
'data' => json_decode($query_result->data, true)
);
}
}
else
{
if(isset($GLOBALS['EZSQL_ERROR'])) db_error($GLOBALS['EZSQL_ERROR'], __LINE__, __FILE__, $rollback = false, $exit = true);
}
endif;
return($data_array);
}
/**
* Save bookmark data
* 2021-12-31: Zweite Tabelle 'bookmark_data_2' eingeführt für Daten ab 2022
*
* @return array
*/
function saveBookmarkData()
{
GLOBAL $customer_settings;
GLOBAL $db;
$bookmark_id = createBookmarkID('16'); // Note: DB field 'bookmark_id' is VARCHAR(16)
$modules_data = '';
(isset($_SESSION['data']['bookmark_status']) && $_SESSION['data']['bookmark_status'] != "") ? $status = $_SESSION['data']['bookmark_status'] : $status = "0";
// 2020-06-23: Mantis 1770
if(isset($customer_settings['modules']) && count($customer_settings['modules']) > 0):
if(isset($_POST['modules'])) $modules_data = json_encode($_POST['modules']);
endif;
/*
(isset($_SESSION['data']['bookmark_data']['email']) && $_SESSION['data']['bookmark_data']['email'] != "") ? $email = $_SESSION['data']['bookmark_data']['email'] : $email = "";
(isset($_SESSION['data']['bookmark_data']['password']) && $_SESSION['data']['bookmark_data']['password'] != "") ? $password = $_SESSION['data']['bookmark_data']['password'] : $password = "";
(isset($_SESSION['data']['bookmark_data']['name']) && $_SESSION['data']['bookmark_data']['name'] != "") ? $name = $_SESSION['data']['bookmark_data']['name'] : $name = "";
(isset($_SESSION['data']['bookmark_data']['address']) && $_SESSION['data']['bookmark_data']['address'] != "") ? $address = $_SESSION['data']['bookmark_data']['address'] : $address = "";
(isset($_SESSION['data']['bookmark_data']['zip']) && $_SESSION['data']['bookmark_data']['zip'] != "") ? $zip = $_SESSION['data']['bookmark_data']['zip'] : $zip = "";
(isset($_SESSION['data']['bookmark_data']['city']) && $_SESSION['data']['bookmark_data']['city'] != "") ? $city = $_SESSION['data']['bookmark_data']['city'] : $city = "";
(isset($_SESSION['data']['bookmark_data']['district']) && $_SESSION['data']['bookmark_data']['district'] != "") ? $district = $_SESSION['data']['bookmark_data']['district'] : $district = "";
(isset($_SESSION['data']['bookmark_data']['school']) && $_SESSION['data']['bookmark_data']['school'] != "") ? $school = $_SESSION['data']['bookmark_data']['school'] : $school = "";
*/
// Clean up 'data'
unset($_SESSION['data']['bookmark_status']);
unset($_SESSION['data']['do']);
// 2021-12-31: Ab 2022 in 'bookmark_data_2' speichern
if(date('Y') >= 2022):
$sql = "INSERT INTO ".TABLE_BOOKMARK_DATA_2." ";
else:
$sql = "INSERT INTO ".TABLE_BOOKMARK_DATA." ";
endif;
$sql .= "(date_added, last_modified, bookmark_id, client_id, version, modules_data, data, emission, emission_self, emission_other, kwh, performance, emission_td_total, status) ";
$sql .= "VALUES(
'".date("Y-m-d H:i:s")."',
'".date("Y-m-d H:i:s")."',
'".$bookmark_id."',
'".$customer_settings['customer']['session_id']."',
'".$customer_settings['version']."',
'".$db->escape($modules_data)."',
'".json_encode($_SESSION['data'])."',
'".json_encode($_SESSION['emission'])."',
'".json_encode($_SESSION['emission_self'])."',
'".json_encode($_SESSION['emission_other'])."',
'".json_encode($_SESSION['kwh'])."',
'".json_encode($_SESSION['performance'])."',
'".$db->escape($_SESSION['emission']['td']['total'])."',
'".$db->escape($status)."'
)";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
if(DEBUG_SQL) $db->debug();
return $bookmark_id;
}
?>

View File

@ -1,59 +0,0 @@
<?php
/**
* "Ernährung": Calculate emissions
*/
function getEmissionByFood()
{
global $factor_food_details_age;
// global $factor_food_details_activity;
global $factor_food_details_sport;
global $factor_food_eating_habits;
global $factor_sc_food_eating_habits;
global $fd_sc_food_acceptance;
global $factor_sc_food_acceptance;
$_SESSION['emission']['td']['total_food'] = 0;
$_SESSION['emission']['st']['total_food'] = 0;
$_SESSION['emission']['mt']['total_food'] = 0;
$_SESSION['emission']['lt']['total_food'] = 0;
$_SESSION['emission_self']['td']['total_food'] = 0;
$_SESSION['emission_self']['st']['total_food'] = 0;
$_SESSION['emission_self']['mt']['total_food'] = 0;
$_SESSION['emission_self']['lt']['total_food'] = 0;
$_SESSION['target']['total_food'] = 0;
// input validation
$_SESSION['data']['food_details']['weight'] = str_replace(",", ".", $_SESSION['data']['food_details']['weight']);
$_SESSION['data']['food_details']['weight'] = (float) $_SESSION['data']['food_details']['weight'];
if(!$_SESSION['data']['food_details']['weight'] > 1) return;
// kcal / Person
$_SESSION['data']['food_detail_kcal'] = 0;
$_SESSION['data']['food_detail_kcal'] = bcmul($factor_food_details_age[$_SESSION['data']['food_details']['sex']][$_SESSION['data']['food_details']['age']]['kcal'], $_SESSION['data']['food_details']['weight'], 2); // Kalorienbedarf Frauen / Männer detailliert
$_SESSION['data']['food_detail_kcal'] = bcadd($_SESSION['data']['food_detail_kcal'], $factor_food_details_age[$_SESSION['data']['food_details']['sex']][$_SESSION['data']['food_details']['age']]['offset'], 2); // Kalorienbedarf Frauen / Männer detailliert
// $_SESSION['data']['food_detail_kcal'] = bcmul($_SESSION['data']['food_detail_kcal'], $factor_food_details_activity[$_SESSION['data']['food_details']['activity']], 2);
$_SESSION['data']['food_detail_kcal'] = bcmul($_SESSION['data']['food_detail_kcal'], $factor_food_details_sport[$_SESSION['data']['food_details']['sport']], 2);
// CO2 Berechnung auf Basis des Kalorienbedarfs
$_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['data']['food_detail_kcal'], FOOD_KCAL_CO2TONS, 2);
// Emission: CO2 Berechnung auf Basis des Kalorienbedarfs
$_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['type'][$_SESSION['data']['food_eating_habits']['type']], 2);
$_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['purchase'][$_SESSION['data']['food_eating_habits']['purchase']], 2);
$_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['fastfood'][$_SESSION['data']['food_eating_habits']['fastfood']], 2);
// $_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['packaging'][$_SESSION['data']['food_eating_habits']['packaging']], 2);
// $_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['regional'][$_SESSION['data']['food_eating_habits']['regional']], 2);
// $_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['seasonal'][$_SESSION['data']['food_eating_habits']['seasonal']], 2);
// $_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['frozenfoods'][$_SESSION['data']['food_eating_habits']['frozenfoods']], 2);
// $_SESSION['emission']['td']['food_detail'] = bcmul($_SESSION['emission']['td']['food_detail'], $factor_food_eating_habits['oeko'][$_SESSION['data']['food_eating_habits']['oeko']], 2);
// Get emission total values
$_SESSION['emission']['td']['total_food'] += $_SESSION['emission']['td']['food_detail'];
return;
}
?>

File diff suppressed because it is too large Load Diff

View File

@ -1,811 +0,0 @@
<?php
/**
* Frontend Functions: Login
*
* @package co2rechner
* @filesource
* @author Jochen Seiter <info@bfig.de>
* @copyright 2008, Buero fuer Internet Gestaltung
*/
/**
* Login process
*
* @return string
*/
function userLogin($user_name, $user_pass)
{
GLOBAL $customer_settings;
GLOBAL $login_error_message;
GLOBAL $db;
if($user_name == "")
{
$_SESSION['message']['error']['user_name'] = TXT_STATUS_LOGIN_MISSING_USER_NAME;
return;
}
if($user_name != "" && checkEmailAddress($user_name) === false)
{
$_SESSION['message']['error']['user_name'] = TXT_STATUS_LOGIN_INVALID_USER_NAME;
return;
}
if($user_pass == "")
{
$_SESSION['message']['error']['user_password'] = TXT_STATUS_LOGIN_MISSING_PASSWORD;
return;
}
$user_name = trim($user_name);
$md5_user_pass = md5(trim($user_pass));
$sql = "SELECT user_id, user_email, client_id, user_active, user_rights, DATE_FORMAT(last_login,'%d.%m.%Y, %H:%i') as f_last_login FROM ".TABLE_USER." ";
$sql .= "WHERE user_email = '".$db->escape($user_name)."' ";
$sql .= "AND user_pass = '".$db->escape($md5_user_pass)."' ";
$sql .= "AND client_id = '".$customer_settings['customer']['session_id']."' ";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// User name and pw is not valid
if(count($row) != 1)
{
$_SESSION['message']['error']['status'] = TXT_STATUS_LOGIN_NOT_VALID;
return;
}
// User name and pw is valid
elseif(count($row) == 1)
{
// Check if user has been deactivated
if($row[0]->user_active == 0)
{
$_SESSION['message']['error']['status'] = TXT_STATUS_LOGIN_USER_DISABLED;
return;
}
// Set Session variables for this user
$_SESSION['user']['user_id'] = $row[0]->user_id;
$_SESSION['user']['email'] = $row[0]->user_email;
$_SESSION['user']['client_id'] = $row[0]->client_id;
$_SESSION['user']['user_rights'] = $row[0]->user_rights;
$_SESSION['user']['last_login'] = $row[0]->f_last_login;
$_SESSION['user']['user_logged_in'] = true;
$_SESSION['user']['user_just_logged_in'] = true;
// Unset Guest user
$_SESSION['guest'] = "";
// Update "last_login"
$sql = "UPDATE ".TABLE_USER." SET last_login = NOW(), log_amount = log_amount+1 ";
$sql .= "WHERE user_id = '".$_SESSION['user']['user_id']."' AND client_id = '".$customer_settings['customer']['session_id']."'";
$db->query($sql);
header("Location: http://".$_SERVER['SERVER_NAME']."/".CONTENT_LANGUAGE."/account");
exit;
}
return;
}
/**
* Login process
*
* @return string
*/
function userRegister($user_name, $user_pass, $user_pass_repeat, $user_as, $user_as_result, $login_user_campaign)
{
GLOBAL $customer_settings;
GLOBAL $db;
if($user_name == "")
{
$_SESSION['message']['error']['user_name'] = TXT_STATUS_LOGIN_MISSING_USER_NAME;
return;
}
if($user_name != "" && checkEmailAddress($user_name) === false)
{
$_SESSION['message']['error']['user_name'] = TXT_STATUS_LOGIN_INVALID_USER_NAME;
return;
}
if($user_pass == "" || $user_pass_repeat == "")
{
$_SESSION['message']['error']['user_password'] = TXT_STATUS_CREATE_ACCOUNT_INCOMPLETE_PASSWORD;
return;
}
if(strlen($user_pass) < 8)
{
$_SESSION['message']['error']['user_password'] = TXT_STATUS_CREATE_ACCOUNT_TOOSHORT_PASSWORD;
return;
}
if($user_pass != $user_pass_repeat)
{
$_SESSION['message']['error']['user_password'] = TXT_STATUS_CREATE_ACCOUNT_NOT_MATCHING_PASSWORD;
return;
}
if(sha1(md5($user_as)) != $user_as_result)
{
$_SESSION['message']['error']['user_as'] = TXT_STATUS_CREATE_ACCOUNT_WRONG_ANTISPAM;
return;
}
$user_name = trim($user_name);
$md5_user_pass = md5(trim($user_pass));
$sql = "SELECT user_id FROM ".TABLE_USER." ";
$sql .= "WHERE user_email = '".$db->escape($user_name)."' ";
$sql .= "AND client_id = '".$customer_settings['customer']['session_id']."' ";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// User name and client_id already exist
if(count($row) > 0)
{
$_SESSION['message']['error']['status'] = TXT_STATUS_CREATE_ACCOUNT_DUPLICATE_USER;
return;
}
// User name and client_id doesn't exist
else
{
$sql = "INSERT INTO ".TABLE_USER." ";
$sql .= "(date_added, last_modified, user_email, user_pass, client_id, user_active, last_login, log_amount) ";
$sql .= "VALUES('".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$db->escape($user_name)."', '".md5($user_pass)."', '".$customer_settings['customer']['session_id']."', '1', '".date("Y-m-d H:i:s")."', '1') ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
$last_insert_id = $db->insert_id;
// Set Session variables for this user
$_SESSION['user']['user_id'] = $last_insert_id;
$_SESSION['user']['email'] = $user_name;
$_SESSION['user']['client_id'] = $customer_settings['customer']['session_id'];
$_SESSION['user']['user_rights'] = 1;
$_SESSION['user']['user_logged_in'] = true;
$_SESSION['user']['user_just_logged_in'] = true;
// Unset Guest user
$_SESSION['guest'] = "";
/* Kampagne eintragen */
if(isset($customer_settings['customer']['campaign']) && $customer_settings['customer']['campaign'] != "")
{
$sql = "UPDATE ".TABLE_USER." SET campaign = '".$db->escape($login_user_campaign)."' ";
$sql .= "WHERE user_email = '".$_SESSION['user']['email']."' ";
$sql .= "AND client_id = '".$customer_settings['customer']['session_id']."' ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
}
header("Location: http://".$_SERVER['SERVER_NAME']."/".CONTENT_LANGUAGE."/account");
exit;
}
return;
}
/**
* Log out extranet user
*
* @return string log out confirmation
*/
function extranetLogout()
{
/* delete all session variables */
unset($_SESSION);
$_SESSION = array();
// delete session
@session_destroy();
// delete session cookies
setcookie("sess","",0,"/");
header('Location: '.CFG_PROJECT_SERVER.$GLOBALS['langID']);
exit;
}
/**
* Validate email address
*
* @param integer $email
* @return boolean
*/
function checkEmailAddress($mail)
{
// http://www.rfc-editor.org/errata_search.php?rfc=3696&eid=1690
if (strlen($mail) > 256) return false;
/*
Pattern:
^ Anker Line-Start
\S{1,64} kein Whitespace - 1 bis 64 mal (local part)
@ @-Zeichen
\S+ kein Whitespace - mind. einmal (second level Domain)
\. Punkt
\S{2,6} kein Whitespace, 2 bis 6 mal (top level domain)
$ Anker Line-End
i Modifier: case-insensitive
*/
$pattern = '#^\S{1,64}@\S+\.\S{2,6}$#i';
return (bool) preg_match($pattern, $mail);
}
/**
* Password reminder
*
* @param string $user_name
* @return string
*/
function passwordReminder($user_name)
{
GLOBAL $customer_settings;
GLOBAL $db;
if($user_name == "")
{
$_SESSION['status']['password_reminder'] = false;
$return_message['error'] = TXT_STATUS_LOGIN_MISSING_USER_NAME;
return($return_message);
}
if($user_name != "" && checkEmailAddress($user_name) === false)
{
$_SESSION['status']['password_reminder'] = false;
$return_message['error'] = TXT_STATUS_LOGIN_INVALID_USER_NAME;
return($return_message);
}
$sql = "SELECT user_id, user_active, user_email FROM ".TABLE_USER." ";
$sql .= "WHERE user_email = '".$db->escape($user_name)."' AND client_id = '".$customer_settings['customer']['session_id']."'";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// User name not valid
if(count($row) != 1)
{
$_SESSION['status']['password_reminder'] = false;
$return_message['error'] = TXT_PASSWORD_FORGOTTEN_USER_NOT_VALID;
return $return_message;
}
// User name name is valid
elseif(count($row) == 1)
{
// Check if user has been deactivated
if($row[0]->user_active == 0)
{
$_SESSION['status']['password_reminder'] = false;
$return_message['error'] = TXT_PASSWORD_FORGOTTEN_USER_NOT_ACTIVE;
return $return_message;
}
// Create new password
$new_password = passwordGenerator("8");
// Update password
$sql = "UPDATE ".TABLE_USER." SET user_pass = '".$db->escape(md5($new_password))."' ";
$sql .= "WHERE user_id = '".$row[0]->user_id."'";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
if(DEBUG_SQL) $db->debug();
// Create email message
$email_message = sprintf(TXT_PASSWORD_FORGOTTEN_EMAIL_MESSAGE, $new_password)."\n";
$email_mailto = $row[0]->user_email;
$email_subject = $customer_settings['customer']['real_name'].': '.TXT_PASSWORD_FORGOTTEN_MAIL_SUBJECT;
// Send email
if(@mail("$email_mailto","$email_subject","$email_message","From: ".$customer_settings['customer']['support_mail']."\n"."Reply-To:".$customer_settings['customer']['support_mail']."\n"."MIME-Version: 1.0\n"."Content-type: text/plain; charset=\"utf-8\"\n"."Content-transfer-encoding: quoted-printable\n"))
{
$_SESSION['status']['password_reminder'] = true;
$return_message['success'] = sprintf(TXT_PASSWORD_FORGOTTEN_MAIL_SUCCESS, $email_mailto);
return $return_message;
}
else
{
$_SESSION['status']['password_reminder'] = false;
$return_message['error'] = TXT_PASSWORD_FORGOTTEN_MAIL_FAILURE;
return $return_message;
}
}
}
/**
* Password generator
*
* @param int $length
* @return string
*/
function passwordGenerator($length)
{
// bugfix. to avoid human reading errors, the chars o,O,i,I,l,L,1,0 do not appear any more in the result string.
$w_s = array ('a','b','c','d','e','f','g','h','j','k','m','n','p','q','r','s','t','u','v','w','x','y','z',);
$w_s = array_merge($w_s,array_map('strtoupper',$w_s));
$w_s = array_merge($w_s,array(2,3,4,5,6,7,8,9));
$max = count($w_s) - 1;
$pw = "";
for($i=0;$i<$length;$i++)
{
srand((double)microtime()*1000000);
$wg = rand(1,$max);
$pw .= $w_s[$wg];
}
return $pw;
}
/**
* Retrieve user data
*
* @return array
*/
function getUserData($user_id, $data_id = "", $year = "")
{
GLOBAL $customer_settings;
GLOBAL $db;
$data_array = array();
$sql = "SELECT data_id, DATE_FORMAT(date_added,'%d.%m.%y') as f_date_added, DATE_FORMAT(last_modified,'%d.%m.%y') as f_last_modified, data, emission, emission_total, emission_total_by_persons, target, target_total, target_total_by_persons, living_persons, person_calc_mode, year, offset_real_value FROM ".TABLE_DATA." ";
$sql .= "WHERE user_id = '".$user_id."' ";
if($data_id != "") $sql .= "AND data_id = '".$data_id."' ";
if($year != "") $sql .= "AND year = '".$year."' ";
$sql .= "ORDER BY year DESC";
if($result = $db->get_results($sql))
{
foreach($result as $query_result)
{
$data_array[] = array('data_id' => $query_result->data_id,
'date_added' => $query_result->f_date_added,
'last_modified' => $query_result->f_last_modified,
'data' => unserialize($query_result->data),
'emission' => unserialize($query_result->emission),
'emission_total' => $query_result->emission_total,
'emission_total_by_persons' => $query_result->emission_total_by_persons,
'target' => unserialize($query_result->target),
'target_total' => $query_result->target_total,
'target_total_by_persons' => $query_result->target_total_by_persons,
'living_persons' => $query_result->living_persons,
'person_calc_mode' => $query_result->person_calc_mode,
'year' => $query_result->year,
'offset_real_value' => $query_result->offset_real_value
);
}
}
else
{
if(isset($GLOBALS['EZSQL_ERROR'])) db_error($GLOBALS['EZSQL_ERROR'], __LINE__, __FILE__, $rollback = false, $exit = true);
}
return($data_array);
}
/**
* Save user data
*
* @return array
*/
function saveUserData()
{
GLOBAL $customer_settings;
GLOBAL $db;
GLOBAL $login_save;
// Reload-Check
if(isset($_POST['challengeID']) && $_SESSION['data']['check_challengeID'] != $_POST['challengeID'])
{
$_SESSION['data']['check_challengeID'] = "";
return;
}
// if($login_save == true)
// {
$data_already_exists = getUserData($_SESSION['user']['user_id'], $data_id = "", $_SESSION['data']['living_year']);
if(isset($data_already_exists[0]['year']) && $_SESSION['data']['living_year'] == $data_already_exists[0]['year'])
{
/*
?>
<script language="javascript" type="text/javascript">
// <![CDATA[
var confirmOverwrite;
confirmOverwrite = confirm("<?php printf(TXT_JS_OVERWRITE_WARNING, $data_already_exists[0]['year']) ;?>");
if (confirmOverwrite == false) window.location.href = "?cat=improve&login_save=false";
// ]]>
</script>
<?php
*/
// If confirmed:
$login_save = false;
$_SESSION['status']['edit'] = true;
$_SESSION['status']['year'] = $data_already_exists[0]['year'];
}
// }
if(isset($_SESSION['status']['edit']) && $_SESSION['status']['edit'] === true && isset($_SESSION['status']['year']) && !empty($_SESSION['status']['year']))
{
$sql = "UPDATE ".TABLE_DATA." ";
$sql .= "SET last_modified = '".date("Y-m-d H:i:s")."', data = '".$db->escape(serialize($_SESSION['data']))."', emission = '".$db->escape(serialize($_SESSION['emission']['td']))."', emission_total = '".$_SESSION['emission']['td']['total']."', emission_total_by_persons = '".$_SESSION['emission']['td']['total_by_persons']."', target = '".$db->escape(serialize($_SESSION['target']))."', target_total = '".$_SESSION['target']['total']."', target_total_by_persons = '".$_SESSION['target']['total_by_persons']."', living_persons = '".$_SESSION['data']['living_persons']."', person_calc_mode = '".$_SESSION['data']['person_calc_mode']."', year = '".$_SESSION['data']['living_year']."' ";
$sql .= "WHERE user_id = '".$_SESSION['user']['user_id']."' AND client_id = '".$_SESSION['user']['client_id']."' AND year = '".$_SESSION['status']['year']."' ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = false, $exit = true);
unset($_SESSION['status']['edit']);
unset($_SESSION['status']['year']);
$_SESSION['message'] = sprintf(TXT_STATUS_LOGIN_DATA_UPDATED, $_SESSION['data']['living_year']);
}
else
{
$sql = "INSERT INTO ".TABLE_DATA." ";
$sql .= "(date_added, last_modified, user_id, client_id, data, emission, emission_total, emission_total_by_persons, target, target_total, target_total_by_persons, living_persons, person_calc_mode, year) ";
$sql .= "VALUES('".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$_SESSION['user']['user_id']."', '".$_SESSION['user']['client_id']."', '".$db->escape(serialize($_SESSION['data']))."', '".$db->escape(serialize($_SESSION['emission']['td']))."', '".$_SESSION['emission']['td']['total']."', '".$_SESSION['emission']['td']['total_by_persons']."', '".$db->escape(serialize($_SESSION['target']))."', '".$_SESSION['target']['total']."', '".$_SESSION['target']['total_by_persons']."', '".$_SESSION['data']['living_persons']."', '".$_SESSION['data']['person_calc_mode']."', '".$_SESSION['data']['living_year']."') ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
$aID = $db->insert_id;
$_SESSION['message'] = sprintf(TXT_STATUS_LOGIN_DATA_SAVED, $_SESSION['data']['living_year']);
}
if(DEBUG_SQL) $db->debug();
$_SESSION['data']['check_challengeID'] = "";
return;
}
/**
* Save offset before compensation
*
* @return
*/
function saveOffset($tid, $user_id, $client_id, $data_id, $offset_value, $offset_year)
{
GLOBAL $customer_settings;
GLOBAL $db;
// Reload-Check
if(isset($_POST['challengeID']) && $_SESSION['data']['check_challengeID'] != $_POST['challengeID'])
{
// $_SESSION['data']['check_challengeID'] = "";
// return;
}
if(isset($tid) && !empty($tid) && isset($user_id) && !empty($user_id) && isset($client_id) && !empty($client_id) && isset($offset_value) && !empty($offset_value) && isset($offset_year) && !empty($offset_year))
{
$sql = "INSERT INTO ".TABLE_OFFSET." ";
$sql .= "(date_added, last_modified, t_id, user_id, client_id, offset_value, offset_year) ";
$sql .= "VALUES('".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$db->escape($tid)."', '".$user_id."', '".$client_id."', '".$db->escape($offset_value)."', '".$db->escape($offset_year)."') ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = false, $exit = true);
$aID = $db->insert_id;
// $_SESSION['message'] = sprintf(TXT_STATUS_LOGIN_DATA_SAVED, $_SESSION['data']['living_year']);
}
if(DEBUG_SQL) $db->debug();
$_SESSION['data']['check_challengeID'] = "";
return;
}
/**
* Update offset after compensation
*
* @return array
*/
function updateOffset()
{
GLOBAL $customer_settings;
GLOBAL $db;
if(isset($_POST['tid']) || !empty($_POST['tid'])) $tid = $_POST['tid'];
else return;
if(isset($_POST['user_id']) || !empty($_POST['user_id'])) $user_id = $_POST['user_id'];
else return;
if(isset($_POST['client_id']) || !empty($_POST['client_id'])) $client_id = $_POST['client_id'];
else return;
if(isset($_POST['offset_value']) || !empty($_POST['offset_value'])) $offset_value = $_POST['offset_value'];
else return;
if(isset($_POST['offset_year']) || !empty($_POST['offset_year'])) $offset_year = $_POST['offset_year'];
else return;
$sql = "SELECT user_id FROM ".TABLE_OFFSET." ";
$sql .= "WHERE user_id = '".$db->escape($user_id)."' AND client_id = '".$db->escape($client_id)."' AND offset_year = '".$db->escape($offset_year)."' AND t_id = '".$db->escape($tid)."' ";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// User id is valid
if(count($row) == 1)
{
$sql = "UPDATE ".TABLE_DATA." ";
$sql .= "SET offset_real_value = offset_real_value+".$offset_value." ";
$sql .= "WHERE user_id = '".$db->escape($user_id)."' AND client_id = '".$db->escape($client_id)."' AND year = '".$db->escape($offset_year)."'";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = false, $exit = true);
}
return;
}
/**
* Check if Guest User already has an account
*
* @return string
*/
function checkGuestAccount()
{
GLOBAL $customer_settings;
GLOBAL $db;
$session_id = session_id();
if($session_id == "")
{
return;
}
$user_name = $session_id.'@'.$customer_settings['customer']['session_id'].'.guest';
$user_pass = "default";
$sql = "SELECT user_id FROM ".TABLE_USER." ";
$sql .= "WHERE user_email = '".$db->escape($user_name)."' ";
$sql .= "AND client_id = '".$customer_settings['customer']['session_id']."'";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// User name and client_id already exist
if(count($row) > 0)
{
$_SESSION['guest']['user_id'] = $row[0]->user_id;
$_SESSION['guest']['client_id'] = $customer_settings['customer']['session_id'];
$_SESSION['guest']['user_logged_in'] = true;
$_SESSION['guest']['account_exists'] = true;
return;
}
// User name and client_id doesn't exist
else
{
$sql = "INSERT INTO ".TABLE_USER." ";
$sql .= "(date_added, last_modified, user_email, user_pass, client_id, user_active, last_login, log_amount) ";
$sql .= "VALUES('".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$db->escape($user_name)."', '".md5($user_pass)."', '".$customer_settings['customer']['session_id']."', '1', '".date("Y-m-d H:i:s")."', '1') ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
$last_insert_id = $db->insert_id;
// Set Session variables for this user
$_SESSION['guest']['user_id'] = $last_insert_id;
$_SESSION['guest']['email'] = $user_name;
$_SESSION['guest']['client_id'] = $customer_settings['customer']['session_id'];
$_SESSION['guest']['user_logged_in'] = true;
$_SESSION['guest']['account_exists'] = true;
}
return;
}
/**
* Save guest user data
*
* @return array
*/
function saveGuestData()
{
GLOBAL $customer_settings;
GLOBAL $db;
if(!isset($_SESSION['guest']['user_id'])) return;
$sql = "SELECT data_id FROM ".TABLE_DATA." ";
$sql .= "WHERE user_id = '".$db->escape($_SESSION['guest']['user_id'])."' ";
$sql .= "AND client_id = '".$customer_settings['customer']['session_id']."' ";
$sql .= "AND year = '".$_SESSION['data']['living_year']."'";
$row = $db->get_results($sql);
if(DEBUG_SQL) $db->debug();
// Guest user name and client_id already exist
if(count($row) > 0)
{
$sql = "UPDATE ".TABLE_DATA." ";
$sql .= "SET last_modified = '".date("Y-m-d H:i:s")."', data = '".$db->escape(serialize($_SESSION['data']))."', emission = '".$db->escape(serialize($_SESSION['emission']['td']))."', emission_total = '".$_SESSION['emission']['td']['total']."', emission_total_by_persons = '".$_SESSION['emission']['td']['total_by_persons']."', target = '".$db->escape(serialize($_SESSION['target']))."', target_total = '".$_SESSION['target']['total']."', target_total_by_persons = '".$_SESSION['target']['total_by_persons']."', living_persons = '".$_SESSION['data']['living_persons']."', person_calc_mode = '".$_SESSION['data']['person_calc_mode']."', year = '".$_SESSION['data']['living_year']."' ";
$sql .= "WHERE user_id = '".$_SESSION['guest']['user_id']."' AND client_id = '".$_SESSION['guest']['client_id']."' AND year = '".$_SESSION['data']['living_year']."' ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = false, $exit = true);
}
else
{
$sql = "INSERT INTO ".TABLE_DATA." ";
$sql .= "(date_added, last_modified, user_id, client_id, data, emission, emission_total, emission_total_by_persons, target, target_total, target_total_by_persons, living_persons, person_calc_mode, year) ";
$sql .= "VALUES('".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$_SESSION['guest']['user_id']."', '".$_SESSION['guest']['client_id']."', '".$db->escape(serialize($_SESSION['data']))."', '".$db->escape(serialize($_SESSION['emission']['td']))."', '".$_SESSION['emission']['td']['total']."', '".$_SESSION['emission']['td']['total_by_persons']."', '".$db->escape(serialize($_SESSION['target']))."', '".$_SESSION['target']['total']."', '".$_SESSION['target']['total_by_persons']."', '".$_SESSION['data']['living_persons']."', '".$_SESSION['data']['person_calc_mode']."', '".$_SESSION['data']['living_year']."') ";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
}
if(DEBUG_SQL) $db->debug();
return;
}
/**
* Retrieve bookmark_data
* 2021-12-31: Zweite Tabelle 'bookmark_data_2' eingeführt für Daten ab 2022
*
* @return array
*/
function getBookmarkData($bookmark)
{
GLOBAL $customer_settings;
GLOBAL $db;
$data_array = array();
// 2021-12-31: Bookmarks VOR 2022 wurden in 'bookmark_data' gespeichert
$sql = "SELECT data_id, DATE_FORMAT(date_added,'%d.%m.%y') as f_date_added, DATE_FORMAT(last_modified,'%d.%m.%y') as f_last_modified, email, name, address, zip, city, district, school, data, emission, emission_self, emission_other, kwh, performance FROM ".TABLE_BOOKMARK_DATA." ";
$sql .= "WHERE bookmark_id = '".$db->escape($bookmark)."' AND client_id = '".$customer_settings['customer']['session_id']."'";
if($result = $db->get_results($sql))
{
foreach($result as $query_result)
{
$data_array[] = array('data_id' => $query_result->data_id,
'date_added' => $query_result->f_date_added,
'last_modified' => $query_result->f_last_modified,
'email' => $query_result->email,
'name' => $query_result->name,
'address' => $query_result->address,
'zip' => $query_result->zip,
'city' => $query_result->city,
'district' => $query_result->district,
'school' => $query_result->school,
'data' => json_decode($query_result->data, true)
);
}
}
else
{
if(isset($GLOBALS['EZSQL_ERROR'])) db_error($GLOBALS['EZSQL_ERROR'], __LINE__, __FILE__, $rollback = false, $exit = true);
}
// Kein Treffer in 'bookmark_data':
// 2021-12-31: Bookmarks AB 2022 werden in 'bookmark_data_2' gespeichert
if(empty($data_array)):
$sql = "SELECT data_id, DATE_FORMAT(date_added,'%d.%m.%y') as f_date_added, DATE_FORMAT(last_modified,'%d.%m.%y') as f_last_modified, email, name, address, zip, city, district, school, data, emission, emission_self, emission_other, kwh, performance FROM ".TABLE_BOOKMARK_DATA_2." ";
$sql .= "WHERE bookmark_id = '".$db->escape($bookmark)."' AND client_id = '".$customer_settings['customer']['session_id']."'";
if($result = $db->get_results($sql))
{
foreach($result as $query_result)
{
$data_array[] = array('data_id' => $query_result->data_id,
'date_added' => $query_result->f_date_added,
'last_modified' => $query_result->f_last_modified,
'email' => $query_result->email,
'name' => $query_result->name,
'address' => $query_result->address,
'zip' => $query_result->zip,
'city' => $query_result->city,
'district' => $query_result->district,
'school' => $query_result->school,
'data' => json_decode($query_result->data, true)
);
}
}
else
{
if(isset($GLOBALS['EZSQL_ERROR'])) db_error($GLOBALS['EZSQL_ERROR'], __LINE__, __FILE__, $rollback = false, $exit = true);
}
endif;
return($data_array);
}
/**
* Save bookmark data
* 2021-12-31: Zweite Tabelle 'bookmark_data_2' eingeführt für Daten ab 2022
*
* @return array
*/
function saveBookmarkData()
{
GLOBAL $customer_settings;
GLOBAL $db;
$bookmark_id = createBookmarkID('16'); // Note: DB field 'bookmark_id' is VARCHAR(16)
$modules_data = '';
(isset($_SESSION['data']['bookmark_status']) && $_SESSION['data']['bookmark_status'] != "") ? $status = $_SESSION['data']['bookmark_status'] : $status = "0";
// 2020-06-23: Mantis 1770
if(isset($customer_settings['modules']) && count($customer_settings['modules']) > 0):
if(isset($_POST['modules'])) $modules_data = json_encode($_POST['modules']);
endif;
/*
(isset($_SESSION['data']['bookmark_data']['email']) && $_SESSION['data']['bookmark_data']['email'] != "") ? $email = $_SESSION['data']['bookmark_data']['email'] : $email = "";
(isset($_SESSION['data']['bookmark_data']['password']) && $_SESSION['data']['bookmark_data']['password'] != "") ? $password = $_SESSION['data']['bookmark_data']['password'] : $password = "";
(isset($_SESSION['data']['bookmark_data']['name']) && $_SESSION['data']['bookmark_data']['name'] != "") ? $name = $_SESSION['data']['bookmark_data']['name'] : $name = "";
(isset($_SESSION['data']['bookmark_data']['address']) && $_SESSION['data']['bookmark_data']['address'] != "") ? $address = $_SESSION['data']['bookmark_data']['address'] : $address = "";
(isset($_SESSION['data']['bookmark_data']['zip']) && $_SESSION['data']['bookmark_data']['zip'] != "") ? $zip = $_SESSION['data']['bookmark_data']['zip'] : $zip = "";
(isset($_SESSION['data']['bookmark_data']['city']) && $_SESSION['data']['bookmark_data']['city'] != "") ? $city = $_SESSION['data']['bookmark_data']['city'] : $city = "";
(isset($_SESSION['data']['bookmark_data']['district']) && $_SESSION['data']['bookmark_data']['district'] != "") ? $district = $_SESSION['data']['bookmark_data']['district'] : $district = "";
(isset($_SESSION['data']['bookmark_data']['school']) && $_SESSION['data']['bookmark_data']['school'] != "") ? $school = $_SESSION['data']['bookmark_data']['school'] : $school = "";
*/
// Clean up 'data'
unset($_SESSION['data']['bookmark_status']);
unset($_SESSION['data']['do']);
// 2021-12-31: Ab 2022 in 'bookmark_data_2' speichern
if(date('Y') >= 2022):
$sql = "INSERT INTO ".TABLE_BOOKMARK_DATA_2." ";
else:
$sql = "INSERT INTO ".TABLE_BOOKMARK_DATA." ";
endif;
$sql .= "(date_added, last_modified, bookmark_id, client_id, version, modules_data, data, emission, emission_self, emission_other, kwh, performance, emission_td_total, status) ";
$sql .= "VALUES(
'".date("Y-m-d H:i:s")."',
'".date("Y-m-d H:i:s")."',
'".$bookmark_id."',
'".$customer_settings['customer']['session_id']."',
'".$customer_settings['version']."',
'".$db->escape($modules_data)."',
'".json_encode($_SESSION['data'])."',
'".json_encode($_SESSION['emission'])."',
'".json_encode($_SESSION['emission_self'])."',
'".json_encode($_SESSION['emission_other'])."',
'".json_encode($_SESSION['kwh'])."',
'".json_encode($_SESSION['performance'])."',
'".$db->escape($_SESSION['emission']['td']['total'])."',
'".$db->escape($status)."'
)";
if($db->query($sql) === false) db_error($sql, __LINE__, __FILE__, $rollback = true, $exit = true);
if(DEBUG_SQL) $db->debug();
return $bookmark_id;
}
?>

View File

@ -1,469 +0,0 @@
<?php
/**
* Calculate optimum: "Zuhause": "Heizung"
*/
function getOptimumByHeating()
{
global $factor_living_hs_type;
global $factor_living_hc_cy;
global $factor_living_hs_co2_conversion;
/* Input validation */
if(isset($_SESSION['data']['living_hc_space']))
{
$_SESSION['data']['living_hc_space'] = str_replace(",", ".", $_SESSION['data']['living_hc_space']);
$_SESSION['data']['living_hc_space'] = (float) $_SESSION['data']['living_hc_space'];
}
if(isset($_SESSION['data']['living_hs_consumption']))
{
$_SESSION['data']['living_hs_consumption'] = str_replace(",", ".", $_SESSION['data']['living_hs_consumption']);
$_SESSION['data']['living_hs_consumption'] = (float) $_SESSION['data']['living_hs_consumption'];
}
$_SESSION['optimum']['living_hs'] = 0;
if(!isset($_SESSION['data']['living_hs_type']) || empty($_SESSION['data']['living_hs_type'])) return;
/* Calculate optimum */
$_SESSION['optimum']['living_hs'] =
// bcmul($factor_living_hc_cy[$_SESSION['data']['living_hc_type']][$_SESSION['data']['living_hc_cy']], $_SESSION['data']['living_hc_space'], 2);
bcmul($factor_living_hc_cy[$_SESSION['data']['living_hc_type']]['neh'], $_SESSION['data']['living_hc_space'], 2);
$_SESSION['optimum']['living_hs'] =
bcmul($_SESSION['optimum']['living_hs'], $factor_living_hs_co2_conversion[$_SESSION['data']['living_hs_type']], 2);
/* divided by $_SESSION['data']['living_persons'] */
$_SESSION['optimum']['living_hs'] = bcdiv($_SESSION['optimum']['living_hs'], $_SESSION['data']['living_persons']);
/* Calculate Potential */
$_SESSION['potential']['living_hs'] = bcsub($_SESSION['emission']['td']['living_hs'], $_SESSION['optimum']['living_hs'], 2);
$_SESSION['potential']['living_hs'] = bcsub($_SESSION['emission']['td']['living_hs'], $_SESSION['optimum']['living_hs'], 2);
return;
}
/**
* Calculate optimum: "Zuhause": "Strom"
*/
function getOptimumByPower()
{
global $factor_living_pt_type;
global $factor_living_pt_estimate_consumption;
global $factor_living_pt_estimate_consumption_basic;
global $factor_living_pt_type_greenpower;
global $evaluation_emission_living_pt;
$_SESSION['optimum']['living_pt'] = 0;
$_SESSION['optimum']['living_pt_by_persons'] = 0;
if($_SESSION['data']['living_pt_consumption_type'] == "detail")
{
$evaluation_living_pt_consumption_kwh = $_SESSION['data']['living_pt_consumption'];
}
if($_SESSION['data']['living_pt_consumption_type'] == "estimate")
{
$evaluation_living_pt_consumption_kwh = $_SESSION['data']['living_pt_consumption_estimate_kwh'];
if(isset($_SESSION['data']['living_hs_consumption_estimate_warmwater_kwh'])) $evaluation_living_pt_consumption_kwh = bcsub($_SESSION['data']['living_pt_consumption_estimate_kwh'], $_SESSION['data']['living_hs_consumption_estimate_warmwater_kwh']);
}
/* Check if "living_pt_type" has an "Ökostrom-Flag" */
if(in_array($_SESSION['data']['living_pt_type'], $factor_living_pt_type_greenpower))
{
/* 1 person */
// $_SESSION['optimum']['living_pt'] =
// bcsub($_SESSION['data']['living_pt_consumption'], $evaluation_emission_living_pt[$_SESSION['data']['living_persons']]["sehrgut"]["max"]);
$_SESSION['optimum']['living_pt'] =
bcmul($evaluation_emission_living_pt[$_SESSION['data']['living_persons']]["sehrgut"]["max"], $factor_living_pt_type[$_SESSION['data']['living_pt_type']]);
}
else
{
/* 1 person */
$_SESSION['optimum']['living_pt'] =
bcmul($evaluation_living_pt_consumption_kwh, $factor_living_pt_type["strom_oeko"]);
}
/* divided by $_SESSION['data']['living_persons'] */
$_SESSION['optimum']['living_pt_by_persons'] =
bcdiv($_SESSION['optimum']['living_pt'], $_SESSION['data']['living_persons']);
/* Calculate Potential */
$_SESSION['potential']['living_pt'] =
bcsub($_SESSION['emission']['td']['living_pt'], $_SESSION['optimum']['living_pt'], 2);
$_SESSION['potential']['living_pt_by_persons'] =
bcsub($_SESSION['emission']['td']['living_pt_by_persons'], $_SESSION['optimum']['living_pt_by_persons'], 2);
return;
}
/**
* "Ernährung": Calculate optimum
*/
function getOptimumByFood()
{
global $factor_food_details_age;
global $factor_food_details_activity;
global $factor_food_details_sport;
global $factor_food_eating_habits;
$_SESSION['optimum']['total_food'] = 0;
if($_SESSION['data']['food_calc_mode'] == "detail")
{
foreach($_SESSION['data']['food_details'] as $key => $val)
{
if($key > 0 && $key <= $_SESSION['data']['food_persons'])
{
/* input validation */
if(!isset($val['weight'])) $val['weight'] = 0;
$val['weight'] = str_replace(",", ".", $val['weight']);
$val['weight'] = (float) $val['weight'];
$_SESSION['data']['food_details'][$key]['weight'] = $val['weight'];
if($_SESSION['data']['food_details'][$key]['weight'] == 0) return;
/* kcal / Person */
$_SESSION['data']['food_detail_kcal'][$key] = 0;
$_SESSION['data']['food_detail_kcal'][$key] = bcmul($factor_food_details_age[$val['sex']][$val['age']]['kcal'], $val['weight'], 2); // Kalorienbedarf Frauen / Männer detailliert
$_SESSION['data']['food_detail_kcal'][$key] = bcadd($_SESSION['data']['food_detail_kcal'][$key], $factor_food_details_age[$val['sex']][$val['age']]['offset'], 2); // Kalorienbedarf Frauen / Männer detailliert
$_SESSION['data']['food_detail_kcal'][$key] = bcmul($_SESSION['data']['food_detail_kcal'][$key], $factor_food_details_activity[$val['activity']], 2);
$_SESSION['data']['food_detail_kcal'][$key] = bcmul($_SESSION['data']['food_detail_kcal'][$key], $factor_food_details_sport[$val['sport']], 2);
/* CO2 Berechnung auf Basis des Kalorienbedarfs */
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['data']['food_detail_kcal'][$key], FOOD_KCAL_CO2TONS, 2);
}
}
foreach($_SESSION['data']['food_eating_habits'] as $key => $val)
{
if($key > 0 && $key <= $_SESSION['data']['food_persons'])
{
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['type']["vegan"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['regional']["nur"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['seasonal']["nur"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['frozenfoods']["nie"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['oeko']["oft"], 2);
/**
* Get optimum total values for "Ernährung"
*/
$_SESSION['optimum']['total_food'] += $_SESSION['optimum']['food_detail'][$key];
}
}
}
if($_SESSION['data']['food_calc_mode'] == "general")
{
$key = 0;
$_SESSION['data']['food_detail_kcal'][$key] = 0;
$_SESSION['data']['food_detail_kcal'][$key] = bcmul($_SESSION['data']['food_persons'], FOOD_KCAL_DEFAULT_VALUE);
/* CO2 Berechnung auf Basis des Kalorienbedarfs */
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['data']['food_detail_kcal'][$key], FOOD_KCAL_CO2TONS, 2);
foreach($_SESSION['data']['food_eating_habits'] as $key => $val)
{
if($key == 0)
{
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['type']["vegan"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['regional']["nur"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['seasonal']["nur"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['frozenfoods']["nie"], 2);
$_SESSION['optimum']['food_detail'][$key] = bcmul($_SESSION['optimum']['food_detail'][$key], $factor_food_eating_habits['oeko']["oft"], 2);
/**
* Get optimum total values for "Ernährung"
*/
$_SESSION['optimum']['total_food'] += $_SESSION['optimum']['food_detail'][$key];
}
}
}
/* divided by $_SESSION['data']['living_persons'] */
$_SESSION['optimum']['total_food_by_persons'] =
bcdiv($_SESSION['optimum']['total_food'], $_SESSION['data']['food_persons']);
/* Calculate Potential */
$_SESSION['potential']['total_food'] =
bcsub($_SESSION['emission']['td']['total_food'], $_SESSION['optimum']['total_food'], 2);
$_SESSION['potential']['total_food_by_persons'] =
bcsub($_SESSION['emission']['td']['total_food_by_persons'], $_SESSION['optimum']['total_food_by_persons'], 2);
return;
}
/**
* "Konsum": Calculate target emissions
*/
function getOptimumByConsumption()
{
global $factor_consumption_consumer_habits;
global $factor_consumption_consumer_criteria;
global $factor_consumption_hotel_visits;
global $factor_consumption_house_type;
global $factor_consumption_vehicles;
global $factor_consumption_living_space_per_person;
global $factor_consumption_household_size;
$_SESSION['optimum']['total_consumption'] = 0;
$_SESSION['optimum']['consumption'] = array();
if(isset($_SESSION['data']['consumption_persons']) && !empty($_SESSION['data']['consumption_persons']))
{
if($_SESSION['data']['consumption_mode'] == "yes")
{
for($ii = 1; $ii <= $_SESSION['data']['consumption_persons']; $ii++)
{
$_SESSION['optimum']['consumption'][$ii] = AVERAGE_EMISSION_VALUE_CONSUMPTION;
/* Eingabefaktoren berechnen */
if(isset($_SESSION['data']['consumption_consumer_habits'][$ii]))
{
/* "Kaufverhalten" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_consumer_habits["sparsam"], 2);
}
if(isset($_SESSION['data']['consumption_consumer_criteria'][$ii]))
{
/* "Kaufkriterien" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_consumer_criteria["lang"], 2);
}
if(isset($_SESSION['data']['consumption_hotel_visits'][$ii]))
{
/* "Hotelübernachtungen" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_hotel_visits["zwei"], 2);
}
/**
* Get optimum total values
*/
$_SESSION['optimum']['total_consumption'] += $_SESSION['optimum']['consumption'][$ii];
}
}
if($_SESSION['data']['consumption_mode'] == "no")
{
$ii = 1;
$_SESSION['optimum']['consumption'][$ii] = AVERAGE_EMISSION_VALUE_CONSUMPTION;
/* Eingabefaktoren berechnen */
if(isset($_SESSION['data']['consumption_consumer_habits'][$ii]))
{
/* "Kaufverhalten" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_consumer_habits["sparsam"], 2);
}
if(isset($_SESSION['data']['consumption_consumer_criteria'][$ii]))
{
/* "Kaufkriterien" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_consumer_criteria["lang"], 2);
}
if(isset($_SESSION['data']['consumption_hotel_visits'][$ii]))
{
/* "Hotelübernachtungen" */
$_SESSION['optimum']['consumption'][$ii] =
bcmul($_SESSION['optimum']['consumption'][$ii],
$factor_consumption_hotel_visits["zwei"], 2);
}
/**
* Get optimum total values
*/
$_SESSION['optimum']['total_consumption'] += $_SESSION['optimum']['consumption'][$ii];
$_SESSION['optimum']['total_consumption'] = bcmul($_SESSION['optimum']['total_consumption'], $_SESSION['data']['consumption_persons'], 2);
}
/* Hintergrundfaktoren berechnen */
if(isset($_SESSION['data']['consumption_house_type']))
{
/* "Haustyp" */
$_SESSION['optimum']['total_consumption'] =
bcmul($_SESSION['optimum']['total_consumption'],
$factor_consumption_house_type[$_SESSION['data']['consumption_house_type']], 2);
}
if(isset($_SESSION['data']['consumption_vehicles']))
{
/* "Fahrzeuge" */
$_SESSION['optimum']['total_consumption'] =
bcmul($_SESSION['optimum']['total_consumption'],
$factor_consumption_vehicles[$_SESSION['data']['consumption_vehicles']], 2);
}
/* "Haushaltsgröße" */
$_SESSION['optimum']['total_consumption'] =
bcmul($_SESSION['optimum']['total_consumption'],
$factor_consumption_household_size[$_SESSION['data']['living_persons']], 2);
if(isset($_SESSION['data']['consumption_living_space']) && !empty($_SESSION['data']['consumption_living_space']))
{
/* Input validation */
if(isset($_SESSION['data']['consumption_living_space']))
{
$_SESSION['data']['consumption_living_space'] = str_replace(",", ".", $_SESSION['data']['consumption_living_space']);
$_SESSION['data']['consumption_living_space'] = (float) $_SESSION['data']['consumption_living_space'];
}
/* "Wohnfläche pro Person" */
foreach($factor_consumption_living_space_per_person[$_SESSION['data']['living_persons']] as $key => $val)
{
if(bcdiv($_SESSION['data']['consumption_living_space'], $_SESSION['data']['living_persons']) >= $val["min"] && bcdiv($_SESSION['data']['consumption_living_space'], $_SESSION['data']['living_persons']) <= $val["max"])
{
$_SESSION['optimum']['total_consumption'] =
bcmul($_SESSION['optimum']['total_consumption'], $key, 2);
}
}
}
}
/* divided by $_SESSION['data']['living_persons'] */
$_SESSION['optimum']['total_consumption_by_persons'] =
bcdiv($_SESSION['optimum']['total_consumption'], $_SESSION['data']['consumption_persons']);
/* Calculate Potential */
$_SESSION['potential']['total_consumption'] =
bcsub($_SESSION['emission']['td']['total_consumption'], $_SESSION['optimum']['total_consumption'], 2);
$_SESSION['potential']['total_consumption_by_persons'] =
bcsub($_SESSION['emission']['td']['total_consumption_by_persons'], $_SESSION['optimum']['total_consumption_by_persons'], 2);
return;
}
function scenarioLivingHs()
{
GLOBAL $factor_living_hs_type;
GLOBAL $factor_living_hs_co2_conversion;
GLOBAL $factor_living_hc_cy;
GLOBAL $fd_living_hs_avg_room_temp;
GLOBAL $fd_living_hs_airing_habits;
GLOBAL $fd_living_hs_warm_water_consumption;
GLOBAL $fd_living_hs_saving_fittings;
GLOBAL $fd_living_hc_type;
GLOBAL $fd_living_hc_cy;
GLOBAL $fd_living_hs_type;
GLOBAL $customer_settings;
if($_SESSION['data']['living_hs_consumption_type'] == "estimate") $evaluation_living_consumption = $_SESSION['data']['living_hs_consumption_estimate_kwh'] + $_SESSION['data']['living_hs_consumption_estimate_warmwater_kwh'];
if($_SESSION['data']['living_hs_consumption_type'] == "detail") $evaluation_living_consumption = $_SESSION['data']['living_hs_consumption'];
if($_SESSION['data']['living_hs_consumption_type'] == "estimate") $evaluation_living_hs_kennwert = 1;
if($_SESSION['data']['living_hs_consumption_type'] == "detail") $evaluation_living_hs_kennwert = bcdiv($factor_living_hs_type[$_SESSION['data']['living_hs_type']], $factor_living_hs_co2_conversion[$_SESSION['data']['living_hs_type']], 2 );
$evaluation_living_hs_kennwert = bcmul($evaluation_living_hs_kennwert, $evaluation_living_consumption, 2);
$evaluation_living_hs_kennwert = bcdiv($evaluation_living_hs_kennwert, $_SESSION['data']['living_hc_space'], 2 );
$evaluation_living_hs_kennwert_neh = $factor_living_hc_cy[$_SESSION['data']['living_hc_type']]["neh"];
$evaluation_living_hs_difference = bcdiv($evaluation_living_hs_kennwert, $evaluation_living_hs_kennwert_neh, 2);
$evaluation_living_hs_difference = bcsub(1, $evaluation_living_hs_difference, 2);
$evaluation_living_hs_difference = bcmul($evaluation_living_hs_difference, 100);
if($evaluation_living_hs_difference < 0) $evaluation_living_hs_difference = bcmul($evaluation_living_hs_difference, -1);
$text = "";
/* Set flag for "berechnen"-Button */
$improve_button_flag = false;
// $text .= '<h3>'.TXT_IMPROVE_EVALUATION.'</h3>';
/* Added on 2009/02/04: Lokale Berechnung für Kommunen */
$text_local_factor = "";
if(isset($customer_settings['display']['local_heating_and_power_calculation']) && $customer_settings['display']['local_heating_and_power_calculation'] === true)
{
if($_SESSION['data']['living_hs_type'] == "strom" || $_SESSION['data']['living_hs_type'] == "strom_oeko")
{
getEmissionByHeatingLocalFactor($_SESSION['emission']['td']['living_hs']);
if($_SESSION['data']['living_hs_type'] == "strom") $text_local_factor .= '<p>'.sprintf(TXT_LIVING_HS_PT_LOCAL_FACTOR_STROM, getMyResult($_SESSION['emission']['td']['living_hs_local'])).'</p>';
if($_SESSION['data']['living_hs_type'] == "strom_oeko") $text_local_factor .= '<p>'.sprintf(TXT_LIVING_HS_PT_LOCAL_FACTOR_STROMOEKO, getMyResult($_SESSION['emission']['td']['living_hs_local'])).'</p>';
}
}
/* Baujahr / Hausstandard = Passivhaus ? */
if($_SESSION['data']['living_hc_cy'] == "passivhaus")
{
$text .= '<p>'.TXT_IMPROVE_LIVING_HS_EVALUATION_1.'</p>';
$text .= $text_local_factor;
}
/* Baujahr / Hausstandard = NEH ? */
/* siehe: http://mantis.co2-handel.de/view.php?id=247
elseif($_SESSION['data']['living_hc_cy'] == "neh")
{
echo '<p>Glückwunsch, Sie wohnen bereits in einem Gebäude mit hohem energetischen Standard!</p>';
}
*/
else
{
/* Baujahr / Hausstandard = NEH ? */
/* siehe: http://mantis.co2-handel.de/view.php?id=247 */
if($_SESSION['data']['living_hc_cy'] == "neh")
{
$text .= '<p>'.TXT_IMPROVE_LIVING_HS_EVALUATION_2.'</p>';
$text .= $text_local_factor;
}
/* Energiekennwert <= Richtwert? */
if($evaluation_living_hs_kennwert <= $evaluation_living_hs_kennwert_neh)
{
$text .= '<p>'.sprintf(TXT_IMPROVE_LIVING_HS_EVALUATION_3, $_SESSION['data']['living_hc_space'], $evaluation_living_hs_difference).'</p>';
$text .= $text_local_factor;
}
/* Energiekennwert > Richtwert? */
else
{
$improve_emission = getMyResult($_SESSION['potential']['living_hs']);
/* Eigentümer? */
if($_SESSION['data']['living_hc_ownership'] == "besitzer")
{
$text .= '<p>'.sprintf(TXT_IMPROVE_LIVING_HS_EVALUATION_4, $_SESSION['data']['living_hc_space'], $evaluation_living_hs_difference, $improve_emission).'</p>';
$text .= $text_local_factor;
}
else
{
$text .= '<p>'.sprintf(TXT_IMPROVE_LIVING_HS_EVALUATION_5, $_SESSION['data']['living_hc_space'], $evaluation_living_hs_difference, $improve_emission).'</p>';
$text .= $text_local_factor;
}
} /* EOF Energiekennwert > Richtwert? */
}
// Needed in "includes/_footer_navigation.inc.php"
$improve_button_flag === true ? $_SESSION['$improve_button_flag'] = true : $_SESSION['$improve_button_flag'] = false;
return $text;
}
/* EOF improveTableLivingHs */
?>