Merge remote-tracking branch 'origin/master'
[qcg-portal.git] / qcg / templates / qcg / jobs.html
index 9f55914..9f184e7 100644 (file)
@@ -20,6 +20,7 @@
     <script src="{% static 'qcg/treegrid/js/jquery.treegrid.js' %}"></script>
     <script src="{% static 'qcg/moment/moment.min.js' %}"></script>
     <script src="{% static 'qcg/daterangepicker/daterangepicker.js' %}"></script>
+    <script src="{% static 'qcg/jquery.cookie.js' %}"></script>
 
     <script>
         $(function() {
                     firstDay: 1
                 }
             });
+
+            $('#select-all-columns').click(function() {
+                $('#id_columns').find('.checkbox input').prop('checked', true);
+            });
+
+            $('#default-columns').click(function() {
+                $('#select-all-columns').click();
+                $('#id_columns_0').prop('checked', false);
+            });
+
+            $('#columns-form').submit(function(e) {
+                e.preventDefault();
+                $.cookie.raw = true;
+                $.cookie('columns', $(this).serialize(), {path: location.pathname});
+                location.reload();
+            });
         });
     </script>
 {% endblock %}
         <a href="#advanced" data-toggle="modal" class="btn btn-default" title="Filtry zaawansowane" style="margin-left: 4px">
             <span class="glyphicon glyphicon-option-horizontal"></span>
         </a>
+        <a href="#columns" data-toggle="modal" class="btn btn-default" title="Kolumny" style="margin-left: 4px">
+            <span class="glyphicon glyphicon-list"></span>
+        </a>
     </form>
 
     <h1 class="page-header">
         <thead>
             <tr>
                 <th style="width: 80px"></th>
-                <th>Opis</th>
-                <th>Wysłane</th>
-                <th>Start</th>
-                <th>Koniec</th>
-                <th>Status</th>
-                <th>Host</th>
+                {% if columns.DESCRIPTION in displayed %}<th>Opis</th>{% endif %}
+                {% if columns.SUBMISSION in displayed %}<th>Wysłane</th>{% endif %}
+                {% if columns.START in displayed %}<th>Start</th>{% endif %}
+                {% if columns.END in displayed %}<th>Koniec</th>{% endif %}
+                {% if columns.STATUS in displayed %}<th>Status</th>{% endif %}
+                {% if columns.HOST in displayed %}<th>Host</th>{% endif %}
                 <th></th>
 {#                <th>Uwagi</th>#}
             </tr>
                             <td>
                                 <a href="{{ task.get_absolute_url }}">
                                     <span class="glyphicon glyphicon-file" aria-hidden="true"></span>
-{#                                    {{ task }}#}
+                                    {% if columns.JOB_ID in displayed %}{{ task }}{% endif %}
                                 </a>
                             </td>
-                            <td>{{ task.note }}</td>
-                            <td>{{ task.submission_time|timesince }} temu</td>
-                            <td>{{ task.start_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>
-                            <td>{{ task.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>
-                            <td>{{ task.get_status_display }}</td>
-                            <td>{{ task.short_host_names|join:', ' }}</td>
+                            {% if columns.DESCRIPTION in displayed %}<td>{{ task.note }}</td>{% endif %}
+                            {% if columns.SUBMISSION in displayed %}<td>{{ task.submission_time|timesince }} temu</td>{% endif %}
+                            {% if columns.START in displayed %}<td>{{ task.start_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>{% endif %}
+                            {% if columns.END in displayed %}<td>{{ task.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>{% endif %}
+                            {% if columns.STATUS in displayed %}<td>{{ task.get_status_display }}</td>{% endif %}
+                            {% if columns.HOST in displayed %}<td>{{ task.short_host_names|join:', ' }}</td>{% endif %}
                             <td><a href="{{ task.get_absolute_url }}">szczegóły&nbsp;&rsaquo;</a></td>
                         </tr>
                     {% endwith %}
                         <td>
                             <a href="{{ job.grouper.get_absolute_url }}">
                                 <span class="glyphicon glyphicon-folder-close" aria-hidden="true"></span>
-{#                                {{ job.grouper }}#}
+                                {% if columns.JOB_ID in displayed %}{{ job.grouper }}{% endif %}
                             </a>
                         </td>
-                        <td>{{ job.grouper.note }}</td>
-                        <td>{{ job.grouper.submission_time|timesince  }} temu</td>
-                        <td>-</td>
-                        <td>{{ job.grouper.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>
-                        <td>{{ job.grouper.get_status_display }}</td>
-                        <td>-</td>
+                        {% if columns.DESCRIPTION in displayed %}<td>{{ job.grouper.note }}</td>{% endif %}
+                        {% if columns.SUBMISSION in displayed %}<td>{{ job.grouper.submission_time|timesince  }} temu</td>{% endif %}
+                        {% if columns.START in displayed %}<td>-</td>{% endif %}
+                        {% if columns.END in displayed %}<td>{{ job.grouper.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>{% endif %}
+                        {% if columns.STATUS in displayed %}<td>{{ job.grouper.get_status_display }}</td>{% endif %}
+                        {% if columns.HOST in displayed %}<td>-</td>{% endif %}
                         <td><a href="{{ job.grouper.get_absolute_url }}">szczegóły&nbsp;&rsaquo;</a></td>
                     </tr>
 
                             <td>
                                 <a href="{{ task.get_absolute_url }}">
                                     <span class="glyphicon glyphicon-file" aria-hidden="true"></span>
-{#                                    {{ task }}#}
+                                    {% if columns.JOB_ID in displayed %}{{ task }}{% endif %}
                                 </a>
                             </td>
-                            <td>{{ task.note }}</td>
-                            <td>{{ task.submission_time|timesince  }} temu</td>
-                            <td>{{ task.start_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>
-                            <td>{{ task.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>
-                            <td>{{ task.get_status_display }}</td>
-                            <td>{{ task.short_host_names|join:', ' }}</td>
+                            {% if columns.DESCRIPTION in displayed %}<td>{{ task.note }}</td>{% endif %}
+                            {% if columns.SUBMISSION in displayed %}<td>{{ task.submission_time|timesince  }} temu</td>{% endif %}
+                            {% if columns.START in displayed %}<td>{{ task.start_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>{% endif %}
+                            {% if columns.END in displayed %}<td>{{ task.finish_time|date:"CUSTOM_DATETIME_FORMAT" }}</td>{% endif %}
+                            {% if columns.STATUS in displayed %}<td>{{ task.get_status_display }}</td>{% endif %}
+                            {% if columns.HOST in displayed %}<td>{{ task.short_host_names|join:', ' }}</td>{% endif %}
                             <td><a href="{{ task.get_absolute_url }}">szczegóły&nbsp;&rsaquo;</a></td>
                         </tr>
                     {% endfor %}
         </div>
     </div>
 
+    {# Column selection modal #}
+    <div class="modal fade" id="columns" tabindex="-1" role="dialog" aria-labelledby="modal-label" aria-hidden="true">
+        <div class="modal-dialog">
+            <div class="modal-content">
+                <div class="modal-header">
+                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+                    <h4 class="modal-title" id="modal-label">Wybór kolumn</h4>
+                </div>
+                <div class="modal-body">
+                    <form id="columns-form" action=".">
+                        {% bootstrap_field columns.columns %}
+                    </form>
+                </div>
+                <div class="modal-footer">
+                    <button type="button" class="btn btn-default" data-dismiss="modal">Anuluj</button>
+                    <a id="select-all-columns" class="btn btn-success">Wybierz wszystkie</a>
+                    <a id="default-columns" class="btn btn-warning">Domyślne</a>
+                    <button type="submit" class="btn btn-primary" form="columns-form">Zapisz</button>
+                </div>
+            </div>
+        </div>
+    </div>
+
 {% endblock container %}