Example #1
0
                    $('#begin, #prev').attr('class', 'disabled');
                } else {
                    $('#begin, #prev').attr('class', '');
                }

                if (current_page == last_page) {
                    $('#next, #end').attr('class', 'disabled');
                } else {
                    $('#next, #end').attr('class', '');
                }

                if (last_page - first_page_in_view < 4) {
                    for (var btn = (last_page - 1) % 5 + 2; btn <= 5; btn++) {
                        $('#' + ordinal[btn]).attr('class', 'disabled');
                    }
                }
            }

            // Initialize table
            updateTable(<?php 
echo json_encode($context['user_list']);
?>
);
            updatePage(1, <?php 
echo User::getRecordNum(array());
?>
);
        </script>
    </body>
</html>
Example #2
0
function admin_users()
{
    // Show Users Page
    if ($_SERVER['REQUEST_METHOD'] != 'POST') {
        if (!sr_is_signed_in()) {
            sr_redirect('/d/main/signin/');
        }
        if (!sr_is_admin()) {
            sr_redirect('/d/');
        }
        $db = sr_pdo();
        $stmt = $db->prepare('SELECT * FROM user LIMIT 10');
        $stmt->execute();
        $user_list = $stmt->fetchAll(PDO::FETCH_CLASS, 'User');
        $context = array('user_list' => $user_list);
        sr_response('views/admin/users.php', $context);
        // Handling Ajax Request
    } else {
        // Pagination or Filtering
        if ($_POST['type'] == 'pagination') {
            try {
                $db = sr_pdo();
                $json = $_POST['filter'];
                $json = stripslashes($json);
                $filter = json_decode($json);
                $where = '';
                $index = 0;
                foreach ($filter as $field => $value) {
                    if ($index++ == 0) {
                        $where .= 'WHERE ';
                    } else {
                        $where .= ' AND ';
                    }
                    $where .= $field . '=' . $value;
                }
                $total_record_number = User::getRecordNum($filter);
                if ($_POST['page_number'] == -1) {
                    $beginRecordNum = (int) ($total_record_number / 10) * 10;
                } else {
                    $beginRecordNum = ($_POST['page_number'] - 1) * 10;
                }
                $stmt = $db->prepare("SELECT * FROM user {$where} LIMIT {$beginRecordNum}, 10");
                $stmt->execute();
                $user_list = $stmt->fetchAll(PDO::FETCH_CLASS, 'User');
                $result = array('user_list' => $user_list, 'total_record_number' => $total_record_number);
                echo json_encode($result);
            } catch (PDOException $e) {
            }
            // Update Authorized or Admin Authority
        } else {
            try {
                $db = sr_pdo();
                $stmt = $db->prepare('SELECT * FROM user WHERE id = :id');
                $stmt->bindParam(':id', $_POST['id']);
                $stmt->setFetchMode(PDO::FETCH_CLASS, 'User');
                $stmt->execute();
                $user = $stmt->fetch();
                if ($_POST['type'] == 'authorized') {
                    if ($_POST['checked'] == 'checked') {
                        $user->is_authorized = 1;
                    } else {
                        $user->is_authorized = 0;
                    }
                } else {
                    if ($_POST['checked'] == 'checked') {
                        $user->is_admin = 1;
                    } else {
                        $user->is_admin = 0;
                    }
                }
                $result = $user->save($db);
                if (sr_user_id() == $user->id) {
                    sr_set_admin($user->is_admin);
                    sr_set_authorized($user->is_authorized);
                }
            } catch (PDOException $e) {
            }
        }
    }
}