diff options
author | Dexter Morgan <dmorgan@mageia.org> | 2010-11-26 14:56:29 +0000 |
---|---|---|
committer | Colin Guthrie <colin@mageia.org> | 2014-09-15 20:44:39 +0100 |
commit | 80fc05854135e575e7811b55f521e8bb9855a2ee (patch) | |
tree | 72b18ca48983a3ebb7fe2f0d658d099f5854f3db /template/en/default/account | |
download | bugzilla-80fc05854135e575e7811b55f521e8bb9855a2ee.tar bugzilla-80fc05854135e575e7811b55f521e8bb9855a2ee.tar.gz bugzilla-80fc05854135e575e7811b55f521e8bb9855a2ee.tar.bz2 bugzilla-80fc05854135e575e7811b55f521e8bb9855a2ee.tar.xz bugzilla-80fc05854135e575e7811b55f521e8bb9855a2ee.zip |
Add custom template with identity support
Diffstat (limited to 'template/en/default/account')
19 files changed, 1807 insertions, 0 deletions
diff --git a/template/en/default/account/auth/login-small.html.tmpl b/template/en/default/account/auth/login-small.html.tmpl new file mode 100644 index 0000000..34e5ff9 --- /dev/null +++ b/template/en/default/account/auth/login-small.html.tmpl @@ -0,0 +1,115 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Jacob Steenhagen <jake@bugzilla.org> + #%] + +[% PROCESS global/variables.none.tmpl %] + +[%# Use the current script name. If an empty name is returned, + # then we are accessing the home page. %] + +[% login_target = cgi.url("-relative" => 1, "-query" => 1) %] +[% IF !login_target OR login_target.match("^token.cgi") %] + [% login_target = "index.cgi" %] +[% END %] + +[% login_target = urlbase _ login_target %] + +<li id="mini_login_container[% qs_suffix %]"> + <span class="separator">| </span> + <a id="login_link[% qs_suffix %]" href="?GoAheadAndLogIn=1" + onclick="return show_mini_login_form('[% qs_suffix %]')">Log In</a> + <form action="[% login_target FILTER html %]" method="POST" + class="mini_login bz_default_hidden" + id="mini_login[% qs_suffix FILTER html %]" + onsubmit="return check_mini_login_fields( '[% qs_suffix FILTER html %]' );" + > + <input id="Bugzilla_login[% qs_suffix FILTER html %]" + class="bz_login" + name="Bugzilla_login" + onfocus="mini_login_on_focus('[% qs_suffix FILTER js %]')" + > + <input class="bz_password" + id="Bugzilla_password[% qs_suffix FILTER html %]" + name="Bugzilla_password" + type="password" + > + <input class="bz_password bz_default_hidden bz_mini_login_help" type="text" + id="Bugzilla_password_dummy[% qs_suffix %]" value="password" + onfocus="mini_login_on_focus('[% qs_suffix FILTER js %]')" + > + [% IF Param('rememberlogin') == 'defaulton' || + Param('rememberlogin') == 'defaultoff' + %] + <input type="checkbox" id="Bugzilla_remember[% qs_suffix %]" + name="Bugzilla_remember" value="on" class="bz_remember" + [%+ "checked" IF Param('rememberlogin') == "defaulton" %]> + <label for="Bugzilla_remember[% qs_suffix %]">Remember</label> + [% END %] + <input type="submit" name="GoAheadAndLogIn" value="Log in" + id="log_in[% qs_suffix %]"> + <script type="text/javascript"> + mini_login_constants = { + "login" : "login", + "warning" : "You must set the login and password before logging in." + }; + [%# We need this event to fire after autocomplete, because it does + # something different depending on whether or not there's already + # data in the login and password box. + # However, autocomplete happens at all sorts of different times in + # different browsers (before or after onDOMReady, before or after + # window.onload, in almost all combinations you can imagine). + # The only good solution I found is to time the event 200 + # milliseconds after window.onload for WebKit (doing it immediately + # at onload works in Chrome but not in Safari, but I can't detect + # them separately using YUI), and right after onDOMReady in Gecko. + # The WebKit solution is also fairly guaranteed to work on any + # browser (it's just strange, since the fields only populate 200 ms + # after the page loads), so it's the default. IE doesn't even + # recognize our forms as login forms, so I made it use the Gecko + # method also (since it's nicer visually). Opera never autocompletes + # forms without user interaction, so it also uses the Gecko method. + #%] + if (YAHOO.env.ua.gecko || YAHOO.env.ua.ie || YAHOO.env.ua.opera) { + YAHOO.util.Event.onDOMReady(function() { + init_mini_login_form('[% qs_suffix FILTER html %]'); + }); + } + else { + YAHOO.util.Event.on(window, 'load', function () { + window.setTimeout(function() { + init_mini_login_form('[% qs_suffix FILTER html %]'); + }, 200); + }); + } + </script> + <a href="#" onclick="return hide_mini_login_form('[% qs_suffix %]')">[x]</a> + </form> +</li> +<li id="forgot_container[% qs_suffix %]"> + <span class="separator">| </span> + <a href="http://identity.mageia.org/">Forgot Password</a> + <form action="token.cgi" method="post" id="forgot_form[% qs_suffix %]" + class="mini_forgot bz_default_hidden"> + <label>Login: <input type="text" name="loginname" size="20"></label> + <input id="forgot_button[% qs_suffix %]" value="Reset Password" + type="submit"> + <input type="hidden" name="a" value="reqpw"> + <a href="#" onclick="return hide_forgot_form('[% qs_suffix %]')">[x]</a> + </form> +</li> diff --git a/template/en/default/account/auth/login.html.tmpl b/template/en/default/account/auth/login.html.tmpl new file mode 100644 index 0000000..9a043e4 --- /dev/null +++ b/template/en/default/account/auth/login.html.tmpl @@ -0,0 +1,121 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + # Toms Baugis <toms@myrealbox.com> + #%] + +[%# INTERFACE: + # target: string. URL to go to after login. + #%] + +[% IF !target %] + [% target = "index.cgi" %] +[% END %] + +[% PROCESS global/variables.none.tmpl %] + +[% PROCESS global/header.html.tmpl + title = "Log in to $terms.Bugzilla", + onload = "document.forms['login'].Bugzilla_login.focus()" +%] + +[% USE Bugzilla %] + +<p> + I need a legitimate login and password to continue. +</p> + +<form name="login" action="[% target FILTER html %]" method="POST" +[%- IF Bugzilla.cgi.param("data") %] enctype="multipart/form-data"[% END %]> + <table> + <tr> + <th align="right"><label for="Bugzilla_login">Login:</label></th> + <td> + <input size="35" id="Bugzilla_login" name="Bugzilla_login"> + [% Param('emailsuffix') FILTER html %] + </td> + </tr> + <tr> + <th align="right"><label for="Bugzilla_password">Password:</label></th> + <td> + <input type="password" size="35" id="Bugzilla_password" name="Bugzilla_password"> + </td> + </tr> + + [% IF Param('rememberlogin') == 'defaulton' || + Param('rememberlogin') == 'defaultoff' %] + <tr> + <th> </th> + <td> + <input type="checkbox" id="Bugzilla_remember" name="Bugzilla_remember" value="on" + [%+ "checked" IF Param('rememberlogin') == "defaulton" %]> + <label for="Bugzilla_remember">Remember my Login</label> + </td> + </tr> + [% END %] + + <tr> + <th> </th> + <td> + <input type="checkbox" id="Bugzilla_restrictlogin" name="Bugzilla_restrictlogin" + checked="checked"> + <label for="Bugzilla_restrictlogin">Restrict this session to this IP address + (using this option improves security)</label> + </td> + </tr> + </table> + + [% PROCESS "global/hidden-fields.html.tmpl" + exclude="^Bugzilla_(login|password|restrictlogin)$" %] + + <input type="submit" name="GoAheadAndLogIn" value="Log in" id="log_in"> + + <p> + (Note: you should make sure cookies are enabled for this site. + Otherwise, you will be required to log in frequently.) + </p> +</form> + +[%# Allow the user to create a new account, or request a token to change + # their password, assuming that our auth method allows that. + #%] + + [% IF Param("createemailregexp") && user.authorizer.user_can_create_account %] + <hr> + + <p> + If you don't have a [% terms.Bugzilla %] account, you can + <a href="createaccount.cgi">create a new account</a>. + </p> + [% END %] + + [% IF user.authorizer.can_change_password %] + <hr> + + <a name="forgot"></a> + <form method="get" action="token.cgi"> + <input type="hidden" name="a" value="reqpw"> + If you have an account, but have forgotten your password, + enter your login name below and submit a request + to change your password.<br> + <input size="35" name="loginname"> + <input type="submit" id="request" value="Reset Password"> + </form> + [% END %] + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/cancel-token.txt.tmpl b/template/en/default/account/cancel-token.txt.tmpl new file mode 100644 index 0000000..6619ded --- /dev/null +++ b/template/en/default/account/cancel-token.txt.tmpl @@ -0,0 +1,106 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + # Tobias Burnus <burnus@net-b.de> + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% emailaddress %] +Subject: [% PROCESS subject %] +X-Bugzilla-Type: admin + +A request was canceled from [% remoteaddress %]. + +If you did not request this, it could be either an honest +mistake or someone attempting to break into your [% terms.Bugzilla %] account. + +Take a look at the information below and forward this email +to [% Param('maintainer') %] if you suspect foul play. + + Token: [% token %] + Token Type: [% tokentype %] + User: [% emailaddress %] + Issue Date: [% issuedate FILTER time("%Y-%m-%d %H:%M:%S %Z", timezone) %] + Event Data: [% eventdata %] +Canceled Because: [% PROCESS cancelactionmessage %] + +[% BLOCK subject %] + [% IF tokentype == 'new_account' %] + User account creation request canceled + [% ELSIF tokentype == 'password' %] + Password change request canceled + [% ELSIF tokentype == 'emailnew' OR tokentype == 'emailold' %] + Email change request canceled + [% ELSE %] + [% tokentype %] token canceled + [% END %] +[% END %] + +[% BLOCK cancelactionmessage %] + [% IF cancelaction == 'account_exists' %] + Account [% email %] already exists. + + [% ELSIF cancelaction == 'email_change_canceled' %] + The request to change the email address for + the [% old_email %] account to [% new_email %] has + been canceled. + + [% ELSIF cancelaction == 'email_change_canceled_reinstated' %] + The request to change the email address for your account + to [% new_email %] has been canceled. Your old account + settings have been reinstated. + + [% ELSIF cancelaction == 'emailold_change_canceled' %] + The request to change the email address for your account + to [% new_email %] has been canceled. + + [% ELSIF cancelaction == 'password_change_canceled' %] + You have requested cancellation. + + [% ELSIF cancelaction == 'account_creation_canceled' %] + The creation of the user account [% emailaddress %] + has been canceled. + + [% ELSIF cancelaction == 'user_logged_in' %] + You have logged in. + + [% ELSIF cancelaction == 'wrong_token_for_changing_passwd' %] + You have tried to use the token to change the password. + + [% ELSIF cancelaction == 'wrong_token_for_cancelling_email_change' %] + You have tried to use the token to cancel the email address change. + + [% ELSIF cancelaction == 'wrong_token_for_confirming_email_change' %] + You have tried to use the token to confirm the email address change. + + [% ELSIF cancelaction == 'wrong_token_for_creating_account' %] + You have tried to use the token to create a user account. + + [% ELSE %] + [%# Give sensible error if the cancel-token function is used incorrectly. + #%] + You are using [% terms.Bugzilla %]'s cancel-token function incorrectly. You + passed in the string '[% cancelaction %]'. The correct use is to pass + in a tag, and define that tag in the file cancel-token.txt.tmpl. + + If you are a [% terms.Bugzilla %] end-user seeing this message, please forward this + email to [% Param('maintainer') %]. + [% END %] +[% END %] diff --git a/template/en/default/account/create.html.tmpl b/template/en/default/account/create.html.tmpl new file mode 100644 index 0000000..5b82201 --- /dev/null +++ b/template/en/default/account/create.html.tmpl @@ -0,0 +1,79 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE + # none + # + # Param("maintainer") is used to display the maintainer's email. + # Param("emailsuffix") is used to pre-fill the email field. + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% title = BLOCK %] + Create a new [% terms.Bugzilla %] account +[% END %] + +[% PROCESS global/header.html.tmpl + title = title + onload = "document.forms['account_creation_form'].login.focus();" %] + +<p> + To create a [% terms.Bugzilla %] account, all you need to do is to enter +[% IF Param('emailsuffix') == '' %] + a legitimate email address. +[% ELSE %] + an account name which when combined with [% Param('emailsuffix') %] + corresponds to an address where you receive email. +[% END %] + You will receive an email at this address to confirm the creation of your + account. <b>You will not be able to log in until you receive the email.</b> + If it doesn't arrive within a reasonable amount of time, you may contact + the maintainer of this [% terms.Bugzilla %] installation + at <a href="mailto:[% Param("maintainer") %]">[% Param("maintainer") %]</a>. +</p> + +[% IF Param('createemailregexp') == '.*' && Param('emailsuffix') == '' %] +<p> + <b>PRIVACY NOTICE:</b> [% terms.Bugzilla %] is an open [% terms.bug %] + tracking system. Activity on most [% terms.bugs %], including email + addresses, will be visible to the public. We <b>recommend</b> using a + secondary account or free web email service (such as Gmail, Yahoo, + Hotmail, or similar) to avoid receiving spam at your primary email address. +</p> +[% END %] + +<form id="account_creation_form" method="get" action="createaccount.cgi"> + <table> + <tr> + <td align="right"> + <b>Email address:</b> + </td> + <td> + <input size="35" id="login" name="login"> + [% Param('emailsuffix') FILTER html %] + </td> + </tr> + </table> + <br> + <input type="submit" id="send" value="Send"> +</form> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/created.html.tmpl b/template/en/default/account/created.html.tmpl new file mode 100644 index 0000000..d794198 --- /dev/null +++ b/template/en/default/account/created.html.tmpl @@ -0,0 +1,40 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + # Frédéric Buclin <LpSolit@gmail.com> + #%] + +[%# INTERFACE: + # login: string. The user's Bugzilla login email address. + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% title = BLOCK %] + Request for new user account '[% login FILTER html %]' submitted +[% END %] + +[% PROCESS global/header.html.tmpl title = title %] + +<p> + A confirmation email has been sent containing a link to continue + creating an account. The link will expire if an account is not + created within [% constants.MAX_TOKEN_AGE FILTER html %] days. +</p> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/email/change-new.txt.tmpl b/template/en/default/account/email/change-new.txt.tmpl new file mode 100644 index 0000000..5803b02 --- /dev/null +++ b/template/en/default/account/email/change-new.txt.tmpl @@ -0,0 +1,41 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% emailaddress %] +Subject: [% terms.Bugzilla %] Change Email Address Request +X-Bugzilla-Type: admin + +[%+ terms.Bugzilla %] has received a request to change the email address +for the account [% oldemailaddress %] to your address. + +To confirm the change, visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cfmem + +If you are not the person who made this request, or you wish to cancel +this request, visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cxlem + +If you do nothing, the request will lapse after [% constants.MAX_TOKEN_AGE %] days +(on [% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z") %]). diff --git a/template/en/default/account/email/change-old.txt.tmpl b/template/en/default/account/email/change-old.txt.tmpl new file mode 100644 index 0000000..6b77744 --- /dev/null +++ b/template/en/default/account/email/change-old.txt.tmpl @@ -0,0 +1,46 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + #%] +[%# INTERFACE: + # emailaddress: string. The user's old Bugzilla login email address. + # newemailaddress: string. The user's new Bugzilla login email address. + # token: string. The token associated with this change. + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% emailaddress %] +Subject: [% terms.Bugzilla %] Change Email Address Request +Importance: High +X-MSMail-Priority: High +X-Priority: 1 +X-Bugzilla-Type: admin + +[%+ terms.Bugzilla %] has received a request to change the email address +for your account to [%+ newemailaddress %]. + +If you are not the person who made this request, or you wish to cancel +this request, visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cxlem + +If you do nothing, and [%+ newemailaddress %] confirms this request, +the change will be made permanent after [% constants.MAX_TOKEN_AGE %] days +(on [% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z") %]). diff --git a/template/en/default/account/email/confirm-new.html.tmpl b/template/en/default/account/email/confirm-new.html.tmpl new file mode 100644 index 0000000..ed0ff34 --- /dev/null +++ b/template/en/default/account/email/confirm-new.html.tmpl @@ -0,0 +1,76 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # Contributor(s): Frédéric Buclin <LpSolit@gmail.com> + #%] + +[%# INTERFACE: + # token: string. The token to be used in the user account creation. + # email: email address of the user account. + # expiration_ts: expiration date of the token. + #%] + +[% title = BLOCK %]Create a new user account for '[% email FILTER html %]'[% END %] +[% PROCESS "global/header.html.tmpl" + title = title + onload = "document.forms['confirm_account_form'].realname.focus();" %] + +<div> + To create your account, you must enter a password in the form below. + Your email address and Real Name (if provided) will be shown with + changes you make. +</div> + +<form id="confirm_account_form" method="post" action="token.cgi"> + <input type="hidden" name="t" value="[% token FILTER html %]"> + <input type="hidden" name="a" value="confirm_new_account"> + <table> + <tr> + <th align="right">Email Address:</th> + <td>[% email FILTER html %]</td> + </tr> + <tr> + <th align="right"><small><i>(OPTIONAL)</i></small> <label for="realname">Real Name</label>:</th> + <td><input type="text" id="realname" name="realname" value=""></td> + </tr> + <tr> + <th align="right"><label for="passwd1">Type your password</label>:</th> + <td><input type="password" id="passwd1" name="passwd1" value=""></td> + </tr> + <tr> + <th align="right"><label for="passwd2">Confirm your password</label>:</th> + <td><input type="password" id="passwd2" name="passwd2" value=""></td> + </tr> + <tr> + <th align="right"> </th> + <td><input type="submit" id="confirm" value="Send"></td> + </tr> + </table> +</form> + +<p> + This account will not be created if this form is not completed by + <u>[% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z") %]</u>. +</p> + +<p> + If you do not wish to create an account with this email click the + cancel account button below and your details will be forgotten. +</p> + +<form id="cancel_account_form" method="post" action="token.cgi"> + <input type="hidden" name="t" value="[% token FILTER html %]"> + <input type="hidden" name="a" value="cancel_new_account"> + <input type="submit" id="confirm" value="Cancel Account"> +</form> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/email/confirm.html.tmpl b/template/en/default/account/email/confirm.html.tmpl new file mode 100644 index 0000000..39add32 --- /dev/null +++ b/template/en/default/account/email/confirm.html.tmpl @@ -0,0 +1,47 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + #%] + +[%# INTERFACE: + # token: string. The token to be used in this address change. + #%] + +[% title = "Confirm Change Email" %] +[% PROCESS global/header.html.tmpl %] + +<p> + To change your email address, please enter the old email address: +</p> + +<form method="post" action="token.cgi"> + <input type="hidden" name="t" value="[% token FILTER html %]"> + <input type="hidden" name="a" value="chgem"> + <table> + <tr> + <th align="right">Old Email Address:</th> + <td><input type="text" name="email" size="36"></td> + </tr> + <tr> + <th align="right"> </th> + <td><input type="submit" id="confirm" value="Submit"></td> + </tr> + </table> +</form> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/email/request-new.txt.tmpl b/template/en/default/account/email/request-new.txt.tmpl new file mode 100644 index 0000000..c56054b --- /dev/null +++ b/template/en/default/account/email/request-new.txt.tmpl @@ -0,0 +1,56 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # Contributor(s): Frédéric Buclin <LpSolit@gmail.com> + #%] + +[%# INTERFACE: + # token: random string used to authenticate the transaction. + # expiration_ts: expiration date of the token. + # email: email address of the new account. + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% email %] +Subject: [% terms.Bugzilla %]: confirm account creation +X-Bugzilla-Type: admin + +[%+ terms.Bugzilla %] has received a request to create a user account +using your email address ([% email %]). + +To continue creating an account using this email address, visit the +following link by [% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z") %]: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=request_new_account + +If you did not receive this email before [% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z") %] or +you wish to create an account using a different email address you can begin +again by going to: + +[%+ urlbase %]createaccount.cgi + +[% IF Param('createemailregexp') == '.*' && Param('emailsuffix') == '' %] +PRIVACY NOTICE: [% terms.Bugzilla %] is an open [% terms.bug %] tracking system. Activity on most +[%+ terms.bugs %], including email addresses, will be visible to the public. We recommend +using a secondary account or free web email service (such as Gmail, Yahoo, +Hotmail, or similar) to avoid receiving spam at your primary email address. +[% END %] + +If you do not wish to create an account, or if this request was made in +error you can do nothing or visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cancel_new_account + +If the above links do not work, or you have any other issues regarding +your account, please contact administration at [% Param('maintainer') %]. diff --git a/template/en/default/account/password/forgotten-password.txt.tmpl b/template/en/default/account/password/forgotten-password.txt.tmpl new file mode 100644 index 0000000..574975c --- /dev/null +++ b/template/en/default/account/password/forgotten-password.txt.tmpl @@ -0,0 +1,40 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% emailaddress %] +Subject: [% terms.Bugzilla %] Change Password Request +X-Bugzilla-Type: admin + +You have (or someone impersonating you has) requested to change your +[%+ terms.Bugzilla %] password. To complete the change, visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cfmpw + +If you are not the person who made this request, or you wish to cancel +this request, visit the following link: + +[%+ urlbase %]token.cgi?t=[% token FILTER url_quote %]&a=cxlpw + +If you do nothing, the request will lapse after [% constants.MAX_TOKEN_AGE %] days +(on [% expiration_ts FILTER time("%B %e, %Y at %H:%M %Z", timezone) %]) or when you +log in successfully. diff --git a/template/en/default/account/password/set-forgotten-password.html.tmpl b/template/en/default/account/password/set-forgotten-password.html.tmpl new file mode 100644 index 0000000..ca134a4 --- /dev/null +++ b/template/en/default/account/password/set-forgotten-password.html.tmpl @@ -0,0 +1,55 @@ + [%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[% title = "Change Password" %] +[% PROCESS global/header.html.tmpl %] + +<p> + To change your password, enter a new password twice: +</p> + +<form method="post" action="token.cgi"> + <input type="hidden" name="t" value="[% token FILTER html %]"> + <input type="hidden" name="a" value="chgpw"> + <table> + <tr> + <th align="right">New Password:</th> + <td> + <input type="password" name="password"> + </td> + </tr> + + <tr> + <th align="right">New Password Again:</th> + <td> + <input type="password" name="matchpassword"> + </td> + </tr> + + <tr> + <th align="right"> </th> + <td> + <input type="submit" id="update" value="Submit"> + </td> + </tr> + </table> +</form> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/prefs/account.html.tmpl b/template/en/default/account/prefs/account.html.tmpl new file mode 100644 index 0000000..0457ff8 --- /dev/null +++ b/template/en/default/account/prefs/account.html.tmpl @@ -0,0 +1,99 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE: + # realname: string. The user's real name, if any. + # login_change_date: string. The date the email change will be complete. (optional) + # new_login_name: string. The user's new Bugzilla login whilst not confirmed. (optional) + #%] + +<table> + <tr> + <td colspan="3"> + Please enter your existing password to confirm account changes. + </td> + </tr> + <tr> + <th align="right">Password:</th> + <td> + <input type="hidden" name="old_login" value="[% user.login FILTER html %]"> + <input type="password" name="old_password"> + </td> + </tr> + <tr> + <td colspan="2"><hr></td> + </tr> + [% IF user.authorizer.can_change_password %] + <tr> + <th align="right">New password:</th> + <td> + <input type="password" name="new_password1"> + </td> + </tr> + + <tr> + <th align="right">Confirm new password:</th> + <td> + <input type="password" name="new_password2"> + </td> + </tr> + [% END %] + + <tr> + <th align="right">Your real name (optional, but encouraged):</th> + <td> + <input size="35" name="realname" value="[% realname FILTER html %]"> + </td> + </tr> + + [% IF user.authorizer.can_change_email && Param('allowemailchange') %] + [% IF login_change_date %] + [% IF new_login_name %] + <tr> + <th align="right">Pending email address:</th> + <td>[% new_login_name FILTER html %]</td> + </tr> + <tr> + <th align="right">Change request expires:</th> + <td>[% login_change_date FILTER time %]</td> + </tr> + [% ELSE %] + <tr> + <th align="right">Confirmed email address:</th> + <td>[% user.login FILTER html %]</td> + </tr> + <tr> + <th align="right">Completion date:</th> + <td>[% login_change_date FILTER time %]</td> + </tr> + [% END %] + [% ELSE %] + <tr> + <th align="right">New email address:</th> + <td> + <input size="35" name="new_login_name"> + </td> + </tr> + [% END %] + [% END %] + + [% Hook.process('field') %] + +</table> diff --git a/template/en/default/account/prefs/email.html.tmpl b/template/en/default/account/prefs/email.html.tmpl new file mode 100644 index 0000000..a4d22db --- /dev/null +++ b/template/en/default/account/prefs/email.html.tmpl @@ -0,0 +1,309 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + # Myk Melez <myk@mozilla.org> + # Shane H. W. Travis <travis@sedsystems.ca> + #%] + +[%# INTERFACE: + # watchedusers: string. + # Comma-separated list of email addresses this user watches. + # watchers: array. + # Array of users watching this user's account. + # excludeself: boolean. + # True if user is not receiving self-generated mail. + # <rolename>: Multiple hashes, one for each rolename (e.g. assignee; see + # below), keyed by reasonname (e.g. comments; again, see + # below). The value is a boolean - true if the user is + # receiving mail for that reason when in that role. + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% useqacontact = Param('useqacontact') %] +[% usevotes = Param('usevotes') %] + +<p> + If you don't like getting a notification for "trivial" + changes to [% terms.bugs %], you can use the settings below to + filter some or all notifications. +</p> + +<script type="text/javascript"> +<!-- +function SetCheckboxes(setting) { + for (var count = 0; count < document.userprefsform.elements.length; count++) { + var theinput = document.userprefsform.elements[count]; + if (theinput.type == "checkbox" && !theinput.disabled) { + if (theinput.name.match("neg")) { + theinput.checked = false; + } + else { + theinput.checked = setting; + } + } + } +} + +document.write('<input type="button" value="Enable All Mail" onclick="SetCheckboxes(true); return false;">\n'); +document.write('<input type="button" value="Disable All Mail" onclick="SetCheckboxes(false); return false;">\n'); +// --> +</script> + +<hr> + +<table> + <tr> + <td colspan="2"> + <b>Global options:</b> + </td> + </tr> + + <tr> + <td width="150"></td> + <td> + [% prefname = "email-$constants.REL_ANY-$constants.EVT_FLAG_REQUESTED" %] + <input type="checkbox" name="[% prefname %]" id="[% prefname %]" + value="1" + [% " checked" IF + mail.${constants.REL_ANY}.${constants.EVT_FLAG_REQUESTED} %]> + <label for="[% prefname %]">Email me when someone asks me to set a flag</label> + <br> + </td> + </tr> + <tr> + <td width="150"></td> + <td> + [% prefname = "email-$constants.REL_ANY-$constants.EVT_REQUESTED_FLAG" %] + <input type="checkbox" name="[% prefname %]" id="[% prefname %]" + value="1" + [% " checked" IF + mail.${constants.REL_ANY}.${constants.EVT_REQUESTED_FLAG} %]> + <label for="[% prefname %]">Email me when someone sets a flag I asked for</label> + <br> + </td> + </tr> +[% IF user.is_global_watcher %] + <tr> + <td width="150"></td> + <td> + You are watching all [% terms.bugs %]. To be removed from this role, + contact + <a href="mailto:[% Param("maintainer") %]">[% Param("maintainer") %]</a>. + </td> + </tr> +[% END %] +</table> + +<hr> +<b>Field/recipient specific options:</b> +<br> +<br> + +[% events = [ + { id = constants.EVT_ADDED_REMOVED, + description = "I'm added to or removed from this capacity" }, + { id = constants.EVT_BUG_CREATED, + description = "A new $terms.bug is created" }, + { id = constants.EVT_OPENED_CLOSED, + description = "The $terms.bug is resolved or reopened" }, + { id = constants.EVT_PROJ_MANAGEMENT, + description = "The priority, status, severity, or milestone changes" }, + { id = constants.EVT_COMMENT, + description = "New comments are added" }, + { id = constants.EVT_ATTACHMENT, + description = "New attachments are added" }, + { id = constants.EVT_ATTACHMENT_DATA, + description = "Some attachment data changes" }, + { id = constants.EVT_KEYWORD, + description = "The keywords field changes" }, + { id = constants.EVT_CC, + description = "The CC field changes" }, + { id = constants.EVT_DEPEND_BLOCK, + description = "The dependency tree changes" }, + { id = constants.EVT_OTHER, + description = "Any field not mentioned above changes" }, +] %] + +[% neg_events = [ + { id = constants.EVT_UNCONFIRMED, + description = "The $terms.bug is in the UNCONFIRMED state" }, + { id = constants.EVT_CHANGED_BY_ME, + description = "The change was made by me" }, +] %] + +[% relationships = [ + { id = constants.REL_ASSIGNEE, + description = "Assignee" }, + { id = constants.REL_QA, + description = "QA Contact" }, + { id = constants.REL_REPORTER, + description = "Reporter" }, + { id = constants.REL_CC, + description = "CCed" }, + { id = constants.REL_VOTER, + description = "Voter" }, +] %] + +<table class="bz_emailprefs" border="1"> + <tr> + <td colspan="[% (useqacontact AND usevotes) ? '5' : + ((useqacontact OR usevotes) ? '4' : '3') %]" + align="center" width="50%"> + <b>When my relationship to this [% terms.bug %] is:</b> + </td> + <td rowspan="2" width="40%"> + <b>I want to receive mail when:</b> + </td> + </tr> + + <tr> + [% FOREACH relationship = relationships %] + [% NEXT IF (relationship.id == constants.REL_QA AND NOT useqacontact) OR + (relationship.id == constants.REL_VOTER AND NOT usevotes) %] + <th align="center" width="9%"> + [% relationship.description FILTER html %] + </th> + [% END %] + </tr> + + [% FOREACH event = events %] + [% count = loop.count() %] + <tr class="bz_row_[% count % 2 == 1 ? "odd" : "even" %]"> + [% FOREACH relationship = relationships %] + [% NEXT IF (relationship.id == constants.REL_QA AND NOT useqacontact) OR + (relationship.id == constants.REL_VOTER AND NOT usevotes) %] + <td align="center"> + <input type="checkbox" + name="email-[% relationship.id %]-[% event.id %]" + value="1" + [%# The combinations don't always make sense; disable a couple %] + [% IF event.id == constants.EVT_ADDED_REMOVED AND + (relationship.id == constants.REL_REPORTER OR + relationship.id == constants.REL_VOTER) %] + disabled + [% ELSIF mail.${relationship.id}.${event.id} %] + checked + [% END %]> + </td> + [% END %] + <td> + [% event.description FILTER html %] + </td> + </tr> + [% END %] + + <tr> + <td colspan="[% (useqacontact AND usevotes) ? '5' : + ((useqacontact OR usevotes) ? '4' : '3') %]" + align="center" width="50%"> + + </td> + <td width="40%"> + <b>but not when (overrides above):</b> + </td> + </tr> + + [% FOREACH event = neg_events %] + [% count = loop.count() %] + <tr class="bz_row_[% count % 2 == 1 ? "odd" : "even" %]"> + [% FOREACH relationship = relationships %] + [% NEXT IF (relationship.id == constants.REL_QA AND NOT useqacontact) OR + (relationship.id == constants.REL_VOTER AND NOT usevotes) %] + <td align="center"> + <input type="checkbox" + name="neg-email-[% relationship.id %]-[% event.id %]" + value="1" + [% " checked" IF NOT mail.${relationship.id}.${event.id} %]> + </td> + [% END %] + <td> + [% event.description FILTER html %] + </td> + </tr> + [% END %] + +</table> + +[%# Add hidden form fields for fields not used %] +[% FOREACH event = events %] + [% FOREACH relationship = relationships %] + [% IF (relationship.id == constants.REL_QA AND NOT useqacontact) OR + (relationship.id == constants.REL_VOTER AND NOT usevotes) %] + <input type="hidden" + name="email-[% relationship.id %]-[% event.id %]" + value="[% mail.${relationship.id}.${event.id} ? "1" : "0" %]"> + [% END %] + [% END %] +[% END %] + +[% FOREACH event = neg_events %] + [% FOREACH relationship = relationships %] + [% IF (relationship.id == constants.REL_QA AND NOT useqacontact) OR + (relationship.id == constants.REL_VOTER AND NOT usevotes) %] + <input type="hidden" + name="neg-email-[% relationship.id %]-[% event.id %]" + value="[% mail.${relationship.id}.${event.id} ? "0" : "1" %]"> + [% END %] + [% END %] +[% END %] + +<hr> +<b>User Watching</b> + +<p> +If you watch a user, it is as if you are standing in their shoes for the +purposes of getting email. Email is sent or not according to <u>your</u> +preferences for <u>their</u> relationship to the [% terms.bug %] +(e.g. Assignee). +</p> + +<p> +[% IF watchedusers.size %] +You are watching everyone in the following list: + </p> + <p> + <select id="watched_by_you" name="watched_by_you" multiple="multiple" size="5"> + [% FOREACH w = watchedusers %] + <option value="[% w FILTER html %]">[% w FILTER html %]</option> + [% END %] + </select> <br /> + <input type="checkbox" id="remove_watched_users" name="remove_watched_users"> + <label for="remove_watched_users">Remove selected users from my watch list</label> +[% ELSE %] +You are currently not watching any users. +[% END %] +</p> + +<p><a name="new_watched_by_you" id="new_watched_by_you">Add users to my watch list (comma separated list)</a>: + <input size="60" name="new_watchedusers" value=""> +</p> + +<p><a name="watching_you" id="watching_you">Users watching you</a>:<br> + [% IF watchers.size %] + [% FOREACH watcher = watchers %] + [% watcher FILTER html %] <br> + [% END %] + [% ELSE %] + <i>No one</i> + [% END %] +</p> + +<hr> + +<br> diff --git a/template/en/default/account/prefs/permissions.html.tmpl b/template/en/default/account/prefs/permissions.html.tmpl new file mode 100644 index 0000000..5e8dc9c --- /dev/null +++ b/template/en/default/account/prefs/permissions.html.tmpl @@ -0,0 +1,93 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE: + # has_bits: array of hashes. May be empty. + # name => Names of the permissions the user has. + # desc => Descriptions of the permissions the user has. + # set_bits: array of hashes. May be empty. + # name => Names of the permissions the user can set for + # other people. + # desc => Descriptions of the permissions the user can set for + # other people. + #%] + +[% PROCESS global/variables.none.tmpl %] + +<table align="center"> + <tr> + <td> + [% IF has_bits.size %] + You have the following permission bits set on your account: + <table align="center"> + [% FOREACH bit_description = has_bits %] + <tr> + <td>[% bit_description.name FILTER html %]</td> + <td>[% bit_description.desc FILTER html_light %]</td> + </tr> + [% END %] + </table> + + [% FOREACH privs = ["editcomponents", "canconfirm", "editbugs"] %] + [% SET products = ${"local_$privs"} %] + [% IF products && products.size %] + <br> + <p> + You also have local '[% privs FILTER html %]' privileges + for the following products: + </p> + <p> + [% FOREACH product = products %] + [% product.name FILTER html %]<br> + [% END %] + </p> + [% END %] + [% END %] + + [% ELSE %] + There are no permission bits set on your account. + [% END %] + + [% IF user.in_group('editusers') %] + <br> + You have editusers privileges. You can turn on and off + all permissions for all users. + [% ELSIF set_bits.size %] + <br> + And you can turn on or off the following bits for + <a href="editusers.cgi">other users</a>: + <table align="center"> + [% FOREACH bit_description = set_bits %] + <tr> + <td>[% bit_description.name FILTER html %]</td> + <td>[% bit_description.desc FILTER html_light %]</td> + </tr> + [% END %] + </table> + [% END %] + + [% IF user.in_group('bz_sudoers') %] + <br> + You are a member of the <b>bz_sudoers</b> group, so you can + <a href="relogin.cgi?action=prepare-sudo">impersonate someone else</a>. + [% END %] + </td> + </tr> +</table> diff --git a/template/en/default/account/prefs/prefs.html.tmpl b/template/en/default/account/prefs/prefs.html.tmpl new file mode 100644 index 0000000..71e411d --- /dev/null +++ b/template/en/default/account/prefs/prefs.html.tmpl @@ -0,0 +1,112 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + # Frédéric Buclin <LpSolit@gmail.com> + #%] + +[%# INTERFACE: + # tabs: List of hashes. May not be empty. Each hash has three members: + # name: string. Name of the tab (used internally.) + # description: string. Description of the tab (used in tab title). + # saveable: boolean. True if tab has a form which can be submitted. + # True if user is not receiving self-generated mail. + # Note: For each tab name, a template "prefs/${tab.name}.tmpl" must exist, + # and its interface must be fulfilled. + # current_tab: A direct reference to one of the hashes in the tabs list. + # This tab will be displayed. + # changes_saved: boolean/string. True if the CGI processed form data before + # displaying anything, and can contain an optional custom + # message if required (which Perl still evaluates as True). + # dont_show_button: boolean. Prevent the display of the "Submit Changes" button. + #%] + +[% filtered_login = user.login FILTER html %] +[% PROCESS global/header.html.tmpl + title = "User Preferences" + subheader = filtered_login + style_urls = ['skins/standard/admin.css'] + javascript_urls = ['js/util.js'] + doc_section = "userpreferences.html" + %] + +[% tabs = [{ name => "settings", label => "General Preferences", + link => "userprefs.cgi?tab=settings", saveable => "1" }, + { name => "email", label => "Email Preferences", + link => "userprefs.cgi?tab=email", saveable => "1" }, + { name => "saved-searches", label => "Saved Searches", + link => "userprefs.cgi?tab=saved-searches", saveable => "1" }, + { name => "account", label => "Name and Password", + link => "userprefs.cgi?tab=account", saveable => "1" }, + { name => "permissions", label => "Permissions", + link => "userprefs.cgi?tab=permissions", saveable => "0" } ] %] + +[% FOREACH tab IN tabs %] + [% IF tab.name == current_tab_name %] + [% current_tab = tab %] + [% LAST %] + [% END %] +[% END %] + +[% WRAPPER global/tabs.html.tmpl + tabs = tabs + current_tab = current_tab +%] + +[% IF changes_saved %] + <div id="message"> + The changes to your [% current_tab.label FILTER lower %] have been saved. + + [% IF email_changes_saved %] + <p> + An email has been sent to both old and new email + addresses to confirm the change of email address. + </p> + [% END %] + </div> +[% END %] + +<h3>[% current_tab.label %]</h3> + +[% IF current_tab.saveable %] + <form name="userprefsform" method="post" action="userprefs.cgi"> + <input type="hidden" name="tab" value="[% current_tab.name %]"> + <input type="hidden" name="token" value="[% token FILTER html %]"> +[% END %] + +[% PROCESS "account/prefs/${current_tab.name}.html.tmpl" + IF current_tab.name.defined %] + +[% IF current_tab.saveable %] + <input type="hidden" name="dosave" value="1"> + + [% UNLESS dont_show_button %] + <table> + <tr> + <td width="150"> </td> + <td> + <input type="submit" id="update" value="Submit Changes"> + </td> + </tr> + </table> + [% END %] + </form> +[% END %] + +[% END %] + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/account/prefs/saved-searches.html.tmpl b/template/en/default/account/prefs/saved-searches.html.tmpl new file mode 100644 index 0000000..f128613 --- /dev/null +++ b/template/en/default/account/prefs/saved-searches.html.tmpl @@ -0,0 +1,209 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE: + # queryshare_groups: list of groups the user may share queries with + # (id, name). + # bless_group_ids: list of group ids the user may bless. + #%] + +[% IF user.can_bless %] + <script type="text/javascript"><!-- + function update_checkbox(group) { + var bless_groups = [[% bless_group_ids.join(",") FILTER js %]]; + var checkbox = document.getElementById(group.name.replace(/share_(\d+)/, "force_$1")); + + if (bz_isValueInArray(bless_groups, group.value)) { + checkbox.disabled = false; + } else { + checkbox.disabled = true; + checkbox.checked = false; + } + } //--> + </script> +[% END %] + +<p>Your saved searches are as follows:</p> + +<blockquote> + <table border="1" cellpadding="3"> + <tr> + <th> + Search + </th> + <th> + Run + </th> + <th> + Edit + </th> + <th> + Forget + </th> + <th> + Show in + Footer + </th> + [% may_share = user.in_group(Param('querysharegroup')) && queryshare_groups.size %] + [% IF may_share %] + <th> + Share With a Group + </th> + [% END %] + </tr> + <tr> + <td>My [% terms.Bugs %]</td> + <td> + [% filtered_username = user.login FILTER url_quote %] + <a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">Run</a> + </td> + <td> + + </td> + <td> + + </td> + <td align="center"> + <input type="checkbox" + name="showmybugslink" + value="1" + [% " checked" IF user.showmybugslink %]> + </td> + [% IF may_share %] + <td> + — + </td> + [% END %] + </tr> + [% FOREACH q = user.queries %] + <tr> + <td>[% q.name FILTER html %]</td> + <td> + <a href="buglist.cgi?cmdtype=dorem&remaction=run&namedcmd=[% q.name FILTER url_quote %] + [% IF q.shared_with_group.id %]&sharer_id=[% user.id FILTER url_quote %][% END %]">Run</a> + </td> + <td> + <a href="query.cgi?[% q.edit_link FILTER html %]&known_name= + [% q.name FILTER url_quote %]">Edit</a> + </td> + <td> + [% IF q.used_in_whine %] + Remove from <a href="editwhines.cgi">whining</a> first + [% ELSE %] + <a href="buglist.cgi?cmdtype=dorem&remaction=forget&namedcmd= + [% q.name FILTER url_quote %]&token= + [% issue_hash_token([q.id, q.name]) FILTER url_quote %]">Forget</a> + [% END %] + </td> + <td align="center"> + <input type="checkbox" + name="link_in_footer_[% q.id FILTER html %]" + value="1" + alt="[% q.name FILTER html %]" + [% " checked" IF q.link_in_footer %]> + </td> + [% IF may_share %] + <td> + <select name="share_[% q.id FILTER html %]" + [% IF user.can_bless %] onchange="update_checkbox(this);"[% END %]> + <option value="">Don't share</option> + [% FOREACH group = queryshare_groups %] + <option value="[% group.id %]" + [% ' selected="selected"' + IF q.shared_with_group.id == group.id %] + >[% group.name FILTER html %]</option> + [% END %] + </select> + [% IF user.can_bless %] + <input type="checkbox" id="force_[% q.id FILTER html %]" + name="force_[% q.id FILTER html %]" value="1" + [% " disabled" + IF !bless_group_ids.grep("^$q.shared_with_group.id\$").0 + %]> + <label for="force_[% q.id FILTER html %]">Add to footer</label> + [% END %] + [% IF q.shared_with_users %] + (shared with [% q.shared_with_users FILTER html %] + [%+ q.shared_with_users > 1 ? "users" : "user" %]) + [% END %] + </td> + [% END %] + </tr> + [% END %] + </table> +[% IF user.can_bless %] + <p>Note that for every search that has the "Add to footer" selected, a + link to the shared search is added to the footer of every user that is + a direct member of the group at the time you click Submit Changes.</p> +[% END %] +</blockquote> + +[% IF user.queries_available.size %] + <p>You may use these searches saved and shared by others:</p> + + <table border="1" cellpadding="3"> + <tr> + <th> + Search + </th> + <th> + Shared By + </th> + <th> + Shared To + </th> + <th> + Run + </th> + <th> + Edit + </th> + <th> + Show in + Footer + </th> + </tr> + [% FOREACH q = user.queries_available %] + <tr> + <td>[% q.name FILTER html %]</td> + <td>[% q.user.identity FILTER html %]</td> + <td>[% q.shared_with_group.name FILTER html %]</td> + <td> + <a href="buglist.cgi?cmdtype=dorem&remaction=run&namedcmd= + [% q.name FILTER url_quote %]&sharer_id= + [% q.user.id FILTER url_quote %]">Run</a> + </td> + <td> + <a href="query.cgi?[% q.edit_link FILTER html %]&known_name= + [% q.name FILTER url_quote %]">Edit</a> + </td> + <td align="center"> + <input type="checkbox" + name="link_in_footer_[% q.id FILTER html %]" + value="1" + alt="[% q.name FILTER html %]" + [% " checked" IF q.link_in_footer %]> + </td> + </tr> + [% END %] + </table> +[% ELSE %] + <p>No searches are shared with you by other users.</p> +[% END %] diff --git a/template/en/default/account/prefs/settings.html.tmpl b/template/en/default/account/prefs/settings.html.tmpl new file mode 100644 index 0000000..f8b6ba4 --- /dev/null +++ b/template/en/default/account/prefs/settings.html.tmpl @@ -0,0 +1,77 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # Contributor(s): Shane H. W. Travis <travis@sedsystems.ca> + # Frédéric Buclin <LpSolit@gmail.com> + # + #%] + +[%# INTERFACE: + # setting_names: an array of strings + # settings: a hash of hashes, keyed by setting_name. + # Each hash contains: + # is_enabled - boolean + # default_value - string (global default for this setting) + # value - string (user-defined preference) + # is_default - boolean (true if user has no preference) + # has_settings_enabled : boolean; is true if there is at least one user pref + # enabled by the maintainer. + #%] + +[% PROCESS "global/setting-descs.none.tmpl" %] + +[% IF settings.size %] + [% UNLESS has_settings_enabled %] + <p class="criticalmessages"> + All user preferences have been disabled by the + <a href="mailto:[% Param("maintainer") %]">maintainer</a> + of this installation, and so you cannot customize any. + </p> + [% END %] + + <table border="0" cellpadding="8"> + [% FOREACH name = setting_names %] + [% default_name = name _ '-isdefault' %] + [% default_val = settings.${name}.default_value %] + <tr> + <td align="right"> + [% setting_descs.$name OR name FILTER html %] + </td> + <td> + [% IF settings.${name}.is_enabled %] + <select name="[% name FILTER html %]" id="[% name FILTER html %]"> + <option value="[% default_name FILTER html %]" + [% ' selected="selected"' IF settings.${name}.is_default %]> + Site Default ([% setting_descs.${default_val} OR default_val FILTER html %]) + </option> + [% FOREACH x = settings.${name}.legal_values %] + <option value="[% x FILTER html %]" + [% ' selected="selected"' + IF x == settings.${name}.value + AND NOT settings.${name}.is_default %]> + [% setting_descs.${x} OR x FILTER html %] + </option> + [% END %] + </select> + [% ELSE %] + <select name="[% name FILTER html %]" id="[% name FILTER html %]" disabled="disabled"> + <option value="[% default_name FILTER html %]"> + Site Default ([% setting_descs.${default_val} OR default_val FILTER html %]) + </option> + </select> + [% END %] + </td> + </tr> + [% END %] + </table> +[% END %] +<br> diff --git a/template/en/default/account/profile-activity.html.tmpl b/template/en/default/account/profile-activity.html.tmpl new file mode 100644 index 0000000..c6fd45c --- /dev/null +++ b/template/en/default/account/profile-activity.html.tmpl @@ -0,0 +1,86 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Vlad Dascalu <jocuri@softhome.net> + # Gavin Shelley <bugzilla@chimpychompy.org> + #%] + +[%# INTERFACE: + # otheruser: Bugzilla User Object; The user whose profile activity + # we are viewing. + # + # listselectionvalues: selection values to recreate the current user list. + # + # profile_changes: An array of hashes containing the following fields: + # + # who: string; login name of who made the change + # activity_when: string; when the change was made + # what: string; the description of the field which was changed + # removed: string; the removed value (maybe empty string) + # added: string; the added value (maybe empty string) + #%] + +[% title = BLOCK %] + Account History for '[% otheruser.login FILTER html %]' +[% END %] + + +[% PROCESS global/header.html.tmpl + title = title +%] + +[% PROCESS admin/users/listselectvars.html.tmpl + listselectionvalues = listselectionvalues +%] + +[% columns = + [{name => 'who' + heading => 'Who' + } + {name => 'activity_when' + heading => 'When' + } + {name => 'what' + heading => 'What' + content_use_field => 1 + } + {name => 'removed' + heading => 'Removed' + } + {name => 'added' + heading => 'Added' + } + ] +%] + +[% PROCESS admin/table.html.tmpl + columns = columns + data = profile_changes +%] + +<p><a href="editusers.cgi?action=edit&userid= + [%- otheruser.id FILTER url_quote %]" + title="Edit user '[% otheruser.login FILTER html %]'">Edit this user</a> or + <a title="Search For Users" href="editusers.cgi">search for other accounts</a> + [% IF listselectionvalues.matchtype != 'exact' %] + or go <a title="Return to the user list" + href="editusers.cgi?action=list[% INCLUDE listselectionurlparams %]">back + to the user list</a> + [% END %] +</p> + +[% PROCESS global/footer.html.tmpl %] |