Brommerforum.nl - Print: Reply


Deze reply is gepost in de afdeling Main Forum in het onderwerp 'Nachttopic Deel 30 (0.00-07.00)' (ID 49233).
De reply is geschreven door mcdronkz (UserID 2324) op 29-4-2008 0:47.

Quote:
Oorspronkelijk gepost door: rik hulkenberg
[...]

nja dat is mijn systeem van ruim 3 jaar oud toen ik hem net had was het echt een vet goede pc maar nu is het niks meer
van progamma's maken weet ik ook niks van ben ook een vette computer noob


Shit ouwe, wat ben je een n00b dan.

Ik maak gewoon vette PHP shit jeweett0g

<?php
/*
Controleer of de gebruiker ingelogd is.
*/
if($user->isLoggedIn()) {
/*
Er wordt sowieso een project ID meegestuurd, controleer of de gebruiker hier wel aan gekoppeld is.
*/
if(isset($_GET['pID'])) {
$pSQL = mysql_query("SELECT pID, uID FROM webhours_projects
INNER JOIN webhours_projects_users ON puProject = pID
INNER JOIN webhours_users ON uID = puUser
WHERE uLoginName = '".$_SESSION['wh_user']."'
AND pID = '".mysql_real_escape_string($_GET['pID'])."'" or die(mysql_error());
/*
Zorg eerst dat het resultaat in een array komt, dit kan later gebruikt worden voor bepaalde doeleinden zoals het toevoegen van items.
*/
$pResult = mysql_fetch_assoc($pSQL);

if(mysql_num_rows($pSQL) > 0) {
/*
Gebruiker is aan project gekoppeld, controleer of er een actie aangeroepen wordt.
*/
if(isset($_GET['action'])) {
if(isset($_GET['wID'])) {
/*
Er wordt een actie aangeroepen, en een work-item ID meegestuurd. Controleer of dit wID correct is.
*/
$wSQL = mysql_query("SELECT * FROM webhours_work
INNER JOIN webhours_projects ON wProject = pID
WHERE pID = '".mysql_real_escape_string($_GET['pID'])."'
AND wID = '".mysql_real_escape_string($_GET['wID'])."'";

if(mysql_num_rows($wSQL) > 0) {
/*
wID klopt, controleer welke actie wordt aangeroepen en of de gebruiker genoeg rechten heeft.
*/
if($_GET['action'] == "edit" {
/*
De gebruiker wil een item wijzigen. Controleer eerst of de gebruiker voldoende rechten heeft.
*/
if($user->hasPrivileges("scheduled_edit_schedule_item",$_GET['pID'],$_SESSION['wh_user'])) {
if($_SERVER['REQUEST_METHOD'] == "POST" {
/*
Schedule-item aanpassen en gebruiker terugsturen naar een overzicht van de plannings-items.
*/
$sSQL = mysql_query("UPDATE webhours_scheduled
SET sTitle = '".mysql_real_escape_string($_POST['frmTitle'])."',
sDescription = '".mysql_real_escape_string($_POST['frmDescription'])."',
sEstimatedHours = '".mysql_real_escape_string($_POST['frmEstimatedHours'])."',
sEditedDateTime = NOW(),
sEditedUser = '".$pResult['uID']."'
WHERE sID = '".mysql_real_escape_string($_GET['sID'])."'";

header("Location: ?p=scheduled&pID=".$_GET['pID']);
} else {
/*
Toon het formulier waarmee de gebruiker een schedule-item kan aanpassen.
*/
$wSQL = mysql_query("SELECT * FROM webhours_work
WHERE wID = '".mysql_real_escape_string($_GET['wID'])."'";

$wResult = mysql_fetch_assoc($wSQL);
$smarty->assign("wContent",$sResult);

$smarty->assign("scheduled_edit_schedule_item",$user->hasPrivileges("scheduled_edit_schedule_item",$_GET['pID'],$_SESSION['wh_user']));
$smarty->assign("template","scheduled/edit.tpl";
$smarty->display("index.tpl";
}
} else {
/*
Gebruiker heeft niet voldoende rechten om een item te wijzigen, stuur 'm terug naar een overzicht van de schedule-items.
*/
header("Location: ?p=scheduled&pID=".$_GET['pID']);
}
} elseif($_GET['action'] == "delete" {
/*
De gebruiker wil een item verwijderen. Controleer eerst of de gebruiker voldoende rechten heeft.
*/
if($user->hasPrivileges("scheduled_delete_schedule_item",$_GET['pID'],$_SESSION['wh_user'])) {
/*
Verwijder item.
*/
$sSQL = mysql_query("UPDATE webhours_scheduled SET sDeleted = sDeleted XOR 1 WHERE sID = '".mysql_real_escape_string($_GET['sID'])."'";
}

/*
Stuur de gebruiker terug naar het overzicht van de schedule-items nadat het item verwijderd is.
*/

header("Location: ?p=scheduled&pID=".$_GET['pID']);
} elseif($_GET['action'] == "toggle_completed" {
/*
De gebruiker wil de completed-status toggelen. Controleer eerst of de gebruiker daar wel de rechten voor heeft, en als dat wel zo is toggelen.
*/
if($user->hasPrivileges("scheduled_toggle_completed_schedule_item",$_GET['pID'],$_SESSION['wh_user'])) {
/*
Completed-status aanpassen.
*/
$sSQL = mysql_query("SELECT * FROM webhours_scheduled
INNER JOIN webhours_projects ON sProject = pID
WHERE pID = '".mysql_real_escape_string($_GET['pID'])."'
AND sID = '".mysql_real_escape_string($_GET['sID'])."'";

if(mysql_num_rows($sSQL) > 0) {
$sSQL = mysql_query("UPDATE webhours_scheduled
SET sCompleted = sCompleted XOR 1,
sEditedDateTime = NOW(),
sEditedUser = '".$pResult['uID']."'
WHERE sID = '".mysql_real_escape_string($_GET['sID'])."'";
}
}

/*
Gebruiker terugsturen naar het overzicht van de schedule-items. Ook als de gebruiker geen rechten heeft om de completed-status te toggelen.
*/

header("Location: ?p=scheduled&pID=".$_GET['pID']);
} else {
/*
Er wordt een ongeldige actie aangeroepen.
*/
print "ongeldige actie";
}
} else {
/*
Het sID blijkt niet te kloppen, is niet gekoppeld aan een project waar de gebruiker toegang tot heeft.
*/
echo "sID klopt niet";
}
} else {
/*
Er wordt geen sID aangeroepen. Nu kan dit bijvoorbeeld zijn omdat een gebruiker iets wil toevoegen, daar is immers geen sID voor nodig.
*/
if($_GET['action'] == "add" {
/*
De gebruiker wil een item toevoegen. Controleer eerst of de gebruiker rechten heeft.
*/
if($user->hasPrivileges("scheduled_add_schedule_item",$_GET['pID'],$_SESSION['wh_user'])) {
if($_SERVER['REQUEST_METHOD'] == "POST" {
/*
Voeg het item toe.
*/
$sSQL = mysql_query("INSERT INTO webhours_scheduled
(sAddedDateTime, sProject,sTitle,sDescription,sEstimatedHours,sAddedUser)
VALUES
(NOW(),'".$_GET['pID']."','".$_POST['frmTitle']."','".$_POST['frmDescription']."','".$_POST['frmEstimatedHours']."','".$pResult['uID']."')";
}
}

/*
Schedule-item is toegevoegd, stuur gebruiker terug naar schedule-lijst.
*/
header("Location: ?p=scheduled&pID=".$_GET['pID']);
} else {
/*
Er wordt een ongeldige actie aangeroepen.
*/
print "ongeldige actie";
}
}
} else {
/*
Er wordt geen actie aangeroepen, controleer of een gebruiker een lijst wil zien met alle items, of details van één item.
*/
if(isset($_GET['wID'])) {
/*
De gebruiker heeft een sID ingegeven, er moeten dus details worden weergegeven van één item. Controleer eerst of het sID correct is. Haal meteen alle gegevens op die nodig zijn.
*/
if($user->hasPrivileges("work_view_work_item_details",$_GET['pID'],$_SESSION['wh_user'])) {
/*
De gebruiker heeft rechten om de item-details te bekijken, toon ze in een template.
*/
$wSQL = mysql_query("SELECT *,
edit.uName AS wEditedUser,
add.uName AS wAddedUser,
TIMEDIFF(wDateTimeTill,wDateTimeFrom) AS wWorkedHours
FROM webhours_work
LEFT JOIN webhours_travelmethods ON wTravelMethod = tmID
LEFT JOIN webhours_users AS `edit` ON wEditedUser = edit.uID
LEFT JOIN webhours_users AS `add` ON wAddedUser = add.uID
INNER JOIN webhours_projects ON wProject = pID
WHERE pID = '".mysql_real_escape_string($_GET['pID'])."'
AND wID = '".mysql_real_escape_string($_GET['wID'])."'";

$wResult = mysql_fetch_assoc($wSQL);

if(mysql_num_rows($wSQL) > 0) {
/*
Toon item-details.
*/
$smarty->assign("wContent",$wResult);
$smarty->assign("template","work/details.tpl";
$smarty->display("index.tpl";
} else {
/*
Het wID blijkt niet te kloppen.
*/
echo "wID klopt niet!";
}
} else {
/*
De gebruiker heeft geen rechten om de item-details te bekijken.
*/
print "Geen rechten";
}
} else {
/*
De gebruiker heeft dit keer geen wID ingegeven,
controleer eerst of een periode gekozen wordt en toon daarna een lijst met alle items.
*/
if(isset($_POST['frmMonth']) && isset($_POST['frmYear'])) {
/*
Er is voor een periode gekozen, valideer de periode en genereer een gedeelte van de query.
*/
$dateQuery = "MONTH(wDateTimeFrom) = '".mysql_real_escape_string($_POST['frmMonth'])."'
AND YEAR(wDateTimeFrom) = '".mysql_real_escape_string($_POST['frmYear'])."'";

$smarty->assign("currentPeriod",$date->returnMonth($_POST['frmMonth'])." ".$_POST['frmYear']);
} else {
/*
Er is geen periode gekozen, zorg dat de items van deze maand en dit jaar gekozen worden en genereer het gedeelte van de query.
*/
$dateQuery = "MONTH(wDateTimeFrom) = '".date("n",time())."'
AND YEAR(wDateTimeFrom) = '".date("Y",time())."'";

$smarty->assign("currentPeriod",$date->returnMonth(date("n",time()))." ".date("Y",time()));
}

$wSQL = mysql_query("SELECT *,TIMEDIFF(wDateTimeTill,wDateTimeFrom) AS wWorkedHours
FROM webhours_work
INNER JOIN webhours_projects ON wProject = pID
INNER JOIN webhours_users ON wAddedUser = uID
WHERE pID = '".mysql_real_escape_string($_GET['pID'])."'
AND wDeleted = 0
AND ".$dateQuery."
ORDER BY wID DESC";

while($wResult = mysql_fetch_assoc($wSQL)) {
$wContent[] = $wResult;
}

$smarty->assign("wContent",$wContent);

/*
Selecteer de totalen van dezelfde periode als de overige items.
*/
$wTotalsSQL = mysql_query("SELECT
SEC_TO_TIME(SUM(TIME_TO_SEC(TIMEDIFF(wDateTimeTill,wDateTimeFrom)))) as wTotalWorkedHours,
ROUND(SUM(wTravelCosts),2) as wTotalTravelCosts
FROM webhours_work
WHERE ".$dateQuery."";

$wTotalsResult = mysql_fetch_assoc($wTotalsSQL);
$smarty->assign("wTotalsContent",$wTotalsResult);


/*
Assign privileges zodat in de template bepaald kan worden wat er weer moet worden gegeven.
*/
$smarty->assign("work_view_work_list",$user->hasPrivileges("work_view_work_list",$_GET['pID'],$_SESSION['wh_user']));
$smarty->assign("work_add_work_item",$user->hasPrivileges("work_add_work_item",$_GET['pID'],$_SESSION['wh_user']));
$smarty->assign("work_edit_work_item",$user->hasPrivileges("work_edit_work_item",$_GET['pID'],$_SESSION['wh_user']));
$smarty->assign("work_delete_work_item",$user->hasPrivileges("work_delete_work_item",$_GET['pID'],$_SESSION['wh_user']));
$smarty->assign("work_view_work_item_details",$user->hasPrivileges("work_view_work_item_details",$_GET['pID'],$_SESSION['wh_user']));

/*
Assign template en toon lijst.
*/
$smarty->assign("template","work/list.tpl";
$smarty->display("index.tpl";
}
}
} else {
/*
Gebruiker is niet aan project gekoppeld. Stuur gebruiker naar overzicht van projecten.
*/
header("Location: /webhours/";
}
} else {
/*
Er is geen pID meegegeven. Stuur gebruiker naar overzicht van projecten.
*/
header("Location: /webhours/";
}
} else {
/*
Gebruiker is niet ingelogd. Stuur gebruiker naar loginvenster.
*/
header("Location: /webhours/";
}
?>


Copyright © 2000 - 2016 - All rights reserved