<?php include_once "sessionCheck.php"; $user = $_SESSION['userid']; $curUser = new DashboardUsers($user); if (isset($_POST['p'])) { $newPos = $_POST['p']; foreach ($newPos as $posY => $widgetID) { $curUser->set_widget_id($widgetID); $curUser->set_position_y($posY); if (isset($_POST['action'])) { $newCol = $_POST['action']; switch ($newCol) { case 'col1': $curUser->set_position_x(0); break; case 'col2': $curUser->set_position_x(1); break; case 'col3': $curUser->set_position_x(2); break; } if (!$curUser->update_widget()) { echo $curUser->get_error(); } } } }
function checkPosition($widgetID) { $curUser = new DashboardUsers($_SESSION['userid']); $userWidgets = $curUser->get_users_widgets(); $curWidPosX = $curUser->get_position_x($widgetID); $curWidPosY = $curUser->get_position_y($widgetID); foreach ($userWidgets as $widgetID2 => $userID2) { if ($widgetID != $widgetID2) { $compWidPosX = $curUser->get_position_x($widgetID2); $compWidPosY = $curUser->get_position_y($widgetID2); if ($curWidPosX == $compWidPosX && $curWidPosY == $compWidPosY) { $curUser->set_widget_id($widgetID2); $newX = $compWidPosX + 1; $newY = $compWidPosY; if ($newX >= 3) { $newX = 0; $newY++; } $curUser->set_position_x($newX); $curUser->set_position_y($newY); $curUser->update_widget(); checkPosition($widgetID2); } } } }