diff options
author | Stephen Beaver <sbeaver@netgate.com> | 2015-09-02 10:36:36 -0400 |
---|---|---|
committer | Stephen Beaver <sbeaver@netgate.com> | 2015-09-02 10:40:19 -0400 |
commit | 98402844e6f80290b67aa2b5d5923435f334e5b6 (patch) | |
tree | f4e5d57ff1638baa9d7b7e0b5fda9b2929978edc /src/usr/local/www/system_usermanager.php | |
parent | 81b7de9a6653ed50e11eb22e30e0273c1919063f (diff) | |
download | pfsense-98402844e6f80290b67aa2b5d5923435f334e5b6.zip pfsense-98402844e6f80290b67aa2b5d5923435f334e5b6.tar.gz |
Fixed #5028
Restored correct delcert action
Diffstat (limited to 'src/usr/local/www/system_usermanager.php')
-rw-r--r-- | src/usr/local/www/system_usermanager.php | 53 |
1 files changed, 31 insertions, 22 deletions
diff --git a/src/usr/local/www/system_usermanager.php b/src/usr/local/www/system_usermanager.php index f6e8596..4493ff2 100644 --- a/src/usr/local/www/system_usermanager.php +++ b/src/usr/local/www/system_usermanager.php @@ -153,6 +153,21 @@ if (isset($_POST['dellall_x'])) { } } +if ($_POST['act'] == "delcert") { + + if (!$a_user[$id]) { + pfSenseHeader("system_usermanager.php"); + exit; + } + + $certdeleted = lookup_cert($a_user[$id]['cert'][$_POST['certid']]); + $certdeleted = $certdeleted['descr']; + unset($a_user[$id]['cert'][$_POST['certid']]); + write_config(); + $_POST['act'] = "edit"; + $savemsg = gettext("Certificate") . " {$certdeleted} " . gettext("association removed.") . "<br />"; +} + if ($_POST['save']) { unset($input_errors); $pconfig = $_POST; @@ -259,15 +274,8 @@ if ($_POST['save']) { if ($a_user[$id] && !empty($_POST['privid'])) { foreach ($_POST['privid'] as $i) unset($a_user[$id]['priv'][$i]); - local_user_set($a_user[$id]); - write_config(); - } - - // This used to be a separate act=delcert - if ($a_user[$id] && !empty($_POST['certid'])) { - foreach ($_POST['certid'] as $i) - unset($a_user[$id]['cert'][$i]); + local_user_set($a_user[$id]); write_config(); } @@ -392,12 +400,7 @@ function build_priv_table() { return($privhtml); } -/* -<input type="image" name="delcert[]" width="17" height="17" border="0" src="/themes/<?=$g['theme'];?>/images/icons/icon_x.gif" - onclick="document.getElementById('certid').value='<?=$i;?>'; - document.getElementById('userid').value='<?=$id;?>'; - document.getElementById('act').value='<?php echo "delcert";?>'; " title="<?=gettext("delete cert");?>" /> -*/ + function build_cert_table() { global $a_user, $id; @@ -407,7 +410,7 @@ function build_cert_table() { $certhtml .= '<tr>'; $certhtml .= '<th>' . gettext('Name') . '</th>'; $certhtml .= '<th>' . gettext('CA') . '</th>'; - $certhtml .= '<th></th>'; + $certhtml .= '<th></th>'; $certhtml .= '</tr>'; $certhtml .= '</thead>'; $certhtml .= '<tbody>'; @@ -424,10 +427,8 @@ function build_cert_table() { $certhtml .= '<td>' . htmlspecialchars($cert['descr']) . $revokedstr . '</td>'; $certhtml .= '<td>' . htmlspecialchars($ca['descr']) . '</td>'; $certhtml .= '<td>'; - $certhtml .= '<a name="delcert[]" class="btn btn-xs btn-danger" onclick="document.getElementById(\'certid\').value=\'' . $i. '\';'; - $certhtml .= 'document.getElementById(\'userid\').value=\'' . $i . '\';'; - $certhtml .= 'document.getElementById(\'act\').value=\'' . 'delcert' . '\';"' . 'title="'; - $certhtml .= gettext('Do you really want to remove this certificate association? (Certificate will not be deleted)') . '")' . '">Delete</a>'; + $certhtml .= '<a id="delcert' . $i .'" class="btn btn-xs btn-warning" title="'; + $certhtml .= gettext('Remove this certificate association? (Certificate will not be deleted)') . '">Delete</a>'; $certhtml .= '</td>'; $certhtml .= '</tr>'; $i++; @@ -451,8 +452,9 @@ include("head.inc"); if ($input_errors) print_input_errors($input_errors); + if ($savemsg) - print_info_box($savemsg); + print_info_box($savemsg, 'success'); $tab_array = array(); $tab_array[] = array(gettext("Users"), true, "system_usermanager.php"); @@ -531,7 +533,6 @@ $form = new Form; if ($act == "new" || $act == "edit" || $input_errors): - $form->addGlobal(new Form_Input( 'act', null, @@ -876,7 +877,6 @@ events.push(function(){ $("#movetodisabled").prop('type','button'); $("#movetoenabled").prop('type','button'); - // On click . . $("#movetodisabled").click(function() { moveOptions($('[name="groups[]"] option'), $('[name="sysgroups[]"]')); @@ -894,6 +894,15 @@ events.push(function(){ hideInput('authorizedkeys', !this.checked); }); + $('[id^=delcert]').click(function(event) { + if(confirm(event.target.title)) { + $('#certid').val(event.target.id.match(/\d+$/)[0]); + $('#userid').val('<?=$id;?>'); + $('#act').val('delcert'); + $('form').submit(); + } + }); + // On page load . . hideClass('cert-options', true); hideInput('authorizedkeys', true); |