示例#1
0
<?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();
            }
        }
    }
}
示例#2
0
function updateDashboard()
{
    global $tool, $propertyForm;
    $enabledWidgets = $_POST['list'];
    $curUser = new DashboardUsers($_SESSION['userid']);
    $userWidgets = $curUser->get_users_widgets();
    $update = true;
    //Remove all the non existing widgets
    foreach ($userWidgets as $widgetID => $userID) {
        $exists = false;
        foreach ($enabledWidgets as $id => $enabledID) {
            if ($widgetID == $enabledID) {
                $exists = true;
                break;
            }
        }
        if (!$exists) {
            $curUser->set_widget_id($widgetID);
            $curUser->remove_widget();
        }
    }
    //insert the enabled widgets
    foreach ($enabledWidgets as $postID => $enabledID) {
        $exists = false;
        foreach ($userWidgets as $widgetID => $userID) {
            if ($enabledID == $widgetID) {
                $exists = true;
                break;
            }
        }
        if (!$exists) {
            $freePos = false;
            $posX = 0;
            $posY = 0;
            if (!empty($userWidgets)) {
                while ($freePos == false) {
                    foreach ($userWidgets as $widgetID => $userID) {
                        $widPosX = $curUser->get_position_x($widgetID);
                        $widPosY = $curUser->get_position_y($widgetID);
                        if ($widPosX == $posX && $widPosY == $posY) {
                            $freePos = false;
                            break;
                        } else {
                            $freePos = true;
                        }
                    }
                    if (!$freePos) {
                        $posX++;
                        if ($posX == 3) {
                            $posX = 0;
                            $posY++;
                        }
                        if ($posY > 999) {
                            break;
                        }
                    }
                }
            }
            $curUser->set_position_x($posX);
            $curUser->set_position_y($posY);
            $curUser->set_widget_id($enabledID);
            if ($curUser->insert_widget()) {
                $update = true;
            } else {
                $update = false;
                $error = $curUser->get_error();
            }
        }
    }
    //final check, Too glitchy for now
    /*foreach ($userWidgets as $widgetID=> $userID)
    	{
    		checkPosition($widgetID);
    	}*/
    if ($update) {
        $status = "success";
        echo "<script language='javascript'>LoadPage(\"userSettings.php?action=widgetsManagement&mode=edit&update=" . $status . "\", 'settingsInfo');</script>";
    } else {
        $propertyForm->warning("Warning: Failed to enable widgets. Reason: " . $error);
    }
}