templates cosmetics
[myslice.git] / portal / templates / registration_view.html
index f40b831..5929f16 100644 (file)
-{% extends "layout-unfold1.html" %}
-
-{% block head %}                
-<link rel="stylesheet" type="text/css" href="{{STATIC_URL}}/css/register.css" />
-<script type="text/javascript" src="{{STATIC_URL}}/jquery.validate.js"></script> 
-<script type="text/javascript" src="{{STATIC_URL}}/my_account.register.js"></script>
-{% endblock %}                              
-                                    
-{% block unfold1_main %}        
-
+{% extends "layout.html" %}
 
+{% block content %}        
 
+<div class="row">
+       <div class="col-md-12">
+       <h1><img src="{{ STATIC_URL }}icons/user-xs.png" alt="User Registration" />Experimenter registration</h1>
+       </div>
+</div>
+<div class="row">
+       <div class="col-md-12">
+               <h3>For First Line Support please <a href="/portal/contact" >Contact Support</a></h3>
+       </div>
+</div>
 {% if errors %}
-        <ul>
-            {% for error in errors %}
-            <li>{{ error }}</li>
-            {% endfor %}
-        </ul>
-    {% endif %}
-
+<ul>
+  {% for error in errors %}
+  <li>{{ error }}</li>
+  {% endfor %}
+</ul>
+{% endif %}
+   
+<div class="row">
+       <div class="col-md-2"></div>
+       <div class="col-md-8">
+       <form class="cmxform form-horizontal" id="registrationForm" method="post" enctype="multipart/form-data" role="form">
+    {% csrf_token %}
+    <div class="form-group">
+       <label for="firstname" class="control-label">First Name</label>
+               <input type="text" name="firstname" class="form-control" minlength="2" value="{{ firstname }}" placeholder="First Name" required />
+    </div>
+    <div class="form-group">
+       <label for="lastname" class="control-label">Last Name</label>
+               <input type="text" name="lastname" size="25" class="form-control" minlength="2" value="{{ lastname }}" placeholder="Last Name" required />
+    </div>
+    <div class="form-group">
+      <label for="authority_hrn" class="control-label">Authority</label>
+      <input id="authority_hrn" name="authority_hrn" class="form-control" value="{{ authority_hrn }}" required>
+      <p class="help-block">An authority responsible for vetting your account</p>
+    </div>
 
-<form class="cmxform" id="commentForm" method="post" action="" enctype="multipart/form-data" >
-{% csrf_token %}
- <fieldset>
-    <div class="OneLabTitle">
-        <h2>OneLab Experimenter Registration</h2>
-        <h3>For First Line Support please <a href="/portal/contact" >Contact Support</a></h3>
+       <!-- LOGIN
+       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">
+         <input type="text" name="login" size="25" class="form-control" minlength="2" value="{{ login }}" placeholder="Login" required />
+      </div>
+      <div class="col-xs-6"><p class="form-hint">Enter your login</p></div>
     </div>
-   
-   <div class="field">
-     <label for="cname">First Name</label>
-     <input type="text" id="firstname" name="firstname" size="25" class="required" minlength="2" value="{{ firstname}}" /> 
-     <p class="hint">Enter your first name</p>
-     <?php echo $errfName;?>
-   </div>
-   <div class="field">
-     <label for="lname">Last Name</label>
-     <input type="text" id="lastname" name="lastname" size="25" class="required" minlength="2" value="{{ lastname }}"/> 
-     <p class="hint">Enter your last name</p>
-     <?php echo $errlName;?>
-   </div>
-   <!-- DEPRECATED
-       <div class="field">
-     <label for="aff_list">Affiliation</label>
-     <input type="text" id="aff_list" name="affiliation" size="25" class="required"  value="{{ affiliation }}"/> 
-     <p class="hint">Enter your Institution name</p>
-     <?php echo $erraffiliation;?>
-   </div>
        -->
-    <div class="field">
-      <label for="auth_list">Authority</label>
-      <select id="auth_list" name="authority_hrn" size="1" class="required">
-        {% for authority in authorities %}
-        <option value="{{ authority.authority_hrn }}"/>{{authority.name}} ({{authority.authority_hrn}})</option>
-        {% endfor %}
-     </select>
-     <p class="hint">Please select an authority responsible for vetting your account</p>
-   </div>
-
-   <div class="field">
-     <label for="cemail">Email</label>
-     <input type="text" id="email" name="email" size="25"  class="required email" value="{{ email }}"/> 
-     <p class="hint">Enter a valid email address</p>
-     <?php echo $errEmail; ?>
-   </div>
-   <div class="field">
-     <label for="password">Password</label>
-     <input type="password"  id="password" name="password"   class="required" minlength="4" value="{{ password }}"/> 
-     <p class="hint">Enter password</p>
-     <?php //echo $errPass;?>
-   </div>
-   <div class="field">
-     <label for="password">Confirm Password</label>
-     <input type="password"  id="confirmpassword" name="confirmpassword"   minlength="4" class="required" value=""/>
-     <p class="hint">Retype the password</p>
-   </div>
-   <div class="field">
-      <label for="question">My Public Key</label>
-      <select name="question" class="required" id="question">        
-        <option value="generate">Generate key pairs for me </option>
-        <option value="upload">Upload my public key </option>
-      </select> 
-      <?php echo $errFile; ?>
-   </div>
-   <div class="field" style="display:none;" id="upload_key">
-      <label for="file">Upload public key</label>
-      <input type="file" name="user_public_key" class="required" id="user_public_key"/>
-      <p class="hint">Upload a valid public key</p>
-   </div>
-   <div class="field">
-     <input class="submit" type="submit" name="submit" value="Register"/>
-   </div>
- </fieldset>
-</form>
 
+    <div class="form-group">
+       <label for="email" class="control-label">Email</label>
+       <input type="email" name="email" size="25"  class="form-control" value="{{ email }}" required/>
+    </div>
+    <div class="form-group">
+      <label for="password" class="control-label">Password</label>
+      <input type="password"  id="password" name="password"   class="form-control" minlength="4" value="{{ password }}" required/>
+    </div>
+    <div class="form-group">
+       <label for="password" class="control-label">Confirm Password</label>
+               <input type="password"  id="confirmpassword" name="confirmpassword"   minlength="4" class="form-control" value="" placeholder="Confirm Password" required/>
+    </div>
+    <div class="form-group">
+       <label for="question" class="control-label">My Keys</label>
+               <select name="question" class="form-control" id="key-policy" required>        
+                       <option value="generate">Generate key pairs for me </option>
+                       <option value="upload">Upload my public key </option>
+               </select>
+       <p class="help-block">Genkey: Account Delegation Automatic (Recommended)</p>
+    </div>
+    <div class="form-group" style="display:none;" id="upload_key">
+       <label for="file" class="control-label">Upload public key</label>
+       <input type="file" name="user_public_key" class="form-control" id="user_public_key" required>
+       <br />
+               <div class="alert alert-danger" id="pkey_del_msg">
+                       Once your account is validated, you will have to delegate your credentials manually using SFA [Advanced users only]
+               </div>
+       <p class="help-block">Account Delegation: Manual (Advanced Users)</p>
+    </div>
+    <div class="form-group" id="register">
+      <button class="submit btn btn-default" type="submit">Register</button>
+    </div>
+  </form>  
+</div>
+<script>
+jQuery(document).ready(function(){
+    var availableTags = [
+    {% if authorities %}
+        {% for authority in authorities %}
+            {% if authority.name %}
+                {value:"{{ authority.authority_hrn }}",label:"{{authority.name}}"},
+            {% else %}
+                {value:"{{ authority.authority_hrn }}",label:"{{authority.authority_hrn}}"},
+            {% endif %}
+        {% 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 %}