/** * Retrieve events that are joined by a user. * @param PDO $db A PDO database connection. * @param integer $userID User ID. * @param integer $hour Number of hours before events start. * @param string $check * @return array Query result. */ function getJoinedEvents($db, $userID, $hour = "", $check = "") { $sql = "SELECT Event.*,\n\t\t\t\t\tTag.Name AS TagName,\n\t\t\t\t\tTIMEDIFF(Event.Time, now()) AS TimeDiff, \n\t\t\t\t\tTIMESTAMPDIFF(HOUR,Event.Time, now()) AS HourDiff,\n\t\t\t\t\tMINUTE(TIMEDIFF(Event.Time, now())) AS MinDiff\n\t\t\t\tFROM Event\n\t\t\t\tINNER JOIN Participant ON Participant.EventID = Event.EventID\n\t\t\t\tLEFT JOIN Tag ON Tag.TagID = Event.TagID\n\t\t\t\tWHERE Participant.UserID = :userID"; if (is_numeric($hour) && !is_numeric($check)) { $sql .= " AND TIMESTAMPDIFF(HOUR,Event.Time, now()) = -" . $hour; $sql .= " AND MINUTE(TIMEDIFF(Event.Time, now())) = 0 "; } $sql .= " ORDER BY Event.Time"; $parameters = array(":userID" => $userID); return getAllRows($db, $sql, $parameters); }
<?php function getAllRows() { $pdo = new PDO("mysql:host=localhost;dbname=hotel", "root", ""); $stmt = $pdo->prepare("select * from rooms"); $stmt->execute(); $results = $stmt->fetchAll(PDO::FETCH_ASSOC); $json = json_encode($results); return $json; } header('Content-Type: application/json'); echo getAllRows();
$where = " WHERE strftime('%Y-%m', timestamp) = strftime('%Y-%m', current_timestamp)"; break; case "year": $where = " WHERE strftime('%Y', timestamp) = strftime('%Y', current_timestamp)"; break; case "all": $where = ""; break; default: return false; break; } $db = new SQLite3(HOTLINKS_DB_PATH . "hotlinks.db.sqlite"); $sql = "SELECT unique_visitors." . $statType . " AS page, unique_visits, total_visits\n FROM (SELECT " . $statType . ", COUNT(client_ip) AS unique_visits FROM (SELECT " . $statType . ", client_ip FROM visits" . $where . " GROUP BY " . $statType . ", client_ip) GROUP BY " . $statType . ") AS unique_visitors,\n (SELECT " . $statType . ", COUNT(client_ip) AS total_visits FROM visits" . $where . " GROUP BY " . $statType . ") AS total_visitors\n WHERE unique_visitors." . $statType . " = total_visitors." . $statType . ""; $result = $db->query($sql); $resultArr = getAllRows($result); $uniqueTotal = 0; $visitTotal = 0; foreach ($resultArr as $key => $val) { $uniqueTotal += $val['unique_visits']; $visitTotal += $val['total_visits']; } echo json_encode(array("unique_total" => $uniqueTotal, "visit_total" => $visitTotal, "data" => $resultArr)); function getAllRows($result) { $resultArr = array(); while ($row = $result->fetchArray(SQLITE3_ASSOC)) { array_push($resultArr, $row); } return $resultArr; }
function renderEditRackForm($rack_id) { global $pageno; $rack = spotEntity('rack', $rack_id); amplifyCell($rack); startPortlet('Attributes'); printOpFormIntro('updateRack'); echo '<table border=0 align=center>'; echo "<tr><td> </td><th class=tdright>Rack row:</th><td class=tdleft>"; foreach (getAllRows() as $row_id => $rowInfo) { $trail = getLocationTrail($rowInfo['location_id'], FALSE); $rows[$row_id] = empty($trail) ? $rowInfo['name'] : $rowInfo['name'] . ' [' . $trail . ']'; } natcasesort($rows); printSelect($rows, array('name' => 'row_id'), $rack['row_id']); echo "</td></tr>\n"; echo "<tr><td> </td><th class=tdright>Name (required):</th><td class=tdleft><input type=text name=name value='{$rack['name']}'></td></tr>\n"; echo "<tr><td> </td><th class=tdright>Height (required):</th><td class=tdleft><input type=text name=height value='{$rack['height']}'></td></tr>\n"; echo "<tr><td> </td><th class=tdright>Asset tag:</th><td class=tdleft><input type=text name=asset_no value='{$rack['asset_no']}'></td></tr>\n"; echo "<tr><td> </td><th class=tdright>Tags:</th><td class=tdleft>"; printTagsPicker(); echo "</td></tr>\n"; // optional attributes $values = getAttrValuesSorted($rack_id); $num_attrs = count($values); $num_attrs = $num_attrs - 2; // subtract for the 'height' and 'sort_order' attributes echo "<input type=hidden name=num_attrs value={$num_attrs}>\n"; $i = 0; foreach ($values as $record) { // Skip the 'height' attribute as it's already displayed as a required field // Also skip the 'sort_order' attribute if ($record['id'] == 27 or $record['id'] == 29) { continue; } echo "<input type=hidden name={$i}_attr_id value={$record['id']}>"; echo '<tr><td>'; if (strlen($record['value'])) { echo getOpLink(array('op' => 'clearSticker', 'attr_id' => $record['id']), '', 'clear', 'Clear value', 'need-confirmation'); } else { echo ' '; } echo '</td>'; echo "<th class=sticker>{$record['name']}:</th><td class=tdleft>"; switch ($record['type']) { case 'uint': case 'float': case 'string': echo "<input type=text name={$i}_value value='{$record['value']}'>"; break; case 'dict': $chapter = readChapter($record['chapter_id'], 'o'); $chapter[0] = '-- NOT SET --'; $chapter = cookOptgroups($chapter, 1560, $record['key']); printNiftySelect($chapter, array('name' => "{$i}_value"), $record['key']); break; } echo "</td></tr>\n"; $i++; } echo "<tr><td> </td><th class=tdright>Has problems:</th><td class=tdleft><input type=checkbox name=has_problems"; if ($rack['has_problems'] == 'yes') { echo ' checked'; } echo "></td></tr>\n"; if ($rack['isDeletable']) { echo "<tr><td> </td><th class=tdright>Actions:</th><td class=tdleft>"; echo getOpLink(array('op' => 'deleteRack'), '', 'destroy', 'Delete rack', 'need-confirmation'); echo " </td></tr>\n"; } echo "<tr><td colspan=3><b>Comment:</b><br><textarea name=comment rows=10 cols=80>{$rack['comment']}</textarea></td></tr>"; echo "<tr><td class=submit colspan=3>"; printImageHREF('SAVE', 'Save changes', TRUE); echo "</td></tr>\n"; echo '</form></table><br>'; finishPortlet(); startPortlet('History'); renderObjectHistory($rack_id); finishPortlet(); }
assertStringArg('vlan_ck', TRUE); sendAPIResponse(getVLANInfo($_REQUEST['vlan_ck'])); break; // get overall rackspace status // UI equivalent: /index.php?page=rackspace // UI handler: renderRackspace() // get overall rackspace status // UI equivalent: /index.php?page=rackspace // UI handler: renderRackspace() case 'get_rackspace': require_once 'inc/init.php'; // taken straight from interface.php::renderRackspace() $found_racks = array(); $rows = array(); $rackCount = 0; foreach (getAllRows() as $row_id => $rowInfo) { $rackList = listCells('rack', $row_id); $found_racks = array_merge($found_racks, $rackList); $rows[] = array('location_id' => $rowInfo['location_id'], 'location_name' => $rowInfo['location_name'], 'row_id' => $row_id, 'row_name' => $rowInfo['name'], 'racks' => $rackList); $rackCount += count($rackList); } sendAPIResponse($rows); break; // get info for a rack // UI equivalent: /index.php?page=rack&rack_id=967 // UI handler: renderRackPage() // get info for a rack // UI equivalent: /index.php?page=rack&rack_id=967 // UI handler: renderRackPage() case 'get_rack': require_once 'inc/init.php';
function getGradeFromCourse($studentId, $courseID) { $query = query("SELECT * FROM grade WHERE student_studentId = {$studentId} AND course_courseId = {$courseID}"); $result = getAllRows($query); return $result; }
function getWattsPerRow() { // assertions // find the needed attributes global $nextorder; // Was this function called with a specific row_id? if (isset($_REQUEST['row_id'])) { assertStringArg('row_id'); $row_toshow = $_REQUEST['row_id']; } else { $row_toshow = -1; } //from renderRackspace(), interface.php:151 $found_racks = array(); $rows = array(); $cellfilter = getCellFilter(); $rackCount = 0; $order = 'odd'; // get rackspace information foreach (getAllRows() as $row_id => $rowInfo) { $rackList = filterCellList(listCells('rack', $row_id), $cellfilter['expression']); $found_racks = array_merge($found_racks, $rackList); $rows[] = array('location_id' => $rowInfo['location_id'], 'location_name' => $rowInfo['location_name'], 'row_id' => $row_id, 'row_name' => $rowInfo['name'], 'racks' => $rackList); $rackCount += count($rackList); } // Main layout starts. echo "<table border=0 class=objectview cellspacing=0 cellpadding=0>"; // Left portlet with list of rows. echo "<tr><td class=pcleft width='50%'>"; startPortlet('Rack Rows (' . count($rows) . ')'); echo "<table border=0 cellspacing=0 cellpadding=3 width='100%'>\n"; foreach ($rows as $row) { $row_id = $row['row_id']; $row_name = $row['row_name']; $row_location = $row['location_name']; $rackList = $row['racks']; echo "<tr class=row_{$order}><td width='20%'></td><td class=tdleft>"; if (!count($rackList)) { echo "{$row_location} - {$row_name} (empty row)"; } else { echo "<a href='" . makeHref(array('page' => 'reports', 'tab' => 'watts_per_row', 'row_id' => $row_id)) . "'>{$row_location} - {$row_name}</a>"; } echo "<td><tr>\n"; $order = $nextorder[$order]; } echo "</td></tr>\n"; echo "</table><br>\n"; finishPortlet(); echo "</td><td class=pcright>"; // Right Portlet: Draw the racks in the selected row if ($row_toshow > -1) { $rowInfo = getRowInfo($row_toshow); $cellfilter = getCellFilter(); $rackList = filterCellList(listCells('rack', $row_toshow), $cellfilter['expression']); $rackwidth = getRackImageWidth() * getConfigVar('ROW_SCALE'); // Maximum number of racks per row is proportionally less, but at least 1. $maxPerRow = max(floor(getConfigVar('RACKS_PER_ROW') / getConfigVar('ROW_SCALE')), 1); $rackListIdx = 0; $rowTotalWattage = 0; $order = 'odd'; startPortlet('Racks within ' . $rowInfo['name'] . ' (' . count($rackList) . ')'); echo "<table border=0 cellspacing=5 align='center'><tr>"; foreach ($rackList as $rack) { $rackTotalWattage = 0; // see renderRack(), interface.php:311 $rackData = spotEntity('rack', $rack['id']); amplifyCell($rackData); $objectChildren = getEntityRelatives('children', 'object', $objectData['id']); foreach ($rackData['mountedObjects'] as $object) { $objectData = spotEntity('object', $object); amplifyCell($objectData); foreach (getAttrValues($objectData['id']) as $record) { if ($record['name'] == 'Wattage consumption') { $rackTotalWattage += $record['value']; } } } if ($rackListIdx % $maxPerRow == 0) { echo $rackListIdx > 0 ? '</tr><tr>' : '<tr>'; } echo "<td align=center class=row_{$order}><a href='" . makeHref(array('page' => 'rack', 'rack_id' => $rack['id'])) . "'>"; echo "<img border=0 width={$rackwidth} height=" . getRackImageHeight($rack['height']) * getConfigVar('ROW_SCALE'); echo " title='{$rack['height']} units'"; echo "src='?module=image&img=minirack&rack_id={$rack['id']}'>"; echo "<br>{$rack['name']} ({$rackTotalWattage})</a></td>"; $order = $nextorder[$order]; $rackListIdx++; $rowTotalWattage += $rackTotalWattage; } echo "</tr><tr><td align=center colspan="; print count($rackList); echo "><br><b>The row total for attribute Wattage consuption is: {$rowTotalWattage}</b></td>\n"; echo "</tr></table>\n"; finishPortlet(); } echo "</td></tr></table>"; }