Add basic ui 57/38957/4
authorakhilbatra898 <akhil.batra@research.iiit.ac.in>
Tue, 8 Aug 2017 17:39:51 +0000 (23:09 +0530)
committerakhilbatra898 <akhil.batra@research.iiit.ac.in>
Tue, 15 Aug 2017 15:25:35 +0000 (20:55 +0530)
- Repos Listing
- Creation and updation
- Running Benchmarking
- Listed and detailed view of logs
- Add django management command to import frontend dependencies

Change-Id: If6f7dbc1fc18b022d9dda7a76f76dfee1c110450
Signed-off-by: akhilbatra898 <akhil.batra@research.iiit.ac.in>
14 files changed:
.gitignore
qtip/web/bench/management/__init__.py [new file with mode: 0644]
qtip/web/bench/management/commands/__init__.py [new file with mode: 0644]
qtip/web/bench/management/commands/_private.py [new file with mode: 0644]
qtip/web/bench/management/commands/importstatic.py [new file with mode: 0644]
qtip/web/bench/urls.py
qtip/web/bench/views.py
qtip/web/templates/bench/base.html
qtip/web/templates/bench/index.html [new file with mode: 0644]
qtip/web/templates/bench/repo_form.html
qtip/web/templates/bench/run.html
qtip/web/templates/bench/task_detail.html
qtip/web/templates/bench/task_list.html
qtip/web/templates/registration/login.html

index 9df6dcc..3009b6a 100644 (file)
@@ -55,6 +55,7 @@ data/my_key.pem
 # Django stuff:
 *.log
 *.sqlite3
+static/
 
 # Sphinx documentation
 docs/_build/
diff --git a/qtip/web/bench/management/__init__.py b/qtip/web/bench/management/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/qtip/web/bench/management/commands/__init__.py b/qtip/web/bench/management/commands/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/qtip/web/bench/management/commands/_private.py b/qtip/web/bench/management/commands/_private.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/qtip/web/bench/management/commands/importstatic.py b/qtip/web/bench/management/commands/importstatic.py
new file mode 100644 (file)
index 0000000..471faf8
--- /dev/null
@@ -0,0 +1,10 @@
+import os
+
+from django.core.management.base import BaseCommand
+
+
+class Command(BaseCommand):
+    help = 'Import frontend dependencies for serving as static files'
+
+    def handle(self, *args, **options):
+        os.system("git clone https://github.com/gurayyarar/AdminBSBMaterialDesign.git bench/static/")
index ae9738b..a6decbc 100644 (file)
@@ -16,6 +16,7 @@ import views
 
 urlpatterns = [
     url('^', include('django.contrib.auth.urls')),
+    url('^dashboard/$', views.Dashboard.as_view(), name="index"),
     url('^repos/$', views.ReposView.as_view(), name='repos'),
     url('^repos/(?P<pk>\d+)$', views.RepoUpdate.as_view(), name='repo_update'),
     url('^run/$', views.Run.as_view(), name='run'),
index 6de5e4c..56f100c 100644 (file)
@@ -15,6 +15,7 @@ from django.contrib.auth.mixins import LoginRequiredMixin
 from django.views.generic.edit import CreateView, UpdateView
 from django.views.generic.list import ListView
 from django.views.generic.detail import DetailView
+from django.views.generic import TemplateView
 from django.views import View
 from django.shortcuts import render, redirect
 from django.core.files.base import ContentFile
@@ -25,6 +26,10 @@ import models
 import utils
 
 
+class Dashboard(TemplateView):
+    template_name = "bench/index.html"
+
+
 class ReposView(LoginRequiredMixin, CreateView):
     model = models.Repo
     fields = '__all__'
@@ -32,6 +37,7 @@ class ReposView(LoginRequiredMixin, CreateView):
     def get_context_data(self, **kwargs):
         context = super(ReposView, self).get_context_data(**kwargs)
         context["repos"] = self.model.objects.all()
+        context["template_role"] = "add"
         return context
 
 
@@ -42,6 +48,7 @@ class RepoUpdate(LoginRequiredMixin, UpdateView):
     def get_context_data(self, **kwargs):
         context = super(RepoUpdate, self).get_context_data(**kwargs)
         context["repos"] = self.model.objects.all()
+        context["template_role"] = "edit"
         return context
 
 
index f0d3610..4eaf56f 100644 (file)
-<!DOCTYPE html>
-<html lang="en">
-    <head>
-        <title>QTIP Benchmarking Services</title>
-    </head>
-    <body>
-        {% block content %}
-        {% endblock %}
-    </body>
-</html>
\ No newline at end of file
+<html>
+<head>
+    <meta charset="UTF-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
+    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
+    <title>QTIP Benchmarking Services</title>
+    <!-- Favicon-->
+    <!--<link rel="icon" href="favicon.ico" type="image/x-icon">-->
+    <!-- Google Fonts -->
+    <link href="https://fonts.googleapis.com/css?family=Roboto:400,700&subset=latin,cyrillic-ext" rel="stylesheet" type="text/css">
+    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" type="text/css">
+
+    <!-- Bootstrap Core Css -->
+    <link href="/static/plugins/bootstrap/css/bootstrap.css" rel="stylesheet">
+
+    <!-- Waves Effect Css -->
+    <link href="/static/plugins/node-waves/waves.css" rel="stylesheet" />
+
+    <!-- Animation Css -->
+    <link href="/static/plugins/animate-css/animate.css" rel="stylesheet" />
+
+    <!-- Morris Chart Css-->
+    <link href="/static/plugins/morrisjs/morris.css" rel="stylesheet" />
+
+    <!-- Custom Css -->
+    <link href="/static/css/style.css" rel="stylesheet"/>
+    <!--<link href="/static/plugins/materialize-css/css/materialize.css" rel="stylesheet"/>-->
+
+    <!-- AdminBSB Themes. You can choose a theme from css/themes instead of get all themes -->
+    <link href="/static/css/themes/theme-teal.css" rel="stylesheet" />
+    <script src="/static/plugins/jquery/jquery.min.js"></script>
+</head>
+
+<body class="theme-red">
+    <!-- Page Loader -->
+    <div class="page-loader-wrapper">
+        <div class="loader">
+            <div class="preloader">
+                <div class="spinner-layer pl-red">
+                    <div class="circle-clipper left">
+                        <div class="circle"></div>
+                    </div>
+                    <div class="circle-clipper right">
+                        <div class="circle"></div>
+                    </div>
+                </div>
+            </div>
+            <p>Please wait...</p>
+        </div>
+    </div>
+    <!-- #END# Page Loader -->
+    <!-- Overlay For Sidebars -->
+    <div class="overlay"></div>
+    <!-- #END# Overlay For Sidebars -->
+    <!-- Search Bar -->
+    <div class="search-bar">
+        <div class="search-icon">
+            <i class="material-icons">search</i>
+        </div>
+        <input type="text" placeholder="START TYPING...">
+        <div class="close-search">
+            <i class="material-icons">close</i>
+        </div>
+    </div>
+    <!-- #END# Search Bar -->
+    <!-- Top Bar -->
+    <nav class="navbar">
+        <div class="container-fluid">
+            <div class="navbar-header">
+                <a href="javascript:void(0);" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse" aria-expanded="false"></a>
+                <a href="javascript:void(0);" class="bars"></a>
+                <a class="navbar-brand" href="{% url 'index' %}">QTIP-Web</a>
+            </div>
+            <div class="collapse navbar-collapse" id="navbar-collapse">
+                <ul class="nav navbar-nav navbar-right">
+                    <!-- Call Search -->
+                    <li><a href="javascript:void(0);" class="js-search" data-close="true"><i class="material-icons">search</i></a></li>
+                    <!-- #END# Call Search -->
+                    <!-- Notifications -->
+                    <!--
+                    <li class="dropdown">
+                        <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button">
+                            <i class="material-icons">notifications</i>
+                            <span class="label-count">7</span>
+                        </a>
+                        <ul class="dropdown-menu">
+                            <li class="header">NOTIFICATIONS</li>
+                            <li class="body">
+                                <ul class="menu">
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-light-green">
+                                                <i class="material-icons">person_add</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4>12 new members joined</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 14 mins ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-cyan">
+                                                <i class="material-icons">add_shopping_cart</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4>4 sales made</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 22 mins ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-red">
+                                                <i class="material-icons">delete_forever</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4><b>Nancy Doe</b> deleted account</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 3 hours ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-orange">
+                                                <i class="material-icons">mode_edit</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4><b>Nancy</b> changed name</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 2 hours ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-blue-grey">
+                                                <i class="material-icons">comment</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4><b>John</b> commented your post</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 4 hours ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-light-green">
+                                                <i class="material-icons">cached</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4><b>John</b> updated status</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> 3 hours ago
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <div class="icon-circle bg-purple">
+                                                <i class="material-icons">settings</i>
+                                            </div>
+                                            <div class="menu-info">
+                                                <h4>Settings updated</h4>
+                                                <p>
+                                                    <i class="material-icons">access_time</i> Yesterday
+                                                </p>
+                                            </div>
+                                        </a>
+                                    </li>
+                                </ul>
+                            </li>
+                            <li class="footer">
+                                <a href="javascript:void(0);">View All Notifications</a>
+                            </li>
+                        </ul>
+                    </li>
+
+
+                    <li class="dropdown">
+                        <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button">
+                            <i class="material-icons">flag</i>
+                            <span class="label-count">9</span>
+                        </a>
+                        <ul class="dropdown-menu">
+                            <li class="header">TASKS</li>
+                            <li class="body">
+                                <ul class="menu tasks">
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <h4>
+                                                Footer display issue
+                                                <small>32%</small>
+                                            </h4>
+                                            <div class="progress">
+                                                <div class="progress-bar bg-pink" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 32%">
+                                                </div>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <h4>
+                                                Make new buttons
+                                                <small>45%</small>
+                                            </h4>
+                                            <div class="progress">
+                                                <div class="progress-bar bg-cyan" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 45%">
+                                                </div>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <h4>
+                                                Create new dashboard
+                                                <small>54%</small>
+                                            </h4>
+                                            <div class="progress">
+                                                <div class="progress-bar bg-teal" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 54%">
+                                                </div>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <h4>
+                                                Solve transition issue
+                                                <small>65%</small>
+                                            </h4>
+                                            <div class="progress">
+                                                <div class="progress-bar bg-orange" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 65%">
+                                                </div>
+                                            </div>
+                                        </a>
+                                    </li>
+                                    <li>
+                                        <a href="javascript:void(0);">
+                                            <h4>
+                                                Answer GitHub questions
+                                                <small>92%</small>
+                                            </h4>
+                                            <div class="progress">
+                                                <div class="progress-bar bg-purple" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 92%">
+                                                </div>
+                                            </div>
+                                        </a>
+                                    </li>
+                                </ul>
+                            </li>
+                            <li class="footer">
+                                <a href="javascript:void(0);">View All Tasks</a>
+                            </li>
+                        </ul>
+                    </li>
+                    <!-- #END# Tasks -->
+                    <li class="pull-right"><a href="javascript:void(0);" class="js-right-sidebar" data-close="true"><i class="material-icons">more_vert</i></a></li>
+                </ul>
+            </div>
+        </div>
+    </nav>
+    <!-- #Top Bar -->
+    <section>
+        <!-- Left Sidebar -->
+        <aside id="leftsidebar" class="sidebar">
+            <!-- User Info -->
+            <div class="user-info">
+                <div class="image">
+                    <img src="/static/images/user.png" width="48" height="48" alt="User" />
+                </div>
+                <div class="info-container">
+                    <div class="name" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ user.username }}</div>
+                    <div class="email">{{ user.email }}</div>
+                    <div class="btn-group user-helper-dropdown">
+                        <i class="material-icons" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">keyboard_arrow_down</i>
+                        <ul class="dropdown-menu pull-right">
+                            <li><a href="/bench/logout"><i class="material-icons">input</i>Sign Out</a></li>
+                        </ul>
+                    </div>
+                </div>
+            </div>
+            <!-- #User Info -->
+            <!-- Menu -->
+            <div class="menu">
+                <ul class="list">
+                    <li class="header">MAIN NAVIGATION</li>
+                    <li class="active">
+                        <a href="{% url 'index' %}">
+                            <i class="material-icons">home</i>
+                            <span>Home</span>
+                        </a>
+                    </li>
+                    <li>
+                        <a href="{% url 'repos' %}">
+                            <i class="material-icons">text_fields</i>
+                            <span>Repos</span>
+                        </a>
+                    </li>
+                    <li>
+                        <a href="{% url 'run' %}">
+                            <i class="material-icons">layers</i>
+                            <span>Run Benchmarks</span>
+                        </a>
+                    </li>
+                    <li>
+                        <a href="{% url 'tasks' %}" >
+                            <i class="material-icons">widgets</i>
+                            <span>Tasks</span>
+                        </a>
+                    </li>
+                </ul>
+            </div>
+            <!-- #Menu -->
+            <!-- Footer -->
+            <div class="legal">
+                <div class="copyright">
+                    &copy; 2016 - 2017 <a href="javascript:void(0);">AdminBSB - Material Design</a>.
+                </div>
+                <div class="version">
+                    <b>Version: </b> 1.0.5
+                </div>
+            </div>
+            <!-- #Footer -->
+        </aside>
+        <!-- #END# Left Sidebar -->
+        <!-- Right Sidebar -->
+        <aside id="rightsidebar" class="right-sidebar">
+            <ul class="nav nav-tabs tab-nav-right" role="tablist">
+                <li role="presentation" class="active"><a href="#skins" data-toggle="tab">SKINS</a></li>
+                <li role="presentation"><a href="#settings" data-toggle="tab">SETTINGS</a></li>
+            </ul>
+            <div class="tab-content">
+                <div role="tabpanel" class="tab-pane fade in active in active" id="skins">
+                    <ul class="demo-choose-skin">
+                        <li data-theme="red" class="active">
+                            <div class="red"></div>
+                            <span>Red</span>
+                        </li>
+                        <li data-theme="pink">
+                            <div class="pink"></div>
+                            <span>Pink</span>
+                        </li>
+                        <li data-theme="purple">
+                            <div class="purple"></div>
+                            <span>Purple</span>
+                        </li>
+                        <li data-theme="deep-purple">
+                            <div class="deep-purple"></div>
+                            <span>Deep Purple</span>
+                        </li>
+                        <li data-theme="indigo">
+                            <div class="indigo"></div>
+                            <span>Indigo</span>
+                        </li>
+                        <li data-theme="blue">
+                            <div class="blue"></div>
+                            <span>Blue</span>
+                        </li>
+                        <li data-theme="light-blue">
+                            <div class="light-blue"></div>
+                            <span>Light Blue</span>
+                        </li>
+                        <li data-theme="cyan">
+                            <div class="cyan"></div>
+                            <span>Cyan</span>
+                        </li>
+                        <li data-theme="teal">
+                            <div class="teal"></div>
+                            <span>Teal</span>
+                        </li>
+                        <li data-theme="green">
+                            <div class="green"></div>
+                            <span>Green</span>
+                        </li>
+                        <li data-theme="light-green">
+                            <div class="light-green"></div>
+                            <span>Light Green</span>
+                        </li>
+                        <li data-theme="lime">
+                            <div class="lime"></div>
+                            <span>Lime</span>
+                        </li>
+                        <li data-theme="yellow">
+                            <div class="yellow"></div>
+                            <span>Yellow</span>
+                        </li>
+                        <li data-theme="amber">
+                            <div class="amber"></div>
+                            <span>Amber</span>
+                        </li>
+                        <li data-theme="orange">
+                            <div class="orange"></div>
+                            <span>Orange</span>
+                        </li>
+                        <li data-theme="deep-orange">
+                            <div class="deep-orange"></div>
+                            <span>Deep Orange</span>
+                        </li>
+                        <li data-theme="brown">
+                            <div class="brown"></div>
+                            <span>Brown</span>
+                        </li>
+                        <li data-theme="grey">
+                            <div class="grey"></div>
+                            <span>Grey</span>
+                        </li>
+                        <li data-theme="blue-grey">
+                            <div class="blue-grey"></div>
+                            <span>Blue Grey</span>
+                        </li>
+                        <li data-theme="black">
+                            <div class="black"></div>
+                            <span>Black</span>
+                        </li>
+                    </ul>
+                </div>
+                <div role="tabpanel" class="tab-pane fade" id="settings">
+                    <div class="demo-settings">
+                        <p>GENERAL SETTINGS</p>
+                        <ul class="setting-list">
+                            <li>
+                                <span>Report Panel Usage</span>
+                                <div class="switch">
+                                    <label><input type="checkbox" checked><span class="lever"></span></label>
+                                </div>
+                            </li>
+                            <li>
+                                <span>Email Redirect</span>
+                                <div class="switch">
+                                    <label><input type="checkbox"><span class="lever"></span></label>
+                                </div>
+                            </li>
+                        </ul>
+                        <p>SYSTEM SETTINGS</p>
+                        <ul class="setting-list">
+                            <li>
+                                <span>Notifications</span>
+                                <div class="switch">
+                                    <label><input type="checkbox" checked><span class="lever"></span></label>
+                                </div>
+                            </li>
+                            <li>
+                                <span>Auto Updates</span>
+                                <div class="switch">
+                                    <label><input type="checkbox" checked><span class="lever"></span></label>
+                                </div>
+                            </li>
+                        </ul>
+                        <p>ACCOUNT SETTINGS</p>
+                        <ul class="setting-list">
+                            <li>
+                                <span>Offline</span>
+                                <div class="switch">
+                                    <label><input type="checkbox"><span class="lever"></span></label>
+                                </div>
+                            </li>
+                            <li>
+                                <span>Location Permission</span>
+                                <div class="switch">
+                                    <label><input type="checkbox" checked><span class="lever"></span></label>
+                                </div>
+                            </li>
+                        </ul>
+                    </div>
+                </div>
+            </div>
+        </aside>
+        <!-- #END# Right Sidebar -->
+    </section>
+
+    <section class="content">
+        <div class="container-fluid">
+            {% block content %}
+            {% endblock %}
+    </section>
+
+    <!-- Bootstrap Core Js -->
+    <script src="/static/plugins/bootstrap/js/bootstrap.js"></script>
+
+    <!-- Select Plugin Js -->
+    <script src="/static/plugins/bootstrap-select/js/bootstrap-select.js"></script>
+
+    <!-- Slimscroll Plugin Js -->
+    <script src="/static/plugins/jquery-slimscroll/jquery.slimscroll.js"></script>
+
+    <!-- Waves Effect Plugin Js -->
+    <script src="/static/plugins/node-waves/waves.js"></script>
+
+    <!-- Jquery CountTo Plugin Js -->
+    <script src="/static/plugins/jquery-countto/jquery.countTo.js"></script>
+
+    <!-- Morris Plugin Js -->
+    <script src="/static/plugins/raphael/raphael.min.js"></script>
+    <script src="/static/plugins/morrisjs/morris.js"></script>
+
+    <!-- ChartJs -->
+    <!--<script src="/static/plugins/chartjs/Chart.bundle.js"></script>
+
+    <!-- Flot Charts Plugin Js
+    <script src="/static/plugins/flot-charts/jquery.flot.js"></script>
+    <script src="/static/plugins/flot-charts/jquery.flot.resize.js"></script>
+    <script src="/static/plugins/flot-charts/jquery.flot.pie.js"></script>
+    <script src="/static/plugins/flot-charts/jquery.flot.categories.js"></script>
+    <script src="/static/plugins/flot-charts/jquery.flot.time.js"></script>-->
+
+    <!-- Sparkline Chart Plugin Js -->
+    <script src="/static/plugins/jquery-sparkline/jquery.sparkline.js"></script>
+
+    <!-- Custom Js -->
+    <script src="/static/js/admin.js"></script>
+    <script src="/static/js/pages/index.js"></script>
+
+    <!-- Demo Js -->
+    <script src="/static/js/demo.js"></script>
+</body>
+
+</html>
diff --git a/qtip/web/templates/bench/index.html b/qtip/web/templates/bench/index.html
new file mode 100644 (file)
index 0000000..b3625a3
--- /dev/null
@@ -0,0 +1,3 @@
+{% extends 'bench/base.html' %}
+{% block content %}
+{% endblock %}
\ No newline at end of file
index 109436a..158b848 100644 (file)
@@ -1,15 +1,43 @@
 {% extends 'bench/base.html' %}
 {% block content %}
-    <div>
-        <h3>Repos</h3>
-        {% for repo in repos %}
-        <li>{{ repo.name }}</li>
-        {% endfor %}
-    </div>
-    <form role="form" method="post" action="">{% csrf_token %}
-        {{ form }}
-        <div class=input-field" style="margin:30px 20px">
-            <button  type="submit" value="Login"/>Submit</button>
+    <div class="card" >
+        <div class="header">
+            <h2>Repos</h2>
+            <ul class="header-dropdown m-r-0">
+                <li>
+                    <button data-toggle="modal" data-target="#repoform" class="btn bg-purple waves-effect"><i id="template-role" class="material-icons">{{ template_role }}</i></button>
+                </li>
+            </ul>
+        </div>
+        <div class="body">
+            {% for repo in repos %}
+            <ul class="font-15" ><a href="{% url 'repo_update' repo.id %}">{{ repo.name }}</a></ul>
+            {% endfor %}
         </div>
-    </form>
+    </div>
+    <div id="repoform" class="modal fade in" role="dialog" tabindex="-1">
+         <div class="modal-dialog" role="document">
+             <div class="modal-content">
+                <div class="modal-header"></div>
+                <div class="modal-body">
+                <form role="form" method="post" action="">{% csrf_token %}
+                    {{ form }}
+                    <div class=input-field" style="margin:30px 20px">
+                    <button  type="submit" value="Login">Submit</button>
+                    </div>
+                </form>
+                </div>
+                <div class="modal-footer"></div>
+             </div>
+         </div>
+    </div>
+    <script>
+        $(window).on('load',function(){
+            if($('#template-role').text() == "edit")
+            {
+                console.log("hello");
+                $('#repoform').modal('show');
+            }
+    });
+    </script>
 {% endblock %}
index 8eaa251..eabd2ea 100644 (file)
@@ -1,15 +1,14 @@
 {% extends 'bench/base.html' %}
 {% block content %}
-    <div>
-        <h3>Repos</h3>
-        {% for repo in repos %}
-        <li>{{ repo.name }}</li>
-        {% endfor %}
-    </div>
-    <form role="form" method="post" action="">{% csrf_token %}
-        {{ form }}
-        <div class=input-field" style="margin:30px 20px">
-            <button  type="submit" value="Login"/>Submit</button>
+    <div class="card">
+        <div class="header">
+            <h2>Run</h2>
         </div>
-    </form>
+        <form role="form" method="post" action="">{% csrf_token %}
+            {{ form }}
+            <div class=input-field">
+                <button class="btn" type="submit" value="Login"/>Submit</button>
+            </div>
+        </form>
+    </div>
 {% endblock %}
\ No newline at end of file
index d715022..3f42c10 100644 (file)
@@ -1,17 +1,34 @@
 {% extends 'bench/base.html' %}
 {% block content %}
-    <div>
-        <h3>Task</h3>
-        <table>
-            <tr>
-                <td>{{ object.repo}}</td><td>{{ object.get_status_display }}</td><td>{{ object.start_time }}</td>
-                <td>{{ object.end_time }}</td><td>{{ object.duration }}</td><td>{{ object.log }}</td>
-            </tr>
-        </table>
-        <div>
-            <p>
-                {{ log | linebreaks }}
-            </p>
+    <div class="card">
+        <div class="header">
+            <h2>Task</h2>
+        </div>
+        <div class="body">
+            <table class="table-responsive table">
+                <thead>
+                    <tr role="row">
+                        <th>Repo</th>
+                        <th>Status</th>
+                        <th>Start Time</th>
+                        <th>End Time</th>
+                        <th>Run time</th>
+                     </tr>
+                </thead>
+                <tbody>
+                    <tr role="row">
+                        <td>{{ object.repo}}</td><td>{{ object.get_status_display }}</td><td>{{ object.start_time }}</td>
+                        <td>{{ object.end_time }}</td><td>{{ object.duration }}</td><td>{{ object.log }}</td>
+                    </tr>
+                </tbody>
+            </table>
+        </div>
+        <div class="body">
+            <div>
+                <p>
+                    {{ log | linebreaks }}
+                </p>
+            </div>
         </div>
     </div>
 {% endblock %}
\ No newline at end of file
index 188d6b8..074483a 100644 (file)
@@ -1,22 +1,77 @@
 {% extends 'bench/base.html' %}
 {% block content %}
-    <div>
-        <h3>Tasks Log</h3>
-        <table>
-            <th>Repo</th>
-            <th>Status</th>
-            <th>Start Time</th>
-            <th>End Time</th>
-            <th>Run time</th>
-            {% for task in object_list %}
-                <tr onclick="location.href='{% url 'task_view' task.id %}'">
-                    <td>{{ task.repo }}</td>
-                    <td>{{ task.get_status_display }}</td>
-                    <td>{{ task.start_time }}</td>
-                    <td>{{ task.end_time }}</td>
-                    <td>{{ task.run_time }}</td>
-                </tr>
-            {% endfor %}
-        <table>
-    </div>
+
+        <!-- JQuery DataTable Css -->
+    <link href="/static/plugins/jquery-datatable/skin/bootstrap/css/dataTables.bootstrap.css" rel="stylesheet">
+    <div class="card">
+                        <div class="header">
+                            <h2>
+                                Tasks Log
+                            </h2>
+                            <ul class="header-dropdown m-r--5">
+                                <li class="dropdown">
+                                    <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
+                                        <i class="material-icons">more_vert</i>
+                                    </a>
+                                    <ul class="dropdown-menu pull-right">
+                                        <li><a href="javascript:void(0);" class=" waves-effect waves-block">Action</a></li>
+                                        <li><a href="javascript:void(0);" class=" waves-effect waves-block">Another action</a></li>
+                                        <li><a href="javascript:void(0);" class=" waves-effect waves-block">Something else here</a></li>
+                                    </ul>
+                                </li>
+                            </ul>
+                        </div>
+                        <div class="body">
+                            <div class="table-responsive">
+                                <div id="DataTables_Table_1_wrapper" class="dataTables_wrapper form-inline dt-bootstrap"><div class="dt-buttons"></div>
+                                    <table class="table table-bordered table-striped table-hover dataTable js-exportable" id="DataTables_Table_1" role="grid" aria-describedby="DataTables_Table_1_info">
+                                    <thead>
+                                        <tr role="row">
+                                            <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Repo</th>
+                                            <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Status</th>
+                                            <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Start Time</th>
+                                            <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">End Time</th>
+                                            <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Run time</th>
+                                         </tr>
+                                    </thead>
+                                    <tbody>
+                                     {% for task in object_list %}
+                                     <tr  role="row" onclick="location.href='{% url 'task_view' task.id %}'">
+                                <td>{{ task.repo }}</td>
+                                <td>{{ task.get_status_display }}</td>
+                                <td>{{ task.start_time }}</td>
+                                <td>{{ task.end_time }}</td>
+                                <td>{{ task.run_time }}</td>
+                                </tr>
+                             {% endfor %}
+                                        </tbody>
+                                        <tfoot>
+                                        <tr role="row">
+                                            <th  rowspan="1" colspan="1">Repo</th>
+                                            <th  rowspan="1" colspan="1" >Status</th>
+                                            <th  rowspan="1" colspan="1" >Start Time</th>
+                                            <th  rowspan="1" colspan="1" >End Time</th>
+                                            <th  rowspan="1" colspan="1">Run time</th>
+                                         </tr>
+                                    </tfoot>
+                                    </table>
+                                  </div>
+                        </div>
+                    </div>
+
+
+<!-- Jquery DataTable Plugin Js -->
+    <script src="/static/plugins/jquery-datatable/jquery.dataTables.js"></script>
+    <script src="/static/plugins/jquery-datatable/skin/bootstrap/js/dataTables.bootstrap.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/dataTables.buttons.min.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/buttons.flash.min.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/jszip.min.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/pdfmake.min.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/vfs_fonts.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/buttons.html5.min.js"></script>
+    <script src="/static/plugins/jquery-datatable/extensions/export/buttons.print.min.js"></script>
+
+    <!-- Custom Js -->
+    <script src="/static/js/admin.js"></script>
+    <script src="/static/js/pages/tables/jquery-datatable.js"></script>
 {% endblock %}
\ No newline at end of file
index 53da937..1e15b90 100644 (file)
@@ -1,18 +1,90 @@
 <!DOCTYPE html>
-<html lang="en">
-    <head>
-        <meta charset="utf-8">
-        <title>QTIP Benchmarking Services</title>
-    </head>
-    <body>
-        {% block content %}
-        <form role="form" method="post" action= "/bench/login/">{% csrf_token %}
-        {{ form }}
-            <div class=input-field" style="margin:30px 20px">
-                <button  type="submit" value="Login"/>Login</button>
-                <input type="hidden" name="next" value = "{{ next }}"/>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
+    <title>Sign In | Bootstrap Based Admin Template - Material Design</title>
+    <!-- Favicon-->
+    <link rel="icon" href="/static/favicon.ico" type="image/x-icon">
+
+    <!-- Google Fonts -->
+    <link href="https://fonts.googleapis.com/css?family=Roboto:400,700&subset=latin,cyrillic-ext" rel="stylesheet" type="text/css">
+    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" type="text/css">
+
+    <!-- Bootstrap Core Css -->
+    <link href="/static/plugins/bootstrap/css/bootstrap.css" rel="stylesheet">
+
+    <!-- Waves Effect Css -->
+    <link href="/static/plugins/node-waves/waves.css" rel="stylesheet" />
+
+    <!-- Animation Css -->
+    <link href="/static/plugins/animate-css/animate.css" rel="stylesheet" />
+
+    <!-- Custom Css -->
+    <link href="/static/css/style.css" rel="stylesheet">
+</head>
+
+<body class="login-page">
+    <div class="login-box">
+        <div class="card">
+            <div class="body">
+                {% block content %}
+                <form id="sign_in" method="POST" action="/bench/login/" > {% csrf_token %}
+                    <div class="msg">Sign in to start your session</div>
+                    <div class="input-group">
+                        <span class="input-group-addon">
+                            <i class="material-icons">person</i>
+                        </span>
+                        <div class="form-line">
+                            <input type="text" class="form-control" name="{{ form.username.html_name}}" placeholder="Username" required autofocus>
+                        </div>
+                    </div>
+                    <div class="input-group">
+                        <span class="input-group-addon">
+                            <i class="material-icons">lock</i>
+                        </span>
+                        <div class="form-line">
+                            <input type="password" class="form-control" name="{{ form.password.html_name }}" placeholder="Password" required>
+                        </div>
+                    </div>
+                    <div class="row">
+                        <div class="col-xs-8 p-t-5">
+                            <input type="checkbox" name="rememberme" id="rememberme" class="filled-in chk-col-pink">
+                            <label for="rememberme">Remember Me</label>
+                        </div>
+                        <div class="col-xs-4">
+                            <button class="btn btn-block bg-pink waves-effect" type="submit">SIGN IN</button>
+                        </div>
+                    </div>
+                    <div class="row m-t-15 m-b--20">
+                        <div class="col-xs-6">
+                            <a href="sign-up.html">Register Now!</a>
+                        </div>
+                        <div class="col-xs-6 align-right">
+                            <a href="forgot-password.html">Forgot Password?</a>
+                        </div>
+                    </div>
+                    {{ form.errors }}
+                </form>
             </div>
-        </form>
-        {% endblock %}
-    </body>
-</html>
\ No newline at end of file
+        </div>
+    </div>
+    {% endblock %}
+    <!-- Jquery Core Js -->
+    <script src="/static/plugins/jquery/jquery.min.js"></script>
+
+    <!-- Bootstrap Core Js -->
+    <script src="/static/plugins/bootstrap/js/bootstrap.js"></script>
+
+    <!-- Waves Effect Plugin Js -->
+    <script src="/static/plugins/node-waves/waves.js"></script>
+
+    <!-- Validation Plugin Js -->
+    <script src="/static/plugins/jquery-validation/jquery.validate.js"></script>
+
+    <!-- Custom Js -->
+    <script src="/static/js/admin.js"></script>
+    <script src="/static/js/pages/examples/sign-in.js"></script>
+</body>
+
+</html>