Merge branch 'onelab' of ssh://git.onelab.eu/git/myslice into fibre
[myslice.git] / portal / templates / management-tab-requests.html
index e59394a..d22bdeb 100644 (file)
@@ -1,6 +1,18 @@
 <script type="text/javascript">
        $(document).ready(function() {
                $("li#nav-request").addClass("active");
+               $('table.requests').dataTable({
+                   "sDom": "frtiS",
+            "bScrollCollapse": true,
+            "bStateSave": true,
+            "bPaginate": false,
+            "bLengthChange": false,
+            "bFilter": false,
+            "bSort": true,
+            "bInfo": false,
+            "bAutoWidth": true,
+            "bAutoHeight": false,
+               });
        });
        function on_click_event() {
                var ids = []; 
                                }
                        );
                }
-       }
-       function on_click_reject() {
+     };
+     function showMore(buttonId, divId){
+          var element = document.getElementById(buttonId);
+          var div_element = document.getElementById(divId);
+          if (element.value === '(+)'){
+            element.value = '(-)';
+            $('#'+divId).slideDown('fast');
+          }
+          else {
+            element.value = '(+)';
+            $('#'+divId).slideUp('fast');
+          }
+          return false;
+     }
+        function on_click_reject() {
                var ids = []; 
                $('.portal__validate__checkbox').each(function(i, el) {
                        if ($(el).prop('checked')) {
        }
 </script>
 
+<div class="container-fluid">
 <div class="col-md-12">
        <h2>From your authorities</h2>
 </div>
 {% if my_authorities %}
-       
+<div class="col-md-12">
+       <table class="table requests">
+           <thead>
+        <tr>
+            <th>ID</th>
+            <th></th>
+            <th>Type</th>
+            <th>Authority</th>
+            <th>Info</th>
+            <th>Date</th>
+            <th>Status</th>
+        </tr>
+        </thead>
+        <tbody>
        {% for authority, requests in my_authorities.items %}
-       
+       {% if authority == pi_authority or authority == "fibre" %}
+
+<!--
        <div class="col-md-12">
-               <h2>{{authority|default:"Authorities"}}</h2>
+               <h2>{{authority}}</h2>
+               <table class="table">
+                             <th>
+                               <td>Type</td>
+                               <td>Id</td>
+                               <td>Details</td>
+                               <td>Timestamp</td>
+                               <td>Status</td>
+                             </th>
+                       {% for request in requests %} 
+                               <tr>
+                                       {% if request.object_auth == pi_authority %}
+                                               <td>
+                                               {% if request.allowed == 'allowed' %}
+                                               <input class='portal__validate__checkbox' id='portal__validate__checkbox__{{request.type}}__{{request.id}}' type='checkbox'/>
+                                               {% else %}
+                                                       {% if request.allowed == 'expired' %}
+                                                               expired
+                                                       {% else %} {# denied #}
+                                                               denied
+                                                       {% endif %}
+                                               {% endif %}
+                                               </td>
+                                               <td>{{ request.type }}</td>
+                                               <td>{{ request.id }}</td>
+                                               <td>
+                                               {% if request.type == 'user' %}
+                                                       Login: {{request.login}} - First name: {{request.first_name}} - Last name: {{request.last_name}} - Email: {{request.email}}
+                                                       <input type = "button" id = "moreBtn_{{request.id}}" value = "(+)" onclick = "showMore('moreBtn_{{request.id}}','reasons_{{request.id}}')" style="color:blue; padding:0; border:none; background:none">
+                                                       <div id="reasons_{{request.id}}" style="display:none"> Reasons for Applying:<br> {{request.reasons}} </div> 
+                                               {% else %}
+                                               {% if request.type == 'slice' %}
+                                                               Slice name: {{request.slice_name}} - User_hrn: {{ request.user_hrn }} - Number of nodes: {{request.number_of_nodes}} - Type of nodes: {{request.type_of_nodes}} - Purpose: {{request.purpose}}
+                                                       {% else %} {# authority #}
+                                                               Authority name: {{request.site_name}} - authority_hrn: {{request.site_authority}} - City: {{request.address_city}} - Country: {{request.address_country}}
+                                               {% endif %}
+                                               {% endif %}
+                                               </td>
+                                               <td>{{ request.timestamp }}</td>
+                                       
+                                               <td><span id='portal__status__{{request.type}}__{{request.id}}'></span></td>
+
+                           <!- <div class='portal_validate_request {{request.type}} {% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}'> 
+                               {% endif %}
+                               </tr>
+                       {% endfor %}
+               </table>
        </div>
-       <div class="col-md-12">
-        <table class="table">
-          
+       {% endif %}
+-->
+       
         {% for request in requests %}
-    
-         <tr>
+        
+        {% if request.type == 'user' %}
+       <tr>
+       {% elif request.type == 'slice' %}
+       <tr class="info">
+       {% else %}
+       <tr class="active">
+       {% endif %}
            <td><span class="gray small">{{ request.id }}</span></td>
            <td>
             {% if request.allowed == 'allowed' %}
                 {% if request.allowed == 'expired' %}expired{% else %}denied{% endif %}
             {% endif %}
             </td>
-            <td><u>{{ request.type }}</u></td>
-           <td><i>{{request.site_authority}}</i></td>
+            <td><span class="type">{{ request.type }}</span></td>
+           <td><i>{{authority}}{{request.site_authority}}</i></td>
                <td>
             {% if request.type == 'user' %}
                 <b>{{request.first_name}} {{request.last_name}}</b> &lt;<a href="mailto:{{request.email}}">{{request.email}}</a>&gt;
+                       <input type = "button" id = "moreBtn_{{request.id}}" value = "(+)" onclick = "showMore('moreBtn_{{request.id}}','reasons_{{request.id}}')" style="color:blue; padding:0; border:none; background:none">
+               <div id="reasons_{{request.id}}" style="display:none"> Reasons for Applying:<br> {{request.reasons}} </div> 
+
             {% elif request.type == 'slice' %}
             <b>{{request.slice_name}}</b> -- Number of nodes: {{request.number_of_nodes}} -- Type of nodes: {{request.type_of_nodes}} -- Purpose: {{request.purpose}}
             {% else %}
          </tr>
     
         {% endfor %}
-       </table>
-       </div>
+       
        {% endfor %}
-
+          </tbody>
+    </table>
+   </div>
 {% else %}
        <div class="col-md-12">
                <i>There is no pending request waiting for validation.</i>
        </div>
 {% endif %}
+</div>
+
+
 <br />
 <div class="col-md-12">
        <h2>From your sub-authorities</h2>
 {% if sub_authorities %}
        
        {% for authority, requests in sub_authorities.items %}
-       <div class="col-md-12">
-       <h3>{{authority}}</h3>
-           <table class="table">
-             <th>
-               <td>Type</td>
-               <td>Id</td>
-               <td>Details</td>
-               <td>Timestamp</td>
-               <td>Status</td>
-             </th>
-           {% for request in requests %}
-                 <tr>
-                       <td>
-                       {% if request.allowed == 'allowed' %}
-                       <input class='portal__validate__checkbox' id='portal__validate__checkbox__{{request.type}}__{{request.id}}' type='checkbox'/>
-                       {% else %}
-                               {% if request.allowed == 'expired' %}
-                                       expired
-                               {% else %} {# denied #}
-                                       denied
+       {% if authority == pi_authority or authority == 'fibre'%}
+               <div class="col-md-12">
+               <h3>{{authority}}</h3>
+                   <table class="table">
+                     <th>
+                       <td>Type</td>
+                       <td>Id</td>
+                       <td>Details</td>
+                       <td>Timestamp</td>
+                       <td>Status</td>
+                     </th>
+                   {% for request in requests %}
+                         <tr>
+                               {% if request.object_auth == pi_authority %}
+                               <td>
+                               {% if request.allowed == 'allowed' %}
+                               <input class='portal__validate__checkbox' id='portal__validate__checkbox__{{request.type}}__{{request.id}}' type='checkbox'/>
+                               {% else %}
+                                       {% if request.allowed == 'expired' %}
+                                               expired
+                                       {% else %} {# denied #}
+                                               denied
+                                       {% endif %}
                                {% endif %}
-                       {% endif %}
-                       </td>
-                       <td>{{ request.type }}</td>
-                       <td>{{ request.id }}</td>
-                       <td>
-               {% if request.type == 'user' %}
-               Login: {{request.login}} -- First name: {{request.first_name}} -- Last name: {{request.last_name}} -- Email: {{request.email}}
-               {% else %}
-                   {% if request.type == 'slice' %}
-               Slice name: {{request.slice_name}} -- Number of nodes: {{request.number_of_nodes}} -- Type of nodes: {{request.type_of_nodes}} -- Purpose: {{request.purpose}}
-                   {% else %} {# authority #}
-               Authority name: {{request.site_name}} -- authority_hrn: {{request.site_authority}} -- City: {{request.address_city}} -- Country: {{request.address_country}}
-                   {% endif %}
-               {% endif %}
-                       </td>
-                       <td>{{ request.timestamp }}</td>
-                       
-                       <td><span id='portal__status__{{request.type}}__{{request.id}}'></span></td>
-       
+                               </td>           
+                               <td>{{ request.type }}</td>
+                               <td>{{ request.id }}</td>
+                               <td>
+                       {% if request.type == 'user' %}
+                       Login: {{request.login}} -- First name: {{request.first_name}} -- Last name: {{request.last_name}} -- Email: {{request.email}}
+                       {% else %}
+                           {% if request.type == 'slice' %}
+                       Slice name: {{request.slice_name}} -- Number of nodes: {{request.number_of_nodes}} -- Type of nodes: {{request.type_of_nodes}} -- Purpose: {{request.purpose}}
+                           {% else %} {# authority #}
+                       Authority name: {{request.site_name}} -- authority_hrn: {{request.site_authority}} -- City: {{request.address_city}} -- Country: {{request.address_country}}
+                           {% endif %}
+                       {% endif %}
+                               </td>
+                               <td>{{ request.timestamp }}</td>
+                               
+                               <td><span id='portal__status__{{request.type}}__{{request.id}}'></span></td>
+               
            <!--<div class='portal_validate_request {{request.type}} {% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}'> -->
-                 </tr>
-           {% endfor %}
-           </table>
-       </div>
+                       {% endif %}
+                         </tr>
+                   {% endfor %}
+                   </table>
+               </div>
+       {% endif %}
        {% endfor %}
 {% else %}
 <div class="col-md-12">
 {% if delegation_authorities %}
        
        {% for authority, requests in delegation_authorities.items %}
+       {% if authority == pi_authority  or authority == 'fibre'%}
        <div class="col-md-12">
                <h3>{{authority}}</h3>
                    <table class="table">
                      </th>
                    {% for request in requests %}
                          <tr>
+                               {% if request.object_auth == pi_authority %}
                                <td>
                                {% if request.allowed == 'allowed' %}
                                <input class='portal__validate__checkbox' id='portal__validate__checkbox__{{request.type}}__{{request.id}}' type='checkbox'/>
                       {% endif %}
                                </td>
                                <td>{{ request.timestamp }}</td>
-                               
+                       
                                <td><span id='portal__status__{{request.type}}__{{request.id}}'></span></td>
-               
-                   <!--<div class='portal_validate_request {{request.type}} {% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}'> -->
+       
+           <!--<div class='portal_validate_request {{request.type}} {% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}'> -->
+                       {% endif %}
                          </tr>
                    {% endfor %}
                    </table>
-               </div>
-               {% endfor %}
+       </div>
+       {% endif %}
+       {% endfor %}
 {% else %}
 <div class="col-md-12">
        <i>There is no pending request waiting for validation.</i>