From 6674f61905d98aee08b95c22181aa439bfb041e5 Mon Sep 17 00:00:00 2001 From: "travis%sedsystems.ca" <> Date: Thu, 10 Mar 2005 23:51:40 +0000 Subject: Bug 98123 : Create a user preferences infrastructure (became 'General Settings') Patch by Shane H. W. Travis r=jouni, mkanat a=myk --- template/en/default/account/prefs/prefs.html.tmpl | 2 + .../en/default/account/prefs/settings.html.tmpl | 63 +++++++++++++ template/en/default/admin/settings/edit.html.tmpl | 102 +++++++++++++++++++++ .../en/default/admin/settings/updated.html.tmpl | 27 ++++++ template/en/default/filterexceptions.pl | 10 ++ template/en/default/global/code-error.html.tmpl | 9 ++ template/en/default/global/field-descs.none.tmpl | 2 + template/en/default/global/setting-descs.none.tmpl | 26 ++++++ template/en/default/global/useful-links.html.tmpl | 3 +- 9 files changed, 243 insertions(+), 1 deletion(-) create mode 100644 template/en/default/account/prefs/settings.html.tmpl create mode 100644 template/en/default/admin/settings/edit.html.tmpl create mode 100644 template/en/default/admin/settings/updated.html.tmpl create mode 100644 template/en/default/global/setting-descs.none.tmpl (limited to 'template/en') diff --git a/template/en/default/account/prefs/prefs.html.tmpl b/template/en/default/account/prefs/prefs.html.tmpl index 8d45e00b8..4973c807d 100644 --- a/template/en/default/account/prefs/prefs.html.tmpl +++ b/template/en/default/account/prefs/prefs.html.tmpl @@ -52,6 +52,8 @@ [% tabs = [ { name => "account", description => "Account settings", saveable => "1" }, + { name => "settings", description => "General Settings", + saveable => "1" }, { name => "email", description => "Email settings", saveable => "1" }, { name => "saved-searches", description => "Saved searches", 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 000000000..d116a291d --- /dev/null +++ b/template/en/default/account/prefs/settings.html.tmpl @@ -0,0 +1,63 @@ +[%# 1.0@bugzilla.org %] +[%# 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 + # + #%] + +[%# 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) + #%] + +[% PROCESS "global/setting-descs.none.tmpl" %] + +[% IF settings.size %] + + + [% FOREACH name = setting_names %] + [% IF settings.${name}.is_enabled %] + [% default_name = name _ '-isdefault' %] + [% default_val = settings.${name}.default_value %] + + + + + [% END %] + [% END %] + +
+ [% setting_descs.$name OR name FILTER html %] + + +
+[% END %] +
diff --git a/template/en/default/admin/settings/edit.html.tmpl b/template/en/default/admin/settings/edit.html.tmpl new file mode 100644 index 000000000..5a068e83b --- /dev/null +++ b/template/en/default/admin/settings/edit.html.tmpl @@ -0,0 +1,102 @@ +[%# 1.0@bugzilla.org %] +[%# 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 + # + #%] + +[%# 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) + #%] + +[% PROCESS global/header.html.tmpl + title = "Edit Global Settings" + %] + +[% PROCESS "global/setting-descs.none.tmpl" %] + +

+This lets you edit the global settings values. +

+

+The Default Value displayed for each setting will apply to all users who +do not choose their own value, and to anyone who is not logged in. +

+

+The 'Enabled' checkbox controls whether or not this setting is available +to users.
+If it is checked, users will see this setting on their User Preferences page, +and will be allowed to choose their own value if they desire.
+If it is not checked, this setting will not apppear on the User Preference +page, and the Default Value will automatically apply to everyone. +

+
+ +[% IF settings.size %] +
+ + + + + + + + [% FOREACH name = setting_names %] + [% checkbox_name = name _ '-enabled' %] + + + + + + [% END %] +
Setting TextDefault ValueEnabled
+ [% setting_descs.$name OR name FILTER html %] + + + + +
+
+ + + + + + + +
+ +
+ +
+[% ELSE %] + There are no settings to edit. +[% END %] + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/settings/updated.html.tmpl b/template/en/default/admin/settings/updated.html.tmpl new file mode 100644 index 000000000..799fdde75 --- /dev/null +++ b/template/en/default/admin/settings/updated.html.tmpl @@ -0,0 +1,27 @@ +[%# 1.0@bugzilla.org %] +[%# 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 + # + #%] + +[% PROCESS global/header.html.tmpl + title = "Settings Updated" + %] + +Your changes to the Global Settings have been saved.
+
+Return to the Global Settings page. + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/filterexceptions.pl b/template/en/default/filterexceptions.pl index bcbbcc8a5..b7a3e0356 100644 --- a/template/en/default/filterexceptions.pl +++ b/template/en/default/filterexceptions.pl @@ -634,6 +634,11 @@ 'deleted_bug_count' ], +'admin/settings/edit.html.tmpl' => [ + 'name', + 'checkbox_name' +], + 'account/login.html.tmpl' => [ 'target', ], @@ -656,4 +661,9 @@ 'current_tab.description', ], +'account/prefs/settings.html.tmpl' => [ + 'name', + 'default_name' +], + ); diff --git a/template/en/default/global/code-error.html.tmpl b/template/en/default/global/code-error.html.tmpl index cfc8229c8..5e75e1b30 100644 --- a/template/en/default/global/code-error.html.tmpl +++ b/template/en/default/global/code-error.html.tmpl @@ -216,6 +216,15 @@ [%+ ELSIF fld == "z" %]the multiple tables/images [%+ ELSE %]a report axis[% END %] field. + [% ELSIF error == "setting_info_invalid" %] + To create a new setting, you must supply a setting name, a list of + value/sortindex pairs, and the devault value. + + [% ELSIF error == "setting_name_invalid" %] + The setting name [% name FILTER html %] is not a valid + option. Setting names must begin with a letter, and contain only + letters, digits, or the symbols '_', '-', '.', or ':'. + [% ELSIF error == "token_generation_error" %] Something is seriously wrong with the token generation system. diff --git a/template/en/default/global/field-descs.none.tmpl b/template/en/default/global/field-descs.none.tmpl index 1b410d1f2..8997bfa0d 100644 --- a/template/en/default/global/field-descs.none.tmpl +++ b/template/en/default/global/field-descs.none.tmpl @@ -59,6 +59,8 @@ "reporter" => "Reporter", "reporter_accessible" => "Reporter accessible?", "resolution" => "Resolution", + "setting" => "Setting", + "settings" => "Settings", "short_desc" => "Summary", "status_whiteboard" => "Whiteboard", "target_milestone" => "Target Milestone", diff --git a/template/en/default/global/setting-descs.none.tmpl b/template/en/default/global/setting-descs.none.tmpl new file mode 100644 index 000000000..26bed57a7 --- /dev/null +++ b/template/en/default/global/setting-descs.none.tmpl @@ -0,0 +1,26 @@ +[%# 1.0@bugzilla.org %] +[%# 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 + # + #%] + +[%# Remember to PROCESS rather than INCLUDE this template. %] + +[% PROCESS global/variables.none.tmpl %] + +[% setting_descs = { + "off" => "Off", + "on" => "On" + } +%] diff --git a/template/en/default/global/useful-links.html.tmpl b/template/en/default/global/useful-links.html.tmpl index eb8c7e24c..6d45bfd1b 100644 --- a/template/en/default/global/useful-links.html.tmpl +++ b/template/en/default/global/useful-links.html.tmpl @@ -74,7 +74,8 @@