domain_name on user and project creation

Change-Id: I1b879156ffe671f00eeb4b0ec93f64ed8639d492
Signed-off-by: lombardofr <lombardo@everyup.it>
diff --git a/projecthandler/template/project/modal/project_new.html b/projecthandler/template/project/modal/project_new.html
index c346ec8..df652d7 100644
--- a/projecthandler/template/project/modal/project_new.html
+++ b/projecthandler/template/project/modal/project_new.html
@@ -1,3 +1,18 @@
+<!--
+Copyright 2019 EveryUP srl
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an  BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
 <div class="modal" id="modal_new_project" xmlns="http://www.w3.org/1999/html">
     <div class="modal-dialog">
         <div class="modal-content">
@@ -10,9 +25,17 @@
                      {% csrf_token %}
             <div class="modal-body">
 
-                <div id="div_chose_id">
-                    <label>Project Name: </label>
-                    <input name="name" id="name"  size="40" maxlength="20"/>
+                <div class="form-group" id="div_chose_id" >
+                    <label for="name" class="col-sm-3 control-label">Project Name* : </label>
+                    <input name="name" id="name"  size="40" maxlength="20"required/>
+                </div>
+
+                <div class="form-group">
+                    <label for="domain_name" class="col-sm-3 control-label">Domain Name: </label>
+                    <div class="col-sm-6">
+                        <select required id="domain_name" class="js-example-basic form-control" name="domain_name">
+                        </select>
+                    </div>
                 </div>
 
             </div>
diff --git a/projecthandler/template/project/projectlist.html b/projecthandler/template/project/projectlist.html
index f1aa4f1..5423aa1 100644
--- a/projecthandler/template/project/projectlist.html
+++ b/projecthandler/template/project/projectlist.html
@@ -20,8 +20,9 @@
 {% load staticfiles %}
 
 {% block head_block %}
-  	{{ block.super }}
-    <link rel="stylesheet" href="/static/node_modules/datatables.net-bs/css/dataTables.bootstrap.min.css">
+      {{ block.super }}
+        <link rel="stylesheet" href="/static/node_modules/select2/dist/css/select2.min.css">
+        <link rel="stylesheet" href="/static/node_modules/datatables.net-bs/css/dataTables.bootstrap.min.css">
 
 {% endblock %}
 {% block title_header_big %}
@@ -54,7 +55,7 @@
             <div class="box-tools">
                 <button type="button" class="btn btn-default" data-container="body"
                                         data-toggle="tooltip" data-placement="top" title="New Project"
-                                        onclick="javascript:showModalNewProject()">
+                                        onclick="javascript:showModalNewProject({'domains_list_url': '{% url "projects:domains_list" %}'})">
                                     <i class="fa fa-plus"></i> New Project</button>
             </div>
         </div>
@@ -85,6 +86,7 @@
   	{{ block.super }}
     <script src="/static/node_modules/datatables.net/js/jquery.dataTables.min.js"></script>
     <script src="/static/node_modules/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
+    <script src="/static/node_modules/select2/dist/js/select2.js"></script>
 
     <script>
         var table;
@@ -157,7 +159,31 @@
     });
     </script>
     <script>
-    function showModalNewProject(){
+    function showModalNewProject(args){
+        select2_groups = $('#domain_name').select2({
+            placeholder: 'Select Domain',
+            width: '100%',
+            ajax: {
+                url: args.domains_list_url,
+                dataType: 'json',
+                processResults: function (data) {
+                    domains_list = [];
+                    if (data['domains']) {
+                        for (d in data['domains']) {
+                            var domain = data['domains'][d];
+                            if( domain.endsWith(':ro') === false) {
+                                domains_list.push({ id: domain, text: domain })
+                            }
+                            
+                        }
+                    }
+
+                    return {
+                        results: domains_list
+                    };
+                }
+            }
+        });
         $('#modal_new_project').modal('show');
     }