From c82aee0b0424a3e61c72c4efc07de615f3111e3d Mon Sep 17 00:00:00 2001 From: warmels <sdos@astron.nl> Date: Fri, 20 Jul 2007 08:17:19 +0000 Subject: [PATCH] BugID: 1079 Enkele statistieken uitgewerkt Gegevens per gebruikersgroep laten tonen ipv alles tonen aan elke gebruiker --- .../CRAFT/admin_component_types/bewerken.php | 60 ++++---- .../comp_type_functies.php | 17 +++ .../CRAFT/admin_component_types/toevoegen.php | 66 ++++---- .../CRAFT/admin_gebruikersgroep/bewerken.php | 45 +++++- .../CRAFT/admin_gebruikersgroep/toevoegen.php | 45 +++++- .../admin_gebruikersgroep/verwijderen.php | 16 +- .../comp_bewerken.php | 24 ++- .../comp_toevoegen.php | 61 +++----- .../comp_toevoegen_functies.php | 7 +- .../globale_functies.php | 88 +++++++++++ .../type_verantwoordelijke.php | 37 +++++ support/tool/CRAFT/documentatie/changes.doc | Bin 28672 -> 28672 bytes support/tool/CRAFT/includes/functies.php | 11 +- support/tool/CRAFT/includes/tree_items.js | 17 --- support/tool/CRAFT/includes/tree_items.php | 87 +++++++++-- support/tool/CRAFT/includes/type_object.php | 2 +- support/tool/CRAFT/main.php | 20 ++- support/tool/CRAFT/main/statistieken.php | 1 - .../tool/CRAFT/main_componenten/bewerken.php | 1 + .../tool/CRAFT/main_statistieken/algemeen.php | 42 ++++++ .../CRAFT/main_statistieken/componenten.php | 142 ++++++++++++++++++ .../CRAFT/main_statistieken/meldingen.php | 36 +++++ .../main_statistieken/type_componenten.php | 55 +++++++ .../main_statistieken/type_meldingen.php | 72 +++++++++ 24 files changed, 786 insertions(+), 166 deletions(-) create mode 100644 support/tool/CRAFT/admin_component_types/comp_type_functies.php create mode 100644 support/tool/CRAFT/algemene_functionaliteit/globale_functies.php create mode 100644 support/tool/CRAFT/algemene_functionaliteit/type_verantwoordelijke.php delete mode 100644 support/tool/CRAFT/includes/tree_items.js delete mode 100644 support/tool/CRAFT/main/statistieken.php create mode 100644 support/tool/CRAFT/main_statistieken/algemeen.php create mode 100644 support/tool/CRAFT/main_statistieken/componenten.php create mode 100644 support/tool/CRAFT/main_statistieken/meldingen.php create mode 100644 support/tool/CRAFT/main_statistieken/type_componenten.php create mode 100644 support/tool/CRAFT/main_statistieken/type_meldingen.php diff --git a/support/tool/CRAFT/admin_component_types/bewerken.php b/support/tool/CRAFT/admin_component_types/bewerken.php index 096c6024217..90a6f608780 100644 --- a/support/tool/CRAFT/admin_component_types/bewerken.php +++ b/support/tool/CRAFT/admin_component_types/bewerken.php @@ -6,6 +6,7 @@ $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'admin.php?p='.$_SESSION['admin_deel'].'&s=2'; require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + require_once($_SESSION['pagina'] . 'algemene_functionaliteit/globale_functies.php'); //controleren of er iemand ingelogd is... if ($LOGGED_IN = user_isloggedin()) { @@ -13,6 +14,8 @@ ?> <div id="linkerdeel"> <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."admin_component_types/comp_type_functies.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); @@ -48,7 +51,7 @@ return false; //Reserve tussen minimum en maximum - if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && + if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && ($_POST['reserve'] != 0) && ($_POST['reserve'] > $_POST['maximum'] || $_POST['reserve'] < $_POST['minimum'])) return false; @@ -62,7 +65,7 @@ $query = $query . "1', "; else $query = $query . "0', "; $query = $query . "Min_Aantal='". htmlspecialchars($_POST['minimum']) ."', Max_Aantal='". htmlspecialchars($_POST['maximum']) ."', Reserve_Minimum='". htmlspecialchars($_POST['reserve']) ."', "; - $query = $query . "Type_Verantwoordelijke='". $_POST['verantwoordelijke'] ."', Geleverd_Door='".$_POST['leverancier']."', Gefabriceerd_Door='".$_POST['fabricant']."'"; + $query = $query . "Type_Verantwoordelijke='". $_POST['hidden_verantwoordelijke'] ."', Geleverd_Door='".$_POST['leverancier']."', Gefabriceerd_Door='".$_POST['fabricant']."'"; $query = $query . " WHERE Comp_Type = '" . $_GET['c'] . "'"; if (mysql_query($query)) echo("Het gewijzigde type \"". $_POST['naam'] ."\" is in het systeem bijgewerkt<br>"); @@ -72,7 +75,7 @@ else { if (isset($_GET['c']) && $_GET['c'] != 0 ) { - + $type_selectie = -1; $query = 'SELECT * FROM comp_type WHERE Comp_Type = '. $_GET['c']; $resultaat = mysql_query($query); $row = mysql_fetch_array($resultaat); @@ -91,20 +94,18 @@ </tr> <tr> <td>Parent van het type:</td> - <td><select name="parent"> + <td> + <select name="parent" id="parent" onchange="switchDocument(<?php if(isset($_POST['hidden_verantwoordelijke'])) echo($_POST['hidden_verantwoordelijke']); else echo("-1");?>);"> <?php - $query = 'SELECT Comp_Type, Type_Naam FROM comp_type'; + //Type ophalen uit gebruikersgroeprechten + $query = "SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '".$_SESSION['groep_id']."'"; $resultaat = mysql_query($query); - if (isset($_POST['parent'])) $selectie = $_POST['parent']; - else $selectie = $row['Type_Parent']; - while ($data = mysql_fetch_array($resultaat)) { - if ($data['Comp_Type'] != $_GET['c']) { - echo('<option value="'. $data['Comp_Type'] .'"'); - if(isset($selectie) && isset($_GET['c']) && $data['Comp_Type'] == $selectie) - echo('SELECTED'); - echo('>'. $data['Type_Naam'] .'</option>'); - } - } + $data = mysql_fetch_array($resultaat); + + if (isset($_POST['parent'])) $type_selectie = $_POST['parent']; + else if(isset($_GET['c'])) $type_selectie = $row['Type_Parent']; + + Vul_Component_Types_Select_Box($data[0], $type_selectie, true); ?></select> </td> </tr> @@ -189,30 +190,21 @@ <td>Aantal op reserve:</td> <td><input name="reserve" type="text" value="<?php if(isset($_POST['reserve'])) echo(htmlentities($_POST['reserve'],ENT_QUOTES)); else echo($row['Reserve_Minimum']); ?>"> <?php - if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && + if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && ($_POST['reserve'] != 0) && ($_POST['reserve'] > $_POST['maximum'] || $_POST['reserve'] < $_POST['minimum'])) echo('<b id="type_reserve">* De invoer ('.$_POST['reserve'] .') valt buiten de min. / max. waardes.</b>'); ?></td> </tr> + <?php + if (isset($_POST['hidden_verantwoordelijke'])) + $verantwoordelijke = $_POST['hidden_verantwoordelijke']; + else $verantwoordelijke = $row['Type_Verantwoordelijke']; + + ?> + <tr><td>Type verantwoordelijke:</td><td><iframe id="frame_contact" name="frame_contact" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=<?php echo($type_selectie . "&s=" . $verantwoordelijke);?>" width="300" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td></tr> <tr> - <td>Type verantwoordelijke:</td> - <td><select name="verantwoordelijke"> - <?php - $query2 = 'SELECT Werknem_ID, inlognaam FROM gebruiker'; - $resultaat2 = mysql_query($query2); - if (isset($_POST['verantwoordelijke'])) $selectie = $_POST['verantwoordelijke']; - else $selectie = $row['Type_Verantwoordelijke']; - while ($data = mysql_fetch_array($resultaat2)) { - echo('<option value="'. $data['Werknem_ID'] .'"'); - if(isset($selectie) && $data['Werknem_ID'] == $selectie) - echo('SELECTED'); - echo('>'. $data['inlognaam'] .'</option>'); - } - ?></select></td> - </tr> - <tr> - <td id="opslaan" align="right"><a href="javascript:document.theForm.submit();">Opslaan</a></td> - <td><input id="opslaan" name="opslaan" type="hidden" value="1"></td> + <td id="opslaan" align="right"><a href="javascript:submitTypeOpslaan();">Opslaan</a></td> + <td><input name="hidden_verantwoordelijke" id="hidden_verantwoordelijke" type="hidden" value="-1"><input id="opslaan" name="opslaan" type="hidden" value="1"></td> </tr> </table> </form> diff --git a/support/tool/CRAFT/admin_component_types/comp_type_functies.php b/support/tool/CRAFT/admin_component_types/comp_type_functies.php new file mode 100644 index 00000000000..8396f75be21 --- /dev/null +++ b/support/tool/CRAFT/admin_component_types/comp_type_functies.php @@ -0,0 +1,17 @@ +<?php + + session_start(); +?> + +function switchDocument(selectie) +{ + var y=document.getElementById('parent').value; + document.getElementById('frame_contact').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=" + y + "&s=" + selectie; +} + +function submitTypeOpslaan() +{ + var z = document.frames['frame_contact'].document.getElementById('sVerantwoordelijke').value; + document.getElementById('hidden_verantwoordelijke').value = z; + document.theForm.submit(); +} \ No newline at end of file diff --git a/support/tool/CRAFT/admin_component_types/toevoegen.php b/support/tool/CRAFT/admin_component_types/toevoegen.php index 7206903d39d..dac1b9c1e77 100644 --- a/support/tool/CRAFT/admin_component_types/toevoegen.php +++ b/support/tool/CRAFT/admin_component_types/toevoegen.php @@ -5,6 +5,7 @@ $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'admin.php?p='.$_SESSION['admin_deel'].'&s=1'; require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + require_once($_SESSION['pagina'] . 'algemene_functionaliteit/globale_functies.php'); //controleren of er iemand ingelogd is... if ($LOGGED_IN = user_isloggedin()) { @@ -12,6 +13,8 @@ ?> <div id="linkerdeel"> <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."admin_component_types/comp_type_functies.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); @@ -27,7 +30,9 @@ <h2>Type component toevoegen</h2> <?php - + $Geselecteerd_Type = ''; + + function Valideer_Invoer() { if (isset($_POST['opslaan']) && $_POST['opslaan'] == 0) return false; @@ -46,7 +51,7 @@ return false; //Reserve tussen minimum en maximum - if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && + if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && ($_POST['reserve'] != 0) && ($_POST['reserve'] > $_POST['maximum'] || $_POST['reserve'] < $_POST['minimum'])) return false; @@ -61,34 +66,32 @@ $query = "INSERT INTO comp_type (Type_Naam, Type_Parent, Aangemaakt_Door, Aanmaak_Datum, Structuur_Entry, Min_Aantal, Max_Aantal, Reserve_Minimum, Type_Verantwoordelijke, Gefabriceerd_door, Geleverd_Door) "; $query = $query . " VALUES ('". htmlspecialchars($_POST['naam']) ."', '". $_POST['parent'] ."', '". $_SESSION['gebr_id'] ."' ,NOW(), '". $entry ."', '". htmlspecialchars($_POST['minimum']) ."', '"; - $query = $query. htmlspecialchars($_POST['maximum']) ."', '". htmlspecialchars($_POST['reserve']) ."', '". $_POST['verantwoordelijke'] ."', '".$_POST['fabricant']."', '". $_POST['leverancier'] ."')"; + $query = $query. htmlspecialchars($_POST['maximum']) ."', '". htmlspecialchars($_POST['reserve']) ."', '". $_POST['hidden_verantwoordelijke'] ."', '".$_POST['fabricant']."', '". $_POST['leverancier'] ."')"; if (mysql_query($query)) echo("Het nieuwe type \"". $_POST['naam'] ."\" is aan het systeem toegevoegd<br>"); else echo("Het nieuwe type \"". $_POST['naam'] ."\" kon niet aan het systeem toegevoegd worden!."); echo('<a href="'.$_SESSION['huidige_pagina'].'">Klik hier om nog een type toe te voegen.</a>'); } else { - ?> <form name="theForm" method="post" action="<?php echo($_SESSION['huidige_pagina']);?>"> <table> <tr><td>Naam van het type:</td><td><input type="text" name="naam" value="<?php if(isset($_POST['naam'])) echo(htmlentities($_POST['naam'],ENT_QUOTES)); ?>"><?php if(isset($_POST['naam']) && $_POST['naam'] == '') echo('<b id="type_naam">* Er is geen naam ingevoerd!</b>'); ?></td></tr> <tr><td>Parent van het type:</td><td> - <select name="parent"> + <select name="parent" id="parent" onchange="switchDocument(<?php if(isset($_POST['hidden_verantwoordelijke'])) echo($_POST['hidden_verantwoordelijke']); else echo("-1");?>);"> <?php - $query = 'SELECT Comp_Type, Type_Naam FROM comp_type'; + //Type ophalen uit gebruikersgroeprechten + $query = "SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '".$_SESSION['groep_id']."'"; $resultaat = mysql_query($query); - if (isset($_POST['parent'])) $selectie = $_POST['parent']; - else if(isset($_GET['c'])) $selectie = $_GET['c']; - - while ($data = mysql_fetch_array($resultaat)) { - echo('<option value="'. $data['Comp_Type'] .'"'); - if(isset($selectie) && $data['Comp_Type'] == $selectie) - echo('SELECTED'); - echo('>'. $data['Type_Naam'] .'</option>'); - } - ?> - </select></td></tr> + $data = mysql_fetch_array($resultaat); + + if (isset($_POST['parent'])) $Geselecteerd_Type = $_POST['parent']; + else if(isset($_GET['c'])) $Geselecteerd_Type = $_GET['c']; + else $Geselecteerd_Type = 'SELECTED'; + + Vul_Component_Types_Select_Box($data[0], $Geselecteerd_Type, true); + ?></select> + </td></tr> <tr><td>Structurele entry:</td><td><input name="entry" type="checkbox" value="1" <?php if(isset($_POST['entry']) && $_POST['entry'] == 1 ) echo("CHECKED"); ?>></td></tr> <tr><td>Gefabriceerd door:</td><td><select name="fabricant"> <?php @@ -119,26 +122,21 @@ <tr><td>Minimaal aan te maken aantal:</td><td><input name="minimum" type="text" value="<?php if(isset($_POST['minimum'])) echo(htmlentities($_POST['minimum'], ENT_QUOTES)); else echo('1'); ?>"><?php if (isset($_POST['minimum']) && $_POST['minimum'] < 0 ) echo('<b id="type_minimum">* Het minimum aantal ('. $_POST['minimum'] .') mag niet negatief zijn!</b>');?></td></tr> <tr><td>Maximaal aan te maken aantal:</td><td><input name="maximum" type="text" value="<?php if(isset($_POST['maximum'])) echo(htmlentities($_POST['maximum'], ENT_QUOTES)); ?>"><?php if (isset($_POST['minimum']) && isset($_POST['maximum']) && ($_POST['maximum'] < $_POST['minimum']) ) echo('<b id="type_maximum">* Het minimum aantal is hoger dan het maximum aantal!</b>'); ?> </td></tr> <tr><td>Aantal op reserve:</td><td><input name="reserve" type="text" value="<?php if(isset($_POST['reserve'])) echo(htmlentities($_POST['reserve'],ENT_QUOTES)) ?>"><?php - if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && + if (isset($_POST['minimum']) && isset($_POST['maximum']) && isset($_POST['reserve']) && ($_POST['reserve'] != 0) && ($_POST['reserve'] > $_POST['maximum'] || $_POST['reserve'] < $_POST['minimum'])) echo('<b id="type_reserve">* De invoer valt buiten de min. / max. waardes!</b>'); ?></td></tr> - <tr><td>Type verantwoordelijke:</td><td> - <select name="verantwoordelijke"> - <?php - $query = 'SELECT Werknem_ID, inlognaam FROM gebruiker'; - $resultaat = mysql_query($query); - if (isset($_POST['verantwoordelijke'])) $selectie = $_POST['verantwoordelijke']; - else $selectie = $_SESSION['gebr_id']; - - while ($data = mysql_fetch_array($resultaat)) { - echo('<option value="'. $data['Werknem_ID'] .'"'); - if (isset($selectie) && $selectie == $data['Werknem_ID']) echo(' SELECTED '); - echo('>'.$data['inlognaam'] .'</option>'); - } - ?> - </select></td></tr> - <tr><td></td><td><input name="opslaan" type="hidden" value="1"><a href="javascript:document.theForm.submit();">Opslaan</a></td></tr> + <?php + if (isset($_POST['hidden_verantwoordelijke'])) + $verantwoordelijke = $_POST['hidden_verantwoordelijke']; + else $verantwoordelijke = -1; + + if (isset($_GET['c'])) + $selectie = $_GET['c']; + else $selectie = $Geselecteerd_Type; + ?> + <tr><td>Type verantwoordelijke:</td><td><iframe id="frame_contact" name="frame_contact" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=<?php echo($selectie . "&s=" . $verantwoordelijke);?>" width="300" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td></tr> + <tr><td><input name="hidden_verantwoordelijke" id="hidden_verantwoordelijke" type="hidden" value="-1"></td><td><input name="opslaan" type="hidden" value="1"><a href="javascript:submitTypeOpslaan();">Opslaan</a></td></tr> </table> </form> <?php diff --git a/support/tool/CRAFT/admin_gebruikersgroep/bewerken.php b/support/tool/CRAFT/admin_gebruikersgroep/bewerken.php index 4a900e2a0da..1d5991e1c12 100644 --- a/support/tool/CRAFT/admin_gebruikersgroep/bewerken.php +++ b/support/tool/CRAFT/admin_gebruikersgroep/bewerken.php @@ -40,7 +40,7 @@ function checkboxWaardes($waarde) { if (isset($_POST[$waarde]) && $_POST[$waarde] == 'on') return "1"; - else return "0"; + else return "0"; } @@ -58,7 +58,9 @@ $query = $query . "Instel_Zichtbaar = '". checkboxWaardes('Inst_Zichtbaar') ."', Toevoegen = '". checkboxWaardes('Toevoeg_Rechten') ."', "; $query = $query . "Bewerken = '". checkboxWaardes('Bewerk_Rechten') ."', Verwijderen = '". checkboxWaardes('Verwijder_Rechten') ."', Admin_Rechten='". $row['Admin_Rechten'] ."'"; $query = $query . " WHERE Groep_ID = '" . $_GET['c'] . "'"; - + + + if (mysql_query($query)) echo("De gewijzigde gebruikersgroep \"". $_POST['groepsnaam'] ."\" is in het systeem bijgewerkt<br>"); else("Er is iets mis gegaan met het opslaan van de gebruikersgroep \"". $_POST['groepsnaam'] ."\"!! De gebruikersgroep is niet bijgewerkt!"); echo('<a href="'.$_SESSION['huidige_pagina'].'&c='.$_GET['c']. '">Klik hier om terug te keren naar het vorige type of selecteer links een gebruikersgroep uit de treeview.</a>'); @@ -95,6 +97,45 @@ } ?></select> </td> + </tr> + <tr> + <td>Zichtbaar vanaf:</td> + <td><select name="Comp_Type" <?php if ($row['Vaste_gegevens'] == 1) echo('DISABLED'); ?>> + <?php + $query = "SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '". $_GET['c']."'"; + $resultaat = mysql_query($query); + $data2 = mysql_fetch_array($resultaat); + + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type'; + $resultaat = mysql_query($query); + if (isset($_POST['Comp_Type'])) $selected = $_POST['Comp_Type']; + else $selected = $data2['Comp_Type_ID']; + + while ($data = mysql_fetch_array($resultaat)) { + echo("<option value=\"". $data['Comp_Type'] ."\" "); + if ($selected == $data['Comp_Type']) + echo ('SELECTED'); + echo(">". $data['Type_Naam'] ."</option>\r\n"); + } + ?></select> + </td> + </tr> + <tr> + <td>Onderliggende data vanaf component:</td> + <td><?php + $query = "SELECT onderliggende_Data FROM gebruikersgroeprechten WHERE Groep_ID = '". $_GET['c']."'"; + $resultaat = mysql_query($query); + $data2 = mysql_fetch_array($resultaat); + + echo('<input id="onderliggende_data" name="onderliggende_data" type="checkbox" '); + if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) { + if(isset($_POST['onderliggende_data']) && ($_POST['onderliggende_data'] == 1 || $_POST['onderliggende_data'] == 'on')) + echo('CHECKED'); + } + else if ($data2['onderliggende_Data'] == 1) echo('CHECKED'); + if ($row['Vaste_gegevens'] == 1) echo(' DISABLED'); + echo('>'); + ?></td> </tr> <tr> <td>Intro scherm zichtbaar:</td> diff --git a/support/tool/CRAFT/admin_gebruikersgroep/toevoegen.php b/support/tool/CRAFT/admin_gebruikersgroep/toevoegen.php index 415f3bc6fdb..ed730930f58 100644 --- a/support/tool/CRAFT/admin_gebruikersgroep/toevoegen.php +++ b/support/tool/CRAFT/admin_gebruikersgroep/toevoegen.php @@ -55,13 +55,30 @@ $resultaat = mysql_query($query); $row = mysql_fetch_array($resultaat); + //"onderliggende_data" $query = "INSERT INTO gebruikers_groepen (Groeps_Naam, Admin_Rechten, Groep_Parent, Intro_Zichtbaar, Comp_Zichtbaar, Melding_Zichtbaar, Stats_Zichtbaar, "; $query = $query . "Instel_Zichtbaar, Toevoegen, Bewerken, Verwijderen) VALUES ('". htmlentities($_POST['groepsnaam'], ENT_QUOTES) ."', '". $row['Admin_Rechten'] ."', '". $_POST['groepsparent'] ."', '"; $query = $query . Omzetten_Checkbox($_POST['hidden_intro']) ."', '". Omzetten_Checkbox($_POST['hidden_comp']) ."', '". Omzetten_Checkbox($_POST['hidden_melding']) ."', '". Omzetten_Checkbox($_POST['hidden_stats']) ."', '"; $query = $query . Omzetten_Checkbox($_POST['hidden_inst']) ."', '" . Omzetten_Checkbox($_POST['hidden_toevoeg']) ."', '". Omzetten_Checkbox($_POST['hidden_bewerk']) ."', '". Omzetten_Checkbox($_POST['hidden_verwijder']) ."')"; + + $errorLevel = 0; + if (mysql_query($query)) { + $errorLevel = 1; + + $Groep = mysql_insert_id(); + $query = "INSERT INTO gebruikersgroeprechten (Groep_ID, Comp_Type_ID, onderliggende_Data) VALUES ("; + $query = $query . "'".$Groep."', '".$_POST['Comp_Type']."', '"; + + if (isset($_POST['onderliggende_data']) && $_POST['onderliggende_data'] == 'on') + $query = $query . "1')"; + else $query = $query . "0')"; + + if (mysql_query($query)) { $errorLevel = 2; } + } - if (mysql_query($query)) echo("De nieuwe groep \"". $_POST['groepsnaam'] ."\" is aan het systeem toegevoegd<br>"); - else echo("De nieuwe groep \"". $_POST['groepsnaam'] ."\" kon niet aan het systeem toegevoegd worden!."); + if ($errorLevel == 2) echo("De nieuwe groep \"". $_POST['groepsnaam'] ."\" is samen met de groepsrechten aan het systeem toegevoegd!<br>"); + else if ($errorLevel == 0) echo("De nieuwe groep \"". $_POST['groepsnaam'] ."\" kon niet aan het systeem toegevoegd worden!."); + else if ($errorLevel == 1) echo("De nieuwe groep \"". $_POST['groepsnaam'] ."\" is aan het systeem toegevoegd.<br>Alleen er is iets foutgegaan met het toevoegen van de groepsrechten! De groepsrechten zijn dus niet aan het systeem toegevoegd!"); echo('<a href="'.$_SESSION['huidige_pagina'].'">Klik hier om nog een groep toe te voegen.</a>'); } else { @@ -94,6 +111,30 @@ ?></select> </td> </tr> + <tr> + <td>Zichtbaar vanaf:</td> + <td><select name="Comp_Type"> + <?php + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type'; + $resultaat = mysql_query($query); + if (isset($_POST['Comp_Type'])) $selected = $_POST['Comp_Type']; + else $selected = 'SELECTED'; + + while ($data = mysql_fetch_array($resultaat)) { + echo("<option value=\"". $data['Comp_Type'] ."\" "); + if ($selected == $data['Comp_Type'] || $selected == 'SELECTED'){ + echo ('SELECTED'); + $selected = $data['Comp_Type']; + } + echo(">". $data['Type_Naam'] ."</option>\r\n"); + } + ?></select> + </td> + </tr> + <tr> + <td>Onderliggende data vanaf component:</td> + <td><input type="Checkbox" name="onderliggende_data" CHECKED></td> + </tr> </table> </td></tr> <tr><td><iframe id="frame_gegevens" name="frame_gegevens" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>admin_gebruikersgroep/groep_gegevens.php?c=<?php echo($selected); ?>" width="450" height="195" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td></tr> diff --git a/support/tool/CRAFT/admin_gebruikersgroep/verwijderen.php b/support/tool/CRAFT/admin_gebruikersgroep/verwijderen.php index e2ca7662ab5..c2ea39b8bef 100644 --- a/support/tool/CRAFT/admin_gebruikersgroep/verwijderen.php +++ b/support/tool/CRAFT/admin_gebruikersgroep/verwijderen.php @@ -28,9 +28,19 @@ <?php if (isset($_POST['verwijderen']) && $_POST['verwijderen'] == 1 && isset($_POST['confirmatie']) && $_POST['confirmatie'] == 'on') { - $query = "DELETE FROM gebruikers_groepen WHERE Groep_ID = " . $_POST['groep']; - if (mysql_query($query)) echo("De door u geselecteerde gebruikersgroep is uit het systeem verwijderd.<br>"); - else("Er is iets mis gegaan met het verwijderen van de geselecteerde gebruikersgroep!! De gebruikersgroep is niet verwijderd!"); + $errorlevel = 0; + //eerst de gebruikersgroeprechten verwijderen + $query = "DELETE FROM gebruikersgroeprechten WHERE Groep_ID = '". $_POST['groep'] ."'"; + if (mysql_query($query)) { + $errorlevel = 1; + //hierna de gebruikersgroep verwijderen + $query = "DELETE FROM gebruikers_groepen WHERE Groep_ID = " . $_POST['groep']; + if (mysql_query($query)) {$errorlevel = 2;} + } + + if ($errorlevel == 2) echo("De door u geselecteerde gebruikersgroep is uit het systeem verwijderd.<br>"); + else if ($errorlevel == 0) echo ("Er is iets mis gegaan met het verwijderen van de geselecteerde gebruikersgroep!! De gebruikersgroep is niet verwijderd!<br>"); + else if ($errorlevel == 1) echo ("Er is iets mis gegaan met het verwijderen van de geselecteerde gebruikersgroep!! De groepsrechten zijn echter wel verwijderd!<br>"); echo('<a href="'.$_SESSION['huidige_pagina'].'">Klik hier om terug te keren naar het verwijderen scherm of selecteer links een gebruikersgroep uit de treeview.</a>'); } else { diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php index 6b7c06e3fb3..217bf816ce9 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php @@ -115,7 +115,7 @@ //opslaan van het component $query = "UPDATE comp_lijst SET Comp_Naam = '". htmlentities($_POST['comp_naam'], ENT_QUOTES) . "', Comp_Parent = '". $_POST['comp_nieuwe_parent'] . "', Laatste_Melding ='". $melding_id; - $query = $query . "', Comp_Locatie = '". $_POST['comp_locatie'] ."', Comp_Verantwoordelijke = '". $_POST['comp_verantwoordelijke'] . "'"; + $query = $query . "', Comp_Locatie = '". $_POST['comp_locatie'] ."', Comp_Verantwoordelijke = '". $_POST['hidden_verantwoordelijke'] . "'"; //de waarde voor de leverdatum aan de query toevoegen if (isset($_POST['leverdatum']) && $_POST['leverdatum'] != '') { @@ -230,20 +230,13 @@ ?> </select></td> </tr> - <tr> - <td>Verantwoordelijke component:</td> - <td><select name="comp_verantwoordelijke"> - <?php - $query2 = "SELECT Werknem_ID, inlognaam FROM gebruiker"; - $result = mysql_query($query2); - while ($data = mysql_fetch_array($result)) { - echo("<option value=\"". $data['Werknem_ID'] ."\""); - if ($data['Werknem_ID'] == $row['Comp_Verantwoordelijke']) echo(" SELECTED"); - echo(">". $data['inlognaam'] ."</option>\r\n"); - } - ?> - </select></td> - </tr> + <?php + if (isset($_POST['hidden_verantwoordelijke'])) + $verantwoordelijke = $_POST['hidden_verantwoordelijke']; + else $verantwoordelijke = $row['Comp_Verantwoordelijke']; + ?> + <tr><td>Verantwoordelijke:</td><td><iframe id="frame_contact" name="frame_contact" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=<?php echo($row['Comp_Type_ID'] . "&s=" . $verantwoordelijke);?>" width="300" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td></tr> + <tr> <td>Fabricant:</td> <td><select name="fabricant"> @@ -315,6 +308,7 @@ <input id="hidden_melding" name="hidden_melding" type="hidden" value=""> <input id="hidden_status" name="hidden_status" type="hidden" value=""> <input id="opslaan" name="opslaan" type="hidden" value="1"> + <input id="hidden_verantwoordelijke" name="hidden_verantwoordelijke" type="hidden" value="-1"> <input id="Voorgaande_Melding" name="Voorgaande_Melding" type="hidden" value="<?php echo($row['Laatste_Melding']); ?>"> </td> </tr> diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php index fcbe916a3cb..ef20d51dea7 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php @@ -1,4 +1,5 @@ <?php + require_once($_SESSION['pagina'] . 'algemene_functionaliteit/globale_functies.php'); //het valideren van de invoer, dus controleren of de ingevoerde gegevens opgeslagen mogen worden function Valideer_Invoer() { @@ -84,7 +85,7 @@ //de waardes, welke opgeslagen moeten worden in de database $query = $query . ") VALUES ('". htmlentities($_POST['hidden_naam'], ENT_QUOTES) ."', '". $_POST['comp_type'] ."', '". $_POST['hidden_type'] ."', '"; - $query = $query . $_POST['comp_locatie'] ."', '". $_POST['comp_verantwoordelijke']."', '".$_POST['hidden_fabricant']."', '".$_POST['hidden_leverancier']."'"; + $query = $query . $_POST['comp_locatie'] ."', '". $_POST['hidden_verantwoordelijke']."', '".$_POST['hidden_fabricant']."', '".$_POST['hidden_leverancier']."'"; //de waarde voor de leverdatum aan de query toevoegen if (isset($_POST['leverdatum']) && $_POST['leverdatum'] != '') { @@ -112,8 +113,8 @@ $Comp_ID = mysql_insert_id(); //De eerste melding van het component toevoegen, dit is zeer waarschijnlijk het plaatsen van het component oid - $query = "INSERT INTO melding_lijst (Meld_Type_ID, Comp_Lijst_ID, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Behandeld_Door, Gemeld_Door)"; - $query = $query . "VALUES ('". $_POST['type_melding'] ."', '". $Comp_ID ."'"; + $query = "INSERT INTO melding_lijst (Melding_Locatie, Meld_Type_ID, Comp_Lijst_ID, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Behandeld_Door, Gemeld_Door)"; + $query = $query . "VALUES ('". $_POST['comp_locatie'] ."', '". $_POST['type_melding'] ."', '". $Comp_ID ."'"; //het toevoegen van een statusdatum: eerst kijken of er 1 ingevuld is, anders de huidige datum gebruiken... if (isset($_POST['statusdatum']) && $_POST['statusdatum'] != '') { @@ -122,7 +123,7 @@ } else $query = $query . ", NOW()"; $query = $query . ", '". $_POST['hidden_status'] ."', '1', '". htmlentities($_POST['hidden_melding'], ENT_QUOTES) ."', '". $_SESSION['gebr_id'] ."', '". $_SESSION['gebr_id'] ."') "; - + //de melding is goed toegevoegd, dus nu een verwijzing naar de laatste melding bij het component voegen if (mysql_query($query)) { $errorLevel = 2; @@ -150,7 +151,7 @@ <table> <tr> <td>Selecteer type om toe te voegen:</td> - <td><select name="comp_type" id="comp_type" onchange="switchDocument(<?php if(isset($_POST['comp_naam'])){ echo("&n=". $_POST['hidden_naam']); } ?> );"> + <td><select name="comp_type" id="comp_type" onchange="switchDocument(<?php if(isset($_POST['comp_naam'])){ echo("'&n=". $_POST['hidden_naam']."'"); } else echo("''"); ?>, <?php if(isset($_POST['hidden_verantwoordelijke'])) echo("'".$_POST['hidden_verantwoordelijke']."'"); else echo("'-1'");?> );"> <?php if (isset($_POST['comp_type'])) $selected = $_POST['comp_type']; @@ -167,26 +168,16 @@ $selected = $data['Comp_Type_ID']; } else $selected = 'SELECTED'; - - $query = "SELECT Comp_Type, Type_Naam FROM comp_type WHERE Type_Parent IN (SELECT Comp_Type_ID FROM comp_lijst)"; - $resultaat = mysql_query($query); - //$selected = 'SELECTED'; - while ($data = mysql_fetch_array($resultaat)) { - echo('<option value="'.$data['Comp_Type'].'"'); - - //kijken of het huidige record hetzelfde is als de geposte record, - //is dit het geval, dan dit record als de huidige selectie instellen - if ($data['Comp_Type'] == $selected || $selected == 'SELECTED') { - echo(" SELECTED"); - $selected = $data['Comp_Type']; - } - echo('>'. $data['Type_Naam'] .'</option>'); - } + + //Type ophalen uit gebruikersgroeprechten + $query = "SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '".$_SESSION['groep_id']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + Vul_Component_Types_Select_Box($data[0], $selected, false); ?></select> </td> </tr> - <tr> - </tr> <tr> <td>Naam van het component:</td> <td><iframe id="frame_naam" name="frame_naam" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_naam.php?c=<?php echo($selected); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="400" height="44" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe> @@ -240,20 +231,18 @@ ?> </select></td> </tr> - <tr> - <td>Verantwoordelijke:</td> - <td><select name="comp_verantwoordelijke"> - <?php - $query = "SELECT Werknem_ID, inlognaam FROM gebruiker"; + <?php + + if (isset($_POST['hidden_verantwoordelijke'])) + $verantwoordelijke = $_POST['hidden_verantwoordelijke']; + else { + $query = "SELECT Type_Verantwoordelijke FROM comp_type WHERE Comp_Type = '". $selected ."'"; $resultaat = mysql_query($query); - while ($data = mysql_fetch_array($resultaat)) { - echo('<option value="'.$data['Werknem_ID'].'"'); - if ($_SESSION['gebr_id'] == $data['Werknem_ID']) echo(' SELECTED'); - echo('>'. $data['inlognaam'] .'</option>'); - } - ?> - </select></td> - </tr> + $data = mysql_fetch_array($resultaat); + $verantwoordelijke = $data[0]; + } + ?> + <tr><td>Verantwoordelijke:</td><td><iframe id="frame_contact" name="frame_contact" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=<?php echo($selected . "&s=" . $verantwoordelijke);?>" width="300" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td></tr> <tr> <td>Fabricant contact:</td> <td><iframe id="frame_fabricant" name="frame_fabricant" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_fabricant.php?c=<?php echo($selected); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="450" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe> @@ -281,7 +270,7 @@ <input id="hidden_aantal" name="hidden_aantal" type="hidden" value=""><input id="hidden_maximum" name="hidden_maximum" type="hidden" value=""> <input id="hidden_fabricant" name="hidden_fabricant" type="hidden" value=""><input id="hidden_leverancier" name="hidden_leverancier" type="hidden" value=""> <input id="hidden_melding" name="hidden_melding" type="hidden" value=""><input id="hidden_status" name="hidden_status" type="hidden" value=""></td> - <td><a href="javascript:submitComponentToevoegen();">Toevoegen</a></td> + <td><input name="hidden_verantwoordelijke" id="hidden_verantwoordelijke" type="hidden" value="-1"><a href="javascript:submitComponentToevoegen();">Toevoegen</a></td> </tr> </table> </form> diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php index b511e379f6f..239c18428b9 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php @@ -14,24 +14,28 @@ function SubmitComponentBewerken() { var s = document.frames['frame_melding'].document.getElementById('sStatus').value; var m = document.frames['frame_melding'].document.getElementById('sMelding').value; + var n = document.frames['frame_contact'].document.getElementById('sVerantwoordelijke').value; document.getElementById('hidden_melding').value = m; document.getElementById('hidden_status').value = s; + document.getElementById('hidden_verantwoordelijke').value = n; document.theForm.submit(); } -function switchDocument(naam) +function switchDocument(naam, verantwoordelijke) { var y=document.getElementById('comp_type').value; document.getElementById('frame_parent').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_parent.php?c=" + y + naam; document.getElementById('frame_naam').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_naam.php?c=" + y + naam; document.getElementById('frame_fabricant').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_fabricant.php?c=" + y + naam; document.getElementById('frame_leverancier').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_leverancier.php?c=" + y + naam; + document.getElementById('frame_contact').src = "<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/type_verantwoordelijke.php?c=" + y + "&s=" + verantwoordelijke; } function submitComponentToevoegen() { + var n = document.frames['frame_contact'].document.getElementById('sVerantwoordelijke').value; var s = document.frames['frame_melding'].document.getElementById('sStatus').value; var m = document.frames['frame_melding'].document.getElementById('sMelding').value; var w = document.frames['frame_parent'].document.getElementById('sComp_Parent').value; @@ -41,6 +45,7 @@ function submitComponentToevoegen() var aantal = document.frames['frame_naam'].document.getElementById('sComp_Aantal').value; var maximum = document.frames['frame_naam'].document.getElementById('sComp_Max').value; + document.getElementById('hidden_verantwoordelijke').value = n; document.getElementById('hidden_type').value = w; document.getElementById('hidden_naam').value = x; document.getElementById('hidden_fabricant').value = y; diff --git a/support/tool/CRAFT/algemene_functionaliteit/globale_functies.php b/support/tool/CRAFT/algemene_functionaliteit/globale_functies.php new file mode 100644 index 00000000000..eefb7c29936 --- /dev/null +++ b/support/tool/CRAFT/algemene_functionaliteit/globale_functies.php @@ -0,0 +1,88 @@ +<?php + + //functie welke het geheel van het vullen van ene select lijst met component types vereenvoudigt + //hierdoor hoeft er geen lange code meer geschreven te worden + //$type_selectie wordt als call by reference variable meegegeven, zodat de geselecteerde type teruggegeven kan worden + function Vul_Component_Types_Select_Box($begin_type, &$type_selectie, $toplevel) { + //deze plaatsen en daarna dit type als parent gebruiken en zo itereren + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type WHERE Comp_Type = '.$begin_type; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + if (($toplevel) || (!$toplevel && $begin_type > 1) ) { + echo('<option value="'. $data['Comp_Type'] .'"'); + if(isset($type_selectie) && $data['Comp_Type'] == $type_selectie || $type_selectie == 'SELECTED') { + echo('SELECTED'); + if ($type_selectie == 'SELECTED') $type_selectie = $data['Comp_Type']; + } + echo('>'. $data['Type_Naam'] .'</option>'); + } + echo(Component_Types($data['Comp_Type'], $type_selectie)); + } + + //functie om alle type componenten uit de database te lezen en deze hierarchisch op te slaan + //voor gebruik in een <select></select> lijst + function Component_Types($parent, &$selectie) { + $Uitkomst = ''; + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type WHERE Type_Parent = '.$parent; + $resultaat = mysql_query($query); + while ($huidige_level = mysql_fetch_array($resultaat)) { + + $Uitkomst = $Uitkomst . '<option value="'. $huidige_level['Comp_Type'] .'"'; + if(isset($selectie) && ($huidige_level['Comp_Type'] == $selectie || $selectie == 'SELECTED')) { + $Uitkomst = $Uitkomst . 'SELECTED'; + $selectie = $huidige_level['Comp_Type']; + } + $Uitkomst = $Uitkomst . '>'. $huidige_level['Type_Naam'] .'</option>'; + + $num_rows = mysql_num_rows(mysql_query($query)); + if ($num_rows > 0) $Uitkomst = $Uitkomst . Component_Types($huidige_level['Comp_Type'], $selectie); + } + return $Uitkomst; + } + + //Recursieve functie welke bekijkt (en teruggeeft) of het meegegeven type component in een structuur voorkomt + //$aant is een variabele die als "call by reference" is meegegeven, dit moet gedaan worden omdat bij normaal returnen de waarde wordt overschreven + function Check_Comp_Type($parent, $invoer, $aant) { + //alle component types selecteren, welke het meegegeven type als parent hebben + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type WHERE Type_Parent = '.$parent; + $resultaat = mysql_query($query); + //zolang er childs van het meegegeven type zijn, dan... + while ($huidige_level = mysql_fetch_array($resultaat)) { + //als de child het gezochte record is, dan $aant 1 verhogen + if($huidige_level['Comp_Type'] == $invoer) $aant = $aant + 1; + + //als het child niet het gevonden record is, dan een niveau dieper kijken + else { + //kijken of er childs zijn + $num_rows = mysql_num_rows(mysql_query($query)); + //er zijn childs, dus een niveau dieper duiken + if ($num_rows > 0) Check_Comp_Type($huidige_level['Comp_Type'], $invoer, &$aant); + } + } + } + + //Functie welke de groepen retouneert (in een array) welke access hebben tot het meegegeven componentType + function Check_groepen($Gezocht_Component) { + $Groepen = array(); + + //elk record in de gebruikersgroeprechten tabel langs om te evalueren + $query = 'SELECT * FROM gebruikersgroeprechten'; + $rest = mysql_query($query); + //per record bekijken of de groep toegang heeft tot het componenttype + while ($data = mysql_fetch_array($rest)) { + //het gezochte type is al gevonden, omdat deze in de gebruikersgroeprechten tabel staat. + if($data['Comp_Type_ID'] == $Gezocht_Component) array_push($Groepen, $data['Groep_ID']); + else { + $aantal = 0; + if ($data['onderliggende_Data'] == 1) { + //De componenttypestructuur maken en kijken of het gezochte type in de structuur voorkomt + Check_Comp_Type($data['Comp_Type_ID'], $Gezocht_Component, &$aantal); + //gevonden! + if ($aantal > 0) array_push($Groepen, $data['Groep_ID']); + } + } + } + //de (gevonden) groepen retourneren + return $Groepen; + } +?> \ No newline at end of file diff --git a/support/tool/CRAFT/algemene_functionaliteit/type_verantwoordelijke.php b/support/tool/CRAFT/algemene_functionaliteit/type_verantwoordelijke.php new file mode 100644 index 00000000000..9c77f369163 --- /dev/null +++ b/support/tool/CRAFT/algemene_functionaliteit/type_verantwoordelijke.php @@ -0,0 +1,37 @@ +<html> + <head> + </head> + <body bgcolor="#B3CCE6"> + <?php + include_once("../includes/vars.php"); + include_once("../algemene_functionaliteit/globale_functies.php"); + + if (isset($_GET['c']) && $_GET['c'] != 0) { + $Collectie = Check_groepen($_GET['c']); + echo("<form name=\"fTest\">\r\n"); + + if ($_GET['s'] == -1) { + $query = "SELECT Type_verantwoordelijke FROM comp_type WHERE Comp_Type = '". $_GET['c'] ."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $selectie = $data[0]; + } + else $selectie = $_GET['s']; + + echo("<select id=\"sVerantwoordelijke\" name=\"sComp_Fabricant\">\r\n"); + + for ($i = 0; $i < count($Collectie); $i++){ + $query = "SELECT Werknem_ID, inlognaam FROM gebruiker WHERE Groep_ID = '". $Collectie[$i] ."'"; + $resultaat = mysql_query($query); + while ($data = mysql_fetch_array($resultaat)) { + echo("<option value=\"". $data['Werknem_ID'] ."\""); + if ($selectie == $data['Werknem_ID']) echo(" SELECTED"); + echo(">". $data['inlognaam'] ."</option>\r\n"); + } + } + echo("</select></form>"); + } + ?> + </select> + </body> +</html> \ No newline at end of file diff --git a/support/tool/CRAFT/documentatie/changes.doc b/support/tool/CRAFT/documentatie/changes.doc index 5e581bf9caff615a05c372d4854d6055bc0b18e3..d789fd21f22bedd2faf216507c7c1b95fb247f92 100644 GIT binary patch delta 2872 zcmbW3e@s(X6vxjkg#w!j6cEP`-|$ByOhhOIa0+1tP=>!US)x%==#zFWEtZ0D+0vTK zj6^qeFJ_&yQRm$L5S{vFbjh~JekkaiCPpOcCegWUK{H*JOtTsHJ$-$Eh}p73KKI<8 z=bU@*xsL`0L|{N1$}otKl4+P_2*oSgj9H4y(BbbgQCP;($rw3-@u#7u8nt<Q5{U`~ zQGaCJ|J4%g7>KGU8x@xSqNifsg(M<7R?bNwYDBvV>r<4a26KEuB*cCbnyK0U7FkuI z@^@60U!TS?u;}fTu$zkZ?{VSo$28Adgo7CNs?8hS=8cXN-Cm?m86TaKqx*c)TwYU# z1zpOZak1Z$psm$ceHXbR>BPAM>w8WiCQbA!osQL==<1(96t53L>)zHP!hE#(YFVyh z-ZJPAPMGB&)@MU=8z~V*mIS5Sw5U=a4^Kj&@0{big|;4_uJxVkZQRo~<Mb!q6JIO~ z?g`VP&vO*0O(`8-uT9X~di;9(F|DMVrcC<@xf6>M`w)xuq#mtf)h1KOpnBpzi}Opl zl2>+FeGXZ2TdiK{1y4(B!;79K?ip7tH+tJ0PTAX5?e)m5%j71zPj*W)=Sdy1%O?3e za<kll!d51E+&0<kax^!~s5H#C`mA|UjYIaf$g;G~<F)xDtJU4i^I^cVMzXqGGHSA2 z_DS}3ht1K90302%wOxAE0XK~tjH8XG+N?gw<8ewh`B5)Y#9W)yC_C}zmS&;0PWC!| zQi}(HgdNN7ym4x`$tL_UM76O*^}q&X5C9v%eJ~9-kOvAt1*ir!;4ffBVqFGTz&lS7 z9RVuXgm1@HuxcF9Zm<V9#}m0g67s|h?%lrm!|jV_zs>pL=z)D_L)+g9ZG3%WdyBkE zUS4;vE_}!1Q|;x8tkhCtHnsuvz0`WqkVy!5Ap+x|^&mMQ4q~M9kxsY5@g=YoN!|-i z0}dh?bO9T(t`CHg)YsA^p=_BnS=nt&R1QvB8b6U8hVcD)fb+U5Rv3*WgwR*lVfFrq zmDRA&02)CPV5>X8MZnetjF`brzy|N#`DLL0JpOu4^c+8M`~$qNJC(^P_Kf-gO0}0b zw+wBa(97*ny*QvpW}&@##zbXJ=6aEEB&#$<R48SIbtpRvH~T|4pJ<{CKH7&6)(b%` z*Z}T>8hl2s;HjulxI}zduYx^T<iruUz*caHHJ(y0I1S9Whh)$NY`BL$unWG@V9$_` zf+ax8IZL`AWzdpds&(mQkc33}k?&VP@71(6hJaXLqr8Z1tSlPa1_IUQX*yDBHV`xm zY<v>7aVA{ODb7;n7H2%84Tj5L1=NVJBU5;qvaPtNp0_+KK{6otNINjrn7*;G#`KMy zHYq*D(_aaMO^<b!wVgvwhz;Ue!ut8aJkx?vW4Jn9#K<vr772!wgqJ7#Mc68Gmqj1Z zT8IP(#yQS;ipwOtVA3A~UieU*e<iT+KdJ>_30MwRfYrbY)`2%bCy?N18psiTqM4{z zKnZ9CZQwe%31%W*3vhz9;B)X5;Pku(E@PiRf(O8W^Y{jw1lPa~FbIAFMx<pD=mp<{ zbfjkvsGfo1CD04b0?yl8U^}+^KG+#ym-1|hRhd^3+himYPF}nJgV@XA5&L<7kRO7* z2yGvj4A(iJ8%cQv%*J_Iz*}GoxB&XVUYPp`q`(_qjdHhScHzfpbGmRJN5QYjgtt5F z{jnI;m8FYg%8C#Wd=j=vHvx+U_zlr?(iczoIMCO1lgO5uOGis{DbDm9{aTPunYGH* z^2#WDOO(tCPk{)Cq1`XJ5i|;92gkvpYeOV&h(9Y!)GsUE6@`CnI#$JVEVKjZvK^-p zi}Mux)j?QM31;X=d(CQRWrK(b!bUJ&>5iVK=FTq{N2>BgTu}j078ax_neMc?s8j&T zh;jc6yW#qwD;xWcof6@C#i#rDM-XxW{`l95=81J|oceZk_Jl<C&TWo{bx`fD-=7%M Vs{D!HPpa1*BgA2Kz2nW8e*m^U*!che delta 2551 zcmbW2eN5F=7{|}=a^VUJTu>NzfvzYH&<c5rYmtCll(&l_QFEESIW9~tOUq3+cTuyN zD_?fh_(NLFY11;9H$%;q%*a~VEPI=*!Zup1S~S;kOr_6r@BM-EWwjpmIp=rIdCv2E zf9E;BOXr}`IcW5xS&UqrZn@i%8>4qvGxSQ!8h^G;1?^V-6jttIeG>f)Yshb6f>Qa0 zQcdA~|F_>_SIVMPm3ol}vH#M~z^^n>DK9(sq3&_UJ?u}?i!GC5>|u#bHipTW|E8?R zuCGL7_)Ry_AZCvHiJQ#W8y%d!sTaRu4q`lO$nVCnyy*32#tYBsxX7FwGw1DmWzSqT zWa?k74gQ1ip}pp=h2avZmaD%_?LUL2keMajGC`@GOnKNBV=mI0*#=OU$5=`$_7HxJ z^tPnnP-T!kJ3QvlBh<lo-DmSunCl_0@skjJgG`$G%-(!+b4;CfSZCh0PEuGg>V#Wl z6)G}$n(i9kA966qrhapLQ?DJi=~>nY-X?r`%}ae_pB;F@)@||EHOwz>s&+4NR#ewG z>)myg)t&`zkF#OXlDhJ8`g-TmhRO!Fr_$|oGhgAx#o6R`);3nxh+{KO<J%Uw8=c{Z zP8KWOjSJj$)it&5X+evPeXzA{U299LuVsbLxu&CIRlpu|Alh<QY@pBfjp2_{s)ItF zfPOd+U&0?S405<Tp&MR<!|)FDLK{^-2h|gmssV!!dKzTH2-L<Z^(n;1QAD@^mxqVG z`)cTH|9eLd?d$H}^-}8QUF)A&-@anm1Iy||$8NTP1If*XU&SSR-*o(`+80i?t_Fuf zun%D(`Z$PiQ>cg%A=e8q6AzGl6sovIqfo*%aKT2{1P*TLdC28=V8qm*^xRatE=`RM zw5KE(y4#wl-%4E^lOiI-@fv4%$?#YV!;qJg92>5Sd6MU;#FW@);WPLgz5vOULkJ0T zdHC|rgWsO}=oEj)4iVFCOq!D9O=})h$zH!DQa_izcAA{T4&U;zlaTQ|&tqfbxFZ>^ zBm>0-^|UV(yy(xRHk?SBQWMlDCU50~4mb`cU>Ll7+PzT270%?xZUky0sTps10R~_c zs<_^xP{NVBU?Xe-2T9JuZ1SZL&yq)@l-^dDpdT$xgIuFSA1-vzep2XgN&a!`QifCI z@yjdLd8;*Kh1T>PMH1uQqFcv6V#qJlhucv6@R!-yp|=HNjE36`eYH56QgoH!9?~r; z^k`9VMZZ#LCu7KaN%1|FifBDpJX7y3w(F7NNoMa?Hn|dV2c({ygW}#R^O|ra$Da8v zf_8xR7`zW3z{hYFF2YZ63I2v{6lN!M!5-KPufq@UBP{0Rn*20-U@u&NL72s{%>k*Z z2db%RJ*<SMpnwV&fd?94DLewJsptkMp`xX*1-d}K`qPlf+hs#e7^%8GRnoSs1-0#v zjw&aZ%2y)B2Z@N70$WMm1$ms<TzD1s!WFm%71YWNiHJyoYb2em{jNLpc9(S?8?j{O z<qFERlXVdzLToBBh?Q3CCb5AbS3^{OK1&ja2x<t#<^bQC`ta!(b-F%PJ()a99d*r8 z(YD#@mwfFjtI%(k`SK$=jj>lRYdC2bDm0c5qC(8VcONwQ0=Ea6%3n4LO4@q&%UqsX z$JKb2^Vv^!1HB?8!p^n1VKy<4F@L!cl|_uK7~L0nf1s~&o}tg#b|0zAGolMil*(XJ zica^Xl=4sp>f!FcE)qNV+%vHG>)ta)@VWEd@8y3u$4^fAXB)~U{r(AotqU^a6GVZG hMUnJbfxhN95~9i$&iQ?6e_)k2$}k*(wXM%b{R2I0f0h6M diff --git a/support/tool/CRAFT/includes/functies.php b/support/tool/CRAFT/includes/functies.php index 6a5c151c62f..bfa763da90e 100644 --- a/support/tool/CRAFT/includes/functies.php +++ b/support/tool/CRAFT/includes/functies.php @@ -52,12 +52,11 @@ ?> } else if (optie ==4) { - <?php - echo("document.getElementById('suboptie1').innerHTML=\"Statistieken overzicht\";"); - if($_SESSION['toevoegen'] == 1) echo("document.getElementById('suboptie2').innerHTML=\"Statistieken toevoegen\";"); - if($_SESSION['bewerken'] == 1) echo("document.getElementById('suboptie3').innerHTML=\"Statistieken bewerken\";"); - if($_SESSION['verwijderen'] == 1) echo("document.getElementById('suboptie4').innerHTML=\"Statistieken verwijderen\";"); - ?> + document.getElementById('suboptie1').innerHTML="Algemeen"; + document.getElementById('suboptie2').innerHTML="Type componenten"; + document.getElementById('suboptie3').innerHTML="Componenten"; + document.getElementById('suboptie4').innerHTML="Type meldingen"; + document.getElementById('suboptie5').innerHTML="Meldingen"; } else if (optie ==5) { } diff --git a/support/tool/CRAFT/includes/tree_items.js b/support/tool/CRAFT/includes/tree_items.js deleted file mode 100644 index 845c370ecb5..00000000000 --- a/support/tool/CRAFT/includes/tree_items.js +++ /dev/null @@ -1,17 +0,0 @@ -var TREE_ITEMS = [ - ['Home', 'http://www.softcomplex.com/index.html', - ['Services', 'http://www.softcomplex.com/services.html'], - ['Download', 'http://www.softcomplex.com/download.html'], - ['Order', 'http://www.softcomplex.com/order.html'], - ['Support', 'http://www.softcomplex.com/support.html'], - ], - ['Level 0 Item 1', null, - ['Level 1 Item 0', 'links.html'], - ['Level 1 Item 1', 0, - ['Level 2 Item 0'], - ['Level 2 Item 1', 0], - ], - ['Level 1 Item 2'], - ['Level 1 Item 3'], - ] -]; \ No newline at end of file diff --git a/support/tool/CRAFT/includes/tree_items.php b/support/tool/CRAFT/includes/tree_items.php index ca0bbf19f70..94b8632b5d2 100644 --- a/support/tool/CRAFT/includes/tree_items.php +++ b/support/tool/CRAFT/includes/tree_items.php @@ -93,7 +93,9 @@ //functie om alle componenten uit de database te lezen en deze hierarchisch op te slaan function Comp_Lijst($parent) { $Collectie = array(); - $query = 'SELECT a.Comp_Lijst_ID, a.Comp_Naam FROM comp_lijst a, comp_type b WHERE a.Comp_Type_ID = b.Comp_Type AND a.Comp_Parent = '.$parent; + $query = 'SELECT Comp_Lijst_ID, Comp_Naam FROM comp_lijst WHERE Comp_Parent = '.$parent; + + //$query = 'SELECT a.Comp_Lijst_ID, a.Comp_Naam FROM comp_lijst a, comp_type b WHERE a.Comp_Type_ID = b.Comp_Type AND a.Comp_Parent = '.$parent; $resultaat = mysql_query($query); while ($huidige_level = mysql_fetch_array($resultaat)) { $Comp_Type = new Type_Object(); @@ -125,7 +127,9 @@ function Recursieve_Uitlees_Methode($type_object) { $uitkomst = ''; for ($i = 0; $i < count($type_object);$i++) { - $uitkomst = $uitkomst . "['". $type_object[$i]->Get_Naam()."', '". $_SESSION['huidige_pagina']. "&c=". $type_object[$i]->Get_ID() ."'"; + $uitkomst = $uitkomst . "['". $type_object[$i]->Get_Naam()."', "; + $uitkomst = $uitkomst . "'". $_SESSION['huidige_pagina']. "&c=". $type_object[$i]->Get_ID() ."'"; + $temp = $type_object[$i]->Get_Childarray(); if (count($temp) > 0) $uitkomst = $uitkomst . ", "; $uitkomst = $uitkomst . Recursieve_Uitlees_Methode($temp); @@ -134,35 +138,94 @@ return $uitkomst; } + //Functie welke bepaalt wat voor componenten zichtbaar zijn voor de ingelogde gebruiker + function Bepaal_Comp_Lijst() { + $Collectie = array(); + + $query = "SELECT Comp_Type FROM comp_type WHERE Comp_Type IN (SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '". $_SESSION['groep_id'] ."')"; + $result = mysql_query($query); + $row = mysql_fetch_array($result); + if ($row['Comp_Type'] != 1) { + $query = "SELECT Comp_Lijst_ID, Comp_Naam FROM comp_lijst WHERE Comp_Type_ID = '".$row['Comp_Type']."'"; + $resultaat = mysql_query($query); + while ($data = mysql_fetch_array($resultaat)) { + $Comp_Type = new Type_Object(); + $Comp_Type->Set_ID($data['Comp_Lijst_ID'],$data['Comp_Naam']); + $num_rows = mysql_num_rows(mysql_query($query)); + if ($num_rows > 0) $Comp_Type->Add(Comp_Lijst($data['Comp_Lijst_ID'])); + array_push($Collectie, $Comp_Type); + $Comp_Type = NULL; + } + } + else $Collectie = Comp_Lijst(1); + return $Collectie; + } + + //Functie welke bepaalt wat voor types componenten zichtbaar zijn voor de ingelogde gebruiker + function Bepaal_Comp_Type_Lijst() { + $Collectie = array(); + + $query = "SELECT Comp_Type, Type_Naam FROM comp_type WHERE Comp_Type IN (SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '". $_SESSION['groep_id'] ."')"; + $result = mysql_query($query); + $row = mysql_fetch_array($result); + + if ($row['Comp_Type'] != 1) { + $Comp_Type = new Type_Object(); + $Comp_Type->Set_ID($row['Comp_Type'],$row['Type_Naam']); + $query = 'SELECT Comp_Type, Type_Naam FROM comp_type WHERE Type_Parent = '.$row['Comp_Type']; + $num_rows = mysql_num_rows(mysql_query($query)); + if ($num_rows > 0) $Comp_Type->Add(Comp_Type_Lijst($row['Comp_Type'])); + array_push($Collectie, $Comp_Type); + $Comp_Type = NULL; + } + else $Collectie = Comp_Type_Lijst(1); + return $Collectie; + } + $link = mysql_connect("localhost", "root", "root") or die("Kan niet verbinden: " . mysql_error()); mysql_select_db('LOFAR-CRAFT', $link) or die('Could not select database.'); $query = 'SELECT Comp_Type, Type_Naam FROM comp_type WHERE Type_Parent = 1'; $rest = mysql_query($query); - if ($_SESSION['admin_deel'] == 1) $Types_Objecten = Comp_Type_Lijst(1); - else if ($_SESSION['admin_deel'] == 2) $Types_Objecten = Comp_Lijst(1); + //Component types + if ($_SESSION['admin_deel'] == 1) $Types_Objecten = Bepaal_Comp_Type_Lijst(); + //componenten + else if ($_SESSION['admin_deel'] == 2) $Types_Objecten = Bepaal_Comp_Lijst(); + //type meldingen else if ($_SESSION['admin_deel'] == 3) $Types_Objecten = Melding_Type_Lijst(); - else if ($_SESSION['admin_deel'] == 4) $Types_Objecten = Comp_Lijst(1); + //meldingen + else if ($_SESSION['admin_deel'] == 4) $Types_Objecten = Bepaal_Comp_Lijst(); + //gebruikersgroepen else if ($_SESSION['admin_deel'] == 5) $Types_Objecten = Gebruikersgroepen_Lijst(1); + //gebruikers else if ($_SESSION['admin_deel'] == 6) $Types_Objecten = Gebruikers_Lijst(); + //contacten else if ($_SESSION['admin_deel'] == 7) $Types_Objecten = Contacten_Lijst(1); + //Locaties else if ($_SESSION['admin_deel'] == 8) $Types_Objecten = Locaties_Lijst(); + //Het admin scherm is niet geselecteerd... else if ($_SESSION['admin_deel'] == 0) { + //componenten if ($_SESSION['main_deel'] == 2) { - if ($_SESSION['type_overzicht'] == 1) $Types_Objecten = Comp_Lijst(1); - else if ($_SESSION['type_overzicht'] == 2) $Types_Objecten = Comp_Type_Lijst(1); + if ($_SESSION['type_overzicht'] == 1) $Types_Objecten = Bepaal_Comp_Lijst(); + else if ($_SESSION['type_overzicht'] == 2) $Types_Objecten = Bepaal_Comp_Type_Lijst(); } + //meldingen else if ($_SESSION['main_deel'] == 3) { - if ($_SESSION['type_overzicht'] == 1) $Types_Objecten = Comp_Lijst(1); + if ($_SESSION['type_overzicht'] == 1) $Types_Objecten = Bepaal_Comp_Lijst(); else if ($_SESSION['type_overzicht'] == 2) $Types_Objecten = Melding_Type_Lijst(); } - + //statistieken + else if ($_SESSION['main_deel'] == 4) { + if ($_SESSION['type_overzicht'] == 1) $Types_Objecten = Bepaal_Comp_Type_Lijst(); + else if ($_SESSION['type_overzicht'] == 2) $Types_Objecten = Bepaal_Comp_Lijst(); + else if ($_SESSION['type_overzicht'] == 3) $Types_Objecten = Melding_Type_Lijst(); + } } - echo ("var TREE_ITEMS = ["); - + + echo ("var TREE_ITEMS = ["); echo(Recursieve_Uitlees_Methode($Types_Objecten)); - echo ("];"); mysql_close($link); diff --git a/support/tool/CRAFT/includes/type_object.php b/support/tool/CRAFT/includes/type_object.php index 43c03e8747d..a391f24705b 100644 --- a/support/tool/CRAFT/includes/type_object.php +++ b/support/tool/CRAFT/includes/type_object.php @@ -18,7 +18,7 @@ function Get_ID() { return $this->comp_id; } - + function Get_Childarray() { return $this->Childarray; } diff --git a/support/tool/CRAFT/main.php b/support/tool/CRAFT/main.php index 2a4488a276f..e812f0c6e71 100644 --- a/support/tool/CRAFT/main.php +++ b/support/tool/CRAFT/main.php @@ -49,8 +49,24 @@ else include($_SESSION['pagina'] . 'main_meldingen/overzicht.php'); } - //include ($_SESSION['pagina'] .'main/meldingen.php'); - else if ($pagina == 4) include ($_SESSION['pagina'] .'main/statistieken.php'); + //statistieken + else if ($pagina == 4) { + //Type Componenten + if (isset($_GET['s']) && $_GET['s'] == 2) + include($_SESSION['pagina'] . 'main_statistieken/type_componenten.php'); + //componenten + else if (isset($_GET['s']) && $_GET['s'] == 3) + include($_SESSION['pagina'] . 'main_statistieken/componenten.php'); + //Type Meldingen + else if (isset($_GET['s']) && $_GET['s'] == 4) + include($_SESSION['pagina'] . 'main_statistieken/type_meldingen.php'); + //meldingen + else if (isset($_GET['s']) && $_GET['s'] == 5) + include($_SESSION['pagina'] . 'main_statistieken/meldingen.php'); + //algemene statistieken + else + include($_SESSION['pagina'] . 'main_statistieken/algemeen.php'); + } else if ($pagina == 5) include ($_SESSION['pagina'] .'main/instellingen.php'); ?> </div> diff --git a/support/tool/CRAFT/main/statistieken.php b/support/tool/CRAFT/main/statistieken.php deleted file mode 100644 index 8835261b452..00000000000 --- a/support/tool/CRAFT/main/statistieken.php +++ /dev/null @@ -1 +0,0 @@ -Statistieken \ No newline at end of file diff --git a/support/tool/CRAFT/main_componenten/bewerken.php b/support/tool/CRAFT/main_componenten/bewerken.php index 96ace0acb36..e97b52d541b 100644 --- a/support/tool/CRAFT/main_componenten/bewerken.php +++ b/support/tool/CRAFT/main_componenten/bewerken.php @@ -1,6 +1,7 @@ <?php if(isset($_SESSION['main_deel'])){ $_SESSION['main_deel'] = 2; + $_SESSION['type_overzicht'] = 1; $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=3'; require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); diff --git a/support/tool/CRAFT/main_statistieken/algemeen.php b/support/tool/CRAFT/main_statistieken/algemeen.php new file mode 100644 index 00000000000..fd06e74d536 --- /dev/null +++ b/support/tool/CRAFT/main_statistieken/algemeen.php @@ -0,0 +1,42 @@ +<?php + if(isset($_SESSION['main_deel'])){ + $_SESSION['main_deel'] = 4; + $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=1'; + + require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + + //controleren of er iemand ingelogd is... + if ($LOGGED_IN = user_isloggedin()) { + + ?> + <div id="rechterdeel"> + + <h2>Algemene statistieken:</h2> + <table> + <tr> + <td>Aantal faciliteiten:</td><td></td> + </tr> + <tr> + <td>Gemiddeld aantal componenten per faciliteit:</td><td></td> + </tr> + <tr> + <td>Gemiddeld aantal niveaus per faciliteit:</td><td></td> + </tr> + <tr> + <td></td><td></td> + </tr> + </table> + Meeste componenten<br> + Faciliteit met de minste type componenten<br> + Aantal meldingen: + Gemiddelde aantal meldingen per faciliteit + + + + </div> + <?php + } + //niemand ingelogt, dus bezoeker naar de inlogpagina sturen + else header("Location: index.php"); + } +?> diff --git a/support/tool/CRAFT/main_statistieken/componenten.php b/support/tool/CRAFT/main_statistieken/componenten.php new file mode 100644 index 00000000000..b713b678f70 --- /dev/null +++ b/support/tool/CRAFT/main_statistieken/componenten.php @@ -0,0 +1,142 @@ +<?php + if(isset($_SESSION['main_deel'])){ + $_SESSION['main_deel'] = 4; + $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=3'; + $_SESSION['type_overzicht'] = 2; + + require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + include("status_object.php"); + date_default_timezone_set ("Europe/Amsterdam"); + + $Objecten_Array = array(); + + function zet_timestamp_om($timestamp) { + //365 (31536000) + if ($timestamp > 31536000) + return (round($timestamp / 31536000 ,2) . " jaren"); + //24 (86400) + else if ($timestamp > 86400) + return (round($timestamp / 86400 ,2) . " dagen"); + //60 (3600) + else if ($timestamp > 3600) + return (round($timestamp / 3600 ,2) . " uren"); + //60 + else if ($timestamp > 60) + return (round($timestamp / 60 ,2) . " minuten"); + else if ($timestamp == 0) + return ("0 minuten"); + } + + + function zet_datum_om($datum_tijd) { + //splitten op de spatie (formaat is als volgt: 2007-08-26 12:01:56) + $gedeeldveld=split(" ",$datum_tijd); + //datum veld opdelen zodat de jaar, maand en dagvelden makkelijk te benaderen zijn + $datum = split("-",$gedeeldveld[0]); + //tijd veld opdelen zodat de uren, minuten en secondevelden makkelijk te benaderen zijn + $tijd = split(":",$gedeeldveld[1]); + $test = mktime($tijd[0], $tijd[1], $tijd[2], $datum[1], $datum[2], $datum[0], -1); + return $test; + } + + + //controleren of er iemand ingelogd is... + if ($LOGGED_IN = user_isloggedin()) { + + ?> + <div id="linkerdeel"> + <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); + ?> + <script language="JavaScript"> + <!--// + new tree (TREE_ITEMS, TREE_TPL); + //--> + </script> + + </div> + <div id="rechterdeel"> + + <h2>Componenten</h2> + + <?php +// De totale tijd van een component in een bepaalde status<br> +// meldingen van componenten onder dit component<br> + + if (isset($_GET['c'])) { + $query = "SELECT Comp_Naam, Laatste_Melding FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."'"; + $res = mysql_query($query); + $data = mysql_fetch_array($res); + + echo("U heeft \"". $data['Comp_Naam'] ."\" geselecteerd."); + echo("<table>"); + echo("<tr>"); + echo("<td>Aantal meldingen bij dit component:</td><td>"); + + $query = "SELECT Count(Meld_Type_ID) FROM melding_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."'"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + echo($row[0] ."</td><tr>"); + + //array van statusobjecten worden: 0 waardes voor de tijd + $query = "SELECT * FROM Status"; + $res = mysql_query($query); + while ($row = mysql_fetch_array($res)) { + $Stat_Obj = new Status_Object(); + $Stat_Obj->Set_ID($row['Status_ID'],$row['Status'], 0, 0); + array_push($Objecten_Array, $Stat_Obj); + $Stat_Obj = NULL; + } + //datum nu + $eind = date('U'); + //daarna alle meldingen langs om tijden bij elkaar op te tellen. afhankelijk van de status ID + $query = "SELECT * FROM melding_lijst WHERE Meld_Lijst_ID = '".$data['Laatste_Melding']."'"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + $begin = zet_datum_om($row['Meld_Datum']); + $verschil = $eind - $begin; + + for ($i=0; $i < count($Objecten_Array); $i++) { + if ($Objecten_Array[$i]->Get_ID() == $row['Huidige_Status']) { + $Objecten_Array[$i]->Add_TotaalTijd($verschil); + $Objecten_Array[$i]->Add_Aantal(1); + } + } + $eind = zet_datum_om($row['Meld_Datum']); + + while ($row['Voorgaande_Melding'] != 1) { + //status + $query = "SELECT * FROM melding_lijst WHERE Meld_Lijst_ID = '".$row['Voorgaande_Melding']."'"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + + $begin = zet_datum_om($row['Meld_Datum']); + $verschil = $eind - $begin; + for ($i=0; $i < count($Objecten_Array); $i++) { + if ($Objecten_Array[$i]->Get_ID() == $row['Huidige_Status']) { + $Objecten_Array[$i]->Add_TotaalTijd($verschil); + $Objecten_Array[$i]->Add_Aantal(1); + } + } + $eind = zet_datum_om($row['Meld_Datum']); + } + + for ($i=0; $i < count($Objecten_Array); $i++) { + echo("<tr><td>" . $Objecten_Array[$i]->Get_Naam() . "</td><td>". zet_timestamp_om($Objecten_Array[$i]->Get_TotaalTijd()) ."</td><td>(". $Objecten_Array[$i]->Get_Aantal() ." meldingen)</td></tr>"); + } + + echo("</table>"); + + } + else { echo("Er is geen component geselecteerd!<br>Selecteer een component om hier de gegevens van te zien.");} + ?> + + </div> + <?php + } + //niemand ingelogt, dus bezoeker naar de inlogpagina sturen + else header("Location: index.php"); + } +?> diff --git a/support/tool/CRAFT/main_statistieken/meldingen.php b/support/tool/CRAFT/main_statistieken/meldingen.php new file mode 100644 index 00000000000..797de4b38d1 --- /dev/null +++ b/support/tool/CRAFT/main_statistieken/meldingen.php @@ -0,0 +1,36 @@ +<?php + if(isset($_SESSION['main_deel'])){ + $_SESSION['main_deel'] = 4; + $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=4'; + + require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + + //controleren of er iemand ingelogd is... + if ($LOGGED_IN = user_isloggedin()) { + + ?> + <div id="linkerdeel"> + <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); + ?> + <script language="JavaScript"> + <!--// + new tree (TREE_ITEMS, TREE_TPL); + //--> + </script> + + </div> + <div id="rechterdeel"> + + <h2>Meldingen</h2> + + + </div> + <?php + } + //niemand ingelogt, dus bezoeker naar de inlogpagina sturen + else header("Location: index.php"); + } +?> diff --git a/support/tool/CRAFT/main_statistieken/type_componenten.php b/support/tool/CRAFT/main_statistieken/type_componenten.php new file mode 100644 index 00000000000..7aa3f10679b --- /dev/null +++ b/support/tool/CRAFT/main_statistieken/type_componenten.php @@ -0,0 +1,55 @@ +<?php + if(isset($_SESSION['main_deel'])){ + $_SESSION['main_deel'] = 4; + $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=1'; + + require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + + //controleren of er iemand ingelogd is... + if ($LOGGED_IN = user_isloggedin()) { + + ?> + <div id="linkerdeel"> + <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); + ?> + <script language="JavaScript"> + <!--// + new tree (TREE_ITEMS, TREE_TPL); + //--> + </script> + + </div> + <div id="rechterdeel"> + + <h2>Type componenten</h2> + <table> + <tr> + <td>Aantal faciliteiten:</td><td></td> + </tr> + <tr> + <td>Gemiddeld aantal componenten per faciliteit:</td><td></td> + </tr> + <tr> + <td>Gemiddeld aantal niveaus per faciliteit:</td><td></td> + </tr> + <tr> + <td></td><td></td> + </tr> + </table> + Aantal componenten per faciliteit<br> + Hoeveel niveaus per faciliteit<br> + Faciliteit met de meeste type componenten<br> + Faciliteit met de minste type componenten<br> + Aantal meldingen + + + </div> + <?php + } + //niemand ingelogt, dus bezoeker naar de inlogpagina sturen + else header("Location: index.php"); + } +?> diff --git a/support/tool/CRAFT/main_statistieken/type_meldingen.php b/support/tool/CRAFT/main_statistieken/type_meldingen.php new file mode 100644 index 00000000000..4ce30b97e76 --- /dev/null +++ b/support/tool/CRAFT/main_statistieken/type_meldingen.php @@ -0,0 +1,72 @@ +<?php + if(isset($_SESSION['main_deel'])){ + $_SESSION['main_deel'] = 4; + $_SESSION['huidige_pagina'] = $_SESSION['pagina'] . 'main.php?p='.$_SESSION['main_deel'].'&s=4'; + $_SESSION['type_overzicht'] = 3; + + require_once($_SESSION['pagina'] . 'includes/login_funcs.php'); + + //controleren of er iemand ingelogd is... + if ($LOGGED_IN = user_isloggedin()) { + + ?> + <div id="linkerdeel"> + <?php + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree.js\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_items.php\"></script>"); + echo("<script language=\"JavaScript\" src=\"". $_SESSION['pagina'] ."includes/tree_tpl.js\"></script>"); + ?> + <script language="JavaScript"> + <!--// + new tree (TREE_ITEMS, TREE_TPL); + //--> + </script> + + </div> + <div id="rechterdeel"> + + <h2>Type meldingen</h2> + + <?php + if (isset($_GET['c'])) { + $query = "SELECT Melding_Type_Naam FROM melding_type WHERE Meld_Type_ID = '".$_GET['c']."'"; + $res = mysql_query($query); + $data = mysql_fetch_array($res); + echo("U heeft \"". $data[0] ."\" geselecteerd."); + + $query = "SELECT Count(Meld_Type_ID) FROM melding_lijst"; + $res = mysql_query($query); + $data = mysql_fetch_array($res); + + $query = "SELECT Count(Meld_Type_ID), Count(Distinct(Comp_Lijst_ID)) FROM melding_lijst WHERE Meld_Type_ID = '".$_GET['c']."'"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + echo("<table>"); + echo("<tr><td>Aantal meldingen van dit type:</td><td>". $row[0] . "</td><td>(Totale meldingen: ". $data[0] .")</td></tr>"); + + $query = "SELECT Count(Distinct(Comp_Type_ID)) FROM comp_lijst WHERE Comp_Lijst_ID IN (SELECT Distinct(Comp_Lijst_ID) FROM melding_lijst WHERE Meld_Type_ID = '".$_GET['c']."')"; + $res = mysql_query($query); + $data = mysql_fetch_array($res); + echo("<tr><td>Aantal componenten met dit type melding:</td><td>". $row[1] ."</td><td>(Verspreid over ". $data[0] ." componenttypes)</td></tr>"); + + $query = "SELECT Count(Comp_lijst_ID) as aantal, Comp_Lijst_ID from melding_lijst WHERE Meld_Type_ID = '".$_GET['c']."' AND Comp_Lijst_ID > 1 GROUP BY Comp_Lijst_ID ORDER BY aantal desc"; + $res = mysql_query($query); + $data = mysql_fetch_array($res); + $query = "select Type_Naam from comp_type WHERE Comp_Type in (SELECT Comp_Type_ID FROM comp_lijst WHERE Comp_Lijst_ID = '".$data[1]."')"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + + echo("<tr><td>Type component met de meeste meldingen: </td><td>" . $row[0] ."</td><td>(Aantal meldingen bij dit type: ". $data[0] .")</td></tr>"); + echo("</table>"); + + } + else { echo("Er is geen type melding geselecteerd!<br>Selecteer een type melding!");} + ?> + + </div> + <?php + } + //niemand ingelogt, dus bezoeker naar de inlogpagina sturen + else header("Location: index.php"); + } +?> -- GitLab