key_params['public_key'] = params['public_key']
end
+ if !key_params['name']
+ split_key = key_params['public_key'].split
+ key_params['name'] = split_key[-1] if (split_key.size == 3)
+ end
+
new_key = AuthorizedKey.create! key_params
if new_key
format.js
style: "font-weight: bold",
target: "_blank" %>
</div>
- <div class="form-group">
- <label for="name">Name</label>
- <input class="form-control" id="name" maxlength="250" name="name" type="text"/>
- </div>
<div class="form-group">
<label for="public_key">Public Key</label>
<textarea class="form-control" id="public_key" rows="4" name="public_key" type="text"/>
</div>
+ <div class="form-group">
+ <label for="name">Name</label>
+ <input class="form-control" id="name" maxlength="250" name="name" type="text"/>
+ </div>
</div>
<div class="modal-footer">
var name_value = document.forms["add_new_key_form"]["name"].value;
var public_key_value = document.forms["add_new_key_form"]["public_key"].value;
-if ((name_value == null || name_value == "" ||
- public_key_value == null || public_key_value == "")) {
+if (public_key_value == null || public_key_value == "") {
$register.attr('disabled', true);
}
var name_value = document.forms["add_new_key_form"]["name"].value;
var public_key_value = document.forms["add_new_key_form"]["public_key"].value;
- if ((name_value == null || name_value == "" ||
- public_key_value == null || public_key_value == "")){
+ var publicKeyRegExp = /^ssh-(rsa|dss) [A-Za-z0-9+\/=\+]+\b/;
+ var validKey = false;
+
+ if (publicKeyRegExp.test(public_key_value )) {
+ validKey = true;
+ }
+
+ if (public_key_value == null || public_key_value == "" || !validKey){
trigger = true;
}