From 3baf7669ca541e47b848da8f6cef0ebab093411b Mon Sep 17 00:00:00 2001 From: warmels <sdos@astron.nl> Date: Thu, 30 Aug 2007 08:54:58 +0000 Subject: [PATCH] BugID: 1079 aantal bugs gefixt --- .../CRAFT/admin_component_types/toevoegen.php | 2 +- .../comp_beschrijving.php | 8 +- .../comp_bewerken.php | 82 +++++++++++---- .../comp_bewerken_parent.php | 83 +++++++++++++++ .../comp_toevoegen.php | 85 +++++++++++---- .../comp_toevoegen_functies.php | 19 +++- .../comp_toevoegen_naam.php | 10 +- .../comp_toevoegen_parent.php | 98 +++++++++++++++++- .../component_bewerken_extra_velden.php | 6 ++ .../component_extra_velden.php | 6 ++ .../melding_toevoegen.php | 13 +-- support/tool/CRAFT/documentatie/changes.doc | Bin 30720 -> 30720 bytes .../tool/CRAFT/documentatie/db_structuur.sql | 10 +- .../tool/CRAFT/main_componenten/zoeken.php | 64 +++++++++--- 14 files changed, 400 insertions(+), 86 deletions(-) create mode 100644 support/tool/CRAFT/algemene_functionaliteit/comp_bewerken_parent.php diff --git a/support/tool/CRAFT/admin_component_types/toevoegen.php b/support/tool/CRAFT/admin_component_types/toevoegen.php index 231dbb04966..ab22a83e850 100644 --- a/support/tool/CRAFT/admin_component_types/toevoegen.php +++ b/support/tool/CRAFT/admin_component_types/toevoegen.php @@ -84,7 +84,7 @@ $query = "SELECT Comp_Type_ID FROM gebruikersgroeprechten WHERE Groep_ID = '".$_SESSION['groep_id']."'"; $resultaat = mysql_query($query); $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'; diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_beschrijving.php b/support/tool/CRAFT/algemene_functionaliteit/comp_beschrijving.php index a62ff544392..0a973ce0060 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_beschrijving.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_beschrijving.php @@ -15,7 +15,13 @@ echo("<h3>". $data['Comp_Naam']."</h3>"); echo("<table border=\"0\">"); - + echo("<tr><td>Status component:</td><td>"); + $query = "SELECT Status FROM status WHERE Status_ID IN (SELECT Huidige_Status FROM melding_lijst WHERE Meld_Lijst_ID = '".$data['Laatste_Melding']."')"; + $res = mysql_query($query); + $row = mysql_fetch_array($res); + + echo($row[0]."</td></tr>"); + echo("<tr><td>Type component:</td><td>"); $query = "SELECT Type_Naam FROM Comp_Type WHERE Comp_Type ='".$data['Comp_Type_ID']."'"; $res = mysql_query($query); diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php index 9a4d3b20a50..9f6c517958a 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php @@ -33,8 +33,8 @@ //verplichte velden ingevuld?? if ($_POST['av' . $i] == '1') { //bestanden - if ($_POST['t' . $i] == '5') { - if ($_SESSION['bestand' . $i] == '-1') return false; + if ($_POST['at' . $i] == '5') { + if ($_SESSION['abestand' . $i] == '-1') return false; } //overige else { @@ -95,7 +95,53 @@ return false; } else return false; - if (!Type_Controle()) return false; + //controleren of er wel een PARENT voor dit component geselecteerd is + if (isset($_POST['hidden_parent']) && $_POST['hidden_parent'] =='') + return false; + //er is een PARENT ingevoerd, dus kijken of het maximum aantal niet overschreden wordt... + else { + //kijken of deze PARENT een schaduwtype is + $query = "SELECT Schaduw_Vlag FROM comp_lijst WHERE Comp_Lijst_ID = '".$_POST['hidden_parent']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + //Parent is een schaduwtype, dus maximumaantal geldt niet. + //wel controleren of dit niet zelf een parent is, in dit geval mag dit type maar 1 x voorkomen + if ($data['Schaduw_Vlag'] == 1) { + $query = "SELECT * FROM comp_type WHERE Type_Parent = '".$_POST['comp_type']."'"; + $num_rows = mysql_num_rows(mysql_query($query)); + if($num_rows > 0 && isset($_POST['hidden_schaduw']) && $_POST['hidden_schaduw'] == '0') + return false; + } + //geen schaduw_vlag, dus controleren of het maximum aantal niet overschreden wordt + else { + //kijken wat het maximum aantal voor dit type is + $query = "SELECT Max_Aantal FROM comp_type WHERE Comp_Type = '". $_POST['comp_type'] ."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $maximum = $data['Max_Aantal']; + + //kijken welke parent dit is en hoeveel comps hier al van zijn aangemaakt +1 + $query = "SELECT Count(Comp_Lijst_ID) FROM comp_lijst WHERE Comp_Parent = '".$_POST['hidden_parent']."' AND Comp_Type_ID = '".$_POST['comp_type']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $aantal = $data[0]; + + //alleen bij wijzigen van een parent, + //moet er gecontroleerd worden of het maximum aantal overschreden wordt + $query = "SELECT Comp_Parent FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + if ($data['Comp_Parent'] != $_POST['hidden_parent']) { + + //met elkaar vergelijken + if(($aantal + 1) > $maximum) + return false; + } + } + } + + if (!Type_Controle()) return false; if (!Parent_Controle()) return false; //de statusdatum controleren @@ -157,8 +203,8 @@ if(Validatie_Opslaan()) { //Een nieuwe melding van het component toevoegen, dit is zeer waarschijnlijk een bewerkenmelding oid - $query_melding = "INSERT INTO melding_lijst (Meld_Type_ID, Comp_Lijst_ID, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Behandeld_Door, Gemeld_Door, Melding_Locatie)"; - $query_melding = $query_melding . "VALUES ('". $_POST['type_melding'] ."', '".$_GET['c']."'"; + $query_melding = "INSERT INTO melding_lijst (Meld_Type_ID, Comp_Lijst_ID, Comp_Parent, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Behandeld_Door, Gemeld_Door, Melding_Locatie)"; + $query_melding = $query_melding . "VALUES ('". $_POST['type_melding'] ."', '".$_GET['c']."', '". $_POST['hidden_parent'] ."'"; //het toevoegen van een statusdatum: eerst kijken of er 1 ingevuld is, anders de huidige datum gebruiken... if (isset($_POST['statusdatum']) && $_POST['statusdatum'] != '') @@ -171,7 +217,7 @@ $melding_id = mysql_insert_id(); //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 = "UPDATE comp_lijst SET Comp_Naam = '". htmlentities($_POST['comp_naam'], ENT_QUOTES) . "', Comp_Parent = '". $_POST['hidden_parent'] . "', Laatste_Melding ='". $melding_id; $query = $query . "', Comp_Locatie = '". $_POST['comp_locatie'] ."', Comp_Verantwoordelijke = '". $_POST['hidden_verantwoordelijke'] . "'"; //de waarde voor de leverdatum aan de query toevoegen @@ -311,26 +357,19 @@ $query = "SELECT Type_Naam FROM comp_type WHERE Comp_Type = " . $row['Comp_Type_ID']; $result = mysql_query($query); $data = mysql_fetch_array($result); - echo($data[0]); + echo($data[0] . "<input type=\"hidden\" name=\"comp_type\" id=\"comp_type\" value=\"".$row['Comp_Type_ID']."\">"); ?></td> </tr> <tr> <td>Parent component:</td> - <td><input type="hidden" name="comp_huidige_parent" value="<?php echo($row['Comp_Parent']); ?>"><select name="comp_nieuwe_parent"> - <?php - $query2 = "SELECT Comp_Lijst_ID, Comp_Naam FROM comp_lijst WHERE Comp_Type_ID in (SELECT Type_Parent FROM comp_type WHERE Comp_Type = '".$row['Comp_Type_ID']."')"; - $resultaat2 = mysql_query($query2); - while ($data = mysql_fetch_array($resultaat2)) { - echo("<option value=\"". $data['Comp_Lijst_ID'] ."\""); - if (isset($_POST['comp_nieuwe_parent']) && isset($_POST['comp_huidige_parent']) && $_POST['comp_nieuwe_parent'] != $_POST['comp_huidige_parent']) { - if ($_POST['comp_nieuwe_parent'] == $data['Comp_Lijst_ID']) echo(" SELECTED"); } - else {if ($data['Comp_Lijst_ID'] == $row['Comp_Parent']) echo(" SELECTED");} - echo(">". $data['Comp_Naam'] ."</option>\r\n"); - } - ?></select> - <?php if(!Parent_Controle()) echo('<b>* Parent kan niet veranderen vanwege onderliggende componenten!</b>');?> - </td> + <?php + $selected = $row['Comp_Lijst_ID']; //is het geselecteerde component welke bewerkt gaat worden + $selectie = "&n=" .$row['Comp_Parent']; //parent component + ?> + + <td><iframe id="frame_parent" name="frame_parent" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_bewerken_parent.php?c=<?php echo($selected . $selectie); ?>" width="550" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td> </tr> + <tr> <td>Reden bewerking:</td> <td><select name="type_melding" onchange="switchMelding();"> @@ -538,6 +577,7 @@ } ?> + <input id="hidden_parent" name="hidden_parent" type="hidden" value=""> <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"> diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken_parent.php b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken_parent.php new file mode 100644 index 00000000000..0f252963c78 --- /dev/null +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken_parent.php @@ -0,0 +1,83 @@ +<html> + <head> + </head> + <body bgcolor="#B3CCE6"> + <?php + include_once("../includes/vars.php"); + + if (isset($_GET['c']) && $_GET['c'] != 0) { + $query = "SELECT Schaduw_Vlag FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $Comp_Schaduw = $data['Schaduw_Vlag']; + + $query = "SELECT Comp_Lijst_ID, Comp_Naam FROM comp_lijst WHERE Comp_Type_ID in (SELECT Type_Parent FROM comp_type WHERE Comp_Type IN (SELECT Comp_Type_ID FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."' ))"; + $num_rows = mysql_num_rows(mysql_query($query)); + + if ($num_rows == 0) + echo("No parent components available"); + else { + $resultaat = mysql_query($query); + + echo("<form name=\"fTest\" method=\"post\">\r\n"); + if(isset($_POST['sComp_Parent'])) + $selectie = $_POST['sComp_Parent']; + else if (isset($_GET['n']) && $_GET['n'] > 0) + $selectie = $_GET['n']; + else + $selectie = 'SELECTED'; + + //het geselecteerde component is geen schaduw component, dus kan deze verplaatst worden + if($Comp_Schaduw == 0) { + + echo("<select id=\"sComp_Parent\" name=\"sComp_Parent\" onchange=\" document.fTest.submit();\">\r\n"); + while ($data = mysql_fetch_array($resultaat)) { + echo("<option value=\"". $data['Comp_Lijst_ID'] ."\""); + if ($data['Comp_Lijst_ID'] == $selectie || $selectie == 'SELECTED') { + echo(' SELECTED'); + $selectie = $data['Comp_Lijst_ID']; + } + echo(">". $data['Comp_Naam'] ."</option>\r\n"); + } + echo("</select>"); + + //het aantal aangemaakte componenten per geselecteerde type, gedeelte + if ($selectie != -1) { + //kijken of $selectie een schaduw ding is: dit is de parent waarnaar verplaatst wordt + $query = "SELECT Schaduw_Vlag FROM comp_lijst WHERE Comp_Lijst_ID = '". $selectie ."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + if ($data['Schaduw_Vlag'] == '0') { + + //maximum aantal ophalen + $query = "SELECT Max_Aantal FROM comp_type WHERE Comp_Type IN (SELECT Comp_Type_ID FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."')"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $maximum = $data['Max_Aantal']; + + //aantal aangemaakte componten van dit type ophalen + $query = "SELECT Count(Comp_Lijst_ID) FROM comp_lijst WHERE Comp_Parent = '".$selectie."' AND Comp_Type_ID IN (SELECT Comp_Type_ID FROM comp_lijst WHERE Comp_Lijst_ID = '".$_GET['c']."')"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $aantal = $data[0]; + + echo(" Aangemaakt: ". $aantal ." van ". $maximum); + if ($aantal == $maximum) + echo("<font color=\"#FF0000\"><b> *Maximum componenten bereikt!</b></font>"); + } + } + } + //het geselecteerde component kan niet verplaatst worden, omdat dit een schaduw component is + else { + $query = "SELECT Comp_Naam FROM comp_lijst WHERE Comp_Lijst_ID = '".$selectie."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + echo($data['Comp_Naam'] . "<input type=\"hidden\" name=\"sComp_Parent\" id=\"sComp_Parent\" value=\"".$selectie."\">"); + } + echo("</form>"); + } + } + ?> + </body> +</html> \ No newline at end of file diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php index 32ece4c0aff..a7f2024d037 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php @@ -32,12 +32,51 @@ //het valideren van de invoer, dus controleren of de ingevoerde gegevens opgeslagen mogen worden function Valideer_Invoer() { + if (!isset($_POST['opslaan'])) + return false; + if (isset($_POST['opslaan']) && $_POST['opslaan'] != 1) return false; - - //controleren of het component niet het maximum aantal instanties van dit component overtreedt - if (isset($_POST['hidden_aantal']) && isset($_POST['hidden_maximum']) && $_POST['hidden_aantal'] > $_POST['hidden_maximum']) + + + //controleren of er wel een PARENT voor dit component geselecteerd is + if (isset($_POST['hidden_parent']) && $_POST['hidden_parent'] =='') return false; + //er is een PARENT ingevoerd, dus kijken of het maximum aantal niet overschreden wordt... + else { + + //kijken of deze PARENT een schaduwtype is + $query = "SELECT Schaduw_Vlag FROM comp_lijst WHERE Comp_Lijst_ID = '".$_POST['hidden_parent']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + //Parent is een schaduwtype, dus maximumaantal geldt niet. + //wel controleren of dit niet zelf een parent is, in dit geval mag dit type maar 1 x voorkomen + if ($data['Schaduw_Vlag'] == 1) { + $query = "SELECT * FROM comp_type WHERE Type_Parent = '".$_POST['comp_type']."'"; + $num_rows = mysql_num_rows(mysql_query($query)); + if($num_rows > 0 && isset($_POST['hidden_schaduw']) && $_POST['hidden_schaduw'] == '0') + return false; + } + //geen schaduw_vlag, dus controleren of het maximum aantal niet overschreden wordt + else { + //kijken wat het maximum aantal voor dit type is + $query = "SELECT Max_Aantal FROM comp_type WHERE Comp_Type = '". $_POST['comp_type'] ."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $maximum = $data['Max_Aantal']; + + //kijken welke parent dit is en hoeveel comps hier al van zijn aangemaakt +1 + $query = "SELECT Count(Comp_Lijst_ID) FROM comp_lijst WHERE Comp_Parent = '".$_POST['hidden_parent']."' AND Comp_Type_ID = '".$_POST['comp_type']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $aantal = $data[0]; + + //met elkaar vergelijken + if(($aantal + 1) > $maximum) + return false; + } + } //controleren of er wel een naam voor dit component ingevoerd is if (isset($_POST['hidden_naam'])) { @@ -45,10 +84,6 @@ return false; } else return false; - //controleren of er wel een type voor dit component geselecteerd is - if (isset($_POST['hidden_type']) && $_POST['hidden_type'] =='') - return false; - //de statusdatum controleren if (isset($_POST['statusdatum'])) { //wanneer de statusdatum gevuld is, dan... @@ -117,8 +152,12 @@ if (isset($_POST['hidden_fabricagedatum']) && $_POST['hidden_fabricagedatum'] != '') $query = $query . ", Fabricatie_Datum"; + //als dit het admingedeelte is, dan is het schaduw_vlag checkbox aanwezig + if(isset($_SESSION['admin_deel']) && $_SESSION['admin_deel'] > 0) + $query = $query . ", Schaduw_Vlag"; + //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 . ") VALUES ('". htmlentities($_POST['hidden_naam'], ENT_QUOTES) ."', '". $_POST['comp_type'] ."', '". $_POST['hidden_parent'] ."', '"; $query = $query . $_POST['comp_locatie'] ."', '". $_POST['hidden_verantwoordelijke']."', '".$_POST['hidden_fabricant']."', '".$_POST['hidden_leverancier']."'"; //de waarde voor de leverdatum aan de query toevoegen @@ -131,6 +170,13 @@ $query = $query . ", '". Datum_Tijd_Naar_DB_Conversie($_POST['hidden_fabricagedatum'], $_POST['hidden_fabricagetijd']) . "'"; } + //waarde voor schaduw_vlag aan de query toevoegen + if(isset($_SESSION['admin_deel']) && $_SESSION['admin_deel'] > 0) { + if (isset($_POST['hidden_schaduw']) && ($_POST['hidden_schaduw'] == '1' || $_POST['hidden_schaduw'] == 'on')) + $query = $query . ", '1'"; + else $query = $query . ",'0'"; + } + //de query afsluiten met een haakje $query = $query . ')'; @@ -146,8 +192,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 (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 ."'"; + $query = "INSERT INTO melding_lijst (Melding_Locatie, Meld_Type_ID, Comp_Lijst_ID, Comp_Parent, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Behandeld_Door, Gemeld_Door)"; + $query = $query . "VALUES ('". $_POST['comp_locatie'] ."', '". $_POST['type_melding'] ."', '". $Comp_ID ."', '". $_POST['hidden_parent'] ."'"; //het toevoegen van een statusdatum: eerst kijken of er 1 ingevuld is, anders de huidige datum gebruiken... if (isset($_POST['statusdatum']) && $_POST['statusdatum'] != '') { @@ -269,17 +315,21 @@ </tr> <tr> <td>Naam 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> + <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="150" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe> <?php if (isset($_POST['opslaan']) && ($_POST['opslaan'] == 1) && isset($_POST['hidden_naam']) && $_POST['hidden_naam'] == '') echo("<b>* Er is geen naam voor deze instantie ingevuld!</b>");?></td> </tr> <tr> <td>Parent component:</td> <?php - if(isset($_POST['hidden_type']) && isset($_POST['opslaan']) && $_POST['opslaan'] == 1) - $selectie = "&n=" . $_POST['hidden_type']; + if(isset($_POST['hidden_parent']))// && isset($_POST['opslaan']) && $_POST['opslaan'] == 1) + $selectie = "&n=" . $_POST['hidden_parent']; else $selectie = "&n=-1"; + //bepalen hoogte van het scherm + if(isset($_SESSION['admin_deel']) && $_SESSION['admin_deel'] > 0) + $hoogte = 42; + else $hoogte = 22; ?> - <td><iframe id="frame_parent" name="frame_parent" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_parent.php?c=<?php echo($selected . $selectie); ?>" width="450" height="26" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td> + <td><iframe id="frame_parent" name="frame_parent" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_parent.php?c=<?php echo($selected . $selectie); ?>" width="550" height="<?php echo($hoogte); ?>" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td> </tr> <tr> <td>Type melding:</td> @@ -396,7 +446,7 @@ </tr> <tr> <td>Extra velden:<br>(* = verplicht)</td> - <td><iframe id="frame_extra_velden" name="frame_extra_velden" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/component_extra_velden.php?c=<?php echo($selected); ?>" width="400" height="110" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe> + <td><iframe id="frame_extra_velden" name="frame_extra_velden" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/component_extra_velden.php?c=<?php echo($selected); ?>" width="400" height="100" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe> <?php if (isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && !Extra_Velden_Controle()) echo("<b>* Foutieve waardes!</b>"); ?> @@ -453,10 +503,9 @@ <input id="hidden_fabricagetijd" name="hidden_fabricagetijd" type="hidden" value="<?php echo($fabricagetijd); ?>"> <input id="hidden_leverdatum" name="hidden_leverdatum" type="hidden" value="<?php echo($leverdatum); ?>"> <input id="hidden_levertijd" name="hidden_levertijd" type="hidden" value="<?php echo($levertijd); ?>"> - <input id="hidden_type" name="hidden_type" type="hidden" value=""> + <input id="hidden_parent" name="hidden_parent" type="hidden" value=""> + <input id="hidden_schaduw" name="hidden_schaduw" type="hidden" value=""> <input id="hidden_naam" name="hidden_naam" type="hidden" value=""> - <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=""> diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php index c477c14d9e8..aa449e09682 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php @@ -71,10 +71,12 @@ 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; + var p = document.frames['frame_parent'].document.getElementById('sComp_Parent').value; document.getElementById('hidden_melding').value = m; document.getElementById('hidden_status').value = s; document.getElementById('hidden_verantwoordelijke').value = n; + document.getElementById('hidden_parent').value = p; document.theForm.submit(); } @@ -119,11 +121,20 @@ function submitComponentToevoegen() var leverdatum = document.frames['frame_leverancier'].document.getElementById('sLeverdatum').value; var fabricagetijd = document.frames['frame_fabricant'].document.getElementById('sFabricagetijd').value; var fabricagedatum = document.frames['frame_fabricant'].document.getElementById('sFabricagedatum').value; + + <?php + + if(isset($_SESSION['admin_deel']) && $_SESSION['admin_deel'] > 0) { + + echo("if (document.frames['frame_parent'].document.getElementById('schaduw')) { \n"); + echo("var q = document.frames['frame_parent'].document.getElementById('schaduw').value;\n"); + echo("document.getElementById('hidden_schaduw').value = q; \n }"); + } + + ?> - 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_parent').value = w; document.getElementById('hidden_naam').value = x; document.getElementById('hidden_fabricant').value = y; document.getElementById('hidden_leverancier').value = z; @@ -134,7 +145,5 @@ function submitComponentToevoegen() document.getElementById('hidden_melding').value = m; document.getElementById('hidden_status').value = s; - document.getElementById('hidden_aantal').value = aantal; - document.getElementById('hidden_maximum').value = maximum; document.theForm.submit(); } \ No newline at end of file diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_naam.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_naam.php index 90e92e9f92c..f7b154be4a1 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_naam.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_naam.php @@ -8,11 +8,9 @@ include_once("../includes/vars.php"); if (isset($_GET['c']) && $_GET['c'] != 0) { - $query = "SELECT Type_Naam, Min_Aantal, Max_Aantal FROM comp_type WHERE Comp_Type = '".$_GET['c']."'"; + $query = "SELECT Type_Naam FROM comp_type WHERE Comp_Type = '".$_GET['c']."'"; $resultaat = mysql_query($query); $data = mysql_fetch_array($resultaat); - $minimum = $data[1]; - $maximum = $data[2]; $naam = $data[0]; if(isset($_GET['n'])) @@ -32,11 +30,7 @@ $inputveld = $inputveld . " nr. ".($aantal + 1); $inputveld = $inputveld . "\">"; - echo("<input id=\"sComp_Aantal\" name=\"sComp_Aantal\" type=\"hidden\" value=\"". ($aantal + 1)."\">\n"); - echo("<input id=\"sComp_Max\" name=\"sComp_Max\" type=\"hidden\" value=\"". $maximum ."\">\n"); - echo("Aangemaakt: ". $aantal . " van ". $maximum); - if ($aantal + 1 > $maximum) echo("<font color=\"#FF0000\"><b> * Maximum componenten bereikt!</b></font>"); - echo("<br>\n" .$inputveld); + echo($inputveld); } ?> </body> diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_parent.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_parent.php index 5024a6bc871..75f4ef32c0b 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_parent.php +++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_parent.php @@ -1,3 +1,9 @@ +<?php + + session_start(); + +?> + <html> <head> </head> @@ -14,22 +20,104 @@ else { $resultaat = mysql_query($query); - echo("<form name=\"fTest\">\r\n"); - if (isset($_GET['n']) && $_GET['n'] > 0) + echo("<form name=\"fTest\" method=\"post\">\r\n"); + if(isset($_POST['sComp_Parent'])) + $selectie = $_POST['sComp_Parent']; + else if (isset($_GET['n']) && $_GET['n'] > 0) $selectie = $_GET['n']; else $selectie = 'SELECTED'; - echo("<select id=\"sComp_Parent\" name=\"sComp_Parent\">\r\n"); + echo("<select id=\"sComp_Parent\" name=\"sComp_Parent\" onchange=\" document.fTest.submit();\">\r\n"); while ($data = mysql_fetch_array($resultaat)) { echo("<option value=\"". $data['Comp_Lijst_ID'] ."\""); if ($data['Comp_Lijst_ID'] == $selectie || $selectie == 'SELECTED') { echo(' SELECTED'); - $selectie = -1; + $selectie = $data['Comp_Lijst_ID']; } echo(">". $data['Comp_Naam'] ."</option>\r\n"); } - echo("</select></form>"); + echo("</select>"); + + //als de gekozen parent een schaduw component is, dan geld onderstaande niet meer + $query = "SELECT Schaduw_Vlag FROM comp_lijst WHERE Comp_Lijst_ID = '".$selectie."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + //de meldingen voor het aantal aan te maken componenten maken + if ($data['Schaduw_Vlag'] == 0) { + //het aantal aangemaakte componenten per geselecteerde type, gedeelte + if ($selectie != -1) { + //maximum aantal ophalen + $query = "SELECT Max_Aantal FROM comp_type WHERE Comp_Type = '".$_GET['c']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $maximum = $data['Max_Aantal']; + + //aantal aangemaakte componten van dit type ophalen + $query = "SELECT Count(Comp_Lijst_ID) FROM comp_lijst WHERE Comp_Parent = '".$selectie."' AND Comp_Type_ID = '".$_GET['c']."'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + $aantal = $data[0]; + + echo(" Aangemaakt: ". $aantal ." van ". $maximum); + if ($aantal == $maximum) + echo("<font color=\"#FF0000\"><b> *Maximum componenten bereikt!</b></font>"); + } + } + + //het schaduwcomponentengedeelte + if(isset($_SESSION['admin_deel']) && $_SESSION['admin_deel'] > 0) { + + //als er al 1 schaduw component van dit type bestaat, dan deze niet weergeven + $query = "SELECT Comp_Lijst_ID FROM comp_lijst WHERE Comp_Type_ID = '".$_GET['c']."' AND Schaduw_Vlag='1'"; + $num_rows = mysql_num_rows(mysql_query($query)); + //echo($num_rows . " asdad "); + + //er is nog geen schaduwcomponent, dus aanmaken kan + if($num_rows == 0){ + + //Parent Component = 1 -> dan weergeven + if ($selectie == 1) { + echo("<br><input id=\"schaduw\" name=\"schaduw\" type=\"checkbox\">Schaduw component"); + } + else { + //geselecteerde parent is een schaduw + $query = "SELECT * FROM comp_lijst WHERE Comp_Lijst_ID = '".$selectie."' AND Schaduw_Vlag = '1'"; + $num_rows = mysql_num_rows(mysql_query($query)); + //parent is een schaduw + if($num_rows == 1){ + $query = "SELECT * FROM comp_type WHERE Type_Parent = '".$_GET['c']."'"; + $num_rows = mysql_num_rows(mysql_query($query)); + + //Geen parents + if ($num_rows == 0) + echo("<br>Dit is een instantie. Dit wordt geen schaduw component.<input id=\"schaduw\" name=\"schaduw\" type=\"hidden\" value=\"0\">"); + //mappen worden ook schaduw, and zelf parent dan schaduw + else + echo("<br>Dit component wordt een schaduwcomponent.<input id=\"schaduw\" name=\"schaduw\" type=\"hidden\" value=\"1\">"); + } + //parent is geen schaduw, dus dan dit ook geen schaduw laten worden + else + echo("<br>Dit component kan geen schaduw component worden.<input id=\"schaduw\" name=\"schaduw\" type=\"hidden\" value=\"0\">"); + } + } + else { + //er is een schaduwcomponent... + //dus onderscheid maken of t schaduwcomponent geselecteerd is. + $query = "SELECT Comp_Lijst_ID FROM comp_lijst WHERE Comp_Type_ID IN (SELECT Type_Parent FROM comp_type WHERE Comp_Type = '".$_GET['c']."') AND Schaduw_Vlag='1'"; + $resultaat = mysql_query($query); + $data = mysql_fetch_array($resultaat); + + if ($data['Comp_Lijst_ID'] == $selectie) + echo("<br>Dit is het schaduwcomponent voor dit type.<input id=\"schaduw\" name=\"schaduw\" type=\"hidden\" value=\"0\">"); + else echo("<br>Een schaduwcomponent bestaat voor dit type.<input id=\"schaduw\" name=\"schaduw\" type=\"hidden\" value=\"0\">"); + } + //als parent een schaduw is, en huidige type is een map -> schaduw voor deze wordt 1 + //als parent een schaduw is, en huidige type is geen map -> schaduw wordt 0 + } + + echo("</form>"); } } ?> diff --git a/support/tool/CRAFT/algemene_functionaliteit/component_bewerken_extra_velden.php b/support/tool/CRAFT/algemene_functionaliteit/component_bewerken_extra_velden.php index 1aa5ecfc636..749ea79b5c3 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/component_bewerken_extra_velden.php +++ b/support/tool/CRAFT/algemene_functionaliteit/component_bewerken_extra_velden.php @@ -1,3 +1,9 @@ +<?php + + session_start(); + +?> + <html> <head> </head> diff --git a/support/tool/CRAFT/algemene_functionaliteit/component_extra_velden.php b/support/tool/CRAFT/algemene_functionaliteit/component_extra_velden.php index 7db93eb94c0..40bba9ddd4f 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/component_extra_velden.php +++ b/support/tool/CRAFT/algemene_functionaliteit/component_extra_velden.php @@ -1,3 +1,9 @@ +<?php + + session_start(); + +?> + <html> <head> </head> diff --git a/support/tool/CRAFT/algemene_functionaliteit/melding_toevoegen.php b/support/tool/CRAFT/algemene_functionaliteit/melding_toevoegen.php index 5968e356343..8f03e8b78db 100644 --- a/support/tool/CRAFT/algemene_functionaliteit/melding_toevoegen.php +++ b/support/tool/CRAFT/algemene_functionaliteit/melding_toevoegen.php @@ -100,13 +100,13 @@ //uit de componenten lijst halen welke melding hier als laatste bij opgeslagen is //deze waarde is nodig om een keten van meldingen te kunnen vormen - $query = "SELECT Laatste_Melding FROM comp_lijst WHERE Comp_Lijst_ID = '". $Comp_Selectie ."'"; + $query = "SELECT Laatste_Melding, Comp_Parent FROM comp_lijst WHERE Comp_Lijst_ID = '". $Comp_Selectie ."'"; $resultaat = mysql_query($query); $row = mysql_fetch_array($resultaat); //de query om de melding toe te voegen, samenstellen - $query = "INSERT INTO melding_lijst (Meld_Type_ID, Melding_Locatie, Comp_Lijst_ID, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Prob_Oplossing, Behandeld_Door, Gemeld_Door, Afgehandeld)"; - $query = $query . "VALUES ('". $_POST['Type_Melding'] ."', '". $_POST['Melding_Locatie'] ."', '" .$Comp_Selectie . "'"; + $query = "INSERT INTO melding_lijst (Meld_Type_ID, Comp_Parent, Melding_Locatie, Comp_Lijst_ID, Meld_Datum, Huidige_Status, Voorgaande_Melding, Prob_Beschrijving, Prob_Oplossing, Behandeld_Door, Gemeld_Door, Afgehandeld)"; + $query = $query . "VALUES ('". $_POST['Type_Melding'] ."', '". $row['Comp_Parent']. "', '". $_POST['Melding_Locatie'] ."', '" .$Comp_Selectie . "'"; //het toevoegen van een statusdatum: eerst kijken of er 1 ingevuld is, anders de huidige datum gebruiken... if (isset($_POST['Meld_Datum']) && $_POST['Meld_Datum'] != '') { @@ -114,7 +114,7 @@ $query = $query . ", '". $datum[2]."-".$datum[1]."-".$datum[0] ." ". $_POST['Meld_Tijd'] .":00'"; } else $query = $query . ", NOW()"; - $query = $query . ", '". $_POST['hidden_status'] ."', '". $row[0] ."', '". htmlentities($_POST['hidden_beschrijving'], ENT_QUOTES) ."', '". htmlentities($_POST['hidden_oplossing'], ENT_QUOTES); + $query = $query . ", '". $_POST['hidden_status'] ."', '". $row['Laatste_Melding'] ."', '". htmlentities($_POST['hidden_beschrijving'], ENT_QUOTES) ."', '". htmlentities($_POST['hidden_oplossing'], ENT_QUOTES); $query = $query . "', '". $_POST['Behandeld_Door'] ."', '". $_POST['Gemeld_Door'] ."', '"; //de afgehandeld checkbox vertalen naar sql taal ;) if (isset($_POST['afgehandeld']) && ($_POST['afgehandeld'] == 'on' || $_POST['afgehandeld'] == '1')) @@ -192,8 +192,9 @@ } else if ($errorlevel == 0) echo("De nieuwe melding (". $Laatste_Melding .") kon niet aan het systeem toegevoegd worden!."); else if ($errorlevel == 1) echo("De nieuwe melding (". $Laatste_Melding .") is aan het systeem toegevoegd.<br>Alleen is er iets foutgegaan met het updaten van de componten tabel! De 'laatste meldin' verwijzing is niet geupdated!"); - if(isset($_GET['b'])) $url = ("&b=" . $_GET['b']); - else $url = ("&c=" . $Comp_Selectie); + $url = ''; + if(isset($_GET['c'])) $url = $url . ("&c=" . $Comp_Selectie); + if(isset($_GET['b'])) $url = $url . ("&b=" . $_GET['b']); echo('<a href="'.$_SESSION['huidige_pagina']. $url .'">Klik hier om nog een melding aan dit component toe te voegen of geselecteer een component uit de treeview.</a>'); } diff --git a/support/tool/CRAFT/documentatie/changes.doc b/support/tool/CRAFT/documentatie/changes.doc index 90aef5d59b1aece3a63569afc4e5bd442dc085db..e3ccec06ae5658cc59ffb1842b191fa07cd8d501 100644 GIT binary patch delta 2140 zcmbVNZA@Eb6h8O%i?Njfg${(V%ZF|QLbhcgu1-Ke*uq9}CbEPC($PCw+TODE0%loO z5<kKZvpH|#4}Q$VFkQ@;WLKOq!N}$u8a2d#KU5O_kWDuu#!bzl;&a;Gv9c{1PxAD< z=li_xdHdd>C1Geu7%vpXK(1CKR*3<-cFJ6&1;v5bzBG!{gLok<KG<`>%ghPC+u1}r z1ft<&-2de&@`yxDG=K%uf8k~D+l+2}h&<^eIs|zH@wwVFq9Z*s+2U{-L}$srbvBZ% z{b?$S8E)JIlOey0yeL5#YvbzsIQyN)L9A3w_^p<CqxX`LFR9ZqEL*o4H6P~7F)jp5 zYd6g9SX)*i)`&WWPS!#7>Q4J|`Hxr8Q-X|<R;S~Xpt_Ywgymf_s$D^c+o0vqGW`v| z1K_{#_CYfU+5*lp4&Ov=S=yAXwcfDDo$zDqock+#z!foeZuE^goiac6&^hs7nJ_1~ zS^hv5POM6It;8oB4B6=4kniJKfvxn>7fnQGZA7C8HZJvQepc_c-O7mVmxErv($lri z-y2n3QbRb@*VX2U$cie-kwgAosYeckL$V@;Ly}jPeEz5!j`(Fsm8C$xqQKyTU$}oz zR;r`}a?qo~I3Py`IiI9>Jds4sAj@5Q8}0E5$!gDb$9x`d|6td1K~GO=y(+0OEC*eZ z$D{Pf11RJ5sFK&OO5Nx%jJhfct5UQ(p5Pv>KUygba#>F>C`YBR;*}%Vfhrx1FF7GM zuSVoRKvta60OXM8d4H%s1e3~9iXF3mT^I69W=kL!mqnkl{VE8e{@2F!;{JBrk2ir) z;2bapTm`0qSzsPm0CEvo2-E_-0B5@W)8hQxmsjTICnv@x$0pB=pwM@*oLt|fl56Dj zO||4xXph4j1t`PmTd1f^k&i0}Q{;}`<`j8#{E6)&DfTn1FQv$Dh(XBqm4Y|jo!ZC6 zwUt>vIEZ+oyeV${_rx_!{H6*xoXdiCz9365T`0?Ot_|3UaQ8}xtlB15D7_v3+i4(V z*H5@U5e2KZyt_cKX(x9VR3;zTq0bR;m*VRjn9c#-HALS4A-i_`$&qsIg&(U7U_D1z ziMUtR^ZS6mbzFy!Kz+@f^25;e0s-I%@FDOK!2Nsy%mNDlve(oe(^_jY1+#Xsw%x%F zOMnTRu>v7GX~lJ$v~6|k8qC<<BfLe>+hCsoqwwXJp8@#7YKen=nN|w1&8&CTJ#DRN zfPvq0K7~bqsUC=l7W&PZMxUzb^vaeE#ACg@KcBqL3YyqeL2GQ4v{0da+f?M>8^E{X ztKtrtb9WFAaJebp!IO2hC^S(Nrp7vzFnO)Cx!8mop*1x3>=1?onn$mU>n)RlKna;! zU>%bfKTIrmqJ8@J%`XVe+tY^gXlVxDCSUvwzWMe0P1QF(I9z_`VpBaW!jZpt0gOoC z(O`R~%slW^ZJz$tUbo=P-pQ5~k`XTBzh|j&AW4#NKy|c~N&Jv*wCy>_>NI_*<vrm- z>*Io0U9Gv?o6V=6xW1&xZb_OQzsBDOJb>tcA94_qG3TyK`cq{c8LxGYXLDDq<t~}a dcKuT4J6YD5fkJ#?^hlpo5G@<@qeou0{sWChj}HI< delta 1490 zcmbVMT}V_>5T0{?_Ui6U*Ic(E+tf5yjR>j8?QgSk7t(Ak+(a-ilYQtPi>L<|gXkfG zI?zM(U?3C{CEctDvaBeAkO(U1#fOjx3pVJ7B%yEa?xlZ<2F}izIp5s*=FFT;rbIF& z1_~7=?vnv!z7jX(2`wPEEBm|6EVAWyx)3Kpoco|lwKT3`Dp9o{ie}>eSD()#Qi$rP z9~+i`(WSt(<`X3ldAES59rg&~3uH{mcY8AwqggQhC4XZ!k|)2Yfo=!J99SItCBEy2 z-R`#Czi7to#YKF}n#TQXbD`gh^Sz8u=I9j_PR>7JIVOaFLOHHAcK3PHu};)7Ffrj8 z2*$_UqYuC-Elx{sWD^~QD~h;GF*d--_8ANpz{9O&X#%bZx{S+*)FOztY-1Eu>hsEB zV|}f2ZiDdSRL=ag-;9V;xx*WMI-$+|W1qOOEa($p`ev|jV>hSfTYMVe*baZk{zc1~ z#+<S>D(1%^>O-(I)IaNlwbgi^V+|Yq!V=R}O^>7QN!ag%s%d0R&dOEHX873u;qBN9 z9GwxSuOM-!<Q4f7b!DsN?c$Yg?KOs#F`ob!6Y}EBJRvTZ`uv_a8isK#0SP%fv_okz zty7_U%Di+%l!WGGOVa-Jq01MrI?&B$SS_X;T7J5czwQAb2P>C>E+Qu@4+VN*`|$F6 zR!pcZCdo@H56Q*hO-2RI**+UCmjhvKHuyl!;cgyc;e-s*u~=YPo>gmIVyTQp@=JIa zyA_>2`m^YMmz$0Sr_tSp8PwsgqQROf$~NTjNWd5=Zl$M<t@2i6h9|UcCk+O6(VB3V z9FG)BZ?v;oO$us89$p*jZwf(an=`VHMX@WuhOaDaosS+C8~0=#oldF8_!mgn)Bfhk z)w;;R>z$Po*XlwvG==Cn{7FoV;QPQ$t6rYqAHA9JrWS=#Udy|sMilkxz4`&VLOngz z3xWSmV#ppd<*>fOgR~jZWl?>V2wL^^SA=|QJi5GoiBJ|Tk)g(N?fs#B<8oVLQBm#i zD8EXK9oX>mN%LUM3{`7YX=~2Owt=b4hrP_0b<DKxwDsq?dK<d%uC2YhT|%kxTL<?X GaeW1}7tdM% diff --git a/support/tool/CRAFT/documentatie/db_structuur.sql b/support/tool/CRAFT/documentatie/db_structuur.sql index 64455a8b8bb..81656cc80ce 100644 --- a/support/tool/CRAFT/documentatie/db_structuur.sql +++ b/support/tool/CRAFT/documentatie/db_structuur.sql @@ -83,7 +83,7 @@ CREATE TABLE IF NOT EXISTS `comp_lijst` ( -- INSERT INTO `comp_lijst` (`Comp_Lijst_ID`, `Comp_Naam`, `Comp_Type_ID`, `Comp_Parent`, `Comp_Locatie`, `Comp_Verantwoordelijke`, `Contact_Fabricant`, `Contact_Leverancier`, `Lever_Datum`, `Fabricatie_Datum`, `Laatste_Melding`) VALUES -(1, 'ASTRON', 1, NULL, 1, 3, NULL, NULL, NULL, NULL, 1); +(1, 'ASTRON', 1, NULL, 1, 1, NULL, NULL, NULL, NULL, 1); -- -------------------------------------------------------- @@ -112,6 +112,9 @@ CREATE TABLE IF NOT EXISTS `comp_locatie` ( -- Gegevens worden uitgevoerd voor tabel `comp_locatie` -- +INSERT INTO `comp_locatie` (`Locatie_ID`, `Loc_Naam`, `Loc_Adres1`, `Loc_Adres2`, `Loc_Postcode`, `Loc_Plaats`, `Long_Graden`, `Long_Min`, `Long_Sec`, `Lat_Graden`, `Lat_Min`, `Lat_Sec`) VALUES +(1, 'Lhee', NULL, NULL, NULL, NULL, 6, 39, 51, 52, 81, 28); + -- -------------------------------------------------------- -- @@ -145,7 +148,7 @@ CREATE TABLE IF NOT EXISTS `comp_type` ( -- INSERT INTO `comp_type` (`Comp_Type`, `Type_Naam`, `Type_Parent`, `Aangemaakt_Door`, `Aanmaak_Datum`, `Structuur_Entry`, `Gefabriceerd_Door`, `Geleverd_Door`, `Min_Aantal`, `Max_Aantal`, `Reserve_Minimum`, `Type_Verantwoordelijke`) VALUES -(1, 'Faciliteit', NULL, 1, '2007-06-18 13:29:26', 1, 2, 2, 1, 1, 0, 3); +(1, 'Faciliteit', NULL, 1, '2007-06-18 13:29:26', 1, 1, 1, 1, 1, 0, 1); -- -------------------------------------------------------- @@ -278,9 +281,6 @@ CREATE TABLE IF NOT EXISTS `gebruikersgroeprechten` ( -- Gegevens worden uitgevoerd voor tabel `gebruikersgroeprechten` -- -INSERT INTO `gebruikersgroeprechten` (`Groep_ID`, `Comp_Type_ID`, `Zichtbaar`, `Toevoegen`, `Bewerken`, `Verwijderen`, `onderliggende_Data`) VALUES -(2, 1, 0, 0, 0, 0, 1); - -- -------------------------------------------------------- -- diff --git a/support/tool/CRAFT/main_componenten/zoeken.php b/support/tool/CRAFT/main_componenten/zoeken.php index c8b932b3fef..7ab1312dc0a 100644 --- a/support/tool/CRAFT/main_componenten/zoeken.php +++ b/support/tool/CRAFT/main_componenten/zoeken.php @@ -94,58 +94,67 @@ if(Valideer_Zoeken()) { //basisquery: selecteert alle componenten... de criteria wordt hierachter geplakt - $query = "SELECT * FROM comp_lijst WHERE Comp_Lijst_ID > 1"; + //wanneer er ook op status gezocht moet worden, dan moeten 2 tabellen doorgezocht worden + if(isset($_POST['Status']) && $_POST['Status'] != -1) { + $query = "SELECT c.* FROM comp_lijst c, melding_lijst m WHERE c.Comp_Lijst_ID > 1"; + } + else $query = "SELECT c.* FROM comp_lijst c WHERE c.Comp_Lijst_ID > 1"; //naam component if(isset($_POST['naam'])) - $query = $query . " AND Comp_Naam LIKE '%".$_POST['naam']."%'"; + $query = $query . " AND c.Comp_Naam LIKE '%".$_POST['naam']."%'"; //type component if(isset($_POST['Type']) && $_POST['Type'] != -1) - $query = $query . " AND Comp_Type_ID = '".$_POST['Type']."'"; - + $query = $query . " AND c.Comp_Type_ID = '".$_POST['Type']."'"; + + //status + if(isset($_POST['Status']) && $_POST['Status'] != -1) { + $query = $query . " AND c.laatste_melding = m.Meld_Lijst_ID AND m.Huidige_Status = '". $_POST['Status'] ."'"; + } + //locatie if (isset($_POST['Locatie1']) && $_POST['Locatie2'] == -1 ) - $query = $query . " AND Comp_Locatie IN (SELECT Locatie_ID FROM comp_locatie WHERE Loc_Naam LIKE '%".$_POST['Locatie1']."%')"; + $query = $query . " AND c.Comp_Locatie IN (SELECT Locatie_ID FROM comp_locatie WHERE Loc_Naam LIKE '%".$_POST['Locatie1']."%')"; else if ($_POST['Locatie2'] > 0) - $query = $query . " AND Comp_Locatie = '".$_POST['Locatie2']."'"; + $query = $query . " AND c.Comp_Locatie = '".$_POST['Locatie2']."'"; //parent if(isset($_POST['Parent']) && $_POST['Parent'] != -1) - $query = $query . " AND Comp_Parent = '".$_POST['Parent']."'"; + $query = $query . " AND c.Comp_Parent = '".$_POST['Parent']."'"; //verantwoordelijke voor dit component if (isset($_POST['Verantwoordelijke1']) && $_POST['Verantwoordelijke2'] == -1 ) - $query = $query . " AND Comp_Verantwoordelijke IN (SELECT Werknem_ID FROM gebruiker WHERE inlognaam LIKE '%".$_POST['Verantwoordelijke1']."%')"; + $query = $query . " AND c.Comp_Verantwoordelijke IN (SELECT Werknem_ID FROM gebruiker WHERE inlognaam LIKE '%".$_POST['Verantwoordelijke1']."%')"; else if ($_POST['Verantwoordelijke2'] > 0) - $query = $query . " AND Comp_Verantwoordelijke = '".$_POST['Verantwoordelijke2']."'"; + $query = $query . " AND c.Comp_Verantwoordelijke = '".$_POST['Verantwoordelijke2']."'"; //fabricant voor dit component if (isset($_POST['Fabricant1']) && $_POST['Fabricant2'] == -1 ) - $query = $query . " AND Contact_Fabricant IN (SELECT Contact_ID FROM contact WHERE Contact_Naam LIKE '%".$_POST['Fabricant1']."%')"; + $query = $query . " AND c.Contact_Fabricant IN (SELECT Contact_ID FROM contact WHERE Contact_Naam LIKE '%".$_POST['Fabricant1']."%')"; else if ($_POST['Fabricant2'] > 0) - $query = $query . " AND Contact_Fabricant = '".$_POST['Fabricant2']."'"; + $query = $query . " AND c.Contact_Fabricant = '".$_POST['Fabricant2']."'"; //leverancier voor dit component if (isset($_POST['Leverancier1']) && $_POST['Leverancier2'] == -1 ) - $query = $query . " AND Contact_Leverancier IN (SELECT Contact_ID FROM contact WHERE Contact_Naam LIKE '%".$_POST['Leverancier1']."%')"; + $query = $query . " AND c.Contact_Leverancier IN (SELECT Contact_ID FROM contact WHERE Contact_Naam LIKE '%".$_POST['Leverancier1']."%')"; else if ($_POST['Leverancier2'] > 0) - $query = $query . " AND Contact_Leverancier = '".$_POST['Leverancier2']."'"; + $query = $query . " AND c.Contact_Leverancier = '".$_POST['Leverancier2']."'"; //Leverdatum if (isset($_POST['Lever_Datum1']) && isset($_POST['Lever_Tijd1']) && isset($_POST['Lever_Datum2']) && isset($_POST['Lever_Tijd2']) && Datum_Geldigheid($_POST['Lever_Datum1'], $_POST['Lever_Tijd1']) && Datum_Geldigheid($_POST['Lever_Datum2'], $_POST['Lever_Tijd2'])) - $query = $query . " AND Lever_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Lever_Datum1'], $_POST['Lever_Tijd1'])."' AND Lever_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Lever_Datum2'], $_POST['Lever_Tijd2'])."'"; + $query = $query . " AND c.Lever_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Lever_Datum1'], $_POST['Lever_Tijd1'])."' AND c.Lever_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Lever_Datum2'], $_POST['Lever_Tijd2'])."'"; //Fabricatiedatum if (isset($_POST['Fabr_Datum1']) && isset($_POST['Fabr_Tijd1']) && isset($_POST['Fabr_Datum2']) && isset($_POST['Fabr_Tijd2']) && Datum_Geldigheid($_POST['Fabr_Datum1'], $_POST['Fabr_Tijd1']) && Datum_Geldigheid($_POST['Fabr_Datum2'], $_POST['Fabr_Tijd2'])) - $query = $query . " AND Fabricatie_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Fabr_Datum1'], $_POST['Fabr_Tijd1'])."' AND Fabricatie_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Fabr_Datum2'], $_POST['Fabr_Tijd2'])."'"; + $query = $query . " AND c.Fabricatie_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Fabr_Datum1'], $_POST['Fabr_Tijd1'])."' AND c.Fabricatie_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Fabr_Datum2'], $_POST['Fabr_Tijd2'])."'"; //Aangemaakt: if (isset($_POST['Meld_Datum1']) && isset($_POST['Meld_Tijd1']) && isset($_POST['Meld_Datum2']) && isset($_POST['Meld_Tijd2']) && Datum_Geldigheid($_POST['Meld_Datum1'], $_POST['Meld_Tijd1']) && Datum_Geldigheid($_POST['Meld_Datum2'], $_POST['Meld_Tijd2'])) { - $query = $query . " AND Comp_Lijst_ID IN (SELECT Comp_Lijst_ID FROM melding_lijst WHERE Voorgaande_Melding = 1 AND Meld_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Meld_Datum1'], $_POST['Meld_Tijd1'])."' AND Meld_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Meld_Datum2'], $_POST['Meld_Tijd2'])."')"; + $query = $query . " AND c.Comp_Lijst_ID IN (SELECT Comp_Lijst_ID FROM melding_lijst WHERE Voorgaande_Melding = 1 AND Meld_Datum >= '".Datum_Tijd_Naar_DB_Conversie($_POST['Meld_Datum1'], $_POST['Meld_Tijd1'])."' AND Meld_Datum <= '".Datum_Tijd_Naar_DB_Conversie($_POST['Meld_Datum2'], $_POST['Meld_Tijd2'])."')"; } //de samengestelde query uitvoeren @@ -188,6 +197,29 @@ ?></select> </td> </tr> + <tr> + <td>Status:</td> + <td> + <select name="Status"> + <?php + if (isset($_POST['Status'])) + $selected = $_POST['Status']; + else $selected = -1; + + echo("<option value=\"-1\""); + if($selected == -1) echo(" SELECTED"); + echo(">None selected</option>"); + $query = "SELECT * FROM status WHERE Status_ID"; + $resultaat = mysql_query($query); + while ($data = mysql_fetch_array($resultaat)) { + echo("<option value=\"".$data['Status_ID']."\""); + if ($selected == $data['Status_ID']) echo(" SELECTED"); + echo(">".$data['Status']."</option>"); + } + ?> + </select> + </td> + </tr> <tr> <td>Locatie:</td> <td><input type="text" name="Locatie1" id="Locatie1" value="<?php if (isset($_POST['Locatie1'])) echo($_POST['Locatie1']); ?>" onchange="ResetSelectveld('Locatie1', 'Locatie2');"> of  -- GitLab