Enforce selection of an Authority in Registration
[myslice.git] / portal / templates / registration_view.html
index 52cb402..7ed1bd1 100644 (file)
       <div class="col-xs-6"><p class="form-hint">Enter your last name</p></div>
     </div>
     <div class="form-group">
-      <label for="auth_list" class="col-xs-2 control-label">Authority</label>
+      <label for="authority_hrn" class="col-xs-2 control-label">Authority</label>
       <div class="col-xs-4">
-       <select id="auth_list" name="authority_hrn" size="1" class="form-control" required>
-         {% if authorities %}
-         {% for authority in authorities %}
-      <option value="{{ authority.authority_hrn }}"/>{{authority.authority_hrn}}</option>
-         <!-- <option value="{{ authority.authority_hrn }}">{{authority.name}} ({{authority.authority_hrn}})</option> -->
-         {% endfor %}
-         {% else %} <!-- should not happen -->
-         <option value="test">No authority found !!! </option>
-         {% endif %}
-       </select>
-      </div>
+        <div class="ui-widget">
+            <input id="authority_hrn" name="authority_hrn" class="form-control" value="{{ authority_hrn }}" required>
+        </div>
+     </div>
       <div class="col-xs-6"><p class="form-hint">An authority responsible for vetting your account</p></div>
     </div>
 
@@ -54,7 +47,6 @@
        TODO: Login should be suggested from user email or first/last name, and
        checked for existence. In addition, the full HRN should be shown to the
        user.
-       -->
     <div class="form-group">
       <label for="login" class="col-xs-2 control-label">Login</label>
       <div class="col-xs-4">
@@ -62,7 +54,8 @@
       </div>
       <div class="col-xs-6"><p class="form-hint">Enter your login</p></div>
     </div>
-    
+       -->
+
     <div class="form-group">
       <label for="email" class="col-xs-2 control-label">Email</label>
       <div class="col-xs-4">
   </fieldset>
   </form>  
 </div>
-
+<script>
+jQuery(document).ready(function(){
+    var availableTags = [
+    {% if authorities %}
+        {% for authority in authorities %}
+        {value:"{{ authority.authority_hrn }}",label:"{{authority.name}}"},
+        {% endfor %}    
+    {% else %}
+        {value:"",label:"No authority found !!!"}
+    {% endif %}
+    ];
+    jQuery( "#authority_hrn" ).autocomplete({
+      source: availableTags,
+      minLength: 0,
+      change: function (event, ui) {
+          if(!ui.item){
+              //http://api.jqueryui.com/autocomplete/#event-change -
+              // The item selected from the menu, if any. Otherwise the property is null
+              //so clear the item for force selection
+              jQuery("#authority_hrn").val("");
+          }
+      }
+      //select: function( event, ui ) {console.log(jQuery(this))}
+    });
+});
+</script>
 {% endblock %}