<!DOCTYPE HTML>
<html lang="en">
<head>
    <title>LibreNMS Install</title>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="http://www.xaasid.com/css/bootstrap4.min.css" rel="stylesheet" type="text/css"/>
    <link href="http://www.xaasid.com/css/fontawesome.min.css" rel="stylesheet">
    <script src="http://www.xaasid.com/js/jquery.min.js"></script>
    <script src="http://www.xaasid.com/js/popper.min.js"></script>
    <script src="http://www.xaasid.com/js/bootstrap4.min.js"></script>
    <script src="http://www.xaasid.com/js/clipboard.min.js"></script>
    <style>
        body {
            background-color: #046C8B;
        }

        .primary-panel {
            padding: 0;
            border: 0;
            box-shadow: 3px 3px 30px #222;
            min-height: 540px;
        }

        .btn-circle {
            width: 60px;
            height: 60px;
            padding: 8px 14px;
            border-radius: 30px;
            font-size: 24px;
            line-height: 1.7;
            box-shadow: 2px 2px 4px grey;
        }

        .card-img-top {
            background-color: #EEEEEE;
        }

        #progress-icons {
            background: linear-gradient(to bottom, #EEEEEE 50%, white 50%)
        }

        .btn-circle.disabled {
            opacity: 1;
            background-color: #62bcca;
            border-color: #64c0ce;
        }
        .btn-circle.btn-outline-info:not(:hover) {
            background-color: white;
        }
        .btn-circle.btn-primary-info:not(:hover) {
            background-color: white;
        }

        .install-progress {
            margin: auto -1px auto 0;
            height: 14px;
            display: inline-block;
            width: 100%;
            background-color: lightgray;
            box-shadow: inset 0 6px 4px -5px black,
            inset 0 -6px 4px -7px black;
        }

        .install-progress.loop {
            box-shadow: inset 0 6px 4px -5px black,
            inset 0 -6px 4px -7px black,
            inset 8px 0 4px -6px grey; /* missing button shadow */
        }

        .install-progress.complete {
            background-color: #db202e;
        }

        #step-title {
            padding-bottom: 20px;
        }

        .rotate-if-collapsed {
            transition: .4s transform ease-in-out;
        }

        [data-toggle="collapse"] {
            cursor: pointer;
        }

        [data-toggle="collapse"][aria-expanded="true"] .rotate-if-collapsed {
            transform: rotate(180deg);
        }
    </style>
        <style type="text/css">
        .check-row {
            padding-top: 10px;
            padding-bottom: 10px;
            margin-right: -20px;
            margin-left: -20px;
        }

        .checks .card-body {
            padding-top: 0;
            padding-bottom: 0;
        }

        .checks {
            font-size: 16pt;
        }

        small {
            font-size: 10pt;
        }
    </style>
</head>
<body>
<div class="container">
    <div class="card col-lg-8 offset-lg-2 col-md-10 offset-md-1 col-12 primary-panel">
        <div class="card-img-top">
            <img class="card-img-top p-4" src="http://www.xaasid.com/images/librenms_logo_light.svg" alt="LibreNMS">
            <div id="progress-icons" class="d-flex flex-row justify-content-around">
                <div class="install-progress complete"></div>
                                    <div>
                        <a href="http://www.xaasid.com/install/checks"
                           id="install-step-checks"
                           class="install-step btn btn-circle
                            btn-outline-info                            "
                           title="Pre-Install Checks"
                        >
                            <i class="fa-solid fa-list-ul fa-flip-horizontal"></i>
                        </a>
                    </div>
                    <div id="progress-checks-bar" class="install-progress loop  complete "></div>
                                    <div>
                        <a href="http://www.xaasid.com/install/database"
                           id="install-step-database"
                           class="install-step btn btn-circle
                            btn-info                            "
                           title="Configure Database"
                        >
                            <i class="fa-solid fa-database"></i>
                        </a>
                    </div>
                    <div id="progress-database-bar" class="install-progress loop "></div>
                                    <div>
                        <a href="http://www.xaasid.com/install/user"
                           id="install-step-user"
                           class="install-step btn btn-circle
                            btn-info                             disabled "
                           title="Create Admin User"
                        >
                            <i class="fa-solid fa-key"></i>
                        </a>
                    </div>
                    <div id="progress-user-bar" class="install-progress loop "></div>
                                    <div>
                        <a href="http://www.xaasid.com/install/finish"
                           id="install-step-finish"
                           class="install-step btn btn-circle
                            btn-info                             disabled "
                           title="Finish Install"
                        >
                            <i class="fa-solid fa-check"></i>
                        </a>
                    </div>
                    <div id="progress-finish-bar" class="install-progress loop "></div>
                            </div>
        </div>
        <div class="card-body">
            <div class="row">
                <div class="col-12 text-center">
                    <h2 id="step-title">Pre-Install Checks</h2>
                </div>
            </div>
            <div class="row">
                <div id="error-box" class="col-12">
                                    </div>
            </div>
                <div class="row">
        <div class=" col-8 offset-2">
            <div class="checks card ">
                <div class="card-body">
                    <div class="row bg-light check-row">
                        <div class="col-7">
                            PHP <small>(8.2 or higher required)</small>
                        </div>
                        <div class="col-5 text-right text-nowrap  text-success ">
                            8.4.16
                                                            <i class="fa-solid fa-lg fa-square-check text-success align-middle"></i>
                            
                        </div>
                    </div>

                                    </div>
            </div>
        </div>
    </div>
        </div>
    </div>
</div>
<script>
    var step = 'checks';
    function checkStepStatus(callback) {
        $.ajax('http://www.xaasid.com/install/ajax/steps')
            .done(function (data) {
                var primary;
                Object.keys(data).forEach(function (key) {
                    var classes = 'btn btn-circle';
                    classes += (key === step ? ' btn-outline-info' : ' btn-info');

                    // mark buttons enabled
                    if (!data[key].enabled) {
                        classes += ' disabled';
                    } else if (!data[key].complete && !primary) {
                        // if this step is the first enabled, but not complete, mark it as primary
                        primary = key
                    }

                    $('#install-step-' + key).attr('class', classes);
                });

                if (primary) {
                    $('#install-step-' + primary)
                        .removeClass('btn-info')
                        .removeClass('btn-outline-info')
                        .addClass(primary === step ? 'btn-outline-primary' : 'btn-primary');
                }

                if (callback && typeof callback === "function") {
                    callback(data);
                }
            })
    }

    checkStepStatus();
</script>
</body>
</html>
