cca2f6f4de6af0dcb483db14cb388881f7226981
[cacert-devel.git] / pages / account / 5.php
1 <? /*
2 LibreSSL - CAcert web application
3 Copyright (C) 2004-2008 CAcert Inc.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; version 2 of the License.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 */ ?>
18 <? $viewall=0; if(array_key_exists('viewall',$_REQUEST)) $viewall=intval($_REQUEST['viewall']); ?>
19 <form method="post" action="account.php">
20 <table align="center" valign="middle" border="0" cellspacing="0" cellpadding="0" class="wrapper">
21 <tr>
22 <td colspan="10" class="title"><?=_("Client Certificates")?> - <a href="account.php?id=5&amp;viewall=<?=!$viewall?>"><?=$viewall?_("Hide old certificates"):_("View all certificates")?></a></td>
23 </tr>
24 <tr>
25 <td class="DataTD"><?=_("Renew/Revoke/Delete")?></td>
26 <td class="DataTD"><?=_("Status")?></td>
27 <td class="DataTD"><?=_("Email Address")?></td>
28 <td class="DataTD"><?=_("SerialNumber")?></td>
29 <td class="DataTD"><?=_("Revoked")?></td>
30 <td class="DataTD"><?=_("Expires")?></td>
31 <td class="DataTD"><?=_("Login")?></td>
32 <td colspan="2" class="DataTD"><?=_("Comment *")?></td>
33 <?
34 $query = "select UNIX_TIMESTAMP(`emailcerts`.`created`) as `created`,
35 UNIX_TIMESTAMP(`emailcerts`.`expire`) - UNIX_TIMESTAMP() as `timeleft`,
36 UNIX_TIMESTAMP(`emailcerts`.`expire`) as `expired`,
37 `emailcerts`.`expire`,
38 `emailcerts`.`revoked` as `revoke`,
39 UNIX_TIMESTAMP(`emailcerts`.`revoked`) as `revoked`,
40 `emailcerts`.`id`,
41 `emailcerts`.`CN`,
42 `emailcerts`.`serial`,
43 `emailcerts`.`disablelogin` as `disablelogin`,
44 `emailcerts`.`description`
45 from `emailcerts`
46 where `emailcerts`.`memid`='".$_SESSION['profile']['id']."'
47 ";
48 if($viewall != 1)
49 $query .= " AND `revoked`=0 AND `renewed`=0 ";
50 $query .= " GROUP BY `emailcerts`.`id` ";
51 if($viewall != 1)
52 $query .= " HAVING `timeleft` > 0 ";
53 $query .= " ORDER BY `emailcerts`.`modified` desc";
54 // echo $query."<br>\n";
55 $res = mysql_query($query);
56 if(mysql_num_rows($res) <= 0)
57 {
58 ?>
59 <tr>
60 <td colspan="10" class="DataTD"><?=_("No client certificates are currently listed.")?></td>
61 </tr>
62 <? } else {
63 while($row = mysql_fetch_assoc($res))
64 {
65 if($row['timeleft'] > 0)
66 $verified = _("Valid");
67 if($row['timeleft'] < 0)
68 $verified = _("Expired");
69 if($row['expired'] == 0)
70 $verified = _("Pending");
71 if($row['revoked'] > 0)
72 $verified = _("Revoked");
73 if($row['revoked'] == 0)
74 $row['revoke'] = _("Not Revoked");
75 ?>
76 <tr>
77 <? if($verified != _("Pending") && $verified != _("Revoked")) { ?>
78 <td class="DataTD"><input type="checkbox" name="revokeid[]" value="<?=$row['id']?>"></td>
79 <td class="DataTD"><?=$verified?></td>
80 <td class="DataTD"><a href="account.php?id=6&amp;cert=<?=$row['id']?>"><?=(trim($row['CN'])=="" ? _("empty") : $row['CN'])?></a></td>
81 <? } else if($verified != _("Revoked")) { ?>
82 <td class="DataTD"><input type="checkbox" name="delid[]" value="<?=$row['id']?>"></td>
83 <td class="DataTD"><?=$verified?></td>
84 <td class="DataTD"><?=(trim($row['CN'])=="" ? _("empty") : $row['CN'])?></td>
85 <? } else { ?>
86 <td class="DataTD">&nbsp;</td>
87 <td class="DataTD"><?=$verified?></td>
88 <td class="DataTD"><?=(trim($row['CN'])=="" ? _("empty") : $row['CN'])?></td>
89 <? } ?>
90 <td class="DataTD"><?=$row['serial']?></td>
91 <td class="DataTD"><?=$row['revoke']?></td>
92 <td class="DataTD"><?=$row['expire']?></td>
93 <td class="DataTD">
94 <input type="checkbox" name="disablelogin_<?=$row['id']?>" value="1" <?=$row['disablelogin']?"":'checked="checked"'?>/>
95 <input type="hidden" name="cert_<?=$row['id']?>" value="1" />
96 </td>
97 <td class="DataTD"><input name="comment_<?=$row['id']?>" type="text" value="<?=htmlspecialchars($row['description'])?>" /></td>
98 <td class="DataTD"><input type="checkbox" name="check_comment_<?=$row['id']?>" /></td>
99 </tr>
100 <? } ?>
101 <tr>
102 <td class="DataTD" colspan="9">
103 <a href="account.php?id=5&amp;viewall=<?=!$viewall?>"><b><?=$viewall?_("Hide old certificates"):_("View all certificates")?></b></a>
104 </td>
105 </tr>
106
107 <tr>
108 <td class="DataTD" colspan="9">
109 <?=_('* Comment is NOT included in the certificate as it is intended for your personal reference only. To change the comment tick the checkbox and hit "Change Settings".')?>
110 </td>
111 </tr>
112
113 <tr>
114 <td class="DataTD" colspan="5"><input type="submit" name="renew" value="<?=_("Renew")?>" />&#160;&#160;&#160;&#160;
115 <input type="submit" name="revoke" value="<?=_("Revoke/Delete")?>" /></td>
116
117 <td class="DataTD" colspan="4"><input type="submit" name="change" value="<?=_("Change settings")?>" /> </td>
118
119 </tr>
120 <? } ?>
121 </table>
122 <input type="hidden" name="oldid" value="<?=$id?>" />
123 <input type="hidden" name="csrf" value="<?=make_csrf('clicerchange')?>" />
124 </form>
125 <p><?=_("From here you can delete pending requests, or revoke valid certificates.")?></p>
126 <p><?=_("Login").": "._("By allowing certificate login, this certificate can be used to login into your account at https://secure.cacert.org/ .")?></p>