{% load staticfiles form_tools %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Wie heeft de tapperssleutel kwijtgemaakt?</title>
    <link rel="stylesheet" href="{% static 'css/bootstrap.css' %}"/>
    <link rel="stylesheet" href="{% static 'css/bootstrap-datepicker.css' %}"/>
    <link rel="stylesheet" href="{% static 'css/style.css' %}"/>
</head>
<body>
    <div class="container">
        <div class="row">
            <div class="col col-12">
                <div class="card">
                    <h5 class="card-header">Dus, wie heeft de tapperssleutel nu weer kwijt gemaakt?</h5>
                    <div class="card-body">
                        <form method="POST" action="">
                            {% csrf_token %}

                            {% if form.errors %}
                            <div class="form-group">
                                {{ form.errors }}
                            </div>
                            {% endif %}

                            <div class="form-group">
                                <label for="{{ form.tapper.id_for_label }}">Tapper (<a href="{% url 'new_tapper' %}">Tapper
                                    toevoegen?</a>)</label>
                                {{ form.tapper|add_class:"form-control" }}
                            </div>
                            <div class="form-group">
                                <div class="row">
                                    <div class="col">
                                        <label for="{{ form.date.id_for_label }}">Datum</label>
                                        {{ form.date|add_class:"form-control" }}
                                    </div>
                                </div>
                            </div>
                            <input class="btn btn-danger" type="submit" value="Wat incapabel."/>
                        </form>
                    </div>
                </div>
            </div>
        </div>
        <div class="row">
            <div class="col col-12">
                <div class="card">
                    <h5 class="card-header">En wie is er dan het meest incapabel?</h5>
                    <div class="card-body">
                        <form class="form-inline" action="{% url 'detail' %}" method="post">
                            {% csrf_token %}
                            <div class="input-group mb-2 mr-sm-2">
                                <div class="input-group-prepend">
                                    <div class="input-group-text">Van:</div>
                                </div>
                                {{ detailform.start_date|add_class:"form-control" }}
                            </div>
                            <div class="input-group mb-2 mr-sm-2">
                                <div class="input-group-prepend">
                                    <div class="input-group-text">Tot:</div>
                                </div>
                                {{ detailform.end_date|add_class:"form-control" }}
                            </div>
                            <div class="input-group mb-2 mr-sm-2">
                                <button type="submit" class="btn btn-secondary">Filter</button>
                            </div>
                        </form>

                        {% if tappers %}
                            <p>Tsja, dat is eigenlijk wel <b>{{ tappers.0.name }}</b>, die had de sleutel al <b>{{ tappers.0.amount }} keer</b>!</p>
                            <p>En voor de rest zijn deze mensen ook vrij incapabel:</p>
                            <table>
                        {% endif %}
                        {% for tapper in tappers %}
                                <tr>
                                    <th>{{ tapper.name }}:&nbsp;</th>
                                    <td>{{ tapper.amount }} keer</td>
                                </tr>
                        {% empty %}
                            <p>Niemand in deze periode! Hulde aan de tappers!</p>
                        {% endfor %}
                        {% if tappers %}
                            </table>
                        {% endif %}

                        {% if tapperlist %}
                        <!-- Show chart -->
                        <script type="text/javascript" src="{% static 'js/gchart_loader.js' %}"></script>
                        {{ tapperlist|json_script:"tapperlist" }}
                        {{ tappersdata|json_script:"tapperdata" }}
                        <script type="text/javascript">

                            var data_headers = JSON.parse(document.getElementById('tapperlist').textContent);
                            var data_content = JSON.parse(document.getElementById('tapperdata').textContent);

                            var chartData = [];
                            var headerRow = ['Date'];
                            headerRow = headerRow.concat(data_headers);
                            chartData.push(headerRow);

                            // Add first row with all zeroes on start date of form
                            var startDate = new Date("{{ detailform.start_date.value|date:"Y-m-d" }}");
                            rowData = [startDate];
                            for (var index in data_headers) {
                                if (data_headers[index] !== "Date") {
                                    rowData.push(0);
                                }
                            }
                            chartData.push(rowData);

                            // Add rest of rows
                            for (var date in data_content) {
                                rowData = [new Date(date)];
                                for (var index in data_headers) {
                                    if (data_headers[index] !== "Date") {
                                        rowData.push(data_content[date][data_headers[index]]);
                                    }
                                }
                                chartData.push(rowData);
                            }

                            // Add last row with max values on end date of form
                            var endDate = new Date("{{ detailform.end_date.value|date:"Y-m-d" }}");
                            rowData = [endDate];
                            for (var index in data_headers) {
                                if (data_headers[index] !== "Date") {
                                    rowData.push(data_content[date][data_headers[index]]);
                                }
                            }
                            chartData.push(rowData);

                            google.charts.load('current', {'packages':['corechart']});
                            google.charts.setOnLoadCallback(drawChart);
                            function drawChart() {
                                var data = google.visualization.arrayToDataTable(chartData);

                                var options = {
                                    title: 'Tappersincompetentie',
                                    legend: {position: 'right'},
                                    vAxis: {format: '0'}
                                };

                                var chart = new google.visualization.LineChart(document.getElementById('curve_chart'));
                                chart.draw(data, options);
                            }
                        </script>
                        <div id="curve_chart" style="width: 900px; height: 500px"></div>
                        {% endif %}
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>