mirror of https://github.com/apache/cloudstack.git
Account page - implement "Add User" function.
This commit is contained in:
parent
cb605e626a
commit
bb9877b2a2
|
|
@ -202,6 +202,140 @@
|
|||
</p>
|
||||
</div>
|
||||
|
||||
<!-- Add User Dialog (begin)-->
|
||||
<div id="dialog_add_user" title="Add New user" style="display: none">
|
||||
<div class="dialog_formcontent">
|
||||
<form action="#" method="post" id="form_acquire">
|
||||
<ol>
|
||||
<li>
|
||||
<label for="add_user_username">
|
||||
User name:</label>
|
||||
<input class="text" type="text" id="add_user_username" />
|
||||
<div id="add_user_username_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_password">
|
||||
Password:</label>
|
||||
<input class="text" type="password" id="add_user_password"
|
||||
autocomplete="off" />
|
||||
<div id="add_user_password_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_email">
|
||||
Email:</label>
|
||||
<input class="text" type="text" id="add_user_email" />
|
||||
<div id="add_user_email_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_firstname">
|
||||
First name:</label>
|
||||
<input class="text" type="text" id="add_user_firstname" />
|
||||
<div id="add_user_firstname_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_lastname">
|
||||
Last name:</label>
|
||||
<input class="text" type="text" id="add_user_lastname" />
|
||||
<div id="add_user_lastname_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_account">
|
||||
Account:</label>
|
||||
<input class="text" type="text" id="add_user_account" />
|
||||
<div id="add_user_account_errormsg" class="dialog_formcontent_errormsg" style="display: none;">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_account_type">
|
||||
Role:</label>
|
||||
<select class="select" id="add_user_account_type">
|
||||
<option value="0">User</option>
|
||||
<option value="1">Admin</option>
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_domain">
|
||||
Domain:</label>
|
||||
<select class="select" id="domain_dropdown">
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label for="add_user_timezone">
|
||||
Time Zone:</label>
|
||||
<select class="select" id="add_user_timezone" style="width: 240px">
|
||||
<option value=""></option>
|
||||
<option value='Etc/GMT+12'>[UTC-12:00] GMT-12:00</option>
|
||||
<option value='Etc/GMT+11'>[UTC-11:00] GMT-11:00</option>
|
||||
<option value='Pacific/Samoa'>[UTC-11:00] Samoa Standard Time</option>
|
||||
<option value='Pacific/Honolulu'>[UTC-10:00] Hawaii Standard Time</option>
|
||||
<option value='US/Alaska'>[UTC-09:00] Alaska Standard Time</option>
|
||||
<option value='America/Los_Angeles'>[UTC-08:00] Pacific Standard Time</option>
|
||||
<option value='Mexico/BajaNorte'>[UTC-08:00] Baja California</option>
|
||||
<option value='US/Arizona'>[UTC-07:00] Arizona</option>
|
||||
<option value='US/Mountain'>[UTC-07:00] Mountain Standard Time</option>
|
||||
<option value='America/Chihuahua'>[UTC-07:00] Chihuahua, La Paz</option>
|
||||
<option value='America/Chicago'>[UTC-06:00] Central Standard Time</option>
|
||||
<option value='America/Costa_Rica'>[UTC-06:00] Central America</option>
|
||||
<option value='America/Mexico_City'>[UTC-06:00] Mexico City, Monterrey</option>
|
||||
<option value='Canada/Saskatchewan'>[UTC-06:00] Saskatchewan</option>
|
||||
<option value='America/Bogota'>[UTC-05:00] Bogota, Lima</option>
|
||||
<option value='America/New_York'>[UTC-05:00] Eastern Standard Time</option>
|
||||
<option value='America/Caracas'>[UTC-04:00] Venezuela Time</option>
|
||||
<option value='America/Asuncion'>[UTC-04:00] Paraguay Time</option>
|
||||
<option value='America/Cuiaba'>[UTC-04:00] Amazon Time</option>
|
||||
<option value='America/Halifax'>[UTC-04:00] Atlantic Standard Time</option>
|
||||
<option value='America/La_Paz'>[UTC-04:00] Bolivia Time</option>
|
||||
<option value='America/Santiago'>[UTC-04:00] Chile Time</option>
|
||||
<option value='America/St_Johns'>[UTC-03:30] Newfoundland Standard Time</option>
|
||||
<option value='America/Araguaina'>[UTC-03:00] Brasilia Time</option>
|
||||
<option value='America/Argentina/Buenos_Aires'>[UTC-03:00] Argentine Time</option>
|
||||
<option value='America/Cayenne'>[UTC-03:00] French Guiana Time</option>
|
||||
<option value='America/Godthab'>[UTC-03:00] Greenland Time</option>
|
||||
<option value='America/Montevideo'>[UTC-03:00] Uruguay Time]</option>
|
||||
<option value='Etc/GMT+2'>[UTC-02:00] GMT-02:00</option>
|
||||
<option value='Atlantic/Azores'>[UTC-01:00] Azores Time</option>
|
||||
<option value='Atlantic/Cape_Verde'>[UTC-01:00] Cape Verde Time</option>
|
||||
<option value='Africa/Casablanca'>[UTC] Casablanca</option>
|
||||
<option value='Etc/UTC'>[UTC] Coordinated Universal Time</option>
|
||||
<option value='Atlantic/Reykjavik'>[UTC] Reykjavik</option>
|
||||
<option value='Europe/London'>[UTC] Western European Time</option>
|
||||
<option value='CET'>[UTC+01:00] Central European Time</option>
|
||||
<option value='Europe/Bucharest'>[UTC+02:00] Eastern European Time</option>
|
||||
<option value='Africa/Johannesburg'>[UTC+02:00] South Africa Standard Time</option>
|
||||
<option value='Asia/Beirut'>[UTC+02:00] Beirut</option>
|
||||
<option value='Africa/Cairo'>[UTC+02:00] Cairo</option>
|
||||
<option value='Asia/Jerusalem'>[UTC+02:00] Israel Standard Time</option>
|
||||
<option value='Europe/Minsk'>[UTC+02:00] Minsk</option>
|
||||
<option value='Europe/Moscow'>[UTC+03:00] Moscow Standard Time</option>
|
||||
<option value='Africa/Nairobi'>[UTC+03:00] Eastern African Time</option>
|
||||
<option value='Asia/Karachi'>[UTC+05:00] Pakistan Time</option>
|
||||
<option value='Asia/Kolkata'>[UTC+05:30] India Standard Time</option>
|
||||
<option value='Asia/Bangkok'>[UTC+05:30] Indochina Time</option>
|
||||
<option value='Asia/Shanghai'>[UTC+08:00] China Standard Time</option>
|
||||
<option value='Asia/Kuala_Lumpur'>[UTC+08:00] Malaysia Time</option>
|
||||
<option value='Australia/Perth'>[UTC+08:00] Western Standard Time (Australia)</option>
|
||||
<option value='Asia/Taipei'>[UTC+08:00] Taiwan</option>
|
||||
<option value='Asia/Tokyo'>[UTC+09:00] Japan Standard Time</option>
|
||||
<option value='Asia/Seoul'>[UTC+09:00] Korea Standard Time</option>
|
||||
<option value='Australia/Adelaide'>[UTC+09:30] Central Standard Time (South Australia)</option>
|
||||
<option value='Australia/Darwin'>[UTC+09:30] Central Standard Time (Northern Territory)</option>
|
||||
<option value='Australia/Brisbane'>[UTC+10:00] Eastern Standard Time (Queensland)</option>
|
||||
<option value='Australia/Canberra'>[UTC+10:00] Eastern Standard Time (New South Wales)</option>
|
||||
<option value='Pacific/Guam'>[UTC+10:00] Chamorro Standard Time</option>
|
||||
<option value='Pacific/Auckland'>[UTC+12:00] New Zealand Standard Time</option>
|
||||
</select>
|
||||
</li>
|
||||
</ol>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Add User Dialog (end)-->
|
||||
|
||||
<!-- advanced search template (begin) -->
|
||||
<div id="advanced_search_template" class="adv_searchpopup" style="display: none;">
|
||||
<div class="adv_searchformbox">
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
var rootDomainId = 1;
|
||||
var systemAccountId = 1;
|
||||
var adminAccountId = 2;
|
||||
|
||||
|
|
@ -46,7 +47,116 @@ function afterLoadAccountJSP() {
|
|||
initDialog("dialog_resource_limits");
|
||||
initDialog("dialog_disable_account");
|
||||
initDialog("dialog_lock_account");
|
||||
initDialog("dialog_enable_account");
|
||||
initDialog("dialog_enable_account");
|
||||
|
||||
if(isAdmin()) {
|
||||
initAddUserDialog();
|
||||
}
|
||||
}
|
||||
|
||||
function initAddUserDialog() {
|
||||
//dialogs
|
||||
initDialog("dialog_add_user", 450);
|
||||
|
||||
var $dialogAddUser = $("#dialog_add_user");
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listDomains"),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var domains = json.listdomainsresponse.domain;
|
||||
var $dropDownBox = $dialogAddUser.find("#domain_dropdown").empty();
|
||||
if (domains != null && domains.length > 0) {
|
||||
for (var i = 0; i < domains.length; i++)
|
||||
$dropDownBox.append("<option value='" + fromdb(domains[i].id) + "'>" + fromdb(domains[i].name) + "</option>");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//add button ***
|
||||
$("#midmenu_add_link").find("#label").text("Add User");
|
||||
$("#midmenu_add_link").show();
|
||||
$("#midmenu_add_link").unbind("click").bind("click", function(event) {
|
||||
$dialogAddUser
|
||||
.dialog('option', 'buttons', {
|
||||
"Create": function() {
|
||||
var $thisDialog = $(this);
|
||||
// validate values
|
||||
var isValid = true;
|
||||
isValid &= validateString("User name", $thisDialog.find("#add_user_username"), $thisDialog.find("#add_user_username_errormsg"), false); //required
|
||||
isValid &= validateString("Password", $thisDialog.find("#add_user_password"), $thisDialog.find("#add_user_password_errormsg"), false); //required
|
||||
isValid &= validateString("Email", $thisDialog.find("#add_user_email"), $thisDialog.find("#add_user_email_errormsg"), true); //optional
|
||||
isValid &= validateString("First name", $thisDialog.find("#add_user_firstname"), $thisDialog.find("#add_user_firstname_errormsg"), true); //optional
|
||||
isValid &= validateString("Last name", $thisDialog.find("#add_user_lastname"), $thisDialog.find("#add_user_lastname_errormsg"), true); //optional
|
||||
isValid &= validateString("Account", $thisDialog.find("#add_user_account"), $thisDialog.find("#add_user_account_errormsg"), true); //optional
|
||||
if (!isValid)
|
||||
return;
|
||||
|
||||
var $midmenuItem1 = beforeAddingMidMenuItem() ;
|
||||
|
||||
var array1 = [];
|
||||
var username = $thisDialog.find("#add_user_username").val();
|
||||
array1.push("&username="+todb(username));
|
||||
|
||||
var password = $.md5(encodeURIComponent($thisDialog.find("#add_user_password").val()));
|
||||
array1.push("&password="+password);
|
||||
|
||||
var email = $thisDialog.find("#add_user_email").val();
|
||||
if(email == "")
|
||||
email = username;
|
||||
array1.push("&email="+todb(email));
|
||||
|
||||
var firstname = $thisDialog.find("#add_user_firstname").val();
|
||||
if(firstname == "")
|
||||
firstname = username;
|
||||
array1.push("&firstname="+todb(firstname));
|
||||
|
||||
var lastname = $thisDialog.find("#add_user_lastname").val();
|
||||
if(lastname == "")
|
||||
lastname = username;
|
||||
array1.push("&lastname="+todb(lastname));
|
||||
|
||||
var account = $thisDialog.find("#add_user_account").val();
|
||||
if(account == "")
|
||||
account = username;
|
||||
array1.push("&account="+account);
|
||||
|
||||
var accountType = $thisDialog.find("#add_user_account_type").val();
|
||||
var domainId = $thisDialog.find("#domain_dropdown").val();
|
||||
if (parseInt(domainId) != rootDomainId && accountType == "1") {
|
||||
accountType = "2"; // Change to domain admin
|
||||
}
|
||||
array1.push("&accounttype="+accountType);
|
||||
array1.push("&domainid="+domainId);
|
||||
|
||||
var timezone = $thisDialog.find("#add_user_timezone").val();
|
||||
if(timezone != null && timezone.length > 0)
|
||||
array1.push("&timezone="+todb(timezone));
|
||||
|
||||
$thisDialog.dialog("close");
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
data: createURL("command=createUser"+array1.join("")),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
accountToMidmenu(json.createuserresponse.user, $midmenuItem1);
|
||||
bindClickToMidMenu($midmenuItem1, accountToRightPanel, getMidmenuId);
|
||||
afterAddingMidMenuItem($midmenuItem1, true);
|
||||
},
|
||||
error: function(XMLHttpResponse) {
|
||||
afterAddingMidMenuItem($midmenuItem1, false, parseXMLHttpResponse(XMLHttpResponse));
|
||||
}
|
||||
});
|
||||
},
|
||||
"Cancel": function() {
|
||||
$(this).dialog("close");
|
||||
}
|
||||
}).dialog("open");
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
function accountToMidmenu(jsonObj, $midmenuItem1) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue