Statistik 2

This commit is contained in:
Christian Paminger
2014-10-14 07:37:32 +00:00
parent 26f454e9c7
commit d31aeaf1fe
3 changed files with 363 additions and 0 deletions
+185
View File
@@ -0,0 +1,185 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger < christian.paminger@technikum-wien.at >
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/filter.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('addon/reports'))
die('Sie haben keine Berechtigung fuer dieses AddOn!');
$reloadstr = ''; // neuladen der liste im oberen frame
$htmlstr = '';
$errorstr = ''; //fehler beim insert
$sel = '';
$chk = '';
$filter = new filter();
$filter->filter_id = 0;
$filter->kurzbz = 'NewFilter';
$filter->sql = '';
$filter->valuename = '';
$filter->showvalue = true;
$filter->type = '';
$filter->htmlattr = '';
$filter->insertvon = $user;
$filter->updatevon = $user;
if(isset($_REQUEST["action"]) && isset($_REQUEST["filter_id"]))
{
if(!$rechte->isBerechtigt('addon/reports', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Aktion');
// echo 'DI_ID: '.var_dump((int)$_POST["filter_id"]);
// Wenn id > 0 ist -> Neuer Datensatz; ansonsten load und update
if ( ((int)$_REQUEST["filter_id"]) > 0)
$filter->load((int)$_REQUEST["filter_id"]);
if ($_REQUEST["action"]=='save')
{
$filter->kurzbz = $_POST["kurzbz"];
$filter->valuename = $_POST["valuename"];
$filter->sql = $_POST["sql"];
$filter->showvalue = isset($_POST["showvalue"]);
$filter->type = $_POST["type"];
$filter->htmlattr = $_POST["htmlattr"];
if(!$filter->save())
{
$errorstr .= $filter->errormsg;
}
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.frame_filter_overview.location.href='filter_overview.php';";
$reloadstr .= "</script>\n";
//echo '<pre>'.var_dump($filter).'</pre>';
}
}
if ((isset($_REQUEST['filter_id'])) && ((!isset($_REQUEST['neu'])) || ($_REQUEST['neu']!= "true")))
{
//echo 'loadFilter';
$filter->load($_REQUEST["filter_id"]);
if ($filter->errormsg!='')
die($filter->errormsg);
}
if($filter->filter_id > 0)
$htmlstr .= "<br><div class='kopf'>Filter <b>".$filter->filter_id."</b></div>\n";
else
$htmlstr .="<br><div class='kopf'>Neuer Filter</div>\n";
if($filter->showvalue)
$chk = "checked";
else
$chk = '';
$htmlstr .= "<form action='filter_details.php' method='POST' name='filterform'>\n";
$htmlstr .= " <table class='detail'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>KurzBz</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='kurzbz' size='16' maxlength='32' value='".$filter->kurzbz."' onchange='submitable()'></td>\n";
$htmlstr .= " <td>ValueName</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='valuename' size='16' maxlength='32' value='".$filter->valuename."' onchange='submitable()'></td>\n";
$htmlstr .= " <td>Type</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='type' size='16' maxlength='32' value='".$filter->type."' onchange='submitable()'></td>\n";
$htmlstr .= " <td>ShowValue</td>\n";
$htmlstr .= " <td><input class='detail' type='checkbox' name='showvalue' $chk onchange='submitable()'></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td valign='top'>SQL</td>\n";
$htmlstr .= " <td colspan='5'><textarea name='sql' cols='70' rows='6' onchange='submitable()'>".$filter->sql."</textarea></td>\n";
$htmlstr .= " <td valign='top'>HTML-Attributes</td>\n";
$htmlstr .= " <td colspan='2'><textarea name='htmlattr' cols='70' rows='6' onchange='submitable()'>".$filter->htmlattr."</textarea></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= " </table>\n";
$htmlstr .= "<br>\n";
$htmlstr .= "<div align='right' id='sub'>\n";
$htmlstr .= " <span id='submsg' style='color:red; visibility:hidden;'>Datensatz ge&auml;ndert!&nbsp;&nbsp;</span>\n";
$htmlstr .= " <input type='hidden' name='filter_id' value='".$filter->filter_id."'>";
$htmlstr .= " <input type='submit' value='save' name='action'>\n";
$htmlstr .= " <input type='button' value='Reset' onclick='unchanged()'>\n";
$htmlstr .= "</div>";
$htmlstr .= "</form>";
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>"
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Filter - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script type="text/javascript">
function unchanged()
{
document.filterform.reset();
document.filterform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
checkrequired(document.filterform.filter_id);
}
function checkrequired(feld)
{
if(feld.value == '')
{
feld.className = "input_error";
return false;
}
else
{
feld.className = "input_ok";
return true;
}
}
function submitable()
{
required1 = checkrequired(document.filterform.filter_id);
if(!required1)
{
document.filterform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
}
else
{
document.filterform.schick.disabled = false;
document.getElementById("submsg").style.visibility="visible";
}
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
echo $htmlstr;
echo $reloadstr;
?>
</body>
</html>
+20
View File
@@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<html lang="de_AT">
<head>
<title>AddOn Reports - Filter</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css" />
</head>
<frameset rows="33%,*">
<frame id="frame_filter_overview" src="filter_overview.php" name="frame_filter_overview" frameborder="0" />
<frame id="frame_filter_details" src="filter_details.php" name="frame_filter_details" frameborder="0" />
<noframes>
<body bgcolor="#FFFFFF">
This application works only with a frames-enabled browser.<br />
</body>
</noframes>
</frameset>
</html>
+158
View File
@@ -0,0 +1,158 @@
<?php
/* Copyright (C) 2013 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger < christian.paminger@technikum-wien.at >
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/filter.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$nl="\n";
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('addon/reports', 'suid'))
$write_admin=true;
$filter = new filter();
if (!$filter->loadAll())
die($filter->errormsg);
//$htmlstr = "<table class='liste sortable'>\n";
$htmlstr = "<form name='formular'><input type='hidden' name='check' value=''></form><table class='tablesorter' id='t1'>\n";
$htmlstr .= " <thead><tr>\n";
$htmlstr .= ' <th onmouseup="document.formular.check.value=0">ID</th>
<th title="Kurzbezeichnung des Filters">KurzBz</th>
<th>ValueName</th>
<th>ShowV</th>
<th>Type</th>
<th>HTMLAttributes</th>
<th>SQL</th>
<th>Reserve</th>';
$htmlstr .= " </tr></thead><tbody>\n";
$i = 0;
foreach ($filter->result as $filter)
{
//$htmlstr .= " <tr class='liste". ($i%2) ."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td align='right'><a href='filter_details.php?filter_id=".$filter->filter_id."' target='frame_filter_details'>".$filter->filter_id." </a>
<a href='../data/".$filter->filter_id.".html' target='_blank'>
<img title='".$filter->kurzbz." anzeigen' src='x-office-presentation.svg' height='15' />
</a>
</td>\n";
$htmlstr .= " <td><a href='filter_details.php?filter_id=".$filter->filter_id."' target='frame_filter_details'>".$filter->kurzbz."</a></td>\n";
$htmlstr .= " <td>".$filter->valuename."</td>\n";
$htmlstr .= " <td>".$filter->showvalue."</td>\n";
$htmlstr .= " <td>".$filter->type."</td>\n";
$htmlstr .= " <td>".$filter->htmlattr."</td>\n";
$htmlstr .= " <td>".substr($filter->sql,0,32)."...</td>\n";
$htmlstr .= " <td>".substr($filter->sql,0,16)."...</td>\n";
$htmlstr .= " </tr>\n";
$i++;
}
$htmlstr .= "</tbody></table>\n";
?>
<html>
<head>
<title>R&auml;ume &Uuml;bersicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<!--<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>-->
<script type="text/javascript" src="../../include/js/jquery.js"></script>
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
<style>
table.tablesorter tbody td
{
margin: 0;
padding: 0;
vertical-align: middle;
}
</style>
<script language="JavaScript" type="text/javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"]
});
});
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
function changeboolean(ort_kurzbz, name)
{
value=document.getElementById(name+ort_kurzbz).value;
var dataObj = {};
dataObj["ort_kurzbz"]=ort_kurzbz;
dataObj[name]=value;
$.ajax({
type:"POST",
url:"raum_uebersicht.php",
data:dataObj,
success: function(data)
{
if(data=="true")
{
//Image und Value aendern
if(value=="true")
value="false";
else
value="true";
document.getElementById(name+ort_kurzbz).value=value;
document.getElementById(name+"img"+ort_kurzbz).src="../../skin/images/"+value+".png";
}
else
alert("ERROR:"+data)
},
error: function() { alert("error"); }
});
}
</script>
</head>
<body class="background_main">
<a href="filter_details.php" target="frame_report_details">Neuer Filter</a>
<?php
echo $htmlstr;
?>
</body>
</html>