You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2017/12/14 01:51:22 UTC

[airavata-sandbox] branch master updated (abb191f -> 57897ba)

This is an automated email from the ASF dual-hosted git repository.

smarru pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git.


    from abb191f  Updated auto generated thrift files
     new 2a3e8e4  Added skeleton code for UI using Django framework
     new b703b8c  Added model for Request, basic UI to Create Request
     new b8ffad7  updated Request Model, Added forms for Create Request
     new 18664ec  Updated Create Request Form
     new 14d7aab  Previous/Next buttons working on Create Request Form
     new 83b3c03  Created landing page for User Dashboard, updated Request Model
     new 5639172  Added screens for reviewer and admin dashboards
     new 57897ba  Updated request screen for admin dashboard

The 8 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../ResourceAllocationManager}/__init__.py         |   0
 .../ResourceAllocationManager/__init__.pyc         | Bin 0 -> 174 bytes
 .../ResourceAllocationManager/settings.py          | 127 +++++++++++++
 .../ResourceAllocationManager/settings.pyc         | Bin 0 -> 2838 bytes
 .../ResourceAllocationManager/urls.py              |  28 +++
 .../ResourceAllocationManager/urls.pyc             | Bin 0 -> 1459 bytes
 .../ResourceAllocationManager/wsgi.py              |  16 ++
 .../ResourceAllocationManager/wsgi.pyc             | Bin 0 -> 668 bytes
 .../dashboard}/__init__.py                         |   0
 .../dashboard/__init__.pyc                         | Bin 0 -> 154 bytes
 .../ResourceAllocationManager/dashboard/admin.py   |   5 +
 .../ResourceAllocationManager/dashboard/admin.pyc  | Bin 0 -> 370 bytes
 .../ResourceAllocationManager/dashboard/apps.py    |   7 +
 .../ResourceAllocationManager/dashboard/apps.pyc   | Bin 0 -> 646 bytes
 .../ResourceAllocationManager/dashboard/forms.py   |  10 +
 .../ResourceAllocationManager/dashboard/forms.pyc  | Bin 0 -> 847 bytes
 .../dashboard/migrations/0001_initial.py           |  29 +++
 .../dashboard/migrations/0001_initial.pyc          | Bin 0 -> 1370 bytes
 .../migrations/0002_auto_20171201_0656.py          |  94 +++++++++
 .../migrations/0002_auto_20171201_0656.pyc         | Bin 0 -> 2128 bytes
 .../migrations/0003_auto_20171201_0705.py          |  21 ++
 .../migrations/0003_auto_20171201_0705.pyc         | Bin 0 -> 1081 bytes
 .../migrations/0004_auto_20171201_0707.py          |  20 ++
 .../migrations/0004_auto_20171201_0707.pyc         | Bin 0 -> 1018 bytes
 .../migrations/0005_remove_request_request_date.py |  19 ++
 .../0005_remove_request_request_date.pyc           | Bin 0 -> 928 bytes
 .../migrations/0006_request_request_date.py        |  20 ++
 .../migrations/0006_request_request_date.pyc       | Bin 0 -> 1038 bytes
 .../migrations/0007_auto_20171205_0024.py          |  70 +++++++
 .../migrations/0007_auto_20171205_0024.pyc         | Bin 0 -> 1834 bytes
 .../migrations/0008_auto_20171205_0028.py          |  35 ++++
 .../migrations/0008_auto_20171205_0028.pyc         | Bin 0 -> 1224 bytes
 .../migrations/0009_auto_20171205_0029.py          |  35 ++++
 .../migrations/0009_auto_20171205_0029.pyc         | Bin 0 -> 1258 bytes
 .../dashboard/migrations}/__init__.py              |   0
 .../dashboard/migrations/__init__.pyc              | Bin 0 -> 165 bytes
 .../ResourceAllocationManager/dashboard/models.py  |  33 ++++
 .../ResourceAllocationManager/dashboard/models.pyc | Bin 0 -> 2142 bytes
 .../static/dashboard/images/background.jpg         | Bin 0 -> 1203222 bytes
 .../dashboard/static/dashboard/style.css           |  49 +++++
 .../templates/dashboard/admin-request-view.html    | 155 +++++++++++++++
 .../dashboard/templates/dashboard/admin.html       |  47 +++++
 .../dashboard/templates/dashboard/base.html        |  79 ++++++++
 .../dashboard/templates/dashboard/detail.html      |  12 ++
 .../templates/dashboard/form-template.html         |   6 +
 .../dashboard/templates/dashboard/index.html       |  36 ++++
 .../templates/dashboard/registration_form.html     |  27 +++
 .../templates/dashboard/request_form.html          | 211 +++++++++++++++++++++
 .../dashboard/templates/dashboard/reviewer.html    |  33 ++++
 .../ResourceAllocationManager/dashboard/tests.py   |   3 +
 .../ResourceAllocationManager/dashboard/urls.py    |  38 ++++
 .../ResourceAllocationManager/dashboard/urls.pyc   | Bin 0 -> 1033 bytes
 .../ResourceAllocationManager/dashboard/views.py   |  95 ++++++++++
 .../ResourceAllocationManager/dashboard/views.pyc  | Bin 0 -> 5676 bytes
 .../django/ResourceAllocationManager/db.sqlite3    | Bin 0 -> 52224 bytes
 .../django/ResourceAllocationManager/manage.py     |  22 +++
 56 files changed, 1382 insertions(+)
 copy {Interacting_with_Airavata_using_ipython_Notebook/create-experiment/apache/airavata/model/messaging => allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager}/__init__.py (100%)
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.pyc
 copy {Interacting_with_Airavata_using_ipython_Notebook/create-experiment/apache/airavata/model/messaging => allocation-manager/django/ResourceAllocationManager/dashboard}/__init__.py (100%)
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/__init__.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/admin.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/admin.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/apps.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/apps.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/forms.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/forms.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.pyc
 copy {Interacting_with_Airavata_using_ipython_Notebook/create-experiment/apache/airavata/model/messaging => allocation-manager/django/ResourceAllocationManager/dashboard/migrations}/__init__.py (100%)
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/models.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/images/background.jpg
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin-request-view.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/form-template.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/registration_form.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/reviewer.html
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/tests.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/views.py
 create mode 100644 allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc
 create mode 100644 allocation-manager/django/ResourceAllocationManager/db.sqlite3
 create mode 100755 allocation-manager/django/ResourceAllocationManager/manage.py

-- 
To stop receiving notification emails like this one, please contact
['"commits@airavata.apache.org" <co...@airavata.apache.org>'].

[airavata-sandbox] 04/08: Updated Create Request Form

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 18664ec8acb5d11b81555adb06bb69f8b4f2a5f1
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Mon Dec 4 15:31:37 2017 -0500

    Updated Create Request Form
---
 .../dashboard/static/dashboard/style.css           |  38 +++++++
 .../dashboard/templates/dashboard/base.html        |   6 ++
 .../templates/dashboard/request_form.html          | 111 +++++++++++++--------
 3 files changed, 111 insertions(+), 44 deletions(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
index 0771cc2..7f5c502 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
@@ -8,4 +8,42 @@
 
 .navbar-brand{
     font-family: 'Spectral+SC', cursive;
+}
+
+/* The slider itself */
+.slider {
+    -webkit-appearance: none;
+    appearance: none;
+    width: 100%; /* Full-width */
+    height: 15px; /* Specified height */
+    background: #d3d3d3  ; /* Grey background */
+    outline: none; /* Remove outline */
+    opacity: 0.7; /* Set transparency (for mouse-over effects on hover) */
+    -webkit-transition: .2s; /* 0.2 seconds transition on hover */
+    transition: opacity .2s;
+    border-radius: 5px;
+}
+
+/* Mouse-over effects */
+.slider:hover {
+    opacity: 1; /* Fully shown on mouse-over */
+}
+
+/* The slider handle (use webkit (Chrome, Opera, Safari, Edge) and moz (Firefox) to override default look) */
+.slider::-webkit-slider-thumb {
+    -webkit-appearance: none; /* Override default look */
+    appearance: none;
+    width: 25px; /* Set a specific slider handle width */
+    height: 25px; /* Slider handle height */
+    background: #337ab7    ; /* Green background */
+    cursor: pointer; /* Cursor on hover */
+    border-radius: 50%;
+}
+
+.slider::-moz-range-thumb {
+    width: 25px; /* Set a specific slider handle width */
+    height: 25px; /* Slider handle height */
+    background: #337ab7    ; /* Green background */
+    cursor: pointer; /* Cursor on hover */
+    border-radius: 50%;
 }
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
index a16c82c..779bc55 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
@@ -8,6 +8,9 @@
     <!-- Latest compiled and minified CSS -->
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
     <link href="https://fonts.googleapis.com/css?family=Spectral+SC" rel="stylesheet">
+    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.7.5/css/bootstrap-select.min.css">
+    <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/4.4.5/css/fileinput.min.css" media="all" rel="stylesheet" type="text/css" />
+
     <link rel="stylesheet" type="text/css" href="{% static 'dashboard/style.css' %}"/>
     <script
       src="https://code.jquery.com/jquery-3.2.1.min.js"
@@ -15,6 +18,9 @@
       crossorigin="anonymous"></script>
     <!-- Latest compiled and minified JavaScript -->
     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.7.5/js/bootstrap-select.min.js"></script>
+    <!-- the main fileinput plugin file -->
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/4.4.5/js/fileinput.min.js"></script>
 </head>
 <body>
     <nav class="navbar navbar-inverse">
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
index dc90d10..5272c9c 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
@@ -11,16 +11,16 @@
 
                       <!-- Tabular Category of questions in the form-->
                       <ul class="nav nav-pills">
-                        <li class="active"><a data-toggle="pill" href="#category1">Category 1</a></li>
-                        <li><a data-toggle="pill" href="#category2">Category 2</a></li>
-                        <li><a data-toggle="pill" href="#category3">Category 3</a></li>
-                        <li><a data-toggle="pill" href="#category4">Category 4</a></li>
+                        <li class="active"><a data-toggle="pill" href="#category1">General Description</a></li>
+                        <li><a data-toggle="pill" href="#category2">Typical Job Description</a></li>
+                        <li><a data-toggle="pill" href="#category3">Resource Description</a></li>
+                        <li><a data-toggle="pill" href="#category4">Additional Details</a></li>
                       </ul>
 
                       <div class="tab-content">
                         <div id="category1" class="tab-pane fade in active">
-                          <h3>Category One Title</h3>
-                          <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
+                          <h3></h3>
+{#                          <p>Please provi</p>#}
                           <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
 {#                            {% include 'dashboard/form-template.html' %}#}
@@ -53,77 +53,105 @@
                             <div class="form-group">
                                 <label class="control-label col-sm-2" for="apps">Applications to be used</label>
                                 <div class="col-sm-10">
-                                  <input type="text" class="form-control" id="apps" placeholder="Enter Applications">
+{#                                  <PLACEHOLDER options #}
+                                    <select class="selectpicker" data-style="btn-primary" data-live-search="true" multiple>
+                                         <optgroup label="Web">
+                                            <option>PHP</option>
+                                            <option>CSS</option>
+                                            <option>HTML</option>
+                                            <option>CSS 3</option>
+                                            <option>Bootstrap</option>
+                                            <option>JavaScript</option>
+                                        </optgroup>
+                                        <optgroup label="Programming">
+                                          <option>Java</option>
+                                          <option>C#</option>
+                                          <option>Python</option>
+                                        </optgroup>
+                                    </select>
+{#                                    <input type="text" class="form-control "placeholder="Other">#}
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="keywords">Keywords</label>
+                                <div class="col-sm-10">
+                                  <input type="text" id="keywords" placeholder="Keywords">
                                 </div>
                             </div>
                             <div class="form-group">
                                 <ul class="pager">
-                                  <li><a href="#">Next</a></li>
+                                  <li class="next"><a href="#category2">Next</a></li>
                                 </ul>
                             </div>
                           </form>
                         </div>
                         <div id="category2" class="tab-pane fade">
-                          <h3>Category Two</h3>
-                          <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
+                          <h3></h3>
+{#                          <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>#}
                           <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
 {#                            {% include 'dashboard/form-template.html' %}#}
                             <div class="form-group">
                                 <label class="control-label col-sm-2" for="disk-usage">Disk usage range per job</label>
                                 <div class="col-sm-10">
-                                  <input type="range" min="0" max="100" class="form-control" id="disk-usage" placeholder="Enter Disk Usage per Job">
+                                  <input type="range" min="0" max="100" class="slider" id="disk-usage" placeholder="Enter Disk Usage per Job">
                                 </div>
                             </div>
-                            <!-- Search for how to upload documents using bootstrap -->
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="documents">Upload</label>
+                                <label class="control-label col-sm-2" for="memory-cpu">Max Memory per CPU</label>
                                 <div class="col-sm-10">
-                                  <input type="text" class="form-control" id="documents" placeholder="Upload Relevant Documents">
+                                  <input type="number" min="0" class="form-control" id="memory-cpu" placeholder="Enter Max Memory per CPU">
                                 </div>
                             </div>
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="science-field">Field of Science</label>
+                                <label class="control-label col-sm-2" for="cpu-per-job">Number of CPUs per job</label>
                                 <div class="col-sm-10">
-                                  <input type="text" class="form-control" id="science-field" placeholder="Enter Field of Science">
+                                  <input type="number" min="0" class="form-control" id="cpu-per-job" placeholder="Enter Number of CPUs per job">
                                 </div>
                             </div>
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="keywords">Keywords</label>
+                                <label class="control-label col-sm-2" for="typical-su">Typical SU per Job</label>
                                 <div class="col-sm-10">
-                                  <input type="text" class="form-control" id="keywords" placeholder="Enter Keywords">
+                                  <input type="number" min="0" class="form-control" id="typical-su" placeholder="Enter Typical SU per Job">
                                 </div>
                             </div>
                             <div class="form-group">
                                 <ul class="pager">
-                                  <li><a href="#">Previous</a></li>
-                                  <li><a href="#">Next</a></li>
+                                  <li class="previous"><a href="#">Previous</a></li>
+                                  <li class="next"><a href="#">Next</a></li>
                                 </ul>
                             </div>
                           </form>
                         </div>
                         <div id="category3" class="tab-pane fade">
-                          <h3>Category Three</h3>
-                          <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam.</p>
+                          <h3></h3>
+{#                          <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam.</p>#}
                           <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
 {#                            {% include 'dashboard/form-template.html' %}#}
+
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="memory-cpu">Max Memory per CPU</label>
+                                <label class="control-label col-sm-2" for="allocation">Total Allocation Requested</label>
                                 <div class="col-sm-10">
-                                  <input type="number" class="form-control" id="memory-cpu" placeholder="Enter Max Memory per CPU">
+                                  <input type="text" class="form-control" id="allocation" placeholder="Enter Requested Allocation">
                                 </div>
                             </div>
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="cpu-per-job">Number of CPUs per job</label>
+                                <label class="control-label col-sm-2" for="specific-resources">Specific Resources</label>
                                 <div class="col-sm-10">
-                                  <input type="number" class="form-control" id="cpu-per-job" placeholder="Enter Number of CPUs per job">
+                                  <input type="text" class="form-control" id="specific-resources" placeholder="Enter Specific Resources">
                                 </div>
                             </div>
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="request-date">Request Date</label>
+                                <label class="control-label col-sm-2" for="apps">Resource Type</label>
                                 <div class="col-sm-10">
-                                  <input type="date" class="form-control" id="request-date" placeholder="Select a Date">
+{#                                  <PLACEHOLDER options #}
+                                    <select class="selectpicker" data-style="btn-primary" data-live-search="true">
+                                      <option>On-Demand</option>
+                                      <option>Large Memory</option>
+                                      <option>GPUs</option>
+                                     </select>
+{#                                    <input type="text" class="form-control "placeholder="Other">#}
                                 </div>
                             </div>
                             <div class="form-group">
@@ -135,33 +163,28 @@
                           </form>
                         </div>
                         <div id="category4" class="tab-pane fade">
-                          <h3>Category Four</h3>
-                          <p>Eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.</p>
+                          <h3></h3>
+{#                          <p>Eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.</p>#}
                           <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
 {#                            {% include 'dashboard/form-template.html' %}#}
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="service-units">Service Units</label>
+                                <label class="control-label col-sm-2" for="comments">Additional Comments</label>
                                 <div class="col-sm-10">
-                                  <input type="number" class="form-control" id="service-units" placeholder="Enter Service Units">
+                                  <input type="text" class="form-control" id="comments" placeholder="Enter Additional Comments">
                                 </div>
                             </div>
                             <div class="form-group">
-                                <label class="control-label col-sm-2" for="resource-selection">Specific Resource Selection</label>
-                                <div class="col-sm-10">
-                                  <input type="text" class="form-control" id="resource-selection" placeholder="Specific Resource Selection">
-                                </div>
-                            </div>
-                            <div class="form-group">
-                                <label class="control-label col-sm-2" for="typical-su">Typical SU per Job</label>
-                                <div class="col-sm-10">
-                                  <input type="number" class="form-control" id="typical-su" placeholder="Enter Typical SU per Job">
-                                </div>
+                                 <label class="control-label col-sm-2" for="upload-file">Relevant Documents</label>
+                                 <div class="col-sm-10">
+                                    <input id="upload-file" type="file" class="file" data-preview-file-type="text">
+                                 </div>
                             </div>
+
                             <div class="form-group">
                                 <ul class="pager">
-                                  <li><a href="#">Previous</a></li>
-                                  <li><a href="#">Next</a></li>
+                                  <li class="previous"><a href="#">Previous</a></li>
+
                                 </ul>
                             </div>
                             <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 03/08: updated Request Model, Added forms for Create Request

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit b8ffad7758dc3077a888b5b414f71921e446a561
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Fri Dec 1 03:23:24 2017 -0500

    updated Request Model, Added forms for Create Request
---
 .../dashboard/migrations/0001_initial.py           |  25 ++--
 .../dashboard/migrations/0001_initial.pyc          | Bin 1517 -> 1370 bytes
 .../migrations/0002_auto_20171201_0656.py          |  94 ++++++++++++
 .../migrations/0002_auto_20171201_0656.pyc         | Bin 0 -> 2128 bytes
 .../migrations/0003_auto_20171128_0601.pyc         | Bin 993 -> 0 bytes
 .../migrations/0003_auto_20171201_0705.py          |  21 +++
 .../migrations/0003_auto_20171201_0705.pyc         | Bin 0 -> 1081 bytes
 .../migrations/0004_auto_20171201_0047.py          |  38 -----
 .../migrations/0004_auto_20171201_0047.pyc         | Bin 1614 -> 0 bytes
 ...20171128_0601.py => 0004_auto_20171201_0707.py} |  10 +-
 .../migrations/0004_auto_20171201_0707.pyc         | Bin 0 -> 1018 bytes
 .../migrations/0005_remove_request_request_date.py |  19 +++
 .../0005_remove_request_request_date.pyc           | Bin 0 -> 928 bytes
 .../migrations/0006_request_request_date.py        |  20 +++
 .../migrations/0006_request_request_date.pyc       | Bin 0 -> 1038 bytes
 .../ResourceAllocationManager/dashboard/models.py  |  19 ++-
 .../ResourceAllocationManager/dashboard/models.pyc | Bin 1626 -> 2052 bytes
 .../dashboard/templates/dashboard/detail.html      |   2 +-
 .../templates/dashboard/request_form.html          | 164 ++++++++++++++++++++-
 .../ResourceAllocationManager/dashboard/views.py   |  11 +-
 .../ResourceAllocationManager/dashboard/views.pyc  | Bin 4141 -> 4554 bytes
 .../django/ResourceAllocationManager/db.sqlite3    | Bin 52224 -> 52224 bytes
 22 files changed, 351 insertions(+), 72 deletions(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
index b5a6800..7028b4e 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
@@ -1,9 +1,8 @@
 # -*- coding: utf-8 -*-
-# Generated by Django 1.10 on 2017-11-20 23:04
+# Generated by Django 1.10 on 2017-12-01 04:20
 from __future__ import unicode_literals
 
 from django.db import migrations, models
-import django.db.models.deletion
 
 
 class Migration(migrations.Migration):
@@ -15,22 +14,16 @@ class Migration(migrations.Migration):
 
     operations = [
         migrations.CreateModel(
-            name='Album',
+            name='Request',
             fields=[
                 ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('artist', models.CharField(max_length=250)),
-                ('album_title', models.CharField(max_length=500)),
-                ('genre', models.CharField(max_length=100)),
-                ('album_logo', models.CharField(max_length=1000)),
-            ],
-        ),
-        migrations.CreateModel(
-            name='Song',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('file_type', models.CharField(max_length=10)),
-                ('song_title', models.CharField(max_length=250)),
-                ('album', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dashboard.Album')),
+                ('request_title', models.CharField(max_length=250)),
+                ('request_description', models.CharField(max_length=500)),
+                ('request_status', models.CharField(max_length=20)),
+                ('request_comments', models.FileField(upload_to=b'')),
+                ('allocation_type', models.CharField(max_length=100)),
+                ('cpu_hours_requested', models.CharField(max_length=10)),
+                ('cpu_hours_allocated', models.CharField(max_length=10)),
             ],
         ),
     ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc
index ab7ebfd..78ac32d 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.py
new file mode 100644
index 0000000..f953860
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.py
@@ -0,0 +1,94 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-01 06:56
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.RenameField(
+            model_name='request',
+            old_name='request_comments',
+            new_name='document',
+        ),
+        migrations.RemoveField(
+            model_name='request',
+            name='cpu_hours_allocated',
+        ),
+        migrations.RemoveField(
+            model_name='request',
+            name='cpu_hours_requested',
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='applications_to_be_used',
+            field=models.CharField(default='', max_length=100),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='disk_usage_range_per_job',
+            field=models.BigIntegerField(default=0),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='field_of_science',
+            field=models.CharField(default='', max_length=50),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='keywords',
+            field=models.CharField(default='', max_length=100),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='max_memory_per_cpu',
+            field=models.BigIntegerField(default=0),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='num_cpus_per_job',
+            field=models.BigIntegerField(default=0),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='request_date',
+            field=models.DateField(default=''),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='request_reviewed_and_funded_by',
+            field=models.CharField(default='', max_length=100),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='service_units',
+            field=models.BigIntegerField(default=0),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='specific_resource_selection',
+            field=models.CharField(default='', max_length=100),
+            preserve_default=False,
+        ),
+        migrations.AddField(
+            model_name='request',
+            name='typical_su_per_job',
+            field=models.BigIntegerField(default=0),
+            preserve_default=False,
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.pyc
new file mode 100644
index 0000000..a08da3e
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0002_auto_20171201_0656.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc
deleted file mode 100644
index 6f2e3d8..0000000
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc and /dev/null differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.py
new file mode 100644
index 0000000..524ab12
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.py
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-01 07:05
+from __future__ import unicode_literals
+
+import datetime
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0002_auto_20171201_0656'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='request',
+            name='request_date',
+            field=models.DateField(default=datetime.date.today, verbose_name='Date'),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.pyc
new file mode 100644
index 0000000..b5b68c4
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171201_0705.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py
deleted file mode 100644
index df2fa83..0000000
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.10 on 2017-12-01 00:47
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ('dashboard', '0003_auto_20171128_0601'),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='Request',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('request_title', models.CharField(max_length=250)),
-                ('request_description', models.CharField(max_length=500)),
-                ('request_status', models.CharField(max_length=20)),
-                ('request_comments', models.FileField(upload_to=b'')),
-                ('allocation_type', models.CharField(max_length=100)),
-                ('cpu_hours_requested', models.CharField(max_length=10)),
-                ('cpu_hours_allocated', models.CharField(max_length=10)),
-            ],
-        ),
-        migrations.RemoveField(
-            model_name='song',
-            name='album',
-        ),
-        migrations.DeleteModel(
-            name='Album',
-        ),
-        migrations.DeleteModel(
-            name='Song',
-        ),
-    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc
deleted file mode 100644
index 27abfa6..0000000
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc and /dev/null differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.py
similarity index 51%
rename from allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py
rename to allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.py
index 9214cda..e82bf3c 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.py
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Generated by Django 1.10 on 2017-11-28 06:01
+# Generated by Django 1.10 on 2017-12-01 07:07
 from __future__ import unicode_literals
 
 from django.db import migrations, models
@@ -8,13 +8,13 @@ from django.db import migrations, models
 class Migration(migrations.Migration):
 
     dependencies = [
-        ('dashboard', '0002_song_is_favourite'),
+        ('dashboard', '0003_auto_20171201_0705'),
     ]
 
     operations = [
         migrations.AlterField(
-            model_name='album',
-            name='album_logo',
-            field=models.FileField(upload_to=b''),
+            model_name='request',
+            name='request_date',
+            field=models.DateTimeField(blank=True, null=True),
         ),
     ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.pyc
new file mode 100644
index 0000000..f3290b3
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0707.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.py
new file mode 100644
index 0000000..5c73fe7
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-01 07:08
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0004_auto_20171201_0707'),
+    ]
+
+    operations = [
+        migrations.RemoveField(
+            model_name='request',
+            name='request_date',
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.pyc
new file mode 100644
index 0000000..05d256c
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0005_remove_request_request_date.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.py
new file mode 100644
index 0000000..155aa36
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-01 07:11
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0005_remove_request_request_date'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='request',
+            name='request_date',
+            field=models.DateTimeField(blank=True, null=True),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.pyc
new file mode 100644
index 0000000..816d747
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0006_request_request_date.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.py b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
index a17a0fb..d8b9ec8 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
@@ -2,19 +2,26 @@ from __future__ import unicode_literals
 
 from django.db import models
 from django.core.urlresolvers import reverse
-
-
+#from datetime import date
 
 # Create your models here.
 class Request(models.Model):
     request_title = models.CharField(max_length=250)
     request_description = models.CharField(max_length=500)
     request_status = models.CharField(max_length=20)
-    request_comments = models.FileField()
     allocation_type = models.CharField(max_length=100)
-    cpu_hours_requested = models.CharField(max_length=10)
-    cpu_hours_allocated = models.CharField(max_length=10)
-
+    applications_to_be_used = models.CharField(max_length=100)
+    disk_usage_range_per_job = models.BigIntegerField()
+    document = models.FileField()
+    field_of_science = models.CharField(max_length=50)
+    keywords = models.CharField(max_length=100)
+    max_memory_per_cpu = models.BigIntegerField()
+    num_cpus_per_job = models.BigIntegerField()
+    request_reviewed_and_funded_by = models.CharField(max_length=100)
+    request_date = models.DateTimeField(blank=True, null=True)
+    service_units = models.BigIntegerField()
+    specific_resource_selection = models.CharField(max_length=100)
+    typical_su_per_job = models.BigIntegerField()
 
     def get_absolute_url(self):
         return reverse('dashboard/detail.html', kwargs={'pk': self.pk})
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc
index 75427c8..3c552d2 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
index 0b4b312..34478ee 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
@@ -2,7 +2,7 @@
 {% block title %} Request Details{% endblock %}
 
 {% block body %}
-    <!--<img src="{{ album.album_logo.url }}">-->
+{#    <!--<img src="{{ album.album_logo.url }}">-->#}
 
     <h1>{{ request.request_title }}</h1>
     <h3>{{ request.request_description }} </h3>
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
index 4db6286..dc90d10 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
@@ -8,16 +8,174 @@
             <div class="col-sm-12 col-md-7">
                 <div class="panel panel-default">
                     <div class="panel-body">
-                        <!-- enctype to handle file uploads-->
-                        <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+
+                      <!-- Tabular Category of questions in the form-->
+                      <ul class="nav nav-pills">
+                        <li class="active"><a data-toggle="pill" href="#category1">Category 1</a></li>
+                        <li><a data-toggle="pill" href="#category2">Category 2</a></li>
+                        <li><a data-toggle="pill" href="#category3">Category 3</a></li>
+                        <li><a data-toggle="pill" href="#category4">Category 4</a></li>
+                      </ul>
+
+                      <div class="tab-content">
+                        <div id="category1" class="tab-pane fade in active">
+                          <h3>Category One Title</h3>
+                          <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
+                          <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+{#                            {% include 'dashboard/form-template.html' %}#}
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="title">Request Title</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="title" placeholder="Enter Request Title">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="description">Request Description</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="description" placeholder="Enter Request Description">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="allocation-type">Allocation Type</label>
+                                <div class="col-sm-10">
+                                  <div class="dropdown">
+                                      <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Select Allocation
+                                      <span class="caret"></span></button>
+                                      <ul class="dropdown-menu">
+                                        <li><a href="#">Community</a></li>
+                                        <li><a href="#">Campus</a></li>
+                                        <li><a href="#">External</a></li>
+                                      </ul>
+                                  </div>
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="apps">Applications to be used</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="apps" placeholder="Enter Applications">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <ul class="pager">
+                                  <li><a href="#">Next</a></li>
+                                </ul>
+                            </div>
+                          </form>
+                        </div>
+                        <div id="category2" class="tab-pane fade">
+                          <h3>Category Two</h3>
+                          <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
+                          <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+{#                            {% include 'dashboard/form-template.html' %}#}
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="disk-usage">Disk usage range per job</label>
+                                <div class="col-sm-10">
+                                  <input type="range" min="0" max="100" class="form-control" id="disk-usage" placeholder="Enter Disk Usage per Job">
+                                </div>
+                            </div>
+                            <!-- Search for how to upload documents using bootstrap -->
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="documents">Upload</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="documents" placeholder="Upload Relevant Documents">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="science-field">Field of Science</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="science-field" placeholder="Enter Field of Science">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="keywords">Keywords</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="keywords" placeholder="Enter Keywords">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <ul class="pager">
+                                  <li><a href="#">Previous</a></li>
+                                  <li><a href="#">Next</a></li>
+                                </ul>
+                            </div>
+                          </form>
+                        </div>
+                        <div id="category3" class="tab-pane fade">
+                          <h3>Category Three</h3>
+                          <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam.</p>
+                          <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+{#                            {% include 'dashboard/form-template.html' %}#}
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="memory-cpu">Max Memory per CPU</label>
+                                <div class="col-sm-10">
+                                  <input type="number" class="form-control" id="memory-cpu" placeholder="Enter Max Memory per CPU">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="cpu-per-job">Number of CPUs per job</label>
+                                <div class="col-sm-10">
+                                  <input type="number" class="form-control" id="cpu-per-job" placeholder="Enter Number of CPUs per job">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="request-date">Request Date</label>
+                                <div class="col-sm-10">
+                                  <input type="date" class="form-control" id="request-date" placeholder="Select a Date">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <ul class="pager">
+                                  <li><a href="#">Previous</a></li>
+                                  <li><a href="#">Next</a></li>
+                                </ul>
+                            </div>
+                          </form>
+                        </div>
+                        <div id="category4" class="tab-pane fade">
+                          <h3>Category Four</h3>
+                          <p>Eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.</p>
+                          <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+{#                            {% include 'dashboard/form-template.html' %}#}
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="service-units">Service Units</label>
+                                <div class="col-sm-10">
+                                  <input type="number" class="form-control" id="service-units" placeholder="Enter Service Units">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="resource-selection">Specific Resource Selection</label>
+                                <div class="col-sm-10">
+                                  <input type="text" class="form-control" id="resource-selection" placeholder="Specific Resource Selection">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="control-label col-sm-2" for="typical-su">Typical SU per Job</label>
+                                <div class="col-sm-10">
+                                  <input type="number" class="form-control" id="typical-su" placeholder="Enter Typical SU per Job">
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <ul class="pager">
+                                  <li><a href="#">Previous</a></li>
+                                  <li><a href="#">Next</a></li>
+                                </ul>
+                            </div>
+                            <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
-                            {% include 'dashboard/form-template.html' %}
+{#                            {% include 'dashboard/form-template.html' %}#}
                             <div class="form-group">
                                 <div class="col-sm-offset-2 col-sm-10">
                                     <button type="submit" class="btn btn-success">Submit</button>
                                 </div>
                             </div>
                         </form>
+                          </form>
+                        </div>
+                      </div>
                     </div>
                 </div>
             </div>
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
index 1d3cdd8..5139e55 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
@@ -23,13 +23,18 @@ class DetailView(generic.DetailView):
 
 class RequestCreate(CreateView):
     model = Request
-    fields = ['request_title', 'request_status', 'cpu_hours_requested', 'cpu_hours_allocated']
+    fields = ['request_title', 'request_status', 'request_description', 'allocation_type',
+              'applications_to_be_used', 'disk_usage_range_per_job', 'document', 'field_of_science',
+              'keywords', 'max_memory_per_cpu', 'num_cpus_per_job', 'request_reviewed_and_funded_by',
+              'request_date', 'service_units', 'specific_resource_selection', 'typical_su_per_job']
 
 
 class RequestUpdate(UpdateView):
     model = Request
-    fields = ['request_title', 'request_status', 'cpu_hours_requested', 'cpu_hours_allocated']
-
+    fields = ['request_title', 'request_status', 'request_description', 'allocation_type',
+              'applications_to_be_used', 'disk_usage_range_per_job', 'document', 'field_of_science',
+              'keywords', 'max_memory_per_cpu', 'num_cpus_per_job', 'request_reviewed_and_funded_by',
+              'request_date', 'service_units', 'specific_resource_selection', 'typical_su_per_job']
 
 class RequestDelete(DeleteView):
     model = Request
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc
index 23eb1ec..ca69975 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 b/allocation-manager/django/ResourceAllocationManager/db.sqlite3
index fdac439..871c8b6 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 and b/allocation-manager/django/ResourceAllocationManager/db.sqlite3 differ

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 08/08: Updated request screen for admin dashboard

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 57897bac4b9dc8176faba706e6279aeee82bdf29
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Tue Dec 12 00:33:39 2017 -0500

    Updated request screen for admin dashboard
---
 .../templates/dashboard/admin-request-view.html    | 155 +++++++++++++++++++++
 .../dashboard/templates/dashboard/index.html       |   2 +-
 .../ResourceAllocationManager/dashboard/urls.py    |   4 +
 .../ResourceAllocationManager/dashboard/views.py   |   5 +
 4 files changed, 165 insertions(+), 1 deletion(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin-request-view.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin-request-view.html
new file mode 100644
index 0000000..a62d3d2
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin-request-view.html
@@ -0,0 +1,155 @@
+{% extends 'dashboard/base.html' %}
+{% block title %} Allocation Manager - Admin{% endblock %}
+{% block body %}
+
+
+        <!-- All Requests-->
+        <div class="container">
+
+          <div class="form-group">
+            <h3>Request Title <small>Title goes here</small></h3>
+            <h4>Select a Reviewer </h4>
+                <select class="selectpicker" data-style="btn-primary" data-live-search="true">
+
+                        <option>Reviewer 1</option>
+                        <option>Reviewer 2</option>
+                        <option>Reviewer 3</option>
+                        <option>Reviewer 4</option>
+                        <option>Reviewer 5</option>
+                        <option>Reviewer 6</option>
+                   </select>
+        </div>
+            <table class="table table-hover table-bordered table-striped table-responsive">
+                <thead class="thead-inverse">
+                  <tr style="background-color: #337ab7;color:white">
+                    <th>Request Fields</th>
+                    <th>User Submitted</th>
+                    <th>Reviewer Submitted</th>
+                    </tr>
+                </thead>
+                <tbody>
+
+                    <tr>
+                        <td>Allocation type</td>
+                        <td>Community</td>
+                        <td>Community</td>
+                    </tr>
+                    <tr>
+                        <td>Applications to be used</td>
+                        <td>
+                            <div class="dropdown">
+                              <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Selected Applications
+                              <span class="caret"></span></button>
+                              <ul class="dropdown-menu">
+                                <li>HTML</li>
+                                <li>CSS</li>
+                                <li>JavaScript</li>
+                              </ul>
+                            </div>
+                        </td>
+                        <td>
+                            <div class="dropdown">
+                              <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Selected Applications
+                              <span class="caret"></span></button>
+                              <ul class="dropdown-menu">
+                                <li>HTML</li>
+                                <li>CSS</li>
+                                <li>JavaScript</li>
+                              </ul>
+                            </div>
+                        </td>
+                    </tr>
+                    <tr>
+                        <td>Disk Usage Range Per Job</td>
+                        <td>50-500</td>
+                        <td>50-250</td>
+                    </tr>
+                    <tr>
+                        <td>Field of Science</td>
+                        <td>Science Gateways</td>
+                        <td>Science Gateways</td>
+                    </tr>
+                    <tr>
+                        <td>Keywords</td>
+                        <td>keyword 1, keyword 2, keyword 3</td>
+                        <td>keyword 1, keyword 2, keyword 3</td>
+                    </tr>
+                    <tr>
+                        <td>Max Memory Per CPU</td>
+                        <td>40GB</td>
+                        <td>20GB</td>
+                    </tr>
+                    <tr>
+                        <td>Num CPUs Per Job</td>
+                        <td>4</td>
+                        <td>4</td>
+                    </tr>
+                    <tr>
+                        <td>Service Units</td>
+                        <td>50000</td>
+                        <td>45000</td>
+                    </tr>
+                    <tr>
+                        <td>Typical Service Units/Job</td>
+                        <td>60</td>
+                        <td>49</td>
+                    </tr>
+                </tbody>
+             </table>
+            <button type="button" class="btn btn-success" data-toggle="modal" data-target="#approve">Approve</button>
+            <!-- Modal -->
+                  <div class="modal fade" id="approve" role="dialog">
+                    <div class="modal-dialog modal-sm">
+                      <div class="modal-content">
+                        <div class="modal-header">
+                          <button type="button" class="close" data-dismiss="modal">&times;</button>
+                          <h4 class="modal-title">Approve Request</h4>
+                        </div>
+                        <div class="modal-body">
+
+                          <div class="form-group">
+                                Start Date :
+                                <input type="date" id="start" style="border: none;" >
+                          </div>
+                          <div class="form-group">
+                                End Date :
+                                <input type="date"id="end" style="border: none;">
+                          </div>
+                          <div>
+                                Allocation Units:
+                                <input type="text"id="allocation-units">
+                          </div>
+                        </div>
+                        <div class="modal-footer">
+                            <button type="button" class="btn btn-success" >Approve</button>
+                          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+            <button type="button" class="btn btn-danger" data-toggle="modal" data-target="#reject">Reject</button>
+            <!-- Modal -->
+                  <div class="modal fade" id="reject" role="dialog">
+                    <div class="modal-dialog modal-sm">
+                      <div class="modal-content">
+                        <div class="modal-header">
+                          <button type="button" class="close" data-dismiss="modal">&times;</button>
+                          <h4 class="modal-title">Reject Request</h4>
+                        </div>
+                        <div class="modal-body">
+
+                          <div class="form-group">
+                                Reason :
+                                <input type="text" id="reject-reason" >
+                          </div>
+                        </div>
+                        <div class="modal-footer">
+                            <button type="button" class="btn btn-danger" >Reject</button>
+                          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+        </div>
+
+ {%  endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
index fac06d2..6e48684 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
@@ -21,7 +21,7 @@
                     <td>{{ request.id }}</td>
                     <td>{{ request.request_title }}</td>
                     <td>{{ request.request_description }}</td>
-                    <td>10</td>
+                    <td>{{ request.service_units }}</td>
                     <td>{{ request.request_status }}</td>
                   </tr>
                 {% endfor %}
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
index 1beadcb..accfe59 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
@@ -15,6 +15,10 @@ urlpatterns = [
     # /dashboard/admin
     url(r'^admin/$', views.AdminView.as_view(), name='admin'),
 
+    # /dashboard/admin/141
+    url(r'^admin/request-view/$', views.AdminRequestView.as_view(), name='admin-request-view'),
+
+
 
     url(r'^register/$', views.UserFormView.as_view(), name='register'),
 
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
index 6e51a30..c778321 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
@@ -30,6 +30,11 @@ class AdminView(generic.ListView):
     def get_queryset(self):
         return Request.objects.all()
 
+class AdminRequestView(generic.ListView):
+    model = Request
+    template_name = 'dashboard/admin-request-view.html'
+
+
 
 
 class DetailView(generic.DetailView):

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 06/08: Created landing page for User Dashboard, updated Request Model

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 83b3c0331b7936831691faea2f25344262d26bc7
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Mon Dec 4 19:58:59 2017 -0500

    Created landing page for User Dashboard, updated Request Model
---
 .../migrations/0007_auto_20171205_0024.py          |  70 +++++++++++++++++++++
 .../migrations/0007_auto_20171205_0024.pyc         | Bin 0 -> 1834 bytes
 .../migrations/0008_auto_20171205_0028.py          |  35 +++++++++++
 .../migrations/0008_auto_20171205_0028.pyc         | Bin 0 -> 1224 bytes
 .../migrations/0009_auto_20171205_0029.py          |  35 +++++++++++
 .../migrations/0009_auto_20171205_0029.pyc         | Bin 0 -> 1258 bytes
 .../ResourceAllocationManager/dashboard/models.py  |  22 +++----
 .../ResourceAllocationManager/dashboard/models.pyc | Bin 2052 -> 2142 bytes
 .../dashboard/templates/dashboard/base.html        |   1 -
 .../dashboard/templates/dashboard/detail.html      |   1 -
 .../dashboard/templates/dashboard/index.html       |  47 ++++++++------
 .../ResourceAllocationManager/dashboard/views.py   |  52 ---------------
 .../ResourceAllocationManager/dashboard/views.pyc  | Bin 4554 -> 4554 bytes
 .../django/ResourceAllocationManager/db.sqlite3    | Bin 52224 -> 52224 bytes
 14 files changed, 180 insertions(+), 83 deletions(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.py
new file mode 100644
index 0000000..66e300e
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.py
@@ -0,0 +1,70 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-05 00:24
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0006_request_request_date'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='request',
+            name='allocation_type',
+            field=models.CharField(blank=True, max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='applications_to_be_used',
+            field=models.CharField(blank=True, max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='disk_usage_range_per_job',
+            field=models.BigIntegerField(blank=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='document',
+            field=models.FileField(blank=True, upload_to=b''),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='field_of_science',
+            field=models.CharField(blank=True, max_length=50),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='keywords',
+            field=models.CharField(blank=True, max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='max_memory_per_cpu',
+            field=models.BigIntegerField(blank=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='num_cpus_per_job',
+            field=models.BigIntegerField(blank=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='request_reviewed_and_funded_by',
+            field=models.CharField(blank=True, max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='specific_resource_selection',
+            field=models.CharField(blank=True, max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='typical_su_per_job',
+            field=models.BigIntegerField(blank=True),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.pyc
new file mode 100644
index 0000000..0b57df8
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0007_auto_20171205_0024.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.py
new file mode 100644
index 0000000..2f2fca1
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.py
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-05 00:28
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0007_auto_20171205_0024'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='request',
+            name='disk_usage_range_per_job',
+            field=models.BigIntegerField(null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='max_memory_per_cpu',
+            field=models.BigIntegerField(null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='num_cpus_per_job',
+            field=models.BigIntegerField(null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='typical_su_per_job',
+            field=models.BigIntegerField(null=True),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.pyc
new file mode 100644
index 0000000..6c59ccd
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0008_auto_20171205_0028.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.py
new file mode 100644
index 0000000..fdc92b2
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.py
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-05 00:29
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0008_auto_20171205_0028'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='request',
+            name='disk_usage_range_per_job',
+            field=models.BigIntegerField(blank=True, null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='max_memory_per_cpu',
+            field=models.BigIntegerField(blank=True, null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='num_cpus_per_job',
+            field=models.BigIntegerField(blank=True, null=True),
+        ),
+        migrations.AlterField(
+            model_name='request',
+            name='typical_su_per_job',
+            field=models.BigIntegerField(blank=True, null=True),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.pyc
new file mode 100644
index 0000000..1551e24
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0009_auto_20171205_0029.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.py b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
index d8b9ec8..7d28ed1 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
@@ -9,19 +9,19 @@ class Request(models.Model):
     request_title = models.CharField(max_length=250)
     request_description = models.CharField(max_length=500)
     request_status = models.CharField(max_length=20)
-    allocation_type = models.CharField(max_length=100)
-    applications_to_be_used = models.CharField(max_length=100)
-    disk_usage_range_per_job = models.BigIntegerField()
-    document = models.FileField()
-    field_of_science = models.CharField(max_length=50)
-    keywords = models.CharField(max_length=100)
-    max_memory_per_cpu = models.BigIntegerField()
-    num_cpus_per_job = models.BigIntegerField()
-    request_reviewed_and_funded_by = models.CharField(max_length=100)
+    allocation_type = models.CharField(blank=True,max_length=100)
+    applications_to_be_used = models.CharField(blank=True,max_length=100)
+    disk_usage_range_per_job = models.BigIntegerField(blank=True,null=True)
+    document = models.FileField(blank=True)
+    field_of_science = models.CharField(blank=True,max_length=50)
+    keywords = models.CharField(blank=True,max_length=100)
+    max_memory_per_cpu = models.BigIntegerField(blank=True,null=True)
+    num_cpus_per_job = models.BigIntegerField(blank=True,null=True)
+    request_reviewed_and_funded_by = models.CharField(blank=True,max_length=100)
     request_date = models.DateTimeField(blank=True, null=True)
     service_units = models.BigIntegerField()
-    specific_resource_selection = models.CharField(max_length=100)
-    typical_su_per_job = models.BigIntegerField()
+    specific_resource_selection = models.CharField(blank=True,max_length=100)
+    typical_su_per_job = models.BigIntegerField(blank=True,null=True)
 
     def get_absolute_url(self):
         return reverse('dashboard/detail.html', kwargs={'pk': self.pk})
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc
index 3c552d2..7987bd4 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
index 779bc55..768f112 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
@@ -10,7 +10,6 @@
     <link href="https://fonts.googleapis.com/css?family=Spectral+SC" rel="stylesheet">
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.7.5/css/bootstrap-select.min.css">
     <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/4.4.5/css/fileinput.min.css" media="all" rel="stylesheet" type="text/css" />
-
     <link rel="stylesheet" type="text/css" href="{% static 'dashboard/style.css' %}"/>
     <script
       src="https://code.jquery.com/jquery-3.2.1.min.js"
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
index 34478ee..9859092 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
@@ -2,7 +2,6 @@
 {% block title %} Request Details{% endblock %}
 
 {% block body %}
-{#    <!--<img src="{{ album.album_logo.url }}">-->#}
 
     <h1>{{ request.request_title }}</h1>
     <h3>{{ request.request_description }} </h3>
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
index 4a3f0bd..88e25c4 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
@@ -1,24 +1,35 @@
 {% extends 'dashboard/base.html' %}
-{% block title %} Allcation Manager - Home{% endblock %}
+{% block title %} Allocation Manager - Home{% endblock %}
 {% block body %}
     {% if all_requests %}
-        <h3>Here are all my requests</h3>
-    <!-- Details-->
-    <ul>
-        {% for request in all_requests %}
-         <li>
-             <a href="{% url 'dashboard:detail' request.id %}">{{ request.request_title }}</a>
-             <!-- Delete -->
-            <form action="{% url 'dashboard:request-delete' request.id %}" method="post" style="display: inline">
-                {% csrf_token %}
-                <input type="hidden" name="request_id" value="{{ request.id }}">
-                <button type="submit" class="btn btn-default btn-sm">
-                    <span class="glyphicon glyphicon-trash"></span>
-                </button>
-            </form>
-         </li>
-        {% endfor %}
-    </ul>
+        <h3 style="margin-left: 7%">My Requests</h3>
+        <!-- All Requests-->
+        <div class="container">
+          <table class="table table-hover table-bordered table-striped table-responsive">
+            <thead class="thead-inverse">
+              <tr style="background-color: #337ab7;color:white">
+                <th>Request-ID</th>
+                <th>Request Title</th>
+                <th>Request Description</th>
+                <th>Allocation Requested</th>
+                <th>Allocation Status</th>
+              </tr>
+            </thead>
+            <tbody>
+                {% for request in all_requests %}
+                  <tr>
+                    <td>{{ request.id }}</td>
+                    <td>{{ request.request_title }}</td>
+                    <td>{{ request.request_description }}</td>
+                    <td>10</td>
+                    <td>Pending</td>
+                  </tr>
+                {% endfor %}
+            </tbody>
+          </table>
+        </div>
+
+
     {%  else %}
         <h3>You don't have any requests</h3>
     {% endif %}
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
index 5139e55..706a7f0 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
@@ -72,55 +72,3 @@ class UserFormView(View):
                     return redirect('dashboard:index')
         return render(request, self.template_name, {'form': form})
 
-
-
-
-
-# # from django.http import Http404
-# # from django.http import HttpResponse
-# # from django.template import loader
-# from django.shortcuts import render, get_object_or_404
-# from .models import Album, Song
-#
-# def index(request):
-#     all_albums = Album.objects.all()
-#     context = {'all_albums': all_albums}
-#     return render(request, 'dashboard/index.html', context)
-#
-#
-#
-#     # html = ''
-#     # all_albums = Album.objects.all()
-#     # for album in all_albums:
-#     #     url = '/dashboard/' + str(album.id) + '/'
-#     #     html += '<a href="' + url + '">' + album.album_title + '</a><br>'
-#     # return HttpResponse(html)
-#
-# def detail(request, album_id):
-#     album = get_object_or_404(Album, pk=album_id)
-#     # try:
-#     #     album = Album.objects.get(pk=album_id)
-#     # except Album.DoesNotExist:
-#     #     raise Http404("Album does not exists")
-#     return render(request, 'dashboard/detail.html', {'album':album} )
-#     # return HttpResponse("<h2>This will contain detaails for " +str(album_id) + "</h2>")
-#
-#
-# def favourite(request, album_id):
-#     album = get_object_or_404(Album, pk=album_id)
-#     try:
-#         selected_song = album.song_set.get(pk=request.POST['song'])
-#     except (KeyError, Song.DoesNotExist):
-#         return render(request, 'dashboard/detail.html', {
-#             'album' : album,
-#             'error_message' : "You did not select a valid song",
-#         })
-#     else:
-#         selected_song.is_favourite = True
-#         selected_song.save()
-#         return render(request, 'dashboard/detail.html', {'album': album})
-
-#
-#
-#
-#
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc
index ca69975..4f74faa 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 b/allocation-manager/django/ResourceAllocationManager/db.sqlite3
index 871c8b6..f3033e4 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 and b/allocation-manager/django/ResourceAllocationManager/db.sqlite3 differ

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 02/08: Added model for Request, basic UI to Create Request

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit b703b8cf13b29ad5e32a30d8e2977175f5395c7a
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Thu Nov 30 20:33:13 2017 -0500

    Added model for Request, basic UI to Create Request
---
 .../ResourceAllocationManager}/__init__.py         |   0
 .../ResourceAllocationManager/__init__.pyc         | Bin 0 -> 174 bytes
 .../ResourceAllocationManager}/settings.py         |  15 ++-
 .../ResourceAllocationManager/settings.pyc         | Bin 0 -> 2838 bytes
 .../ResourceAllocationManager}/urls.py             |  11 +-
 .../ResourceAllocationManager/urls.pyc             | Bin 0 -> 1459 bytes
 .../ResourceAllocationManager}/wsgi.py             |   4 +-
 .../ResourceAllocationManager/wsgi.pyc             | Bin 0 -> 668 bytes
 .../dashboard}/__init__.py                         |   0
 .../dashboard/__init__.pyc                         | Bin 0 -> 154 bytes
 .../ResourceAllocationManager/dashboard/admin.py   |   5 +
 .../ResourceAllocationManager/dashboard/admin.pyc  | Bin 0 -> 370 bytes
 .../ResourceAllocationManager/dashboard/apps.py    |   7 ++
 .../ResourceAllocationManager/dashboard/apps.pyc   | Bin 0 -> 646 bytes
 .../ResourceAllocationManager/dashboard/forms.py   |  10 ++
 .../ResourceAllocationManager/dashboard/forms.pyc  | Bin 0 -> 847 bytes
 .../dashboard/migrations/0001_initial.py           |  36 ++++++
 .../dashboard/migrations/0001_initial.pyc          | Bin 0 -> 1517 bytes
 .../migrations/0003_auto_20171128_0601.py          |  20 ++++
 .../migrations/0003_auto_20171128_0601.pyc         | Bin 0 -> 993 bytes
 .../migrations/0004_auto_20171201_0047.py          |  38 +++++++
 .../migrations/0004_auto_20171201_0047.pyc         | Bin 0 -> 1614 bytes
 .../dashboard/migrations}/__init__.py              |   0
 .../dashboard/migrations/__init__.pyc              | Bin 0 -> 165 bytes
 .../ResourceAllocationManager/dashboard/models.py  |  26 +++++
 .../ResourceAllocationManager/dashboard/models.pyc | Bin 0 -> 1626 bytes
 .../static/dashboard/images/background.jpg         | Bin 0 -> 1203222 bytes
 .../dashboard/static/dashboard/style.css           |  11 ++
 .../dashboard/templates/dashboard/base.html        |  74 +++++++++++++
 .../dashboard/templates/dashboard/detail.html      |  13 +++
 .../templates/dashboard/form-template.html         |   6 +
 .../dashboard/templates/dashboard/index.html       |  25 +++++
 .../templates/dashboard/registration_form.html     |  27 +++++
 .../templates/dashboard/request_form.html          |  26 +++++
 .../ResourceAllocationManager/dashboard/tests.py   |   3 +
 .../ResourceAllocationManager/dashboard/urls.py    |  27 +++++
 .../ResourceAllocationManager/dashboard/urls.pyc   | Bin 0 -> 892 bytes
 .../ResourceAllocationManager/dashboard/views.py   | 121 +++++++++++++++++++++
 .../ResourceAllocationManager/dashboard/views.pyc  | Bin 0 -> 4141 bytes
 .../django/ResourceAllocationManager/db.sqlite3    | Bin 0 -> 52224 bytes
 .../ResourceAllocationManager}/manage.py           |   2 +-
 .../user-interface/website/db.sqlite3              | Bin 3072 -> 0 bytes
 .../user-interface/website/website/__init__.pyc    | Bin 160 -> 0 bytes
 .../user-interface/website/website/settings.pyc    | Bin 2589 -> 0 bytes
 .../user-interface/website/website/urls.pyc        | Bin 1004 -> 0 bytes
 .../user-interface/website/website/wsgi.pyc        | Bin 618 -> 0 bytes
 46 files changed, 498 insertions(+), 9 deletions(-)

diff --git a/allocation-manager/user-interface/website/website/__init__.py b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.py
similarity index 100%
copy from allocation-manager/user-interface/website/website/__init__.py
copy to allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.py
diff --git a/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.pyc b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.pyc
new file mode 100644
index 0000000..a178c62
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/__init__.pyc differ
diff --git a/allocation-manager/user-interface/website/website/settings.py b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.py
similarity index 89%
rename from allocation-manager/user-interface/website/website/settings.py
rename to allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.py
index 5d4b66b..3f4a3f4 100644
--- a/allocation-manager/user-interface/website/website/settings.py
+++ b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.py
@@ -1,5 +1,5 @@
 """
-Django settings for website project.
+Django settings for ResourceAllocationManager project.
 
 Generated by 'django-admin startproject' using Django 1.10.
 
@@ -20,7 +20,7 @@ BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 # See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/
 
 # SECURITY WARNING: keep the secret key used in production secret!
-SECRET_KEY = 'f=!$c_6mi%*dtt+8ld+l%k_k3%(fb1m#)rh@-czbanibuk)2h9'
+SECRET_KEY = 'l659=^n0i$6zlrr7l!xf69ubigl8av0uxb4ey8j_qwe+0+dwz3'
 
 # SECURITY WARNING: don't run with debug turned on in production!
 DEBUG = True
@@ -31,6 +31,7 @@ ALLOWED_HOSTS = []
 # Application definition
 
 INSTALLED_APPS = [
+    'dashboard.apps.DashboardConfig',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.contenttypes',
@@ -49,7 +50,7 @@ MIDDLEWARE = [
     'django.middleware.clickjacking.XFrameOptionsMiddleware',
 ]
 
-ROOT_URLCONF = 'website.urls'
+ROOT_URLCONF = 'ResourceAllocationManager.urls'
 
 TEMPLATES = [
     {
@@ -67,7 +68,7 @@ TEMPLATES = [
     },
 ]
 
-WSGI_APPLICATION = 'website.wsgi.application'
+WSGI_APPLICATION = 'ResourceAllocationManager.wsgi.application'
 
 
 # Database
@@ -118,3 +119,9 @@ USE_TZ = True
 # https://docs.djangoproject.com/en/1.10/howto/static-files/
 
 STATIC_URL = '/static/'
+
+MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
+MEDIA_URL = '/media/'
+
+
+
diff --git a/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.pyc b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.pyc
new file mode 100644
index 0000000..cd3260c
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/settings.pyc differ
diff --git a/allocation-manager/user-interface/website/website/urls.py b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.py
similarity index 63%
rename from allocation-manager/user-interface/website/website/urls.py
rename to allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.py
index 74b379f..6b884c5 100644
--- a/allocation-manager/user-interface/website/website/urls.py
+++ b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.py
@@ -1,4 +1,4 @@
-"""website URL Configuration
+"""ResourceAllocationManager URL Configuration
 
 The `urlpatterns` list routes URLs to views. For more information please see:
     https://docs.djangoproject.com/en/1.10/topics/http/urls/
@@ -13,9 +13,16 @@ Including another URLconf
     1. Import the include() function: from django.conf.urls import url, include
     2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
 """
-from django.conf.urls import url
+from django.conf.urls import include,url
 from django.contrib import admin
+from django.conf import settings
+from django.conf.urls.static import static
 
 urlpatterns = [
     url(r'^admin/', admin.site.urls),
+    url(r'^dashboard/', include('dashboard.urls')),
 ]
+
+if settings.DEBUG:
+    urlpatterns += static(settings.STATIC_URL, document_root= settings.STATIC_ROOT)
+    urlpatterns += static(settings.MEDIA_URL, document_root= settings.MEDIA_ROOT)
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.pyc b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.pyc
new file mode 100644
index 0000000..46b0c48
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/urls.pyc differ
diff --git a/allocation-manager/user-interface/website/website/wsgi.py b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.py
similarity index 67%
rename from allocation-manager/user-interface/website/website/wsgi.py
rename to allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.py
index 6118e81..4ba702b 100644
--- a/allocation-manager/user-interface/website/website/wsgi.py
+++ b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.py
@@ -1,5 +1,5 @@
 """
-WSGI config for website project.
+WSGI config for ResourceAllocationManager project.
 
 It exposes the WSGI callable as a module-level variable named ``application``.
 
@@ -11,6 +11,6 @@ import os
 
 from django.core.wsgi import get_wsgi_application
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ResourceAllocationManager.settings")
 
 application = get_wsgi_application()
diff --git a/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.pyc b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.pyc
new file mode 100644
index 0000000..99452e8
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/ResourceAllocationManager/wsgi.pyc differ
diff --git a/allocation-manager/user-interface/website/website/__init__.py b/allocation-manager/django/ResourceAllocationManager/dashboard/__init__.py
similarity index 100%
copy from allocation-manager/user-interface/website/website/__init__.py
copy to allocation-manager/django/ResourceAllocationManager/dashboard/__init__.py
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/__init__.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/__init__.pyc
new file mode 100644
index 0000000..000787e
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/__init__.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/admin.py b/allocation-manager/django/ResourceAllocationManager/dashboard/admin.py
new file mode 100644
index 0000000..e1995e6
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/admin.py
@@ -0,0 +1,5 @@
+from django.contrib import admin
+from .models import Request
+
+
+admin.site.register(Request)
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/admin.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/admin.pyc
new file mode 100644
index 0000000..ca8985a
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/admin.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/apps.py b/allocation-manager/django/ResourceAllocationManager/dashboard/apps.py
new file mode 100644
index 0000000..468fa77
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/apps.py
@@ -0,0 +1,7 @@
+from __future__ import unicode_literals
+
+from django.apps import AppConfig
+
+
+class DashboardConfig(AppConfig):
+    name = 'dashboard'
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/apps.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/apps.pyc
new file mode 100644
index 0000000..d1a31a4
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/apps.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/forms.py b/allocation-manager/django/ResourceAllocationManager/dashboard/forms.py
new file mode 100644
index 0000000..f345ec8
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/forms.py
@@ -0,0 +1,10 @@
+from django.contrib.auth.models import User
+from django import forms
+
+
+class UserForm(forms.ModelForm):
+    password = forms.CharField(widget=forms.PasswordInput)
+
+    class Meta:
+        model = User
+        fields = ['username', 'email', 'password']
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/forms.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/forms.pyc
new file mode 100644
index 0000000..32e638f
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/forms.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
new file mode 100644
index 0000000..b5a6800
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.py
@@ -0,0 +1,36 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-11-20 23:04
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Album',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('artist', models.CharField(max_length=250)),
+                ('album_title', models.CharField(max_length=500)),
+                ('genre', models.CharField(max_length=100)),
+                ('album_logo', models.CharField(max_length=1000)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Song',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('file_type', models.CharField(max_length=10)),
+                ('song_title', models.CharField(max_length=250)),
+                ('album', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dashboard.Album')),
+            ],
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc
new file mode 100644
index 0000000..ab7ebfd
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0001_initial.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py
new file mode 100644
index 0000000..9214cda
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-11-28 06:01
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0002_song_is_favourite'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='album',
+            name='album_logo',
+            field=models.FileField(upload_to=b''),
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc
new file mode 100644
index 0000000..6f2e3d8
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0003_auto_20171128_0601.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py
new file mode 100644
index 0000000..df2fa83
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.py
@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2017-12-01 00:47
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('dashboard', '0003_auto_20171128_0601'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Request',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('request_title', models.CharField(max_length=250)),
+                ('request_description', models.CharField(max_length=500)),
+                ('request_status', models.CharField(max_length=20)),
+                ('request_comments', models.FileField(upload_to=b'')),
+                ('allocation_type', models.CharField(max_length=100)),
+                ('cpu_hours_requested', models.CharField(max_length=10)),
+                ('cpu_hours_allocated', models.CharField(max_length=10)),
+            ],
+        ),
+        migrations.RemoveField(
+            model_name='song',
+            name='album',
+        ),
+        migrations.DeleteModel(
+            name='Album',
+        ),
+        migrations.DeleteModel(
+            name='Song',
+        ),
+    ]
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc
new file mode 100644
index 0000000..27abfa6
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/0004_auto_20171201_0047.pyc differ
diff --git a/allocation-manager/user-interface/website/website/__init__.py b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.py
similarity index 100%
rename from allocation-manager/user-interface/website/website/__init__.py
rename to allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.py
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.pyc
new file mode 100644
index 0000000..a069f05
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/migrations/__init__.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.py b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
new file mode 100644
index 0000000..a17a0fb
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/models.py
@@ -0,0 +1,26 @@
+from __future__ import unicode_literals
+
+from django.db import models
+from django.core.urlresolvers import reverse
+
+
+
+# Create your models here.
+class Request(models.Model):
+    request_title = models.CharField(max_length=250)
+    request_description = models.CharField(max_length=500)
+    request_status = models.CharField(max_length=20)
+    request_comments = models.FileField()
+    allocation_type = models.CharField(max_length=100)
+    cpu_hours_requested = models.CharField(max_length=10)
+    cpu_hours_allocated = models.CharField(max_length=10)
+
+
+    def get_absolute_url(self):
+        return reverse('dashboard/detail.html', kwargs={'pk': self.pk})
+
+
+    def __str__(self):
+        return self.request_title + ' - ' + self.request_status
+
+
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc
new file mode 100644
index 0000000..75427c8
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/models.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/images/background.jpg b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/images/background.jpg
new file mode 100644
index 0000000..ced3d83
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/images/background.jpg differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
new file mode 100644
index 0000000..0771cc2
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/static/dashboard/style.css
@@ -0,0 +1,11 @@
+/*body {*/
+    /*background:white url("images/background.jpg");*/
+/*}*/
+
+.navbar{
+    border-radius: 0;
+}
+
+.navbar-brand{
+    font-family: 'Spectral+SC', cursive;
+}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
new file mode 100644
index 0000000..a16c82c
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/base.html
@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <title>{% block title%} Allocation Manager - {% endblock %}</title>
+    <!-- Loads the path to your static files -->
+    {% load staticfiles %}
+    <!-- Latest compiled and minified CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
+    <link href="https://fonts.googleapis.com/css?family=Spectral+SC" rel="stylesheet">
+    <link rel="stylesheet" type="text/css" href="{% static 'dashboard/style.css' %}"/>
+    <script
+      src="https://code.jquery.com/jquery-3.2.1.min.js"
+      integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
+      crossorigin="anonymous"></script>
+    <!-- Latest compiled and minified JavaScript -->
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+</head>
+<body>
+    <nav class="navbar navbar-inverse">
+    <div class="container-fluid">
+        <!--Header -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#topNavBar">
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+            <a class="navbar-brand" href="{%  url 'dashboard:index' %}">Allocation Manager</a>
+        </div>
+
+        <!-- Requests -->
+        <div class="collapse navbar-collapse" id="topNavBar">
+
+            <ul class="nav navbar-nav">
+                <li class="active">
+                    <a href="{% url 'dashboard:index' %}">
+                        <span class="glyphicon glyphicon-briefcase" aria-hidden="true"></span>&nbsp
+                        Requests
+                    </a>
+                </li>
+            </ul>
+
+
+            <form class="navbar-form navbar-left" role="search" method="get" action="#">
+                <div class="form-group">
+                    <input type="text" class="form-control" name="q" value="">
+                </div>
+                <button type="submit" class="btn btn-default">Search</button>
+            </form>
+
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="">
+                    <a href="{% url 'dashboard:request-add' %}">
+                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>&nbsp
+                        Create Request
+                    </a>
+                </li>
+                <li class="">
+                    <a href="#">
+                        <span class="glyphicon glyphicon-off" aria-hidden="true"></span>&nbsp
+                        Logout
+                    </a>
+                </li>
+            </ul>
+        </div>
+    </div>
+</nav>
+
+{% block body %}
+{% endblock %}
+</body>
+</html>
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
new file mode 100644
index 0000000..0b4b312
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/detail.html
@@ -0,0 +1,13 @@
+{% extends 'dashboard/base.html' %}
+{% block title %} Request Details{% endblock %}
+
+{% block body %}
+    <!--<img src="{{ album.album_logo.url }}">-->
+
+    <h1>{{ request.request_title }}</h1>
+    <h3>{{ request.request_description }} </h3>
+
+    {% if error_message %}
+        <p><strong>{{ error_message }}</strong></p>
+    {% endif %}
+{%  endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/form-template.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/form-template.html
new file mode 100644
index 0000000..d3fc113
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/form-template.html
@@ -0,0 +1,6 @@
+{% for field in form %}
+    <div class="form-group">
+        <label class="control-label col-sm-2">{{ field.label_tag }}</label>
+        <div class="col-sm-10">{{ field }}</div>
+    </div>
+{% endfor %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
new file mode 100644
index 0000000..4a3f0bd
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
@@ -0,0 +1,25 @@
+{% extends 'dashboard/base.html' %}
+{% block title %} Allcation Manager - Home{% endblock %}
+{% block body %}
+    {% if all_requests %}
+        <h3>Here are all my requests</h3>
+    <!-- Details-->
+    <ul>
+        {% for request in all_requests %}
+         <li>
+             <a href="{% url 'dashboard:detail' request.id %}">{{ request.request_title }}</a>
+             <!-- Delete -->
+            <form action="{% url 'dashboard:request-delete' request.id %}" method="post" style="display: inline">
+                {% csrf_token %}
+                <input type="hidden" name="request_id" value="{{ request.id }}">
+                <button type="submit" class="btn btn-default btn-sm">
+                    <span class="glyphicon glyphicon-trash"></span>
+                </button>
+            </form>
+         </li>
+        {% endfor %}
+    </ul>
+    {%  else %}
+        <h3>You don't have any requests</h3>
+    {% endif %}
+{%  endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/registration_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/registration_form.html
new file mode 100644
index 0000000..440a97b
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/registration_form.html
@@ -0,0 +1,27 @@
+{% extends 'dashboard/base.html' %}
+{% block title %}Register{% endblock %}
+{% block albums_active %}active{% endblock %}
+
+{%  block body %}
+    <div class="container-fluid">
+        <div class="row">
+            <div class="col-sm-12 col-md-7">
+                <div class="panel panel-default">
+                    <div class="panel-body">
+                        <h3>Create a New Account</h3>
+                        <!-- enctype to handle file uploads-->
+                        <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+                            {% include 'dashboard/form-template.html' %}
+                            <div class="form-group">
+                                <div class="col-sm-offset-2 col-sm-10">
+                                    <button type="submit" class="btn btn-success">Submit</button>
+                                </div>
+                            </div>
+                        </form>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+{% endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
new file mode 100644
index 0000000..4db6286
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
@@ -0,0 +1,26 @@
+{% extends 'dashboard/base.html' %}
+{% block title %}Create a New Request{% endblock %}
+{% block request_active %}active{% endblock %}
+
+{%  block body %}
+    <div class="container-fluid">
+        <div class="row">
+            <div class="col-sm-12 col-md-7">
+                <div class="panel panel-default">
+                    <div class="panel-body">
+                        <!-- enctype to handle file uploads-->
+                        <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
+                            {% csrf_token %}
+                            {% include 'dashboard/form-template.html' %}
+                            <div class="form-group">
+                                <div class="col-sm-offset-2 col-sm-10">
+                                    <button type="submit" class="btn btn-success">Submit</button>
+                                </div>
+                            </div>
+                        </form>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+{% endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/tests.py b/allocation-manager/django/ResourceAllocationManager/dashboard/tests.py
new file mode 100644
index 0000000..7ce503c
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
new file mode 100644
index 0000000..8f26ba3
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
@@ -0,0 +1,27 @@
+from django.conf.urls import url
+from . import views
+
+app_name ='dashboard'
+
+urlpatterns = [
+    # /dashboard/
+    # url(r'^$', views.index, name='index'),
+    url(r'^$', views.IndexView.as_view(), name='index'),
+
+
+    url(r'^register/$', views.UserFormView.as_view(), name='register'),
+
+    # /dashboard/712/
+    # url(r'^(?P<request_id>[0-9]+)/$', views.detail, name='detail'),
+    url(r'^(?P<pk>[0-9]+)/$', views.DetailView.as_view(), name='detail'),
+
+
+    # /dashboard/request/add
+    url(r'^request/add/$', views.RequestCreate.as_view(), name='request-add'),
+
+    # /dashboard/request/2/
+    url(r'^request/(?P<pk>[0-9]+)/$', views.RequestUpdate.as_view(), name='request-update'),
+
+    # /dashboard/request/2/delete/
+    url(r'^request/(?P<pk>[0-9]+)/delete/$', views.RequestDelete.as_view(), name='request-delete'),
+]
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc
new file mode 100644
index 0000000..ad9dfb3
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
new file mode 100644
index 0000000..1d3cdd8
--- /dev/null
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
@@ -0,0 +1,121 @@
+from django.views import generic
+from django.views.generic import View
+from django.views.generic.edit import CreateView, UpdateView, DeleteView
+from django.shortcuts import render, redirect
+from django.contrib.auth import authenticate, login
+from django.core.urlresolvers import reverse_lazy
+from .models import Request
+from .forms import UserForm
+
+
+class IndexView(generic.ListView):
+    template_name = 'dashboard/index.html'
+    context_object_name = 'all_requests'
+
+    def get_queryset(self):
+        return Request.objects.all()
+
+
+class DetailView(generic.DetailView):
+    model = Request
+    template_name = 'dashboard/detail.html'
+
+
+class RequestCreate(CreateView):
+    model = Request
+    fields = ['request_title', 'request_status', 'cpu_hours_requested', 'cpu_hours_allocated']
+
+
+class RequestUpdate(UpdateView):
+    model = Request
+    fields = ['request_title', 'request_status', 'cpu_hours_requested', 'cpu_hours_allocated']
+
+
+class RequestDelete(DeleteView):
+    model = Request
+    success_url = reverse_lazy('dashboard:index')
+
+
+class UserFormView(View):
+    form_class = UserForm
+    template_name = 'dashboard/registration_form.html'
+
+
+    # Display a blank form
+    def get(self, request):
+        form = self.form_class(None)
+        return render(request, self.template_name, {'form': form})
+
+    # process form data
+    def post(self, request):
+        form = self.form_class(request.POST)
+
+        if form.is_valid():
+            user = form.save(commit=False)
+
+            # cleaned (normalized) data
+            username = form.cleaned_data['username']
+            password = form.cleaned_data['password']
+            user.set_password(password)
+            user.save()
+
+            # returns user objects if credentials are correct
+            user = authenticate(username=username, password=password)
+            if user is not None:
+                if user.is_active:
+                    login(request, user)
+                    return redirect('dashboard:index')
+        return render(request, self.template_name, {'form': form})
+
+
+
+
+
+# # from django.http import Http404
+# # from django.http import HttpResponse
+# # from django.template import loader
+# from django.shortcuts import render, get_object_or_404
+# from .models import Album, Song
+#
+# def index(request):
+#     all_albums = Album.objects.all()
+#     context = {'all_albums': all_albums}
+#     return render(request, 'dashboard/index.html', context)
+#
+#
+#
+#     # html = ''
+#     # all_albums = Album.objects.all()
+#     # for album in all_albums:
+#     #     url = '/dashboard/' + str(album.id) + '/'
+#     #     html += '<a href="' + url + '">' + album.album_title + '</a><br>'
+#     # return HttpResponse(html)
+#
+# def detail(request, album_id):
+#     album = get_object_or_404(Album, pk=album_id)
+#     # try:
+#     #     album = Album.objects.get(pk=album_id)
+#     # except Album.DoesNotExist:
+#     #     raise Http404("Album does not exists")
+#     return render(request, 'dashboard/detail.html', {'album':album} )
+#     # return HttpResponse("<h2>This will contain detaails for " +str(album_id) + "</h2>")
+#
+#
+# def favourite(request, album_id):
+#     album = get_object_or_404(Album, pk=album_id)
+#     try:
+#         selected_song = album.song_set.get(pk=request.POST['song'])
+#     except (KeyError, Song.DoesNotExist):
+#         return render(request, 'dashboard/detail.html', {
+#             'album' : album,
+#             'error_message' : "You did not select a valid song",
+#         })
+#     else:
+#         selected_song.is_favourite = True
+#         selected_song.save()
+#         return render(request, 'dashboard/detail.html', {'album': album})
+
+#
+#
+#
+#
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc
new file mode 100644
index 0000000..23eb1ec
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 b/allocation-manager/django/ResourceAllocationManager/db.sqlite3
new file mode 100644
index 0000000..fdac439
Binary files /dev/null and b/allocation-manager/django/ResourceAllocationManager/db.sqlite3 differ
diff --git a/allocation-manager/user-interface/website/manage.py b/allocation-manager/django/ResourceAllocationManager/manage.py
similarity index 89%
rename from allocation-manager/user-interface/website/manage.py
rename to allocation-manager/django/ResourceAllocationManager/manage.py
index 860d549..b9caaa8 100755
--- a/allocation-manager/user-interface/website/manage.py
+++ b/allocation-manager/django/ResourceAllocationManager/manage.py
@@ -3,7 +3,7 @@ import os
 import sys
 
 if __name__ == "__main__":
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ResourceAllocationManager.settings")
     try:
         from django.core.management import execute_from_command_line
     except ImportError:
diff --git a/allocation-manager/user-interface/website/db.sqlite3 b/allocation-manager/user-interface/website/db.sqlite3
deleted file mode 100644
index fb67489..0000000
Binary files a/allocation-manager/user-interface/website/db.sqlite3 and /dev/null differ
diff --git a/allocation-manager/user-interface/website/website/__init__.pyc b/allocation-manager/user-interface/website/website/__init__.pyc
deleted file mode 100644
index 664fb91..0000000
Binary files a/allocation-manager/user-interface/website/website/__init__.pyc and /dev/null differ
diff --git a/allocation-manager/user-interface/website/website/settings.pyc b/allocation-manager/user-interface/website/website/settings.pyc
deleted file mode 100644
index 67b9b68..0000000
Binary files a/allocation-manager/user-interface/website/website/settings.pyc and /dev/null differ
diff --git a/allocation-manager/user-interface/website/website/urls.pyc b/allocation-manager/user-interface/website/website/urls.pyc
deleted file mode 100644
index 8f8b0bb..0000000
Binary files a/allocation-manager/user-interface/website/website/urls.pyc and /dev/null differ
diff --git a/allocation-manager/user-interface/website/website/wsgi.pyc b/allocation-manager/user-interface/website/website/wsgi.pyc
deleted file mode 100644
index 78a5664..0000000
Binary files a/allocation-manager/user-interface/website/website/wsgi.pyc and /dev/null differ

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 07/08: Added screens for reviewer and admin dashboards

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 5639172c9b7856d308f43c88a059fea3b2e34a0b
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Sun Dec 10 22:07:38 2017 -0500

    Added screens for reviewer and admin dashboards
---
 .../templates/dashboard/{index.html => admin.html} |  25 +++++++++++++++------
 .../dashboard/templates/dashboard/index.html       |   2 +-
 .../templates/dashboard/request_form.html          |   2 ++
 .../dashboard/{index.html => reviewer.html}        |  11 ++++-----
 .../ResourceAllocationManager/dashboard/urls.py    |   7 ++++++
 .../ResourceAllocationManager/dashboard/urls.pyc   | Bin 892 -> 1033 bytes
 .../ResourceAllocationManager/dashboard/views.py   |  16 +++++++++++++
 .../ResourceAllocationManager/dashboard/views.pyc  | Bin 4554 -> 5676 bytes
 .../django/ResourceAllocationManager/db.sqlite3    | Bin 52224 -> 52224 bytes
 9 files changed, 48 insertions(+), 15 deletions(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin.html
similarity index 50%
copy from allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
copy to allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin.html
index 88e25c4..1dda602 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/admin.html
@@ -1,8 +1,8 @@
 {% extends 'dashboard/base.html' %}
-{% block title %} Allocation Manager - Home{% endblock %}
+{% block title %} Allocation Manager - Admin{% endblock %}
 {% block body %}
     {% if all_requests %}
-        <h3 style="margin-left: 7%">My Requests</h3>
+        <h3 style="margin-left: 7%">Requests to Approve/Reject</h3>
         <!-- All Requests-->
         <div class="container">
           <table class="table table-hover table-bordered table-striped table-responsive">
@@ -12,7 +12,7 @@
                 <th>Request Title</th>
                 <th>Request Description</th>
                 <th>Allocation Requested</th>
-                <th>Allocation Status</th>
+                <th style="text-align: center">Assign Reviewer(s)</th>
               </tr>
             </thead>
             <tbody>
@@ -21,16 +21,27 @@
                     <td>{{ request.id }}</td>
                     <td>{{ request.request_title }}</td>
                     <td>{{ request.request_description }}</td>
-                    <td>10</td>
-                    <td>Pending</td>
+                    <td>{{ request.service_units}}</td>
+                    <td>
+                        <div class="form-group">
+                            <div class="col-sm-10">
+                                <select class="selectpicker" data-style="btn-primary" data-live-search="true" multiple>
+                                    <option>Reviewer 1</option>
+                                    <option>Reviewer 2</option>
+                                    <option>Reviewer 3</option>
+                                    <option>Reviewer 4</option>
+                                </select>
+                                <button type="submit" class="btn btn-success">Assign</button>
+                            </div>
+                        </div>
+                    </td>
                   </tr>
                 {% endfor %}
             </tbody>
           </table>
         </div>
 
-
     {%  else %}
-        <h3>You don't have any requests</h3>
+        <h3>No Requests to Review</h3>
     {% endif %}
 {%  endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
index 88e25c4..fac06d2 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
@@ -22,7 +22,7 @@
                     <td>{{ request.request_title }}</td>
                     <td>{{ request.request_description }}</td>
                     <td>10</td>
-                    <td>Pending</td>
+                    <td>{{ request.request_status }}</td>
                   </tr>
                 {% endfor %}
             </tbody>
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
index 5e973c3..65a7e06 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
@@ -3,7 +3,9 @@
 {% block request_active %}active{% endblock %}
 
 {%  block body %}
+
     <div class="container-fluid">
+        <h2>New Request</h2>
         <div class="row">
             <div class="col-sm-12 col-md-7">
                 <div class="panel panel-default">
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/reviewer.html
similarity index 78%
copy from allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
copy to allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/reviewer.html
index 88e25c4..80f6d73 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/index.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/reviewer.html
@@ -1,8 +1,8 @@
 {% extends 'dashboard/base.html' %}
-{% block title %} Allocation Manager - Home{% endblock %}
+{% block title %} Allocation Manager - Reviewer{% endblock %}
 {% block body %}
     {% if all_requests %}
-        <h3 style="margin-left: 7%">My Requests</h3>
+        <h3 style="margin-left: 7%">Requests to Review</h3>
         <!-- All Requests-->
         <div class="container">
           <table class="table table-hover table-bordered table-striped table-responsive">
@@ -12,7 +12,6 @@
                 <th>Request Title</th>
                 <th>Request Description</th>
                 <th>Allocation Requested</th>
-                <th>Allocation Status</th>
               </tr>
             </thead>
             <tbody>
@@ -21,16 +20,14 @@
                     <td>{{ request.id }}</td>
                     <td>{{ request.request_title }}</td>
                     <td>{{ request.request_description }}</td>
-                    <td>10</td>
-                    <td>Pending</td>
+                    <td>{{ request.service_units}}</td>
                   </tr>
                 {% endfor %}
             </tbody>
           </table>
         </div>
 
-
     {%  else %}
-        <h3>You don't have any requests</h3>
+        <h3>No Requests to Review</h3>
     {% endif %}
 {%  endblock %}
\ No newline at end of file
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
index 8f26ba3..1beadcb 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.py
@@ -8,6 +8,13 @@ urlpatterns = [
     # url(r'^$', views.index, name='index'),
     url(r'^$', views.IndexView.as_view(), name='index'),
 
+    # /dashboard/reviewer
+    url(r'^reviewer/$', views.ReviewerView.as_view(), name='reviewer'),
+
+
+    # /dashboard/admin
+    url(r'^admin/$', views.AdminView.as_view(), name='admin'),
+
 
     url(r'^register/$', views.UserFormView.as_view(), name='register'),
 
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc
index ad9dfb3..abfcbe7 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/urls.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
index 706a7f0..6e51a30 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/views.py
@@ -15,6 +15,22 @@ class IndexView(generic.ListView):
     def get_queryset(self):
         return Request.objects.all()
 
+class ReviewerView(generic.ListView):
+    template_name = 'dashboard/reviewer.html'
+    context_object_name = 'all_requests'
+
+    def get_queryset(self):
+        return Request.objects.all()
+
+
+class AdminView(generic.ListView):
+    template_name = 'dashboard/admin.html'
+    context_object_name = 'all_requests'
+
+    def get_queryset(self):
+        return Request.objects.all()
+
+
 
 class DetailView(generic.DetailView):
     model = Request
diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc
index 4f74faa..149ad31 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc and b/allocation-manager/django/ResourceAllocationManager/dashboard/views.pyc differ
diff --git a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 b/allocation-manager/django/ResourceAllocationManager/db.sqlite3
index f3033e4..a8a979a 100644
Binary files a/allocation-manager/django/ResourceAllocationManager/db.sqlite3 and b/allocation-manager/django/ResourceAllocationManager/db.sqlite3 differ

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 01/08: Added skeleton code for UI using Django framework

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 2a3e8e43d16c1dac778b18d2cc190e648e1505d0
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Mon Nov 13 23:14:41 2017 -0500

    Added skeleton code for UI using Django framework
---
 .../user-interface/website/db.sqlite3              | Bin 0 -> 3072 bytes
 .../user-interface/website/manage.py               |  22 ++++
 .../user-interface/website/website/__init__.py     |   0
 .../user-interface/website/website/__init__.pyc    | Bin 0 -> 160 bytes
 .../user-interface/website/website/settings.py     | 120 +++++++++++++++++++++
 .../user-interface/website/website/settings.pyc    | Bin 0 -> 2589 bytes
 .../user-interface/website/website/urls.py         |  21 ++++
 .../user-interface/website/website/urls.pyc        | Bin 0 -> 1004 bytes
 .../user-interface/website/website/wsgi.py         |  16 +++
 .../user-interface/website/website/wsgi.pyc        | Bin 0 -> 618 bytes
 10 files changed, 179 insertions(+)

diff --git a/allocation-manager/user-interface/website/db.sqlite3 b/allocation-manager/user-interface/website/db.sqlite3
new file mode 100644
index 0000000..fb67489
Binary files /dev/null and b/allocation-manager/user-interface/website/db.sqlite3 differ
diff --git a/allocation-manager/user-interface/website/manage.py b/allocation-manager/user-interface/website/manage.py
new file mode 100755
index 0000000..860d549
--- /dev/null
+++ b/allocation-manager/user-interface/website/manage.py
@@ -0,0 +1,22 @@
+#!/usr/bin/env python
+import os
+import sys
+
+if __name__ == "__main__":
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
+    try:
+        from django.core.management import execute_from_command_line
+    except ImportError:
+        # The above import may fail for some other reason. Ensure that the
+        # issue is really that Django is missing to avoid masking other
+        # exceptions on Python 2.
+        try:
+            import django
+        except ImportError:
+            raise ImportError(
+                "Couldn't import Django. Are you sure it's installed and "
+                "available on your PYTHONPATH environment variable? Did you "
+                "forget to activate a virtual environment?"
+            )
+        raise
+    execute_from_command_line(sys.argv)
diff --git a/allocation-manager/user-interface/website/website/__init__.py b/allocation-manager/user-interface/website/website/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/allocation-manager/user-interface/website/website/__init__.pyc b/allocation-manager/user-interface/website/website/__init__.pyc
new file mode 100644
index 0000000..664fb91
Binary files /dev/null and b/allocation-manager/user-interface/website/website/__init__.pyc differ
diff --git a/allocation-manager/user-interface/website/website/settings.py b/allocation-manager/user-interface/website/website/settings.py
new file mode 100644
index 0000000..5d4b66b
--- /dev/null
+++ b/allocation-manager/user-interface/website/website/settings.py
@@ -0,0 +1,120 @@
+"""
+Django settings for website project.
+
+Generated by 'django-admin startproject' using Django 1.10.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/1.10/topics/settings/
+
+For the full list of settings and their values, see
+https://docs.djangoproject.com/en/1.10/ref/settings/
+"""
+
+import os
+
+# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
+BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+
+
+# Quick-start development settings - unsuitable for production
+# See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/
+
+# SECURITY WARNING: keep the secret key used in production secret!
+SECRET_KEY = 'f=!$c_6mi%*dtt+8ld+l%k_k3%(fb1m#)rh@-czbanibuk)2h9'
+
+# SECURITY WARNING: don't run with debug turned on in production!
+DEBUG = True
+
+ALLOWED_HOSTS = []
+
+
+# Application definition
+
+INSTALLED_APPS = [
+    'django.contrib.admin',
+    'django.contrib.auth',
+    'django.contrib.contenttypes',
+    'django.contrib.sessions',
+    'django.contrib.messages',
+    'django.contrib.staticfiles',
+]
+
+MIDDLEWARE = [
+    'django.middleware.security.SecurityMiddleware',
+    'django.contrib.sessions.middleware.SessionMiddleware',
+    'django.middleware.common.CommonMiddleware',
+    'django.middleware.csrf.CsrfViewMiddleware',
+    'django.contrib.auth.middleware.AuthenticationMiddleware',
+    'django.contrib.messages.middleware.MessageMiddleware',
+    'django.middleware.clickjacking.XFrameOptionsMiddleware',
+]
+
+ROOT_URLCONF = 'website.urls'
+
+TEMPLATES = [
+    {
+        'BACKEND': 'django.template.backends.django.DjangoTemplates',
+        'DIRS': [],
+        'APP_DIRS': True,
+        'OPTIONS': {
+            'context_processors': [
+                'django.template.context_processors.debug',
+                'django.template.context_processors.request',
+                'django.contrib.auth.context_processors.auth',
+                'django.contrib.messages.context_processors.messages',
+            ],
+        },
+    },
+]
+
+WSGI_APPLICATION = 'website.wsgi.application'
+
+
+# Database
+# https://docs.djangoproject.com/en/1.10/ref/settings/#databases
+
+DATABASES = {
+    'default': {
+        'ENGINE': 'django.db.backends.sqlite3',
+        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
+    }
+}
+
+
+# Password validation
+# https://docs.djangoproject.com/en/1.10/ref/settings/#auth-password-validators
+
+AUTH_PASSWORD_VALIDATORS = [
+    {
+        'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
+    },
+    {
+        'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
+    },
+    {
+        'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
+    },
+    {
+        'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
+    },
+]
+
+
+# Internationalization
+# https://docs.djangoproject.com/en/1.10/topics/i18n/
+
+LANGUAGE_CODE = 'en-us'
+
+TIME_ZONE = 'UTC'
+
+USE_I18N = True
+
+USE_L10N = True
+
+USE_TZ = True
+
+
+# Static files (CSS, JavaScript, Images)
+# https://docs.djangoproject.com/en/1.10/howto/static-files/
+
+STATIC_URL = '/static/'
diff --git a/allocation-manager/user-interface/website/website/settings.pyc b/allocation-manager/user-interface/website/website/settings.pyc
new file mode 100644
index 0000000..67b9b68
Binary files /dev/null and b/allocation-manager/user-interface/website/website/settings.pyc differ
diff --git a/allocation-manager/user-interface/website/website/urls.py b/allocation-manager/user-interface/website/website/urls.py
new file mode 100644
index 0000000..74b379f
--- /dev/null
+++ b/allocation-manager/user-interface/website/website/urls.py
@@ -0,0 +1,21 @@
+"""website URL Configuration
+
+The `urlpatterns` list routes URLs to views. For more information please see:
+    https://docs.djangoproject.com/en/1.10/topics/http/urls/
+Examples:
+Function views
+    1. Add an import:  from my_app import views
+    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
+Class-based views
+    1. Add an import:  from other_app.views import Home
+    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
+Including another URLconf
+    1. Import the include() function: from django.conf.urls import url, include
+    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
+"""
+from django.conf.urls import url
+from django.contrib import admin
+
+urlpatterns = [
+    url(r'^admin/', admin.site.urls),
+]
diff --git a/allocation-manager/user-interface/website/website/urls.pyc b/allocation-manager/user-interface/website/website/urls.pyc
new file mode 100644
index 0000000..8f8b0bb
Binary files /dev/null and b/allocation-manager/user-interface/website/website/urls.pyc differ
diff --git a/allocation-manager/user-interface/website/website/wsgi.py b/allocation-manager/user-interface/website/website/wsgi.py
new file mode 100644
index 0000000..6118e81
--- /dev/null
+++ b/allocation-manager/user-interface/website/website/wsgi.py
@@ -0,0 +1,16 @@
+"""
+WSGI config for website project.
+
+It exposes the WSGI callable as a module-level variable named ``application``.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/
+"""
+
+import os
+
+from django.core.wsgi import get_wsgi_application
+
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
+
+application = get_wsgi_application()
diff --git a/allocation-manager/user-interface/website/website/wsgi.pyc b/allocation-manager/user-interface/website/website/wsgi.pyc
new file mode 100644
index 0000000..78a5664
Binary files /dev/null and b/allocation-manager/user-interface/website/website/wsgi.pyc differ

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.

[airavata-sandbox] 05/08: Previous/Next buttons working on Create Request Form

Posted by sm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

smarru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-sandbox.git

commit 14d7aabb244ad2d87b08316324d8e2ee5a72d863
Author: Prasandeep Singh <pr...@gmail.com>
AuthorDate: Mon Dec 4 18:22:13 2017 -0500

    Previous/Next buttons working on Create Request Form
---
 .../templates/dashboard/request_form.html          | 56 +++++++++++-----------
 1 file changed, 29 insertions(+), 27 deletions(-)

diff --git a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
index 5272c9c..5e973c3 100644
--- a/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
+++ b/allocation-manager/django/ResourceAllocationManager/dashboard/templates/dashboard/request_form.html
@@ -10,11 +10,11 @@
                     <div class="panel-body">
 
                       <!-- Tabular Category of questions in the form-->
-                      <ul class="nav nav-pills">
-                        <li class="active"><a data-toggle="pill" href="#category1">General Description</a></li>
-                        <li><a data-toggle="pill" href="#category2">Typical Job Description</a></li>
-                        <li><a data-toggle="pill" href="#category3">Resource Description</a></li>
-                        <li><a data-toggle="pill" href="#category4">Additional Details</a></li>
+                      <ul class="nav nav-tabs">
+                        <li class="active"><a data-toggle="tab" href="#category1">General Description</a></li>
+                        <li><a data-toggle="tab" href="#category2">Typical Job Description</a></li>
+                        <li><a data-toggle="tab" href="#category3">Resource Description</a></li>
+                        <li><a data-toggle="tab" href="#category4">Additional Details</a></li>
                       </ul>
 
                       <div class="tab-content">
@@ -78,11 +78,9 @@
                                   <input type="text" id="keywords" placeholder="Keywords">
                                 </div>
                             </div>
-                            <div class="form-group">
-                                <ul class="pager">
-                                  <li class="next"><a href="#category2">Next</a></li>
-                                </ul>
-                            </div>
+                            <div>
+                                <a class="btn btn-info btnNext" style="text-align:left; margin: 10% 10% 0 0">Next</a>
+                            </div>
                           </form>
                         </div>
                         <div id="category2" class="tab-pane fade">
@@ -115,11 +113,9 @@
                                   <input type="number" min="0" class="form-control" id="typical-su" placeholder="Enter Typical SU per Job">
                                 </div>
                             </div>
-                            <div class="form-group">
-                                <ul class="pager">
-                                  <li class="previous"><a href="#">Previous</a></li>
-                                  <li class="next"><a href="#">Next</a></li>
-                                </ul>
+                            <div>
+                                <a class="btn btn-info btnPrevious" style="text-align:left; margin: 10% 10% 0 0">Previous</a>
+                                <a class="btn btn-info btnNext" style="text-align:left; margin: 10% 0 0 0">Next</a>
                             </div>
                           </form>
                         </div>
@@ -154,11 +150,9 @@
 {#                                    <input type="text" class="form-control "placeholder="Other">#}
                                 </div>
                             </div>
-                            <div class="form-group">
-                                <ul class="pager">
-                                  <li><a href="#">Previous</a></li>
-                                  <li><a href="#">Next</a></li>
-                                </ul>
+                            <div>
+                                <a class="btn btn-info btnPrevious" style="text-align:left; margin: 10% 10% 0 0">Previous</a>
+                                <a class="btn btn-info btnNext" style="text-align:left; margin: 10% 0 0 0">Next</a>
                             </div>
                           </form>
                         </div>
@@ -181,21 +175,16 @@
                                  </div>
                             </div>
 
-                            <div class="form-group">
-                                <ul class="pager">
-                                  <li class="previous"><a href="#">Previous</a></li>
-
-                                </ul>
-                            </div>
                             <form class="form-horizontal" action="" method="post" enctype="multipart/form-data">
                             {% csrf_token %}
 {#                            {% include 'dashboard/form-template.html' %}#}
                             <div class="form-group">
                                 <div class="col-sm-offset-2 col-sm-10">
+                                    <a class="btn btn-info btnPrevious">Previous</a>
                                     <button type="submit" class="btn btn-success">Submit</button>
                                 </div>
                             </div>
-                        </form>
+                            </form>
                           </form>
                         </div>
                       </div>
@@ -204,4 +193,17 @@
             </div>
         </div>
     </div>
+
+    <!-- Script for previous and next buttons-->
+    <script>
+        $(document).ready(function(){
+            $('.btnNext').click(function(){
+              $('.nav-tabs > .active').next('li').find('a').trigger('click');
+            });
+
+            $('.btnPrevious').click(function(){
+              $('.nav-tabs > .active').prev('li').find('a').trigger('click');
+            });  
+        });
+    </script>
 {% endblock %}
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.