mirror of
https://github.com/itflow-org/itflow
synced 2026-03-02 11:54:52 +00:00
add password generation functionality
This commit is contained in:
@@ -124,7 +124,7 @@
|
|||||||
while ($row = mysqli_fetch_array($sql)) {
|
while ($row = mysqli_fetch_array($sql)) {
|
||||||
$location_id = intval($row['location_id']);
|
$location_id = intval($row['location_id']);
|
||||||
$location_name = nullable_htmlentities($row['location_name']);
|
$location_name = nullable_htmlentities($row['location_name']);
|
||||||
?>
|
?>
|
||||||
<option value="<?php echo $location_id; ?>"><?php echo $location_name; ?></option>
|
<option value="<?php echo $location_id; ?>"><?php echo $location_name; ?></option>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactImportantCheckbox" name="contact_important" value="1" >
|
<input type="checkbox" class="custom-control-input" id="contactImportantCheckbox" name="contact_important" value="1">
|
||||||
<label class="custom-control-label" for="contactImportantCheckbox">Important</label>
|
<label class="custom-control-label" for="contactImportantCheckbox">Important</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactBillingCheckbox" name="contact_billing" value="1" >
|
<input type="checkbox" class="custom-control-input" id="contactBillingCheckbox" name="contact_billing" value="1">
|
||||||
<label class="custom-control-label" for="contactBillingCheckbox">Billing</label>
|
<label class="custom-control-label" for="contactBillingCheckbox">Billing</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -153,7 +153,7 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactTechnicalCheckbox" name="contact_technical" value="1" >
|
<input type="checkbox" class="custom-control-input" id="contactTechnicalCheckbox" name="contact_technical" value="1">
|
||||||
<label class="custom-control-label" for="contactTechnicalCheckbox">Technical</label>
|
<label class="custom-control-label" for="contactTechnicalCheckbox">Technical</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -183,36 +183,40 @@
|
|||||||
<input type="text" class="form-control" name="pin" placeholder="Security code or pin">
|
<input type="text" class="form-control" name="pin" placeholder="Security code or pin">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php if($config_client_portal_enable == 1) { ?>
|
<?php if ($config_client_portal_enable == 1) { ?>
|
||||||
<div class="authForm">
|
<div class="authForm">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>Login</label>
|
<label>Login</label>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-user-circle"></i></span>
|
<span class="input-group-text"><i class="fa fa-fw fa-user-circle"></i></span>
|
||||||
|
</div>
|
||||||
|
<select class="form-control select2 authMethod" name="auth_method">
|
||||||
|
<option value="">- None -</option>
|
||||||
|
<option value="local">Local</option>
|
||||||
|
<option value="azure">Azure</option>
|
||||||
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<select class="form-control select2 authMethod" name="auth_method">
|
|
||||||
<option value="">- None -</option>
|
|
||||||
<option value="local">Local</option>
|
|
||||||
<option value="azure">Azure</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Password Form Group (Initially hidden) -->
|
<div class="form-group passwordGroup" style="display: none;">
|
||||||
<div class="form-group passwordGroup" style="display: none;">
|
<label>Password</label>
|
||||||
<label>Password</label>
|
<div class="input-group">
|
||||||
<div class="input-group">
|
<div class="input-group-prepend">
|
||||||
<div class="input-group-prepend">
|
<span class="input-group-text"><i class="fa fa-fw fa-lock"></i></span>
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-key"></i></span>
|
</div>
|
||||||
</div>
|
<input type="password" class="form-control" data-toggle="password" id="password-add" name="password" placeholder="Password" autocomplete="new-password">
|
||||||
<input type="password" class="form-control" data-toggle="password" name="contact_password" placeholder="Enter a password" autocomplete="new-password">
|
<div class="input-group-append">
|
||||||
<div class="input-group-append">
|
<span class="input-group-text"><i class="fa fa-fw fa-eye"></i></span>
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-eye"></i></span>
|
</div>
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button type="button" class="btn btn-default" onclick="generatePassword('add')">
|
||||||
|
<i class="fa fa-fw fa-question"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -574,6 +574,30 @@ if (isset($_GET['contact_id'])) {
|
|||||||
|
|
||||||
<!-- JavaScript to Show/Hide Password Form Group -->
|
<!-- JavaScript to Show/Hide Password Form Group -->
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
|
function generatePassword(type, id) {
|
||||||
|
var url = '/ajax.php?get_readable_pass=true';
|
||||||
|
|
||||||
|
// Make an AJAX request to the server
|
||||||
|
var xhr = new XMLHttpRequest();
|
||||||
|
xhr.open('GET', url, true);
|
||||||
|
|
||||||
|
xhr.onreadystatechange = function () {
|
||||||
|
if (xhr.readyState == 4 && xhr.status == 200) {
|
||||||
|
var password = xhr.responseText;
|
||||||
|
|
||||||
|
// Set the password value based on the type
|
||||||
|
if (type == "add") {
|
||||||
|
document.getElementById("password-add").value = password;
|
||||||
|
} else if (type == "edit") {
|
||||||
|
console.log("password-edit-"+id.toString());
|
||||||
|
document.getElementById("password-edit-"+id.toString()).value = password;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
xhr.send();
|
||||||
|
}
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('.authMethod').on('change', function() {
|
$('.authMethod').on('change', function() {
|
||||||
var $form = $(this).closest('.authForm');
|
var $form = $(this).closest('.authForm');
|
||||||
|
|||||||
@@ -49,7 +49,9 @@
|
|||||||
<input type="text" class="form-control" name="name" placeholder="Full Name" value="<?php echo $contact_name; ?>" required>
|
<input type="text" class="form-control" name="name" placeholder="Full Name" value="<?php echo $contact_name; ?>" required>
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<div class="input-group-text">
|
<div class="input-group-text">
|
||||||
<input type="checkbox" name="contact_primary" value="1" <?php if ($contact_primary == 1) { echo "checked"; } ?>>
|
<input type="checkbox" name="contact_primary" value="1" <?php if ($contact_primary == 1) {
|
||||||
|
echo "checked";
|
||||||
|
} ?>>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -126,8 +128,10 @@
|
|||||||
while ($row = mysqli_fetch_array($sql_locations)) {
|
while ($row = mysqli_fetch_array($sql_locations)) {
|
||||||
$location_id_select = intval($row['location_id']);
|
$location_id_select = intval($row['location_id']);
|
||||||
$location_name_select = nullable_htmlentities($row['location_name']);
|
$location_name_select = nullable_htmlentities($row['location_name']);
|
||||||
?>
|
?>
|
||||||
<option <?php if ($contact_location_id == $location_id_select) { echo "selected"; } ?> value="<?php echo $location_id_select; ?>"><?php echo $location_name_select; ?></option>
|
<option <?php if ($contact_location_id == $location_id_select) {
|
||||||
|
echo "selected";
|
||||||
|
} ?> value="<?php echo $location_id_select; ?>"><?php echo $location_name_select; ?></option>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
@@ -139,7 +143,9 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactImportantCheckbox<?php echo $contact_id; ?>" name="contact_important" value="1" <?php if ($contact_important == 1) { echo "checked"; } ?> >
|
<input type="checkbox" class="custom-control-input" id="contactImportantCheckbox<?php echo $contact_id; ?>" name="contact_important" value="1" <?php if ($contact_important == 1) {
|
||||||
|
echo "checked";
|
||||||
|
} ?>>
|
||||||
<label class="custom-control-label" for="contactImportantCheckbox<?php echo $contact_id; ?>">Important</label>
|
<label class="custom-control-label" for="contactImportantCheckbox<?php echo $contact_id; ?>">Important</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -147,7 +153,9 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactBillingCheckbox<?php echo $contact_id; ?>" name="contact_billing" value="1" <?php if ($contact_billing == 1) { echo "checked"; } ?> >
|
<input type="checkbox" class="custom-control-input" id="contactBillingCheckbox<?php echo $contact_id; ?>" name="contact_billing" value="1" <?php if ($contact_billing == 1) {
|
||||||
|
echo "checked";
|
||||||
|
} ?>>
|
||||||
<label class="custom-control-label" for="contactBillingCheckbox<?php echo $contact_id; ?>">Billing</label>
|
<label class="custom-control-label" for="contactBillingCheckbox<?php echo $contact_id; ?>">Billing</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -155,7 +163,9 @@
|
|||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="contactTechnicalCheckbox<?php echo $contact_id; ?>" name="contact_technical" value="1" <?php if ($contact_technical == 1) { echo "checked"; } ?> >
|
<input type="checkbox" class="custom-control-input" id="contactTechnicalCheckbox<?php echo $contact_id; ?>" name="contact_technical" value="1" <?php if ($contact_technical == 1) {
|
||||||
|
echo "checked";
|
||||||
|
} ?>>
|
||||||
<label class="custom-control-label" for="contactTechnicalCheckbox<?php echo $contact_id; ?>">Technical</label>
|
<label class="custom-control-label" for="contactTechnicalCheckbox<?php echo $contact_id; ?>">Technical</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -177,40 +187,48 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php if($config_client_portal_enable == 1) { ?>
|
<?php if ($config_client_portal_enable == 1) { ?>
|
||||||
<div class="authForm">
|
<div class="authForm">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>Login</label>
|
<label>Login</label>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-user-circle"></i></span>
|
<span class="input-group-text"><i class="fa fa-fw fa-user-circle"></i></span>
|
||||||
|
</div>
|
||||||
|
<select class="form-control select2 authMethod" name="auth_method">
|
||||||
|
<option value="">- None -</option>
|
||||||
|
<option value="local" <?php if ($auth_method == "local") {
|
||||||
|
echo "selected";
|
||||||
|
} ?>>Local</option>
|
||||||
|
<option value="azure" <?php if ($auth_method == "azure") {
|
||||||
|
echo "selected";
|
||||||
|
} ?>>Azure</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group passwordGroup" style="display: none;">
|
||||||
|
<label>Password <strong class="text-danger">*</strong></label>
|
||||||
|
<div class="input-group">
|
||||||
|
<div class="input-group-prepend">
|
||||||
|
<span class="input-group-text"><i class="fa fa-fw fa-lock"></i></span>
|
||||||
|
</div>
|
||||||
|
<input type="password" class="form-control" data-toggle="password" id="password-edit-<?php echo $contact_id; ?>" name="password" placeholder="Password" required autocomplete="new-password">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<span class="input-group-text"><i class="fa fa-fw fa-eye"></i></span>
|
||||||
|
</div>
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button type="button" class="btn btn-default" onclick="generatePassword('edit', <?php echo $contact_id; ?>)">
|
||||||
|
<i class="fa fa-fw fa-question"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<select class="form-control select2 authMethod" name="auth_method">
|
|
||||||
<option value="">- None -</option>
|
|
||||||
<option value="local" <?php if ($auth_method == "local") {echo "selected";} ?>>Local</option>
|
|
||||||
<option value="azure" <?php if ($auth_method == "azure") {echo "selected";} ?>>Azure</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group passwordGroup" style="display: none;">
|
<div class="form-check">
|
||||||
<label>Password</label>
|
<input type="checkbox" class="form-check-input" name="send_email" value="1" />
|
||||||
<div class="input-group">
|
<label class="form-check-label">Send user e-mail with login details?</label>
|
||||||
<div class="input-group-prepend">
|
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-key"></i></span>
|
|
||||||
</div>
|
|
||||||
<input type="password" class="form-control" data-toggle="password" name="contact_password" placeholder="Leave blank for no change" autocomplete="new-password" minlength="8">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<span class="input-group-text"><i class="fa fa-fw fa-eye"></i></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="form-check">
|
|
||||||
<input type="checkbox" class="form-check-input" name="send_email" value="1"/>
|
|
||||||
<label class="form-check-label">Send user e-mail with login details?</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
@@ -253,4 +271,4 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
Reference in New Issue
Block a user