[Rt-commit] r13843 - in rt/3.8/branches/3.8.0-releng: . bin etc etc/upgrade/3.7.3 etc/upgrade/3.7.87 lib lib/RT lib/RT/Action lib/RT/Crypt lib/RT/Graph lib/RT/I18N lib/RT/Interface sbin share/html share/html/Admin/CustomFields share/html/Admin/Global share/html/Admin/Tools/Shredder/Elements/Object share/html/Admin/Users share/html/Dashboards share/html/Dashboards/Elements share/html/Elements share/html/Elements/RT__Ticket share/html/Install share/html/Install/Elements share/html/NoAuth/css/web2 share/html/NoAuth/iCal share/html/Search share/html/Search/Elements share/html/Ticket share/html/Ticket/Elements share/html/Ticket/Graphs share/html/Ticket/Graphs/Elements share/html/Tools share/html/Tools/Elements share/html/Tools/Reports share/html/User/Elements share/html/Widgets/Form t t/mail t/shredder t/ticket t/web
jesse at bestpractical.com
jesse at bestpractical.com
Mon Jul 7 16:22:04 EDT 2008
Author: jesse
Date: Mon Jul 7 16:21:51 2008
New Revision: 13843
Added:
rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.87/
rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.87/content
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_pt.po
rt/3.8/branches/3.8.0-releng/sbin/tweak-template-locstring
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObjects
rt/3.8/branches/3.8.0-releng/share/html/Elements/Dashboards
rt/3.8/branches/3.8.0-releng/share/html/Install/Elements/Errors
rt/3.8/branches/3.8.0-releng/share/html/Install/Global.html
- copied, changed from r13474, /rt/3.8/branches/3.8.0-releng/share/html/Install/Emails.html
rt/3.8/branches/3.8.0-releng/t/ticket/badlinks.t
rt/3.8/branches/3.8.0-releng/t/web/dashboards-groups.t
rt/3.8/branches/3.8.0-releng/t/web/unlimited_search.t
Removed:
rt/3.8/branches/3.8.0-releng/share/html/Install/Elements/Header
rt/3.8/branches/3.8.0-releng/share/html/Install/Emails.html
Modified:
rt/3.8/branches/3.8.0-releng/ (props changed)
rt/3.8/branches/3.8.0-releng/Makefile.in
rt/3.8/branches/3.8.0-releng/bin/standalone_httpd.in
rt/3.8/branches/3.8.0-releng/configure.ac
rt/3.8/branches/3.8.0-releng/etc/RT_Config.pm.in
rt/3.8/branches/3.8.0-releng/etc/initialdata
rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.3/schema.Pg
rt/3.8/branches/3.8.0-releng/lib/RT.pm.in
rt/3.8/branches/3.8.0-releng/lib/RT/Action/Notify.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Action/SendEmail.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Attachment_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Config.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Crypt/GnuPG.pm
rt/3.8/branches/3.8.0-releng/lib/RT/CustomField.pm
rt/3.8/branches/3.8.0-releng/lib/RT/CustomField_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Dashboard.pm
rt/3.8/branches/3.8.0-releng/lib/RT/EmailParser.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Graph/Tickets.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Group_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/cs.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/da.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/de.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/es.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fi.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fr.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/he.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/hu.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/id.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/it.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ja.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/nl.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/no.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pl.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_br.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ru.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/sv.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/tr.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_cn.po
rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_tw.po
rt/3.8/branches/3.8.0-releng/lib/RT/Installer.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Email.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Web.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Principal_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Record.pm
rt/3.8/branches/3.8.0-releng/lib/RT/SavedSearch.pm
rt/3.8/branches/3.8.0-releng/lib/RT/SharedSetting.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Template_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Test.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Ticket_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay.pm
rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay_SQL.pm
rt/3.8/branches/3.8.0-releng/lib/RT/User_Overlay.pm
rt/3.8/branches/3.8.0-releng/sbin/ (props changed)
rt/3.8/branches/3.8.0-releng/sbin/extract-message-catalog
rt/3.8/branches/3.8.0-releng/sbin/rt-email-dashboards.in
rt/3.8/branches/3.8.0-releng/sbin/rt-email-digest.in
rt/3.8/branches/3.8.0-releng/sbin/rt-test-dependencies.in
rt/3.8/branches/3.8.0-releng/share/html/Admin/CustomFields/Modify.html
rt/3.8/branches/3.8.0-releng/share/html/Admin/Global/Scrip.html
rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment
rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket
rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--User
rt/3.8/branches/3.8.0-releng/share/html/Admin/Users/MyRT.html
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObject
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/ShowDashboards
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/Tabs
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Modify.html
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Queries.html
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Render.html
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Subscription.html
rt/3.8/branches/3.8.0-releng/share/html/Dashboards/index.html
rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomField
rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomFieldSelect
rt/3.8/branches/3.8.0-releng/share/html/Elements/Header
rt/3.8/branches/3.8.0-releng/share/html/Elements/RT__Ticket/ColumnMap
rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectOwner
rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectTimezone
rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowSearch
rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUser
rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUserVerbose
rt/3.8/branches/3.8.0-releng/share/html/Install/Basics.html
rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseDetails.html
rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseType.html
rt/3.8/branches/3.8.0-releng/share/html/Install/Finish.html
rt/3.8/branches/3.8.0-releng/share/html/Install/Initialize.html
rt/3.8/branches/3.8.0-releng/share/html/Install/Sendmail.html
rt/3.8/branches/3.8.0-releng/share/html/Install/index.html
rt/3.8/branches/3.8.0-releng/share/html/NoAuth/css/web2/forms.css
rt/3.8/branches/3.8.0-releng/share/html/NoAuth/iCal/dhandler
rt/3.8/branches/3.8.0-releng/share/html/NoAuth/js/util.js
rt/3.8/branches/3.8.0-releng/share/html/Search/Bulk.html
rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/BuildFormatString
rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditQuery
rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditSearches
rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/ResultViews
rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/SelectPersonType
rt/3.8/branches/3.8.0-releng/share/html/Search/Results.html
rt/3.8/branches/3.8.0-releng/share/html/Search/Results.tsv
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Reminders
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMembers
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMessageStanza
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Tabs
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowGraph
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowLegends
rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/index.html
rt/3.8/branches/3.8.0-releng/share/html/Ticket/ModifyAll.html
rt/3.8/branches/3.8.0-releng/share/html/Tools/Elements/Tabs
rt/3.8/branches/3.8.0-releng/share/html/Tools/Reports/index.html
rt/3.8/branches/3.8.0-releng/share/html/Tools/index.html
rt/3.8/branches/3.8.0-releng/share/html/User/Elements/Tabs
rt/3.8/branches/3.8.0-releng/share/html/Widgets/Form/Boolean
rt/3.8/branches/3.8.0-releng/share/html/autohandler
rt/3.8/branches/3.8.0-releng/t/00-mason-syntax.t
rt/3.8/branches/3.8.0-releng/t/mail/charsets-outgoing.t
rt/3.8/branches/3.8.0-releng/t/mail/crypt-gnupg.t
rt/3.8/branches/3.8.0-releng/t/mail/gnupg-bad.t
rt/3.8/branches/3.8.0-releng/t/mail/gnupg-incoming.t
rt/3.8/branches/3.8.0-releng/t/mail/gnupg-realmail.t
rt/3.8/branches/3.8.0-releng/t/mail/gnupg-reverification.t
rt/3.8/branches/3.8.0-releng/t/mail/sendmail.t
rt/3.8/branches/3.8.0-releng/t/shredder/00load.t
rt/3.8/branches/3.8.0-releng/t/shredder/00skeleton.t
rt/3.8/branches/3.8.0-releng/t/shredder/01basics.t
rt/3.8/branches/3.8.0-releng/t/shredder/01ticket.t
rt/3.8/branches/3.8.0-releng/t/shredder/02group_member.t
rt/3.8/branches/3.8.0-releng/t/shredder/02queue.t
rt/3.8/branches/3.8.0-releng/t/shredder/02template.t
rt/3.8/branches/3.8.0-releng/t/shredder/02user.t
rt/3.8/branches/3.8.0-releng/t/shredder/03plugin.t
rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_summary.t
rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_tickets.t
rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_users.t
rt/3.8/branches/3.8.0-releng/t/shredder/utils.pl
rt/3.8/branches/3.8.0-releng/t/ticket/search_by_watcher.t
rt/3.8/branches/3.8.0-releng/t/web/command_line.t
rt/3.8/branches/3.8.0-releng/t/web/crypt-gnupg.t
rt/3.8/branches/3.8.0-releng/t/web/dashboards.t
rt/3.8/branches/3.8.0-releng/t/web/gnupg-outgoing.t
rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-create.t
rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-update.t
Log:
* Merge RT 3.8 trunk to the 3.8.0releng branch.
r33249 at 31b (orig r13503): ruz | 2008-06-20 19:23:49 -0400
* pod changes
* add empty {Save|Update}Attribute methods
r33250 at 31b (orig r13504): ruz | 2008-06-20 19:25:07 -0400
* pod changes
r33251 at 31b (orig r13505): ruz | 2008-06-20 19:26:24 -0400
* take argument from correct hash
r33252 at 31b (orig r13506): ruz | 2008-06-20 19:27:26 -0400
* define type of saved searches we use for graphs
r33259 at 31b (orig r13513): ruz | 2008-06-20 23:55:18 -0400
merge non-ascii subject branch
r13513 at cubic-pc (orig r13469): ruz | 2008-06-20 23:45:42 +0400
* branch to fix problems with non-ascii subjects, subject tags, templates
r13552 at cubic-pc (orig r13508): ruz | 2008-06-21 07:13:04 +0400
* minor
r13553 at cubic-pc (orig r13509): ruz | 2008-06-21 07:16:23 +0400
* ok, MIME::Parser is not aware about perl strings, so we use octets.
What means that we must treat MIME's content as octets everywhere
and use Encode::decode_utf8
r13554 at cubic-pc (orig r13510): ruz | 2008-06-21 07:18:31 +0400
* data in template's MIME entity is not always perl string, so
we must decode it first before using
r13555 at cubic-pc (orig r13511): ruz | 2008-06-21 07:23:01 +0400
* add docs
r13556 at cubic-pc (orig r13512): ruz | 2008-06-21 07:23:34 +0400
* minor
r33278 at 31b (orig r13532): sunnavy | 2008-06-21 03:19:33 -0400
r13602 at sunnavys-mb: sunnavy | 2008-06-20 22:29:14 +0800
split strings to be localized
r33678 at 31b (orig r13535): sunnavy | 2008-06-23 10:29:30 -0400
r13719 at sunnavys-mb: sunnavy | 2008-06-23 20:48:30 +0800
show either "check" or "next", not both
r13720 at sunnavys-mb: sunnavy | 2008-06-23 20:56:04 +0800
Default OwnerEmail is undef
r13721 at sunnavys-mb: sunnavy | 2008-06-23 20:59:49 +0800
more hints for OwnerEmail
r13722 at sunnavys-mb: sunnavy | 2008-06-23 21:06:18 +0800
kick SendmailArguments SendmailBounceArguments out
r13723 at sunnavys-mb: sunnavy | 2008-06-23 21:11:19 +0800
move OwnerEmail to Sendmail page
r13724 at sunnavys-mb: sunnavy | 2008-06-23 21:12:39 +0800
updated OwnerEmail hints
r13725 at sunnavys-mb: sunnavy | 2008-06-23 21:26:26 +0800
use Cwd::realpath to canon paths
r13726 at sunnavys-mb: sunnavy | 2008-06-23 21:35:02 +0800
force user to input password, it can't be null
r13727 at sunnavys-mb: sunnavy | 2008-06-23 21:44:35 +0800
hints for WebDomain and WebPort
r13728 at sunnavys-mb: sunnavy | 2008-06-23 21:49:10 +0800
complete #loc
r13729 at sunnavys-mb: sunnavy | 2008-06-23 22:13:56 +0800
refactor a bit
r33679 at 31b (orig r13536): sunnavy | 2008-06-23 11:23:49 -0400
r13734 at sunnavys-mb: sunnavy | 2008-06-23 23:20:21 +0800
reorder install pages: deleted Emails.html, added Global.html after Sendmail.html
r33680 at 31b (orig r13537): alexmv | 2008-06-23 11:47:39 -0400
r33398 at kohr-ah: chmrr | 2008-06-23 11:47:31 -0400
* Un-todo the now-passing tests
r33681 at 31b (orig r13538): sunnavy | 2008-06-23 12:05:06 -0400
r13736 at sunnavys-mb: sunnavy | 2008-06-23 23:54:36 +0800
revert stupid commit
r33682 at 31b (orig r13539): sunnavy | 2008-06-23 12:34:01 -0400
r13740 at sunnavys-mb: sunnavy | 2008-06-24 00:32:52 +0800
better handled loc strings
r33683 at 31b (orig r13540): sunnavy | 2008-06-23 14:10:05 -0400
r13742 at sunnavys-mb: sunnavy | 2008-06-24 02:09:40 +0800
tiny fix
r33684 at 31b (orig r13541): sartak | 2008-06-23 15:20:03 -0400
r33685 at 31b (orig r13542): sartak | 2008-06-23 15:22:16 -0400
r63074 at onn: sartak | 2008-06-23 15:19:46 -0400
Ignore some autogenerated files
r33688 at 31b (orig r13545): sartak | 2008-06-23 17:30:50 -0400
r63077 at onn: sartak | 2008-06-23 16:40:41 -0400
ShowGraph needs RT::Util for safe_run_child
r33689 at 31b (orig r13546): sartak | 2008-06-23 17:31:01 -0400
r63078 at onn: sartak | 2008-06-23 17:30:36 -0400
Need to handle multi-valued keys in rt-email-dashboards to handle multiple "ShowLink"s for graphs. This tactic is becoming increasingly fussy.
r33691 at 31b (orig r13548): sartak | 2008-06-23 17:44:22 -0400
r63083 at onn: sartak | 2008-06-23 17:44:12 -0400
Add Bookmark to the list of things you can display in a search table
r33692 at 31b (orig r13549): sartak | 2008-06-23 17:57:58 -0400
r63086 at onn: sartak | 2008-06-23 17:57:48 -0400
Include verbose output about fetching resources in email-dashboards
r33695 at 31b (orig r13552): sartak | 2008-06-23 19:29:52 -0400
r63092 at onn: sartak | 2008-06-23 19:28:33 -0400
Add a way to turn off JavaScript in the Header
Have email dashboards turn off javascript, tabs, etc
r33696 at 31b (orig r13553): sunnavy | 2008-06-23 19:44:21 -0400
r13744 at sunnavys-mb: sunnavy | 2008-06-24 07:32:42 +0800
handle multi line loc strings
r33697 at 31b (orig r13554): sartak | 2008-06-23 19:54:57 -0400
r63094 at onn: sartak | 2008-06-23 19:54:35 -0400
Don't display hide/show links in dashboard email (and a bit more infrastructure to handle it). Resolves rt3.fsck.com #9797.
r33698 at 31b (orig r13555): sartak | 2008-06-23 21:16:22 -0400
r63098 at onn: sartak | 2008-06-23 21:16:00 -0400
Add a button to delete dashboards, some minor improvements to unsubscribe
r33699 at 31b (orig r13556): sartak | 2008-06-23 21:18:20 -0400
r63100 at onn: sartak | 2008-06-23 21:18:08 -0400
Typo fix
r33700 at 31b (orig r13557): sartak | 2008-06-23 21:32:40 -0400
r63102 at onn: sartak | 2008-06-23 21:32:30 -0400
Add DeleteDashboard right, check it in SharedSetting->Delete
r33704 at 31b (orig r13561): ruz | 2008-06-24 11:48:04 -0400
r13587 at cubic-pc (orig r13543): ruz | 2008-06-24 00:47:48 +0400
* add {Generate,Validate}AuthString to RT::User class
* use them for iCal links
* fix issues with non-ascii chars in a query when generating
iCal URLs
* fix issues with non-ascii chars in user name and iCal URLs
r33705 at 31b (orig r13562): falcone | 2008-06-24 13:01:50 -0400
r34785 at ketch: falcone | 2008-06-24 13:01:35 -0400
* hint/label/error message updates
* added intro paragraphs
r33706 at 31b (orig r13563): sunnavy | 2008-06-24 14:31:21 -0400
r33707 at 31b (orig r13564): sunnavy | 2008-06-24 14:35:07 -0400
r13771 at sunnavys-mb: sunnavy | 2008-06-25 02:29:33 +0800
loc results too
r33708 at 31b (orig r13565): kyoki | 2008-06-24 14:48:59 -0400
r23327 at nyx: kyoki | 2008-06-24 14:44:16 -0400
link added/deleted message a little more human friendly - type is no longer capitalized runon
r33709 at 31b (orig r13566): ruz | 2008-06-24 15:31:40 -0400
* fix Pg schema upgrade for versin 3.7.3, thanks to Tom Lanyon
r33710 at 31b (orig r13567): sartak | 2008-06-24 15:45:21 -0400
r63168 at onn: sartak | 2008-06-24 15:44:03 -0400
Basic tests for deleting dashboards
r33711 at 31b (orig r13568): kyoki | 2008-06-24 16:00:20 -0400
r23332 at nyx: kyoki | 2008-06-24 15:56:53 -0400
RT-Ticket: 6626
RT-Status: Resolved
RT-Update: Correspond
Ticket/Display.html no longer has problems if a child isn't a ticket
r33712 at 31b (orig r13569): sunnavy | 2008-06-24 16:15:08 -0400
r13774 at sunnavys-mb: sunnavy | 2008-06-25 03:16:46 +0800
colon should be permitted between string and "#loc" or "#loc_pair"
r33713 at 31b (orig r13570): sunnavy | 2008-06-24 16:17:38 -0400
r33714 at 31b (orig r13571): sunnavy | 2008-06-24 16:18:05 -0400
r13777 at sunnavys-mb: sunnavy | 2008-06-25 03:49:47 +0800
show timezone offset if people have DateTime
r33715 at 31b (orig r13572): sunnavy | 2008-06-24 16:18:27 -0400
r13778 at sunnavys-mb: sunnavy | 2008-06-25 03:54:22 +0800
check CommentAddress and CorrespondAddress if they are specified
r33716 at 31b (orig r13573): sunnavy | 2008-06-24 16:18:54 -0400
r13779 at sunnavys-mb: sunnavy | 2008-06-25 04:07:51 +0800
show timezone offset if people have DateTime for installer
r33717 at 31b (orig r13574): sunnavy | 2008-06-24 16:19:25 -0400
r33718 at 31b (orig r13575): sartak | 2008-06-24 16:51:59 -0400
r33719 at 31b (orig r13576): sartak | 2008-06-24 16:52:48 -0400
r63180 at onn: sartak | 2008-06-24 16:51:13 -0400
Make DashboardSubject configurable
r33720 at 31b (orig r13577): sartak | 2008-06-24 17:02:46 -0400
r63191 at onn: sartak | 2008-06-24 16:59:22 -0400
Add an "Error: Missing dashboard" template to send to users when their subscription is invalidated by a dashboard being deleted
r33721 at 31b (orig r13578): sartak | 2008-06-24 17:17:29 -0400
r63193 at onn: sartak | 2008-06-24 17:07:35 -0400
Add $DashboardAddress to the config
r33722 at 31b (orig r13579): sartak | 2008-06-24 17:17:39 -0400
r63194 at onn: sartak | 2008-06-24 17:17:18 -0400
If a dashboard fails to load, delete the subscription and notify the user
r33723 at 31b (orig r13580): sartak | 2008-06-24 20:11:23 -0400
r63210 at onn: sartak | 2008-06-24 20:10:34 -0400
Refactor some of the dashboard display code for reuse
r33724 at 31b (orig r13581): sartak | 2008-06-24 20:56:59 -0400
r63212 at onn: sartak | 2008-06-24 20:46:30 -0400
Refactor ShowDashboards so only that its table display (sans titlebox) can be used
r33725 at 31b (orig r13582): sartak | 2008-06-24 20:57:21 -0400
r63213 at onn: sartak | 2008-06-24 20:50:54 -0400
Add a Dashboards component
r33726 at 31b (orig r13583): sartak | 2008-06-24 20:57:29 -0400
r63214 at onn: sartak | 2008-06-24 20:56:36 -0400
Better sorting of dashboards (first by type, then by ID ascending)
r33727 at 31b (orig r13584): sartak | 2008-06-24 20:59:36 -0400
r63218 at onn: sartak | 2008-06-24 20:59:24 -0400
Fix the link to Dashboards in the portlet
r33729 at 31b (orig r13586): elacour | 2008-06-25 08:55:42 -0400
r9749 at datura: manu | 2008-06-25 14:53:53 +0200
Fix mistranlated strings in french PO file.
r33730 at 31b (orig r13587): elacour | 2008-06-25 11:04:34 -0400
r9752 at datura: manu | 2008-06-25 17:04:33 +0200
French translation update.
r33733 at 31b (orig r13590): sartak | 2008-06-25 15:00:24 -0400
r63236 at onn: sartak | 2008-06-25 15:00:04 -0400
Add some methods to SharedSetting and Dashboards to detect when a search would be hidden form another user. Needs more tests.
r33734 at 31b (orig r13591): kyoki | 2008-06-25 16:31:29 -0400
r23357 at nyx: kyoki | 2008-06-25 16:31:27 -0400
RT-Ticket: 9197
RT-Status: Resolved
RT-Update: Correspond
include-cf and link-cf links are now saved when creating customfields.
r33736 at 31b (orig r13593): sartak | 2008-06-25 18:28:58 -0400
r63238 at onn: sartak | 2008-06-25 15:30:02 -0400
Some dashboard usability fixes.
Have the link to each dashboard go to its show page instead of edit.
r33737 at 31b (orig r13594): sartak | 2008-06-25 18:29:09 -0400
r63239 at onn: sartak | 2008-06-25 18:20:16 -0400
Add a (currently unused) SeeDashboard right
r33738 at 31b (orig r13595): sartak | 2008-06-25 18:29:18 -0400
r63240 at onn: sartak | 2008-06-25 18:28:30 -0400
Refactor _PrivacyObjects so it can be used to figure out which dashboards the user can read or write
r33739 at 31b (orig r13596): ruz | 2008-06-25 18:47:01 -0400
* add/replace only one once for a group of siblings
r33740 at 31b (orig r13597): sartak | 2008-06-25 19:04:57 -0400
r33741 at 31b (orig r13598): sartak | 2008-06-25 19:05:07 -0400
r63247 at onn: sartak | 2008-06-25 19:04:31 -0400
Add a SharedSetting->CurrentUserCanSee
r33742 at 31b (orig r13599): kyoki | 2008-06-25 19:49:27 -0400
r23367 at nyx: kyoki | 2008-06-25 19:49:20 -0400
added Kevin's badlinks test after making sure it passes
r33756 at 31b (orig r13613): kyoki | 2008-06-26 14:59:25 -0400
r23380 at nyx: kyoki | 2008-06-26 14:59:34 -0400
RT-Ticket: 8374
RT-Status: Resolved
RT-Update: Correspond
users now have the option of displaying messages with fixed-width font, although it's not a global option. thanks Roderick for the patch.
r33761 at 31b (orig r13618): sartak | 2008-06-26 17:01:36 -0400
r33762 at 31b (orig r13619): kyoki | 2008-06-26 17:59:47 -0400
r23389 at nyx: kyoki | 2008-06-26 17:59:36 -0400
fixing previous commit - plaintextpre is now a global variable
r33763 at 31b (orig r13620): kyoki | 2008-06-26 17:59:58 -0400
r23390 at nyx: kyoki | 2008-06-26 17:59:53 -0400
"Unlimited" option for number of rows now works
r33774 at 31b (orig r13631): sartak | 2008-06-26 20:07:08 -0400
r63276 at onn: sartak | 2008-06-26 17:16:03 -0400
Log an error when CurrentUserCanSee is called on an incomplete dashboard
r33775 at 31b (orig r13632): sartak | 2008-06-26 20:07:23 -0400
r63277 at onn: sartak | 2008-06-26 17:30:23 -0400
Remove the ACL checks from the view, they need to be in the API (and improved to handle groups)
r33776 at 31b (orig r13633): sartak | 2008-06-26 20:07:32 -0400
r63278 at onn: sartak | 2008-06-26 17:30:56 -0400
Remove the Delete right checks
r33777 at 31b (orig r13634): sartak | 2008-06-26 20:07:53 -0400
r63279 at onn: sartak | 2008-06-26 17:44:08 -0400
Better localizability of abort messages in the Dashboard UI
r33778 at 31b (orig r13635): sartak | 2008-06-26 20:08:07 -0400
r63280 at onn: sartak | 2008-06-26 17:46:31 -0400
Define the API for checking shared-setting ACLs, just need to fill in the details
r33779 at 31b (orig r13636): sartak | 2008-06-26 20:08:33 -0400
r63281 at onn: sartak | 2008-06-26 17:50:02 -0400
Whoops, forgot to check CurrentUserCanSee in SharedSetting->Load
r33780 at 31b (orig r13637): sartak | 2008-06-26 20:08:50 -0400
r63282 at onn: sartak | 2008-06-26 20:01:20 -0400
Implementations of CurrentUserCan{See,Modify,Delete}
r33781 at 31b (orig r13638): sartak | 2008-06-26 20:09:07 -0400
r63283 at onn: sartak | 2008-06-26 20:06:09 -0400
Add CurrentUserCanSubscribe and check it in Subscription
r33782 at 31b (orig r13639): sartak | 2008-06-26 20:21:55 -0400
r63305 at onn: sartak | 2008-06-26 20:14:37 -0400
Extra checks and fixes
r33783 at 31b (orig r13640): sartak | 2008-06-26 20:23:59 -0400
r63306 at onn: sartak | 2008-06-26 20:20:32 -0400
test fixes
r33784 at 31b (orig r13641): sartak | 2008-06-26 20:42:19 -0400
r63309 at onn: sartak | 2008-06-26 20:38:19 -0400
Another 'Couldn't'. doh.
r33785 at 31b (orig r13642): sartak | 2008-06-26 20:42:39 -0400
r63310 at onn: sartak | 2008-06-26 20:42:02 -0400
More test fixes, down to only a few failures..
r33808 at 31b (orig r13665): kyoki | 2008-06-27 14:34:51 -0400
r23438 at nyx: kyoki | 2008-06-27 14:34:41 -0400
added test for unlimited search function
r33809 at 31b (orig r13666): kyoki | 2008-06-27 14:41:36 -0400
r23440 at nyx: kyoki | 2008-06-27 14:41:32 -0400
added tests to check if row preferences work in "Bulk Update". test currently fails
r33810 at 31b (orig r13667): kyoki | 2008-06-27 15:07:35 -0400
r23442 at nyx: kyoki | 2008-06-27 15:07:30 -0400
fixed Bulk.html so that row preferences work
r33811 at 31b (orig r13668): kyoki | 2008-06-27 22:15:42 -0400
r23444 at nyx: kyoki | 2008-06-27 22:15:37 -0400
RT-Ticket: 9841
RT-Status: Resolved
RT-Update: Correspond
drop down lists now sort names
r33823 at 31b (orig r13678): jesse | 2008-06-28 06:28:20 -0400
r33648 at 31b: jesse | 2008-06-28 19:22:43 +0900
Removed incorrect quasi-support for DESTDIR in configure.ac
Cleand up destdir support to not break in-place usage
r33824 at 31b (orig r13679): elacour | 2008-06-28 09:31:41 -0400
r9790 at datura: manu | 2008-06-28 15:31:24 +0200
Removed some old debugging added in the beginning of 3.0 ;)
r33825 at 31b (orig r13680): sunnavy | 2008-06-28 17:14:18 -0400
r13945 at sunnavys-mb: sunnavy | 2008-06-29 05:13:43 +0800
deleted /Install/Elements/Header, which is useless
r34170 at 31b (orig r13681): sunnavy | 2008-06-28 20:04:46 -0400
r13947 at sunnavys-mb: sunnavy | 2008-06-29 08:02:18 +0800
added our Own errors shown page
r34171 at 31b (orig r13682): sunnavy | 2008-06-28 20:05:05 -0400
r13948 at sunnavys-mb: sunnavy | 2008-06-29 08:03:50 +0800
rewrote the way errors shown
r37697 at 31b (orig r13684): sartak | 2008-06-29 15:50:05 -0400
r63313 at onn: sartak | 2008-06-26 20:48:51 -0400
Demote the invalid privacy string error to a debug, it's not actually end-of-world bad
r37698 at 31b (orig r13685): sartak | 2008-06-29 15:50:19 -0400
r63456 at onn: sartak | 2008-06-29 15:49:14 -0400
Ignore any undefined searches (which can happen with ACL issues)
r37699 at 31b (orig r13686): elacour | 2008-06-30 07:36:51 -0400
r9798 at datura: manu | 2008-06-30 13:36:39 +0200
Small typo.
r37704 at 31b (orig r13691): clkao | 2008-06-30 10:26:51 -0400
Eliminate the leading and trailing newlines/spaces is loc strings.
r37705 at 31b (orig r13692): clkao | 2008-06-30 10:31:54 -0400
script to tweak loc strings leading and trailing spaces for
mason templates.
r37706 at 31b (orig r13693): clkao | 2008-06-30 10:42:39 -0400
More tweaks for locstrings with args.
r37707 at 31b (orig r13694): spang | 2008-06-30 12:33:04 -0400
r43344 at loki: spang | 2008-06-30 17:32:26 +0100
correct mispelling in standalone_httpd.in
r39076 at 31b (orig r13695): sartak | 2008-06-30 16:13:04 -0400
r39077 at 31b (orig r13696): sartak | 2008-06-30 16:13:27 -0400
r63486 at onn: sartak | 2008-06-30 16:12:43 -0400
Check delete right *after* loading the Dashboard. Some other minor adjustments
r39080 at 31b (orig r13699): sartak | 2008-06-30 17:38:40 -0400
r63491 at onn: sartak | 2008-06-30 17:38:32 -0400
Revert mismerge
r39081 at 31b (orig r13700): sartak | 2008-06-30 18:49:11 -0400
r63493 at onn: sartak | 2008-06-30 18:48:48 -0400
Better "unable to load dashboard" errors
r39082 at 31b (orig r13701): sartak | 2008-06-30 21:46:39 -0400
r63536 at onn: sartak | 2008-06-30 21:46:25 -0400
Better ACL check in rt-email-dashboards
r39083 at 31b (orig r13702): sartak | 2008-06-30 22:40:03 -0400
r63538 at onn: sartak | 2008-06-30 22:32:24 -0400
Safeguard the lists of dashboards
r39084 at 31b (orig r13703): sartak | 2008-06-30 22:40:14 -0400
r63539 at onn: sartak | 2008-06-30 22:39:14 -0400
Add dashboard rights on groups
r39085 at 31b (orig r13704): sartak | 2008-06-30 22:40:23 -0400
r63540 at onn: sartak | 2008-06-30 22:39:21 -0400
Begin adding tests for group dashboards
r39086 at 31b (orig r13705): kyoki | 2008-07-01 01:04:31 -0400
r23476 at nyx: kyoki | 2008-06-30 16:48:34 -0400
RT-Ticket: 9772
RT-Status: Resolved
RT-Update: Correspond
SavedSearchId is now passed on. Broke tab bolding though
r39087 at 31b (orig r13706): kyoki | 2008-07-01 01:06:28 -0400
r23486 at nyx: kyoki | 2008-07-01 01:04:02 -0400
fixed tab bolding
r39088 at 31b (orig r13707): sartak | 2008-07-01 05:28:32 -0400
r63554 at onn: sartak | 2008-07-01 05:27:40 -0400
Add $user to the NewUser callback. Patch by Olly Stephens. rt3.fsck.com #9908.
r39089 at 31b (orig r13708): elacour | 2008-07-01 10:12:05 -0400
r9822 at datura: manu | 2008-07-01 16:10:59 +0200
RT-Ticket: 9660
RT-Update: correspond
RT-Status: resolved
* Switch from Mail::Address to Email::Address so AddressesFromHeader don't return
a broken PseudoTo value, but just skip it.
* Don't treat the To if it contains the PseudoTo in DeferDigestRecipients so we
don't remove it.
r39090 at 31b (orig r13709): clkao | 2008-07-01 10:21:20 -0400
fix locstring argument error spotted by audreyt.
r39098 at 31b (orig r13717): clkao | 2008-07-01 13:22:09 -0400
don't require RT_DBA_USER/RT_DBA_PASSWORD for SQLite to run tests.
r39099 at 31b (orig r13718): clkao | 2008-07-01 13:29:59 -0400
sqlite wants mason session data to be there.
r39108 at 31b (orig r13719): kyoki | 2008-07-01 13:57:49 -0400
r23502 at nyx: kyoki | 2008-07-01 13:57:39 -0400
Hopefully fixed Ticket 9860. Er ... I'm not really sure how to check it.
r39111 at 31b (orig r13722): kyoki | 2008-07-01 17:03:24 -0400
r23506 at nyx: kyoki | 2008-07-01 17:03:19 -0400
RT-Ticket: 8374
RT-Status: Resolved
RT-Update: Correspond
Fixed description and added Hints field to the boolean widget. Jesse, can you look at this and let me know if the description is better?
r39112 at 31b (orig r13723): sartak | 2008-07-01 17:56:01 -0400
r39113 at 31b (orig r13724): sartak | 2008-07-01 17:56:13 -0400
r63607 at onn: sartak | 2008-07-01 17:55:49 -0400
Bump the CGI dependency to 3.38 to fix a really loud set of warnings
r39114 at 31b (orig r13725): sartak | 2008-07-01 18:11:37 -0400
r63610 at onn: sartak | 2008-07-01 18:11:26 -0400
Use OwnerEmail instead of CorrespondAddress as a fallback for dashboards
r39115 at 31b (orig r13726): sartak | 2008-07-01 19:22:25 -0400
r63612 at onn: sartak | 2008-07-01 19:22:12 -0400
Better SubscribeDashboard right check, expand group dashboard tests
r39116 at 31b (orig r13727): sartak | 2008-07-02 03:11:21 -0400
r63614 at onn: sartak | 2008-07-02 03:11:05 -0400
Fix the titles of dashboard pages
r39121 at 31b (orig r13732): alexmv | 2008-07-02 15:23:43 -0400
r33667 at kohr-ah: chmrr | 2008-07-02 15:23:15 -0400
RT-Ticket: 8752
RT-Status: resolved
* Display times in the user's timezone. This is a horrible, horrible
hack, but it's no worse than the other horrors in the file already.
====> This breaks backwards compatibility! <====
r39122 at 31b (orig r13733): clkao | 2008-07-02 17:06:35 -0400
r31979 at mtl: clkao | 2008-07-02 19:05:29 +0100
Make the gpg tests parallelizable by fixing the hardcoded t/mailbox
used in the tests.
r39123 at 31b (orig r13734): kyoki | 2008-07-02 17:12:14 -0400
r23520 at nyx: kyoki | 2008-07-02 17:12:02 -0400
RT-Ticket: 9899
RT-Status: Resolved
RT-Update: Correspond
increased padding to prevent overlap
r39124 at 31b (orig r13735): ruz | 2008-07-02 17:41:09 -0400
* merge 3.7-RTIR-RELENG -> 3.8-trunk
r13629 at cubic-pc (orig r13585): ruz | 2008-06-25 05:41:58 +0400
* fetch everything except LargeContent
r13636 at cubic-pc (orig r13592): ruz | 2008-06-26 01:56:01 +0400
* DBIx::SB use Time::HiRes so it's really better to log precise timings
r13672 at cubic-pc (orig r13628): ruz | 2008-06-27 02:39:25 +0400
* HasEntry call is too slow, refactor it away.
Improves page rendering from hundreds of seconds to several.
r39125 at 31b (orig r13736): ruz | 2008-07-02 19:27:38 -0400
* merge 3.6 -> 3.8-trunk
r12694 at cubic-pc (orig r12650): falcone | 2008-05-24 02:14:51 +0400
r33443 at ketch: falcone | 2008-05-23 18:14:14 -0400
* document that LoadByName can get you a disabled Custom Field
r12738 at cubic-pc (orig r12694): elacour | 2008-05-26 18:22:00 +0400
r8872 at datura: manu | 2008-05-20 13:21:12 +0200
RT-Ticket: 9353
RT-Status: resolved
RT-Update: correspond
Added missing '%1' for global template name in es translation.
r12739 at cubic-pc (orig r12695): elacour | 2008-05-26 18:22:07 +0400
r8873 at datura: manu | 2008-05-20 13:21:30 +0200
Removed trailing space un frnech translation.
r12740 at cubic-pc (orig r12696): elacour | 2008-05-26 18:22:18 +0400
r8938 at datura: manu | 2008-05-26 16:13:42 +0200
RT-Ticket: 9179
RT-Status: resolved
RT-Update: correspond
Added European spanish (pt_pt) translation. Thanks to
josenunesmartins at gmail.com and rmo at eurotux.com.
r12741 at cubic-pc (orig r12697): elacour | 2008-05-26 18:34:39 +0400
r8949 at datura: manu | 2008-05-26 16:34:22 +0200
RT-Ticket: 6528
RT-Status: resolved
RT-Update: correspond
Spelling: s/that applies to/which applies to/g
r12759 at cubic-pc (orig r12715): alexmv | 2008-05-28 23:14:18 +0400
r32242 at kohr-ah: chmrr | 2008-05-28 15:13:45 -0400
* exit(1) if we fail; suggestion from jfillmore at westhost.com
r12811 at cubic-pc (orig r12767): falcone | 2008-05-30 23:22:10 +0400
r33600 at ketch: falcone | 2008-05-30 14:11:37 -0400
* add a SelfServiceRegex config option so you can
let Unprivileged users access things under
RT's control but outside of /SelfService/
r12923 at cubic-pc (orig r12879): falcone | 2008-06-04 22:16:43 +0400
r33764 at ketch: falcone | 2008-06-04 14:15:47 -0400
* handle searching for Groups in the People portion of the Jumbo page
r12983 at cubic-pc (orig r12939): ruz | 2008-06-06 01:09:11 +0400
* move replacement of __CurrentUser__ deeper in the code
** now it's possible it use it query builder
** you can give people links to searches by their id
r12985 at cubic-pc (orig r12941): ruz | 2008-06-06 01:14:38 +0400
* add new searches to TicketSQL: QueueCc, QueueAdminCc and QueueWatcher
** works on the same code as Cc, AdminCc and other for ticket watchers
** so the same operators and subkeys applies, as well as restrictions
For example you can build search "QueueAdminCc.id = '__CurrentUser__'"
to find all tickets in queues where you're set as admin cc on queue
level
r12987 at cubic-pc (orig r12943): ruz | 2008-06-06 01:20:53 +0400
* add id to possible subkey for people
* describe new types of searches
r13082 at cubic-pc (orig r13038): ruz | 2008-06-09 14:44:10 +0400
* delete duplicated code, I don't know how that end up here,
but we were double checking rights and deleted status
r13083 at cubic-pc (orig r13039): ruz | 2008-06-09 14:45:39 +0400
* add Queue column map, sometimes we need queue id
r13084 at cubic-pc (orig r13040): ruz | 2008-06-09 15:29:56 +0400
* additional check is not required with current ACL checks
r13233 at cubic-pc (orig r13189): ruz | 2008-06-12 02:25:46 +0400
* typo, luckily it doesn't affect code
r13234 at cubic-pc (orig r13190): ruz | 2008-06-12 02:45:44 +0400
* new failing tests in searches by watchers :(
r13337 at cubic-pc (orig r13293): alexmv | 2008-06-13 23:51:32 +0400
r33035 at kohr-ah: chmrr | 2008-06-13 15:51:10 -0400
* We want the strict definition of utf8, otherwise later regexes and the like can die
r13343 at cubic-pc (orig r13299): alexmv | 2008-06-14 00:27:30 +0400
r33043 at kohr-ah: chmrr | 2008-06-13 16:27:07 -0400
* Add dependency on Devel::StackTrace 1.19
r13372 at cubic-pc (orig r13328): alexmv | 2008-06-16 21:36:14 +0400
r33075 at kohr-ah: chmrr | 2008-06-16 13:36:07 -0400
* Updated releng.conf for 3.6.7; fix spacing
r13403 at cubic-pc (orig r13359): jesse | 2008-06-17 22:49:45 +0400
r33044 at 31b: jesse | 2008-06-17 14:49:14 -0400
14:25 <javoskam> obra: You may want to recheck a few things: " RT 3.6.7 Copyright 1996-2006"
r13476 at cubic-pc (orig r13432): alexmv | 2008-06-20 00:04:27 +0400
r33262 at kohr-ah: chmrr | 2008-06-19 16:04:01 -0400
Updated italian translation from Nicola Murino <nicola.murino at gmail.com>
r39128 at 31b (orig r13739): sartak | 2008-07-02 21:15:14 -0400
r63616 at onn: sartak | 2008-07-02 06:34:36 -0400
Expand the tests for dashboards+groups
r39129 at 31b (orig r13740): sartak | 2008-07-02 21:15:33 -0400
r63631 at onn: sartak | 2008-07-02 21:14:23 -0400
Typo fixes in Tickets_Overlay_SQL
r39132 at 31b (orig r13743): sartak | 2008-07-02 21:22:56 -0400
r63635 at onn: sartak | 2008-07-02 21:22:46 -0400
Move dashboards from prefs to tools
r39138 at 31b (orig r13749): sartak | 2008-07-03 00:06:58 -0400
r63649 at onn: sartak | 2008-07-03 00:01:42 -0400
Improve the Tools index page
r39139 at 31b (orig r13750): sartak | 2008-07-03 00:07:22 -0400
r63650 at onn: sartak | 2008-07-03 00:06:40 -0400
Improve the Reports index page.. slightly
r39153 at 31b (orig r13753): sartak | 2008-07-03 03:39:32 -0400
r63653 at onn: sartak | 2008-07-03 03:39:19 -0400
Rework the dashboard rights so personal and group dashboards make sense.
r39155 at 31b (orig r13754): sartak | 2008-07-03 05:31:16 -0400
r63657 at onn: sartak | 2008-07-03 05:31:01 -0400
Default the dashboard timezone to the system's tz instead of UTC. see also rt3.fsck.com #9952
r39156 at 31b (orig r13755): sartak | 2008-07-03 05:37:03 -0400
r63659 at onn: sartak | 2008-07-03 05:36:48 -0400
Add label/value classes to the subscription tables
r39157 at 31b (orig r13756): sartak | 2008-07-03 05:41:28 -0400
r63661 at onn: sartak | 2008-07-03 05:41:19 -0400
Exclude id from the Dashboards portlet
r39158 at 31b (orig r13757): elacour | 2008-07-03 06:04:50 -0400
r9849 at datura: manu | 2008-07-03 12:04:31 +0200
Revert commit 13734 which results in worse alignement.
r39159 at 31b (orig r13758): elacour | 2008-07-03 06:24:17 -0400
r9855 at datura: manu | 2008-07-03 12:24:02 +0200
Removed "display: inline-block;" from input-row css which seems useless, and is
compatible with very little navigators versions
(http://www.quirksmode.org/css/display.html#inlineblock). This fixed the
problem of Reminders label/inputs alignement in basic ticket display
(rt3.fsck.com:9899).
r39160 at 31b (orig r13759): ruz | 2008-07-03 06:45:42 -0400
* mark tests as todo
r39161 at 31b (orig r13760): ruz | 2008-07-03 06:51:55 -0400
* don't escape already escaped user representation
r39162 at 31b (orig r13761): spang | 2008-07-03 07:15:01 -0400
r43556 at loki: spang | 2008-07-03 10:37:48 +0100
make command_line.t use relative paths to find test data
r39163 at 31b (orig r13762): spang | 2008-07-03 07:15:10 -0400
r43557 at loki: spang | 2008-07-03 10:44:16 +0100
make sendmail.t use relative paths to find the test data
r39164 at 31b (orig r13763): spang | 2008-07-03 07:15:21 -0400
r43558 at loki: spang | 2008-07-03 12:09:49 +0100
make shredder/* use relative paths
r39165 at 31b (orig r13764): spang | 2008-07-03 07:15:41 -0400
r43559 at loki: spang | 2008-07-03 12:10:14 +0100
make t/shredder/utils.pl use relocateable paths
r39166 at 31b (orig r13765): spang | 2008-07-03 07:29:35 -0400
r43572 at loki: spang | 2008-07-03 12:29:19 +0100
don't break t/mail/sendmail.t
r39167 at 31b (orig r13766): spang | 2008-07-03 08:24:52 -0400
r43574 at loki: spang | 2008-07-03 13:16:31 +0100
make import_gnupg_key in Test.pm load keys relocateably
r39168 at 31b (orig r13767): spang | 2008-07-03 08:25:05 -0400
r43575 at loki: spang | 2008-07-03 13:24:34 +0100
make t/mail/*gnupg*.t relocateable
r39169 at 31b (orig r13768): elacour | 2008-07-03 08:27:01 -0400
r9857 at datura: manu | 2008-07-03 14:26:52 +0200
RT-Ticket: 9929
RT-Update: correspond
RT-Status: resolved
Lower font size (12 -> 10) in graphviz boxes.
r39170 at 31b (orig r13769): elacour | 2008-07-03 08:49:51 -0400
r9868 at datura: manu | 2008-07-03 14:49:41 +0200
RT-Ticket: 9954
RT-Update: correspond
RT-Status: open
Added () arrount ShowUserVerbose nickname as it is not automagically added by
Email::Address (was in Mail::Address).
r39172 at 31b (orig r13771): spang | 2008-07-03 15:32:57 -0400
r43557 at loki: spang | 2008-07-03 10:44:16 +0100
make sendmail.t use relative paths to find the test data
r39173 at 31b (orig r13772): spang | 2008-07-03 15:33:23 -0400
r43558 at loki: spang | 2008-07-03 12:09:49 +0100
make shredder/* use relative paths
r39174 at 31b (orig r13773): spang | 2008-07-03 15:33:36 -0400
r43559 at loki: spang | 2008-07-03 12:10:14 +0100
make t/shredder/utils.pl use relocateable paths
r39175 at 31b (orig r13774): spang | 2008-07-03 15:34:04 -0400
r39176 at 31b (orig r13775): spang | 2008-07-03 15:34:17 -0400
r43572 at loki: spang | 2008-07-03 12:29:19 +0100
don't break t/mail/sendmail.t
r39177 at 31b (orig r13776): spang | 2008-07-03 15:34:29 -0400
r43574 at loki: spang | 2008-07-03 13:16:31 +0100
make import_gnupg_key in Test.pm load keys relocateably
r39178 at 31b (orig r13777): spang | 2008-07-03 15:35:03 -0400
r43575 at loki: spang | 2008-07-03 13:24:34 +0100
make t/mail/*gnupg*.t relocateable
r39179 at 31b (orig r13778): spang | 2008-07-03 15:35:14 -0400
r43578 at loki: spang | 2008-07-03 15:50:26 +0100
add subroutines for converting test data paths into relocateable paths
r39180 at 31b (orig r13779): spang | 2008-07-03 15:35:33 -0400
r43579 at loki: spang | 2008-07-03 15:51:36 +0100
make command_line.t use RT::Test::get_relocateable_file()
r39181 at 31b (orig r13780): spang | 2008-07-03 15:35:45 -0400
r43580 at loki: spang | 2008-07-03 15:59:33 +0100
command_line.t doesn't need File::Spec anymore
r39182 at 31b (orig r13781): spang | 2008-07-03 15:35:55 -0400
r43581 at loki: spang | 2008-07-03 16:40:12 +0100
make sendmail.t use new RT::Test functions
r39183 at 31b (orig r13782): spang | 2008-07-03 15:36:16 -0400
r43582 at loki: spang | 2008-07-03 17:00:09 +0100
generalize get_relocateable_dir()
r39184 at 31b (orig r13783): spang | 2008-07-03 15:36:30 -0400
r43583 at loki: spang | 2008-07-03 17:00:29 +0100
make command_line.t use generalized get_relocateable_dir()
r39185 at 31b (orig r13784): spang | 2008-07-03 15:36:43 -0400
r43584 at loki: spang | 2008-07-03 17:13:51 +0100
make sendmail.t use updated get_reloacateable_file
r39186 at 31b (orig r13785): spang | 2008-07-03 15:37:00 -0400
r43585 at loki: spang | 2008-07-03 17:19:48 +0100
move comments to pod
r39187 at 31b (orig r13786): spang | 2008-07-03 15:37:15 -0400
r39188 at 31b (orig r13787): spang | 2008-07-03 15:37:49 -0400
r43590 at loki: spang | 2008-07-03 17:59:40 +0100
add function for absolute dirs, and fix import_gnupg_key
r39189 at 31b (orig r13788): spang | 2008-07-03 15:38:02 -0400
r43591 at loki: spang | 2008-07-03 18:56:53 +0100
make shredder tests use get_relocateable_file from RT::Test
r39190 at 31b (orig r13789): spang | 2008-07-03 15:38:18 -0400
r43592 at loki: spang | 2008-07-03 19:12:31 +0100
make mail gnupg tests use get_relocateable_dir
r39191 at 31b (orig r13790): spang | 2008-07-03 15:38:30 -0400
r43593 at loki: spang | 2008-07-03 19:34:48 +0100
fix mistake in 01basics.t
r39192 at 31b (orig r13791): spang | 2008-07-03 15:38:41 -0400
r43594 at loki: spang | 2008-07-03 19:55:26 +0100
make 00-mason-syntax.t use relocateable paths to find test data
r39193 at 31b (orig r13792): trs | 2008-07-03 17:14:54 -0400
r36835 at zot: tom | 2008-07-03 17:13:32 -0400
IE6 seems to fail with our old onclick handler. Use prototype's event observation instead and make it work.
r39398 at 31b (orig r13816): spang | 2008-07-07 04:47:51 -0400
r43691 at loki: spang | 2008-07-07 09:12:22 +0100
fix bug in get_relocateable_dir when dir is absolute
r39399 at 31b (orig r13817): spang | 2008-07-07 04:48:10 -0400
r43692 at loki: spang | 2008-07-07 09:34:28 +0100
fix a bug in my change to get_relocateable_dir. also, I can't spell, relocateable->relocatable
r39400 at 31b (orig r13818): spang | 2008-07-07 04:48:27 -0400
r43693 at loki: spang | 2008-07-07 09:44:58 +0100
update to non-mispelled method name
r39402 at 31b (orig r13820): sartak | 2008-07-07 10:36:17 -0400
r63657 at onn: sartak | 2008-07-03 05:31:01 -0400
Default the dashboard timezone to the system's tz instead of UTC. see also rt3.fsck.com #9952
r39403 at 31b (orig r13821): sartak | 2008-07-07 10:36:32 -0400
r63659 at onn: sartak | 2008-07-03 05:36:48 -0400
Add label/value classes to the subscription tables
r39404 at 31b (orig r13822): sartak | 2008-07-07 10:36:42 -0400
r63661 at onn: sartak | 2008-07-03 05:41:19 -0400
Exclude id from the Dashboards portlet
r39405 at 31b (orig r13823): sartak | 2008-07-07 10:37:06 -0400
r63761 at onn: sartak | 2008-07-07 10:29:25 -0400
Remove dashboard unsubscribe, it's going to instead be a frequency setting
r39406 at 31b (orig r13824): sartak | 2008-07-07 10:37:20 -0400
r63762 at onn: sartak | 2008-07-07 10:34:14 -0400
Remove some now-unneeded tests for unsubscribing to dashboards
r39407 at 31b (orig r13825): sartak | 2008-07-07 10:37:31 -0400
r63763 at onn: sartak | 2008-07-07 10:36:03 -0400
Add a "never" frequency for subscriptions, and move the hour field down below frequency
r39408 at 31b (orig r13826): sartak | 2008-07-07 10:50:00 -0400
r63770 at onn: sartak | 2008-07-07 10:49:44 -0400
disabled users failing access checks is totally not an error
r39409 at 31b (orig r13827): sunnavy | 2008-07-07 11:54:33 -0400
r14111 at sunnavys-mb: sunnavy | 2008-07-07 23:53:40 +0800
fixed show check|next bug
r39412 at 31b (orig r13828): jesse | 2008-07-07 12:15:05 -0400
* Make search links from dashboards and the homepage go to a fully qualified url
r39413 at 31b (orig r13829): sartak | 2008-07-07 12:21:37 -0400
r63772 at onn: sartak | 2008-07-07 12:19:28 -0400
Absolute paths in search titleboxes so pages outside of / can use them
r39414 at 31b (orig r13830): sartak | 2008-07-07 12:21:47 -0400
r39415 at 31b (orig r13831): jesse | 2008-07-07 12:35:44 -0400
* WebBaseURL doesn't include the local path if you're running RT not at the 'root' of your webserver. WebURL does. Fixed saved searches and shredder to use the right one
r39416 at 31b (orig r13832): kyoki | 2008-07-07 14:05:43 -0400
r23520 at nyx: kyoki | 2008-07-02 17:12:02 -0400
RT-Ticket: 9899
RT-Status: Resolved
RT-Update: Correspond
increased padding to prevent overlap
r39417 at 31b (orig r13833): kyoki | 2008-07-07 14:06:08 -0400
r23622 at nyx: kyoki | 2008-07-07 14:05:28 -0400
RT-Ticket: 9860
RT-Status: Resolved
RT-Update: Correspond
fixed path
r39418 at 31b (orig r13834): sartak | 2008-07-07 14:27:09 -0400
r63780 at onn: sartak | 2008-07-07 14:25:37 -0400
email-dashboards: Use RT->Config->Get('WebURL') instead of $RT::WebURL. vverbose-log the actual component we end up running.
r39419 at 31b (orig r13835): kyoki | 2008-07-07 14:46:21 -0400
r23627 at nyx: kyoki | 2008-07-07 14:46:14 -0400
no longer shows empty () if comment isn't defined
r39424 at 31b (orig r13836): sartak | 2008-07-07 14:54:31 -0400
r39425 at 31b (orig r13837): sartak | 2008-07-07 14:54:42 -0400
r63785 at onn: sartak | 2008-07-07 14:52:51 -0400
email-dashboards: Rename vverbose to debug
r39426 at 31b (orig r13838): kyoki | 2008-07-07 15:10:04 -0400
r23629 at nyx: kyoki | 2008-07-07 15:09:27 -0400
revert changes to padding-right
r39427 at 31b (orig r13839): sartak | 2008-07-07 15:22:16 -0400
r39428 at 31b (orig r13840): sartak | 2008-07-07 15:22:30 -0400
r63790 at onn: sartak | 2008-07-07 15:21:31 -0400
email-dashboards: Instead of relying on WebURL, pick apart the URI the right way
r39429 at 31b (orig r13841): sartak | 2008-07-07 15:24:14 -0400
r63795 at onn: sartak | 2008-07-07 15:23:54 -0400
Don't email dashboards to unprivileged users ever
r39438 at 31b (orig r13842): sartak | 2008-07-07 15:46:57 -0400
r63797 at onn: sartak | 2008-07-07 15:46:47 -0400
Light up that Show tab when we have the special dhandler form of render
Modified: rt/3.8/branches/3.8.0-releng/Makefile.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/Makefile.in (original)
+++ rt/3.8/branches/3.8.0-releng/Makefile.in Mon Jul 7 16:21:51 2008
@@ -89,11 +89,13 @@
# {{{ Files and directories
# DESTDIR allows you to specify that RT be installed somewhere other than
-# where it will eventually reside
+# where it will eventually reside. DESTDIR _must_ have a trailing slash
+# if it's defined.
DESTDIR =
+
RT_PATH = @RT_PATH_R@
RT_ETC_PATH = @RT_ETC_PATH_R@
RT_BIN_PATH = @RT_BIN_PATH_R@
@@ -103,7 +105,7 @@
RT_VAR_PATH = @RT_VAR_PATH_R@
RT_DOC_PATH = @RT_DOC_PATH_R@
RT_LOCAL_PATH = @RT_LOCAL_PATH_R@
-RT_LOCAL_PLUGIN_PATH = @RT_LOCAL_PATH_R@/plugins
+LOCAL_PLUGIN_PATH = @RT_LOCAL_PATH_R@/plugins
LOCAL_ETC_PATH = @LOCAL_ETC_PATH_R@
LOCAL_LIB_PATH = @LOCAL_LIB_PATH_R@
LOCAL_LEXICON_PATH = @LOCAL_LEXICON_PATH_R@
@@ -246,8 +248,7 @@
all: default
default:
- @echo "Please read RT's readme before installing. Not doing so could"
- @echo "be dangerous."
+ @echo "Please read RT's README before beginning your installation."
@@ -295,64 +296,64 @@
# {{{ fixperms
fixperms:
# Make the libraries readable
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(RT_LIB_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(RT_LIB_PATH)
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(RT_LIB_PATH)
+ chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)$(RT_PATH)
+ chown -R $(LIBS_OWNER) $(DESTDIR)$(RT_LIB_PATH)
+ chgrp -R $(LIBS_GROUP) $(DESTDIR)$(RT_LIB_PATH)
+ chmod -R u+rwX,go-w,go+rX $(DESTDIR)$(RT_LIB_PATH)
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
+ chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)$(RT_BIN_PATH)
+ chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)$(RT_BIN_PATH)
- chmod 0755 $(DESTDIR)/$(RT_ETC_PATH)
- cd $(DESTDIR)/$(RT_ETC_PATH) && chmod 0400 $(ETC_FILES)
+ chmod 0755 $(DESTDIR)$(RT_ETC_PATH)
+ cd $(DESTDIR)$(RT_ETC_PATH) && chmod 0400 $(ETC_FILES)
#TODO: the config file should probably be able to have its
# owner set separately from the binaries.
- chown -R $(BIN_OWNER) $(DESTDIR)/$(RT_ETC_PATH)
- chgrp -R $(RTGROUP) $(DESTDIR)/$(RT_ETC_PATH)
+ chown -R $(BIN_OWNER) $(DESTDIR)$(RT_ETC_PATH)
+ chgrp -R $(RTGROUP) $(DESTDIR)$(RT_ETC_PATH)
- chmod 0440 $(DESTDIR)/$(CONFIG_FILE)
- chmod 0640 $(DESTDIR)/$(SITE_CONFIG_FILE)
+ chmod 0440 $(DESTDIR)$(CONFIG_FILE)
+ chmod 0640 $(DESTDIR)$(SITE_CONFIG_FILE)
# Make the system binaries
- cd $(DESTDIR)/$(RT_BIN_PATH) && ( chmod 0755 $(BINARIES) ; chown $(BIN_OWNER) $(BINARIES); chgrp $(RTGROUP) $(BINARIES))
+ cd $(DESTDIR)$(RT_BIN_PATH) && ( chmod 0755 $(BINARIES) ; chown $(BIN_OWNER) $(BINARIES); chgrp $(RTGROUP) $(BINARIES))
# Make the system binaries executable also
- cd $(DESTDIR)/$(RT_SBIN_PATH) && ( chmod 0755 $(SYSTEM_BINARIES) ; chown $(BIN_OWNER) $(SYSTEM_BINARIES); chgrp $(RTGROUP) $(SYSTEM_BINARIES))
+ cd $(DESTDIR)$(RT_SBIN_PATH) && ( chmod 0755 $(SYSTEM_BINARIES) ; chown $(BIN_OWNER) $(SYSTEM_BINARIES); chgrp $(RTGROUP) $(SYSTEM_BINARIES))
# Make the web ui readable by all.
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH) \
- $(DESTDIR)/$(LOCAL_LEXICON_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
+ chmod -R u+rwX,go-w,go+rX $(DESTDIR)$(MASON_HTML_PATH) \
+ $(DESTDIR)$(MASON_LOCAL_HTML_PATH) \
+ $(DESTDIR)$(LOCAL_LEXICON_PATH)
+ chown -R $(LIBS_OWNER) $(DESTDIR)$(MASON_HTML_PATH) \
+ $(DESTDIR)$(MASON_LOCAL_HTML_PATH)
+ chgrp -R $(LIBS_GROUP) $(DESTDIR)$(MASON_HTML_PATH) \
+ $(DESTDIR)$(MASON_LOCAL_HTML_PATH)
# Make the web ui's data dir writable
- chmod 0770 $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chown -R $(WEB_USER) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chgrp -R $(WEB_GROUP) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
+ chmod 0770 $(DESTDIR)$(MASON_DATA_PATH) \
+ $(DESTDIR)$(MASON_SESSION_PATH)
+ chown -R $(WEB_USER) $(DESTDIR)$(MASON_DATA_PATH) \
+ $(DESTDIR)$(MASON_SESSION_PATH)
+ chgrp -R $(WEB_GROUP) $(DESTDIR)$(MASON_DATA_PATH) \
+ $(DESTDIR)$(MASON_SESSION_PATH)
# }}}
# {{{ dirs
dirs:
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_LOG_PATH)
- $(INSTALL) -m 0770 -d $(DESTDIR)/$(MASON_DATA_PATH)
- $(INSTALL) -m 0770 -d $(DESTDIR)/$(MASON_DATA_PATH)/cache
- $(INSTALL) -m 0770 -d $(DESTDIR)/$(MASON_DATA_PATH)/etc
- $(INSTALL) -m 0770 -d $(DESTDIR)/$(MASON_DATA_PATH)/obj
- $(INSTALL) -m 0770 -d $(DESTDIR)/$(MASON_SESSION_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(MASON_HTML_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_ETC_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_LIB_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_PLUGIN_PATH)
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_LEXICON_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_LOG_PATH)
+ $(INSTALL) -m 0770 -d $(DESTDIR)$(MASON_DATA_PATH)
+ $(INSTALL) -m 0770 -d $(DESTDIR)$(MASON_DATA_PATH)/cache
+ $(INSTALL) -m 0770 -d $(DESTDIR)$(MASON_DATA_PATH)/etc
+ $(INSTALL) -m 0770 -d $(DESTDIR)$(MASON_DATA_PATH)/obj
+ $(INSTALL) -m 0770 -d $(DESTDIR)$(MASON_SESSION_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(MASON_HTML_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(MASON_LOCAL_HTML_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_ETC_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_LIB_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_PLUGIN_PATH)
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_LEXICON_PATH)
# }}}
install: testdeps config-install dirs files-install fixperms instruct
@@ -360,9 +361,9 @@
files-install: libs-install etc-install config-install bin-install sbin-install html-install local-install doc-install
config-install:
- $(INSTALL) -m 0755 -o $(BIN_OWNER) -g $(RTGROUP) -d $(DESTDIR)/$(CONFIG_FILE_PATH)
- -$(INSTALL) -m 0440 -o $(BIN_OWNER) -g $(RTGROUP) etc/RT_Config.pm $(DESTDIR)/$(CONFIG_FILE)
- [ -f $(DESTDIR)/$(SITE_CONFIG_FILE) ] || $(INSTALL) -m 0640 -o $(BIN_OWNER) -g $(RTGROUP) etc/RT_SiteConfig.pm $(DESTDIR)/$(SITE_CONFIG_FILE)
+ $(INSTALL) -m 0755 -o $(BIN_OWNER) -g $(RTGROUP) -d $(DESTDIR)$(CONFIG_FILE_PATH)
+ -$(INSTALL) -m 0440 -o $(BIN_OWNER) -g $(RTGROUP) etc/RT_Config.pm $(DESTDIR)$(CONFIG_FILE)
+ [ -f $(DESTDIR)$(SITE_CONFIG_FILE) ] || $(INSTALL) -m 0640 -o $(BIN_OWNER) -g $(RTGROUP) etc/RT_SiteConfig.pm $(DESTDIR)$(SITE_CONFIG_FILE)
@echo "Installed configuration. About to install RT in $(RT_PATH)"
TEST_FILES = t/*.t t/*/*.t
@@ -372,7 +373,7 @@
$(PERL) "-MExtUtils::Command::MM" -e "test_harness($(TEST_VERBOSE), 'lib')" $(TEST_FILES)
regression-install: config-install
- $(PERL) -pi -e 's/Set\(\$$DatabaseName.*\);/Set\(\$$DatabaseName, "rt3regression"\);/' $(DESTDIR)/$(CONFIG_FILE)
+ $(PERL) -pi -e 's/Set\(\$$DatabaseName.*\);/Set\(\$$DatabaseName, "rt3regression"\);/' $(DESTDIR)$(CONFIG_FILE)
# {{{ database-installation
@@ -394,55 +395,55 @@
# {{{ libs-install
libs-install:
- [ -d $(DESTDIR)/$(RT_LIB_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_LIB_PATH)
- -cd lib && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_LIB_PATH)/{} \;
- -cd lib && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(RT_LIB_PATH)/{} \;
+ [ -d $(DESTDIR)$(RT_LIB_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_LIB_PATH)
+ -cd lib && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_LIB_PATH)/{} \;
+ -cd lib && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)$(RT_LIB_PATH)/{} \;
# }}}
# {{{ html-install
html-install:
- [ -d $(DESTDIR)/$(MASON_HTML_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)/$(MASON_HTML_PATH)
- -cd share/html && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)/$(MASON_HTML_PATH)/{} \;
- -cd share/html && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(MASON_HTML_PATH)/{} \;
+ [ -d $(DESTDIR)$(MASON_HTML_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)$(MASON_HTML_PATH)
+ -cd share/html && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)$(MASON_HTML_PATH)/{} \;
+ -cd share/html && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)$(MASON_HTML_PATH)/{} \;
# }}}
# {{{ doc-install
doc-install:
# RT 3.0.0 - RT 3.0.2 would accidentally create a file instead of a dir
- -[ -f $(DESTDIR)/$(RT_DOC_PATH) ] && rm $(DESTDIR)/$(RT_DOC_PATH)
- [ -d $(DESTDIR)/$(RT_DOC_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_DOC_PATH)
- -$(INSTALL) -m 0644 ./README $(DESTDIR)/$(RT_DOC_PATH)/
+ -[ -f $(DESTDIR)$(RT_DOC_PATH) ] && rm $(DESTDIR)$(RT_DOC_PATH)
+ [ -d $(DESTDIR)$(RT_DOC_PATH) ] || $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_DOC_PATH)
+ -$(INSTALL) -m 0644 ./README $(DESTDIR)$(RT_DOC_PATH)/
# }}}
# {{{ etc-install
etc-install:
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_ETC_PATH)
- cd etc && $(INSTALL) -m 0644 $(ETC_FILES) $(DESTDIR)/$(RT_ETC_PATH)/
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_ETC_PATH)
+ cd etc && $(INSTALL) -m 0644 $(ETC_FILES) $(DESTDIR)$(RT_ETC_PATH)/
# }}}
# {{{ sbin-install
sbin-install:
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_SBIN_PATH)
- cd sbin && $(INSTALL) -o $(BIN_OWNER) -g $(RTGROUP) -m 0755 $(SYSTEM_BINARIES) $(DESTDIR)/$(RT_SBIN_PATH)/
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_SBIN_PATH)
+ cd sbin && $(INSTALL) -o $(BIN_OWNER) -g $(RTGROUP) -m 0755 $(SYSTEM_BINARIES) $(DESTDIR)$(RT_SBIN_PATH)/
# }}}
# {{{ bin-install
bin-install:
- $(INSTALL) -m 0755 -d $(DESTDIR)/$(RT_BIN_PATH)
- cd bin && $(INSTALL) -o $(BIN_OWNER) -g $(RTGROUP) -m 0755 $(BINARIES) $(DESTDIR)/$(RT_BIN_PATH)/
+ $(INSTALL) -m 0755 -d $(DESTDIR)$(RT_BIN_PATH)
+ cd bin && $(INSTALL) -o $(BIN_OWNER) -g $(RTGROUP) -m 0755 $(BINARIES) $(DESTDIR)$(RT_BIN_PATH)/
# {{{ local-install
local-install:
- -cd local/html && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)/{} \;
- -cd local/html && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)/{} \;
- -cd local/po && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_LEXICON_PATH)/{} \;
- -cd local/po && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(LOCAL_LEXICON_PATH)/{} \;
- -cd local/etc && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)/$(LOCAL_ETC_PATH)/{} \;
- -cd local/etc && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(LOCAL_ETC_PATH)/{} \;
+ -cd local/html && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)$(MASON_LOCAL_HTML_PATH)/{} \;
+ -cd local/html && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)$(MASON_LOCAL_HTML_PATH)/{} \;
+ -cd local/po && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_LEXICON_PATH)/{} \;
+ -cd local/po && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)$(LOCAL_LEXICON_PATH)/{} \;
+ -cd local/etc && find . -type d -name .svn -prune -o -type d -exec $(INSTALL) -m 0755 -d $(DESTDIR)$(LOCAL_ETC_PATH)/{} \;
+ -cd local/etc && find . -type d -name .svn -prune -o -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)$(LOCAL_ETC_PATH)/{} \;
# }}}
# {{{ Best Practical Build targets -- no user servicable parts inside
Modified: rt/3.8/branches/3.8.0-releng/bin/standalone_httpd.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/bin/standalone_httpd.in (original)
+++ rt/3.8/branches/3.8.0-releng/bin/standalone_httpd.in Mon Jul 7 16:21:51 2008
@@ -150,7 +150,7 @@
sub handle_bind_error {
print STDERR <<EOF;
-WARNINING: RT couldn't start up a web server on port @{[$port]}.
+WARNING: RT couldn't start up a web server on port @{[$port]}.
This is often the case if you're running @{[$0]} as
someone other than your system's "root" user.
EOF
Modified: rt/3.8/branches/3.8.0-releng/configure.ac
==============================================================================
--- rt/3.8/branches/3.8.0-releng/configure.ac (original)
+++ rt/3.8/branches/3.8.0-releng/configure.ac Mon Jul 7 16:21:51 2008
@@ -307,6 +307,7 @@
fi
AC_SUBST(RT_GPG)
+
dnl This section maps the variable names this script 'natively' generates
dnl to their existing names. They should be removed from here as the .in
dnl files are changed to use the new names.
@@ -334,7 +335,6 @@
AC_SUBST([MASON_LOCAL_HTML_PATH], ${exp_customhtmldir})
AC_SUBST([LOCAL_LEXICON_PATH], ${exp_customlexdir})
AC_SUBST([LOCAL_LIB_PATH], ${exp_customlibdir})
-AC_SUBST([DESTDIR], ${exp_prefix})
AC_SUBST([RT_LOG_PATH], ${exp_logfiledir})
if test ${exp_sysconfdir} = "etc"; then
@@ -355,7 +355,6 @@
AC_SUBST([MASON_LOCAL_HTML_PATH_R], ${exp_prefix}/${exp_customhtmldir})
AC_SUBST([LOCAL_LEXICON_PATH_R], ${exp_prefix}/${exp_customlexdir})
AC_SUBST([LOCAL_LIB_PATH_R], ${exp_prefix}/${exp_customlibdir})
-AC_SUBST([DESTDIR_R], ${exp_prefix})
AC_SUBST([RT_LOG_PATH_R], ${exp_prefix}/${exp_logfiledir})
else
AC_SUBST([RT_PATH_R], ${exp_prefix})
@@ -375,7 +374,6 @@
AC_SUBST([MASON_LOCAL_HTML_PATH_R], ${exp_customhtmldir})
AC_SUBST([LOCAL_LEXICON_PATH_R], ${exp_customlexdir})
AC_SUBST([LOCAL_LIB_PATH_R], ${exp_customlibdir})
-AC_SUBST([DESTDIR_R], ${exp_prefix})
AC_SUBST([RT_LOG_PATH_R], ${exp_logfiledir})
fi
Modified: rt/3.8/branches/3.8.0-releng/etc/RT_Config.pm.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/etc/RT_Config.pm.in (original)
+++ rt/3.8/branches/3.8.0-releng/etc/RT_Config.pm.in Mon Jul 7 16:21:51 2008
@@ -450,6 +450,15 @@
Set($CommentAddress , '');
+=item C<$DashboardAddress>
+
+The email address from which RT will send dashboards. If none is set, then
+C<$OwnerEmail> will be used.
+
+=cut
+
+Set($DashboardAddress, '');
+
=item C<UseFriendlyFromLine>
By default, RT sets the outgoing mail's "From:" header to
@@ -548,6 +557,16 @@
Set($ShowBccHeader, 0);
+=item C<$DashboardSubject>
+
+Lets you set the subject of dashboards. Arguments are the frequency (Daily,
+Weekly, Monthly) of the dashboard and the dashboard's name. [_1] for the name
+of the dashboard.
+
+=cut
+
+Set($DashboardSubject, '%s Dashboard: %s');
+
=back
=head1 GnuPG Configuration
@@ -780,6 +799,17 @@
Set($WebNoAuthRegex, qr{^ (?:/+NoAuth/ | /+REST/\d+\.\d+/NoAuth/) }x );
+=item C<$SelfServiceRegex>
+
+What portion of RT's URLspace should be accessible to Unprivileged users
+This does not override the redirect from F</Ticket/Display.html> to
+F</SelfService/Display.html> when Unprivileged users attempt to access
+ticked displays
+
+=cut
+
+Set($SelfServiceRegex, qr!^(?:/+SelfService/)!x );
+
=item C<$MessageBoxWidth>, C<$MessageBoxHeight>
For message boxes, set the entry box width, height and what type of
@@ -989,6 +1019,18 @@
Set($ShowTransactionImages, 1);
+=item C<$PlainTextPre>
+
+Normally plaintext attachments are displayed as HTML with line
+breaks preserved. This causes space- and tab-based formatting not
+to be displayed correctly. By setting $PlainTextPre they'll be
+displayed using <pre> instead so such formatting works, but they'll
+use a monospaced font.
+
+=cut
+
+Set($PlainTextPre, 0);
+
=item C<$ShowUnreadMessageNotifications>
@@ -1009,7 +1051,7 @@
=cut
-Set($HomepageComponents, [qw(QuickCreate Quicksearch MyAdminQueues MySupportQueues MyReminders RefreshHomepage)]);
+Set($HomepageComponents, [qw(QuickCreate Quicksearch MyAdminQueues MySupportQueues MyReminders RefreshHomepage Dashboards)]);
=item C<@MasonParameters>
Modified: rt/3.8/branches/3.8.0-releng/etc/initialdata
==============================================================================
--- rt/3.8/branches/3.8.0-releng/etc/initialdata (original)
+++ rt/3.8/branches/3.8.0-releng/etc/initialdata Mon Jul 7 16:21:51 2008
@@ -428,6 +428,31 @@
],
},
+{
+ Queue => 0,
+ Name => "Error: Missing dashboard", # loc
+ Description =>
+ "Inform user that a dashboard he subscribed to is missing", # loc
+ Content => q{Subject: [{RT->Config->Get('rtname')}] Missing dashboard!
+
+Greetings,
+
+You are subscribed to a dashboard that is currently missing. Most likely, the dashboard was deleted.
+
+RT will remove this subscription as it is no longer useful. Here's the information RT had about your subscription:
+
+DashboardID: { $SubscriptionObj->SubValue('DashboardId') }
+Frequency: { $SubscriptionObj->SubValue('Frequency') }
+Hour: { $SubscriptionObj->SubValue('Hour') }
+{
+ $SubscriptionObj->SubValue('Frequency') eq 'weekly'
+ ? "Day of week: " . $SubscriptionObj->SubValue('Dow')
+ : $SubscriptionObj->SubValue('Frequency') eq 'monthly'
+ ? "Day of month: " . $SubscriptionObj->SubValue('Dom')
+ : ''
+}
+}
+},
);
# }}}
@@ -695,6 +720,7 @@
[
{ type => 'component', name => 'MyReminders' },
{ type => 'component', name => 'Quicksearch' },
+ { type => 'component', name => 'Dashboards' },
{ type => 'component', name => 'RefreshHomepage' },
]
},
Modified: rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.3/schema.Pg
==============================================================================
--- rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.3/schema.Pg (original)
+++ rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.3/schema.Pg Mon Jul 7 16:21:51 2008
@@ -1 +1 @@
-ALTER TABLE customfields ALTER COLUMN pattern VARCHAR(65536);
+ALTER TABLE customfields ALTER COLUMN pattern TYPE VARCHAR(65536);
Added: rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.87/content
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/etc/upgrade/3.7.87/content Mon Jul 7 16:21:51 2008
@@ -0,0 +1,28 @@
+ at Templates = (
+{
+ Queue => 0,
+ Name => "Error: Missing dashboard", # loc
+ Description =>
+ "Inform user that a dashboard he subscribed to is missing", # loc
+ Content => q{Subject: [{RT->Config->Get('rtname')}] Missing dashboard!
+
+Greetings,
+
+You are subscribed to a dashboard that is currently missing. Most likely, the dashboard was deleted.
+
+RT will remove this subscription as it is no longer useful. Here's the information RT had about your subscription:
+
+DashboardID: { $SubscriptionObj->SubValue('DashboardId') }
+Frequency: { $SubscriptionObj->SubValue('Frequency') }
+Hour: { $SubscriptionObj->SubValue('Hour') }
+{
+ $SubscriptionObj->SubValue('Frequency') eq 'weekly'
+ ? "Day of week: " . $SubscriptionObj->SubValue('Dow')
+ : $SubscriptionObj->SubValue('Frequency') eq 'monthly'
+ ? "Day of month: " . $SubscriptionObj->SubValue('Dom')
+ : ''
+}
+}
+},
+);
+
Modified: rt/3.8/branches/3.8.0-releng/lib/RT.pm.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT.pm.in (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT.pm.in Mon Jul 7 16:21:51 2008
@@ -53,6 +53,7 @@
use File::Spec ();
+use Cwd ();
use vars qw($Config $System $SystemUser $Nobody $Handle $Logger $_INSTALL_MODE);
@@ -104,6 +105,8 @@
File::Spec->catdir( $pm_path, File::Spec->updir ) );
}
+ $BasePath = Cwd::realpath( $BasePath );
+
for my $path ( qw/EtcPath BinPath SbinPath VarPath LocalPath LocalEtcPath
LocalLibPath LocalLexiconPath LocalPluginPath MasonComponentRoot
MasonLocalComponentRoot MasonDataDir MasonSessionDir/ ) {
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Action/Notify.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Action/Notify.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Action/Notify.pm Mon Jul 7 16:21:51 2008
@@ -54,7 +54,7 @@
use base qw(RT::Action::SendEmail);
-use Mail::Address;
+use Email::Address;
=head2 Prepare
@@ -89,10 +89,10 @@
if ( $arg =~ /\bOtherRecipients\b/ ) {
if ( my $attachment = $self->TransactionObj->Attachments->First ) {
- push @Cc, map { $_->address } Mail::Address->parse(
+ push @Cc, map { $_->address } Email::Address->parse(
$attachment->GetHeader('RT-Send-Cc')
);
- push @Bcc, map { $_->address } Mail::Address->parse(
+ push @Bcc, map { $_->address } Email::Address->parse(
$attachment->GetHeader('RT-Send-Bcc')
);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Action/SendEmail.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Action/SendEmail.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Action/SendEmail.pm Mon Jul 7 16:21:51 2008
@@ -59,7 +59,7 @@
use RT::EmailParser;
use RT::Interface::Email;
-use Mail::Address;
+use Email::Address;
our @EMAIL_RECIPIENT_HEADERS = qw(To Cc Bcc);
@@ -240,7 +240,7 @@
=head2 To
-Returns an array of L<Mail::Address> objects containing all the To: recipients for this notification
+Returns an array of L<Email::Address> objects containing all the To: recipients for this notification
=cut
@@ -251,7 +251,7 @@
=head2 Cc
-Returns an array of L<Mail::Address> objects containing all the Cc: recipients for this notification
+Returns an array of L<Email::Address> objects containing all the Cc: recipients for this notification
=cut
@@ -262,7 +262,7 @@
=head2 Bcc
-Returns an array of L<Mail::Address> objects containing all the Bcc: recipients for this notification
+Returns an array of L<Email::Address> objects containing all the Bcc: recipients for this notification
=cut
@@ -276,7 +276,7 @@
my $self = shift;
my $field = shift;
my $header = $self->TemplateObj->MIMEObj->head->get($field);
- my @addresses = Mail::Address->parse($header);
+ my @addresses = Email::Address->parse($header);
return (@addresses);
}
@@ -635,6 +635,8 @@
my $digest_hash = {};
foreach my $mailfield (@EMAIL_RECIPIENT_HEADERS) {
+ # If we have a "PseudoTo", the "To" contains it, so we don't need to access it
+ next if ( ( $self->{'PseudoTo'} && @{ $self->{'PseudoTo'} } ) && ( $mailfield eq 'To' ) );
$RT::Logger->debug( "Working on mailfield $mailfield; recipients are " . join( ',', @{ $self->{$mailfield} } ) );
# Store the 'daily digest' folk in an array.
@@ -889,15 +891,16 @@
chomp $val;
chomp $field;
- $self->TemplateObj->MIMEObj->head->fold_length( $field, 10000 );
- $self->TemplateObj->MIMEObj->head->replace( $field, $val );
- return $self->TemplateObj->MIMEObj->head->get($field);
+ my $head = $self->TemplateObj->MIMEObj->head;
+ $head->fold_length( $field, 10000 );
+ $head->replace( $field, $val );
+ return $head->get($field);
}
=head2 SetSubject
-This routine sets the subject. it does not add the rt tag. that gets done elsewhere
-If $self->{'Subject'} is already defined, it uses that. otherwise, it tries to get
+This routine sets the subject. it does not add the rt tag. That gets done elsewhere
+If subject is already defined via template, it uses that. otherwise, it tries to get
the transaction's subject.
=cut
@@ -937,9 +940,10 @@
sub SetSubjectToken {
my $self = shift;
- $self->TemplateObj->MIMEObj->head->replace(
+ my $head = $self->TemplateObj->MIMEObj->head;
+ $head->replace(
Subject => RT::Interface::Email::AddSubjectTag(
- $self->TemplateObj->MIMEObj->head->get('Subject'),
+ Encode::decode_utf8( $head->get('Subject') ),
$self->TicketObj,
),
);
@@ -1041,17 +1045,16 @@
my $self = shift;
my ( $field, $enc ) = ( shift, shift );
- if ( $field eq 'From' and RT->Config->Get('SMTPFrom') ) {
- $self->TemplateObj->MIMEObj->head->replace( $field,
- RT->Config->Get('SMTPFrom') );
+ my $head = $self->TemplateObj->MIMEObj->head;
+
+ if ( lc($field) eq 'from' and RT->Config->Get('SMTPFrom') ) {
+ $head->replace( $field, RT->Config->Get('SMTPFrom') );
return;
}
- my $value = $self->TemplateObj->MIMEObj->head->get($field);
-
+ my $value = $head->get( $field );
$value = $self->MIMEEncodeString( $value, $enc );
-
- $self->TemplateObj->MIMEObj->head->replace( $field, $value );
+ $head->replace( $field, $value );
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Attachment_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Attachment_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Attachment_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -430,7 +430,7 @@
Returns a hashref of all addresses related to this attachment.
The keys of the hash are C<From>, C<To>, C<Cc>, C<Bcc>, C<RT-Send-Cc>
and C<RT-Send-Bcc>. The values are references to lists of
-L<Mail::Address> objects.
+L<Email::Address> objects.
=cut
@@ -445,7 +445,7 @@
my @Addresses;
my $line = $self->GetHeader($hdr);
- foreach my $AddrObj ( Mail::Address->parse( $line )) {
+ foreach my $AddrObj ( Email::Address->parse( $line )) {
my $address = $AddrObj->address;
$address = lc RT::User->CanonicalizeEmailAddress($address);
next if ( $current_user_address eq $address );
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Config.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Config.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Config.pm Mon Jul 7 16:21:51 2008
@@ -164,9 +164,18 @@
Widget => '/Widgets/Form/Boolean',
WidgetArguments => {
Description => 'Notify me of unread messages', #loc
- }
+ },
},
+ PlainTextPre => {
+ Section => 'Ticket display',
+ Overridable => 1,
+ Widget => '/Widgets/Form/Boolean',
+ WidgetArguments => {
+ Description => 'Use monospace font',
+ Hints => "Use fixed-width font to display plaintext messages"
+ },
+ },
DateTimeFormat => {
Section => 'Locale', #loc
Overridable => 1,
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Crypt/GnuPG.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Crypt/GnuPG.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Crypt/GnuPG.pm Mon Jul 7 16:21:51 2008
@@ -274,7 +274,7 @@
=item $Recipient - recipient's identification
-=item $AddressObj - L<Mail::Address> object containing recipient's email address
+=item $AddressObj - L<Email::Address> object containing recipient's email address
=back
@@ -400,13 +400,13 @@
my $entity = $args{'Entity'};
if ( $args{'Sign'} && !defined $args{'Signer'} ) {
$args{'Signer'} = UseKeyForSigning()
- || (Mail::Address->parse( $entity->head->get( 'From' ) ))[0]->address;
+ || (Email::Address->parse( $entity->head->get( 'From' ) ))[0]->address;
}
if ( $args{'Encrypt'} && !$args{'Recipients'} ) {
my %seen;
$args{'Recipients'} = [
grep $_ && !$seen{ $_ }++, map $_->address,
- map Mail::Address->parse( $entity->head->get( $_ ) ),
+ map Email::Address->parse( $entity->head->get( $_ ) ),
qw(To Cc Bcc)
];
}
@@ -514,7 +514,7 @@
$gnupg->options->push_recipients( $_ ) foreach
map UseKeyForEncryption($_) || $_,
grep !$seen{ $_ }++, map $_->address,
- map Mail::Address->parse( $entity->head->get( $_ ) ),
+ map Email::Address->parse( $entity->head->get( $_ ) ),
qw(To Cc Bcc);
my ($tmp_fh, $tmp_fn) = File::Temp::tempfile();
@@ -1796,7 +1796,7 @@
return (
MainKey => $main_key_id,
String => $user_str,
- EmailAddress => (map $_->address, Mail::Address->parse( $user_str ))[0],
+ EmailAddress => (map $_->address, Email::Address->parse( $user_str ))[0],
);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/CustomField.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/CustomField.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/CustomField.pm Mon Jul 7 16:21:51 2008
@@ -120,8 +120,10 @@
SortOrder => '0',
LookupType => '',
Disabled => '0',
+ LinkToValue => '',
+ IncludeContentForValue => '',
- @_);
+ @_);
$self->SUPER::Create(
Name => $args{'Name'},
Type => $args{'Type'},
@@ -132,6 +134,8 @@
SortOrder => $args{'SortOrder'},
LookupType => $args{'LookupType'},
Disabled => $args{'Disabled'},
+ LinkToValue => $args{'LinkToValue'},
+ IncludeContentForValue => $args{'IncludeContentForValue'}
);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/CustomField_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/CustomField_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/CustomField_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -164,6 +164,8 @@
Disabled => 0,
LookupType => '',
Repeated => 0,
+ LinkValueTo => '',
+ IncludeContentForValue => '',
@_,
);
@@ -221,6 +223,14 @@
Repeated => $args{'Repeated'},
);
+ if ( exists $args{'LinkValueTo'}) {
+ $self->SetLinkValueTo($args{'LinkValueTo'});
+ }
+
+ if ( exists $args{'IncludeContentForValue'}) {
+ $self->SetIncludeContentForValue($args{'IncludeContentForValue'});
+ }
+
if ( exists $args{'ValuesClass'} ) {
$self->SetValuesClass( $args{'ValuesClass'} );
}
@@ -261,6 +271,9 @@
Loads the Custom field named NAME.
+Will load a Disabled Custom Field even if there is a non-disabled Custom Field
+with the same Name.
+
If a Queue parameter is specified, only look for ticket custom fields tied to that Queue.
If the Queue parameter is '0', look for global ticket custom fields.
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Dashboard.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Dashboard.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Dashboard.pm Mon Jul 7 16:21:51 2008
@@ -74,8 +74,17 @@
use base qw/RT::SharedSetting/;
my %new_rights = (
- ModifyDashboard => 'Create and modify dashboards', #loc_pair
SubscribeDashboard => 'Subscribe to email dashboards', #loc_pair
+
+ SeeDashboard => 'View system dashboards', #loc_pair
+ CreateDashboard => 'Create system dashboards', #loc_pair
+ ModifyDashboard => 'Modify system dashboards', #loc_pair
+ DeleteDashboard => 'Delete system dashboards', #loc_pair
+
+ SeeOwnDashboard => 'View personal dashboards', #loc_pair
+ CreateOwnDashboard => 'Create personal dashboards', #loc_pair
+ ModifyOwnDashboard => 'Modify personal dashboards', #loc_pair
+ DeleteOwnDashboard => 'Delete personal dashboards', #loc_pair
);
use RT::System;
@@ -193,37 +202,142 @@
return SavedSearch => join('-', $type, 'SavedSearch', $id);
}
+=head2 PossibleHiddenSearches
+
+This will return a list of saved searches that are potentially not visible by
+all users for whom the dashboard is visible. You may pass in a privacy to
+use instead of the dashboard's privacy.
+
+=cut
+
+sub PossibleHiddenSearches {
+ my $self = shift;
+ my $privacy = shift || $self->Privacy;
+
+ return grep { !$_->IsVisibleTo($privacy) } $self->Searches;
+}
+
# _PrivacyObjects: returns a list of objects that can be used to load
-# dashboards from. Unlike SavedSearch, this will return the System object if
-# applicable. You may pass in a paramhash of ShowSystem to force
-# showing/hiding of the System object
+# dashboards from. If the Modify parameter is true, then check modify rights.
+# If the Create parameter is true, then check create rights. Otherwise, check
+# read rights.
sub _PrivacyObjects {
my $self = shift;
my %args = @_;
my $CurrentUser = $self->CurrentUser;
- my @objects = $CurrentUser->UserObj;
+ my @objects;
+
+ my $prefix = $args{Modify} ? "Modify"
+ : $args{Create} ? "Create"
+ : "See";
+
+ push @objects, $CurrentUser->UserObj
+ if $self->CurrentUser->HasRight(
+ Right => "${prefix}OwnDashboard",
+ Object => $RT::System,
+ );
my $groups = RT::Groups->new($CurrentUser);
$groups->LimitToUserDefinedGroups;
$groups->WithMember( PrincipalId => $CurrentUser->Id,
Recursively => 1 );
- push @objects, @{ $groups->ItemsArrayRef };
+ push @objects, grep {
+ $self->CurrentUser->HasRight(
+ Right => "${prefix}GroupDashboard",
+ Object => $_,
+ )
+ } @{ $groups->ItemsArrayRef };
- # if ShowSystem, always show it
- # if not ShowSystem, then show only if the user didn't specify AND the
- # current user is superuser
push @objects, RT::System->new($CurrentUser)
- if $args{ShowSystem}
- || (!defined($args{ShowSystem})
- && $CurrentUser->HasRight(Object => $RT::System,
- Right => 'SuperUser'));
+ if $CurrentUser->HasRight(
+ Right => "${prefix}Dashboard",
+ Object => $RT::System,
+ );
return @objects;
}
+# ACLs
+
+sub _CurrentUserCan {
+ my $self = shift;
+ my $privacy = shift || $self->Privacy;
+ my %args = @_;
+
+ if (!defined($privacy)) {
+ $RT::Logger->debug("No privacy provided to $self->_CurrentUserCan");
+ return 0;
+ }
+
+ my $object = $self->_GetObject($privacy);
+ return 0 unless $object;
+
+ my $level;
+
+ if ($object->isa('RT::User')) { $level = 'Own' }
+ elsif ($object->isa('RT::Group')) { $level = 'Group' }
+ elsif ($object->isa('RT::System')) { $level = '' }
+ else {
+ $RT::Logger->error("Unknown object $object from privacy $privacy");
+ return 0;
+ }
+
+ # users are mildly special-cased, since we actually have to check that
+ # the user is operating on himself
+ if ($object->isa('RT::User')) {
+ return 0 unless $object->Id == $self->CurrentUser->Id;
+ }
+
+ my $right = $args{FullRight}
+ || join('', $args{Right}, $level, 'Dashboard');
+
+ # all rights, except group rights, are global
+ $object = $RT::System unless $object->isa('RT::Group');
+
+ return $self->CurrentUser->HasRight(
+ Right => $right,
+ Object => $object,
+ );
+}
+
+sub CurrentUserCanSee {
+ my $self = shift;
+ my $privacy = shift;
+
+ $self->_CurrentUserCan($privacy, Right => 'See');
+}
+
+sub CurrentUserCanCreate {
+ my $self = shift;
+ my $privacy = shift;
+
+ $self->_CurrentUserCan($privacy, Right => 'Create');
+}
+
+sub CurrentUserCanModify {
+ my $self = shift;
+ my $privacy = shift;
+
+ $self->_CurrentUserCan($privacy, Right => 'Modify');
+}
+
+sub CurrentUserCanDelete {
+ my $self = shift;
+ my $privacy = shift;
+
+ $self->_CurrentUserCan($privacy, Right => 'Delete');
+}
+
+sub CurrentUserCanSubscribe {
+ my $self = shift;
+ my $privacy = shift;
+
+ $self->_CurrentUserCan($privacy, FullRight => 'SubscribeDashboard');
+}
+
eval "require RT::Dashboard_Vendor";
die $@ if ($@ && $@ !~ qr{^Can't locate RT/Dashboard_Vendor.pm});
eval "require RT::Dashboard_Local";
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/EmailParser.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/EmailParser.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/EmailParser.pm Mon Jul 7 16:21:51 2008
@@ -54,7 +54,7 @@
use strict;
use warnings;
-use Mail::Address;
+use Email::Address;
use MIME::Entity;
use MIME::Head;
use MIME::Parser;
@@ -300,8 +300,8 @@
my (@Addresses);
- my @ToObjs = Mail::Address->parse( $self->Head->get('To') );
- my @CcObjs = Mail::Address->parse( $self->Head->get('Cc') );
+ my @ToObjs = Email::Address->parse( $self->Head->get('To') );
+ my @CcObjs = Email::Address->parse( $self->Head->get('Cc') );
foreach my $AddrObj ( @ToObjs, @CcObjs ) {
my $Address = $AddrObj->address;
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Graph/Tickets.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Graph/Tickets.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Graph/Tickets.pm Mon Jul 7 16:21:51 2008
@@ -67,12 +67,12 @@
}
our %ticket_status_style = (
- new => { fontcolor => '#FF0000' },
- open => { fontcolor => '#000000' },
- stalled => { fontcolor => '#DAA520' },
- resolved => { fontcolor => '#00FF00' },
- rejected => { fontcolor => '#808080' },
- deleted => { fontcolor => '#A9A9A9' },
+ new => { fontcolor => '#FF0000', fontsize => 10 },
+ open => { fontcolor => '#000000', fontsize => 10 },
+ stalled => { fontcolor => '#DAA520', fontsize => 10 },
+ resolved => { fontcolor => '#00FF00', fontsize => 10 },
+ rejected => { fontcolor => '#808080', fontsize => 10 },
+ deleted => { fontcolor => '#A9A9A9', fontsize => 10 },
);
our %link_style = (
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Group_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Group_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Group_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -93,6 +93,11 @@
EditSavedSearches => 'Edit saved searches for this group', # loc_pair
ShowSavedSearches => 'Display saved searches for this group', # loc_pair
SeeGroup => 'Make this group visible to user', # loc_pair
+
+ SeeGroupDashboard => 'View dashboards for this group', #loc_pair
+ CreateGroupDashboard => 'Create dashboards for this group', #loc_pair
+ ModifyGroupDashboard => 'Modify dashboards for this group', #loc_pair
+ DeleteGroupDashboard => 'Delete dashboards for this group', #loc_pair
};
# Tell RT::ACE that this sort of object can get acls granted
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/cs.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/cs.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/cs.po Mon Jul 7 16:21:51 2008
@@ -3355,7 +3355,7 @@
msgstr "Upravovat scrip pro frontu %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Upravovat scrip platný pro všechny fronty"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/da.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/da.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/da.po Mon Jul 7 16:21:51 2008
@@ -1871,7 +1871,7 @@
msgstr "Opret et ekstrafelt til kø %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Opret et ekstrafelt, der gælder for alle køer"
#: NOT FOUND IN SOURCE
@@ -3950,7 +3950,7 @@
msgstr "Rediger et ekstrafelt for kø %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Rediger et ekstrafelt, der gælder for alle køer"
#: share/html/Admin/Queues/Scrip.html:84
@@ -3959,7 +3959,7 @@
msgstr "Rediger et scrip for kø %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Rediger et scrip, der gælder for alle køer"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/de.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/de.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/de.po Mon Jul 7 16:21:51 2008
@@ -3385,7 +3385,7 @@
msgstr "Ändere ein Scrip für den Bereich %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Ändere ein globales benutzerdefiniertes Feld"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/es.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/es.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/es.po Mon Jul 7 16:21:51 2008
@@ -1870,7 +1870,7 @@
msgstr "Crear un campo personalizables para la cola %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Crear un campo personalizable que se aplique a todas las colas"
#: NOT FOUND IN SOURCE
@@ -3060,7 +3060,7 @@
#: share/html/Admin/Elements/SelectTemplate:61
#. (loc($Template->Name))
msgid "Global template: %1"
-msgstr "Plantilla global"
+msgstr "Plantilla global: %1"
#: share/html/Admin/Elements/UserTabs:76
msgid "GnuPG"
@@ -4002,7 +4002,7 @@
msgstr "Modificar un campo personalizable para la cola %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Modificar un campo personalizable que se aplique a todas las colas"
#: share/html/Admin/Queues/Scrip.html:84
@@ -4011,7 +4011,7 @@
msgstr "Modificar un scrip para la cola %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Modificar un scrip que se aplique a todas las colas"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fi.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fi.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fi.po Mon Jul 7 16:21:51 2008
@@ -1739,7 +1739,7 @@
msgstr "Luo kenttä työjonolle %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Luo kenttä, jota sovelletaan kaikkiin työjonoihin"
#: NOT FOUND IN SOURCE
@@ -3771,7 +3771,7 @@
msgstr "Muokkaa työjonon %1 toimintoa"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Muokkaa toimintoa, jota sovelletaan kaikkiin työjonoihin"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fr.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fr.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/fr.po Mon Jul 7 16:21:51 2008
@@ -7,13 +7,202 @@
msgstr ""
"Project-Id-Version: RT 3.8.x\n"
"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2008-06-13 18:15+0200\n"
+"PO-Revision-Date: 2008-06-25 16:37+0200\n"
"Last-Translator: Emmanuel Lacour <elacour at easter-eggs.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language-Team: rt-devel <rt-devel at lists.bestpractical.com>\n"
+#: share/html/Install/DatabaseType.html:56
+msgid ""
+"\n"
+" RT works with a number of different databases. <b>MySQL</b>, <b>PostgreSQL</b>, <b>Oracle</b> and <b>SQLite</b> are all supported.\n"
+msgstr ""
+"\n"
+" RT fonctionne avec différentes bases de données. <b>MySQL</b>, <b>PostgreSQL</b>, <b>Oracle</b> and <b>SQLite</b> sont supportées.\n"
+
+#: share/html/Install/DatabaseType.html:61
+msgid ""
+"\n"
+" You should choose the database you or your local database administrator is most comfortable with.\n"
+msgstr ""
+"\n"
+" Vous devez choisir la base de données que vous ou votre administrateur de base de données maîtrisez le mieux.\n"
+
+#: share/html/Install/Global.html:63
+msgid ""
+"\n"
+"By default, RT will use the timezone of your system. This lets you set a global default for the display of dates\n"
+"and times in RT. Your users can choose a different Timezone in their preferences.\n"
+msgstr ""
+"\n"
+"Par défaut, RT utilisera le fuseau horaire configuré au sur votre système. Vous pouvez configurer une valeur par défaut pour l'affichage des dates et heures dans RT. Vos utilisateurs pourront choisir un fuseau différent dans leurs préférences.\n"
+
+#: share/html/Install/Finish.html:54
+msgid ""
+"\n"
+"Click \"Finish Installation\" below to complete this wizard.\n"
+msgstr ""
+"\n"
+"Cliquer \"Terminer l'installation\" pour terminer.\n"
+
+#: share/html/Install/index.html:78
+msgid ""
+"\n"
+"If you already have a working RT server and database, you should take this opportunity to make sure that your database server is running and that the RT server can connect to it. Once you've done that, stop and start the RT server.</p>\n"
+msgstr ""
+"\n"
+"Si vous avez déjà un serveur et une base de données RT fonctionnelle, vous devriez saisir cette opportunité pour être certain que votre serveur de base de données est en fonctionnement et que le serveur RT peut s'y connecter. Une fois ceci fait, arrêtez et redémarrez le serveur RT.</p>\n"
+
+#: share/html/Install/Finish.html:67
+msgid ""
+"\n"
+"If you've change the Port that RT runs on, you'll need to restart the server in order to log in.\n"
+msgstr ""
+"\n"
+"Si vous avez changez le port sur lequel RT est lancé, vous devez redémarrer le serveur pour pouvoir vous connecter.\n"
+
+#: share/html/Install/DatabaseType.html:73
+#. ('<a href="http://search.cpan.org" target="_new">CPAN</a>')
+msgid ""
+"\n"
+"If your preferred database isn't listed in the dropdown below, that means RT\n"
+"couldn't find a <i>database driver</i> for it installed locally. You may be\n"
+"able to remedy this by using %1 to download and install DBD::MySQL, DBD::Oracle or DBD::Pg.\n"
+msgstr ""
+"\n"
+"Si votre base de données préférées n'est pas listée ci-dessous, celà signifie que RT\n"
+"ne peut pas trouver un <i>pilote de base de données</i> installé pour celle-ci. Vous \n"
+"pouvez remédier à ceci en utilisant %1 pour télécharger et installer DBD::MySQL, DBD::Oracle ou DBD::Pg.\n"
+
+#: share/html/Install/Sendmail.html:58
+msgid ""
+"\n"
+"RT can communicate with your users about new tickets or new correspondence on tickets.\n"
+"Tell us where to find sendmail (or a sendmail compatible binary such as the one provided by\n"
+"postifx). RT also needs to know who to notify when someone sends invalid email. This must not be an address that\n"
+"feeds back into RT.\n"
+msgstr ""
+"\n"
+"RT peut communiquer avec vos utilisateurs au sujet des nouveaux ticket ou des nouveaux échanges.\n"
+"Indiquez ou il est possible de trouver sendmail (ou un exécutable compatible sendmail comme celui fourni\n"
+"par postfix). RT nécessite également une adresse ou envoyer les messages invalides. Cette adresse ne doit pas\n"
+"être une adresse redirigée vers RT.\n"
+
+#: share/html/Install/index.html:60
+msgid ""
+"\n"
+"RT is an enterprise-grade issue tracking system designed to let you intelligently and efficiently manage tasks, issues, requests, defects or anything else that looks like an \"action item.\"\n"
+msgstr ""
+"\n"
+"RT est un outil de gestion d'incidents de niveau professionnel, destiné à vous permettre de gérer de manière intelligente et efficace les tâches, les problèmes, les demandes, les incidents ou n'importe quoi d'autre qui nécessite une action.\n"
+
+#: share/html/Install/index.html:65
+msgid ""
+"\n"
+"RT is used by Fortune 100 companies, one-person businesses, government agencies, educational institutions, hospitals, nonprofits, NGOs, libraries, open source projects and all sorts of other organizations on all seven continents. (Yes, even Antarctica.)\n"
+msgstr ""
+"\n"
+"RT est utilisé par plus de 100 sociétées, entreprises unipersonnelles, organismes publics, facultés, hopitaux, associations, ONGs, bibliothèques, projets de logiciels libres, et toute sorte d'autre organisation sur les septs continents. (Oui, même en Antarctique.)\n"
+
+#: share/html/Install/DatabaseType.html:66
+msgid ""
+"\n"
+"SQLite is a database that doesn't need a server or any configuration whatsoever. RT's authors recommend it for testing, demoing and development, but it's not quite right for a high-volume production RT server.\n"
+msgstr ""
+"\n"
+"SQLite est une base de données qui ne nécessite pas de serveur ou de configuration spécifique. Les auteurs de RT la recommande pour les tests, démonstrations ou développements, mais ce n'est pas adaptés à une utilisation intensive d'un serveur RT en production.\n"
+
+#: share/html/Install/Finish.html:74
+#. (RT::Installer->ConfigFile)
+msgid ""
+"\n"
+"The settings you've chosen are stored in %1. You can edit this file to refine your configuration further. You can\n"
+"prevent this installation wizard from being shown again by running `<tt>chmod -w '%1'</tt>`.\n"
+msgstr ""
+"\n"
+"Les paramêtres que vous avez choisis sont stockés dans %1. Vous pouvez éditer ce fichier pour affiner votre configuration.\n"
+"Vous pouvez stopper le démarrage de cet outil d'installation en lancant la commande `<tt>chmod -< '%1'</tt>`.\n"
+
+#: share/html/Install/Basics.html:57
+msgid ""
+"\n"
+"These configuration options cover some of the basics needed to get RT up and running. We need to know the name of\n"
+"your RT installation and the domain name where RT will live. You will also need to set a password for your defauly\n"
+"administrative user.\n"
+msgstr ""
+"\n"
+"Ces options de configurations concernent les éléments de base pour obtenir un RT fonctionnel. Nous avons besoin de\n"
+"connaître le nom de votre installation RT et le nom de domaines lui correspondant. Vous devrez également définir un\n"
+"mot de passe pour l'administrateur par défaut.\n"
+
+#: share/html/Install/DatabaseDetails.html:70
+msgid ""
+"\n"
+"We need to know the name of the database RT will use and where to find it. We also need to know the username and\n"
+"password of the user RT should use. RT can create the database and user for you, which is why we ask for the\n"
+"username and password of a user with DBA privileges. During step 6 of the installation process we will use this\n"
+"information to create and initialize RT's database.\n"
+msgstr ""
+"\n"
+"Nous avons besoin de connaître le nom de la base de données qui sera utilisée par RT ainsi que sa localisation.\n"
+"Nous avons également besoin de connaître le nom d'utilisateur et le mot de passe que RT doit utiliser. RT peut \n"
+"créer la base de donnée et l'utilisateur pour vous, c'est pourquoi, l'identifiant et le mot de passe d'un utilisateur\n"
+"avec des privilèges DBA sont demandés. Pendant l'étape 6 du processus d'installation nous utiliseront cette information\n"
+"pour créer et initialiser la base de données RT.\n"
+
+#: share/html/Install/DatabaseDetails.html:58
+msgid ""
+"\n"
+"We were able to find your database and connect as the DBA. You can click on 'Customize Basics' to continue\n"
+"customizing RT.\n"
+msgstr ""
+"\n"
+"Nous n'avons pas été capable de trouver votre base de données et de nous connecter en DBA. Vous pouvez cliquer sur\n"
+"'Configuration de base' pour continuer à configurer RT.\n"
+
+#: share/html/Install/Global.html:58
+msgid ""
+"\n"
+"When RT sends an email it sets the From: and Reply-To: headers so users can add to the conversation by just hitting\n"
+"Reply in their mail client. It uses different addresses for Replies and Comments. These can be changed for each of\n"
+"your queues. These addresses will need to be configured to use the <tt>rt-mailgate</tt> program.\n"
+msgstr ""
+"\n"
+"Quand RT envoi un email, il positionne le champs expéditeur et le champs Reply-To afin que les utilisateurs\n"
+"puissent participer à la conversation en cliquant simplement sur Répondre dans leur client de courriel.\n"
+"Une adresse différente est utilisée pour les réponses et les commentaires. Celles-ci peuvent-être définies\n"
+"pour chaque file. Ces adresses devront être configurées pour utiliser le programme <tt>rt-mailgate</tt>.\n"
+
+#: share/html/Install/DatabaseDetails.html:76
+msgid ""
+"\n"
+"When you click on 'Check Database Connectivity' there may be a small delay while RT tries to connect to your\n"
+"database\n"
+msgstr ""
+"\n"
+"Lorsque vous cliquez sur 'Tester la connexion à la base de données' il peut y avoir un peu d'attente le temps\n"
+"que RT se connecte à votre base de données.\n"
+
+#: share/html/Install/Finish.html:61
+msgid ""
+"\n"
+"You should be taken directly to a login page. You'll be able to log in with username of <tt>root</tt> and the\n"
+"password you set earlier. \n"
+msgstr ""
+"\n"
+"Vous devriez être redirigé vers la page de connection. Vous pourrez vous identifier avec l'identifiant\n"
+"<tt>root</tt> et le mot de passe configuré précédemment.\n"
+
+#: share/html/Install/index.html:72
+msgid ""
+"\n"
+"You're seeing this screen because you started up an RT server without a working database. Most likely, this is the first time you're running RT. If you click <i>Let's go!</i> below, RT will guide you through setting up your RT server and database.\n"
+msgstr ""
+"\n"
+"Vous voyez cet écran car vous avez démarré RT sans base de données fonctionnelle. C'est probablement la première fois que vous lancez RT. Si vous cliques <i>C'est parti!</i> ci-dessous, RT vous guidera pour configurer votre serveur RT et votre base de données.\n"
+
#: share/html/Widgets/SavedSearch:117
#. ($self->{CurrentSearch}{Object}->Description)
msgid " %1 deleted."
@@ -37,19 +226,19 @@
msgid " (untrusted!)"
msgstr " (non vérifié!)"
-#: share/html/Dashboards/Elements/ShowDashboards:55
+#: share/html/Dashboards/Elements/ShowDashboards:76
msgid "#"
msgstr "n°"
#: share/html/Approvals/Elements/Approve:50 share/html/Approvals/Elements/ShowDependency:73 share/html/SelfService/Display.html:48 share/html/Ticket/Display.html:49 share/html/Ticket/Display.html:54
-#. ($TicketObj->Id, $TicketObj->Subject)
#. ($Ticket->id, $Ticket->Subject)
-#. ($ticket->Id, $ticket->Subject)
#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+#. ($ticket->Id, $ticket->Subject)
+#. ($TicketObj->Id, $TicketObj->Subject)
msgid "#%1: %2"
msgstr "n°%1 : %2"
-#: share/html/Elements/ShowSearch:116
+#: share/html/Elements/ShowSearch:121
msgid "$1"
msgstr "$1"
@@ -91,7 +280,7 @@
msgid "%1 %2 %3 %4:%5:%6 %7"
msgstr "%1 %2 %3 %4:%5:%6 %7"
-#: lib/RT/Record.pm:1628 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
+#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
#. ($cf->Name, $new_content)
#. ($field, $self->NewValue)
#. ($self->Field, $principal->Object->Name)
@@ -103,13 +292,13 @@
msgid "%1 %2 ago"
msgstr "il y a %1 %2"
-#: lib/RT/Record.pm:1635 lib/RT/Transaction_Overlay.pm:643
+#: lib/RT/Record.pm:1685 lib/RT/Transaction_Overlay.pm:643
#. ($cf->Name, $old_content, $new_content)
#. ($field, $self->OldValue, $self->NewValue)
msgid "%1 %2 changed to %3"
msgstr "%1 %2 changé en %3"
-#: lib/RT/Record.pm:1632 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
+#: lib/RT/Record.pm:1682 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
#. ($cf->Name, $old_content)
#. ($field, $self->OldValue)
#. ($self->Field, $principal->Object->Name)
@@ -117,8 +306,8 @@
msgstr "%1 %2 supprimé"
#: share/html/Elements/RT__Scrip/ColumnMap:85 share/html/Ticket/Elements/PreviewScrips:66
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
#. ($_[0]->loc($_[0]->ConditionObj->Name), $_[0]->loc($_[0]->ActionObj->Name), $_[0]->loc($_[0]->TemplateObj->Name),)
+#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
msgid "%1 %2 with template %3"
msgstr "%1 %2 avec le modèle %3"
@@ -128,10 +317,10 @@
msgstr "%1 (%2) par %3"
#: share/html/SelfService/Update.html:62 share/html/Ticket/Elements/EditBasics:115 share/html/Ticket/Update.html:69 share/html/Ticket/Update.html:75 share/html/Tools/MyDay.html:68
+#. (loc($Ticket->Status))
#. (loc($Ticket->Status()))
#. (loc($TicketObj->Status))
#. ($TicketObj->OwnerObj->Name)
-#. (loc($Ticket->Status))
msgid "%1 (Unchanged)"
msgstr "%1 (inchangé)"
@@ -202,30 +391,45 @@
msgid "%1 ScripAction loaded"
msgstr "ScripAction %1 chargée"
-#: lib/RT/Record.pm:1663
+#: lib/RT/Record.pm:1713
#. ($args{'Value'}, $cf->Name)
msgid "%1 added as a value for %2"
msgstr "%1 ajouté(e) comme valeur de %2"
+#: share/html/Install/DatabaseDetails.html:176
+#. ($RT::DatabaseName)
+msgid "%1 already exists and has RT's tables in place, but does not contain RT's metadata. The 'Initialize Database' step later on can insert metadata into this existing database. If this is acceptable, click 'Customize Basics' below to continue customizing RT."
+msgstr ""
+
+#: share/html/Install/DatabaseDetails.html:181
+#. ($RT::DatabaseName)
+msgid "%1 already exists, but does not contain RT's tables or metadata. The 'Initialize Database' step later on can insert tables and metadata into this existing database. if this is acceptable, click 'Customize Basic' below to continue customizing RT."
+msgstr ""
+
#: lib/RT/Link_Overlay.pm:134 lib/RT/Link_Overlay.pm:142
#. ($args{'Base'})
#. ($args{'Target'})
msgid "%1 appears to be a local object, but can't be found in the database"
msgstr "%1 semble être un objet local, mais est introuvable dans la base de données"
+#: share/html/Install/DatabaseDetails.html:172
+#. ($RT::DatabaseName)
+msgid "%1 appears to be fully initialized. We won't need to create any tables or insert metadata, but you can continue to customez RT by clicking 'Customize Basics' below"
+msgstr ""
+
#: share/html/Dashboards/Elements/ShowSubscription:72
#. ($freq, $hour)
msgid "%1 at %2"
msgstr "%1 à %2"
-#: lib/RT/SharedSetting.pm:107
+#: lib/RT/SharedSetting.pm:113
#. (ucfirst($self->ObjectName))
msgid "%1 attribute load failure"
msgstr "%1 erreur lors du chargement de l'attribut"
#: lib/RT/Transaction_Overlay.pm:531 share/html/Ticket/Elements/ShowDates:80
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
#. ($self->BriefDescription , $self->CreatorObj->Name)
+#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
msgid "%1 by %2"
msgstr "%1 par %2"
@@ -267,7 +471,12 @@
msgid "%1 deleted"
msgstr "%1 supprimé(e)"
-#: etc/initialdata:652
+#: share/html/Install/Sendmail.html:89
+#. ($ARGS{SendmailPath})
+msgid "%1 doesn't exist."
+msgstr "%1 n'existe pas."
+
+#: etc/initialdata:677
msgid "%1 highest priority tickets I own"
msgstr "Mes %1 tickets de plus haute priorité"
@@ -291,7 +500,7 @@
msgid "%1 is no longer a %2 for this ticket."
msgstr "%1 n'est plus un %2 pour ce ticket."
-#: lib/RT/Record.pm:1720
+#: lib/RT/Record.pm:1770
#. ($TransactionObj->OldValue, $cf->Name)
msgid "%1 is no longer a value for custom field %2"
msgstr "%1 n'est plus une valeur pour le champs personnalisé %2"
@@ -301,7 +510,7 @@
msgid "%1 min"
msgstr "%1 min"
-#: etc/initialdata:663
+#: etc/initialdata:688
msgid "%1 newest unowned tickets"
msgstr "Les %1 derniers tickets sans propriétaire"
@@ -314,17 +523,17 @@
msgid "%1 rights"
msgstr "droits de %1"
-#: lib/RT/SharedSetting.pm:214
+#: lib/RT/SharedSetting.pm:235
#. (ucfirst($self->ObjectName), $msg)
msgid "%1 update: %2"
msgstr "%1 mise à jour: %2"
-#: lib/RT/SharedSetting.pm:207
+#: lib/RT/SharedSetting.pm:228
#. (ucfirst($self->ObjectName))
msgid "%1 update: Nothing changed"
msgstr "%1 mise à jour: Aucun changement"
-#: lib/RT/SharedSetting.pm:211
+#: lib/RT/SharedSetting.pm:232
msgid "%1 updated"
msgstr "%1 mis à jour"
@@ -341,14 +550,14 @@
msgid "%1's %2's %3 objects"
msgstr "%1 de %2 de %3 objets"
-#: share/html/Dashboards/Elements/SelectPrivacy:57
+#: share/html/Dashboards/Elements/SelectPrivacy:61
#. ($object->Name)
msgid "%1's dashboards"
msgstr "Tableaux de bord de %1"
#: share/html/Search/Elements/SearchPrivacy:54 share/html/Search/Elements/SelectSearchObject:65 share/html/Search/Elements/SelectSearchesForObjects:59
-#. ($Object->Name)
#. ($object->Name)
+#. ($Object->Name)
msgid "%1's saved searches"
msgstr "Recherches sauvées de %1"
@@ -449,7 +658,7 @@
msgid "(empty)"
msgstr "(vide)"
-#: lib/RT/Transaction_Overlay.pm:580 share/html/Admin/Elements/SelectRights:74 share/html/Elements/EditCustomFieldSelect:71 share/html/Elements/SelectCustomFieldValue:53 share/html/Elements/ShowCustomFields:56 share/html/Search/Chart:134 share/html/Search/Elements/Chart:78
+#: lib/RT/Transaction_Overlay.pm:580 share/html/Admin/Elements/SelectRights:74 share/html/Elements/EditCustomFieldSelect:71 share/html/Elements/SelectCustomFieldValue:53 share/html/Elements/ShowCustomFields:56 share/html/Search/Chart:136 share/html/Search/Elements/Chart:80
msgid "(no value)"
msgstr "(sans information)"
@@ -712,7 +921,11 @@
msgid "Administrative Cc"
msgstr "Cc Administratif"
-#: share/html/Ticket/Elements/Tabs:268
+#: lib/RT/Installer.pm:152
+msgid "Administrative password"
+msgstr "Mot de passe administrateur"
+
+#: share/html/Ticket/Elements/Tabs:269
msgid "Advanced"
msgstr "Avancé"
@@ -748,7 +961,7 @@
msgid "Apply your changes"
msgstr "Appliquer vos changements"
-#: share/html/Elements/Tabs.orig:80 share/html/Elements/Tabs:80
+#: share/html/Elements/Tabs:80
msgid "Approval"
msgstr "Approbations"
@@ -781,7 +994,7 @@
msgid "Approve"
msgstr "Approuver"
-#: etc/initialdata:565 etc/initialdata:567
+#: etc/initialdata:590 etc/initialdata:592
#. (# loc $note)
msgid "Approver's notes: %1"
msgstr "Notes de l'approbateur : %1"
@@ -875,36 +1088,40 @@
msgid "Back"
msgstr "Retour"
-#: share/html/Install/Password.html:58
+#: share/html/Install/Basics.html:65 share/html/Install/DatabaseDetails.html:94 share/html/Install/DatabaseDetails.html:98 share/html/Install/Global.html:72 share/html/Install/Initialize.html:61 share/html/Install/Sendmail.html:68
+msgid "Back: "
+msgstr "Retour: "
+
+#: NOT FOUND IN SOURCE
msgid "Back: Customize Basics"
msgstr "Retour: Configuration initiale"
-#: share/html/Install/Basics.html:58
+#: NOT FOUND IN SOURCE
msgid "Back: Customize Database Details"
msgstr "Retour: Configuration de la base de données"
-#: share/html/Install/Sendmail.html:59
+#: NOT FOUND IN SOURCE
msgid "Back: Customize Email Addresses"
msgstr "Retour: Configuration des adresses de courriel"
-#: share/html/Install/Emails.html:58
+#: NOT FOUND IN SOURCE
msgid "Back: Customize Password for Users in RT"
msgstr "Retour: Configuration des mots de passe des utilisateurs dans RT"
-#: share/html/Install/Initialize.html:61
+#: NOT FOUND IN SOURCE
msgid "Back: Customize Sendmail"
msgstr "Retour: Configurer Sendmail"
-#: share/html/Install/DatabaseDetails.html:65
+#: NOT FOUND IN SOURCE
msgid "Back: Select Database Type"
msgstr "Retour: Choix de la base de données"
-#: lib/RT/SharedSetting.pm:135
+#: lib/RT/SharedSetting.pm:139
#. ($id)
msgid "Bad privacy for attribute %1"
msgstr "Mauvaise sécurité pour l'attribut %1"
-#: share/html/Admin/Elements/CustomFieldTabs:67 share/html/Admin/Elements/GroupTabs:62 share/html/Admin/Elements/QueueTabs:62 share/html/Admin/Elements/UserTabs:60 share/html/Dashboards/Elements/Tabs:70 share/html/Ticket/Elements/Tabs:126 share/html/User/Elements/GroupTabs:61
+#: share/html/Admin/Elements/CustomFieldTabs:67 share/html/Admin/Elements/GroupTabs:62 share/html/Admin/Elements/QueueTabs:62 share/html/Admin/Elements/UserTabs:60 share/html/Dashboards/Elements/Tabs:70 share/html/Ticket/Elements/Tabs:125 share/html/User/Elements/GroupTabs:61
msgid "Basics"
msgstr "Essentiel"
@@ -924,7 +1141,7 @@
msgid "Bold"
msgstr "Gras"
-#: etc/initialdata:676
+#: etc/initialdata:701
msgid "Bookmarked Tickets"
msgstr "Tickets favoris"
@@ -932,7 +1149,7 @@
msgid "Brief headers"
msgstr "En-têtes courts"
-#: share/html/Ticket/Elements/Tabs:305
+#: share/html/Ticket/Elements/Tabs:306
msgid "Bulk Update"
msgstr "Màj en masse"
@@ -944,7 +1161,7 @@
msgid "Calendar"
msgstr "Calendrier"
-#: lib/RT/User_Overlay.pm:1441
+#: lib/RT/User_Overlay.pm:1479
msgid "Can not modify system users"
msgstr "Les utilisateurs système ne peuvent être modifiés"
@@ -978,7 +1195,7 @@
msgid "Can't save this search"
msgstr "Impossible de sauver cette recherche"
-#: lib/RT/Record.pm:1209 lib/RT/Record.pm:1285
+#: lib/RT/Record.pm:1251 lib/RT/Record.pm:1331
msgid "Can't specifiy both base and target"
msgstr "Impossible de spécifier à la fois la base et la cible"
@@ -1015,7 +1232,7 @@
msgid "Check All"
msgstr "Tout cocher"
-#: share/html/Install/DatabaseDetails.html:64
+#: share/html/Install/DatabaseDetails.html:97
msgid "Check Database Connectivity"
msgstr "Contrôler la connection à la base de données"
@@ -1027,10 +1244,18 @@
msgid "Check box to revoke right"
msgstr "Cocher la case pour retirer le droit"
+#: share/html/Install/DatabaseDetails.html:48 share/html/Install/DatabaseType.html:82
+msgid "Check your database credentials"
+msgstr "Contrôler vos identifiants de base de données"
+
#: share/html/Elements/EditLinks:149 share/html/Elements/EditLinks:82 share/html/Elements/ShowLinks:100 share/html/Ticket/Create.html:233 share/html/Ticket/Elements/BulkLinks:66
msgid "Children"
msgstr "Fils"
+#: share/html/Install/DatabaseType.html:48
+msgid "Choose a database engine"
+msgstr "Choisir un moteur de base de données"
+
#: share/html/Admin/Users/Modify.html:159 share/html/User/Prefs.html:147
msgid "City"
msgstr "Ville"
@@ -1043,10 +1268,14 @@
msgid "Clear All"
msgstr "Tout effacer"
-#: share/html/Install/Initialize.html:54
+#: NOT FOUND IN SOURCE
msgid "Click \"Initialize Database\" to begin creating the database. This may take a few moments"
msgstr "Cliquer \"Initialiser la base de données\" pour commencer la création de la base. Cela peu durer quelques instants"
+#: share/html/Install/Initialize.html:54
+msgid "Click \"Initialize Database\" to create RT's database and insert initial metadata. This may take a few moments"
+msgstr "Cliquer \"Initialiser la base de données\" pour créer la base de données RT et insérer les éléments de base. Cela peu durer quelques instants"
+
#: share/html/Helpers/CalPopup.html:53
msgid "Close window"
msgstr "Fermer la fenêtre"
@@ -1071,7 +1300,7 @@
msgid "Combobox: Select or enter up to %1 values"
msgstr "Boîte combo : Sélectionner ou saisir au plus %1 valeurs"
-#: share/html/Ticket/Elements/ShowTransaction:201 share/html/Ticket/Elements/Tabs:216
+#: share/html/Ticket/Elements/ShowTransaction:201 share/html/Ticket/Elements/Tabs:215
msgid "Comment"
msgstr "Commenter"
@@ -1079,7 +1308,7 @@
msgid "Comment Address"
msgstr "Adresse de commentaire"
-#: lib/RT/Installer.pm:174
+#: lib/RT/Installer.pm:167
msgid "Comment address"
msgstr "Adresse de commentaire"
@@ -1132,7 +1361,12 @@
msgid "Condition matches..."
msgstr "La condition satisfait..."
-#: share/html/Elements/Tabs.orig:87 share/html/Elements/Tabs:87
+#: share/html/Install/index.html:94
+#. ($file)
+msgid "Config file %1 is locked"
+msgstr "Le fichier de configuration %1 est blocké"
+
+#: share/html/Elements/Tabs:87
msgid "Configuration"
msgstr "Configuration"
@@ -1140,6 +1374,10 @@
msgid "Confirm"
msgstr "Confirmer"
+#: share/html/Install/DatabaseDetails.html:147 share/html/Install/DatabaseDetails.html:201
+msgid "Connection succeeded"
+msgstr "Connexion réussie"
+
#: share/html/Admin/Elements/ModifyTemplate:67 share/html/Elements/QuickCreate:65 share/html/Elements/SelectAttachmentField:50 share/html/Ticket/ModifyAll.html:122
msgid "Content"
msgstr "Contenu"
@@ -1148,7 +1386,7 @@
msgid "Content-Type"
msgstr "Type de contenu"
-#: lib/RT/Installer.pm:181
+#: lib/RT/Installer.pm:175
msgid "Correspond address"
msgstr "Adresse de réponse"
@@ -1160,7 +1398,7 @@
msgid "Correspondence added"
msgstr "Courrier ajouté"
-#: lib/RT/Record.pm:1604 lib/RT/Record.pm:1650
+#: lib/RT/Record.pm:1654 lib/RT/Record.pm:1700
#. ($value_msg)
#. ($msg)
msgid "Could not add new custom field value: %1"
@@ -1210,7 +1448,7 @@
msgid "Could not find that principal"
msgstr "Impossible de trouver ce groupe ou utilisateur"
-#: lib/RT/SharedSetting.pm:202
+#: lib/RT/SharedSetting.pm:223
#. ($self->ObjectName)
msgid "Could not load %1 attribute"
msgstr "Impossible de charger l'attribut %1"
@@ -1223,7 +1461,7 @@
msgid "Could not load group"
msgstr "Impossible de charger ce groupe"
-#: lib/RT/SharedSetting.pm:111
+#: lib/RT/SharedSetting.pm:117
#. ($privacy)
msgid "Could not load object for %1"
msgstr "Impossible de charger l'objet pour %1"
@@ -1260,7 +1498,7 @@
msgid "Couldn't add member to group"
msgstr "Impossible d'ajouter un membre à ce groupe"
-#: lib/RT/Record.pm:1660 lib/RT/Record.pm:1712
+#: lib/RT/Record.pm:1710 lib/RT/Record.pm:1762
#. ($msg)
#. ($Msg)
msgid "Couldn't create a transaction: %1"
@@ -1371,8 +1609,8 @@
msgstr "Impossible de charger le ticket '%1'"
#: share/html/Ticket/Forward.html:90 share/html/Ticket/GnuPG.html:75
-#. ($QuoteTransaction)
#. ($id)
+#. ($QuoteTransaction)
msgid "Couldn't load transaction #%1"
msgstr "Impossible de charger la transaction #%1"
@@ -1420,11 +1658,11 @@
msgid "Couldn't set %1 watcher: %2"
msgstr "Impossible de mettre %1 observateur: %2"
-#: lib/RT/User_Overlay.pm:1592
+#: lib/RT/User_Overlay.pm:1630
msgid "Couldn't set private key"
msgstr "Impossible de sélectionner la clefs privée"
-#: lib/RT/User_Overlay.pm:1576
+#: lib/RT/User_Overlay.pm:1614
msgid "Couldn't unset private key"
msgstr "Impossible de désélectionner la clefs privée"
@@ -1449,7 +1687,7 @@
msgid "Create a CustomField for queue %1"
msgstr "Ajouter un champ personnalisé pour la file %1"
-#: share/html/Dashboards/Modify.html:129 share/html/Dashboards/Modify.html:93
+#: share/html/Dashboards/Modify.html:134 share/html/Dashboards/Modify.html:98
msgid "Create a new dashboard"
msgstr "Créer un nouveau tableau de bord"
@@ -1548,7 +1786,7 @@
msgid "Creator"
msgstr "Créateur"
-#: share/html/Prefs/Other.html:72
+#: share/html/Prefs/Other.html:73
msgid "Cryptography"
msgstr "Chiffrement"
@@ -1602,7 +1840,7 @@
msgid "Custom field %1 %2 %3"
msgstr "Champs personnalisé %1 %2 %3"
-#: lib/RT/Record.pm:1522
+#: lib/RT/Record.pm:1572
#. ($args{'Field'})
msgid "Custom field %1 does not apply to this object"
msgstr "Le champs personnalisé %1 ne s'applique pas à cet objet"
@@ -1617,12 +1855,12 @@
msgid "Custom field %1 has no value."
msgstr "Le champ personnalisé %1 n'a pas de valeur."
-#: lib/RT/Record.pm:1511 lib/RT/Record.pm:1693
+#: lib/RT/Record.pm:1561 lib/RT/Record.pm:1743
#. ($args{'Field'})
msgid "Custom field %1 not found"
msgstr "Le champ personnalisé %1 est introuvable"
-#: lib/RT/Report/Tickets.pm:120 lib/RT/Report/Tickets.pm:123
+#: lib/RT/Report/Tickets.pm:126 lib/RT/Report/Tickets.pm:129
#. ($cf)
#. ($obj->Name)
msgid "Custom field '%1'"
@@ -1653,14 +1891,42 @@
msgid "Customize"
msgstr "Personnaliser"
-#: lib/RT/Installer.pm:98
+#: share/html/Install/Basics.html:48 share/html/Install/DatabaseDetails.html:93 share/html/Install/Sendmail.html:68
+msgid "Customize Basics"
+msgstr "Configuration de base"
+
+#: share/html/Install/Basics.html:65
+msgid "Customize Database Details"
+msgstr "Configurer la base de données"
+
+#: share/html/Install/Global.html:48
+msgid "Customize Email Addresses"
+msgstr "Configurer les adresses de courriel"
+
+#: share/html/Install/Basics.html:65 share/html/Install/Global.html:72
+msgid "Customize Email Configuration"
+msgstr "Configurer l'envoi des courriels"
+
+#: share/html/Install/Initialize.html:61
+msgid "Customize Global"
+msgstr "COnfiguration globale"
+
+#: share/html/Install/Sendmail.html:67
+msgid "Customize Global Defaults"
+msgstr "Configurer les paramêtres par défaut"
+
+#: NOT FOUND IN SOURCE
msgid "DBA of the database"
msgstr "Administrateur de la base de données"
-#: lib/RT/Installer.pm:106
+#: lib/RT/Installer.pm:109
msgid "DBA password"
msgstr "Mot de passe de l'administrateur"
+#: lib/RT/Installer.pm:102
+msgid "DBA username"
+msgstr "Identifiant DBA"
+
#: lib/RT/Config.pm:226
msgid "Daily digest"
msgstr "Compilation quotidienne"
@@ -1669,42 +1935,53 @@
msgid "Dashboard"
msgstr "Tableau de bord"
-#: share/html/Dashboards/Modify.html:112
+#: share/html/Dashboards/Modify.html:117
#. ($msg)
msgid "Dashboard could not be created: %1"
msgstr "Le tableau de bord n'a pas pu être créé: %1"
-#: share/html/Dashboards/Modify.html:147 share/html/Dashboards/Queries.html:149
+#: share/html/Dashboards/Modify.html:152 share/html/Dashboards/Queries.html:149
#. ($msg)
msgid "Dashboard could not be updated: %1"
msgstr "Le tableau de bord n'a pas pu être mis à jour: %1"
-#: share/html/Dashboards/Modify.html:144 share/html/Dashboards/Queries.html:146
+#: share/html/Dashboards/Modify.html:149 share/html/Dashboards/Queries.html:146
msgid "Dashboard updated"
msgstr "Tableau de bord mis à jour"
-#: sbin/rt-email-dashboards:247
-#. () || "RT [_2] Dashboard: [_1]"), $dashboard->Name, ucfirst($subscription->SubValue('Frequency')),)
+#: NOT FOUND IN SOURCE
msgid "DashboardSubject"
msgstr "RT [_2] Tableau de bord: [_1]"
-#: share/html/Dashboards/index.html:73 share/html/User/Elements/Tabs:76
+#: share/html/Dashboards/index.html:73 share/html/Elements/Dashboards:49 share/html/User/Elements/Tabs:76
msgid "Dashboards"
msgstr "Tableaux de bord"
-#: lib/RT/Installer.pm:92
+#: lib/RT/Installer.pm:76
+msgid "Database host"
+msgstr "Nom d'hôte de la base de données"
+
+#: lib/RT/Installer.pm:94
msgid "Database name"
msgstr "Nom de la base de données"
-#: lib/RT/Installer.pm:122
+#: lib/RT/Installer.pm:125
msgid "Database password for RT"
msgstr "Mot de passe de la base de données pour RT"
-#: lib/RT/Installer.pm:83
+#: lib/RT/Installer.pm:85
+msgid "Database port"
+msgstr "Port de connexion à la base"
+
+#: NOT FOUND IN SOURCE
msgid "Database port number"
msgstr "Port de connexion à la base"
-#: lib/RT/Installer.pm:115
+#: lib/RT/Installer.pm:58
+msgid "Database type"
+msgstr "Type de base de données"
+
+#: lib/RT/Installer.pm:118
msgid "Database username for RT"
msgstr "Nom d'utilisateur de la base de données pour RT"
@@ -1712,7 +1989,7 @@
msgid "Date format"
msgstr "Format de date"
-#: share/html/SelfService/Display.html:63 share/html/Ticket/Create.html:210 share/html/Ticket/Elements/ShowSummary:93 share/html/Ticket/Elements/Tabs:131 share/html/Ticket/ModifyAll.html:68
+#: share/html/SelfService/Display.html:63 share/html/Ticket/Create.html:210 share/html/Ticket/Elements/ShowSummary:93 share/html/Ticket/Elements/Tabs:130 share/html/Ticket/ModifyAll.html:68
msgid "Dates"
msgstr "Dates"
@@ -1786,7 +2063,7 @@
msgid "Delegation"
msgstr "Délégation"
-#: share/html/Admin/Elements/EditScrips:73 share/html/Search/Elements/EditFormat:99 share/html/Search/Elements/EditQuery:61 share/html/Search/Elements/EditSearches:63 share/html/Widgets/SelectionBox:212
+#: share/html/Admin/Elements/EditScrips:73 share/html/Dashboards/Modify.html:77 share/html/Search/Elements/EditFormat:99 share/html/Search/Elements/EditQuery:61 share/html/Search/Elements/EditSearches:63 share/html/Widgets/SelectionBox:212
msgid "Delete"
msgstr "Supprimer"
@@ -1794,7 +2071,11 @@
msgid "Delete Template"
msgstr "Détruire le modèle"
-#: lib/RT/SharedSetting.pm:231
+#: lib/RT/Dashboard.pm:79
+msgid "Delete dashboards"
+msgstr "Supprimer les tableaux de bords"
+
+#: lib/RT/SharedSetting.pm:273
#. ($msg)
msgid "Delete failed: %1"
msgstr "Échec de la destruction : %1"
@@ -1811,15 +2092,24 @@
msgid "Delete values"
msgstr "Supprimer les valeurs"
+#: lib/RT/Dashboard.pm:79
+msgid "DeleteDashboard"
+msgstr "SupprimerTableauxDeBords"
+
#: lib/RT/Queue_Overlay.pm:114
msgid "DeleteTicket"
msgstr "SupprimerTicket"
-#: lib/RT/SharedSetting.pm:229
+#: lib/RT/SharedSetting.pm:271
#. ($self->ObjectName)
msgid "Deleted %1"
msgstr "%1 effacé"
+#: share/html/Dashboards/index.html:92
+#. ($Deleted)
+msgid "Deleted dashboard %1"
+msgstr "Tableau de bord %1 supprimé"
+
#: share/html/Search/Elements/EditSearches:181
msgid "Deleted saved search"
msgstr "Recherche sauvée effacée"
@@ -1880,11 +2170,15 @@
msgid "Description"
msgstr "Description"
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:50
+msgid "Direction"
+msgstr "Orientation"
+
#: share/html/Elements/RT__Queue/ColumnMap:63
msgid "Disabled"
msgstr "Désactivé"
-#: share/html/Search/Elements/EditFormat:68 share/html/Ticket/Elements/Tabs:117
+#: share/html/Search/Elements/EditFormat:68 share/html/Ticket/Elements/Tabs:116
msgid "Display"
msgstr "Afficher"
@@ -1916,6 +2210,14 @@
msgid "Do anything and everything"
msgstr "Faire tout et n'importe quoi"
+#: lib/RT/Installer.pm:190
+msgid "Domain name"
+msgstr "Nom de domaine"
+
+#: lib/RT/Installer.pm:191
+msgid "Don't include http://, just something like 'localhost', 'rt.example.com'"
+msgstr "Ne pas inclure http://, juste quelquechose comme 'localhost', 'rt.example.com'"
+
#: share/html/Elements/Refresh:53
msgid "Don't refresh this page."
msgstr "Ne pas rafraîchir cette page."
@@ -1936,11 +2238,16 @@
msgid "Due"
msgstr "Échéance"
+#: share/html/Install/Initialize.html:124 share/html/Install/Initialize.html:87
+#. ($msg)
+msgid "ERROR: %1"
+msgstr "ERREUR: %1"
+
#: share/html/Ticket/Elements/ShowTransaction:218
msgid "Ecnrypt/Decrypt"
msgstr "Chiffrer/Déchiffrer"
-#: share/html/Elements/Quicksearch:50 share/html/Elements/ShowSearch:51 share/html/index.html:132
+#: share/html/Elements/Dashboards:50 share/html/Elements/Quicksearch:50 share/html/Elements/ShowSearch:51 share/html/index.html:132
msgid "Edit"
msgstr "Modifier"
@@ -1977,7 +2284,7 @@
msgid "Edit Query"
msgstr "Modifier la requête"
-#: share/html/Ticket/Elements/Tabs:264
+#: share/html/Ticket/Elements/Tabs:265
msgid "Edit Search"
msgstr "Mod. recherche"
@@ -2023,14 +2330,23 @@
msgid "Editing membership for personal group %1"
msgstr "Modifier les membres du groupe personnel %1"
-#: lib/RT/Record.pm:1222 lib/RT/Record.pm:1299 lib/RT/Ticket_Overlay.pm:2230 lib/RT/Ticket_Overlay.pm:2325
+#: lib/RT/Record.pm:1264 lib/RT/Record.pm:1345 lib/RT/Ticket_Overlay.pm:2230 lib/RT/Ticket_Overlay.pm:2325
msgid "Either base or target must be specified"
msgstr "La base ou la cible doivent être spécifiées"
+#: share/html/Elements/ShowSearch:67
+#. ($SavedSearch)
+msgid "Either you have no rights to view saved search %1 or identifier is incorrect"
+msgstr "Soit vous n'avez pas les droits pour voire la recherche sauvée %1, soit votre identifiant est incorrect"
+
#: share/html/Admin/Users/Modify.html:76 share/html/Ticket/Elements/AddWatchers:79 share/html/User/Prefs.html:67
msgid "Email"
msgstr "Courriel"
+#: share/html/Install/Sendmail.html:48
+msgid "Email Configuration"
+msgstr "Configuration de l'envoi de courriels"
+
#: etc/initialdata:423 etc/upgrade/3.7.85/content:4
msgid "Email Digest"
msgstr "Compilation de courriels"
@@ -2153,6 +2469,10 @@
msgid "Error to RT owner: public key"
msgstr "Erreur au propriétaire RT: clefs publique"
+#: etc/initialdata:433 etc/upgrade/3.7.87/content:4
+msgid "Error: Missing dashboard"
+msgstr "Erreur: tableau de bord manquant"
+
#: etc/initialdata:396 etc/upgrade/3.7.10/content:38
msgid "Error: bad GnuPG data"
msgstr "Erreur: mauvaises données GnuPG"
@@ -2193,7 +2513,12 @@
msgid "Extract tags from a Transaction's subject and add them to the Ticket's subject."
msgstr "Extraire la marque du sujet d'une transaction et l'ajouter au sujet tu ticket."
-#: lib/RT/SharedSetting.pm:185
+#: share/html/Install/DatabaseDetails.html:193
+#. ($DBI::errstr)
+msgid "Failed to connect to database: %1"
+msgstr "Échec lors de la connexion à la base de données: %1"
+
+#: lib/RT/SharedSetting.pm:198
#. ($self->ObjectName)
msgid "Failed to create %1 attribute"
msgstr "Impossible de créer l'attribut %1"
@@ -2206,7 +2531,7 @@
msgid "Failed to find 'Unprivileged' users pseudogroup"
msgstr "Recherche du pseudo groupe d'utilisateurs 'non-privilégiés' infructueuse"
-#: lib/RT/SharedSetting.pm:131
+#: lib/RT/SharedSetting.pm:135
#. ($id)
msgid "Failed to load attribute %1"
msgstr "Impossible de charger l'attribut %1"
@@ -2216,7 +2541,7 @@
msgid "Failed to load module %1. (%2)"
msgstr "Impossible de charger le module %1. (%2)"
-#: lib/RT/SharedSetting.pm:164
+#: lib/RT/SharedSetting.pm:177
#. ($privacy)
msgid "Failed to load object for %1"
msgstr "Impossible de charger l'objet pour %1"
@@ -2297,7 +2622,11 @@
msgid "Find tickets"
msgstr "Rechercher des tickets"
-#: share/html/Ticket/Elements/Tabs:82
+#: share/html/Install/Finish.html:48 share/html/Install/Global.html:71
+msgid "Finish"
+msgstr "Terminer"
+
+#: share/html/Ticket/Elements/Tabs:81
msgid "First"
msgstr "Premier"
@@ -2370,6 +2699,10 @@
msgid "Get template from file"
msgstr "Obtenir le modèle à partir d'un fichier"
+#: share/html/Install/index.html:67
+msgid "Getting started"
+msgstr ""
+
#: lib/RT/Transaction_Overlay.pm:673
#. ($New->Name)
msgid "Given to %1"
@@ -2395,7 +2728,7 @@
#: share/html/Admin/Elements/SelectTemplate:61
#. (loc($Template->Name))
msgid "Global template: %1"
-msgstr "Modèle global : %1"
+msgstr "Modèle global : %1"
#: share/html/Admin/Elements/UserTabs:76
msgid "GnuPG"
@@ -2443,7 +2776,7 @@
msgid "Graph Properties"
msgstr "Propriétés du graphique"
-#: share/html/Search/Elements/Chart:106
+#: share/html/Search/Elements/Chart:108
msgid "Graphical charts are not available."
msgstr "Les graphiques ne sont pas disponibles."
@@ -2522,7 +2855,11 @@
msgid "Hello, %1"
msgstr "Bonjour, %1"
-#: share/html/Admin/Elements/GroupTabs:72 share/html/Admin/Elements/UserTabs:66 share/html/Ticket/Elements/ShowHistory:55 share/html/Ticket/Elements/Tabs:122
+#: share/html/Install/Global.html:52
+msgid "Help us set up some useful defaults for RT."
+msgstr ""
+
+#: share/html/Admin/Elements/GroupTabs:72 share/html/Admin/Elements/UserTabs:66 share/html/Ticket/Elements/ShowHistory:55 share/html/Ticket/Elements/Tabs:121
msgid "History"
msgstr "Historique"
@@ -2536,7 +2873,7 @@
msgid "History of the user %1"
msgstr "Historique de l'utilisateur %1"
-#: share/html/Elements/Tabs.orig:68 share/html/Elements/Tabs:68
+#: share/html/Elements/Tabs:68
msgid "Homepage"
msgstr "Accueil"
@@ -2561,7 +2898,7 @@
msgid "Identity"
msgstr "Identité"
-#: etc/initialdata:490
+#: etc/initialdata:515
msgid "If an approval is rejected, reject the original and delete pending approvals"
msgstr "Si une approbation est refusée, rejette l'original et supprime les approbations en attente"
@@ -2617,6 +2954,10 @@
msgid "Inform RT owner that user(s) have problems with public keys"
msgstr "Informer le propriétaire RT que les utilisateurs ont un problème avec les clefs publiques"
+#: etc/initialdata:435 etc/upgrade/3.7.87/content:6
+msgid "Inform user that a dashboard he subscribed to is missing"
+msgstr "Informer l'utilisateur que le tableau de bord souscrit est manquant"
+
#: etc/initialdata:398 etc/upgrade/3.7.10/content:40
msgid "Inform user that a message he sent has invalid GnuPG data"
msgstr "Informer l'utilisateur qu'un message qu'il a envoyé contient des données GnuPG invalides"
@@ -2641,7 +2982,7 @@
msgid "InitialPriority"
msgstr "PrioritéInitiale"
-#: share/html/Install/Initialize.html:60
+#: share/html/Install/Global.html:71 share/html/Install/Initialize.html:48 share/html/Install/Initialize.html:60
msgid "Initialize Database"
msgstr "Initialisation de la base"
@@ -2650,8 +2991,8 @@
msgstr "Erreur à l'entrée"
#: lib/RT/CustomField_Overlay.pm:1055 lib/RT/CustomField_Overlay.pm:919 share/html/Elements/ValidateCustomFields:87
-#. ($CF->FriendlyPattern)
#. ($self->FriendlyPattern)
+#. ($CF->FriendlyPattern)
msgid "Input must match %1"
msgstr "La valeur saisie doit correspondre à %1"
@@ -2668,6 +3009,21 @@
msgid "Internal Error: %1"
msgstr "Erreur interne : %1"
+#: share/html/Install/Global.html:95
+#. ($_, $ARGS{$_})
+msgid "Invalid %1: '%2' doesn't look like an email address"
+msgstr "%1 invalide: '%2' ne semble pas être une adresse de courriel"
+
+#: share/html/Install/Basics.html:82
+#. ('WebPort')
+msgid "Invalid %1: it should be a number"
+msgstr "%1 invalide: ceci devrait être un nombre"
+
+#: share/html/Install/Sendmail.html:95
+#. ('Administrator Email')
+msgid "Invalid %1: that doesn't look like an email address"
+msgstr "%1 invalide: ceci ne semble pas être une adresse de courriel"
+
#: lib/RT/Group_Overlay.pm:607
msgid "Invalid Group Type"
msgstr "Type de groupe invalide"
@@ -2711,7 +3067,7 @@
msgid "Invalid value for %1"
msgstr "File invalide pour %1"
-#: lib/RT/Record.pm:1532
+#: lib/RT/Record.pm:1582
msgid "Invalid value for custom field"
msgstr "Valeur incorrecte pour le champ personnalisé"
@@ -2759,7 +3115,7 @@
msgid "July"
msgstr "Juillet"
-#: share/html/Ticket/Elements/Tabs:143
+#: share/html/Ticket/Elements/Tabs:142
msgid "Jumbo"
msgstr "Tout"
@@ -2771,6 +3127,10 @@
msgid "June"
msgstr "Juin"
+#: lib/RT/Installer.pm:78
+msgid "Keep 'localhost' if you're not sure"
+msgstr "Conservez 'localhost' si vous n'êtes pas sûr"
+
#: share/html/Admin/Users/Modify.html:96 share/html/User/Prefs.html:78
msgid "Language"
msgstr "Langue"
@@ -2779,7 +3139,7 @@
msgid "Large"
msgstr "Grande"
-#: share/html/Ticket/Elements/Tabs:103
+#: share/html/Ticket/Elements/Tabs:102
msgid "Last"
msgstr "Dernier"
@@ -2799,10 +3159,18 @@
msgid "Last updated by"
msgstr "Dernière MAJ par"
-#: lib/RT/Installer.pm:86
+#: NOT FOUND IN SOURCE
msgid "Leave empty to use default value of the RDBMS"
msgstr "Laisser vide pour utiliser la valeur par défaut du serveur"
+#: lib/RT/Installer.pm:88
+msgid "Leave empty to use the default value for your database"
+msgstr "Laisser vide pour utiliser la valeur par défaut pour votre base de données"
+
+#: lib/RT/Installer.pm:101
+msgid "Leave this alone to use the default dba username for your database type"
+msgstr "Laisser ceci pour utiliser l'identifiant dba par defaut pour votre type de base de données"
+
#: share/html/Ticket/Elements/ShowBasics:71
msgid "Left"
msgstr "Restant"
@@ -2823,7 +3191,7 @@
msgid "Let this user be granted rights"
msgstr "Autoriser cet utilisateur à recevoir des droits"
-#: share/html/Install/index.html:71
+#: share/html/Install/index.html:83
msgid "Let's go!"
msgstr "C'est parti!"
@@ -2831,25 +3199,23 @@
msgid "Link"
msgstr "Relation"
-#: lib/RT/Record.pm:1233
+#: lib/RT/Record.pm:1275
msgid "Link already exists"
msgstr "Le lien existe déjà"
-#: lib/RT/Record.pm:1247
+#: lib/RT/Record.pm:1289
msgid "Link could not be created"
msgstr "Le lien ne peut être ajouté"
-#: lib/RT/Record.pm:1253
-#. ($TransString)
+#: NOT FOUND IN SOURCE
msgid "Link created (%1)"
msgstr "Le lien est ajouté (%1)"
-#: lib/RT/Record.pm:1314
-#. ($TransString)
+#: NOT FOUND IN SOURCE
msgid "Link deleted (%1)"
msgstr "Le lien est effacé (%1)"
-#: lib/RT/Record.pm:1320
+#: lib/RT/Record.pm:1370
msgid "Link not found"
msgstr "Lien introuvable"
@@ -2866,7 +3232,7 @@
msgid "Linking. Permission denied"
msgstr "Relation. autorisation refusée"
-#: share/html/Ticket/Create.html:226 share/html/Ticket/Elements/ShowSummary:100 share/html/Ticket/Elements/Tabs:139 share/html/Ticket/ModifyAll.html:81
+#: share/html/Ticket/Create.html:226 share/html/Ticket/Elements/ShowSummary:100 share/html/Ticket/Elements/Tabs:138 share/html/Ticket/ModifyAll.html:81
msgid "Links"
msgstr "Relations"
@@ -2882,7 +3248,7 @@
msgid "LoadSavedSearch"
msgstr "ChargerRechercheSauvée"
-#: lib/RT/SharedSetting.pm:103
+#: lib/RT/SharedSetting.pm:109
#. ($self->ObjectName, $self->Name)
msgid "Loaded %1 %2"
msgstr "%1 %2 chargé"
@@ -2909,7 +3275,7 @@
msgid "Location"
msgstr "Localisation"
-#: share/html/Elements/Header:89
+#: share/html/Elements/Header:92
#. ("<span>".$session{'CurrentUser'}->Name."</span>")
msgid "Logged in as %1"
msgstr "Connecté en tant que %1"
@@ -2922,7 +3288,7 @@
msgid "Login"
msgstr "Connexion"
-#: share/html/Elements/Header:99 share/html/NoAuth/Logout.html:48
+#: share/html/Elements/Header:102 share/html/NoAuth/Logout.html:48
msgid "Logout"
msgstr "Déconnexion"
@@ -2934,7 +3300,7 @@
msgid "Mail"
msgstr "Courriel"
-#: share/html/Ticket/Graphs/Elements/EditGraphProperties:50
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:58
msgid "Main type of links"
msgstr "Type de liens principal"
@@ -3014,11 +3380,11 @@
msgid "March"
msgstr "Mars"
-#: share/html/Ticket/Display.html:177
+#: share/html/Ticket/Display.html:168
msgid "Marked all messages as seen"
msgstr "Marquer tous les messages comme lus"
-#: lib/RT/Installer.pm:161
+#: NOT FOUND IN SOURCE
msgid "Max attachment size( in bytes )"
msgstr "Taille maximum pour les pièces jointes (en bytes)"
@@ -3133,7 +3499,7 @@
msgid "Messages about this ticket will not be sent to..."
msgstr "Les messages relatifs à ce ticket ne seront pas envoyés à..."
-#: lib/RT/Installer.pm:148
+#: lib/RT/Installer.pm:146
msgid "Minimum password length"
msgstr "Longueur minimum des mots de passe"
@@ -3198,7 +3564,7 @@
msgstr "Modifier le scrip pour la file %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Modifier le scrip qui s'applique à toutes les files"
#: share/html/Admin/CustomFields/Objects.html:92
@@ -3292,7 +3658,7 @@
msgid "Modify templates which apply to all queues"
msgstr "Modifier les modèles globaux"
-#: share/html/Dashboards/Modify.html:122
+#: share/html/Dashboards/Modify.html:127
#. ($Dashboard->Name)
msgid "Modify the dashboard %1"
msgstr "Modifier le tableau de bord %1"
@@ -3432,7 +3798,7 @@
msgid "My approvals"
msgstr "Mes approbations"
-#: share/html/Dashboards/Elements/SelectPrivacy:55
+#: share/html/Dashboards/Elements/SelectPrivacy:59
msgid "My dashboards"
msgstr "Mes tableaux de bord"
@@ -3444,7 +3810,7 @@
msgid "MySQL"
msgstr "MySQL"
-#: share/html/Admin/CustomFields/Modify.html:61 share/html/Admin/Elements/AddCustomFieldValue:54 share/html/Admin/Elements/EditCustomField:57 share/html/Admin/Elements/EditCustomFieldValues:58 share/html/Admin/Elements/ModifyTemplate:51 share/html/Admin/Groups/Modify.html:67 share/html/Dashboards/Elements/ShowDashboards:56 share/html/Dashboards/Modify.html:65 share/html/Search/Bulk.html:165 share/html/User/Groups/Modify.html:67
+#: share/html/Admin/CustomFields/Modify.html:61 share/html/Admin/Elements/AddCustomFieldValue:54 share/html/Admin/Elements/EditCustomField:57 share/html/Admin/Elements/EditCustomFieldValues:58 share/html/Admin/Elements/ModifyTemplate:51 share/html/Admin/Groups/Modify.html:67 share/html/Dashboards/Elements/ShowDashboards:77 share/html/Dashboards/Modify.html:65 share/html/Search/Bulk.html:165 share/html/User/Groups/Modify.html:67
msgid "Name"
msgstr "Nom"
@@ -3472,7 +3838,7 @@
msgid "New Pending Approval"
msgstr "Nouvelles approbations en attente"
-#: share/html/Ticket/Elements/Tabs:260
+#: share/html/Ticket/Elements/Tabs:261
msgid "New Search"
msgstr "Nouv. recherche"
@@ -3537,35 +3903,39 @@
msgid "New watchers"
msgstr "Nouveaux observateurs"
-#: share/html/Elements/CollectionListPaging:104 share/html/Helpers/CalPopup.html:60 share/html/Ticket/Elements/Tabs:98
+#: share/html/Elements/CollectionListPaging:104 share/html/Helpers/CalPopup.html:60 share/html/Ticket/Elements/Tabs:97
msgid "Next"
msgstr "Suivant"
-#: share/html/Install/DatabaseType.html:62
+#: share/html/Install/Basics.html:65 share/html/Install/DatabaseDetails.html:93 share/html/Install/DatabaseType.html:82 share/html/Install/Global.html:71 share/html/Install/Global.html:71 share/html/Install/Sendmail.html:67
+msgid "Next: "
+msgstr "Suivant: "
+
+#: NOT FOUND IN SOURCE
msgid "Next: Check your database credentials"
msgstr "Suivant: contrôle des identifiant de la base"
-#: share/html/Install/DatabaseDetails.html:69
+#: NOT FOUND IN SOURCE
msgid "Next: Customize Basics"
msgstr "Suivant: réglages de base"
-#: share/html/Install/Password.html:57
+#: NOT FOUND IN SOURCE
msgid "Next: Customize Email Addresses"
msgstr "Suivant: Configurer les adresses de courriel"
-#: share/html/Install/Basics.html:57
+#: NOT FOUND IN SOURCE
msgid "Next: Customize Password for Users in RT"
msgstr "Suivant: Configurer les mots de passe des utilisateurs RT"
-#: share/html/Install/Emails.html:57
+#: NOT FOUND IN SOURCE
msgid "Next: Email Configuration"
msgstr "Suivant: Configuration de la messagerie"
-#: share/html/Install/Sendmail.html:58
+#: NOT FOUND IN SOURCE
msgid "Next: Finish"
msgstr "Suifant: fin"
-#: share/html/Install/Sendmail.html:58
+#: NOT FOUND IN SOURCE
msgid "Next: Initialize Database"
msgstr "Suivant: initialisation de la base"
@@ -3577,7 +3947,7 @@
msgid "No"
msgstr "Non"
-#: lib/RT/SharedSetting.pm:201
+#: lib/RT/SharedSetting.pm:222
#. ($self->ObjectName)
msgid "No %1 loaded"
msgstr "Pas de %1 chargé"
@@ -3626,7 +3996,7 @@
msgid "No comment entered about this user"
msgstr "Pas de commentaires concernant cet utilisateur"
-#: share/html/Dashboards/Elements/ShowDashboards:51
+#: share/html/Dashboards/Elements/ShowDashboards:71
msgid "No dashboards."
msgstr "Pas de tableaux de bord."
@@ -3676,7 +4046,7 @@
msgid "No permission to display that ticket"
msgstr "Pas de permission pour afficher ce ticket"
-#: lib/RT/SharedSetting.pm:168
+#: lib/RT/SharedSetting.pm:181
#. ($self->ObjectName)
msgid "No permission to save system-wide %1"
msgstr "Pas de permission pour effectuer une sauvegarde système de %1"
@@ -3685,7 +4055,7 @@
msgid "No permission to save system-wide searches"
msgstr "Pas de permission pour sauvegarder des recherches systèmes"
-#: lib/RT/User_Overlay.pm:1277
+#: lib/RT/User_Overlay.pm:1315
msgid "No permission to set preferences"
msgstr "Pas de permission pour modifier les préférences"
@@ -3729,7 +4099,7 @@
msgid "No subject"
msgstr "Pas de sujet"
-#: lib/RT/User_Overlay.pm:1584
+#: lib/RT/User_Overlay.pm:1622
msgid "No such key or it's not suitable for signing"
msgstr "Clefs non trouvée ou non adapté pour les signatures"
@@ -3765,7 +4135,7 @@
msgid "Nonexistant field?"
msgstr "Champ inexistant ? "
-#: share/html/Search/Chart:149 share/html/Search/Elements/Chart:90
+#: share/html/Search/Chart:151 share/html/Search/Elements/Chart:92
msgid "Not Set"
msgstr "Non renseigné"
@@ -3773,7 +4143,7 @@
msgid "Not found"
msgstr "Non trouvé"
-#: share/html/Elements/Header:94
+#: share/html/Elements/Header:97
msgid "Not logged in."
msgstr "Non connecté."
@@ -3803,11 +4173,11 @@
#: etc/initialdata:48 etc/upgrade/3.1.17/content:6
msgid "Notify Ccs"
-msgstr "Aviser par cc"
+msgstr "Avertir les Ccs"
#: etc/initialdata:44 etc/upgrade/3.1.17/content:2
msgid "Notify Ccs as Comment"
-msgstr "Aviser par cc pour commentaires"
+msgstr "Avertir les Ccs par un commentaire"
#: etc/initialdata:83
msgid "Notify Other Recipients"
@@ -4006,7 +4376,7 @@
msgid "Open URL"
msgstr "Ouvrir l'URL"
-#: share/html/Ticket/Elements/Tabs:189
+#: share/html/Ticket/Elements/Tabs:188
msgid "Open it"
msgstr "Ouvrir"
@@ -4030,7 +4400,7 @@
msgid "Order by"
msgstr "Trier par"
-#: lib/RT/Installer.pm:142 share/html/Admin/Users/Modify.html:144 share/html/User/Prefs.html:135
+#: share/html/Admin/Users/Modify.html:144 share/html/User/Prefs.html:135
msgid "Organization"
msgstr "Organisation"
@@ -4077,7 +4447,7 @@
msgid "Owner could not be set."
msgstr "Le propriétaire ne peut être sauvé."
-#: lib/RT/Installer.pm:167
+#: NOT FOUND IN SOURCE
msgid "Owner email"
msgstr "Courriel du propriétaire"
@@ -4148,7 +4518,11 @@
msgid "Passwords do not match. Your password has not been changed"
msgstr "Les mots de passe sont différents. Votre mot de passe n'a pas été modifié"
-#: share/html/Ticket/Elements/ShowSummary:64 share/html/Ticket/Elements/Tabs:135 share/html/Ticket/ModifyAll.html:75
+#: lib/RT/Installer.pm:184
+msgid "Path to sendmail"
+msgstr "Chemin pour sendmail"
+
+#: share/html/Ticket/Elements/ShowSummary:64 share/html/Ticket/Elements/Tabs:134 share/html/Ticket/ModifyAll.html:75
msgid "People"
msgstr "Personnes"
@@ -4160,10 +4534,14 @@
msgid "Perl configuration"
msgstr "Configuration de Perl"
-#: lib/RT/ACE_Overlay.pm:247 lib/RT/ACE_Overlay.pm:253 lib/RT/ACE_Overlay.pm:351 lib/RT/ACE_Overlay.pm:361 lib/RT/ACE_Overlay.pm:371 lib/RT/ACE_Overlay.pm:436 lib/RT/Attachment_Overlay.pm:615 lib/RT/Attachment_Overlay.pm:616 lib/RT/Attachment_Overlay.pm:677 lib/RT/Attachment_Overlay.pm:678 lib/RT/Attribute_Overlay.pm:161 lib/RT/Attribute_Overlay.pm:167 lib/RT/Attribute_Overlay.pm:376 lib/RT/Attribute_Overlay.pm:385 lib/RT/Attribute_Overlay.pm:398 lib/RT/CurrentUser.pm:137 lib/RT/CurrentUser.pm:143 lib/RT/CurrentUser.pm:149 lib/RT/CustomFieldValue_Overlay.pm:83 lib/RT/CustomField_Overlay.pm:1031 lib/RT/CustomField_Overlay.pm:1174 lib/RT/CustomField_Overlay.pm:171 lib/RT/CustomField_Overlay.pm:188 lib/RT/CustomField_Overlay.pm:199 lib/RT/CustomField_Overlay.pm:359 lib/RT/CustomField_Overlay.pm:388 lib/RT/CustomField_Overlay.pm:665 lib/RT/CustomField_Overlay.pm:836 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:915 lib/RT/Group_Overlay.pm:1116 lib/RT/Group_Overlay.pm:1120 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1239 lib/RT/Group_Overlay.pm:1243 lib/RT/Group_Overlay.pm:1249 lib/RT/Group_Overlay.pm:383 lib/RT/Group_Overlay.pm:481 lib/RT/Group_Overlay.pm:559 lib/RT/Group_Overlay.pm:567 lib/RT/Group_Overlay.pm:665 lib/RT/Group_Overlay.pm:669 lib/RT/Group_Overlay.pm:675 lib/RT/Group_Overlay.pm:918 lib/RT/Group_Overlay.pm:922 lib/RT/Group_Overlay.pm:935 lib/RT/Queue_Overlay.pm:1112 lib/RT/Queue_Overlay.pm:142 lib/RT/Queue_Overlay.pm:160 lib/RT/Queue_Overlay.pm:471 lib/RT/Queue_Overlay.pm:497 lib/RT/Queue_Overlay.pm:519 lib/RT/Queue_Overlay.pm:731 lib/RT/Queue_Overlay.pm:877 lib/RT/Queue_Overlay.pm:886 lib/RT/Queue_Overlay.pm:899 lib/RT/Scrip_Overlay.pm:113 lib/RT/Scrip_Overlay.pm:124 lib/RT/Scrip_Overlay.pm:188 lib/RT/Scrip_Overlay.pm:497 lib/RT/Template_Overlay.pm:215 lib/RT/Template_Overlay.pm:224 lib/RT/Template_Overlay.pm:250 lib/RT/Template_Overlay.pm:389 lib/RT/Template_Overlay.pm:99 lib/RT/Ticket_Overlay.pm:1055 lib/RT/Ticket_Overlay.pm:1061 lib/RT/Ticket_Overlay.pm:1068 lib/RT/Ticket_Overlay.pm:1205 lib/RT/Ticket_Overlay.pm:1215 lib/RT/Ticket_Overlay.pm:1229 lib/RT/Ticket_Overlay.pm:1317 lib/RT/Ticket_Overlay.pm:1674 lib/RT/Ticket_Overlay.pm:1828 lib/RT/Ticket_Overlay.pm:1998 lib/RT/Ticket_Overlay.pm:2048 lib/RT/Ticket_Overlay.pm:2237 lib/RT/Ticket_Overlay.pm:2250 lib/RT/Ticket_Overlay.pm:2331 lib/RT/Ticket_Overlay.pm:2344 lib/RT/Ticket_Overlay.pm:2447 lib/RT/Ticket_Overlay.pm:2461 lib/RT/Ticket_Overlay.pm:2690 lib/RT/Ticket_Overlay.pm:2701 lib/RT/Ticket_Overlay.pm:2707 lib/RT/Ticket_Overlay.pm:2905 lib/RT/Ticket_Overlay.pm:2909 lib/RT/Ticket_Overlay.pm:3046 lib/RT/Ticket_Overlay.pm:3198 lib/RT/Transaction_Overlay.pm:524 lib/RT/Transaction_Overlay.pm:548 lib/RT/User_Overlay.pm:1047 lib/RT/User_Overlay.pm:124 lib/RT/User_Overlay.pm:1444 lib/RT/User_Overlay.pm:283 lib/RT/User_Overlay.pm:623 lib/RT/User_Overlay.pm:658 share/html/Ticket/Forward.html:85
+#: lib/RT/ACE_Overlay.pm:247 lib/RT/ACE_Overlay.pm:253 lib/RT/ACE_Overlay.pm:351 lib/RT/ACE_Overlay.pm:361 lib/RT/ACE_Overlay.pm:371 lib/RT/ACE_Overlay.pm:436 lib/RT/Attachment_Overlay.pm:615 lib/RT/Attachment_Overlay.pm:616 lib/RT/Attachment_Overlay.pm:677 lib/RT/Attachment_Overlay.pm:678 lib/RT/Attribute_Overlay.pm:161 lib/RT/Attribute_Overlay.pm:167 lib/RT/Attribute_Overlay.pm:376 lib/RT/Attribute_Overlay.pm:385 lib/RT/Attribute_Overlay.pm:398 lib/RT/CurrentUser.pm:137 lib/RT/CurrentUser.pm:143 lib/RT/CurrentUser.pm:149 lib/RT/CustomFieldValue_Overlay.pm:83 lib/RT/CustomField_Overlay.pm:1031 lib/RT/CustomField_Overlay.pm:1174 lib/RT/CustomField_Overlay.pm:171 lib/RT/CustomField_Overlay.pm:188 lib/RT/CustomField_Overlay.pm:199 lib/RT/CustomField_Overlay.pm:359 lib/RT/CustomField_Overlay.pm:388 lib/RT/CustomField_Overlay.pm:665 lib/RT/CustomField_Overlay.pm:836 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:915 lib/RT/Group_Overlay.pm:1116 lib/RT/Group_Overlay.pm:1120 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1239 lib/RT/Group_Overlay.pm:1243 lib/RT/Group_Overlay.pm:1249 lib/RT/Group_Overlay.pm:383 lib/RT/Group_Overlay.pm:481 lib/RT/Group_Overlay.pm:559 lib/RT/Group_Overlay.pm:567 lib/RT/Group_Overlay.pm:665 lib/RT/Group_Overlay.pm:669 lib/RT/Group_Overlay.pm:675 lib/RT/Group_Overlay.pm:918 lib/RT/Group_Overlay.pm:922 lib/RT/Group_Overlay.pm:935 lib/RT/Queue_Overlay.pm:1112 lib/RT/Queue_Overlay.pm:142 lib/RT/Queue_Overlay.pm:160 lib/RT/Queue_Overlay.pm:471 lib/RT/Queue_Overlay.pm:497 lib/RT/Queue_Overlay.pm:519 lib/RT/Queue_Overlay.pm:731 lib/RT/Queue_Overlay.pm:877 lib/RT/Queue_Overlay.pm:886 lib/RT/Queue_Overlay.pm:899 lib/RT/Scrip_Overlay.pm:113 lib/RT/Scrip_Overlay.pm:124 lib/RT/Scrip_Overlay.pm:188 lib/RT/Scrip_Overlay.pm:497 lib/RT/Template_Overlay.pm:215 lib/RT/Template_Overlay.pm:224 lib/RT/Template_Overlay.pm:250 lib/RT/Template_Overlay.pm:386 lib/RT/Template_Overlay.pm:99 lib/RT/Ticket_Overlay.pm:1055 lib/RT/Ticket_Overlay.pm:1061 lib/RT/Ticket_Overlay.pm:1068 lib/RT/Ticket_Overlay.pm:1205 lib/RT/Ticket_Overlay.pm:1215 lib/RT/Ticket_Overlay.pm:1229 lib/RT/Ticket_Overlay.pm:1317 lib/RT/Ticket_Overlay.pm:1674 lib/RT/Ticket_Overlay.pm:1828 lib/RT/Ticket_Overlay.pm:1998 lib/RT/Ticket_Overlay.pm:2048 lib/RT/Ticket_Overlay.pm:2237 lib/RT/Ticket_Overlay.pm:2250 lib/RT/Ticket_Overlay.pm:2331 lib/RT/Ticket_Overlay.pm:2344 lib/RT/Ticket_Overlay.pm:2447 lib/RT/Ticket_Overlay.pm:2461 lib/RT/Ticket_Overlay.pm:2690 lib/RT/Ticket_Overlay.pm:2701 lib/RT/Ticket_Overlay.pm:2707 lib/RT/Ticket_Overlay.pm:2905 lib/RT/Ticket_Overlay.pm:2909 lib/RT/Ticket_Overlay.pm:3046 lib/RT/Ticket_Overlay.pm:3198 lib/RT/Transaction_Overlay.pm:524 lib/RT/Transaction_Overlay.pm:548 lib/RT/User_Overlay.pm:1085 lib/RT/User_Overlay.pm:124 lib/RT/User_Overlay.pm:1482 lib/RT/User_Overlay.pm:283 lib/RT/User_Overlay.pm:623 lib/RT/User_Overlay.pm:658 share/html/Ticket/Forward.html:85
msgid "Permission Denied"
msgstr "Accès refusé"
+#: lib/RT/SharedSetting.pm:262
+msgid "Permission denied"
+msgstr "Accès refusé"
+
#: share/html/User/Elements/Tabs:64
msgid "Personal Groups"
msgstr "Groupes personnels"
@@ -4188,7 +4566,7 @@
msgid "PostgreSQL"
msgstr "PostgreSQL"
-#: share/html/Elements/Header:91 share/html/Elements/Tabs:94 share/html/SelfService/Elements/Tabs:98 share/html/SelfService/Prefs.html:48 share/html/User/Prefs.html:48 share/html/User/Prefs.html:51
+#: share/html/Elements/Header:94 share/html/Elements/Tabs:94 share/html/SelfService/Elements/Tabs:98 share/html/SelfService/Prefs.html:48 share/html/User/Prefs.html:48 share/html/User/Prefs.html:51
msgid "Preferences"
msgstr "Préférences"
@@ -4208,16 +4586,16 @@
msgid "Preferences saved for user %2."
msgstr "Préférences sauvées pour l'utilisateur %2."
-#: share/html/Prefs/MyRT.html:101 share/html/Prefs/Other.html:103 share/html/Prefs/Quicksearch.html:91 share/html/Prefs/Search.html:108 share/html/Prefs/SearchOptions.html:84
+#: share/html/Prefs/MyRT.html:101 share/html/Prefs/Other.html:104 share/html/Prefs/Quicksearch.html:91 share/html/Prefs/Search.html:108 share/html/Prefs/SearchOptions.html:84
msgid "Preferences saved."
msgstr "Préférences sauvées."
-#: share/html/Prefs/Other.html:88
+#: share/html/Prefs/Other.html:89
#. (loc_fuzzy($msg))
msgid "Preferred Key: %1"
msgstr "Clefs préférée: %1"
-#: share/html/Prefs/Other.html:73
+#: share/html/Prefs/Other.html:74
msgid "Preferred key"
msgstr "Clefs préférée"
@@ -4225,11 +4603,11 @@
msgid "Prepare Stubbed"
msgstr "Préparation interrompue"
-#: share/html/Helpers/CalPopup.html:58 share/html/Ticket/Elements/Tabs:88
+#: share/html/Helpers/CalPopup.html:58 share/html/Ticket/Elements/Tabs:87
msgid "Prev"
msgstr "Précédent"
-#: share/html/Dashboards/Elements/Tabs:83
+#: NOT FOUND IN SOURCE
msgid "Preview"
msgstr "Prévisualisation"
@@ -4304,7 +4682,7 @@
msgid "Query Builder"
msgstr "Constructeur de requête"
-#: share/html/Search/Elements/Chart:103
+#: share/html/Search/Elements/Chart:105
msgid "Query:"
msgstr "Requête:"
@@ -4379,6 +4757,10 @@
msgid "RT Administration"
msgstr "Administration RT"
+#: lib/RT/Installer.pm:160
+msgid "RT Administrator Email"
+msgstr "Courriel de l'administrateur RT"
+
#: share/html/Admin/Tools/Configuration.html:72
msgid "RT Config"
msgstr "Config. RT"
@@ -4387,7 +4769,7 @@
msgid "RT Error"
msgstr "Erreur RT"
-#: lib/RT/Installer.pm:136
+#: NOT FOUND IN SOURCE
msgid "RT Name"
msgstr "Nom RT"
@@ -4425,6 +4807,14 @@
msgid "RT for %1"
msgstr "RT pour %1"
+#: lib/RT/Installer.pm:119
+msgid "RT will connect to the database using this user. It will be created for you."
+msgstr "RT se connectera à la base de données avec cet identifiant. Il sera automatiquement créé."
+
+#: lib/RT/Installer.pm:153
+msgid "RT will create a user called \"root\" and set this as their password"
+msgstr "RT va créer un utilisateur nommé \"root\" et lui assigner ce mot de passe"
+
#: share/html/Search/Simple.html:62
msgid "RT will look for anything else you enter in ticket subjects."
msgstr "RT va rechercher dans tout ce que vous pouvez saisir d'autre dans les sujets des tickets."
@@ -4433,6 +4823,10 @@
msgid "RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record id and custom field value, respectively"
msgstr "RT remplacera respectivement <tt>__id__</tt> et <tt>__CustomField__</tt> avec l'identifiant et la valeur du champs personnalisé"
+#: lib/RT/Installer.pm:140
+msgid "RT will use this string to uniquely identify your installation and looks for it in the subject of emails to decide what ticket a message applies to. We recommend that you set this to your internet domain. (ex: example.com)"
+msgstr "RT utilisera cette chaine de caractère pour identifier de manière unique votre installation et la chercher dans le sujet de courriels pour décider sur quel ticket il va l'appliquer. Nous recommandons que vous utilisiez votre nom de domaine internet. (ex: example.com)"
+
#: share/html/Admin/Users/Modify.html:81 share/html/User/Prefs.html:71
msgid "Real Name"
msgstr "Nom"
@@ -4498,7 +4892,7 @@
msgid "Reminder ticket #%1"
msgstr "Ticket de rappel n°%1"
-#: share/html/Elements/MyReminders:50 share/html/Ticket/Elements/ShowSummary:78 share/html/Ticket/Elements/Tabs:151 share/html/Ticket/Reminders.html:57
+#: share/html/Elements/MyReminders:50 share/html/Ticket/Elements/ShowSummary:78 share/html/Ticket/Elements/Tabs:150 share/html/Ticket/Reminders.html:57
msgid "Reminders"
msgstr "Rappels"
@@ -4523,7 +4917,7 @@
msgid "Remove Requestor"
msgstr "Enlever Demandeur"
-#: share/html/Ticket/Elements/ShowTransaction:191 share/html/Ticket/Elements/Tabs:172
+#: share/html/Ticket/Elements/ShowTransaction:191 share/html/Ticket/Elements/Tabs:171
msgid "Reply"
msgstr "Répondre"
@@ -4580,7 +4974,7 @@
msgid "Residence"
msgstr "Domicile"
-#: share/html/Ticket/Elements/Tabs:183
+#: share/html/Ticket/Elements/Tabs:182
msgid "Resolve"
msgstr "Résoudre"
@@ -4653,7 +5047,7 @@
msgid "Right revoked"
msgstr "Droit révoqué"
-#: lib/RT/Interface/Web.pm:831
+#: lib/RT/Interface/Web.pm:864
#. ($object_type)
msgid "Rights could not be granted for %1"
msgstr "Les droits n'ont pas pu être attribués à %1"
@@ -4686,7 +5080,7 @@
msgid "Save"
msgstr "Sauver"
-#: share/html/Admin/CustomFields/Modify.html:126 share/html/Admin/Groups/Modify.html:94 share/html/Admin/Queues/Modify.html:127 share/html/Admin/Queues/People.html:130 share/html/Admin/Users/GnuPG.html:75 share/html/Admin/Users/Modify.html:243 share/html/Dashboards/Modify.html:75 share/html/Dashboards/Subscription.html:156 share/html/Prefs/Other.html:77 share/html/Prefs/Quicksearch.html:66 share/html/Prefs/Search.html:71 share/html/Prefs/SearchOptions.html:65 share/html/SelfService/Prefs.html:60 share/html/Ticket/Elements/PreviewScrips:94 share/html/Ticket/Modify.html:65 share/html/Ticket/ModifyAll.html:130 share/html/Ticket/ModifyDates.html:63 share/html/Ticket/ModifyLinks.html:65 share/html/Ticket/ModifyPeople.html:63 share/html/User/Groups/Modify.html:79
+#: share/html/Admin/CustomFields/Modify.html:126 share/html/Admin/Groups/Modify.html:94 share/html/Admin/Queues/Modify.html:127 share/html/Admin/Queues/People.html:130 share/html/Admin/Users/GnuPG.html:75 share/html/Admin/Users/Modify.html:243 share/html/Dashboards/Modify.html:75 share/html/Dashboards/Subscription.html:156 share/html/Prefs/Other.html:78 share/html/Prefs/Quicksearch.html:66 share/html/Prefs/Search.html:71 share/html/Prefs/SearchOptions.html:65 share/html/SelfService/Prefs.html:60 share/html/Ticket/Elements/PreviewScrips:94 share/html/Ticket/Modify.html:65 share/html/Ticket/ModifyAll.html:130 share/html/Ticket/ModifyDates.html:63 share/html/Ticket/ModifyLinks.html:65 share/html/Ticket/ModifyPeople.html:63 share/html/User/Groups/Modify.html:79
msgid "Save Changes"
msgstr "Enregistrer les modifications"
@@ -4698,18 +5092,23 @@
msgid "Save as New"
msgstr "Enregistrer sous"
-#: lib/RT/SharedSetting.pm:181
+#: lib/RT/SharedSetting.pm:194
#. ($self->ObjectName, $name)
msgid "Saved %1 %2"
msgstr "%1 %2 sauvé"
+#: share/html/Elements/ShowSearch:72
+#. ($SavedSearch)
+msgid "Saved Search %1 not found"
+msgstr "Recherche sauvée %1 non trouvée"
+
#: share/html/Search/Elements/EditSearches:135 share/html/Widgets/SavedSearch:159
msgid "Saved searches"
msgstr "Recherches sauvées"
#: share/html/Admin/Global/Scrip.html:79 share/html/Admin/Queues/Scrip.html:86 share/html/Ticket/Elements/PreviewScrips:65
-#. ($scrip->id)
#. ($id)
+#. ($scrip->id)
msgid "Scrip #%1"
msgstr "Scrip n°%1"
@@ -4814,6 +5213,10 @@
msgid "Select"
msgstr "Choisir"
+#: share/html/Install/DatabaseDetails.html:94 share/html/Install/DatabaseDetails.html:98
+msgid "Select Database Type"
+msgstr "Choisissez un type de base de données"
+
#: share/html/Admin/CustomFields/index.html:48 share/html/Admin/CustomFields/index.html:51
msgid "Select a Custom Field"
msgstr "Choisissez un champ personnalisé"
@@ -4890,6 +5293,10 @@
msgid "Selected Custom Fields"
msgstr "Champs personnalisés sélectionnés"
+#: lib/RT/Crypt/GnuPG.pm:1915
+msgid "Selected key either is not trusted or doesn't exist anymore."
+msgstr "La clefs sélectionnée n'est pas de confiance ou n'existe plus."
+
#: share/html/Admin/CustomFields/Objects.html:61
msgid "Selected objects"
msgstr "Objets sélectionnés"
@@ -4918,11 +5325,11 @@
msgid "Send mail to requestors and Ccs as a comment"
msgstr "Envoyer un courrier aux demandeurs et aux CCs en tant que commentaire"
-#: lib/RT/Installer.pm:188
+#: NOT FOUND IN SOURCE
msgid "Sendmail arguments"
msgstr "Arguments sendmail"
-#: lib/RT/Installer.pm:194
+#: NOT FOUND IN SOURCE
msgid "Sendmail bounce arguments"
msgstr "Arguments de rejet (bounce) pour Sendmail"
@@ -4962,11 +5369,11 @@
msgid "September"
msgstr "Septembre"
-#: share/html/Prefs/Other.html:81 share/html/User/Elements/Tabs:57
+#: share/html/Prefs/Other.html:82 share/html/User/Elements/Tabs:57
msgid "Settings"
msgstr "Réglages"
-#: share/html/Ticket/Elements/ShowTransaction:174
+#: share/html/Dashboards/Elements/Tabs:83 share/html/Ticket/Elements/ShowTransaction:174
msgid "Show"
msgstr "Afficher"
@@ -4974,7 +5381,7 @@
msgid "Show Columns"
msgstr "Afficher les colonnes"
-#: share/html/Ticket/Elements/Tabs:300
+#: share/html/Ticket/Elements/Tabs:301
msgid "Show Results"
msgstr "Aff. résultats"
@@ -4982,7 +5389,7 @@
msgid "Show approved requests"
msgstr "Afficher les requêtes approuvées"
-#: share/html/Ticket/Graphs/Elements/EditGraphProperties:63
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:71
msgid "Show as well"
msgstr "Voir également"
@@ -5042,7 +5449,7 @@
msgid "ShowTicketComments"
msgstr "AfficherCommentairesTickets"
-#: share/html/Admin/Elements/ToolTabs:60 share/html/Admin/Tools/Shredder/index.html:78 share/html/Ticket/Elements/Tabs:289
+#: share/html/Admin/Elements/ToolTabs:60 share/html/Admin/Tools/Shredder/index.html:78 share/html/Ticket/Elements/Tabs:290
msgid "Shredder"
msgstr "Shredder"
@@ -5074,7 +5481,7 @@
msgid "Signing enabled"
msgstr "Signature activée"
-#: share/html/Elements/Tabs.orig:71 share/html/Elements/Tabs:71
+#: share/html/Elements/Tabs:71
msgid "Simple Search"
msgstr "Recherche rapide"
@@ -5082,11 +5489,15 @@
msgid "Single"
msgstr "Unique"
+#: lib/RT/Installer.pm:139
+msgid "Site name"
+msgstr "Nom du site"
+
#: share/html/Search/Elements/EditFormat:72
msgid "Size"
msgstr "Taille"
-#: share/html/Elements/Header:87
+#: share/html/Elements/Header:90
msgid "Skip Menu"
msgstr "Passer le menu"
@@ -5147,7 +5558,7 @@
msgid "Status changed from %1 to %2"
msgstr "Statut changé de %1 à %2"
-#: share/html/Ticket/Elements/Tabs:205
+#: share/html/Ticket/Elements/Tabs:204
msgid "Steal"
msgstr "Voler"
@@ -5159,6 +5570,17 @@
msgid "StealTicket"
msgstr "VolerTicket"
+#: share/html/Install/Basics.html:48 share/html/Install/DatabaseDetails.html:48 share/html/Install/DatabaseType.html:48 share/html/Install/Finish.html:48 share/html/Install/Global.html:48 share/html/Install/Initialize.html:48 share/html/Install/Sendmail.html:48
+#. (4, 7)
+#. (7, 7)
+#. (5, 7)
+#. (6, 7)
+#. (3, 7)
+#. (1, 7)
+#. (2, 7)
+msgid "Step %1 of %2: "
+msgstr "Étape %1 sur %2: "
+
#: lib/RT/Transaction_Overlay.pm:667
#. ($Old->Name)
msgid "Stolen from %1"
@@ -5212,7 +5634,7 @@
msgid "Subscribed to dashboard %1"
msgstr "S'abonner au tableau de bord %1"
-#: share/html/Dashboards/Elements/ShowDashboards:57 share/html/Dashboards/Elements/Tabs:78 share/html/Dashboards/Subscription.html:97
+#: share/html/Dashboards/Elements/ShowDashboards:78 share/html/Dashboards/Elements/Tabs:78 share/html/Dashboards/Subscription.html:97
msgid "Subscription"
msgstr "Abonnement"
@@ -5249,11 +5671,11 @@
msgid "System Configuration"
msgstr "Configuration système"
-#: lib/RT/Installer.pm:227 share/html/Elements/SelectTimezone:58
+#: lib/RT/Installer.pm:225 share/html/Elements/SelectTimezone:71
msgid "System Default"
msgstr "Valeur par défaut du système"
-#: lib/RT/ACE_Overlay.pm:355 lib/RT/Interface/Web.pm:830 share/html/Admin/Elements/SelectRights:108
+#: lib/RT/ACE_Overlay.pm:355 lib/RT/Interface/Web.pm:863 share/html/Admin/Elements/SelectRights:108
msgid "System Error"
msgstr "Erreur système"
@@ -5286,7 +5708,7 @@
msgid "TEST_STRING"
msgstr "Chaîne_de_test"
-#: etc/initialdata:665 share/html/Search/Elements/EditFormat:69 share/html/Ticket/Elements/Tabs:198
+#: etc/initialdata:690 share/html/Search/Elements/EditFormat:69 share/html/Ticket/Elements/Tabs:197
msgid "Take"
msgstr "Prendre"
@@ -5302,6 +5724,10 @@
msgid "Taken"
msgstr "Pris"
+#: share/html/Install/DatabaseDetails.html:63
+msgid "Tell us a little about how to find the database RT will be using"
+msgstr "Donnez nous quelques information pour trouver la base de données que RT utilisera"
+
#: share/html/Admin/Elements/EditScrip:74 share/html/Tools/Offline.html:79
msgid "Template"
msgstr "Modèle"
@@ -5321,7 +5747,7 @@
msgid "Template '%1' not found"
msgstr "Modèle '#%1' non trouvé"
-#: lib/RT/Template_Overlay.pm:393
+#: lib/RT/Template_Overlay.pm:390
msgid "Template is empty"
msgstr "Le modèle est vide"
@@ -5329,11 +5755,11 @@
msgid "Template is mandatory argument"
msgstr "Modèle est un argument obligatoire"
-#: lib/RT/Template_Overlay.pm:373
+#: lib/RT/Template_Overlay.pm:370
msgid "Template parsed"
msgstr "Modèle analysé"
-#: lib/RT/Template_Overlay.pm:436
+#: lib/RT/Template_Overlay.pm:433
msgid "Template parsing error"
msgstr "Erreur d'analyse du modèle"
@@ -5425,11 +5851,19 @@
msgid "The CC of a ticket"
msgstr "Le CC d'un ticket"
+#: lib/RT/Installer.pm:110
+msgid "The DBA's database password"
+msgstr "Le mot de passe du DBA de la base de données"
+
#: lib/RT/ACE_Overlay.pm:102
msgid "The administrative CC of a ticket"
msgstr "L'AdminCC d'un ticket"
-#: lib/RT/Installer.pm:77
+#: lib/RT/Installer.pm:79
+msgid "The domain name of your database server (like 'db.example.com')."
+msgstr "Le nom de domaine de votre serveur de base de données (ex: 'db.example.com')."
+
+#: NOT FOUND IN SOURCE
msgid "The domain name of your database server (like 'db.int.example.com')"
msgstr "Nom d'hôte du serveur de base de données (exemple 'bd.int.exemple.fr')"
@@ -5481,6 +5915,10 @@
msgid "Theme"
msgstr "Thème"
+#: lib/RT/Crypt/GnuPG.pm:1942
+msgid "There are several keys suitable for encryption."
+msgstr "Il y a plusieurs clefs disponibles pour le chiffrement."
+
#: share/html/Ticket/Elements/ShowUpdateStatus:50
#. ()
msgid "There are unread messages on this ticket."
@@ -5490,6 +5928,14 @@
msgid "There is marginal trust in this key"
msgstr "Confiance marginale pour cette clefs"
+#: lib/RT/Crypt/GnuPG.pm:1934
+msgid "There is no key suitable for encryption."
+msgstr "Il n'y a pas de clefs disponible pour le chiffrement."
+
+#: lib/RT/Crypt/GnuPG.pm:1938
+msgid "There is one suitable key, but trust level is not set."
+msgstr "Il y a une clefs disponible, mais le niveau de confiance n'est pas configuré."
+
#: share/html/Admin/Elements/EditUserComments:49
msgid "These comments aren't generally visible to the user"
msgstr "Ces commentaires ne sont généralement pas accessibles par l'utilisateur"
@@ -5556,8 +6002,8 @@
msgstr "Ticket %1 créé dans la file '%2'"
#: share/html/Search/Bulk.html:369 share/html/Tools/MyDay.html:100 share/html/Tools/MyDay.html:91 share/html/Tools/MyDay.html:94
-#. ($id, $msg)
#. ($Ticket->Id, $_)
+#. ($id, $msg)
msgid "Ticket %1: %2"
msgstr "Ticket %1 : %2"
@@ -5615,7 +6061,7 @@
msgid "TicketSQL search module"
msgstr "Module de recherche TicketSQL"
-#: lib/RT/CustomField_Overlay.pm:1099 share/html/Admin/Elements/GlobalCustomFieldTabs:75 share/html/Admin/Global/CustomFields/index.html:83 share/html/Elements/Tabs.orig:74 share/html/Elements/Tabs:74 share/html/Search/Chart:113 share/html/Search/Elements/Chart:115
+#: lib/RT/CustomField_Overlay.pm:1099 share/html/Admin/Elements/GlobalCustomFieldTabs:75 share/html/Admin/Global/CustomFields/index.html:83 share/html/Elements/Tabs:74 share/html/Search/Chart:113 share/html/Search/Elements/Chart:117
msgid "Tickets"
msgstr "Tickets"
@@ -5669,7 +6115,7 @@
msgid "TimeWorked"
msgstr "TempsPassé"
-#: share/html/User/Prefs.html:82
+#: lib/RT/Installer.pm:210 lib/RT/Installer.pm:235 share/html/User/Prefs.html:82
msgid "Timezone"
msgstr "Fuseau horaire"
@@ -5690,11 +6136,11 @@
msgid "Told"
msgstr "Annoncé"
-#: share/html/Admin/Elements/Tabs:70 share/html/Admin/index.html:84 share/html/Elements/Tabs.orig:77 share/html/Elements/Tabs:77 share/html/Tools/index.html:48 share/html/Tools/index.html:51
+#: share/html/Admin/Elements/Tabs:70 share/html/Admin/index.html:84 share/html/Elements/Tabs:77 share/html/Tools/index.html:48 share/html/Tools/index.html:51
msgid "Tools"
msgstr "Outils"
-#: share/html/Search/Elements/Chart:136
+#: share/html/Search/Elements/Chart:138
msgid "Total"
msgstr "Total"
@@ -5752,13 +6198,12 @@
msgid "Unable to determine object type or id"
msgstr "Impossible de déterminer le type ou l'identifiant de l'objet"
-#: sbin/rt-email-dashboards:201
-#. ($subscription->SubValue('DashboardId'), $subscription->Id, $currentuser->Name)
+#: NOT FOUND IN SOURCE
msgid "Unable to load dashboard %1 of subscription %2 for user %3"
msgstr "Impossible de charger le tableau de bord %1 de l'abonnement %2 pour l'utilisateur %3"
-#: share/html/Dashboards/index.html:104
-#. ($Unsubscribe)
+#: share/html/Dashboards/index.html:87
+#. ($Unsubscribed)
msgid "Unable to unsubscribe to dashboard %1"
msgstr "Impossible de s'abonner au tableau de bord %1"
@@ -5789,7 +6234,7 @@
msgid "Unknown field: %1"
msgstr "Champ inconnu: %1"
-#: share/html/Ticket/Graphs/Elements/EditGraphProperties:57
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:65
msgid "Unlimit"
msgstr "Pas de limite"
@@ -5809,7 +6254,7 @@
msgid "Unselected objects"
msgstr "Objets non sélectionnés"
-#: lib/RT/User_Overlay.pm:1578 lib/RT/User_Overlay.pm:1594
+#: lib/RT/User_Overlay.pm:1616 lib/RT/User_Overlay.pm:1632
msgid "Unset private key"
msgstr "Désélectionner la clefs privée"
@@ -5817,7 +6262,7 @@
msgid "Unsubscribe"
msgstr "Se désabonner"
-#: share/html/Dashboards/index.html:101
+#: share/html/Dashboards/index.html:84
#. ($Dashboard->Name)
msgid "Unsubscribed to dashboard %1"
msgstr "Se désabonner du tableau de bord %1"
@@ -5830,7 +6275,7 @@
msgid "Update"
msgstr "Mettre à jour"
-#: share/html/Ticket/Graphs/Elements/EditGraphProperties:113
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:121
msgid "Update Graph"
msgstr "Mettre à jour le graphique"
@@ -5850,7 +6295,7 @@
msgid "Update multiple tickets"
msgstr "Mettre à jour plusieurs tickets"
-#: lib/RT/Action/CreateTickets.pm:521 lib/RT/Interface/Web.pm:678
+#: lib/RT/Action/CreateTickets.pm:521 lib/RT/Interface/Web.pm:712
msgid "Update not recorded."
msgstr "Mise à jour non enregistrée."
@@ -5868,7 +6313,7 @@
msgid "Update ticket #%1 (%2)"
msgstr "Mettre à jour le ticket n°%1 (%2)"
-#: lib/RT/Action/CreateTickets.pm:519 lib/RT/Interface/Web.pm:677
+#: lib/RT/Action/CreateTickets.pm:519 lib/RT/Interface/Web.pm:711
msgid "Update type was neither correspondence nor comment."
msgstr "Le type de mise à jour n'était ni un commentaire ni un courrier."
@@ -5917,7 +6362,7 @@
msgid "Usage: "
msgstr "Utilisation: "
-#: lib/RT/Installer.pm:130
+#: lib/RT/Installer.pm:133
msgid "Use SSL?"
msgstr "Utiliser SSL?"
@@ -5956,7 +6401,7 @@
msgid "User Rights"
msgstr "Droits utilisateurs"
-#: lib/RT/Interface/Web.pm:1205
+#: lib/RT/Interface/Web.pm:1238
#. ($cf->Name, ref $args{'Object'}, $args{'Object'}->id)
msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
msgstr "L'utilisateur a demandé un type de mise à jour non connu pour le champ personnalisé %1 de l'objet %2 n°%3"
@@ -6043,6 +6488,10 @@
msgid "Watchers"
msgstr "Observateurs"
+#: lib/RT/Installer.pm:197
+msgid "Web port"
+msgstr "Port web"
+
#: lib/RT/Date.pm:106 share/html/CalPopup.html:90
msgid "Wed"
msgstr "Mer"
@@ -6059,11 +6508,19 @@
msgid "What I did today"
msgstr "Ce que j'ai fait aujourd'hui"
-#: etc/initialdata:582
+#: share/html/Install/index.html:54
+msgid "What is RT?"
+msgstr "Qu'est-ce que RT?"
+
+#: lib/RT/Installer.pm:161
+msgid "When RT can't handle an email message, where should it be forwarded?"
+msgstr "Lorsque RT ne peut gérer un courriel, où doit-il être envoyé?"
+
+#: etc/initialdata:607
msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
msgstr "Quand un ticket a été approuvé par tous les approbateurs, ajoute le courrier au ticket source"
-#: etc/initialdata:546
+#: etc/initialdata:571
msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
msgstr "Quand un ticket a été approuvé par au moins un approbateur, ajoute le courrier au ticket source "
@@ -6071,7 +6528,7 @@
msgid "When a ticket is created"
msgstr "Quand un ticket est créé"
-#: etc/initialdata:479
+#: etc/initialdata:504
msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
msgstr "Quand un ticket d'approbation est créé, informer l'intervenant et l'AdminCC de l'élément attendant leur approbation"
@@ -6119,6 +6576,10 @@
msgid "Whenever correspondence comes in"
msgstr "Lorsque un courrier arrive"
+#: lib/RT/Installer.pm:183
+msgid "Where to find your sendmail binary."
+msgstr "Où trouver l'exécutable sendmail."
+
#: share/html/Admin/Tools/Shredder/Elements/SelectObjects:63
msgid "Wipeout"
msgstr "Supprimer définitivement"
@@ -6185,20 +6646,24 @@
msgid "You may not create requests in that queue."
msgstr "Vous ne pouvez pas créer de demandes dans cette file."
+#: share/html/Install/Basics.html:86
+msgid "You must enter an Administrative password"
+msgstr "Vous devez saisir un mot de passe Administrateur"
+
#: share/html/NoAuth/Logout.html:59
msgid "You're welcome to login again"
msgstr "Vous êtes invité à vous identifier à nouveau"
-#: etc/initialdata:563 etc/initialdata:565
+#: etc/initialdata:588 etc/initialdata:590
#. (# loc $self->TransactionObj->CreatorObj->Name,)
msgid "Your request has been approved by %1. Other approvals may still be pending."
msgstr "Votre demande a été approuvée par %1. D'autres approbations sont peut être toujours en attente."
-#: etc/initialdata:601
+#: etc/initialdata:626
msgid "Your request has been approved."
msgstr "Votre demande a été approuvée."
-#: etc/initialdata:506
+#: etc/initialdata:531
msgid "Your request was rejected."
msgstr "Votre demande a été rejetée."
@@ -6235,6 +6700,10 @@
msgid "before"
msgstr "avant"
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:54
+msgid "bottom to top"
+msgstr "de bas en haut"
+
#: share/html/SelfService/Closed.html:53
msgid "closed"
msgstr "fermé"
@@ -6251,7 +6720,7 @@
msgid "doesn't match"
msgstr "ne contient pas"
-#: lib/RT/Installer.pm:206
+#: NOT FOUND IN SOURCE
msgid "domain name"
msgstr "nom de domaine"
@@ -6332,6 +6801,10 @@
msgid "key revoked"
msgstr "clefs révoquée"
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:52
+msgid "left to right"
+msgstr "de gauche à droite"
+
#: share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectEqualityOperator:61
msgid "less than"
msgstr "inférieur à"
@@ -6344,7 +6817,7 @@
msgid "matches"
msgstr "contient"
-#: share/html/Ticket/Graphs/Elements/EditGraphProperties:56
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:64
msgid "maximum depth"
msgstr "Profondeur maximale"
@@ -6396,7 +6869,7 @@
msgid "other..."
msgstr "autre..."
-#: lib/RT/Installer.pm:154
+#: NOT FOUND IN SOURCE
msgid "password of the user root in RT"
msgstr "mot de passe du compte root RT"
@@ -6418,6 +6891,10 @@
msgid "resolved"
msgstr "résolu"
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:55
+msgid "right to left"
+msgstr "de droite à gauche"
+
#: lib/RT/Date.pm:321
msgid "sec"
msgstr "sec"
@@ -6448,11 +6925,23 @@
msgid "the calling component did not specify why"
msgstr "le composant appelant n'a pas spécifié pourquoi"
+#: lib/RT/Installer.pm:169
+msgid "the default addresses that will be listed in From: and Reply-To: headers of comment mail."
+msgstr "les adresses par défaut qui seront listée dans les en-têtes de l'émetteur et Reply-To: d'un courriel de commentaire."
+
+#: lib/RT/Installer.pm:177
+msgid "the default addresses that will be listed in From: and Reply-To: headers of correspondence mail."
+msgstr "les adresses par défaut qui seront listée dans les en-têtes de l'émetteur et Reply-To: d'un courriel de réponse."
+
#: lib/RT/Group_Overlay.pm:156
#. ($self->Instance, $self->Type)
msgid "ticket #%1 %2"
msgstr "ticket n°%1 %2"
+#: share/html/Ticket/Graphs/Elements/EditGraphProperties:51
+msgid "top to bottom"
+msgstr "de haut en bas"
+
#: lib/RT/Crypt/GnuPG.pm:2139
msgid "ultimate"
msgstr "ultime"
@@ -6467,7 +6956,7 @@
msgid "user %1"
msgstr "utilisateur %1"
-#: lib/RT/Installer.pm:212
+#: NOT FOUND IN SOURCE
msgid "web port"
msgstr "port du serveur web"
@@ -6475,10 +6964,14 @@
msgid "weeks"
msgstr "semaines"
-#: lib/RT/Installer.pm:200
+#: NOT FOUND IN SOURCE
msgid "where is sendmail command"
msgstr "où se trouve la commande sendmail"
+#: lib/RT/Installer.pm:198
+msgid "which port your web server will listen to, e.g. 8080"
+msgstr "sur quel port votre serveurweb est-il en écoute, ex: 8080"
+
#: share/html/Ticket/Elements/ShowTransactionAttachments:63
msgid "with headers"
msgstr "avec en-têtes"
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/he.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/he.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/he.po Mon Jul 7 16:21:51 2008
@@ -3325,7 +3325,7 @@
msgstr ""
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr ""
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/hu.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/hu.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/hu.po Mon Jul 7 16:21:51 2008
@@ -3313,7 +3313,7 @@
msgstr ""
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr ""
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/id.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/id.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/id.po Mon Jul 7 16:21:51 2008
@@ -3511,7 +3511,7 @@
msgstr "Mengubah scrip untuk antrian %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Mengubah scrip yang dapat digunakan di seluruh antrian"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/it.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/it.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/it.po Mon Jul 7 16:21:51 2008
@@ -3,33 +3,35 @@
msgstr ""
"Project-Id-Version: RT 3.8.x\n"
"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2005-10-03 13:48-0400\n"
-"Last-Translator: Angelo Turetta <aturetta at bestunion.it>\n"
+"PO-Revision-Date: 2008-01-17 13:48-0400\n"
+"Last-Translator: Nicola Murino <nicola.murino at gmail.com>\n"
"Language-Team: rt-devel <rt-devel at lists.bestpractical.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: share/html/Widgets/SavedSearch:117
#. ($self->{CurrentSearch}{Object}->Description)
+#: share/html/Widgets/SavedSearch:117
msgid " %1 deleted."
-msgstr ""
+msgstr " %1 cancellato."
-#: share/html/Widgets/SavedSearch:94
#. ($self->{CurrentSearch}{Description}, $args->{SavedSearchDescription})
+#: share/html/Widgets/SavedSearch:94
msgid " %1 renamed to %2."
-msgstr ""
+msgstr " %1 rinominato a %2"
-#: share/html/Widgets/SavedSearch:107
#. ($args->{SavedSearchDescription})
+#: share/html/Widgets/SavedSearch:107
msgid " %1 saved."
-msgstr ""
+msgstr " %1 salvato"
-#: share/html/Elements/RT__Ticket/ColumnMap:239 share/html/Elements/RT__Ticket/ColumnMap:256
+#: share/html/Elements/RT__Ticket/ColumnMap:239
+#: share/html/Elements/RT__Ticket/ColumnMap:256
msgid " (no pubkey!)"
msgstr ""
-#: share/html/Elements/RT__Ticket/ColumnMap:242 share/html/Elements/RT__Ticket/ColumnMap:259
+#: share/html/Elements/RT__Ticket/ColumnMap:242
+#: share/html/Elements/RT__Ticket/ColumnMap:259
msgid " (untrusted!)"
msgstr ""
@@ -41,11 +43,14 @@
msgid "#%1"
msgstr "n°%1"
-#: share/html/Approvals/Elements/Approve:50 share/html/Approvals/Elements/ShowDependency:73 share/html/SelfService/Display.html:48 share/html/Ticket/Display.html:49 share/html/Ticket/Display.html:54
#. ($TicketObj->Id, $TicketObj->Subject)
#. ($Ticket->id, $Ticket->Subject)
#. ($ticket->Id, $ticket->Subject)
#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+#: share/html/Approvals/Elements/Approve:50
+#: share/html/Approvals/Elements/ShowDependency:73
+#: share/html/SelfService/Display.html:48 share/html/Ticket/Display.html:49
+#: share/html/Ticket/Display.html:54
msgid "#%1: %2"
msgstr "n°%1: %2"
@@ -61,58 +66,60 @@
msgid "$MONTHS[$mon]."
msgstr ""
-#: lib/RT/Record.pm:906
#. ($label)
+#: lib/RT/Record.pm:906
msgid "$prefix %1"
msgstr ""
-#: lib/RT/URI/fsck_com_rt.pm:231
#. ($self->ObjectType, $self->Object->Id)
+#: lib/RT/URI/fsck_com_rt.pm:231
msgid "%1 #%2"
msgstr "%1 n°%2"
-#: lib/RT/Date.pm:352
#. ($s, $time_unit)
+#: lib/RT/Date.pm:352
msgid "%1 %2"
msgstr "%1 %2"
-#: lib/RT/Tickets_Overlay.pm:1544
#. ($args{'FIELD'}, $args{'OPERATOR'}, $args{'VALUE'})
+#: lib/RT/Tickets_Overlay.pm:1544
msgid "%1 %2 %3"
msgstr "%1 %2 %3"
-#: lib/RT/Date.pm:573
#. ($wday,$mon,$mday,$year)
+#: lib/RT/Date.pm:573
msgid "%1 %2 %3 %4"
msgstr ""
-#: lib/RT/Date.pm:579
#. ($wday,$mon,$mday,$hour,$min,$sec,$year)
+#: lib/RT/Date.pm:579
msgid "%1 %2 %3 %4:%5:%6 %7"
msgstr "%1 %3 %2 %7 %4:%5:%6"
-#: lib/RT/Record.pm:1628 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
#. ($cf->Name, $new_content)
#. ($field, $self->NewValue)
#. ($self->Field, $principal->Object->Name)
+#: lib/RT/Record.pm:1628 lib/RT/Transaction_Overlay.pm:636
+#: lib/RT/Transaction_Overlay.pm:679
msgid "%1 %2 added"
msgstr "Aggiunto %1 %2"
-#: lib/RT/Date.pm:349
#. ($s, $time_unit)
+#: lib/RT/Date.pm:349
msgid "%1 %2 ago"
msgstr "%1 %2 fa"
-#: lib/RT/Record.pm:1635 lib/RT/Transaction_Overlay.pm:643
#. ($cf->Name, $old_content, $new_content)
#. ($field, $self->OldValue, $self->NewValue)
+#: lib/RT/Record.pm:1635 lib/RT/Transaction_Overlay.pm:643
msgid "%1 %2 changed to %3"
msgstr "%1 %2 cambiato in %3"
-#: lib/RT/Record.pm:1632 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
#. ($cf->Name, $old_content)
#. ($field, $self->OldValue)
#. ($self->Field, $principal->Object->Name)
+#: lib/RT/Record.pm:1632 lib/RT/Transaction_Overlay.pm:639
+#: lib/RT/Transaction_Overlay.pm:685
msgid "%1 %2 deleted"
msgstr "%1 %2 eliminato"
@@ -120,9 +127,10 @@
msgid "%1 %2 of group %3"
msgstr "%1 %2 del gruppo %3"
-#: share/html/Elements/RT__Scrip/ColumnMap:85 share/html/Ticket/Elements/PreviewScrips:66
#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
#. ($_[0]->loc($_[0]->ConditionObj->Name), $_[0]->loc($_[0]->ActionObj->Name), $_[0]->loc($_[0]->TemplateObj->Name),)
+#: share/html/Elements/RT__Scrip/ColumnMap:85
+#: share/html/Ticket/Elements/PreviewScrips:66
msgid "%1 %2 with template %3"
msgstr "%1 %2 con il modello %3"
@@ -130,26 +138,28 @@
msgid "%1 (%2) %3 this ticket\\n"
msgstr "%1 (%2) %3 questo ticket\\n"
-#: share/html/Ticket/Elements/ShowAttachments:75
#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
+#: share/html/Ticket/Elements/ShowAttachments:75
msgid "%1 (%2) by %3"
msgstr "%1 (%2) da %3"
-#: share/html/SelfService/Update.html:62 share/html/Ticket/Elements/EditBasics:115 share/html/Ticket/Update.html:69 share/html/Ticket/Update.html:75 share/html/Tools/MyDay.html:68
#. (loc($Ticket->Status()))
#. (loc($TicketObj->Status))
#. ($TicketObj->OwnerObj->Name)
#. (loc($Ticket->Status))
+#: share/html/SelfService/Update.html:62
+#: share/html/Ticket/Elements/EditBasics:115 share/html/Ticket/Update.html:69
+#: share/html/Ticket/Update.html:75 share/html/Tools/MyDay.html:68
msgid "%1 (Unchanged)"
msgstr "%1 (invariato)"
-#: share/html/Dashboards/Elements/ShowSubscription:69
#. ($freq, $Subscription->SubValue('Dom'), $hour)
+#: share/html/Dashboards/Elements/ShowSubscription:69
msgid "%1 (day %2) at %3"
msgstr ""
-#: share/html/Dashboards/Elements/ShowSubscription:66
#. ($freq, $day, $hour)
+#: share/html/Dashboards/Elements/ShowSubscription:66
msgid "%1 (on %2) at %3"
msgstr ""
@@ -157,65 +167,67 @@
msgid "%1 - %2 shown"
msgstr "Mostrati da %1 a %2"
-#: bin/rt-crontool:287 bin/rt-crontool:294 bin/rt-crontool:300
#. ("--search-arg", "--search")
#. ("--condition-arg", "--condition")
#. ("--action-arg", "--action")
+#: bin/rt-crontool:287 bin/rt-crontool:294 bin/rt-crontool:300
msgid "%1 - An argument to pass to %2"
msgstr "%1 - Un parametro da passare a %2"
-#: bin/rt-crontool:312
#. ("--verbose")
+#: bin/rt-crontool:312
msgid "%1 - Output status updates to STDOUT"
msgstr "%1 - Visualizza aggiornamenti dello stato su STDOUT"
-#: bin/rt-crontool:303
#. ("--template-id")
+#: bin/rt-crontool:303
msgid "%1 - Specify id of the template you want to use"
-msgstr ""
+msgstr "%1 - Specificare l'id del template che vuoi usare"
-#: bin/rt-crontool:306
#. ("--transaction")
-msgid "%1 - Specify if you want to use either 'first', 'last' or 'all' transactions"
-msgstr ""
+#: bin/rt-crontool:306
+msgid ""
+"%1 - Specify if you want to use either 'first', 'last' or 'all' transactions"
+msgstr "%1 - Specificare se si vuole usare la prima o l'ultima transazione"
-#: bin/rt-crontool:297
#. ("--action")
+#: bin/rt-crontool:297
msgid "%1 - Specify the action module you want to use"
msgstr "%1 - Specificare l'azione che si vuole eseguire"
-#: bin/rt-crontool:309
#. ("--transaction-type")
-msgid "%1 - Specify the comma separated list of transactions' types you want to use"
+#: bin/rt-crontool:309
+msgid ""
+"%1 - Specify the comma separated list of transactions' types you want to use"
msgstr ""
-#: bin/rt-crontool:291
#. ("--condition")
+#: bin/rt-crontool:291
msgid "%1 - Specify the condition module you want to use"
msgstr "%1 - Specificare la condizione che si vuole utilizzare"
-#: bin/rt-crontool:284
#. ("--search")
+#: bin/rt-crontool:284
msgid "%1 - Specify the search module you want to use"
msgstr "%1 - Specificare la ricerca che si vuole utilizzare"
-#: share/html/Dashboards/Elements/ShowDashboards:48
#. ($Type)
+#: share/html/Dashboards/Elements/ShowDashboards:48
msgid "%1 Dashboards"
-msgstr ""
+msgstr "%1 - Specificare il tipo di transazione che si vuole utilizzare"
-#: share/html/Elements/Footer:59
#. ('»|«', $RT::VERSION, '2008', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
+#: share/html/Elements/Footer:59
msgid "%1 RT %2 Copyright 1996-%3 %4."
msgstr ""
-#: lib/RT/ScripAction_Overlay.pm:148
#. ($self->Id)
+#: lib/RT/ScripAction_Overlay.pm:148
msgid "%1 ScripAction loaded"
msgstr "ScripAction %1 caricato"
-#: lib/RT/Record.pm:1663
#. ($args{'Value'}, $cf->Name)
+#: lib/RT/Record.pm:1663
msgid "%1 added as a value for %2"
msgstr "%1 aggiunto come valore di %2"
@@ -231,44 +243,46 @@
msgid "%1 aliases require a TicketId to work on (from %2) %3"
msgstr "gli alias %1 necessitano di un TicketId per lavorare con (da %2) %3"
-#: lib/RT/Link_Overlay.pm:134 lib/RT/Link_Overlay.pm:142
#. ($args{'Base'})
#. ($args{'Target'})
+#: lib/RT/Link_Overlay.pm:134 lib/RT/Link_Overlay.pm:142
msgid "%1 appears to be a local object, but can't be found in the database"
msgstr "%1 sembra essere un oggetto locale, ma non è presente nel database"
-#: share/html/Dashboards/Elements/ShowSubscription:72
#. ($freq, $hour)
+#: share/html/Dashboards/Elements/ShowSubscription:72
msgid "%1 at %2"
msgstr ""
-#: lib/RT/SharedSetting.pm:107
#. (ucfirst($self->ObjectName))
+#: lib/RT/SharedSetting.pm:107
msgid "%1 attribute load failure"
msgstr ""
-#: lib/RT/Transaction_Overlay.pm:531 share/html/Ticket/Elements/ShowDates:80
#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
#. ($self->BriefDescription , $self->CreatorObj->Name)
+#: lib/RT/Transaction_Overlay.pm:531 share/html/Ticket/Elements/ShowDates:80
msgid "%1 by %2"
msgstr "%1 da %2"
-#: lib/RT/Record.pm:502 lib/RT/Transaction_Overlay.pm:587 lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
#. ($args{'Field'}, ( $old_val ? "'$old_val'" : $self->loc("(no value)") ), '"' . $self->__Value( $args{'Field'}) . '"')
#. ($self->Field, ( $self->OldValue ? "'" . $self->OldValue . "'" : $no_value ), "'" . $self->NewValue . "'")
#. ($self->Field , $q1->Name , $q2->Name)
#. ($self->Field, $t2->AsString, $t1->AsString)
#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
+#: lib/RT/Record.pm:502 lib/RT/Transaction_Overlay.pm:587
+#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786
+#: lib/RT/Transaction_Overlay.pm:789
msgid "%1 changed from %2 to %3"
msgstr "%1 cambiato da %2 a %3"
-#: share/html/Search/Elements/ResultViews:64
#. ($m->scomp('SelectChartType', Name => 'ChartStyle'), $m->scomp('SelectGroupBy', Name => 'PrimaryGroupBy', Query => $Query))
+#: share/html/Search/Elements/ResultViews:64
msgid "%1 chart by %2"
msgstr ""
-#: share/html/Search/Elements/EditSearches:189
#. ($SavedSearch->{'Object'}->Description)
+#: share/html/Search/Elements/EditSearches:189
msgid "%1 copy"
msgstr "copia di %1"
@@ -280,18 +294,20 @@
msgid "%1 couldn't init a transaction (%2)\\n"
msgstr "%1 non ha potuto iniziare una transazione (%2)\\n"
-#: lib/RT/Ticket_Overlay.pm:2494
#. ($self)
+#: lib/RT/Ticket_Overlay.pm:2494
msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 non ho potuto mettere lo stato a risolto. Il database RT potrebbe essere corrotto."
+msgstr ""
+"%1 non ho potuto mettere lo stato a risolto. Il database RT potrebbe essere "
+"corrotto."
-#: lib/RT/Transaction_Overlay.pm:560
#. ($obj_type)
+#: lib/RT/Transaction_Overlay.pm:560
msgid "%1 created"
msgstr "creato %1"
-#: lib/RT/Transaction_Overlay.pm:565
#. ($obj_type)
+#: lib/RT/Transaction_Overlay.pm:565
msgid "%1 deleted"
msgstr "eliminato %1"
@@ -307,28 +323,34 @@
msgid "%1 highest priority tickets I requested..."
msgstr "I %1 ticket a maggior priorità che ho richiesto..."
-#: bin/rt-crontool:279
#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 è uno strumento per agire sui ticket da uno schedulatore esterno, per esempio cron."
+#: bin/rt-crontool:279
+msgid ""
+"%1 is a tool to act on tickets from an external scheduling tool, such as "
+"cron."
+msgstr ""
+"%1 è uno strumento per agire sui ticket da uno schedulatore esterno, per "
+"esempio cron."
-#: sbin/rt-email-digest:69
#. ($0)
-msgid "%1 is a utility, meant to be run from cron, that dispatches all deferred RT notifications as a per-user digest."
+#: sbin/rt-email-digest:69
+msgid ""
+"%1 is a utility, meant to be run from cron, that dispatches all deferred RT "
+"notifications as a per-user digest."
msgstr ""
-#: lib/RT/Queue_Overlay.pm:921
#. ($principal->Object->Name, $args{'Type'})
+#: lib/RT/Queue_Overlay.pm:921
msgid "%1 is no longer a %2 for this queue."
msgstr "%1 non è più un %2 per questa coda."
-#: lib/RT/Ticket_Overlay.pm:1266
#. ($principal->Object->Name, $args{'Type'})
+#: lib/RT/Ticket_Overlay.pm:1266
msgid "%1 is no longer a %2 for this ticket."
msgstr "%1 non è più un %2 per questo ticket."
-#: lib/RT/Record.pm:1720
#. ($TransactionObj->OldValue, $cf->Name)
+#: lib/RT/Record.pm:1720
msgid "%1 is no longer a value for custom field %2"
msgstr "%1 non è più un valore per il campo personalizzato %2"
@@ -336,8 +358,9 @@
msgid "%1 isn't a valid Queue id."
msgstr "%1 non è un identificativo di coda valido"
-#: share/html/Ticket/Elements/ShowTime:49 share/html/Ticket/Elements/ShowTime:51
#. ($minutes)
+#: share/html/Ticket/Elements/ShowTime:49
+#: share/html/Ticket/Elements/ShowTime:51
msgid "%1 min"
msgstr "%1 min"
@@ -353,8 +376,8 @@
msgid "%1 objects"
msgstr "%1 oggetti"
-#: share/html/User/Elements/DelegateRights:99
#. (loc($ObjectType =~ /^RT::(.*)$/))
+#: share/html/User/Elements/DelegateRights:99
msgid "%1 rights"
msgstr "Diritti su %1"
@@ -362,13 +385,13 @@
msgid "%1 succeeded\\n"
msgstr "%1 riuscito\\n"
-#: lib/RT/SharedSetting.pm:214
#. (ucfirst($self->ObjectName), $msg)
+#: lib/RT/SharedSetting.pm:214
msgid "%1 update: %2"
msgstr ""
-#: lib/RT/SharedSetting.pm:207
#. (ucfirst($self->ObjectName))
+#: lib/RT/SharedSetting.pm:207
msgid "%1 update: Nothing changed"
msgstr ""
@@ -380,14 +403,18 @@
msgid "%1 was created without a CurrentUser\\n"
msgstr "%1 è stato creato senza un CurrentUser\\n"
-#: lib/RT/Action/ResolveMembers.pm:64
#. (ref $self)
+#: lib/RT/Action/ResolveMembers.pm:64
msgid "%1 will resolve all members of a resolved group ticket."
msgstr "%1 risolverà tutti i membri di un gruppo di ticket risolto."
#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 bloccherà una BASE [locale] se dipende da [o è membro di] una richiesta collegata."
+msgid ""
+"%1 will stall a [local] BASE if it's dependent [or member] of a linked up "
+"request."
+msgstr ""
+"%1 bloccherà una BASE [locale] se dipende da [o è membro di] una richiesta "
+"collegata."
#: lib/RT/CustomField_Overlay.pm:794
msgid "%1's %2 objects"
@@ -397,45 +424,49 @@
msgid "%1's %2's %3 objects"
msgstr "%3 oggetti di %2 di %1"
-#: share/html/Dashboards/Elements/SelectPrivacy:57
#. ($object->Name)
+#: share/html/Dashboards/Elements/SelectPrivacy:57
msgid "%1's dashboards"
msgstr ""
-#: share/html/Search/Elements/SearchPrivacy:54 share/html/Search/Elements/SelectSearchObject:65 share/html/Search/Elements/SelectSearchesForObjects:59
#. ($Object->Name)
#. ($object->Name)
+#: share/html/Search/Elements/SearchPrivacy:54
+#: share/html/Search/Elements/SelectSearchObject:65
+#: share/html/Search/Elements/SelectSearchesForObjects:59
msgid "%1's saved searches"
msgstr "ricerche salvate di %1"
-#: lib/RT/Transaction_Overlay.pm:495
#. ($self)
+#: lib/RT/Transaction_Overlay.pm:495
msgid "%1: no attachment specified"
msgstr "%1: nessun allegato specificato"
-#: lib/RT/Date.pm:576
#. ($hour,$min,$sec)
+#: lib/RT/Date.pm:576
+#, fuzzy
msgid "%1:%2:%3"
-msgstr ""
+msgstr "%1 %2 %3"
-#: share/html/Ticket/Elements/ShowTransactionAttachments:193 share/html/Ticket/Elements/ShowTransactionAttachments:199
#. (int( $size / 1024 / 102.4 ) / 10)
#. ($size)
+#: share/html/Ticket/Elements/ShowTransactionAttachments:193
+#: share/html/Ticket/Elements/ShowTransactionAttachments:199
msgid "%1b"
msgstr "%1b"
-#: share/html/Ticket/Elements/ShowTransactionAttachments:196
#. (int( $size / 102.4 ) / 10)
+#: share/html/Ticket/Elements/ShowTransactionAttachments:196
msgid "%1k"
msgstr "%1k"
-#: share/html/Ticket/Elements/ShowTime:51
#. (sprintf("%.1f",$minutes / 60))
+#: share/html/Ticket/Elements/ShowTime:51
msgid "%quant(%1,hour)"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:878
#. ($args{'Status'})
+#: lib/RT/Ticket_Overlay.pm:878
msgid "'%1' is an invalid value for status"
msgstr "'%1' è uno stato non valido"
@@ -451,7 +482,13 @@
msgid "(Check box to delete scrip)"
msgstr "(spunta la casella per cancellare uno scrip)"
-#: share/html/Admin/Elements/EditCustomFieldValues:80 share/html/Admin/Elements/EditQueueWatchers:66 share/html/Admin/Elements/EditScrips:67 share/html/Admin/Elements/EditTemplates:69 share/html/Admin/Groups/Members.html:106 share/html/Elements/EditLinks:112 share/html/Ticket/Elements/EditPeople:69 share/html/User/Groups/Members.html:78
+#: share/html/Admin/Elements/EditCustomFieldValues:80
+#: share/html/Admin/Elements/EditQueueWatchers:66
+#: share/html/Admin/Elements/EditScrips:67
+#: share/html/Admin/Elements/EditTemplates:69
+#: share/html/Admin/Groups/Members.html:106 share/html/Elements/EditLinks:112
+#: share/html/Ticket/Elements/EditPeople:69
+#: share/html/User/Groups/Members.html:78
msgid "(Check box to delete)"
msgstr "(spunta la casella per cancellare)"
@@ -471,9 +508,10 @@
msgid "(Enter ticket ids or URLs, separated with spaces)"
msgstr "(inserire i numeri o gli URL dei ticket, separati da spazi)"
-#: share/html/Admin/Queues/Modify.html:76 share/html/Admin/Queues/Modify.html:79
#. (RT->Config->Get('CorrespondAddress'))
#. (RT->Config->Get('CommentAddress'))
+#: share/html/Admin/Queues/Modify.html:76
+#: share/html/Admin/Queues/Modify.html:79
msgid "(If left blank, will default to %1)"
msgstr "(Se non specificato usa: %1)"
@@ -481,15 +519,18 @@
msgid "(No Value)"
msgstr "(nessun valore)"
-#: share/html/Admin/Elements/EditCustomFields:76 share/html/Admin/Elements/ListGlobalCustomFields:55
+#: share/html/Admin/Elements/EditCustomFields:76
+#: share/html/Admin/Elements/ListGlobalCustomFields:55
msgid "(No custom fields)"
msgstr "(nessun campo personalizzato)"
-#: share/html/Admin/Groups/Members.html:73 share/html/User/Groups/Members.html:76
+#: share/html/Admin/Groups/Members.html:73
+#: share/html/User/Groups/Members.html:76
msgid "(No members)"
msgstr "(nessun appartenente)"
-#: share/html/Admin/Elements/EditScrips:69 share/html/Admin/Elements/ListGlobalScrips:49
+#: share/html/Admin/Elements/EditScrips:69
+#: share/html/Admin/Elements/ListGlobalScrips:49
msgid "(No scrips)"
msgstr "(nessuno Scrip)"
@@ -497,49 +538,96 @@
msgid "(No templates)"
msgstr "(nessun modello)"
-#: share/html/Admin/Elements/PickCustomFields:49 share/html/Admin/Elements/PickObjects:49
+#: share/html/Admin/Elements/PickCustomFields:49
+#: share/html/Admin/Elements/PickObjects:49
msgid "(None)"
msgstr "(nessuno)"
#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(invia copia silente di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
+msgid ""
+"(Sends a blind carbon-copy of this update to a comma-delimited list of email "
+"addresses. Does <b>not</b> change who will receive future updates.)"
+msgstr ""
+"(invia copia silente di questo aggiornamento ad una lista di indirizzi email "
+"separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi "
+"aggiornamenti.)"
#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(invia copia silente di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierò</b> i destinatari dei successivi aggiornamenti.)"
+msgid ""
+"(Sends a blind carbon-copy of this update to a comma-delimited list of email "
+"addresses. Does <b>not</b> change who will recieve future updates.)"
+msgstr ""
+"(invia copia silente di questo aggiornamento ad una lista di indirizzi email "
+"separati da virgole. Ciò <b>non cambierò</b> i destinatari dei successivi "
+"aggiornamenti.)"
#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email amministrativi separati da virgole. Queste persone <b>riceveranno</b> i successivi aggiornamenti.)"
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of "
+"administrative email addresses. These people <b>will</b> receive future "
+"updates.)"
+msgstr ""
+"(invia copia per conoscenza di questo aggiornamento ad una lista di "
+"indirizzi email amministrativi separati da virgole. Queste persone "
+"<b>riceveranno</b> i successivi aggiornamenti.)"
#: share/html/Ticket/Create.html:105
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <strong>will</strong> receive future updates.)"
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of "
+"administrative email addresses. These people <strong>will</strong> receive "
+"future updates.)"
msgstr ""
+"invia copia di questo aggiornamento ad una lista di indirizzi email "
+"amministrativi separati da virgole. Questi destinatari <b>riceveranno</b> i "
+"successivi aggiornamenti."
#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of email "
+"addresses. Does <b>not</b> change who will receive future updates.)"
+msgstr ""
+"(invia copia per conoscenza di questo aggiornamento ad una lista di "
+"indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari "
+"dei successivi aggiornamenti.)"
#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of email "
+"addresses. Does <b>not</b> change who will recieve future updates.)"
+msgstr ""
+"(invia copia per conoscenza di questo aggiornamento ad una lista di "
+"indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari "
+"dei successivi aggiornamenti.)"
#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Queste persone <b>riceveranno</b> i successivi aggiornamenti.)"
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of email "
+"addresses. These people <b>will</b> receive future updates.)"
+msgstr ""
+"(invia copia per conoscenza di questo aggiornamento ad una lista di "
+"indirizzi email separati da virgole. Queste persone <b>riceveranno</b> i "
+"successivi aggiornamenti.)"
#: share/html/Ticket/Create.html:96
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <strong>will</strong> receive future updates.)"
-msgstr ""
+msgid ""
+"(Sends a carbon-copy of this update to a comma-delimited list of email "
+"addresses. These people <strong>will</strong> receive future updates.)"
+msgstr ""
+"(invia copia per conoscenza di questo aggiornamento ad una lista di "
+"indirizzi email separati da virgole. Queste persone <b>riceveranno</b> i "
+"successivi aggiornamenti.)"
#: share/html/Admin/Elements/EditScrip:99
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(usa questi campi se si sceglie 'Definito dall'utente' come condizione o azione)"
+msgid ""
+"(Use these fields when you choose 'User Defined' for a condition or action)"
+msgstr ""
+"(usa questi campi se si sceglie 'Definito dall'utente' come condizione o "
+"azione)"
-#: share/html/Ticket/Elements/EditWatchers:63 share/html/Ticket/Elements/ShowUserEntry:50
+#: share/html/Ticket/Elements/EditWatchers:63
+#: share/html/Ticket/Elements/ShowUserEntry:50
msgid "(Will not be sent email)"
-msgstr ""
+msgstr "(Non sarà inviata la mail)"
#: share/html/Admin/CustomFields/index.html:79
msgid "(any)"
@@ -557,7 +645,11 @@
msgid "(no subject)"
msgstr "(nessun oggetto)"
-#: lib/RT/Transaction_Overlay.pm:580 share/html/Admin/Elements/SelectRights:74 share/html/Elements/EditCustomFieldSelect:71 share/html/Elements/SelectCustomFieldValue:53 share/html/Elements/ShowCustomFields:56 share/html/Search/Chart:134 share/html/Search/Elements/Chart:78
+#: lib/RT/Transaction_Overlay.pm:580 share/html/Admin/Elements/SelectRights:74
+#: share/html/Elements/EditCustomFieldSelect:71
+#: share/html/Elements/SelectCustomFieldValue:53
+#: share/html/Elements/ShowCustomFields:56 share/html/Search/Chart:134
+#: share/html/Search/Elements/Chart:78
msgid "(no value)"
msgstr "(nessun valore)"
@@ -569,8 +661,8 @@
msgid "(only one ticket)"
msgstr "(un solo ticket)"
-#: share/html/Elements/RT__Ticket/ColumnMap:109
#. ($count)
+#: share/html/Elements/RT__Ticket/ColumnMap:109
msgid "(pending %quant(%1,other ticket))"
msgstr ""
@@ -594,26 +686,26 @@
msgid "(required)"
msgstr "(richiesto)"
-#: share/html/Elements/GnuPG/SelectKeyForEncryption:53
#. ($key->{'TrustTerse'})
+#: share/html/Elements/GnuPG/SelectKeyForEncryption:53
msgid "(trust: %1)"
msgstr ""
#: share/html/Ticket/Elements/ShowTransactionAttachments:61
msgid "(untitled)"
-msgstr "(senza titolo)"
+msgstr "messaggio"
#: share/html/Elements/EditCustomFieldSelect:59
msgid "-"
-msgstr ""
+msgstr "(aaaa/mm/gg)"
#: bin/rt-crontool:120
msgid "--transaction argument could be only 'first', 'last' or 'all'"
-msgstr ""
+msgstr "-"
#: lib/RT/Config.pm:180
msgid "1995-11-25 21:59:12"
-msgstr ""
+msgstr "-- l'argomento della transazione può essere solo 'primo' o 'ultimo'"
#: lib/RT/Config.pm:181
msgid "1995-11-25T21:59:12Z"
@@ -643,18 +735,23 @@
msgid "<%$field%>"
msgstr ""
-#: share/html/Elements/CreateTicket:49
#. ($m->scomp('/Elements/SelectNewTicketQueue', OnChange => 'document.CreateTicketInQueue.submit()'))
-msgid "<input type=\"submit\" class=\"button\" value=\"New ticket in\" /> %1"
+#: share/html/Elements/CreateTicket:49
+msgid ""
+"<input type=\"submit\" class=\"button\" value=\"New ticket in\" /> %1"
msgstr ""
+"<input type=\"submit\" class=\"button\" value=\"Nuovo ticket in\" /> %1"
-#: docs/design_docs/string-extraction-guide.txt:54 lib/RT/StyleGuide.pod:779
#. ($m->scomp('/Elements/SelectNewTicketQueue'))
+#: docs/design_docs/string-extraction-guide.txt:54 lib/RT/StyleGuide.pod:779
msgid "<input type=\"submit\" value=\"New ticket in\"> %1"
msgstr "<input type=\"submit\" value=\"Crea un ticket in\"> %1"
#: share/html/User/Prefs.html:182
-msgid "<p>All iCal feeds embed a secret token which authorizes you. If the URL one of your iCal feeds got exposed to the outside world, you can get a new secret, <b>breaking all existing iCal feeds</b> below.</p>"
+msgid ""
+"<p>All iCal feeds embed a secret token which authorizes you. If the URL one "
+"of your iCal feeds got exposed to the outside world, you can get a new "
+"secret, <b>breaking all existing iCal feeds</b> below.</p>"
msgstr ""
#: etc/initialdata:187
@@ -663,7 +760,7 @@
#: share/html/Admin/Users/Modify.html:377
msgid "A password was not set, so user won't be able to login."
-msgstr ""
+msgstr "La password non è stata impostata, l'utente non potrà accedere."
#: NOT FOUND IN SOURCE
msgid "ACE Deleted"
@@ -713,8 +810,8 @@
msgid "Action %1 not found"
msgstr "Azione %1 non trovata"
-#: lib/RT/Scrip_Overlay.pm:136
#. ($args{'ScripAction'})
+#: lib/RT/Scrip_Overlay.pm:136
msgid "Action '%1' not found"
msgstr ""
@@ -728,7 +825,7 @@
#: lib/RT/Scrip_Overlay.pm:132
msgid "Action is mandatory argument"
-msgstr ""
+msgstr "L'azione è un argomento obbligatorio"
#: bin/rt-crontool:210
msgid "Action prepared..."
@@ -798,17 +895,19 @@
msgid "Add comments or replies to selected tickets"
msgstr "Aggiungere commenti o repliche ai ticket selezionati"
-#: share/html/Admin/Groups/Members.html:65 share/html/User/Groups/Members.html:62
+#: share/html/Admin/Groups/Members.html:65
+#: share/html/User/Groups/Members.html:62
msgid "Add members"
msgstr "Aggiungi appartenenti"
-#: share/html/Admin/Queues/People.html:89 share/html/Ticket/Elements/AddWatchers:51
+#: share/html/Admin/Queues/People.html:89
+#: share/html/Ticket/Elements/AddWatchers:51
msgid "Add new watchers"
msgstr "Aggiungi nuovi osservatori"
#: share/html/Search/Build.html:87
msgid "Add these terms"
-msgstr ""
+msgstr "Aggiungi questi termini alla ricerca"
#: share/html/Search/Build.html:88
msgid "Add these terms and Search"
@@ -816,23 +915,25 @@
#: share/html/Search/Bulk.html:166
msgid "Add values"
-msgstr ""
+msgstr "Aggiungi valori"
#: lib/RT/CustomField_Overlay.pm:114
msgid "Add, delete and modify custom field values for objects"
-msgstr "Aggiungi, cancella o modifica il valore dei campi personalizzati per gli oggetti"
+msgstr ""
+"Aggiungi, cancella o modifica il valore dei campi personalizzati per gli "
+"oggetti"
#: NOT FOUND IN SOURCE
msgid "AddNextState"
-msgstr "AggiunguProssimoStato"
+msgstr "Aggiungi Prossimo Stato"
-#: lib/RT/Queue_Overlay.pm:804
#. ($args{'Type'})
+#: lib/RT/Queue_Overlay.pm:804
msgid "Added principal as a %1 for this queue"
msgstr "Aggiunto gruppo/utente come %1 per questa coda"
-#: lib/RT/Ticket_Overlay.pm:1138
#. ($self->loc($args{'Type'}))
+#: lib/RT/Ticket_Overlay.pm:1138
msgid "Added principal as a %1 for this ticket"
msgstr "Aggiunto gruppo/utente come %1 per questo ticket"
@@ -920,7 +1021,8 @@
msgid "AdminUsers"
msgstr "GestisciUtenti"
-#: share/html/Admin/Queues/People.html:71 share/html/Ticket/Elements/EditPeople:77
+#: share/html/Admin/Queues/People.html:71
+#: share/html/Ticket/Elements/EditPeople:77
msgid "Administrative Cc"
msgstr "AdminCc"
@@ -966,13 +1068,15 @@
#: NOT FOUND IN SOURCE
msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Invia comunque un messaggio al richiedente, anche se è lui stesso il mittente"
+msgstr ""
+"Invia comunque un messaggio al richiedente, anche se è lui stesso il mittente"
#: share/html/Search/Elements/EditQuery:60
msgid "And/Or"
msgstr ""
-#: share/html/Admin/CustomFields/Modify.html:79 share/html/Admin/Elements/CustomFieldTabs:85
+#: share/html/Admin/CustomFields/Modify.html:79
+#: share/html/Admin/Elements/CustomFieldTabs:85
msgid "Applies to"
msgstr "Si applica a"
@@ -988,20 +1092,22 @@
msgid "Approval"
msgstr "Approvazione"
-#: share/html/Approvals/Display.html:67 share/html/Approvals/Elements/ShowDependency:65 share/html/Approvals/index.html:88
#. ($Ticket->Id, $Ticket->Subject)
#. ($ticket->id, $msg)
#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+#: share/html/Approvals/Display.html:67
+#: share/html/Approvals/Elements/ShowDependency:65
+#: share/html/Approvals/index.html:88
msgid "Approval #%1: %2"
msgstr "Approvazione n°%1: %2"
-#: share/html/Approvals/index.html:77
#. ($ticket->Id)
+#: share/html/Approvals/index.html:77
msgid "Approval #%1: Notes not recorded due to a system error"
msgstr "Approvazione n°%1: Note non registrate a causa di un errore di sistema"
-#: share/html/Approvals/index.html:75
#. ($ticket->Id)
+#: share/html/Approvals/index.html:75
msgid "Approval #%1: Notes recorded"
msgstr "Approvazione n°%1: Note registrate"
@@ -1025,8 +1131,8 @@
msgid "Approve"
msgstr "Approva"
-#: etc/initialdata:565 etc/initialdata:567
#. (# loc $note)
+#: etc/initialdata:565 etc/initialdata:567
msgid "Approver's notes: %1"
msgstr "Note dell'approvatore: %1"
@@ -1058,7 +1164,8 @@
msgid "AssignCustomFields"
msgstr "AssegnaCampiPers."
-#: share/html/Search/Bulk.html:147 share/html/SelfService/Update.html:89 share/html/Ticket/ModifyAll.html:118 share/html/Ticket/Update.html:122
+#: share/html/Search/Bulk.html:147 share/html/SelfService/Update.html:89
+#: share/html/Ticket/ModifyAll.html:118 share/html/Ticket/Update.html:122
msgid "Attach"
msgstr "Allega"
@@ -1066,12 +1173,15 @@
msgid "Attach file"
msgstr "Allega un file"
-#: share/html/SelfService/Update.html:77 share/html/Ticket/Create.html:133 share/html/Ticket/Update.html:112
+#: share/html/SelfService/Update.html:77 share/html/Ticket/Create.html:133
+#: share/html/Ticket/Update.html:112
msgid "Attached file"
msgstr "File allegato"
-#: share/html/Ticket/ShowEmailRecord.html:83 share/html/Ticket/ShowEmailRecord.html:85 share/html/Ticket/ShowEmailRecord.html:88
#. ($Attachment)
+#: share/html/Ticket/ShowEmailRecord.html:83
+#: share/html/Ticket/ShowEmailRecord.html:85
+#: share/html/Ticket/ShowEmailRecord.html:88
msgid "Attachment '%1' could not be loaded"
msgstr "Impossibile caricare l'allegato '%1'"
@@ -1125,7 +1235,7 @@
#: share/html/Widgets/SelectionBox:191
msgid "Available"
-msgstr ""
+msgstr "Disponibile"
#: share/html/Ticket/Forward.html:73
msgid "BCc"
@@ -1171,16 +1281,22 @@
msgid "Bad data in %1"
msgstr "Dati incorretti in %1"
-#: lib/RT/SharedSetting.pm:135
#. ($id)
+#: lib/RT/SharedSetting.pm:135
msgid "Bad privacy for attribute %1"
msgstr ""
#: NOT FOUND IN SOURCE
msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Numero di transazione incorretto per l'allegato. %1 dovrebbe essere %2\\n"
+msgstr ""
+"Numero di transazione incorretto per l'allegato. %1 dovrebbe essere %2\\n"
-#: share/html/Admin/Elements/CustomFieldTabs:67 share/html/Admin/Elements/GroupTabs:62 share/html/Admin/Elements/QueueTabs:62 share/html/Admin/Elements/UserTabs:60 share/html/Dashboards/Elements/Tabs:70 share/html/Ticket/Elements/Tabs:126 share/html/User/Elements/GroupTabs:61
+#: share/html/Admin/Elements/CustomFieldTabs:67
+#: share/html/Admin/Elements/GroupTabs:62
+#: share/html/Admin/Elements/QueueTabs:62
+#: share/html/Admin/Elements/UserTabs:60
+#: share/html/Dashboards/Elements/Tabs:70 share/html/Ticket/Elements/Tabs:126
+#: share/html/User/Elements/GroupTabs:61
msgid "Basics"
msgstr "Dati base"
@@ -1188,7 +1304,10 @@
msgid "Bcc"
msgstr "Bcc"
-#: share/html/Admin/CustomFields/GroupRights.html:93 share/html/Admin/CustomFields/UserRights.html:74 share/html/Admin/Elements/EditScrip:127 share/html/Admin/Elements/EditScrip:92
+#: share/html/Admin/CustomFields/GroupRights.html:93
+#: share/html/Admin/CustomFields/UserRights.html:74
+#: share/html/Admin/Elements/EditScrip:127
+#: share/html/Admin/Elements/EditScrip:92
msgid "Be sure to save your changes"
msgstr "Se hai aggiornato qualche impostazione, assicurati di premere"
@@ -1224,13 +1343,14 @@
msgid "Bookmarked Tickets"
msgstr ""
-#: share/html/Ticket/Elements/ShowHistory:66 share/html/Ticket/Elements/ShowHistory:71
+#: share/html/Ticket/Elements/ShowHistory:66
+#: share/html/Ticket/Elements/ShowHistory:71
msgid "Brief headers"
msgstr "Intestazione breve"
#: share/html/Ticket/Elements/Tabs:305
msgid "Bulk Update"
-msgstr ""
+msgstr "Aggiornamenti multipli"
#: NOT FOUND IN SOURCE
msgid "Bulk ticket update"
@@ -1256,8 +1376,8 @@
msgid "Can't add a custom field value without a name"
msgstr "Impossibile aggiungere un valore di campo personalizzato senza un nome"
-#: share/html/Admin/CustomFields/Objects.html:88
#. ($Class)
+#: share/html/Admin/CustomFields/Objects.html:88
msgid "Can't find a collection class for '%1'"
msgstr "Impossibile trovare una classe collection per '%1'"
@@ -1271,12 +1391,14 @@
#: NOT FOUND IN SOURCE
msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Impossibile unire un ticket ad un ticket già unito. Questo errore non dovrebbe mai verificarsi"
+msgstr ""
+"Impossibile unire un ticket ad un ticket già unito. Questo errore non "
+"dovrebbe mai verificarsi"
-#: share/html/Widgets/SavedSearch:110
#. (loc($self->{SearchType}))
+#: share/html/Widgets/SavedSearch:110
msgid "Can't save %1"
-msgstr ""
+msgstr "Impossibile salvare %1"
#: share/html/Search/Elements/EditSearches:283
msgid "Can't save this search"
@@ -1287,23 +1409,28 @@
msgstr "Impossibile specificare sia la base che il target"
#: share/html/Ticket/Create.html:330
+#, fuzzy
msgid "Cannot create tickets in a disabled queue."
-msgstr ""
+msgstr "Crea nuovi ticket in questa coda"
-#: share/html/autohandler:218
#. ($msg)
+#: share/html/autohandler:218
msgid "Cannot create user: %1"
msgstr "Impossibile creare l'utente: %1"
-#: share/html/Admin/Elements/AddCustomFieldValue:57 share/html/Admin/Elements/EditCustomFieldValues:61
+#: share/html/Admin/Elements/AddCustomFieldValue:57
+#: share/html/Admin/Elements/EditCustomFieldValues:61
msgid "Category"
-msgstr ""
+msgstr "Categoria"
#: lib/RT/CustomFieldValue_Overlay.pm:124
msgid "Category unset"
msgstr ""
-#: lib/RT/ACE_Overlay.pm:101 share/html/Admin/Queues/People.html:67 share/html/SelfService/Create.html:73 share/html/Ticket/Create.html:92 share/html/Ticket/Elements/EditPeople:74 share/html/Ticket/Elements/ShowPeople:58 share/html/Ticket/Forward.html:70
+#: lib/RT/ACE_Overlay.pm:101 share/html/Admin/Queues/People.html:67
+#: share/html/SelfService/Create.html:73 share/html/Ticket/Create.html:92
+#: share/html/Ticket/Elements/EditPeople:74
+#: share/html/Ticket/Elements/ShowPeople:58 share/html/Ticket/Forward.html:70
msgid "Cc"
msgstr "Cc"
@@ -1323,7 +1450,8 @@
msgid "Check Database Connectivity"
msgstr ""
-#: share/html/SelfService/Update.html:80 share/html/Ticket/Create.html:136 share/html/Ticket/Update.html:114
+#: share/html/SelfService/Update.html:80 share/html/Ticket/Create.html:136
+#: share/html/Ticket/Update.html:114
msgid "Check box to delete"
msgstr "Spunta la casella per cancellare"
@@ -1331,7 +1459,9 @@
msgid "Check box to revoke right"
msgstr "Spunta la casella per revocare i diritti"
-#: share/html/Elements/EditLinks:149 share/html/Elements/EditLinks:82 share/html/Elements/ShowLinks:100 share/html/Ticket/Create.html:233 share/html/Ticket/Elements/BulkLinks:66
+#: share/html/Elements/EditLinks:149 share/html/Elements/EditLinks:82
+#: share/html/Elements/ShowLinks:100 share/html/Ticket/Create.html:233
+#: share/html/Ticket/Elements/BulkLinks:66
msgid "Children"
msgstr "Derivati"
@@ -1348,12 +1478,14 @@
msgstr "Azzera"
#: share/html/Install/Initialize.html:54
-msgid "Click \"Initialize Database\" to begin creating the database. This may take a few moments"
+msgid ""
+"Click \"Initialize Database\" to begin creating the database. This may take "
+"a few moments"
msgstr ""
#: share/html/Helpers/CalPopup.html:53
msgid "Close window"
-msgstr ""
+msgstr "Chiudi finestra"
#: share/html/Ticket/Elements/ShowDates:75
msgid "Closed"
@@ -1367,33 +1499,35 @@
msgid "Closed requests"
msgstr "Richieste chiuse"
-#: share/html/SelfService/Closed.html:48 share/html/SelfService/Elements/Tabs:81
+#: share/html/SelfService/Closed.html:48
+#: share/html/SelfService/Elements/Tabs:81
msgid "Closed tickets"
msgstr "Ticket chiusi"
#: lib/RT/CustomField_Overlay.pm:90
msgid "Combobox: Select or enter multiple values"
-msgstr ""
+msgstr "Combobox: seleziona o inserisci valori multipli"
#: lib/RT/CustomField_Overlay.pm:91
msgid "Combobox: Select or enter one value"
-msgstr ""
+msgstr "Combobox: seleziona o inserisci un valore"
#: lib/RT/CustomField_Overlay.pm:92
msgid "Combobox: Select or enter up to %1 values"
-msgstr ""
+msgstr "Combobox: seleziona o inserisci fino a %1 valori"
#: NOT FOUND IN SOURCE
msgid "Command not understood!\\n"
msgstr "Comando non riconosciuto!\\n"
-#: share/html/Ticket/Elements/ShowTransaction:201 share/html/Ticket/Elements/Tabs:216
+#: share/html/Ticket/Elements/ShowTransaction:201
+#: share/html/Ticket/Elements/Tabs:216
msgid "Comment"
msgstr "Commento"
#: share/html/Admin/Queues/Modify.html:77
msgid "Comment Address"
-msgstr "Inidirizzo per i commenti"
+msgstr "Indirizzo per i commenti"
#: lib/RT/Installer.pm:174
msgid "Comment address"
@@ -1427,7 +1561,8 @@
msgid "Comments about %1"
msgstr "Commenti su %1"
-#: share/html/Admin/Users/Modify.html:229 share/html/Ticket/Elements/ShowRequestor:71
+#: share/html/Admin/Users/Modify.html:229
+#: share/html/Ticket/Elements/ShowRequestor:71
msgid "Comments about this user"
msgstr "Commenti su questo utente"
@@ -1447,14 +1582,14 @@
msgid "Condition"
msgstr "Condizione"
-#: lib/RT/Scrip_Overlay.pm:152
#. ($args{'ScripCondition'})
+#: lib/RT/Scrip_Overlay.pm:152
msgid "Condition '%1' not found"
msgstr ""
#: lib/RT/Scrip_Overlay.pm:148
msgid "Condition is mandatory argument"
-msgstr ""
+msgstr "La condizione è un campo obbligatorio"
#: bin/rt-crontool:194
msgid "Condition matches..."
@@ -1480,7 +1615,10 @@
msgid "Contacted date '%1' could not be parsed"
msgstr "Impossibile interpretare la data di contatto '%1'"
-#: share/html/Admin/Elements/ModifyTemplate:67 share/html/Elements/QuickCreate:65 share/html/Elements/SelectAttachmentField:50 share/html/Ticket/ModifyAll.html:122
+#: share/html/Admin/Elements/ModifyTemplate:67
+#: share/html/Elements/QuickCreate:65
+#: share/html/Elements/SelectAttachmentField:50
+#: share/html/Ticket/ModifyAll.html:122
msgid "Content"
msgstr "Contenuto"
@@ -1518,11 +1656,13 @@
#: NOT FOUND IN SOURCE
msgid "Could not add new custom field value for ticket. "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. "
+msgstr ""
+"Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. "
#: NOT FOUND IN SOURCE
msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. %1 "
+msgstr ""
+"Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. %1 "
#: NOT FOUND IN SOURCE
msgid "Could not add new custom field value. "
@@ -1532,37 +1672,40 @@
msgid "Could not add new custom field value. %1 "
msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato. %1 "
-#: lib/RT/Record.pm:1604 lib/RT/Record.pm:1650
#. ($value_msg)
#. ($msg)
+#: lib/RT/Record.pm:1604 lib/RT/Record.pm:1650
msgid "Could not add new custom field value: %1"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:2745 lib/RT/Ticket_Overlay.pm:2753 lib/RT/Ticket_Overlay.pm:2770
+#: lib/RT/Ticket_Overlay.pm:2745 lib/RT/Ticket_Overlay.pm:2753
+#: lib/RT/Ticket_Overlay.pm:2770
msgid "Could not change owner. "
msgstr "Impossibile cambiare l'incaricato. "
-#: share/html/Admin/CustomFields/Modify.html:149
#. ($msg)
+#: share/html/Admin/CustomFields/Modify.html:149
msgid "Could not create CustomField"
msgstr "Impossibile creare il campo personalizzato"
-#: share/html/Admin/Elements/EditCustomField:115
#. ($msg)
+#: share/html/Admin/Elements/EditCustomField:115
msgid "Could not create CustomField: %1"
msgstr "Impossibile creare il campo personalizzato: %1"
-#: lib/RT/Group_Overlay.pm:433 lib/RT/Group_Overlay.pm:440 share/html/User/Groups/Modify.html:100
+#: lib/RT/Group_Overlay.pm:433 lib/RT/Group_Overlay.pm:440
+#: share/html/User/Groups/Modify.html:100
msgid "Could not create group"
msgstr "Impossibile creare il gruppo"
-#: share/html/Admin/Global/Template.html:94 share/html/Admin/Queues/Template.html:95
#. ($msg)
+#: share/html/Admin/Global/Template.html:94
+#: share/html/Admin/Queues/Template.html:95
msgid "Could not create template: %1"
msgstr "Impossibile creare il modello: %1"
-#: lib/RT/Ticket_Overlay.pm:290
#. ($QueueObj->Name)
+#: lib/RT/Ticket_Overlay.pm:290
msgid "Could not create ticket in disabled queue \"%1\""
msgstr ""
@@ -1570,7 +1713,10 @@
msgid "Could not create ticket. Queue not set"
msgstr "Impossibile creare il ticket. Queue non impostata"
-#: lib/RT/User_Overlay.pm:189 lib/RT/User_Overlay.pm:203 lib/RT/User_Overlay.pm:212 lib/RT/User_Overlay.pm:221 lib/RT/User_Overlay.pm:230 lib/RT/User_Overlay.pm:244 lib/RT/User_Overlay.pm:254 lib/RT/User_Overlay.pm:402
+#: lib/RT/User_Overlay.pm:189 lib/RT/User_Overlay.pm:203
+#: lib/RT/User_Overlay.pm:212 lib/RT/User_Overlay.pm:221
+#: lib/RT/User_Overlay.pm:230 lib/RT/User_Overlay.pm:244
+#: lib/RT/User_Overlay.pm:254 lib/RT/User_Overlay.pm:402
msgid "Could not create user"
msgstr "Impossibile creare l'utente"
@@ -1598,8 +1744,8 @@
msgid "Could not find user %1."
msgstr "Impossibile trovare l'utente %1."
-#: lib/RT/SharedSetting.pm:202
#. ($self->ObjectName)
+#: lib/RT/SharedSetting.pm:202
msgid "Could not load %1 attribute"
msgstr ""
@@ -1607,12 +1753,14 @@
msgid "Could not load CustomField %1"
msgstr "Impossibile caricare il campo personalizzato %1"
-#: share/html/Admin/Groups/Members.html:114 share/html/User/Groups/Members.html:113 share/html/User/Groups/Modify.html:105
+#: share/html/Admin/Groups/Members.html:114
+#: share/html/User/Groups/Members.html:113
+#: share/html/User/Groups/Modify.html:105
msgid "Could not load group"
msgstr "Impossibile caricare questo gruppo"
-#: lib/RT/SharedSetting.pm:111
#. ($privacy)
+#: lib/RT/SharedSetting.pm:111
msgid "Could not load object for %1"
msgstr "Impossibile caricare l'oggetto per %1"
@@ -1620,25 +1768,26 @@
msgid "Could not load search attribute"
msgstr "Impossibile caricare un attributo della ricerca"
-#: lib/RT/Queue_Overlay.pm:802
#. ($args{'Type'})
+#: lib/RT/Queue_Overlay.pm:802
msgid "Could not make that principal a %1 for this queue"
msgstr "Impossibile rendere questo gruppo/utente un %1 per questa coda"
-#: lib/RT/Ticket_Overlay.pm:1127
#. ($self->loc($args{'Type'}))
+#: lib/RT/Ticket_Overlay.pm:1127
msgid "Could not make that principal a %1 for this ticket"
msgstr "Impossibile rendere questo gruppo/utente un %1 per questo ticket"
-#: lib/RT/Queue_Overlay.pm:918
#. ($args{'Type'})
+#: lib/RT/Queue_Overlay.pm:918
msgid "Could not remove that principal as a %1 for this queue"
msgstr "Impossibile rimuovere questo gruppo/utente come un %1 per questa coda"
-#: lib/RT/Ticket_Overlay.pm:1254
#. ($args{'Type'})
+#: lib/RT/Ticket_Overlay.pm:1254
msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Impossibile rimuovere questo gruppo/utente come un %1 per questo ticket"
+msgstr ""
+"Impossibile rimuovere questo gruppo/utente come un %1 per questo ticket"
#: lib/RT/User_Overlay.pm:129
msgid "Could not set user info"
@@ -1646,15 +1795,15 @@
#: lib/RT/Transaction_Overlay.pm:157
msgid "Couldn't add attachment"
-msgstr ""
+msgstr "Impossibile aggiugere l'allegato"
#: lib/RT/Group_Overlay.pm:999
msgid "Couldn't add member to group"
msgstr "Impossibile aggiungere un appartenente al gruppo"
-#: lib/RT/Record.pm:1660 lib/RT/Record.pm:1712
#. ($msg)
#. ($Msg)
+#: lib/RT/Record.pm:1660 lib/RT/Record.pm:1712
msgid "Couldn't create a transaction: %1"
msgstr "Impossibile creare una transazione: %1"
@@ -1694,23 +1843,23 @@
msgid "Couldn't find user\\n"
msgstr "Impossibile trovare l'utente\\n"
-#: lib/RT/CurrentUser.pm:164
#. ($self->Id)
+#: lib/RT/CurrentUser.pm:164
msgid "Couldn't load %1 from the users database.\\n"
msgstr "Impossibile caricare %1 dal database degli utenti.\\n"
-#: share/html/Admin/CustomFields/UserRights.html:92
#. ($id)
+#: share/html/Admin/CustomFields/UserRights.html:92
msgid "Couldn't load Class %1"
msgstr "Impossibile caricare la classe %1"
-#: lib/RT/CustomFieldValue_Overlay.pm:80
#. ($cf_id)
+#: lib/RT/CustomFieldValue_Overlay.pm:80
msgid "Couldn't load Custom Field #%1"
msgstr ""
-#: share/html/Admin/CustomFields/GroupRights.html:104
#. ($id)
+#: share/html/Admin/CustomFields/GroupRights.html:104
msgid "Couldn't load CustomField %1"
msgstr "Impossibile caricare ilcampo personalizzato %1"
@@ -1726,52 +1875,58 @@
msgid "Couldn't load Scrips."
msgstr "Impossibile caricare gli Scrips"
-#: lib/RT/Ticket_Overlay.pm:1707
#. ($self->Id)
+#: lib/RT/Ticket_Overlay.pm:1707
msgid "Couldn't load copy of ticket #%1."
-msgstr ""
+msgstr "Impossibile caricare la copia del ticket #%1."
-#: share/html/Admin/Users/Memberships.html:105 share/html/Admin/Users/Memberships.html:115
#. ($gid)
+#: share/html/Admin/Users/Memberships.html:105
+#: share/html/Admin/Users/Memberships.html:115
msgid "Couldn't load group #%1"
msgstr ""
-#: share/html/Admin/Groups/GroupRights.html:111 share/html/Admin/Groups/UserRights.html:94
#. ($id)
+#: share/html/Admin/Groups/GroupRights.html:111
+#: share/html/Admin/Groups/UserRights.html:94
msgid "Couldn't load group %1"
msgstr "Impossibile caricare il gruppo %1"
-#: lib/RT/Link_Overlay.pm:193 lib/RT/Link_Overlay.pm:202 lib/RT/Link_Overlay.pm:229
+#: lib/RT/Link_Overlay.pm:193 lib/RT/Link_Overlay.pm:202
+#: lib/RT/Link_Overlay.pm:229
msgid "Couldn't load link"
msgstr "Impossibile caricare il collegamento"
-#: share/html/Admin/Elements/ObjectCustomFields:85 share/html/Admin/Queues/CustomFields.html:61 share/html/Admin/Users/CustomFields.html:61
#. ($id)
+#: share/html/Admin/Elements/ObjectCustomFields:85
+#: share/html/Admin/Queues/CustomFields.html:61
+#: share/html/Admin/Users/CustomFields.html:61
msgid "Couldn't load object %1"
msgstr "Impossibile caricare l'oggetto %1"
-#: lib/RT/Ticket_Overlay.pm:439
#. ($msg)
+#: lib/RT/Ticket_Overlay.pm:439
msgid "Couldn't load or create user: %1"
msgstr ""
-#: share/html/Admin/Queues/People.html:146
#. ($id)
+#: share/html/Admin/Queues/People.html:146
msgid "Couldn't load queue"
msgstr "Impossibile caricare la coda"
-#: share/html/Admin/Elements/EditScrips:86
#. ($id)
+#: share/html/Admin/Elements/EditScrips:86
msgid "Couldn't load queue #%1"
msgstr ""
-#: share/html/Admin/Queues/GroupRights.html:124 share/html/Admin/Queues/UserRights.html:93
#. ($id)
+#: share/html/Admin/Queues/GroupRights.html:124
+#: share/html/Admin/Queues/UserRights.html:93
msgid "Couldn't load queue %1"
msgstr "Impossibile caricare la coda %1"
-#: share/html/Admin/Queues/Modify.html:150
#. ($Name)
+#: share/html/Admin/Queues/Modify.html:150
msgid "Couldn't load queue '%1'"
msgstr ""
@@ -1779,17 +1934,18 @@
msgid "Couldn't load scrip"
msgstr "Impossibile caricare lo Scrip"
-#: share/html/Admin/Elements/EditScrip:141 share/html/Admin/Elements/EditScrip:185
#. ($id)
+#: share/html/Admin/Elements/EditScrip:141
+#: share/html/Admin/Elements/EditScrip:185
msgid "Couldn't load scrip #%1"
-msgstr ""
+msgstr "Impossibile caricare lo Scrip #%1"
#: NOT FOUND IN SOURCE
msgid "Couldn't load template"
msgstr "Impossibile caricare il modello"
-#: share/html/Admin/Elements/EditTemplates:108
#. ($id)
+#: share/html/Admin/Elements/EditTemplates:108
msgid "Couldn't load template #%1"
msgstr ""
@@ -1797,49 +1953,49 @@
msgid "Couldn't load that user (%1)"
msgstr "Impossibile caricare questo utente (%1)"
-#: lib/RT/Action/CreateTickets.pm:451 share/html/SelfService/Display.html:161
#. ($id)
+#: lib/RT/Action/CreateTickets.pm:451 share/html/SelfService/Display.html:161
msgid "Couldn't load ticket '%1'"
msgstr "Impossibile caricare il ticket '%1'"
-#: share/html/Ticket/Forward.html:90 share/html/Ticket/GnuPG.html:75
#. ($QuoteTransaction)
#. ($id)
+#: share/html/Ticket/Forward.html:90 share/html/Ticket/GnuPG.html:75
msgid "Couldn't load transaction #%1"
msgstr ""
-#: share/html/Admin/Users/GnuPG.html:92
#. ($id)
+#: share/html/Admin/Users/GnuPG.html:92
msgid "Couldn't load user #%1"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:1041
#. ($args{'Email'})
+#: lib/RT/Ticket_Overlay.pm:1041
msgid "Couldn't parse address from '%1' string"
msgstr ""
-#: lib/RT/Attachment_Overlay.pm:703
#. ($msg)
+#: lib/RT/Attachment_Overlay.pm:703
msgid "Couldn't replace content with decrypted data: %1"
msgstr ""
-#: lib/RT/Attachment_Overlay.pm:668
#. ($msg)
+#: lib/RT/Attachment_Overlay.pm:668
msgid "Couldn't replace content with encrypted data: %1"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:2360
#. ($args{'URI'})
+#: lib/RT/Ticket_Overlay.pm:2360
msgid "Couldn't resolve '%1' into a URI."
-msgstr ""
+msgstr "Impossibile convertire %1 in un URI."
-#: lib/RT/Link_Overlay.pm:100
#. ($args{'Base'})
+#: lib/RT/Link_Overlay.pm:100
msgid "Couldn't resolve base '%1' into a URI."
msgstr ""
-#: lib/RT/Link_Overlay.pm:115
#. ($args{'Target'})
+#: lib/RT/Link_Overlay.pm:115
msgid "Couldn't resolve target '%1' into a URI."
msgstr ""
@@ -1847,8 +2003,8 @@
msgid "Couldn't send email"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:544
#. ($type, $msg)
+#: lib/RT/Ticket_Overlay.pm:544
msgid "Couldn't set %1 watcher: %2"
msgstr ""
@@ -1864,7 +2020,20 @@
msgid "Country"
msgstr "Nazione"
-#: share/html/Admin/CustomFields/Modify.html:126 share/html/Admin/Elements/CreateUserCalled:49 share/html/Admin/Elements/CustomFieldTabs:95 share/html/Admin/Elements/EditCustomField:86 share/html/Admin/Elements/EditScrip:148 share/html/Admin/Elements/GroupTabs:79 share/html/Admin/Elements/QueueTabs:97 share/html/Admin/Elements/UserTabs:86 share/html/Admin/Global/Template.html:67 share/html/Admin/Queues/Template.html:68 share/html/Elements/QuickCreate:68 share/html/Elements/ShowLinks:100 share/html/Elements/ShowLinks:104 share/html/Elements/ShowLinks:114 share/html/Elements/ShowLinks:50 share/html/Elements/ShowLinks:80 share/html/Elements/ShowLinks:90 share/html/Ticket/Create.html:174 share/html/Ticket/Create.html:246
+#: share/html/Admin/CustomFields/Modify.html:126
+#: share/html/Admin/Elements/CreateUserCalled:49
+#: share/html/Admin/Elements/CustomFieldTabs:95
+#: share/html/Admin/Elements/EditCustomField:86
+#: share/html/Admin/Elements/EditScrip:148
+#: share/html/Admin/Elements/GroupTabs:79
+#: share/html/Admin/Elements/QueueTabs:97
+#: share/html/Admin/Elements/UserTabs:86
+#: share/html/Admin/Global/Template.html:67
+#: share/html/Admin/Queues/Template.html:68 share/html/Elements/QuickCreate:68
+#: share/html/Elements/ShowLinks:100 share/html/Elements/ShowLinks:104
+#: share/html/Elements/ShowLinks:114 share/html/Elements/ShowLinks:50
+#: share/html/Elements/ShowLinks:80 share/html/Elements/ShowLinks:90
+#: share/html/Ticket/Create.html:174 share/html/Ticket/Create.html:246
msgid "Create"
msgstr "Crea"
@@ -1872,12 +2041,13 @@
msgid "Create Tickets"
msgstr "Crea ticket"
-#: share/html/Admin/CustomFields/Modify.html:136 share/html/Admin/Elements/EditCustomField:98
+#: share/html/Admin/CustomFields/Modify.html:136
+#: share/html/Admin/Elements/EditCustomField:98
msgid "Create a CustomField"
msgstr "Crea un campo Personalizzato"
-#: share/html/Admin/Queues/CustomField.html:71
#. ($QueueObj->Name())
+#: share/html/Admin/Queues/CustomField.html:71
msgid "Create a CustomField for queue %1"
msgstr "Crea un campo personalizzato per la coda %1"
@@ -1897,11 +2067,13 @@
msgid "Create a new global scrip"
msgstr "Crea un nuovo scrip globale"
-#: share/html/Admin/Groups/Modify.html:105 share/html/Admin/Groups/Modify.html:131
+#: share/html/Admin/Groups/Modify.html:105
+#: share/html/Admin/Groups/Modify.html:131
msgid "Create a new group"
msgstr "Crea un nuovo gruppo"
-#: share/html/User/Groups/Modify.html:115 share/html/User/Groups/Modify.html:90
+#: share/html/User/Groups/Modify.html:115
+#: share/html/User/Groups/Modify.html:90
msgid "Create a new personal group"
msgstr "Crea un nuovo gruppo personale"
@@ -1917,11 +2089,13 @@
msgid "Create a new template"
msgstr "Crea un nuovo modello"
-#: share/html/Ticket/Create.html:49 share/html/Ticket/Create.html:53 share/html/Ticket/Create.html:64
+#: share/html/Ticket/Create.html:49 share/html/Ticket/Create.html:53
+#: share/html/Ticket/Create.html:64
msgid "Create a new ticket"
msgstr "Crea un nuovo ticket"
-#: share/html/Admin/Users/Modify.html:256 share/html/Admin/Users/Modify.html:320
+#: share/html/Admin/Users/Modify.html:256
+#: share/html/Admin/Users/Modify.html:320
msgid "Create a new user"
msgstr "Crea un nuovo utente"
@@ -1937,16 +2111,18 @@
msgid "Create a request"
msgstr "Crea una richiesta"
-#: share/html/Admin/Queues/Scrip.html:91
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/Scrip.html:91
msgid "Create a scrip for queue %1"
msgstr "Crea uno scrip per la coda %1"
-#: share/html/Admin/Global/Template.html:87 share/html/Admin/Queues/Template.html:88
+#: share/html/Admin/Global/Template.html:87
+#: share/html/Admin/Queues/Template.html:88
msgid "Create a template"
msgstr "Crea un modello"
-#: share/html/SelfService/Create.html:48 share/html/SelfService/CreateTicketInQueue.html:48
+#: share/html/SelfService/Create.html:48
+#: share/html/SelfService/CreateTicketInQueue.html:48
msgid "Create a ticket"
msgstr "Nuovo ticket"
@@ -1984,7 +2160,9 @@
#: NOT FOUND IN SOURCE
msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Crea, elimina e modifica gli appartenenti ai gruppi personali di un qualunque utente"
+msgstr ""
+"Crea, elimina e modifica gli appartenenti ai gruppi personali di un "
+"qualunque utente"
#: lib/RT/System.pm:84
msgid "Create, delete and modify the members of personal groups"
@@ -2002,7 +2180,9 @@
msgid "CreateTicket"
msgstr "CreaTicket"
-#: lib/RT/Ticket_Overlay.pm:905 share/html/Admin/Elements/ShowKeyInfo:58 share/html/Elements/SelectDateType:49 share/html/Ticket/Elements/ShowDates:50
+#: lib/RT/Ticket_Overlay.pm:905 share/html/Admin/Elements/ShowKeyInfo:58
+#: share/html/Elements/SelectDateType:49
+#: share/html/Ticket/Elements/ShowDates:50
msgid "Created"
msgstr "Creato"
@@ -2010,15 +2190,16 @@
msgid "Created By"
msgstr "Creato da"
-#: share/html/Admin/CustomFields/Modify.html:151 share/html/Admin/Elements/EditCustomField:119
#. ($CustomFieldObj->Name())
#. ($CustomFieldObj->Name)
+#: share/html/Admin/CustomFields/Modify.html:151
+#: share/html/Admin/Elements/EditCustomField:119
msgid "Created CustomField %1"
msgstr "Campo personalizzato %1 creato"
#: share/html/Tools/Reports/Elements/Tabs:65
msgid "Created in a date range"
-msgstr ""
+msgstr "Creato in un range di date"
#: NOT FOUND IN SOURCE
msgid "Created template %1"
@@ -2026,7 +2207,7 @@
#: share/html/Tools/Reports/CreatedByDates.html:54
msgid "Created tickets in period, grouped by status"
-msgstr ""
+msgstr "Ticket creati in un periodo, raggruppati per stato"
#: NOT FOUND IN SOURCE
msgid "CreatedBy"
@@ -2052,7 +2233,8 @@
msgid "Current Scrips"
msgstr "Scrips attuali"
-#: share/html/Admin/Groups/Members.html:62 share/html/User/Groups/Members.html:65
+#: share/html/Admin/Groups/Members.html:62
+#: share/html/User/Groups/Members.html:65
msgid "Current members"
msgstr "Appartenenti attuali"
@@ -2062,13 +2244,14 @@
#: share/html/Search/Elements/EditQuery:49
msgid "Current search"
-msgstr ""
+msgstr "Ricerca attuale"
#: NOT FOUND IN SOURCE
msgid "Current search criteria"
msgstr "Criterio di ricerca attuale"
-#: share/html/Admin/Queues/People.html:64 share/html/Ticket/Elements/EditPeople:68
+#: share/html/Admin/Queues/People.html:64
+#: share/html/Ticket/Elements/EditPeople:68
msgid "Current watchers"
msgstr "Osservatori attuali"
@@ -2076,12 +2259,15 @@
msgid "Custom Field #%1"
msgstr "Campo personalizzato n°%1"
-#: share/html/Admin/Elements/SystemTabs:63 share/html/Admin/Elements/Tabs:64 share/html/Admin/Global/index.html:65 share/html/Admin/Users/Modify.html:209 share/html/Admin/index.html:73 share/html/Ticket/Elements/ShowSummary:58
+#: share/html/Admin/Elements/SystemTabs:63 share/html/Admin/Elements/Tabs:64
+#: share/html/Admin/Global/index.html:65
+#: share/html/Admin/Users/Modify.html:209 share/html/Admin/index.html:73
+#: share/html/Ticket/Elements/ShowSummary:58
msgid "Custom Fields"
msgstr "Campi personalizzati"
-#: share/html/Admin/CustomFields/index.html:62
#. ($lookup)
+#: share/html/Admin/CustomFields/index.html:62
msgid "Custom Fields for %1"
msgstr "Campi personalizzati per %1"
@@ -2097,36 +2283,37 @@
msgid "Custom condition"
msgstr "Condizione personalizzata"
-#: lib/RT/Tickets_Overlay.pm:2458
#. ($CF->Name, $args{OPERATOR}, $args{VALUE})
+#: lib/RT/Tickets_Overlay.pm:2458
msgid "Custom field %1 %2 %3"
msgstr "Campi personalizzati %1 %2 %3"
-#: lib/RT/Record.pm:1522
#. ($args{'Field'})
+#: lib/RT/Record.pm:1522
+#, fuzzy
msgid "Custom field %1 does not apply to this object"
-msgstr ""
+msgstr "L'oggetto non ammette questo campo personalizzato"
-#: lib/RT/Tickets_Overlay.pm:2452
#. ($CF->Name)
+#: lib/RT/Tickets_Overlay.pm:2452
msgid "Custom field %1 has a value."
msgstr "Il campo personalizzato %1 ha un valore."
-#: lib/RT/Tickets_Overlay.pm:2448
#. ($CF->Name)
+#: lib/RT/Tickets_Overlay.pm:2448
msgid "Custom field %1 has no value."
msgstr "Il campo personalizzato %1 non ha valore."
-#: lib/RT/Record.pm:1511 lib/RT/Record.pm:1693
#. ($args{'Field'})
+#: lib/RT/Record.pm:1511 lib/RT/Record.pm:1693
msgid "Custom field %1 not found"
msgstr "Campo personalizzato %1 non trovato"
-#: lib/RT/Report/Tickets.pm:120 lib/RT/Report/Tickets.pm:123
#. ($cf)
#. ($obj->Name)
+#: lib/RT/Report/Tickets.pm:120 lib/RT/Report/Tickets.pm:123
msgid "Custom field '%1'"
-msgstr ""
+msgstr "Campo personalizzato '%1'"
#: NOT FOUND IN SOURCE
msgid "Custom field deleted"
@@ -2136,8 +2323,8 @@
msgid "Custom field not found"
msgstr "Campo personalizzato %1 non trovato"
-#: lib/RT/CustomField_Overlay.pm:1050
#. ($args{'Content'}, $self->Name)
+#: lib/RT/CustomField_Overlay.pm:1050
msgid "Custom field value %1 could not be found for custom field %2"
msgstr "Impossibile trovare il valore %1 per il campo personalizzato %2"
@@ -2157,13 +2344,15 @@
msgid "Custom field value deleted"
msgstr "Il valore del vampo personalizzato è stato eliminato"
-#: lib/RT/Transaction_Overlay.pm:627 share/html/Elements/SelectGroups:54 share/html/Elements/SelectUsers:54
+#: lib/RT/Transaction_Overlay.pm:627 share/html/Elements/SelectGroups:54
+#: share/html/Elements/SelectUsers:54
msgid "CustomField"
msgstr "CampoPersonalizzato"
-#: share/html/Prefs/MyRT.html:84 share/html/Prefs/Quicksearch.html:72 share/html/Prefs/Search.html:77
+#: share/html/Prefs/MyRT.html:84 share/html/Prefs/Quicksearch.html:72
+#: share/html/Prefs/Search.html:77
msgid "Customize"
-msgstr ""
+msgstr "Personalizza"
#: lib/RT/Installer.pm:98
msgid "DBA of the database"
@@ -2177,26 +2366,29 @@
msgid "Daily digest"
msgstr ""
-#: share/html/Dashboards/Subscription.html:62 share/html/Dashboards/Subscription.html:66
+#: share/html/Dashboards/Subscription.html:62
+#: share/html/Dashboards/Subscription.html:66
msgid "Dashboard"
msgstr ""
-#: share/html/Dashboards/Modify.html:112
#. ($msg)
+#: share/html/Dashboards/Modify.html:112
msgid "Dashboard could not be created: %1"
msgstr ""
-#: share/html/Dashboards/Modify.html:147 share/html/Dashboards/Queries.html:149
#. ($msg)
+#: share/html/Dashboards/Modify.html:147
+#: share/html/Dashboards/Queries.html:149
msgid "Dashboard could not be updated: %1"
msgstr ""
-#: share/html/Dashboards/Modify.html:144 share/html/Dashboards/Queries.html:146
+#: share/html/Dashboards/Modify.html:144
+#: share/html/Dashboards/Queries.html:146
msgid "Dashboard updated"
msgstr ""
-#: sbin/rt-email-dashboards:247
#. () || "RT [_2] Dashboard: [_1]"), $dashboard->Name, ucfirst($subscription->SubValue('Frequency')),)
+#: sbin/rt-email-dashboards:247
msgid "DashboardSubject"
msgstr ""
@@ -2228,7 +2420,9 @@
msgid "Date format"
msgstr ""
-#: share/html/SelfService/Display.html:63 share/html/Ticket/Create.html:210 share/html/Ticket/Elements/ShowSummary:93 share/html/Ticket/Elements/Tabs:131 share/html/Ticket/ModifyAll.html:68
+#: share/html/SelfService/Display.html:63 share/html/Ticket/Create.html:210
+#: share/html/Ticket/Elements/ShowSummary:93
+#: share/html/Ticket/Elements/Tabs:131 share/html/Ticket/ModifyAll.html:68
msgid "Dates"
msgstr "Date"
@@ -2284,13 +2478,13 @@
msgid "Default transaction template"
msgstr "Modello di default per la transazione"
-#: share/html/Widgets/Form/Integer:71 share/html/Widgets/Form/String:69
#. ($DefaultValue)
+#: share/html/Widgets/Form/Integer:71 share/html/Widgets/Form/String:69
msgid "Default: %1"
msgstr ""
-#: lib/RT/Transaction_Overlay.pm:605
#. ($type, $self->Field, ( $self->OldValue ? "'" . $self->OldValue . "'" : $self->loc("(no value)") ), "'" . $self->NewValue . "'")
+#: lib/RT/Transaction_Overlay.pm:605
msgid "Default: %1/%2 changed from %3 to %4"
msgstr "Default: %1/%2 modificato da %3 a %4"
@@ -2310,7 +2504,11 @@
msgid "Delegation"
msgstr "Delega"
-#: share/html/Admin/Elements/EditScrips:73 share/html/Search/Elements/EditFormat:99 share/html/Search/Elements/EditQuery:61 share/html/Search/Elements/EditSearches:63 share/html/Widgets/SelectionBox:212
+#: share/html/Admin/Elements/EditScrips:73
+#: share/html/Search/Elements/EditFormat:99
+#: share/html/Search/Elements/EditQuery:61
+#: share/html/Search/Elements/EditSearches:63
+#: share/html/Widgets/SelectionBox:212
msgid "Delete"
msgstr "Cancella"
@@ -2318,8 +2516,8 @@
msgid "Delete Template"
msgstr "Cancella modello"
-#: lib/RT/SharedSetting.pm:231
#. ($msg)
+#: lib/RT/SharedSetting.pm:231
msgid "Delete failed: %1"
msgstr "Cancellazione fallita: %1"
@@ -2333,14 +2531,14 @@
#: share/html/Search/Bulk.html:167
msgid "Delete values"
-msgstr ""
+msgstr "Cancella valori"
#: lib/RT/Queue_Overlay.pm:114
msgid "DeleteTicket"
msgstr "CancellaTicket"
-#: lib/RT/SharedSetting.pm:229
#. ($self->ObjectName)
+#: lib/RT/SharedSetting.pm:229
msgid "Deleted %1"
msgstr ""
@@ -2354,11 +2552,13 @@
#: NOT FOUND IN SOURCE
msgid "Deleting this object could break referential integrity"
-msgstr "La cancellazione di quest'oggetto può danneggiare l'integrità referenziale"
+msgstr ""
+"La cancellazione di quest'oggetto può danneggiare l'integrità referenziale"
#: lib/RT/Queue_Overlay.pm:378
msgid "Deleting this object would break referential integrity"
-msgstr "La cancellazione di quest'oggetto danneggerebbe l'integrità referenziale"
+msgstr ""
+"La cancellazione di quest'oggetto danneggerebbe l'integrità referenziale"
#: lib/RT/User_Overlay.pm:414
msgid "Deleting this object would violate referential integrity"
@@ -2370,13 +2570,18 @@
#: NOT FOUND IN SOURCE
msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "La cancellazione di quest'oggetto violerebbe l'integrità referenziale. Ciò è male!"
+msgstr ""
+"La cancellazione di quest'oggetto violerebbe l'integrità referenziale. Ciò è "
+"male!"
#: share/html/Approvals/Elements/Approve:75
msgid "Deny"
msgstr "Nega"
-#: share/html/Elements/EditLinks:141 share/html/Elements/EditLinks:64 share/html/Elements/ShowLinks:80 share/html/Ticket/Create.html:231 share/html/Ticket/Elements/BulkLinks:58 share/html/Ticket/Elements/ShowDependencies:55
+#: share/html/Elements/EditLinks:141 share/html/Elements/EditLinks:64
+#: share/html/Elements/ShowLinks:80 share/html/Ticket/Create.html:231
+#: share/html/Ticket/Elements/BulkLinks:58
+#: share/html/Ticket/Elements/ShowDependencies:55
msgid "Depended on by"
msgstr "È una dipendenza per"
@@ -2388,27 +2593,30 @@
msgid "Dependencies: \\n"
msgstr "Dipendenze: \\n"
-#: lib/RT/Transaction_Overlay.pm:707
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:707
msgid "Dependency by %1 added"
msgstr "Aggiunta dipendenza da parte di %1"
-#: lib/RT/Transaction_Overlay.pm:747
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:747
msgid "Dependency by %1 deleted"
msgstr "Cancellata dipendenza da parte di %1"
-#: lib/RT/Transaction_Overlay.pm:704
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:704
msgid "Dependency on %1 added"
msgstr "Aggiunta dipendenza da %1"
-#: lib/RT/Transaction_Overlay.pm:744
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:744
msgid "Dependency on %1 deleted"
msgstr "Cancellata dipendenza da %1"
-#: share/html/Elements/EditLinks:137 share/html/Elements/EditLinks:55 share/html/Elements/SelectLinkType:50 share/html/Elements/ShowLinks:50 share/html/Ticket/Create.html:230 share/html/Ticket/Elements/BulkLinks:54 share/html/Ticket/Elements/ShowDependencies:48
+#: share/html/Elements/EditLinks:137 share/html/Elements/EditLinks:55
+#: share/html/Elements/SelectLinkType:50 share/html/Elements/ShowLinks:50
+#: share/html/Ticket/Create.html:230 share/html/Ticket/Elements/BulkLinks:54
+#: share/html/Ticket/Elements/ShowDependencies:48
msgid "Depends on"
msgstr "Dipende da"
@@ -2428,7 +2636,16 @@
msgid "Describe the issue below"
msgstr "Descrivi il problema qui sotto"
-#: share/html/Admin/CustomFields/Modify.html:64 share/html/Admin/Elements/AddCustomFieldValue:55 share/html/Admin/Elements/EditCustomField:62 share/html/Admin/Elements/EditCustomFieldValues:59 share/html/Admin/Elements/EditScrip:57 share/html/Admin/Elements/ModifyTemplate:59 share/html/Admin/Groups/Modify.html:73 share/html/Admin/Queues/Modify.html:66 share/html/Search/Elements/EditSearches:55 share/html/User/Groups/Modify.html:72
+#: share/html/Admin/CustomFields/Modify.html:64
+#: share/html/Admin/Elements/AddCustomFieldValue:55
+#: share/html/Admin/Elements/EditCustomField:62
+#: share/html/Admin/Elements/EditCustomFieldValues:59
+#: share/html/Admin/Elements/EditScrip:57
+#: share/html/Admin/Elements/ModifyTemplate:59
+#: share/html/Admin/Groups/Modify.html:73
+#: share/html/Admin/Queues/Modify.html:66
+#: share/html/Search/Elements/EditSearches:55
+#: share/html/User/Groups/Modify.html:72
msgid "Description"
msgstr "Descrizione"
@@ -2440,7 +2657,8 @@
msgid "Disabled"
msgstr ""
-#: share/html/Search/Elements/EditFormat:68 share/html/Ticket/Elements/Tabs:117
+#: share/html/Search/Elements/EditFormat:68
+#: share/html/Ticket/Elements/Tabs:117
msgid "Display"
msgstr "Visualizza"
@@ -2473,8 +2691,12 @@
msgstr "Visualizza il ticket n°%1"
#: share/html/Elements/Footer:64
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Distribuito in accordo con la versione 2 della <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU GPL</a>."
+msgid ""
+"Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html"
+"\"> of the GNU GPL.</a>"
+msgstr ""
+"Distribuito in accordo con la versione 2 della <a href=\"http://www.gnu.org/"
+"copyleft/gpl.html\">GNU GPL</a>."
#: lib/RT/System.pm:79
msgid "Do anything and everything"
@@ -2498,13 +2720,16 @@
#: share/html/Ticket/Elements/ShowTransactionAttachments:61
msgid "Download"
-msgstr "Download"
+msgstr "Visualizza"
#: share/html/Admin/Groups/index.html:73 share/html/Admin/Users/index.html:74
msgid "Download as a tab-delimited file"
msgstr "Scarica come file separato da TAB"
-#: lib/RT/Ticket_Overlay.pm:909 share/html/Elements/SelectDateType:55 share/html/Ticket/Create.html:216 share/html/Ticket/Elements/EditDates:68 share/html/Ticket/Elements/Reminders:140 share/html/Ticket/Elements/ShowDates:66
+#: lib/RT/Ticket_Overlay.pm:909 share/html/Elements/SelectDateType:55
+#: share/html/Ticket/Create.html:216 share/html/Ticket/Elements/EditDates:68
+#: share/html/Ticket/Elements/Reminders:140
+#: share/html/Ticket/Elements/ShowDates:66
msgid "Due"
msgstr "Scadenza"
@@ -2524,7 +2749,8 @@
msgid "Ecnrypt/Decrypt"
msgstr ""
-#: share/html/Elements/Quicksearch:50 share/html/Elements/ShowSearch:51 share/html/index.html:132
+#: share/html/Elements/Quicksearch:50 share/html/Elements/ShowSearch:51
+#: share/html/index.html:132
msgid "Edit"
msgstr "Modifica"
@@ -2534,10 +2760,12 @@
#: share/html/Search/Bulk.html:162
msgid "Edit Custom Fields"
-msgstr ""
+msgstr "Modifica campi personalizzati"
-#: share/html/Admin/Elements/ObjectCustomFields:94 share/html/Admin/Queues/CustomFields.html:66 share/html/Admin/Users/CustomFields.html:66
#. ($Object->Name)
+#: share/html/Admin/Elements/ObjectCustomFields:94
+#: share/html/Admin/Queues/CustomFields.html:66
+#: share/html/Admin/Users/CustomFields.html:66
msgid "Edit Custom Fields for %1"
msgstr "Modifica i campi personalizzati per %1"
@@ -2553,13 +2781,16 @@
msgid "Edit Custom Fields for all users"
msgstr "Modifica i campi personalizzati per tutti gli utenti"
-#: share/html/Admin/Global/CustomFields/Queue-Tickets.html:56 share/html/Admin/Global/CustomFields/Queue-Transactions.html:56
+#: share/html/Admin/Global/CustomFields/Queue-Tickets.html:56
+#: share/html/Admin/Global/CustomFields/Queue-Transactions.html:56
msgid "Edit Custom Fields for tickets in all queues"
msgstr "Modifica i campi personalizzati per tutte le code"
#: NOT FOUND IN SOURCE
msgid "Edit Custom Fields for transactions on tickets in all queues"
-msgstr "Modifica i campi personalizzati per le transazioni sui ticket in tutte le code"
+msgstr ""
+"Modifica i campi personalizzati per le transazioni sui ticket in tutte le "
+"code"
#: share/html/Search/Bulk.html:197 share/html/Ticket/ModifyLinks.html:62
msgid "Edit Links"
@@ -2571,10 +2802,10 @@
#: share/html/Ticket/Elements/Tabs:264
msgid "Edit Search"
-msgstr ""
+msgstr "Modifica ricerca"
-#: share/html/Admin/Queues/Templates.html:65
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/Templates.html:65
msgid "Edit Templates for queue %1"
msgstr "Modifica i modelli per la coda %1"
@@ -2606,8 +2837,8 @@
msgid "Editable text"
msgstr ""
-#: share/html/Admin/Queues/Modify.html:152
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/Modify.html:152
msgid "Editing Configuration for queue %1"
msgstr "Modifica della configurazione per la coda %1"
@@ -2615,19 +2846,20 @@
msgid "Editing Configuration for user %1"
msgstr "Modifica della configurazione per l'utente %1"
-#: share/html/Admin/CustomFields/Modify.html:154 share/html/Admin/Elements/EditCustomField:122
#. ($CustomFieldObj->Name())
#. ($CustomFieldObj->Name)
+#: share/html/Admin/CustomFields/Modify.html:154
+#: share/html/Admin/Elements/EditCustomField:122
msgid "Editing CustomField %1"
msgstr "Modifica del campo personalizzato %1"
-#: share/html/Admin/Groups/Members.html:57
#. ($Group->Name)
+#: share/html/Admin/Groups/Members.html:57
msgid "Editing membership for group %1"
msgstr "Modifica degli appartenenti al gruppo %1"
-#: share/html/User/Groups/Members.html:152
#. ($Group->Name)
+#: share/html/User/Groups/Members.html:152
msgid "Editing membership for personal group %1"
msgstr "Modifica degli appartenenti al gruppo personale %1"
@@ -2635,11 +2867,13 @@
msgid "Editing template %1"
msgstr "Modifica del modello %1"
-#: lib/RT/Record.pm:1222 lib/RT/Record.pm:1299 lib/RT/Ticket_Overlay.pm:2230 lib/RT/Ticket_Overlay.pm:2325
+#: lib/RT/Record.pm:1222 lib/RT/Record.pm:1299 lib/RT/Ticket_Overlay.pm:2230
+#: lib/RT/Ticket_Overlay.pm:2325
msgid "Either base or target must be specified"
msgstr "È necessario specificare base o target"
-#: share/html/Admin/Users/Modify.html:76 share/html/Ticket/Elements/AddWatchers:79 share/html/User/Prefs.html:67
+#: share/html/Admin/Users/Modify.html:76
+#: share/html/Ticket/Elements/AddWatchers:79 share/html/User/Prefs.html:67
msgid "Email"
msgstr "Email"
@@ -2671,11 +2905,15 @@
msgid "Enabled"
msgstr ""
-#: share/html/Admin/CustomFields/Modify.html:113 share/html/Admin/Elements/EditCustomField:74
+#: share/html/Admin/CustomFields/Modify.html:113
+#: share/html/Admin/Elements/EditCustomField:74
msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Abilitato (togliere il segno di spunta per disabilitare questo campo personalizzato)"
+msgstr ""
+"Abilitato (togliere il segno di spunta per disabilitare questo campo "
+"personalizzato)"
-#: share/html/Admin/Groups/Modify.html:89 share/html/User/Groups/Modify.html:76
+#: share/html/Admin/Groups/Modify.html:89
+#: share/html/User/Groups/Modify.html:76
msgid "Enabled (Unchecking this box disables this group)"
msgstr "Abilitato (togliere il segno di spunta per disabilitare questo gruppo)"
@@ -2691,8 +2929,10 @@
msgid "Enabled Queues"
msgstr "Code abilitate"
-#: share/html/Admin/Elements/EditCustomField:138 share/html/Admin/Users/Modify.html:356 share/html/User/Groups/Modify.html:140
#. (loc_fuzzy($msg))
+#: share/html/Admin/Elements/EditCustomField:138
+#: share/html/Admin/Users/Modify.html:356
+#: share/html/User/Groups/Modify.html:140
msgid "Enabled status %1"
msgstr "Stato %1 abilitato"
@@ -2700,7 +2940,8 @@
msgid "Enabled status: %1"
msgstr "Stato abilitato: %1"
-#: share/html/Elements/GnuPG/SignEncryptWidget:53 share/html/Ticket/GnuPG.html:62
+#: share/html/Elements/GnuPG/SignEncryptWidget:53
+#: share/html/Ticket/GnuPG.html:62
msgid "Encrypt"
msgstr ""
@@ -2708,8 +2949,8 @@
msgid "Encrypt by default"
msgstr ""
-#: share/html/Ticket/GnuPG.html:103
#. ($id, $txn->Ticket)
+#: share/html/Ticket/GnuPG.html:103
msgid "Encrypt/Decrypt transaction #%1 of ticket #%2"
msgstr ""
@@ -2730,8 +2971,11 @@
msgstr ""
#: share/html/Elements/EditLinks:127
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Inserire, separati da spazio, gli oggetti (o URI di oggetti) da collegare."
+msgid ""
+"Enter objects or URIs to link objects to. Separate multiple entries with "
+"spaces."
+msgstr ""
+"Inserire, separati da spazio, gli oggetti (o URI di oggetti) da collegare."
#: lib/RT/CustomField_Overlay.pm:66
msgid "Enter one value"
@@ -2742,15 +2986,21 @@
msgstr ""
#: share/html/Elements/EditLinks:124
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
+msgid ""
+"Enter queues or URIs to link queues to. Separate multiple entries with "
+"spaces."
msgstr "Inserire, separati da spazio, le code (o URI di code) da collegare."
#: share/html/Elements/EditLinks:120 share/html/Search/Bulk.html:198
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
+msgid ""
+"Enter tickets or URIs to link tickets to. Separate multiple entries with "
+"spaces."
msgstr "Inserire, separati da spazio, i ticket (o URI di ticket) da collegare."
#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
+msgid ""
+"Enter tickets or URIs to link tickets to. Seperate multiple entries with "
+"spaces."
msgstr "Inserire, separati da spazio, i ticket (o URI di ticket) da collegare."
#: lib/RT/CustomField_Overlay.pm:67
@@ -2761,7 +3011,8 @@
msgid "Enter up to %1 values with autocompletion"
msgstr ""
-#: sbin/rt-email-digest:80 share/html/Elements/Login:78 share/html/SelfService/Error.html:48 share/html/SelfService/Error.html:49
+#: sbin/rt-email-digest:80 share/html/Elements/Login:78
+#: share/html/SelfService/Error.html:48 share/html/SelfService/Error.html:49
msgid "Error"
msgstr "Errore"
@@ -2850,11 +3101,13 @@
msgstr ""
#: etc/initialdata:98
-msgid "Extract tags from a Transaction's subject and add them to the Ticket's subject."
+msgid ""
+"Extract tags from a Transaction's subject and add them to the Ticket's "
+"subject."
msgstr ""
-#: lib/RT/SharedSetting.pm:185
#. ($self->ObjectName)
+#: lib/RT/SharedSetting.pm:185
msgid "Failed to create %1 attribute"
msgstr ""
@@ -2870,18 +3123,18 @@
msgid "Failed to find 'Unprivileged' users pseudogroup"
msgstr "Impossibile trovare il pseudogruppo di utenti 'Non Privilegiato'."
-#: lib/RT/SharedSetting.pm:131
#. ($id)
+#: lib/RT/SharedSetting.pm:131
msgid "Failed to load attribute %1"
msgstr ""
-#: bin/rt-crontool:256
#. ($modname, $@)
+#: bin/rt-crontool:256
msgid "Failed to load module %1. (%2)"
msgstr "Errore nel caricamento del modulo %1. (%2)"
-#: lib/RT/SharedSetting.pm:164
#. ($privacy)
+#: lib/RT/SharedSetting.pm:164
msgid "Failed to load object for %1"
msgstr "Impossibile caricare un oggetto per %1"
@@ -2929,9 +3182,10 @@
msgid "Fill in one wikitext area"
msgstr "Testo WIKI singolo"
-#: share/html/Admin/CustomFields/Modify.html:105 share/html/Admin/CustomFields/Modify.html:97
+#: share/html/Admin/CustomFields/Modify.html:105
+#: share/html/Admin/CustomFields/Modify.html:97
msgid "Fill in this field with a URL."
-msgstr ""
+msgstr "Riempi questo campo con un URL."
#: lib/RT/CustomField_Overlay.pm:72
msgid "Fill in up to %1 text areas"
@@ -2945,7 +3199,8 @@
msgid "Fin"
msgstr "Fin"
-#: lib/RT/Tickets_Overlay.pm:1890 share/html/Search/Elements/PickBasics:188 share/html/Ticket/Create.html:188 share/html/Ticket/Elements/EditBasics:103
+#: lib/RT/Tickets_Overlay.pm:1890 share/html/Search/Elements/PickBasics:188
+#: share/html/Ticket/Create.html:188 share/html/Ticket/Elements/EditBasics:103
msgid "Final Priority"
msgstr "Priorità finale"
@@ -2961,7 +3216,9 @@
msgid "Find group whose"
msgstr "Cerca il gruppo in cui"
-#: share/html/Admin/Groups/index.html:82 share/html/Admin/Queues/People.html:84 share/html/Ticket/Elements/EditPeople:57
+#: share/html/Admin/Groups/index.html:82
+#: share/html/Admin/Queues/People.html:84
+#: share/html/Ticket/Elements/EditPeople:57
msgid "Find groups whose"
msgstr "Cerca i gruppi in cui"
@@ -2969,7 +3226,8 @@
msgid "Find new/open tickets"
msgstr "Cerca ticket nuovi/aperti"
-#: share/html/Admin/Queues/People.html:80 share/html/Ticket/Elements/EditPeople:53
+#: share/html/Admin/Queues/People.html:80
+#: share/html/Ticket/Elements/EditPeople:53
msgid "Find people whose"
msgstr "Cerca le persone in cui"
@@ -3005,7 +3263,8 @@
msgid "Format"
msgstr "Opzioni colonna"
-#: etc/initialdata:354 etc/upgrade/3.7.15/content:4 share/html/Ticket/Elements/ShowTransaction:208
+#: etc/initialdata:354 etc/upgrade/3.7.15/content:4
+#: share/html/Ticket/Elements/ShowTransaction:208
msgid "Forward"
msgstr ""
@@ -3029,8 +3288,8 @@
msgid "ForwardMessage"
msgstr ""
-#: share/html/Search/Results.html:146
#. ($ticketcount)
+#: share/html/Search/Results.html:146
msgid "Found %quant(%1,ticket)"
msgstr "Trovati %quant(%1,ticket)"
@@ -3066,7 +3325,8 @@
msgid "Fri."
msgstr "Ven."
-#: share/html/Ticket/Elements/ShowHistory:68 share/html/Ticket/Elements/ShowHistory:74
+#: share/html/Ticket/Elements/ShowHistory:68
+#: share/html/Ticket/Elements/ShowHistory:74
msgid "Full headers"
msgstr "Intestazione completa"
@@ -3082,12 +3342,13 @@
msgid "Getting the current user from a pgp sig\\n"
msgstr "Sto individuando l'utente corrente da una firma pgp\\n"
-#: lib/RT/Transaction_Overlay.pm:673
#. ($New->Name)
+#: lib/RT/Transaction_Overlay.pm:673
msgid "Given to %1"
msgstr "Assegnato a %1"
-#: share/html/Admin/Elements/Tabs:67 share/html/Admin/index.html:78 share/html/Elements/RT__Scrip/ColumnMap:64
+#: share/html/Admin/Elements/Tabs:67 share/html/Admin/index.html:78
+#: share/html/Elements/RT__Scrip/ColumnMap:64
msgid "Global"
msgstr "Globale"
@@ -3107,13 +3368,13 @@
msgid "Global custom field configuration"
msgstr "Configurazione globale campi personalizzati"
-#: share/html/Admin/Global/MyRT.html:95
#. ($pane)
+#: share/html/Admin/Global/MyRT.html:95
msgid "Global portlet %1 saved."
msgstr ""
-#: share/html/Admin/Elements/SelectTemplate:61
#. (loc($Template->Name))
+#: share/html/Admin/Elements/SelectTemplate:61
msgid "Global template: %1"
msgstr "Modello globale: %1"
@@ -3133,13 +3394,13 @@
msgid "GnuPG issues"
msgstr ""
-#: share/html/Admin/Elements/ShowKeyInfo:88
#. ($EmailAddress)
+#: share/html/Admin/Elements/ShowKeyInfo:88
msgid "GnuPG private key(s) for %1"
msgstr ""
-#: share/html/Admin/Elements/ShowKeyInfo:86
#. ($EmailAddress)
+#: share/html/Admin/Elements/ShowKeyInfo:86
msgid "GnuPG public key(s) for %1"
msgstr ""
@@ -3147,7 +3408,14 @@
msgid "Go"
msgstr "Vai"
-#: share/html/Admin/CustomFields/index.html:89 share/html/Admin/Groups/index.html:83 share/html/Admin/Queues/People.html:82 share/html/Admin/Queues/People.html:86 share/html/Admin/Queues/index.html:73 share/html/Admin/Users/index.html:90 share/html/Approvals/index.html:54 share/html/Elements/RefreshHomepage:51 share/html/Ticket/Elements/EditPeople:55 share/html/Ticket/Elements/EditPeople:59 share/html/Tools/Offline.html:90
+#: share/html/Admin/CustomFields/index.html:89
+#: share/html/Admin/Groups/index.html:83
+#: share/html/Admin/Queues/People.html:82
+#: share/html/Admin/Queues/People.html:86
+#: share/html/Admin/Queues/index.html:73 share/html/Admin/Users/index.html:90
+#: share/html/Approvals/index.html:54 share/html/Elements/RefreshHomepage:51
+#: share/html/Ticket/Elements/EditPeople:55
+#: share/html/Ticket/Elements/EditPeople:59 share/html/Tools/Offline.html:90
msgid "Go!"
msgstr "Vai!"
@@ -3159,7 +3427,8 @@
msgid "Goto page"
msgstr "Vai a pagina"
-#: share/html/Elements/GotoTicket:49 share/html/SelfService/Elements/GotoTicket:49
+#: share/html/Elements/GotoTicket:49
+#: share/html/SelfService/Elements/GotoTicket:49
msgid "Goto ticket"
msgstr "Vai al ticket"
@@ -3167,7 +3436,8 @@
msgid "Grand"
msgstr "Grand"
-#: share/html/Ticket/Elements/ShowSummary:99 share/html/Ticket/ModifyLinks.html:61
+#: share/html/Ticket/Elements/ShowSummary:99
+#: share/html/Ticket/ModifyLinks.html:61
msgid "Graph"
msgstr ""
@@ -3179,7 +3449,9 @@
msgid "Graphical charts are not available."
msgstr ""
-#: share/html/Ticket/Elements/AddWatchers:69 share/html/Ticket/Elements/ShowGroupMembers:57 share/html/User/Elements/DelegateRights:101
+#: share/html/Ticket/Elements/AddWatchers:69
+#: share/html/Ticket/Elements/ShowGroupMembers:57
+#: share/html/User/Elements/DelegateRights:101
msgid "Group"
msgstr "Gruppo"
@@ -3187,12 +3459,16 @@
msgid "Group %1 %2: %3"
msgstr "Gruppo %1 %2: %3"
-#: share/html/Admin/Elements/CustomFieldTabs:70 share/html/Admin/Elements/GroupTabs:68 share/html/Admin/Elements/QueueTabs:84 share/html/Admin/Elements/SystemTabs:67 share/html/Admin/Global/index.html:70
+#: share/html/Admin/Elements/CustomFieldTabs:70
+#: share/html/Admin/Elements/GroupTabs:68
+#: share/html/Admin/Elements/QueueTabs:84
+#: share/html/Admin/Elements/SystemTabs:67
+#: share/html/Admin/Global/index.html:70
msgid "Group Rights"
msgstr "Diritti di gruppo"
-#: lib/RT/Group_Overlay.pm:979
#. ($new_member_obj->Object->Name)
+#: lib/RT/Group_Overlay.pm:979
msgid "Group already has member: %1"
msgstr "Appartiene già al gruppo: %1"
@@ -3200,8 +3476,8 @@
msgid "Group could not be created."
msgstr "Impossibile creare il gruppo."
-#: share/html/Admin/Groups/Modify.html:115
#. ($create_msg)
+#: share/html/Admin/Groups/Modify.html:115
msgid "Group could not be created: %1"
msgstr "Impossibile creare il gruppo: %1"
@@ -3221,7 +3497,9 @@
msgid "Group has no such member"
msgstr "Non appartiene al gruppo"
-#: lib/RT/Group_Overlay.pm:959 lib/RT/Queue_Overlay.pm:789 lib/RT/Queue_Overlay.pm:864 lib/RT/Ticket_Overlay.pm:1113 lib/RT/Ticket_Overlay.pm:1193
+#: lib/RT/Group_Overlay.pm:959 lib/RT/Queue_Overlay.pm:789
+#: lib/RT/Queue_Overlay.pm:864 lib/RT/Ticket_Overlay.pm:1113
+#: lib/RT/Ticket_Overlay.pm:1193
msgid "Group not found"
msgstr "Gruppo non trovato"
@@ -3233,13 +3511,21 @@
msgid "Group not specified.\\n"
msgstr "Gruppo non specificato.\\n"
-#: lib/RT/CustomField_Overlay.pm:1103 share/html/Admin/Elements/GlobalCustomFieldTabs:63 share/html/Admin/Elements/SelectNewGroupMembers:60 share/html/Admin/Elements/Tabs:58 share/html/Admin/Global/CustomFields/index.html:71 share/html/Admin/Groups/Members.html:87 share/html/Admin/Queues/People.html:108 share/html/Admin/index.html:63 share/html/User/Groups/Members.html:90
+#: lib/RT/CustomField_Overlay.pm:1103
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:63
+#: share/html/Admin/Elements/SelectNewGroupMembers:60
+#: share/html/Admin/Elements/Tabs:58
+#: share/html/Admin/Global/CustomFields/index.html:71
+#: share/html/Admin/Groups/Members.html:87
+#: share/html/Admin/Queues/People.html:108 share/html/Admin/index.html:63
+#: share/html/User/Groups/Members.html:90
msgid "Groups"
msgstr "Gruppi"
#: lib/RT/Group_Overlay.pm:985
msgid "Groups can't be members of their members"
-msgstr "I gruppi non possono appartenere a gruppi che sono già loro appartenenti"
+msgstr ""
+"I gruppi non possono appartenere a gruppi che sono già loro appartenenti"
#: share/html/Admin/Groups/index.html:96
msgid "Groups matching search criteria"
@@ -3265,26 +3551,29 @@
msgid "Heading of a forwarded message"
msgstr ""
-#: lib/RT/Interface/CLI.pm:95 lib/RT/Interface/CLI.pm:95
+#: lib/RT/Interface/CLI.pm:95
msgid "Hello!"
msgstr "Ciao!"
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:765
#. ($name)
+#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:765
msgid "Hello, %1"
msgstr "Ciao, %1"
-#: share/html/Admin/Elements/GroupTabs:72 share/html/Admin/Elements/UserTabs:66 share/html/Ticket/Elements/ShowHistory:55 share/html/Ticket/Elements/Tabs:122
+#: share/html/Admin/Elements/GroupTabs:72
+#: share/html/Admin/Elements/UserTabs:66
+#: share/html/Ticket/Elements/ShowHistory:55
+#: share/html/Ticket/Elements/Tabs:122
msgid "History"
msgstr "Cronologia"
-#: share/html/Admin/Groups/History.html:64
#. ($GroupObj->Name)
+#: share/html/Admin/Groups/History.html:64
msgid "History of the group %1"
msgstr "Cronologia del gruppo %1"
-#: share/html/Admin/Users/History.html:64
#. ($UserObj->Name)
+#: share/html/Admin/Users/History.html:64
msgid "History of the user %1"
msgstr "Cronologia dell'utente %1"
@@ -3302,10 +3591,10 @@
#: share/html/Elements/SelectTimeUnits:50
msgid "Hours"
-msgstr ""
+msgstr "Ore"
-#: lib/RT/Base.pm:136
#. (6)
+#: lib/RT/Base.pm:136
msgid "I have %quant(%1,concrete mixer)."
msgstr "Ho %quant(%1,concrete mixer)."
@@ -3326,8 +3615,11 @@
msgstr "Identità"
#: etc/initialdata:490
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Se un'approvazione viene negata, respingi l'originale e elimina le approvazioni accodate"
+msgid ""
+"If an approval is rejected, reject the original and delete pending approvals"
+msgstr ""
+"Se un'approvazione viene negata, respingi l'originale e elimina le "
+"approvazioni accodate"
#: share/html/Tools/Offline.html:75
msgid "If no Requestor is specified, create tickets with this requestor."
@@ -3338,10 +3630,15 @@
msgstr "(per i nuovi ticket in cui non viene specificata una coda)"
#: bin/rt-crontool:317
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Se questo strumento viene ha il flag setgid, un utente locale malintenzionato potrebbe usarlo per ottenere accesso amministrativo a RT."
+msgid ""
+"If this tool were setgid, a hostile local user could use this tool to gain "
+"administrative access to RT."
+msgstr ""
+"Se questo strumento viene ha il flag setgid, un utente locale "
+"malintenzionato potrebbe usarlo per ottenere accesso amministrativo a RT."
-#: share/html/Admin/Queues/People.html:130 share/html/Ticket/Modify.html:65 share/html/Ticket/ModifyAll.html:131 share/html/Ticket/ModifyPeople.html:63
+#: share/html/Admin/Queues/People.html:130 share/html/Ticket/Modify.html:65
+#: share/html/Ticket/ModifyAll.html:131 share/html/Ticket/ModifyPeople.html:63
msgid "If you've updated anything above, be sure to"
msgstr "Se hai aggiornato qualche impostazione, assicurati di premere"
@@ -3398,7 +3695,9 @@
msgstr ""
#: etc/initialdata:364 etc/upgrade/3.7.10/content:6
-msgid "Inform user that he has problems with public key and couldn't recieve encrypted content"
+msgid ""
+"Inform user that he has problems with public key and couldn't recieve "
+"encrypted content"
msgstr ""
#: etc/initialdata:410
@@ -3406,7 +3705,9 @@
msgstr ""
#: etc/initialdata:386 etc/upgrade/3.7.10/content:28
-msgid "Inform user that we received an encrypted email and we have no private keys to decrypt"
+msgid ""
+"Inform user that we received an encrypted email and we have no private keys "
+"to decrypt"
msgstr ""
#: lib/RT/Tickets_Overlay.pm:1865 share/html/Search/Elements/PickBasics:187
@@ -3425,11 +3726,12 @@
msgid "Input error"
msgstr "Errore in input"
-#: lib/RT/CustomField_Overlay.pm:1055 lib/RT/CustomField_Overlay.pm:919 share/html/Elements/ValidateCustomFields:87
#. ($CF->FriendlyPattern)
#. ($self->FriendlyPattern)
+#: lib/RT/CustomField_Overlay.pm:1055 lib/RT/CustomField_Overlay.pm:919
+#: share/html/Elements/ValidateCustomFields:87
msgid "Input must match %1"
-msgstr ""
+msgstr "L'Input deve corrispondere con %1"
#: share/html/Install/Elements/Wrapper:51
msgid "Install RT"
@@ -3443,8 +3745,8 @@
msgid "Internal Error"
msgstr "Errore interno"
-#: lib/RT/Record.pm:294
#. ($id->{error_message})
+#: lib/RT/Record.pm:294
msgid "Internal Error: %1"
msgstr "Errore interno: %1"
@@ -3476,8 +3778,8 @@
msgid "Invalid owner. Defaulting to 'nobody'."
msgstr "Incaricato non valido. Uso il default 'nessuno'."
-#: lib/RT/CustomField_Overlay.pm:206 lib/RT/CustomField_Overlay.pm:580
#. ($msg)
+#: lib/RT/CustomField_Overlay.pm:206 lib/RT/CustomField_Overlay.pm:580
msgid "Invalid pattern: %1"
msgstr ""
@@ -3489,13 +3791,13 @@
msgid "Invalid right"
msgstr "Diritto non valido"
-#: lib/RT/ACE_Overlay.pm:261
#. ($args{'RightName'})
+#: lib/RT/ACE_Overlay.pm:261
msgid "Invalid right. Couldn't canonicalize right '%1'"
msgstr ""
-#: lib/RT/Record.pm:269
#. ($key)
+#: lib/RT/Record.pm:269
msgid "Invalid value for %1"
msgstr "Valore non valido per %1"
@@ -3512,12 +3814,20 @@
msgstr ""
#: bin/rt-crontool:318
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "È estremamente importante che agli utenti non previlegiati non sia consentita l'esecuzione di questo strumento."
+msgid ""
+"It is incredibly important that nonprivileged users not be allowed to run "
+"this tool."
+msgstr ""
+"È estremamente importante che agli utenti non previlegiati non sia "
+"consentita l'esecuzione di questo strumento."
#: bin/rt-crontool:319
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Per eseguire questo strumento, si suggerisce di creare un utente unix non privilegiato appartenente al gruppo corretto e con i necessari diritti in RT."
+msgid ""
+"It is suggested that you create a non-privileged unix user with the correct "
+"group membership and RT access to run this tool."
+msgstr ""
+"Per eseguire questo strumento, si suggerisce di creare un utente unix non "
+"privilegiato appartenente al gruppo corretto e con i necessari diritti in RT."
#: bin/rt-crontool:281
msgid "It takes several arguments:"
@@ -3561,7 +3871,7 @@
#: share/html/Ticket/Elements/Tabs:143
msgid "Jumbo"
-msgstr "Jumbo"
+msgstr "Azioni"
#: lib/RT/Date.pm:93
msgid "Jun"
@@ -3595,7 +3905,8 @@
msgid "Last"
msgstr "Ultimo"
-#: share/html/Ticket/Elements/EditDates:61 share/html/Ticket/Elements/ShowDates:62
+#: share/html/Ticket/Elements/EditDates:61
+#: share/html/Ticket/Elements/ShowDates:62
msgid "Last Contact"
msgstr "Ultima comunicazione a richiedenti"
@@ -3644,7 +3955,9 @@
msgstr ""
#: lib/RT/Config.pm:150
-msgid "Length in characters; Use '0' to show all messages inline, regardless of length"
+msgid ""
+"Length in characters; Use '0' to show all messages inline, regardless of "
+"length"
msgstr ""
#: share/html/Admin/Users/Modify.html:111
@@ -3679,13 +3992,13 @@
msgid "Link could not be created"
msgstr "Il collegamento non può essere creato"
-#: lib/RT/Record.pm:1253
#. ($TransString)
+#: lib/RT/Record.pm:1253
msgid "Link created (%1)"
msgstr "Collegamento creato (%1)"
-#: lib/RT/Record.pm:1314
#. ($TransString)
+#: lib/RT/Record.pm:1314
msgid "Link deleted (%1)"
msgstr "Collegamento cancellato (%1)"
@@ -3693,8 +4006,8 @@
msgid "Link not found"
msgstr "Collegamento non trovato"
-#: share/html/Ticket/ModifyLinks.html:48 share/html/Ticket/ModifyLinks.html:52
#. ($Ticket->Id)
+#: share/html/Ticket/ModifyLinks.html:48 share/html/Ticket/ModifyLinks.html:52
msgid "Link ticket #%1"
msgstr "Collega ticket n°%1"
@@ -3704,7 +4017,7 @@
#: share/html/Admin/CustomFields/Modify.html:93
msgid "Link values to"
-msgstr ""
+msgstr "Collega valori a"
#: NOT FOUND IN SOURCE
msgid "LinkedTo"
@@ -3712,9 +4025,11 @@
#: lib/RT/Ticket_Overlay.pm:604
msgid "Linking. Permission denied"
-msgstr ""
+msgstr "Collegamento. Permesso negato"
-#: share/html/Ticket/Create.html:226 share/html/Ticket/Elements/ShowSummary:100 share/html/Ticket/Elements/Tabs:139 share/html/Ticket/ModifyAll.html:81
+#: share/html/Ticket/Create.html:226
+#: share/html/Ticket/Elements/ShowSummary:100
+#: share/html/Ticket/Elements/Tabs:139 share/html/Ticket/ModifyAll.html:81
msgid "Links"
msgstr "Collegamenti"
@@ -3730,13 +4045,13 @@
msgid "LoadSavedSearch"
msgstr "CaricaRicercheSalvate"
-#: lib/RT/SharedSetting.pm:103
#. ($self->ObjectName, $self->Name)
+#: lib/RT/SharedSetting.pm:103
msgid "Loaded %1 %2"
msgstr ""
-#: share/html/Search/Elements/EditSearches:166
#. ($SavedSearch->{'Description'})
+#: share/html/Search/Elements/EditSearches:166
msgid "Loaded original \"%1\" saved search"
msgstr ""
@@ -3744,8 +4059,8 @@
msgid "Loaded perl modules"
msgstr "Moduli perl caricati"
-#: share/html/Search/Elements/EditSearches:168
#. ($SavedSearch->{'Description'})
+#: share/html/Search/Elements/EditSearches:168
msgid "Loaded saved search \"%1\""
msgstr ""
@@ -3763,18 +4078,23 @@
#: NOT FOUND IN SOURCE
msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Impossibile trovare la directory di log %1 (oppure mancano i permessi di scrittura).\\n RT non può essere eseguito."
+msgstr ""
+"Impossibile trovare la directory di log %1 (oppure mancano i permessi di "
+"scrittura).\\n RT non può essere eseguito."
-#: share/html/Elements/Header:89
#. ("<span>".$session{'CurrentUser'}->Name."</span>")
+#: share/html/Elements/Header:89
msgid "Logged in as %1"
msgstr "Accesso effettuato come %1"
#: share/html/NoAuth/Logout.html:54
+#, fuzzy
msgid "Logged out"
-msgstr ""
+msgstr "Esci"
-#: docs/design_docs/string-extraction-guide.txt:71 lib/RT/StyleGuide.pod:789 share/html/Elements/Login:102 share/html/Elements/Login:70 share/html/Elements/Login:86
+#: docs/design_docs/string-extraction-guide.txt:71 lib/RT/StyleGuide.pod:789
+#: share/html/Elements/Login:102 share/html/Elements/Login:70
+#: share/html/Elements/Login:86
msgid "Login"
msgstr "Accedi"
@@ -3848,7 +4168,8 @@
#: share/html/Admin/index.html:81
msgid "Manage properties and configuration which apply to all queues"
-msgstr "Gestione di proprietà e configurazioni che si applicano a tutte le code"
+msgstr ""
+"Gestione di proprietà e configurazioni che si applicano a tutte le code"
#: share/html/Admin/index.html:70
msgid "Manage queues and queue-specific properties"
@@ -3894,18 +4215,18 @@
msgid "May."
msgstr "Mag."
-#: lib/RT/Transaction_Overlay.pm:720
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:720
msgid "Member %1 added"
msgstr "Aggiunto appartenente %1"
-#: lib/RT/Transaction_Overlay.pm:760
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:760
msgid "Member %1 deleted"
msgstr "Rimosso appartenente %1"
-#: lib/RT/Group_Overlay.pm:996
#. ($new_member_obj->Object->Name)
+#: lib/RT/Group_Overlay.pm:996
msgid "Member added: %1"
msgstr "Aggiunto appartenente: %1"
@@ -3925,17 +4246,18 @@
msgid "MemberOf"
msgstr "AppartenteA"
-#: share/html/Admin/Elements/GroupTabs:65 share/html/User/Elements/GroupTabs:65
+#: share/html/Admin/Elements/GroupTabs:65
+#: share/html/User/Elements/GroupTabs:65
msgid "Members"
msgstr "Appartenenti"
-#: lib/RT/Transaction_Overlay.pm:717
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:717
msgid "Membership in %1 added"
msgstr "Aggiunta appartenenza al gruppo %1"
-#: lib/RT/Transaction_Overlay.pm:757
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:757
msgid "Membership in %1 deleted"
msgstr "Rimossa appartenenza al gruppo %1"
@@ -3943,8 +4265,8 @@
msgid "Memberships"
msgstr "Appartenenza a gruppi"
-#: share/html/Admin/Users/Memberships.html:96
#. ($UserObj->Name)
+#: share/html/Admin/Users/Memberships.html:96
msgid "Memberships of the user %1"
msgstr "Appartenenza a gruppi per l'utente %1"
@@ -3964,8 +4286,8 @@
msgid "Merge into"
msgstr "Unisci a"
-#: lib/RT/Transaction_Overlay.pm:723
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:723
msgid "Merged into %1"
msgstr "Unito a %1"
@@ -3976,6 +4298,8 @@
#: share/html/Ticket/Elements/ShowTransactionAttachments:143
msgid "Message body not shown because it is too large or is not plain text."
msgstr ""
+"Il corpo del messaggio non viene mostrato perchè troppo grande o non in "
+"formato testo."
#: lib/RT/Config.pm:140
msgid "Message box height"
@@ -4007,7 +4331,7 @@
#: share/html/Elements/SelectTimeUnits:49
msgid "Minutes"
-msgstr ""
+msgstr "Minuti"
#: NOT FOUND IN SOURCE
msgid "Mismatched parentheses"
@@ -4033,13 +4357,13 @@
msgid "Modify Custom Field %1"
msgstr "Modifica il campo personalizzato %1"
-#: share/html/Admin/Elements/ObjectCustomFields:98
#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
+#: share/html/Admin/Elements/ObjectCustomFields:98
msgid "Modify Custom Fields which apply to %1 for all %2"
msgstr "Modifica campi personalizzati applicabili a %1 per ogni %2"
-#: share/html/Admin/Elements/ObjectCustomFields:100
#. (loc(lc($Types)))
+#: share/html/Admin/Elements/ObjectCustomFields:100
msgid "Modify Custom Fields which apply to all %1"
msgstr "Modifica i campi personalizzati applicabili a tutti %1"
@@ -4047,11 +4371,14 @@
msgid "Modify Custom Fields which apply to all queues"
msgstr "Modifica i Campi Personalizzati validi per tutte le code"
-#: share/html/Admin/Global/GroupRights.html:108 share/html/Admin/Groups/GroupRights.html:96 share/html/Admin/Queues/GroupRights.html:109
+#: share/html/Admin/Global/GroupRights.html:108
+#: share/html/Admin/Groups/GroupRights.html:96
+#: share/html/Admin/Queues/GroupRights.html:109
msgid "Modify Group Rights"
msgstr "Modifica diritti del gruppo"
-#: share/html/Admin/Groups/Members.html:107 share/html/User/Groups/Members.html:103
+#: share/html/Admin/Groups/Members.html:107
+#: share/html/User/Groups/Members.html:103
msgid "Modify Members"
msgstr "Modifica appartenenti al gruppo"
@@ -4075,12 +4402,14 @@
msgid "Modify Template %1"
msgstr "Modifica il modello %1"
-#: share/html/Admin/Global/UserRights.html:73 share/html/Admin/Groups/UserRights.html:74 share/html/Admin/Queues/UserRights.html:75
+#: share/html/Admin/Global/UserRights.html:73
+#: share/html/Admin/Groups/UserRights.html:74
+#: share/html/Admin/Queues/UserRights.html:75
msgid "Modify User Rights"
msgstr "Modifica diritti utente"
-#: share/html/Admin/Queues/CustomField.html:68
#. ($QueueObj->Name())
+#: share/html/Admin/Queues/CustomField.html:68
msgid "Modify a CustomField for queue %1"
msgstr "Modifica un campo personalizzato per la coda %1"
@@ -4088,8 +4417,8 @@
msgid "Modify a CustomField which applies to all queues"
msgstr "Modifica un campo personalizzato valido per tutte le code"
-#: share/html/Admin/Queues/Scrip.html:84
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/Scrip.html:84
msgid "Modify a scrip for queue %1"
msgstr "Modifica uno scrip per la coda %1"
@@ -4097,8 +4426,8 @@
msgid "Modify a scrip which applies to all queues"
msgstr "Modifica uno scrip valido per tutte le code"
-#: share/html/Admin/CustomFields/Objects.html:92
#. ($CF->Name)
+#: share/html/Admin/CustomFields/Objects.html:92
msgid "Modify associated objects for %1"
msgstr "Modifica oggetti associati a %1"
@@ -4106,13 +4435,13 @@
msgid "Modify dates for # %1"
msgstr "Modifica le date per n° %1"
-#: share/html/Ticket/ModifyDates.html:48 share/html/Ticket/ModifyDates.html:52
#. ($TicketObj->Id)
+#: share/html/Ticket/ModifyDates.html:48 share/html/Ticket/ModifyDates.html:52
msgid "Modify dates for #%1"
msgstr "Modifica le date per n°%1"
-#: share/html/Ticket/ModifyDates.html:60
#. ($TicketObj->Id)
+#: share/html/Ticket/ModifyDates.html:60
msgid "Modify dates for ticket # %1"
msgstr "Modifica le date per il ticket n° %1"
@@ -4120,7 +4449,9 @@
msgid "Modify global custom fields"
msgstr "Modifica campi personalizzati globali"
-#: share/html/Admin/Global/GroupRights.html:48 share/html/Admin/Global/GroupRights.html:51 share/html/Admin/Global/index.html:71
+#: share/html/Admin/Global/GroupRights.html:48
+#: share/html/Admin/Global/GroupRights.html:51
+#: share/html/Admin/Global/index.html:71
msgid "Modify global group rights"
msgstr "Modifica i diritti di gruppo globali"
@@ -4140,7 +4471,9 @@
msgid "Modify global scrips"
msgstr "Modifica gli scrips globali"
-#: share/html/Admin/Global/UserRights.html:48 share/html/Admin/Global/UserRights.html:51 share/html/Admin/Global/index.html:75
+#: share/html/Admin/Global/UserRights.html:48
+#: share/html/Admin/Global/UserRights.html:51
+#: share/html/Admin/Global/index.html:75
msgid "Modify global user rights"
msgstr "Modifica i diritti globali per gli utenti"
@@ -4152,18 +4485,21 @@
msgid "Modify group metadata or delete group"
msgstr "Modifica i metadati del gruppo o elimina un gruppo"
-#: share/html/Admin/CustomFields/GroupRights.html:108
#. ($CustomFieldObj->Name)
+#: share/html/Admin/CustomFields/GroupRights.html:108
msgid "Modify group rights for custom field %1"
msgstr "Modifica i diritti di gruppo per il campo personalizzato %1"
-#: share/html/Admin/Groups/GroupRights.html:48 share/html/Admin/Groups/GroupRights.html:52 share/html/Admin/Groups/GroupRights.html:58
#. ($GroupObj->Name)
+#: share/html/Admin/Groups/GroupRights.html:48
+#: share/html/Admin/Groups/GroupRights.html:52
+#: share/html/Admin/Groups/GroupRights.html:58
msgid "Modify group rights for group %1"
msgstr "Modifica i diritti di gruppo per il gruppo %1"
-#: share/html/Admin/Queues/GroupRights.html:48 share/html/Admin/Queues/GroupRights.html:52
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/GroupRights.html:48
+#: share/html/Admin/Queues/GroupRights.html:52
msgid "Modify group rights for queue %1"
msgstr "Modifica i diritti di gruppo per la coda %1"
@@ -4175,28 +4511,33 @@
msgid "Modify one's own RT account"
msgstr "Modifica il proprio account RT"
-#: share/html/Admin/Queues/People.html:48 share/html/Admin/Queues/People.html:52
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/People.html:48
+#: share/html/Admin/Queues/People.html:52
msgid "Modify people related to queue %1"
msgstr "Modifica le persone collegate alla coda %1"
-#: share/html/Ticket/ModifyPeople.html:48 share/html/Ticket/ModifyPeople.html:52 share/html/Ticket/ModifyPeople.html:60
#. ($Ticket->id)
#. ($Ticket->Id)
+#: share/html/Ticket/ModifyPeople.html:48
+#: share/html/Ticket/ModifyPeople.html:52
+#: share/html/Ticket/ModifyPeople.html:60
msgid "Modify people related to ticket #%1"
msgstr "Modifica le persone collegate al ticket n°%1"
-#: share/html/Admin/Queues/Scrips.html:69
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/Scrips.html:69
msgid "Modify scrips for queue %1"
msgstr "Modifica gli scrips per la coda %1"
-#: share/html/Admin/Global/Scrips.html:67 share/html/Admin/Global/index.html:57
+#: share/html/Admin/Global/Scrips.html:67
+#: share/html/Admin/Global/index.html:57
msgid "Modify scrips which apply to all queues"
msgstr "Modifica gli scrips validi per tutte le code"
-#: share/html/Admin/Global/Template.html:100 share/html/Admin/Queues/Template.html:101
#. (loc($TemplateObj->Name()))
+#: share/html/Admin/Global/Template.html:100
+#: share/html/Admin/Queues/Template.html:101
msgid "Modify template %1"
msgstr "Modifica modello %1"
@@ -4204,22 +4545,23 @@
msgid "Modify templates which apply to all queues"
msgstr "Modifica i modelli validi per tutte le code"
-#: share/html/Dashboards/Modify.html:122
#. ($Dashboard->Name)
+#: share/html/Dashboards/Modify.html:122
msgid "Modify the dashboard %1"
msgstr ""
#: share/html/Admin/Global/index.html:79
msgid "Modify the default \"RT at a glance\" view"
-msgstr ""
+msgstr "Modifca il quadro di insieme di default"
-#: share/html/Admin/Groups/Modify.html:125 share/html/User/Groups/Modify.html:109
#. ($Group->Name)
+#: share/html/Admin/Groups/Modify.html:125
+#: share/html/User/Groups/Modify.html:109
msgid "Modify the group %1"
msgstr "Modifica il gruppo %1"
-#: share/html/Dashboards/Queries.html:88
#. ($Dashboard->Name)
+#: share/html/Dashboards/Queries.html:88
msgid "Modify the queries of dashboard %1"
msgstr ""
@@ -4227,23 +4569,24 @@
msgid "Modify the queue watchers"
msgstr "Modifica gli osservatori della coda"
-#: share/html/Dashboards/Subscription.html:265
#. ($DashboardObj->Name)
+#: share/html/Dashboards/Subscription.html:265
msgid "Modify the subscription to dashboard %1"
msgstr ""
-#: share/html/Admin/Users/Modify.html:315
#. ($UserObj->Name)
+#: share/html/Admin/Users/Modify.html:315
msgid "Modify the user %1"
msgstr "Modifica l'utente %1"
-#: share/html/Ticket/ModifyAll.html:61
#. ($Ticket->Id)
+#: share/html/Ticket/ModifyAll.html:61
msgid "Modify ticket # %1"
msgstr "Modifica il ticket n° %1"
-#: share/html/Ticket/Modify.html:48 share/html/Ticket/Modify.html:51 share/html/Ticket/Modify.html:60
#. ($TicketObj->Id)
+#: share/html/Ticket/Modify.html:48 share/html/Ticket/Modify.html:51
+#: share/html/Ticket/Modify.html:60
msgid "Modify ticket #%1"
msgstr "Modifica il ticket n°%1"
@@ -4251,18 +4594,21 @@
msgid "Modify tickets"
msgstr "Modifica i ticket"
-#: share/html/Admin/CustomFields/UserRights.html:99
#. ($CustomFieldObj->Name)
+#: share/html/Admin/CustomFields/UserRights.html:99
msgid "Modify user rights for custom field %1"
msgstr "Modifica i diritti utente per il il campo personalizzato %1"
-#: share/html/Admin/Groups/UserRights.html:48 share/html/Admin/Groups/UserRights.html:52 share/html/Admin/Groups/UserRights.html:58
#. ($GroupObj->Name)
+#: share/html/Admin/Groups/UserRights.html:48
+#: share/html/Admin/Groups/UserRights.html:52
+#: share/html/Admin/Groups/UserRights.html:58
msgid "Modify user rights for group %1"
msgstr "Modifica i diritti utente per il gruppo %1"
-#: share/html/Admin/Queues/UserRights.html:48 share/html/Admin/Queues/UserRights.html:52
#. ($QueueObj->Name)
+#: share/html/Admin/Queues/UserRights.html:48
+#: share/html/Admin/Queues/UserRights.html:52
msgid "Modify user rights for queue %1"
msgstr "Modifica i diritti utente per la coda %1"
@@ -4314,8 +4660,8 @@
msgid "Mon."
msgstr "Lun."
-#: share/html/Ticket/Elements/ShowRequestor:64
#. ($name)
+#: share/html/Ticket/Elements/ShowRequestor:64
msgid "More about %1"
msgstr "Maggiori informazioni su %1"
@@ -4335,8 +4681,8 @@
msgid "Must specify 'Name' attribute"
msgstr "L'attributo 'name' deve essere specificato"
-#: share/html/SelfService/Elements/MyRequests:82
#. ($friendly_status)
+#: share/html/SelfService/Elements/MyRequests:82
msgid "My %1 tickets"
msgstr "I miei ticket in stato: %1"
@@ -4350,7 +4696,7 @@
#: share/html/Tools/Elements/Tabs:65
msgid "My Day"
-msgstr ""
+msgstr "Giornata"
#: share/html/Approvals/index.html:48 share/html/Approvals/index.html:49
msgid "My approvals"
@@ -4360,7 +4706,9 @@
msgid "My dashboards"
msgstr ""
-#: share/html/Search/Elements/SearchPrivacy:52 share/html/Search/Elements/SelectSearchObject:63 share/html/Search/Elements/SelectSearchesForObjects:56
+#: share/html/Search/Elements/SearchPrivacy:52
+#: share/html/Search/Elements/SelectSearchObject:63
+#: share/html/Search/Elements/SelectSearchesForObjects:56
msgid "My saved searches"
msgstr "Le mie ricerche salvate"
@@ -4368,7 +4716,15 @@
msgid "MySQL"
msgstr ""
-#: share/html/Admin/CustomFields/Modify.html:61 share/html/Admin/Elements/AddCustomFieldValue:54 share/html/Admin/Elements/EditCustomField:57 share/html/Admin/Elements/EditCustomFieldValues:58 share/html/Admin/Elements/ModifyTemplate:51 share/html/Admin/Groups/Modify.html:67 share/html/Dashboards/Elements/ShowDashboards:56 share/html/Dashboards/Modify.html:65 share/html/Search/Bulk.html:165 share/html/User/Groups/Modify.html:67
+#: share/html/Admin/CustomFields/Modify.html:61
+#: share/html/Admin/Elements/AddCustomFieldValue:54
+#: share/html/Admin/Elements/EditCustomField:57
+#: share/html/Admin/Elements/EditCustomFieldValues:58
+#: share/html/Admin/Elements/ModifyTemplate:51
+#: share/html/Admin/Groups/Modify.html:67
+#: share/html/Dashboards/Elements/ShowDashboards:56
+#: share/html/Dashboards/Modify.html:65 share/html/Search/Bulk.html:165
+#: share/html/User/Groups/Modify.html:67
msgid "Name"
msgstr "Nome"
@@ -4408,8 +4764,8 @@
msgid "New Search"
msgstr "Nuova Ricerca"
-#: share/html/Tools/MyDay.html:53
#. ($session{'CurrentUser'}->Name)
+#: share/html/Tools/MyDay.html:53
msgid "New and open tickets for %1"
msgstr ""
@@ -4425,7 +4781,8 @@
msgid "New group"
msgstr "Nuovo gruppo"
-#: share/html/Elements/RT__Ticket/ColumnMap:221 share/html/Ticket/Elements/ShowUpdateStatus:49
+#: share/html/Elements/RT__Ticket/ColumnMap:221
+#: share/html/Ticket/Elements/ShowUpdateStatus:49
msgid "New messages"
msgstr ""
@@ -4443,7 +4800,7 @@
#: share/html/Ticket/Elements/Reminders:120
msgid "New reminder:"
-msgstr ""
+msgstr "Nuovo promemoria"
#: NOT FOUND IN SOURCE
msgid "New request"
@@ -4453,7 +4810,10 @@
msgid "New rights"
msgstr "Nuovi diritti"
-#: share/html/Admin/Global/Scrip.html:65 share/html/Admin/Global/Scrips.html:62 share/html/Admin/Queues/Scrip.html:73 share/html/Admin/Queues/Scrips.html:78
+#: share/html/Admin/Global/Scrip.html:65
+#: share/html/Admin/Global/Scrips.html:62
+#: share/html/Admin/Queues/Scrip.html:73
+#: share/html/Admin/Queues/Scrips.html:78
msgid "New scrip"
msgstr "Nuovo scrip"
@@ -4461,11 +4821,15 @@
msgid "New search"
msgstr "Nuova ricerca"
-#: share/html/Admin/Global/Template.html:80 share/html/Admin/Global/Templates.html:62 share/html/Admin/Queues/Template.html:81 share/html/Admin/Queues/Templates.html:73
+#: share/html/Admin/Global/Template.html:80
+#: share/html/Admin/Global/Templates.html:62
+#: share/html/Admin/Queues/Template.html:81
+#: share/html/Admin/Queues/Templates.html:73
msgid "New template"
msgstr "Nuovo modello"
-#: share/html/SelfService/Elements/Tabs:87 share/html/SelfService/Elements/Tabs:91
+#: share/html/SelfService/Elements/Tabs:87
+#: share/html/SelfService/Elements/Tabs:91
msgid "New ticket"
msgstr "Nuovo ticket"
@@ -4481,7 +4845,8 @@
msgid "New user called"
msgstr "Nuovo utente di nome"
-#: share/html/Admin/Queues/People.html:78 share/html/Ticket/Elements/EditPeople:52
+#: share/html/Admin/Queues/People.html:78
+#: share/html/Ticket/Elements/EditPeople:52
msgid "New watchers"
msgstr "Nuovo osservatore"
@@ -4489,7 +4854,8 @@
msgid "New window setting"
msgstr "Impostazioni nuova finestra"
-#: share/html/Elements/CollectionListPaging:104 share/html/Helpers/CalPopup.html:60 share/html/Ticket/Elements/Tabs:98
+#: share/html/Elements/CollectionListPaging:104
+#: share/html/Helpers/CalPopup.html:60 share/html/Ticket/Elements/Tabs:98
msgid "Next"
msgstr "Seguente"
@@ -4537,12 +4903,13 @@
msgid "Nickname"
msgstr "Nomignolo"
-#: share/html/Elements/RT__Ticket/ColumnMap:223 share/html/Widgets/Form/Boolean:77
+#: share/html/Elements/RT__Ticket/ColumnMap:223
+#: share/html/Widgets/Form/Boolean:77
msgid "No"
msgstr ""
-#: lib/RT/SharedSetting.pm:201
#. ($self->ObjectName)
+#: lib/RT/SharedSetting.pm:201
msgid "No %1 loaded"
msgstr ""
@@ -4550,7 +4917,8 @@
msgid "No Class defined"
msgstr "Nessuna classe definita"
-#: share/html/Admin/CustomFields/Modify.html:153 share/html/Admin/Elements/EditCustomField:121
+#: share/html/Admin/CustomFields/Modify.html:153
+#: share/html/Admin/Elements/EditCustomField:121
msgid "No CustomField"
msgstr "Nessun campo personalizzato"
@@ -4558,7 +4926,8 @@
msgid "No CustomField defined"
msgstr "Nessun campo personalizzato definito"
-#: share/html/Admin/Groups/GroupRights.html:107 share/html/Admin/Groups/UserRights.html:90
+#: share/html/Admin/Groups/GroupRights.html:107
+#: share/html/Admin/Groups/UserRights.html:90
msgid "No Group defined"
msgstr "Nessun gruppo definito"
@@ -4566,7 +4935,8 @@
msgid "No Query"
msgstr "Nessuna query"
-#: share/html/Admin/Queues/GroupRights.html:120 share/html/Admin/Queues/UserRights.html:89
+#: share/html/Admin/Queues/GroupRights.html:120
+#: share/html/Admin/Queues/UserRights.html:89
msgid "No Queue defined"
msgstr "Nessuna coda definita"
@@ -4574,7 +4944,8 @@
msgid "No RT user found. Please consult your RT administrator.\\n"
msgstr "Nessun utente RT trovato. Consulta il tuo amministratore di RT.\\n"
-#: share/html/Admin/Global/Template.html:98 share/html/Admin/Queues/Template.html:99
+#: share/html/Admin/Global/Template.html:98
+#: share/html/Admin/Queues/Template.html:99
msgid "No Template"
msgstr "Nessun Modello"
@@ -4606,8 +4977,9 @@
msgid "No dashboards."
msgstr ""
-#: lib/RT/Action.pm:183 lib/RT/Condition.pm:197 lib/RT/Search.pm:132 lib/RT/Search/ActiveTicketsInQueue.pm:75 lib/RT/Search/Googleish.pm:86
#. (ref $self)
+#: lib/RT/Action.pm:183 lib/RT/Condition.pm:197 lib/RT/Search.pm:132
+#: lib/RT/Search/ActiveTicketsInQueue.pm:75 lib/RT/Search/Googleish.pm:86
msgid "No description for %1"
msgstr "Nessuna descrizione per %1"
@@ -4643,8 +5015,8 @@
msgid "No permission to create queues"
msgstr "Manca il permesso per creare code"
-#: lib/RT/Ticket_Overlay.pm:303 lib/RT/Ticket_Overlay.pm:824
#. ($QueueObj->Name)
+#: lib/RT/Ticket_Overlay.pm:303 lib/RT/Ticket_Overlay.pm:824
msgid "No permission to create tickets in the queue '%1'"
msgstr "Manca il permesso per creare ticket nella coda '%1'"
@@ -4656,14 +5028,14 @@
msgid "No permission to display that ticket"
msgstr "Manca il permesso per visualizzare il ticket"
-#: lib/RT/SharedSetting.pm:168
#. ($self->ObjectName)
+#: lib/RT/SharedSetting.pm:168
msgid "No permission to save system-wide %1"
msgstr ""
#: share/html/Search/Elements/EditSearches:231
msgid "No permission to save system-wide searches"
-msgstr ""
+msgstr "Manca il permesso per salvare ricerche a livello di sistema"
#: lib/RT/User_Overlay.pm:1277
msgid "No permission to set preferences"
@@ -4677,7 +5049,8 @@
msgid "No principal specified"
msgstr "Nessun utente/gruppo specificato"
-#: share/html/Admin/Queues/People.html:179 share/html/Admin/Queues/People.html:189
+#: share/html/Admin/Queues/People.html:179
+#: share/html/Admin/Queues/People.html:189
msgid "No principals selected."
msgstr "Nessun utente/gruppo selezionato."
@@ -4709,7 +5082,8 @@
msgid "No search to operate on."
msgstr "Nessuna ricerca su cui operare."
-#: share/html/Elements/RT__Ticket/ColumnMap:94 share/html/Search/Results.rdf:91
+#: share/html/Elements/RT__Ticket/ColumnMap:94
+#: share/html/Search/Results.rdf:91
msgid "No subject"
msgstr "Senza oggetto"
@@ -4742,8 +5116,12 @@
msgstr "Nessuna utente soddisfa i criteri di ricerca."
#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
+msgid ""
+"No valid RT user found. RT cvs handler disengaged. Please consult your RT "
+"administrator.\\n"
+msgstr ""
+"No valid RT user found. RT cvs handler disengaged. Please consult your RT "
+"administrator.\\n"
#: lib/RT/Record.pm:912
msgid "No value sent to _Set!\\n"
@@ -4763,7 +5141,7 @@
#: share/html/Search/Chart:149 share/html/Search/Elements/Chart:90
msgid "Not Set"
-msgstr ""
+msgstr "Non impostato"
#: lib/RT/CustomField_Overlay.pm:309
msgid "Not found"
@@ -4835,15 +5213,21 @@
#: etc/initialdata:334
msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "invia notifica all'incaricato del ticket che tutte le approvazioni sono state concesse"
+msgstr ""
+"invia notifica all'incaricato del ticket che tutte le approvazioni sono "
+"state concesse"
#: etc/initialdata:322
msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "invia notifica all'incaricato del ticket che alcune approvazioni sono state concesse"
+msgstr ""
+"invia notifica all'incaricato del ticket che alcune approvazioni sono state "
+"concesse"
#: etc/initialdata:303
msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "invia notifica agli incaricati e AdminCc quando è necessario richiedere nuove approvazione"
+msgstr ""
+"invia notifica agli incaricati e AdminCc quando è necessario richiedere "
+"nuove approvazione"
#: etc/initialdata:32
msgid "Notify Requestors"
@@ -4905,9 +5289,10 @@
msgid "Object deleted"
msgstr "Oggetto cancellato"
-#: share/html/Admin/CustomFields/Objects.html:74 share/html/Admin/Elements/ObjectCustomFields:65
#. ($ObjectType)
#. ($LookupType)
+#: share/html/Admin/CustomFields/Objects.html:74
+#: share/html/Admin/Elements/ObjectCustomFields:65
msgid "Object of type %1 cannot take custom fields"
msgstr "Oggetto di tipo %1 non accetta campi personalizzati"
@@ -4939,8 +5324,8 @@
msgid "Offline upload"
msgstr "Upload richiesta offline"
-#: lib/RT/Transaction_Overlay.pm:347
#. ($self->CreatedAsString, $self->CreatorObj->Name)
+#: lib/RT/Transaction_Overlay.pm:347
msgid "On %1, %2 wrote:"
msgstr ""
@@ -4993,22 +5378,23 @@
msgstr ""
#: share/html/Ticket/Elements/UpdateCc:48
+#, fuzzy
msgid "One-time Cc"
-msgstr ""
+msgstr "Rimuovi Cc"
-#: share/html/Approvals/Elements/PendingMyApproval:72
#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter' id='CreatedAfter' />")
+#: share/html/Approvals/Elements/PendingMyApproval:72
msgid "Only show approvals for requests created after %1"
msgstr "Mostra le approvazioni solo per le richieste create dopo il %1"
-#: share/html/Approvals/Elements/PendingMyApproval:70
#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore' id='CreatedBefore' />")
+#: share/html/Approvals/Elements/PendingMyApproval:70
msgid "Only show approvals for requests created before %1"
msgstr "Mostra le approvazioni solo per le richieste create prima del %1"
#: share/html/Admin/CustomFields/index.html:77
msgid "Only show custom fields for:"
-msgstr ""
+msgstr "Mostra campi personalizzati solo per:"
#: NOT FOUND IN SOURCE
msgid "Open"
@@ -5016,7 +5402,7 @@
#: etc/initialdata:94
msgid "Open Tickets"
-msgstr ""
+msgstr "Ticket aperti"
#: share/html/Elements/MakeClicky:58
msgid "Open URL"
@@ -5034,7 +5420,8 @@
msgid "Open ticket"
msgstr "Apri ticket"
-#: share/html/SelfService/Elements/Tabs:78 share/html/SelfService/index.html:48
+#: share/html/SelfService/Elements/Tabs:78
+#: share/html/SelfService/index.html:48
msgid "Open tickets"
msgstr "Ticket aperti"
@@ -5052,7 +5439,7 @@
#: share/html/Prefs/MyRT.html:74
msgid "Options"
-msgstr ""
+msgstr "Opzioni"
#: lib/RT/Installer.pm:69
msgid "Oracle"
@@ -5066,12 +5453,13 @@
msgid "Ordering and sorting"
msgstr "Ordinamento"
-#: lib/RT/Installer.pm:142 share/html/Admin/Users/Modify.html:144 share/html/User/Prefs.html:135
+#: lib/RT/Installer.pm:142 share/html/Admin/Users/Modify.html:144
+#: share/html/User/Prefs.html:135
msgid "Organization"
msgstr "Azienda"
-#: share/html/Approvals/Elements/Approve:55
#. ($approving->Id, $approving->Subject)
+#: share/html/Approvals/Elements/Approve:55
msgid "Originating ticket: #%1"
msgstr "Ticket originario: n°%1"
@@ -5095,17 +5483,24 @@
msgid "OwnTicket"
msgstr "PrendeInCaricoTicket"
-#: lib/RT/ACE_Overlay.pm:99 lib/RT/Tickets_Overlay.pm:2055 share/html/Elements/QuickCreate:58 share/html/Search/Elements/PickBasics:114 share/html/Ticket/Create.html:76 share/html/Ticket/Elements/EditBasics:63 share/html/Ticket/Elements/EditPeople:66 share/html/Ticket/Elements/EditPeople:67 share/html/Ticket/Elements/Reminders:135 share/html/Ticket/Elements/ShowPeople:50 share/html/Ticket/Update.html:70
+#: lib/RT/ACE_Overlay.pm:99 lib/RT/Tickets_Overlay.pm:2055
+#: share/html/Elements/QuickCreate:58
+#: share/html/Search/Elements/PickBasics:114 share/html/Ticket/Create.html:76
+#: share/html/Ticket/Elements/EditBasics:63
+#: share/html/Ticket/Elements/EditPeople:66
+#: share/html/Ticket/Elements/EditPeople:67
+#: share/html/Ticket/Elements/Reminders:135
+#: share/html/Ticket/Elements/ShowPeople:50 share/html/Ticket/Update.html:70
msgid "Owner"
msgstr "Incaricato"
-#: lib/RT/Ticket_Overlay.pm:633
#. ($DeferOwner->Name)
+#: lib/RT/Ticket_Overlay.pm:633
msgid "Owner '%1' does not have rights to own this ticket."
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:2783
#. ($OldOwnerObj->Name, $NewOwnerObj->Name)
+#: lib/RT/Ticket_Overlay.pm:2783
msgid "Owner changed from %1 to %2"
msgstr "Cambiato incaricato da %1 a %2"
@@ -5117,8 +5512,8 @@
msgid "Owner email"
msgstr ""
-#: lib/RT/Transaction_Overlay.pm:661
#. ($Old->Name , $New->Name)
+#: lib/RT/Transaction_Overlay.pm:661
msgid "Owner forcibly changed from %1 to %2"
msgstr "Cambiato forzatamente l'incaricato da %1 a %2"
@@ -5131,8 +5526,9 @@
msgstr "NomeIncaricato"
#: share/html/Elements/CollectionListPaging:63
+#, fuzzy
msgid "Page"
-msgstr ""
+msgstr "Cercapersone"
#: NOT FOUND IN SOURCE
msgid "Page %1 of %2"
@@ -5154,7 +5550,9 @@
msgid "PagerPhone"
msgstr "Cercapersone"
-#: share/html/Elements/EditLinks:145 share/html/Elements/EditLinks:73 share/html/Elements/ShowLinks:90 share/html/Ticket/Create.html:232 share/html/Ticket/Elements/BulkLinks:62
+#: share/html/Elements/EditLinks:145 share/html/Elements/EditLinks:73
+#: share/html/Elements/ShowLinks:90 share/html/Ticket/Create.html:232
+#: share/html/Ticket/Elements/BulkLinks:62
msgid "Parents"
msgstr "DerivaDa"
@@ -5170,27 +5568,27 @@
msgid "Password changed"
msgstr "Password cambiata"
-#: lib/RT/User_Overlay.pm:150 lib/RT/User_Overlay.pm:888
#. (RT->Config->Get('MinimumPasswordLength'))
+#: lib/RT/User_Overlay.pm:150 lib/RT/User_Overlay.pm:888
msgid "Password needs to be at least %1 characters long"
msgstr "La password deve essere lunga almeno %1 caratteri"
#: lib/RT/User_Overlay.pm:895
msgid "Password set"
-msgstr ""
+msgstr "Password impostata"
#: NOT FOUND IN SOURCE
msgid "Password too short"
msgstr "Password troppo corta"
-#: share/html/User/Prefs.html:251
#. (loc_fuzzy($msg))
+#: share/html/User/Prefs.html:251
msgid "Password: %1"
msgstr "Password: %1"
#: lib/RT/User_Overlay.pm:881
msgid "Password: Permission Denied"
-msgstr ""
+msgstr "Password: permesso negato"
#: etc/initialdata:408
msgid "PasswordChange"
@@ -5204,7 +5602,8 @@
msgid "Passwords do not match. Your password has not been changed"
msgstr "Le password non corrispondono. La password non è stata cambiata"
-#: share/html/Ticket/Elements/ShowSummary:64 share/html/Ticket/Elements/Tabs:135 share/html/Ticket/ModifyAll.html:75
+#: share/html/Ticket/Elements/ShowSummary:64
+#: share/html/Ticket/Elements/Tabs:135 share/html/Ticket/ModifyAll.html:75
msgid "People"
msgstr "Persone"
@@ -5216,7 +5615,55 @@
msgid "Perl configuration"
msgstr "Configurazione perl"
-#: lib/RT/ACE_Overlay.pm:247 lib/RT/ACE_Overlay.pm:253 lib/RT/ACE_Overlay.pm:351 lib/RT/ACE_Overlay.pm:361 lib/RT/ACE_Overlay.pm:371 lib/RT/ACE_Overlay.pm:436 lib/RT/Attachment_Overlay.pm:615 lib/RT/Attachment_Overlay.pm:616 lib/RT/Attachment_Overlay.pm:677 lib/RT/Attachment_Overlay.pm:678 lib/RT/Attribute_Overlay.pm:161 lib/RT/Attribute_Overlay.pm:167 lib/RT/Attribute_Overlay.pm:376 lib/RT/Attribute_Overlay.pm:385 lib/RT/Attribute_Overlay.pm:398 lib/RT/CurrentUser.pm:137 lib/RT/CurrentUser.pm:143 lib/RT/CurrentUser.pm:149 lib/RT/CustomFieldValue_Overlay.pm:83 lib/RT/CustomField_Overlay.pm:1031 lib/RT/CustomField_Overlay.pm:1174 lib/RT/CustomField_Overlay.pm:171 lib/RT/CustomField_Overlay.pm:188 lib/RT/CustomField_Overlay.pm:199 lib/RT/CustomField_Overlay.pm:359 lib/RT/CustomField_Overlay.pm:388 lib/RT/CustomField_Overlay.pm:665 lib/RT/CustomField_Overlay.pm:836 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:915 lib/RT/Group_Overlay.pm:1116 lib/RT/Group_Overlay.pm:1120 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1239 lib/RT/Group_Overlay.pm:1243 lib/RT/Group_Overlay.pm:1249 lib/RT/Group_Overlay.pm:383 lib/RT/Group_Overlay.pm:481 lib/RT/Group_Overlay.pm:559 lib/RT/Group_Overlay.pm:567 lib/RT/Group_Overlay.pm:665 lib/RT/Group_Overlay.pm:669 lib/RT/Group_Overlay.pm:675 lib/RT/Group_Overlay.pm:918 lib/RT/Group_Overlay.pm:922 lib/RT/Group_Overlay.pm:935 lib/RT/Queue_Overlay.pm:1112 lib/RT/Queue_Overlay.pm:142 lib/RT/Queue_Overlay.pm:160 lib/RT/Queue_Overlay.pm:471 lib/RT/Queue_Overlay.pm:497 lib/RT/Queue_Overlay.pm:519 lib/RT/Queue_Overlay.pm:731 lib/RT/Queue_Overlay.pm:877 lib/RT/Queue_Overlay.pm:886 lib/RT/Queue_Overlay.pm:899 lib/RT/Scrip_Overlay.pm:113 lib/RT/Scrip_Overlay.pm:124 lib/RT/Scrip_Overlay.pm:188 lib/RT/Scrip_Overlay.pm:497 lib/RT/Template_Overlay.pm:215 lib/RT/Template_Overlay.pm:224 lib/RT/Template_Overlay.pm:250 lib/RT/Template_Overlay.pm:389 lib/RT/Template_Overlay.pm:99 lib/RT/Ticket_Overlay.pm:1055 lib/RT/Ticket_Overlay.pm:1061 lib/RT/Ticket_Overlay.pm:1068 lib/RT/Ticket_Overlay.pm:1205 lib/RT/Ticket_Overlay.pm:1215 lib/RT/Ticket_Overlay.pm:1229 lib/RT/Ticket_Overlay.pm:1317 lib/RT/Ticket_Overlay.pm:1674 lib/RT/Ticket_Overlay.pm:1828 lib/RT/Ticket_Overlay.pm:1998 lib/RT/Ticket_Overlay.pm:2048 lib/RT/Ticket_Overlay.pm:2237 lib/RT/Ticket_Overlay.pm:2250 lib/RT/Ticket_Overlay.pm:2331 lib/RT/Ticket_Overlay.pm:2344 lib/RT/Ticket_Overlay.pm:2447 lib/RT/Ticket_Overlay.pm:2461 lib/RT/Ticket_Overlay.pm:2690 lib/RT/Ticket_Overlay.pm:2701 lib/RT/Ticket_Overlay.pm:2707 lib/RT/Ticket_Overlay.pm:2905 lib/RT/Ticket_Overlay.pm:2909 lib/RT/Ticket_Overlay.pm:3046 lib/RT/Ticket_Overlay.pm:3198 lib/RT/Transaction_Overlay.pm:524 lib/RT/Transaction_Overlay.pm:548 lib/RT/User_Overlay.pm:1047 lib/RT/User_Overlay.pm:124 lib/RT/User_Overlay.pm:1444 lib/RT/User_Overlay.pm:283 lib/RT/User_Overlay.pm:623 lib/RT/User_Overlay.pm:658 share/html/Ticket/Forward.html:85
+#: lib/RT/ACE_Overlay.pm:247 lib/RT/ACE_Overlay.pm:253
+#: lib/RT/ACE_Overlay.pm:351 lib/RT/ACE_Overlay.pm:361
+#: lib/RT/ACE_Overlay.pm:371 lib/RT/ACE_Overlay.pm:436
+#: lib/RT/Attachment_Overlay.pm:615 lib/RT/Attachment_Overlay.pm:616
+#: lib/RT/Attachment_Overlay.pm:677 lib/RT/Attachment_Overlay.pm:678
+#: lib/RT/Attribute_Overlay.pm:161 lib/RT/Attribute_Overlay.pm:167
+#: lib/RT/Attribute_Overlay.pm:376 lib/RT/Attribute_Overlay.pm:385
+#: lib/RT/Attribute_Overlay.pm:398 lib/RT/CurrentUser.pm:137
+#: lib/RT/CurrentUser.pm:143 lib/RT/CurrentUser.pm:149
+#: lib/RT/CustomFieldValue_Overlay.pm:83 lib/RT/CustomField_Overlay.pm:1031
+#: lib/RT/CustomField_Overlay.pm:1174 lib/RT/CustomField_Overlay.pm:171
+#: lib/RT/CustomField_Overlay.pm:188 lib/RT/CustomField_Overlay.pm:199
+#: lib/RT/CustomField_Overlay.pm:359 lib/RT/CustomField_Overlay.pm:388
+#: lib/RT/CustomField_Overlay.pm:665 lib/RT/CustomField_Overlay.pm:836
+#: lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:915
+#: lib/RT/Group_Overlay.pm:1116 lib/RT/Group_Overlay.pm:1120
+#: lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1239
+#: lib/RT/Group_Overlay.pm:1243 lib/RT/Group_Overlay.pm:1249
+#: lib/RT/Group_Overlay.pm:383 lib/RT/Group_Overlay.pm:481
+#: lib/RT/Group_Overlay.pm:559 lib/RT/Group_Overlay.pm:567
+#: lib/RT/Group_Overlay.pm:665 lib/RT/Group_Overlay.pm:669
+#: lib/RT/Group_Overlay.pm:675 lib/RT/Group_Overlay.pm:918
+#: lib/RT/Group_Overlay.pm:922 lib/RT/Group_Overlay.pm:935
+#: lib/RT/Queue_Overlay.pm:1112 lib/RT/Queue_Overlay.pm:142
+#: lib/RT/Queue_Overlay.pm:160 lib/RT/Queue_Overlay.pm:471
+#: lib/RT/Queue_Overlay.pm:497 lib/RT/Queue_Overlay.pm:519
+#: lib/RT/Queue_Overlay.pm:731 lib/RT/Queue_Overlay.pm:877
+#: lib/RT/Queue_Overlay.pm:886 lib/RT/Queue_Overlay.pm:899
+#: lib/RT/Scrip_Overlay.pm:113 lib/RT/Scrip_Overlay.pm:124
+#: lib/RT/Scrip_Overlay.pm:188 lib/RT/Scrip_Overlay.pm:497
+#: lib/RT/Template_Overlay.pm:215 lib/RT/Template_Overlay.pm:224
+#: lib/RT/Template_Overlay.pm:250 lib/RT/Template_Overlay.pm:389
+#: lib/RT/Template_Overlay.pm:99 lib/RT/Ticket_Overlay.pm:1055
+#: lib/RT/Ticket_Overlay.pm:1061 lib/RT/Ticket_Overlay.pm:1068
+#: lib/RT/Ticket_Overlay.pm:1205 lib/RT/Ticket_Overlay.pm:1215
+#: lib/RT/Ticket_Overlay.pm:1229 lib/RT/Ticket_Overlay.pm:1317
+#: lib/RT/Ticket_Overlay.pm:1674 lib/RT/Ticket_Overlay.pm:1828
+#: lib/RT/Ticket_Overlay.pm:1998 lib/RT/Ticket_Overlay.pm:2048
+#: lib/RT/Ticket_Overlay.pm:2237 lib/RT/Ticket_Overlay.pm:2250
+#: lib/RT/Ticket_Overlay.pm:2331 lib/RT/Ticket_Overlay.pm:2344
+#: lib/RT/Ticket_Overlay.pm:2447 lib/RT/Ticket_Overlay.pm:2461
+#: lib/RT/Ticket_Overlay.pm:2690 lib/RT/Ticket_Overlay.pm:2701
+#: lib/RT/Ticket_Overlay.pm:2707 lib/RT/Ticket_Overlay.pm:2905
+#: lib/RT/Ticket_Overlay.pm:2909 lib/RT/Ticket_Overlay.pm:3046
+#: lib/RT/Ticket_Overlay.pm:3198 lib/RT/Transaction_Overlay.pm:524
+#: lib/RT/Transaction_Overlay.pm:548 lib/RT/User_Overlay.pm:1047
+#: lib/RT/User_Overlay.pm:124 lib/RT/User_Overlay.pm:1444
+#: lib/RT/User_Overlay.pm:283 lib/RT/User_Overlay.pm:623
+#: lib/RT/User_Overlay.pm:658 share/html/Ticket/Forward.html:85
msgid "Permission Denied"
msgstr "Operazione non consentita"
@@ -5248,32 +5695,39 @@
msgid "PostgreSQL"
msgstr ""
-#: share/html/Elements/Header:91 share/html/Elements/Tabs:94 share/html/SelfService/Elements/Tabs:98 share/html/SelfService/Prefs.html:48 share/html/User/Prefs.html:48 share/html/User/Prefs.html:51
+#: share/html/Elements/Header:91 share/html/Elements/Tabs:94
+#: share/html/SelfService/Elements/Tabs:98
+#: share/html/SelfService/Prefs.html:48 share/html/User/Prefs.html:48
+#: share/html/User/Prefs.html:51
msgid "Preferences"
msgstr "Preferenze"
-#: share/html/Admin/Users/MyRT.html:124
#. ($pane, $UserObj->Name)
+#: share/html/Admin/Users/MyRT.html:124
msgid "Preferences %1 for user %2."
-msgstr ""
+msgstr "Preferenze %1 per l'utente %2 ."
-#: share/html/Prefs/MyRT.html:149 share/html/Prefs/MyRT.html:94
#. (loc('summary rows'))
#. ($pane)
+#: share/html/Prefs/MyRT.html:149 share/html/Prefs/MyRT.html:94
msgid "Preferences saved for %1."
-msgstr ""
+msgstr "Preferenze salvate per %1."
-#: share/html/Admin/Users/MyRT.html:83
#. ($UserObj->Name)
+#: share/html/Admin/Users/MyRT.html:83
+#, fuzzy
msgid "Preferences saved for user %2."
-msgstr ""
+msgstr "Preferenze %1 per l'utente %2 ."
-#: share/html/Prefs/MyRT.html:101 share/html/Prefs/Other.html:103 share/html/Prefs/Quicksearch.html:91 share/html/Prefs/Search.html:108 share/html/Prefs/SearchOptions.html:84
+#: share/html/Prefs/MyRT.html:101 share/html/Prefs/Other.html:103
+#: share/html/Prefs/Quicksearch.html:91 share/html/Prefs/Search.html:108
+#: share/html/Prefs/SearchOptions.html:84
+#, fuzzy
msgid "Preferences saved."
-msgstr ""
+msgstr "Preferenze salvate per %1."
-#: share/html/Prefs/Other.html:88
#. (loc_fuzzy($msg))
+#: share/html/Prefs/Other.html:88
msgid "Preferred Key: %1"
msgstr ""
@@ -5313,22 +5767,27 @@
msgid "Pri"
msgstr "Pri"
-#: lib/RT/ACE_Overlay.pm:146 lib/RT/ACE_Overlay.pm:235 lib/RT/ACE_Overlay.pm:340
#. ($args{'PrincipalId'})
+#: lib/RT/ACE_Overlay.pm:146 lib/RT/ACE_Overlay.pm:235
+#: lib/RT/ACE_Overlay.pm:340
msgid "Principal %1 not found."
msgstr "Utente/gruppo %1 not trovato."
#: sbin/rt-email-digest:73
-msgid "Print the resulting digest messages to STDOUT; don't mail them. Do not mark them as sent"
+msgid ""
+"Print the resulting digest messages to STDOUT; don't mail them. Do not mark "
+"them as sent"
msgstr ""
#: sbin/rt-email-digest:75
msgid "Print this message"
msgstr ""
-#: lib/RT/Tickets_Overlay.pm:1839 share/html/Search/Elements/PickBasics:186 share/html/Ticket/Create.html:187 share/html/Ticket/Elements/EditBasics:97 share/html/Ticket/Elements/ShowBasics:76
+#: lib/RT/Tickets_Overlay.pm:1839 share/html/Search/Elements/PickBasics:186
+#: share/html/Ticket/Create.html:187 share/html/Ticket/Elements/EditBasics:97
+#: share/html/Ticket/Elements/ShowBasics:76
msgid "Priority"
-msgstr "Priorità"
+msgstr "Tempo trascorso (gg)"
#: share/html/Admin/Queues/Modify.html:82
msgid "Priority starts at"
@@ -5350,8 +5809,8 @@
msgid "Privileged"
msgstr "Privilegiato"
-#: share/html/Admin/Users/Modify.html:348 share/html/User/Prefs.html:244
#. (loc_fuzzy($msg))
+#: share/html/Admin/Users/Modify.html:348 share/html/User/Prefs.html:244
msgid "Privileged status: %1"
msgstr "Stato previlegiato: %1"
@@ -5360,19 +5819,23 @@
msgstr "Utenti privilegiati"
#: bin/rt-crontool:169
-msgid "Processing without transaction, some conditions and actions may fail. Consider using --transaction argument"
+msgid ""
+"Processing without transaction, some conditions and actions may fail. "
+"Consider using --transaction argument"
msgstr ""
#: lib/RT/Handle.pm:607
msgid "Pseudogroup for internal use"
msgstr "Pseudogruppo per uso interno"
-#: share/html/Ticket/Elements/ShowGnuPGStatus:150
#. ($line->{'Key'})
+#: share/html/Ticket/Elements/ShowGnuPGStatus:150
msgid "Public key '0x%1' is required to verify signature"
msgstr ""
-#: share/html/Dashboards/Elements/Tabs:74 share/html/Dashboards/Queries.html:65 share/html/Dashboards/Subscription.html:72
+#: share/html/Dashboards/Elements/Tabs:74
+#: share/html/Dashboards/Queries.html:65
+#: share/html/Dashboards/Subscription.html:72
msgid "Queries"
msgstr ""
@@ -5386,15 +5849,26 @@
#: share/html/Search/Elements/Chart:103
msgid "Query:"
-msgstr ""
+msgstr "Query:"
-#: lib/RT/Tickets_Overlay.pm:1666 share/html/Elements/QueueSummary:50 share/html/Elements/QuickCreate:56 share/html/Search/Elements/PickBasics:83 share/html/SelfService/Create.html:56 share/html/Ticket/Create.html:66 share/html/Ticket/Elements/EditBasics:59 share/html/Ticket/Elements/ShowBasics:80 share/html/Tools/Reports/CreatedByDates.html:87 share/html/Tools/Reports/ResolvedByDates.html:88 share/html/Tools/Reports/ResolvedByOwner.html:68 share/html/User/Elements/DelegateRights:103
+#: lib/RT/Tickets_Overlay.pm:1666 share/html/Elements/QueueSummary:50
+#: share/html/Elements/QuickCreate:56 share/html/Search/Elements/PickBasics:83
+#: share/html/SelfService/Create.html:56 share/html/Ticket/Create.html:66
+#: share/html/Ticket/Elements/EditBasics:59
+#: share/html/Ticket/Elements/ShowBasics:80
+#: share/html/Tools/Reports/CreatedByDates.html:87
+#: share/html/Tools/Reports/ResolvedByDates.html:88
+#: share/html/Tools/Reports/ResolvedByOwner.html:68
+#: share/html/User/Elements/DelegateRights:103
msgid "Queue"
msgstr "Coda"
-#: share/html/Admin/Queues/CustomField.html:65 share/html/Admin/Queues/Scrip.html:63 share/html/Admin/Queues/Scrips.html:71 share/html/Admin/Queues/Templates.html:67
#. ($Queue)
#. ($id)
+#: share/html/Admin/Queues/CustomField.html:65
+#: share/html/Admin/Queues/Scrip.html:63
+#: share/html/Admin/Queues/Scrips.html:71
+#: share/html/Admin/Queues/Templates.html:67
msgid "Queue %1 not found"
msgstr "Coda %1 non trovata"
@@ -5422,11 +5896,13 @@
msgid "Queue could not be created"
msgstr "Impossibile creare la coda"
-#: share/html/Ticket/Create.html:326 share/html/index.html:91 t/clicky.t:24 t/ticket/link_search.t:17
+#: share/html/Ticket/Create.html:326 share/html/index.html:91 t/clicky.t:24
+#: t/ticket/link_search.t:17
msgid "Queue could not be loaded."
msgstr "Impossibile caricare la coda."
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:368 lib/RT/StyleGuide.pod:801
+#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:368
+#: lib/RT/StyleGuide.pod:801
msgid "Queue created"
msgstr "Coda creata"
@@ -5438,7 +5914,8 @@
msgid "Queue not found"
msgstr "Coda non trovata"
-#: share/html/Elements/GnuPG/SelectKeyForSigning:50 share/html/Elements/GnuPG/SelectKeyForSigning:54
+#: share/html/Elements/GnuPG/SelectKeyForSigning:50
+#: share/html/Elements/GnuPG/SelectKeyForSigning:54
msgid "Queue's key"
msgstr ""
@@ -5446,19 +5923,23 @@
msgid "QueueName"
msgstr "NomeCoda"
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:69 share/html/Admin/Elements/Tabs:61 share/html/Admin/Global/CustomFields/index.html:77 share/html/Admin/index.html:68
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:69
+#: share/html/Admin/Elements/Tabs:61
+#: share/html/Admin/Global/CustomFields/index.html:77
+#: share/html/Admin/index.html:68
msgid "Queues"
msgstr "Code"
#: share/html/Elements/MyAdminQueues:48
msgid "Queues I administer"
-msgstr ""
+msgstr "Le mie code"
#: share/html/Elements/MySupportQueues:48
msgid "Queues I'm an AdminCc for"
-msgstr ""
+msgstr "Le code per cui sono AdminCc"
-#: share/html/Elements/Quicksearch:49 share/html/Prefs/Elements/Tabs:59 share/html/Prefs/Quicksearch.html:72
+#: share/html/Elements/Quicksearch:49 share/html/Prefs/Elements/Tabs:59
+#: share/html/Prefs/Quicksearch.html:72
msgid "Quick search"
msgstr "Ricerca veloce"
@@ -5474,14 +5955,18 @@
msgid "RT %1"
msgstr "RT %1"
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:788
#. ($RT::VERSION, RT->Config->Get('rtname'))
+#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:788
msgid "RT %1 for %2"
msgstr "RT %1 per %2"
#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 da <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
+msgid ""
+"RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, "
+"LLC</a>."
+msgstr ""
+"RT %1 da <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</"
+"a>."
#: NOT FOUND IN SOURCE
msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
@@ -5489,7 +5974,8 @@
#: NOT FOUND IN SOURCE
msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
+msgstr ""
+"RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
#: share/html/Admin/index.html:48 share/html/Admin/index.html:49
msgid "RT Administration"
@@ -5531,7 +6017,8 @@
msgid "RT Recieved mail (%1) from itself."
msgstr "RT ha ricevuto email (%1) da se stesso."
-#: share/html/SelfService/Elements/Tabs:72 share/html/SelfService/Elements/Tabs:74
+#: share/html/SelfService/Elements/Tabs:72
+#: share/html/SelfService/Elements/Tabs:74
msgid "RT Self Service"
msgstr ""
@@ -5543,22 +6030,33 @@
msgid "RT Variables"
msgstr "Variabili RT"
-#: lib/RT/Config.pm:112 share/html/Admin/Elements/SystemTabs:73 share/html/Admin/Elements/UserTabs:69 share/html/Admin/Global/MyRT.html:48 share/html/Admin/Global/MyRT.html:51 share/html/Admin/Global/MyRT.html:59 share/html/Admin/Global/index.html:78 share/html/Admin/Users/MyRT.html:68 share/html/Prefs/MyRT.html:67 share/html/Prefs/MyRT.html:84 share/html/User/Elements/Tabs:73 share/html/index.html:6 share/html/index.html:80
+#: lib/RT/Config.pm:112 share/html/Admin/Elements/SystemTabs:73
+#: share/html/Admin/Elements/UserTabs:69 share/html/Admin/Global/MyRT.html:48
+#: share/html/Admin/Global/MyRT.html:51 share/html/Admin/Global/MyRT.html:59
+#: share/html/Admin/Global/index.html:78 share/html/Admin/Users/MyRT.html:68
+#: share/html/Prefs/MyRT.html:67 share/html/Prefs/MyRT.html:84
+#: share/html/User/Elements/Tabs:73 share/html/index.html:6
+#: share/html/index.html:80
msgid "RT at a glance"
-msgstr "Quadro d'insieme"
+msgstr "Quadro di insieme"
-#: share/html/Admin/Users/MyRT.html:79
#. ($UserObj->Name)
+#: share/html/Admin/Users/MyRT.html:79
msgid "RT at a glance for the user %1"
-msgstr ""
+msgstr "Quadro di insieme per l'utente %1"
#: share/html/Admin/CustomFields/Modify.html:104
-msgid "RT can include content from another web service when showing this custom field."
+msgid ""
+"RT can include content from another web service when showing this custom "
+"field."
msgstr ""
#: share/html/Admin/CustomFields/Modify.html:96
-msgid "RT can make this custom field's values into hyperlinks to another service."
+msgid ""
+"RT can make this custom field's values into hyperlinks to another service."
msgstr ""
+"E' possibile creare questo valore del campo personalizzato come un "
+"collegamento ad un altro servizio"
#: NOT FOUND IN SOURCE
msgid "RT couldn't authenticate you"
@@ -5566,7 +6064,8 @@
#: NOT FOUND IN SOURCE
msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT non è riuscito a trovare il richiedente consultando in database esterno"
+msgstr ""
+"RT non è riuscito a trovare il richiedente consultando in database esterno"
#: NOT FOUND IN SOURCE
msgid "RT couldn't find the queue: %1"
@@ -5580,8 +6079,8 @@
msgid "RT couldn't validate this PGP signature. \\n"
msgstr "RT non può verificare questa firma PGP. \\n"
-#: share/html/Elements/Logo:54
#. (RT->Config->Get('rtname'))
+#: share/html/Elements/Logo:54
msgid "RT for %1"
msgstr "RT / %1"
@@ -5594,12 +6093,24 @@
msgstr "RT ha eseguito i comandi"
#: NOT FOUND IN SOURCE
-msgid "RT is © Copyright 1996-%1 Jesse Vincent <jesse at bestpractical.com>. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT is © Copyright 1996-%1 Jesse Vincent <jesse at bestpractical.com>. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versione 2 della GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is © Copyright 1996-2002 Jesse Vincent <jesse at bestpractical.com>. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT is © Copyright 1996-2002 Jesse Vincent <jesse at bestpractical.com>. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versione 2 della GNU General Public License.</a>"
+msgid ""
+"RT is © Copyright 1996-%1 Jesse Vincent <jesse at bestpractical."
+"com>. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl."
+"html\">Version 2 of the GNU General Public License.</a>"
+msgstr ""
+"RT is © Copyright 1996-%1 Jesse Vincent <jesse at bestpractical."
+"com>. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/"
+"gpl.html\">Versione 2 della GNU General Public License.</a>"
+
+#: NOT FOUND IN SOURCE
+msgid ""
+"RT is © Copyright 1996-2002 Jesse Vincent <jesse at bestpractical."
+"com>. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl."
+"html\">Version 2 of the GNU General Public License.</a>"
+msgstr ""
+"RT is © Copyright 1996-2002 Jesse Vincent <jesse at bestpractical."
+"com>. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/"
+"gpl.html\">Versione 2 della GNU General Public License.</a>"
#: NOT FOUND IN SOURCE
msgid "RT thinks this message may be a bounce"
@@ -5608,18 +6119,26 @@
#: share/html/Search/Simple.html:62
msgid "RT will look for anything else you enter in ticket subjects."
msgstr ""
+"Il sistema cercherà qualunque altra cosa inserita nel soggetto dei ticket"
#: NOT FOUND IN SOURCE
msgid "RT will process this message as if it were unsigned.\\n"
msgstr "RT will process this message as if it were unsigned.\\n"
-#: share/html/Admin/CustomFields/Modify.html:106 share/html/Admin/CustomFields/Modify.html:98
-msgid "RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record id and custom field value, respectively"
+#: share/html/Admin/CustomFields/Modify.html:106
+#: share/html/Admin/CustomFields/Modify.html:98
+msgid ""
+"RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record "
+"id and custom field value, respectively"
msgstr ""
#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
+msgid ""
+"RT's email command mode requires PGP authentication. Either you didn't sign "
+"your message, or your signature could not be verified."
+msgstr ""
+"RT's email command mode requires PGP authentication. Either you didn't sign "
+"your message, or your signature could not be verified."
#: share/html/Admin/Users/Modify.html:81 share/html/User/Prefs.html:71
msgid "Real Name"
@@ -5633,27 +6152,29 @@
msgid "Record all updates"
msgstr ""
-#: lib/RT/Transaction_Overlay.pm:714
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:714
msgid "Reference by %1 added"
msgstr "Aggiunto riferimento da %1"
-#: lib/RT/Transaction_Overlay.pm:754
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:754
msgid "Reference by %1 deleted"
msgstr "Cancellato riferimento da %1"
-#: lib/RT/Transaction_Overlay.pm:711
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:711
msgid "Reference to %1 added"
msgstr "Aggiunto riferimento a %1"
-#: lib/RT/Transaction_Overlay.pm:751
#. ($value)
+#: lib/RT/Transaction_Overlay.pm:751
msgid "Reference to %1 deleted"
msgstr "Cancellato riferimento a %1"
-#: share/html/Elements/EditLinks:100 share/html/Elements/EditLinks:157 share/html/Elements/ShowLinks:114 share/html/Ticket/Create.html:235 share/html/Ticket/Elements/BulkLinks:74
+#: share/html/Elements/EditLinks:100 share/html/Elements/EditLinks:157
+#: share/html/Elements/ShowLinks:114 share/html/Ticket/Create.html:235
+#: share/html/Ticket/Elements/BulkLinks:74
msgid "Referred to by"
msgstr "È un riferimento per"
@@ -5661,7 +6182,9 @@
msgid "ReferredToBy"
msgstr "RiferimentoPer"
-#: share/html/Elements/EditLinks:153 share/html/Elements/EditLinks:91 share/html/Elements/SelectLinkType:51 share/html/Elements/ShowLinks:104 share/html/Ticket/Create.html:234 share/html/Ticket/Elements/BulkLinks:70
+#: share/html/Elements/EditLinks:153 share/html/Elements/EditLinks:91
+#: share/html/Elements/SelectLinkType:51 share/html/Elements/ShowLinks:104
+#: share/html/Ticket/Create.html:234 share/html/Ticket/Elements/BulkLinks:70
msgid "Refers to"
msgstr "Fa riferimento a"
@@ -5678,42 +6201,45 @@
msgstr "Rifinisci la ricerca"
#: share/html/Elements/RefreshHomepage:48
+#, fuzzy
msgid "Refresh"
-msgstr ""
+msgstr "FaRiferimentoA"
-#: share/html/Elements/Refresh:59
#. ($value/60)
+#: share/html/Elements/Refresh:59
msgid "Refresh this page every %1 minutes."
msgstr "Aggiorna questa pagina ogni %1 minuti."
-#: lib/RT/Transaction_Overlay.pm:800
#. ($ticket->Subject)
+#: lib/RT/Transaction_Overlay.pm:800
msgid "Reminder '%1' added"
-msgstr ""
+msgstr "Promemoria '%1' aggiunto"
-#: lib/RT/Transaction_Overlay.pm:813
#. ($ticket->Subject)
+#: lib/RT/Transaction_Overlay.pm:813
msgid "Reminder '%1' completed"
-msgstr ""
+msgstr "Promemoria '%1' completato"
-#: lib/RT/Transaction_Overlay.pm:806
#. ($ticket->Subject)
+#: lib/RT/Transaction_Overlay.pm:806
msgid "Reminder '%1' reopened"
-msgstr ""
+msgstr "Promemoria '%1' riaperto"
-#: share/html/Ticket/Reminders.html:48
#. ($Ticket->Id)
+#: share/html/Ticket/Reminders.html:48
msgid "Reminder ticket #%1"
-msgstr ""
+msgstr "Promemoria ticket #%1"
-#: share/html/Elements/MyReminders:50 share/html/Ticket/Elements/ShowSummary:78 share/html/Ticket/Elements/Tabs:151 share/html/Ticket/Reminders.html:57
+#: share/html/Elements/MyReminders:50
+#: share/html/Ticket/Elements/ShowSummary:78
+#: share/html/Ticket/Elements/Tabs:151 share/html/Ticket/Reminders.html:57
msgid "Reminders"
-msgstr ""
+msgstr "Promemoria"
-#: share/html/Ticket/Reminders.html:52
#. ($Ticket->Id)
+#: share/html/Ticket/Reminders.html:52
msgid "Reminders for ticket #%1"
-msgstr ""
+msgstr "Promemoria per ticket #%1"
#: share/html/Search/Bulk.html:99
msgid "Remove AdminCc"
@@ -5731,7 +6257,8 @@
msgid "Remove Requestor"
msgstr "Rimuovi richiedente"
-#: share/html/Ticket/Elements/ShowTransaction:191 share/html/Ticket/Elements/Tabs:172
+#: share/html/Ticket/Elements/ShowTransaction:191
+#: share/html/Ticket/Elements/Tabs:172
msgid "Reply"
msgstr "Risposta"
@@ -5739,7 +6266,8 @@
msgid "Reply Address"
msgstr "Indirizzo a cui indirizzare le risposte"
-#: share/html/Search/Bulk.html:134 share/html/Ticket/ModifyAll.html:97 share/html/Ticket/Update.html:92
+#: share/html/Search/Bulk.html:134 share/html/Ticket/ModifyAll.html:97
+#: share/html/Ticket/Update.html:92
msgid "Reply to requestors"
msgstr "Rispondi ai richiedenti"
@@ -5751,9 +6279,10 @@
msgid "ReplyToTicket"
msgstr "RispondiAlTicket"
-#: share/html/Tools/Elements/Tabs:61 share/html/Tools/Reports/index.html:48 share/html/Tools/Reports/index.html:49
+#: share/html/Tools/Elements/Tabs:61 share/html/Tools/Reports/index.html:48
+#: share/html/Tools/Reports/index.html:49
msgid "Reports"
-msgstr ""
+msgstr "Rapporti"
#: lib/RT/ACE_Overlay.pm:100
msgid "Requestor"
@@ -5771,7 +6300,9 @@
msgid "RequestorAddresses"
msgstr "IndirizzoRichiedente"
-#: share/html/SelfService/Create.html:65 share/html/Ticket/Create.html:84 share/html/Ticket/Elements/EditPeople:71 share/html/Ticket/Elements/ShowPeople:54
+#: share/html/SelfService/Create.html:65 share/html/Ticket/Create.html:84
+#: share/html/Ticket/Elements/EditPeople:71
+#: share/html/Ticket/Elements/ShowPeople:54
msgid "Requestors"
msgstr "Richiedenti"
@@ -5779,8 +6310,8 @@
msgid "Requests should be due in"
msgstr "Le richieste devono essere soddisfatte entro"
-#: lib/RT/Attribute_Overlay.pm:149
#. ('Object')
+#: lib/RT/Attribute_Overlay.pm:149
msgid "Required parameter '%1' not specified"
msgstr "Il parametro obbligatorio '%1' non è stato specificato"
@@ -5794,7 +6325,7 @@
#: share/html/Admin/Users/MyRT.html:62 share/html/Prefs/MyRT.html:60
msgid "Reset to default"
-msgstr ""
+msgstr "Reimposta ai valori di default"
#: share/html/Admin/Users/Modify.html:186 share/html/User/Prefs.html:90
msgid "Residence"
@@ -5804,30 +6335,31 @@
msgid "Resolve"
msgstr "Risolvi"
-#: share/html/Ticket/Update.html:178
#. ($TicketObj->id, $TicketObj->Subject)
+#: share/html/Ticket/Update.html:178
msgid "Resolve ticket #%1 (%2)"
msgstr "Risolvi il ticket n°%1 (%2)"
-#: etc/initialdata:292 lib/RT/Ticket_Overlay.pm:908 share/html/Elements/SelectDateType:51
+#: etc/initialdata:292 lib/RT/Ticket_Overlay.pm:908
+#: share/html/Elements/SelectDateType:51
msgid "Resolved"
msgstr "Risolto"
#: share/html/Tools/Reports/Elements/Tabs:57
msgid "Resolved by owner"
-msgstr ""
+msgstr "Risolto per proprietario"
#: share/html/Tools/Reports/Elements/Tabs:61
msgid "Resolved in date range"
-msgstr ""
+msgstr "Risolto in un periodo temporale"
#: share/html/Tools/Reports/ResolvedByDates.html:54
msgid "Resolved tickets in period, grouped by owner"
-msgstr ""
+msgstr "Ticket risolti in un periodo temporale, raggruppati per proprietario"
#: share/html/Tools/Reports/ResolvedByOwner.html:52
msgid "Resolved tickets, grouped by owner"
-msgstr ""
+msgstr "Ticket risolti, raggruppati per proprietario"
#: NOT FOUND IN SOURCE
msgid "ResolvedRelative"
@@ -5837,7 +6369,8 @@
msgid "Response to requestors"
msgstr "Risposta ai richiedenti"
-#: share/html/Elements/ListActions:49 share/html/Search/Elements/NewListActions:48
+#: share/html/Elements/ListActions:49
+#: share/html/Search/Elements/NewListActions:48
msgid "Results"
msgstr "Risultati"
@@ -5893,8 +6426,8 @@
msgid "Rights"
msgstr "Diritti"
-#: lib/RT/Interface/Web.pm:831
#. ($object_type)
+#: lib/RT/Interface/Web.pm:831
msgid "Rights could not be granted for %1"
msgstr "I diritti per %1 non possono essere concessi"
@@ -5902,7 +6435,8 @@
msgid "Rights could not be revoked for %1"
msgstr "I diritti per %1 non possono essere revocati"
-#: share/html/Admin/Global/GroupRights.html:74 share/html/Admin/Queues/GroupRights.html:76
+#: share/html/Admin/Global/GroupRights.html:74
+#: share/html/Admin/Queues/GroupRights.html:76
msgid "Roles"
msgstr "Ruoli"
@@ -5934,11 +6468,26 @@
msgid "Sat."
msgstr "Sab."
-#: share/html/Prefs/MyRT.html:78 share/html/Prefs/Quicksearch.html:66 share/html/Prefs/Search.html:71 share/html/Search/Elements/EditSearches:72 share/html/Widgets/SelectionBox:222
+#: share/html/Prefs/MyRT.html:78 share/html/Prefs/Quicksearch.html:66
+#: share/html/Prefs/Search.html:71 share/html/Search/Elements/EditSearches:72
+#: share/html/Widgets/SelectionBox:222
msgid "Save"
msgstr "Salva"
-#: share/html/Admin/CustomFields/Modify.html:126 share/html/Admin/Groups/Modify.html:94 share/html/Admin/Queues/Modify.html:127 share/html/Admin/Queues/People.html:130 share/html/Admin/Users/GnuPG.html:75 share/html/Admin/Users/Modify.html:243 share/html/Dashboards/Modify.html:75 share/html/Dashboards/Subscription.html:156 share/html/Prefs/Other.html:77 share/html/Prefs/Quicksearch.html:66 share/html/Prefs/Search.html:71 share/html/Prefs/SearchOptions.html:65 share/html/SelfService/Prefs.html:60 share/html/Ticket/Elements/PreviewScrips:94 share/html/Ticket/Modify.html:65 share/html/Ticket/ModifyAll.html:130 share/html/Ticket/ModifyDates.html:63 share/html/Ticket/ModifyLinks.html:65 share/html/Ticket/ModifyPeople.html:63 share/html/User/Groups/Modify.html:79
+#: share/html/Admin/CustomFields/Modify.html:126
+#: share/html/Admin/Groups/Modify.html:94
+#: share/html/Admin/Queues/Modify.html:127
+#: share/html/Admin/Queues/People.html:130
+#: share/html/Admin/Users/GnuPG.html:75 share/html/Admin/Users/Modify.html:243
+#: share/html/Dashboards/Modify.html:75
+#: share/html/Dashboards/Subscription.html:156 share/html/Prefs/Other.html:77
+#: share/html/Prefs/Quicksearch.html:66 share/html/Prefs/Search.html:71
+#: share/html/Prefs/SearchOptions.html:65 share/html/SelfService/Prefs.html:60
+#: share/html/Ticket/Elements/PreviewScrips:94
+#: share/html/Ticket/Modify.html:65 share/html/Ticket/ModifyAll.html:130
+#: share/html/Ticket/ModifyDates.html:63 share/html/Ticket/ModifyLinks.html:65
+#: share/html/Ticket/ModifyPeople.html:63
+#: share/html/User/Groups/Modify.html:79
msgid "Save Changes"
msgstr "Salva modifiche"
@@ -5954,8 +6503,8 @@
msgid "Save changes"
msgstr "Salva modifiche"
-#: lib/RT/SharedSetting.pm:181
#. ($self->ObjectName, $name)
+#: lib/RT/SharedSetting.pm:181
msgid "Saved %1 %2"
msgstr ""
@@ -5963,13 +6512,15 @@
msgid "Saved search %1"
msgstr "Ricerca %1 salvata"
-#: share/html/Search/Elements/EditSearches:135 share/html/Widgets/SavedSearch:159
+#: share/html/Search/Elements/EditSearches:135
+#: share/html/Widgets/SavedSearch:159
msgid "Saved searches"
msgstr "Ricerche salvate"
-#: share/html/Admin/Global/Scrip.html:79 share/html/Admin/Queues/Scrip.html:86 share/html/Ticket/Elements/PreviewScrips:65
#. ($scrip->id)
#. ($id)
+#: share/html/Admin/Global/Scrip.html:79 share/html/Admin/Queues/Scrip.html:86
+#: share/html/Ticket/Elements/PreviewScrips:65
msgid "Scrip #%1"
msgstr "Scrip n°%1"
@@ -5985,7 +6536,9 @@
msgid "Scrip deleted"
msgstr "Scrip eliminato"
-#: share/html/Admin/Elements/QueueTabs:69 share/html/Admin/Elements/SystemTabs:56 share/html/Admin/Global/index.html:56
+#: share/html/Admin/Elements/QueueTabs:69
+#: share/html/Admin/Elements/SystemTabs:56
+#: share/html/Admin/Global/index.html:56
msgid "Scrips"
msgstr "Scrips"
@@ -6001,7 +6554,8 @@
msgid "Scrips which apply to all queues"
msgstr "Scrips che si applicano a tutte le code"
-#: share/html/Admin/Tools/Shredder/index.html:67 share/html/Elements/SimpleSearch:50 share/html/Search/Simple.html:67
+#: share/html/Admin/Tools/Shredder/index.html:67
+#: share/html/Elements/SimpleSearch:50 share/html/Search/Simple.html:67
msgid "Search"
msgstr "Ricerca"
@@ -6009,9 +6563,10 @@
msgid "Search Criteria"
msgstr "Criteri di ricerca"
-#: share/html/Prefs/SearchOptions.html:48 share/html/Prefs/SearchOptions.html:51
+#: share/html/Prefs/SearchOptions.html:48
+#: share/html/Prefs/SearchOptions.html:51
msgid "Search Preferences"
-msgstr ""
+msgstr "Preferenze per la ricerca"
#: NOT FOUND IN SOURCE
msgid "Search attribute load failure"
@@ -6023,28 +6578,42 @@
#: share/html/Search/Simple.html:77
msgid "Search for tickets"
-msgstr ""
+msgstr "Ricerca ticket"
#: share/html/Search/Simple.html:59
-msgid "Search for tickets. Enter <strong>id</strong> numbers, <strong>queues</strong> by name, Owners by <strong>username</strong> and Requestors by <strong>email address</strong>."
-msgstr ""
+#, fuzzy
+msgid ""
+"Search for tickets. Enter <strong>id</strong> numbers, <strong>queues</"
+"strong> by name, Owners by <strong>username</strong> and Requestors by "
+"<strong>email address</strong>."
+msgstr ""
+"Ricerca di ticket. Inserire l'<strong>id</strong>, il nome della "
+"<strong>coda</strong>, lo <strong>username</strong> del proprietario e "
+"l'<strong>indirizzo email</strong> del richiedente. Il sistema cercherà ogni "
+"altra cosa inserita nel corpo e negli allegati del ticket."
#: share/html/User/Elements/Tabs:70
msgid "Search options"
-msgstr ""
+msgstr "Opzioni di ricerca"
-#: share/html/Search/Chart.html:58
#. ($PrimaryGroupBy)
+#: share/html/Search/Chart.html:58
msgid "Search results grouped by %1"
-msgstr ""
+msgstr "Risultati della ricerca ordinati per %1"
#: NOT FOUND IN SOURCE
msgid "Search update: %1"
msgstr "Aggiornamento della ricerca: %1"
#: share/html/Search/Simple.html:61
-msgid "Searching the full text of every ticket can take a long time, but if you need to do it, you can search for any word in full ticket history for any word by typing <b>fulltext:<i>word</i></b>."
-msgstr ""
+msgid ""
+"Searching the full text of every ticket can take a long time, but if you "
+"need to do it, you can search for any word in full ticket history for any "
+"word by typing <b>fulltext:<i>word</i></b>."
+msgstr ""
+"E' possibile effettuare ricerche a testo libero per ogni parola nella storia "
+"completa del ticket scrivendo <b>fulltext:<i>parola</i></b>. Attenzione la "
+"ricerca a testo libero può richiedere molto tempo."
#: share/html/User/Prefs.html:180
msgid "Secret authentication token"
@@ -6056,7 +6625,7 @@
#: share/html/Elements/ShowCustomFields:101
msgid "See also:"
-msgstr ""
+msgstr "Vedi anche:"
#: lib/RT/CustomField_Overlay.pm:112
msgid "See custom fields"
@@ -6086,11 +6655,15 @@
msgid "SeeQueue"
msgstr "VediCoda"
-#: share/html/Admin/Elements/CustomFieldTabs:92 share/html/Admin/Elements/GroupTabs:77 share/html/Admin/Elements/QueueTabs:94 share/html/Admin/Elements/UserTabs:83
+#: share/html/Admin/Elements/CustomFieldTabs:92
+#: share/html/Admin/Elements/GroupTabs:77
+#: share/html/Admin/Elements/QueueTabs:94
+#: share/html/Admin/Elements/UserTabs:83
msgid "Select"
msgstr "Seleziona"
-#: share/html/Admin/CustomFields/index.html:48 share/html/Admin/CustomFields/index.html:51
+#: share/html/Admin/CustomFields/index.html:48
+#: share/html/Admin/CustomFields/index.html:51
msgid "Select a Custom Field"
msgstr "Scegli un campo personalizzato"
@@ -6106,7 +6679,8 @@
msgid "Select a queue for your new ticket"
msgstr "Scegli una coda per il nuovo ticket"
-#: share/html/Admin/Users/index.html:48 share/html/Admin/Users/index.html:51 share/html/Admin/Users/index.html:54
+#: share/html/Admin/Users/index.html:48 share/html/Admin/Users/index.html:51
+#: share/html/Admin/Users/index.html:54
msgid "Select a user"
msgstr "Seleziona un utente"
@@ -6114,25 +6688,32 @@
msgid "Select custom field"
msgstr "Seleziona un campo personalizzato"
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:70 share/html/Admin/Global/CustomFields/index.html:78
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:70
+#: share/html/Admin/Global/CustomFields/index.html:78
msgid "Select custom fields for all queues"
msgstr ""
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:64 share/html/Admin/Global/CustomFields/index.html:72
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:64
+#: share/html/Admin/Global/CustomFields/index.html:72
msgid "Select custom fields for all user groups"
msgstr "Seleziona i campi personalizzati per tutti i gruppi degli utenti"
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:58 share/html/Admin/Global/CustomFields/index.html:67
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:58
+#: share/html/Admin/Global/CustomFields/index.html:67
msgid "Select custom fields for all users"
msgstr "Seleziona i campi personalizzati per tutti gli utenti"
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:76 share/html/Admin/Global/CustomFields/index.html:84
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:76
+#: share/html/Admin/Global/CustomFields/index.html:84
msgid "Select custom fields for tickets in all queues"
msgstr "Seleziona i campi personalizzati per i ticket in tutte le code"
-#: share/html/Admin/Elements/GlobalCustomFieldTabs:82 share/html/Admin/Global/CustomFields/index.html:91
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:82
+#: share/html/Admin/Global/CustomFields/index.html:91
msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Seleziona i campi personalizzati per le transazioni relative ai ticket in tutte le code"
+msgstr ""
+"Seleziona i campi personalizzati per le transazioni relative ai ticket in "
+"tutte le code"
#: share/html/Dashboards/Elements/Tabs:95
msgid "Select dashboard"
@@ -6156,13 +6737,19 @@
#: share/html/Prefs/Quicksearch.html:55
msgid "Select queues to be displayed on the \"RT at a glance\" page"
-msgstr ""
+msgstr "Seleziona le code da visualizzare nella pagina \"Quadro di insieme\""
-#: share/html/Admin/Global/Scrip.html:61 share/html/Admin/Global/Scrips.html:59 share/html/Admin/Queues/Scrip.html:69 share/html/Admin/Queues/Scrips.html:75
+#: share/html/Admin/Global/Scrip.html:61
+#: share/html/Admin/Global/Scrips.html:59
+#: share/html/Admin/Queues/Scrip.html:69
+#: share/html/Admin/Queues/Scrips.html:75
msgid "Select scrip"
msgstr "Seleziona lo scrip"
-#: share/html/Admin/Global/Template.html:77 share/html/Admin/Global/Templates.html:59 share/html/Admin/Queues/Template.html:78 share/html/Admin/Queues/Templates.html:70
+#: share/html/Admin/Global/Template.html:77
+#: share/html/Admin/Global/Templates.html:59
+#: share/html/Admin/Queues/Template.html:78
+#: share/html/Admin/Queues/Templates.html:70
msgid "Select template"
msgstr "Seleziona il modello"
@@ -6192,7 +6779,7 @@
#: share/html/Widgets/SelectionBox:220
msgid "Selections modified. Please save your changes"
-msgstr ""
+msgstr "Selezioni modificate. Per favore salva i tuoi cambiamenti"
#: NOT FOUND IN SOURCE
msgid "Self Service"
@@ -6358,7 +6945,9 @@
msgid "ShowTicketComments"
msgstr "MostraCommentiAlTicket"
-#: share/html/Admin/Elements/ToolTabs:60 share/html/Admin/Tools/Shredder/index.html:78 share/html/Ticket/Elements/Tabs:289
+#: share/html/Admin/Elements/ToolTabs:60
+#: share/html/Admin/Tools/Shredder/index.html:78
+#: share/html/Ticket/Elements/Tabs:289
msgid "Shredder"
msgstr ""
@@ -6396,7 +6985,7 @@
#: share/html/Elements/Tabs.orig:71 share/html/Elements/Tabs:71
msgid "Simple Search"
-msgstr ""
+msgstr "Ricerca Semplice"
#: share/html/Admin/Elements/SelectSingleOrMultiple:49
msgid "Single"
@@ -6419,10 +7008,14 @@
msgstr "Piccolo"
#: share/html/Admin/CustomFields/Modify.html:107
-msgid "Some browsers may only load content from the same domain as your RT server."
+msgid ""
+"Some browsers may only load content from the same domain as your RT server."
msgstr ""
+"Alcuni browser possono solo visualizzare dallo stesso dominio del server su "
+"cui è installato RT"
-#: share/html/Admin/Elements/AddCustomFieldValue:53 share/html/Admin/Elements/EditCustomFieldValues:57
+#: share/html/Admin/Elements/AddCustomFieldValue:53
+#: share/html/Admin/Elements/EditCustomFieldValues:57
msgid "Sort"
msgstr "Ordinamento"
@@ -6462,7 +7055,9 @@
msgid "Start page"
msgstr "Pagina iniziale"
-#: share/html/Elements/SelectDateType:50 share/html/Ticket/Elements/EditDates:55 share/html/Ticket/Elements/ShowDates:58
+#: share/html/Elements/SelectDateType:50
+#: share/html/Ticket/Elements/EditDates:55
+#: share/html/Ticket/Elements/ShowDates:58
msgid "Started"
msgstr "Iniziato"
@@ -6474,7 +7069,9 @@
msgid "StartedRelative"
msgstr "TempoDaInizio"
-#: share/html/Elements/SelectDateType:54 share/html/Ticket/Create.html:215 share/html/Ticket/Elements/EditDates:50 share/html/Ticket/Elements/ShowDates:54
+#: share/html/Elements/SelectDateType:54 share/html/Ticket/Create.html:215
+#: share/html/Ticket/Elements/EditDates:50
+#: share/html/Ticket/Elements/ShowDates:54
msgid "Starts"
msgstr "InizioPrevisto"
@@ -6494,7 +7091,12 @@
msgid "State"
msgstr "Provincia"
-#: lib/RT/Ticket_Overlay.pm:902 lib/RT/Tickets_Overlay.pm:1700 share/html/Search/Elements/PickBasics:97 share/html/SelfService/Update.html:59 share/html/Ticket/Create.html:70 share/html/Ticket/Elements/EditBasics:55 share/html/Ticket/Elements/ShowBasics:54 share/html/Ticket/Update.html:67 share/html/Tools/MyDay.html:67
+#: lib/RT/Ticket_Overlay.pm:902 lib/RT/Tickets_Overlay.pm:1700
+#: share/html/Search/Elements/PickBasics:97
+#: share/html/SelfService/Update.html:59 share/html/Ticket/Create.html:70
+#: share/html/Ticket/Elements/EditBasics:55
+#: share/html/Ticket/Elements/ShowBasics:54 share/html/Ticket/Update.html:67
+#: share/html/Tools/MyDay.html:67
msgid "Status"
msgstr "Stato"
@@ -6502,8 +7104,8 @@
msgid "Status Change"
msgstr "Cambiamento di stato"
-#: lib/RT/Transaction_Overlay.pm:573
#. ("'" . $self->loc( $self->OldValue ) . "'", "'" . $self->loc( $self->NewValue ) . "'")
+#: lib/RT/Transaction_Overlay.pm:573
msgid "Status changed from %1 to %2"
msgstr "Cambiato lo stato da %1 a %2"
@@ -6523,8 +7125,8 @@
msgid "StealTicket"
msgstr "SottraeTicket"
-#: lib/RT/Transaction_Overlay.pm:667
#. ($Old->Name)
+#: lib/RT/Transaction_Overlay.pm:667
msgid "Stolen from %1"
msgstr "Sottratto da %1"
@@ -6536,7 +7138,14 @@
msgid "Style"
msgstr "Stile"
-#: lib/RT/Ticket_Overlay.pm:898 lib/RT/Tickets_Overlay.pm:1782 share/html/Elements/QuickCreate:53 share/html/Elements/SelectAttachmentField:49 share/html/Search/Bulk.html:137 share/html/SelfService/Create.html:81 share/html/SelfService/Update.html:67 share/html/Ticket/Create.html:110 share/html/Ticket/Elements/EditBasics:50 share/html/Ticket/Elements/Reminders:128 share/html/Ticket/Forward.html:64 share/html/Ticket/ModifyAll.html:103 share/html/Ticket/Update.html:96
+#: lib/RT/Ticket_Overlay.pm:898 lib/RT/Tickets_Overlay.pm:1782
+#: share/html/Elements/QuickCreate:53
+#: share/html/Elements/SelectAttachmentField:49
+#: share/html/Search/Bulk.html:137 share/html/SelfService/Create.html:81
+#: share/html/SelfService/Update.html:67 share/html/Ticket/Create.html:110
+#: share/html/Ticket/Elements/EditBasics:50
+#: share/html/Ticket/Elements/Reminders:128 share/html/Ticket/Forward.html:64
+#: share/html/Ticket/ModifyAll.html:103 share/html/Ticket/Update.html:96
msgid "Subject"
msgstr "Oggetto"
@@ -6544,13 +7153,14 @@
msgid "Subject Tag"
msgstr ""
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:807 lib/RT/Transaction_Overlay.pm:689
#. ($self->Data)
+#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:807
+#: lib/RT/Transaction_Overlay.pm:689
msgid "Subject changed to %1"
msgstr "L'oggetto diventa %1"
-#: lib/RT/Queue_Overlay.pm:539
#. ((defined $value && length $value)? $value : $self->loc("(no value)"))
+#: lib/RT/Queue_Overlay.pm:539
msgid "SubjectTag changed to %1"
msgstr ""
@@ -6566,8 +7176,8 @@
msgid "Subscribe"
msgstr ""
-#: share/html/Dashboards/Subscription.html:268
#. ($DashboardObj->Name)
+#: share/html/Dashboards/Subscription.html:268
msgid "Subscribe to dashboard %1"
msgstr ""
@@ -6579,17 +7189,19 @@
msgid "SubscribeDashboard"
msgstr ""
-#: share/html/Dashboards/Subscription.html:254
#. ($DashboardObj->Name)
+#: share/html/Dashboards/Subscription.html:254
msgid "Subscribed to dashboard %1"
msgstr ""
-#: share/html/Dashboards/Elements/ShowDashboards:57 share/html/Dashboards/Elements/Tabs:78 share/html/Dashboards/Subscription.html:97
+#: share/html/Dashboards/Elements/ShowDashboards:57
+#: share/html/Dashboards/Elements/Tabs:78
+#: share/html/Dashboards/Subscription.html:97
msgid "Subscription"
msgstr ""
-#: share/html/Dashboards/Subscription.html:259
#. ($msg)
+#: share/html/Dashboards/Subscription.html:259
msgid "Subscription could not be created: %1"
msgstr ""
@@ -6625,7 +7237,8 @@
msgid "System"
msgstr "Sistema"
-#: share/html/Admin/Elements/ToolTabs:57 share/html/Admin/Tools/Configuration.html:50
+#: share/html/Admin/Elements/ToolTabs:57
+#: share/html/Admin/Tools/Configuration.html:50
msgid "System Configuration"
msgstr "Configurazione del sistema"
@@ -6633,7 +7246,8 @@
msgid "System Default"
msgstr ""
-#: lib/RT/ACE_Overlay.pm:355 lib/RT/Interface/Web.pm:830 share/html/Admin/Elements/SelectRights:108
+#: lib/RT/ACE_Overlay.pm:355 lib/RT/Interface/Web.pm:830
+#: share/html/Admin/Elements/SelectRights:108
msgid "System Error"
msgstr "Errore di sistema"
@@ -6645,8 +7259,8 @@
msgid "System Error. right not granted"
msgstr "Errore di sistema. Diritto non concesso"
-#: lib/RT/Transaction_Overlay.pm:222 lib/RT/Transaction_Overlay.pm:228
#. ($msg)
+#: lib/RT/Transaction_Overlay.pm:222 lib/RT/Transaction_Overlay.pm:228
msgid "System Error: %1"
msgstr "Errore di sistema: %1"
@@ -6658,7 +7272,8 @@
msgid "System error. Right not delegated."
msgstr "Errore di sistema. Diritto non delegato."
-#: lib/RT/ACE_Overlay.pm:152 lib/RT/ACE_Overlay.pm:224 lib/RT/ACE_Overlay.pm:304
+#: lib/RT/ACE_Overlay.pm:152 lib/RT/ACE_Overlay.pm:224
+#: lib/RT/ACE_Overlay.pm:304
msgid "System error. Right not granted."
msgstr "Errore di sistema. Diritto non concesso."
@@ -6666,7 +7281,10 @@
msgid "System error. Unable to grant rights."
msgstr "Errore di sistema. Impossibile concedere i diritti."
-#: share/html/Admin/CustomFields/GroupRights.html:60 share/html/Admin/Global/GroupRights.html:58 share/html/Admin/Groups/GroupRights.html:60 share/html/Admin/Queues/GroupRights.html:59
+#: share/html/Admin/CustomFields/GroupRights.html:60
+#: share/html/Admin/Global/GroupRights.html:58
+#: share/html/Admin/Groups/GroupRights.html:60
+#: share/html/Admin/Queues/GroupRights.html:59
msgid "System groups"
msgstr "Gruppi di sistema"
@@ -6678,7 +7296,8 @@
msgid "TEST_STRING"
msgstr "TEST_STRING"
-#: etc/initialdata:665 share/html/Search/Elements/EditFormat:69 share/html/Ticket/Elements/Tabs:198
+#: etc/initialdata:665 share/html/Search/Elements/EditFormat:69
+#: share/html/Ticket/Elements/Tabs:198
msgid "Take"
msgstr "Prendi in carico"
@@ -6698,18 +7317,19 @@
msgid "Template"
msgstr "Modello"
-#: share/html/Admin/Global/Template.html:110 share/html/Admin/Queues/Template.html:115
#. ($TemplateObj->Id())
+#: share/html/Admin/Global/Template.html:110
+#: share/html/Admin/Queues/Template.html:115
msgid "Template #%1"
msgstr "Modello n°%1"
-#: share/html/Admin/Elements/EditTemplates:114
#. ($id)
+#: share/html/Admin/Elements/EditTemplates:114
msgid "Template #%1 deleted"
msgstr ""
-#: lib/RT/Scrip_Overlay.pm:144
#. ($args{'Template'})
+#: lib/RT/Scrip_Overlay.pm:144
msgid "Template '%1' not found"
msgstr ""
@@ -6723,7 +7343,7 @@
#: lib/RT/Scrip_Overlay.pm:140
msgid "Template is mandatory argument"
-msgstr ""
+msgstr "Il Template è un argomento obbligatorio"
#: NOT FOUND IN SOURCE
msgid "Template not found"
@@ -6739,9 +7359,11 @@
#: lib/RT/Template_Overlay.pm:436
msgid "Template parsing error"
-msgstr ""
+msgstr "Errore nell'elaborazione del modello"
-#: share/html/Admin/Elements/QueueTabs:72 share/html/Admin/Elements/SystemTabs:59 share/html/Admin/Global/index.html:60
+#: share/html/Admin/Elements/QueueTabs:72
+#: share/html/Admin/Elements/SystemTabs:59
+#: share/html/Admin/Global/index.html:60
msgid "Templates"
msgstr "Modelli"
@@ -6769,23 +7391,23 @@
msgid "That principal already has that right"
msgstr "Questo utente/gruppo ha già questo diritto"
-#: lib/RT/Queue_Overlay.pm:794
#. ($args{'Type'})
+#: lib/RT/Queue_Overlay.pm:794
msgid "That principal is already a %1 for this queue"
msgstr "Questo utente/gruppo è già %1 per questa coda"
-#: lib/RT/Ticket_Overlay.pm:1118
#. ($self->loc($args{'Type'}))
+#: lib/RT/Ticket_Overlay.pm:1118
msgid "That principal is already a %1 for this ticket"
msgstr "Questo utente/gruppo è già %1 per questo ticket"
-#: lib/RT/Queue_Overlay.pm:910
#. ($args{'Type'})
+#: lib/RT/Queue_Overlay.pm:910
msgid "That principal is not a %1 for this queue"
msgstr "Questo utente/gruppo non è %1 per questa coda"
-#: lib/RT/Ticket_Overlay.pm:1240
#. ($args{'Type'})
+#: lib/RT/Ticket_Overlay.pm:1240
msgid "That principal is not a %1 for this ticket"
msgstr "Questo utente/gruppo non è %1 per questo ticket"
@@ -6837,7 +7459,8 @@
msgid "That's not a numerical id"
msgstr "Non è un identificativo numerico"
-#: share/html/SelfService/Display.html:55 share/html/Ticket/Create.html:183 share/html/Ticket/Elements/ShowSummary:51
+#: share/html/SelfService/Display.html:55 share/html/Ticket/Create.html:183
+#: share/html/Ticket/Elements/ShowSummary:51
msgid "The Basics"
msgstr "Dati di base"
@@ -6858,8 +7481,12 @@
msgstr ""
#: bin/rt-crontool:325
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Il comando seguente troverà tutti i ticket attivi nella coda 'general' e ne imposterà la priorità a 99 se nessuno li ha toccati nelle ultime 4 ore:"
+msgid ""
+"The following command will find all active tickets in the queue 'general' "
+"and set their priority to 99 if they haven't been touched in 4 hours:"
+msgstr ""
+"Il comando seguente troverà tutti i ticket attivi nella coda 'general' e ne "
+"imposterà la priorità a 99 se nessuno li ha toccati nelle ultime 4 ore:"
#: lib/RT/Crypt/GnuPG.pm:2089
msgid "The key has been disabled"
@@ -6898,17 +7525,21 @@
msgstr "Il richiedente del ticket"
#: share/html/Elements/GnuPG/KeyIssues:52
-msgid "The system is unable to sign outgoing email messages. This usually indicates that the passphrase was mis-set, or that GPG Agent is down. Please alert your system administrator immediately. The problem addresses are:"
+msgid ""
+"The system is unable to sign outgoing email messages. This usually indicates "
+"that the passphrase was mis-set, or that GPG Agent is down. Please alert "
+"your system administrator immediately. The problem addresses are:"
msgstr ""
#: lib/RT/Config.pm:106
msgid "Theme"
msgstr ""
-#: share/html/Ticket/Elements/ShowUpdateStatus:50
#. ()
+#: share/html/Ticket/Elements/ShowUpdateStatus:50
+#, fuzzy
msgid "There are unread messages on this ticket."
-msgstr ""
+msgstr "Hai già in carico questo ticket"
#: lib/RT/Crypt/GnuPG.pm:2128
msgid "There is marginal trust in this key"
@@ -6926,9 +7557,11 @@
msgid "This feature is only available to system administrators"
msgstr "Questa funzionalità è riservata agli amministratori di sistema"
-#: lib/RT/Interface/Web/Session.pm:277
#. ($RT::MasonSessionDir)
-msgid "This may mean that that the directory '%1' isn't writable or a database table is missing or corrupt."
+#: lib/RT/Interface/Web/Session.pm:277
+msgid ""
+"This may mean that that the directory '%1' isn't writable or a database "
+"table is missing or corrupt."
msgstr ""
#: share/html/Ticket/Elements/PreviewScrips:58
@@ -6941,14 +7574,15 @@
#: bin/rt-crontool:316
msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Questo strumento permette di eseguire qualsiasi modulo perl da dentro RT."
+msgstr ""
+"Questo strumento permette di eseguire qualsiasi modulo perl da dentro RT."
#: lib/RT/Transaction_Overlay.pm:325
msgid "This transaction appears to have no content"
msgstr "La transazione sembra non avere alcun contenuto"
-#: share/html/Ticket/Elements/ShowRequestor:74
#. ($rows)
+#: share/html/Ticket/Elements/ShowRequestor:74
msgid "This user's %1 highest priority tickets"
msgstr "I %1 ticket a maggior priorità richiesti da questo utente"
@@ -6972,30 +7606,32 @@
msgid "Ticket # %1 Jumbo update: %2"
msgstr "Ticket n° %1 aggiornamento Jumbo: %2"
-#: share/html/Ticket/ModifyAll.html:48 share/html/Ticket/ModifyAll.html:52
#. ($Ticket->Id, $Ticket->Subject)
+#: share/html/Ticket/ModifyAll.html:48 share/html/Ticket/ModifyAll.html:52
msgid "Ticket #%1 Jumbo update: %2"
msgstr "Ticket n°%1 aggiornamento Jumbo: %2"
-#: share/html/Ticket/Graphs/index.html:113
#. ($id)
+#: share/html/Ticket/Graphs/index.html:113
msgid "Ticket #%1 relationships graph"
msgstr ""
-#: share/html/Approvals/Elements/ShowDependency:69
#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+#: share/html/Approvals/Elements/ShowDependency:69
msgid "Ticket #%1: %2"
msgstr "Ticket n°%1: %2"
-#: lib/RT/Action/CreateTickets.pm:1121 lib/RT/Action/CreateTickets.pm:1130 lib/RT/Action/CreateTickets.pm:376 lib/RT/Action/CreateTickets.pm:500 lib/RT/Action/CreateTickets.pm:512
#. ($T::Tickets{$template_id}->Id)
#. ($T::Tickets{$template_id}->id)
#. ($ticket->Id)
+#: lib/RT/Action/CreateTickets.pm:1121 lib/RT/Action/CreateTickets.pm:1130
+#: lib/RT/Action/CreateTickets.pm:376 lib/RT/Action/CreateTickets.pm:500
+#: lib/RT/Action/CreateTickets.pm:512
msgid "Ticket %1"
msgstr ""
-#: lib/RT/Ticket_Overlay.pm:660 lib/RT/Ticket_Overlay.pm:684
#. ($self->Id, $QueueObj->Name)
+#: lib/RT/Ticket_Overlay.pm:660 lib/RT/Ticket_Overlay.pm:684
msgid "Ticket %1 created in queue '%2'"
msgstr "Creato ticket %1 nella coda '%2'"
@@ -7003,9 +7639,10 @@
msgid "Ticket %1 loaded\\n"
msgstr "Caricato ticket %1\\n"
-#: share/html/Search/Bulk.html:369 share/html/Tools/MyDay.html:100 share/html/Tools/MyDay.html:91 share/html/Tools/MyDay.html:94
#. ($id, $msg)
#. ($Ticket->Id, $_)
+#: share/html/Search/Bulk.html:369 share/html/Tools/MyDay.html:100
+#: share/html/Tools/MyDay.html:91 share/html/Tools/MyDay.html:94
msgid "Ticket %1: %2"
msgstr "Ticket %1: %2"
@@ -7013,8 +7650,8 @@
msgid "Ticket Custom Fields"
msgstr "Campi personalizzati del ticket"
-#: share/html/Ticket/History.html:48 share/html/Ticket/History.html:51
#. ($Ticket->Id, $Ticket->Subject)
+#: share/html/Ticket/History.html:48 share/html/Ticket/History.html:51
msgid "Ticket History # %1 %2"
msgstr "Cronologia del ticket n° %1 %2"
@@ -7030,7 +7667,9 @@
msgid "Ticket Search"
msgstr ""
-#: lib/RT/CustomField_Overlay.pm:1100 share/html/Admin/Elements/GlobalCustomFieldTabs:81 share/html/Admin/Global/CustomFields/index.html:89
+#: lib/RT/CustomField_Overlay.pm:1100
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:81
+#: share/html/Admin/Global/CustomFields/index.html:89
msgid "Ticket Transactions"
msgstr "Transazioni sul ticket"
@@ -7046,7 +7685,8 @@
msgid "Ticket content type"
msgstr "Tipo del contenuto del ticket"
-#: lib/RT/Ticket_Overlay.pm:489 lib/RT/Ticket_Overlay.pm:502 lib/RT/Ticket_Overlay.pm:513 lib/RT/Ticket_Overlay.pm:668
+#: lib/RT/Ticket_Overlay.pm:489 lib/RT/Ticket_Overlay.pm:502
+#: lib/RT/Ticket_Overlay.pm:513 lib/RT/Ticket_Overlay.pm:668
msgid "Ticket could not be created due to an internal error"
msgstr "A causa di un errore interno non è stato possibile creare il ticket"
@@ -7094,32 +7734,36 @@
msgid "Ticket watchers"
msgstr "Osservatori del ticket"
-#: lib/RT/Search/FromSQL.pm:80
#. (ref $self)
+#: lib/RT/Search/FromSQL.pm:80
msgid "TicketSQL search module"
msgstr "Modulo di ricerca TicketSQL"
-#: lib/RT/CustomField_Overlay.pm:1099 share/html/Admin/Elements/GlobalCustomFieldTabs:75 share/html/Admin/Global/CustomFields/index.html:83 share/html/Elements/Tabs.orig:74 share/html/Elements/Tabs:74 share/html/Search/Chart:113 share/html/Search/Elements/Chart:115
+#: lib/RT/CustomField_Overlay.pm:1099
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:75
+#: share/html/Admin/Global/CustomFields/index.html:83
+#: share/html/Elements/Tabs.orig:74 share/html/Elements/Tabs:74
+#: share/html/Search/Chart:113 share/html/Search/Elements/Chart:115
msgid "Tickets"
msgstr "Ticket"
-#: lib/RT/Tickets_Overlay.pm:2189
#. ($self->loc( $args{'TYPE'} ), $args{'BASE'},)
+#: lib/RT/Tickets_Overlay.pm:2189
msgid "Tickets %1 %2"
msgstr ""
-#: lib/RT/Tickets_Overlay.pm:2144
#. ($self->loc( $args{'TYPE'} ), $args{'TARGET'})
+#: lib/RT/Tickets_Overlay.pm:2144
msgid "Tickets %1 by %2"
msgstr "Ticket %1 da %2"
#: share/html/Tools/Reports/CreatedByDates.html:88
msgid "Tickets created after"
-msgstr ""
+msgstr "Ticket creati dopo"
#: share/html/Tools/Reports/CreatedByDates.html:90
msgid "Tickets created before"
-msgstr ""
+msgstr "Ticket creati prima"
#: NOT FOUND IN SOURCE
msgid "Tickets from %1"
@@ -7127,25 +7771,28 @@
#: share/html/Tools/Reports/ResolvedByDates.html:89
msgid "Tickets resolved after"
-msgstr ""
+msgstr "Ticket risolti dopo"
#: share/html/Tools/Reports/ResolvedByDates.html:91
msgid "Tickets resolved before"
-msgstr ""
+msgstr "Ticket risolti prima"
#: share/html/Approvals/Elements/ShowDependency:50
msgid "Tickets which depend on this approval:"
msgstr "Ticket che dipendono da questa approvazione:"
-#: share/html/Search/Elements/PickBasics:165 share/html/Ticket/Create.html:189 share/html/Ticket/Elements/EditBasics:74
+#: share/html/Search/Elements/PickBasics:165 share/html/Ticket/Create.html:189
+#: share/html/Ticket/Elements/EditBasics:74
msgid "Time Estimated"
msgstr "Tempo stimato"
-#: lib/RT/Tickets_Overlay.pm:1940 share/html/Search/Elements/PickBasics:166 share/html/Ticket/Create.html:202 share/html/Ticket/Elements/EditBasics:89
+#: lib/RT/Tickets_Overlay.pm:1940 share/html/Search/Elements/PickBasics:166
+#: share/html/Ticket/Create.html:202 share/html/Ticket/Elements/EditBasics:89
msgid "Time Left"
msgstr "Tempo rimasto"
-#: lib/RT/Tickets_Overlay.pm:1915 share/html/Search/Elements/PickBasics:164 share/html/Ticket/Create.html:195 share/html/Ticket/Elements/EditBasics:82
+#: lib/RT/Tickets_Overlay.pm:1915 share/html/Search/Elements/PickBasics:164
+#: share/html/Ticket/Create.html:195 share/html/Ticket/Elements/EditBasics:82
msgid "Time Worked"
msgstr "Tempo lavorato"
@@ -7163,15 +7810,15 @@
#: NOT FOUND IN SOURCE
msgid "TimeEstimated"
-msgstr "TempoStimato"
+msgstr "Tempo Stimato"
#: NOT FOUND IN SOURCE
msgid "TimeLeft"
-msgstr "TempoRimanente"
+msgstr "Tempo Rimanente"
#: lib/RT/Ticket_Overlay.pm:903
msgid "TimeWorked"
-msgstr "TempoImpiegato"
+msgstr "Tempo Impiegato"
#: share/html/User/Prefs.html:82
msgid "Timezone"
@@ -7193,33 +7840,39 @@
msgid "To generate a diff of this commit:\\n"
msgstr "Per generare una diff dopo il commit:\\n"
-#: share/html/Elements/Footer:65
#. ('<a href="mailto:sales at bestpractical.com">sales at bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Per richieste di supporto, formazione, personalizzazioni o acquisto di licenze, si prega di contattare %1."
+#: share/html/Elements/Footer:65
+msgid ""
+"To inquire about support, training, custom development or licensing, please "
+"contact %1."
+msgstr ""
+"Per richieste di supporto, formazione, personalizzazioni o acquisto di "
+"licenze, si prega di contattare %1."
#: lib/RT/Ticket_Overlay.pm:906
msgid "Told"
-msgstr "UltimaComunicazioneARichiedenti"
+msgstr "Ultima Comunicazione a Richiedenti"
#: NOT FOUND IN SOURCE
msgid "ToldRelative"
-msgstr "TempoDaUltimoContattoRichiedente"
+msgstr "Tempo Da Ultimo Contatto Richiedente"
-#: share/html/Admin/Elements/Tabs:70 share/html/Admin/index.html:84 share/html/Elements/Tabs.orig:77 share/html/Elements/Tabs:77 share/html/Tools/index.html:48 share/html/Tools/index.html:51
+#: share/html/Admin/Elements/Tabs:70 share/html/Admin/index.html:84
+#: share/html/Elements/Tabs.orig:77 share/html/Elements/Tabs:77
+#: share/html/Tools/index.html:48 share/html/Tools/index.html:51
msgid "Tools"
msgstr "Strumenti"
#: share/html/Search/Elements/Chart:136
msgid "Total"
-msgstr ""
+msgstr "Totale"
#: etc/initialdata:221
msgid "Transaction"
msgstr "Transazioni"
-#: lib/RT/Transaction_Overlay.pm:794
#. ($self->Data)
+#: lib/RT/Transaction_Overlay.pm:794
msgid "Transaction %1 purged"
msgstr "Transazione %1 ripulita"
@@ -7233,11 +7886,15 @@
#: NOT FOUND IN SOURCE
msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaction->Create fallita, devi specificare l'identificativo dell'oggetto"
+msgstr ""
+"Transaction->Create fallita, devi specificare l'identificativo dell'oggetto"
#: lib/RT/Transaction_Overlay.pm:126
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transaction->Create fallita, devi specificare il tipo e l'identificativo dell'oggetto"
+msgid ""
+"Transaction->Create couldn't, as you didn't specify an object type and id"
+msgstr ""
+"Transaction->Create fallita, devi specificare il tipo e l'identificativo "
+"dell'oggetto"
#: lib/RT/Transaction_Overlay.pm:859
msgid "Transactions are immutable"
@@ -7267,12 +7924,17 @@
msgid "Tue."
msgstr "Mar."
-#: lib/RT/Ticket_Overlay.pm:904 lib/RT/Tickets_Overlay.pm:1754 share/html/Admin/CustomFields/Modify.html:67 share/html/Admin/Elements/EditCustomField:67 share/html/Ticket/Elements/AddWatchers:56 share/html/Ticket/Elements/AddWatchers:67 share/html/Ticket/Elements/AddWatchers:77
+#: lib/RT/Ticket_Overlay.pm:904 lib/RT/Tickets_Overlay.pm:1754
+#: share/html/Admin/CustomFields/Modify.html:67
+#: share/html/Admin/Elements/EditCustomField:67
+#: share/html/Ticket/Elements/AddWatchers:56
+#: share/html/Ticket/Elements/AddWatchers:67
+#: share/html/Ticket/Elements/AddWatchers:77
msgid "Type"
msgstr "Tipo"
-#: lib/RT/CustomField_Overlay.pm:736
#. ($self->FriendlyTypeComposite( $old ), $self->FriendlyTypeComposite( $composite ),)
+#: lib/RT/CustomField_Overlay.pm:736
msgid "Type changed from '%1' to '%2'"
msgstr ""
@@ -7280,19 +7942,19 @@
msgid "Unable to determine object type or id"
msgstr ""
-#: sbin/rt-email-dashboards:201
#. ($subscription->SubValue('DashboardId'), $subscription->Id, $currentuser->Name)
+#: sbin/rt-email-dashboards:201
msgid "Unable to load dashboard %1 of subscription %2 for user %3"
msgstr ""
-#: share/html/Dashboards/index.html:104
#. ($Unsubscribe)
+#: share/html/Dashboards/index.html:104
msgid "Unable to unsubscribe to dashboard %1"
msgstr ""
#: lib/RT/ScripCondition_Overlay.pm:126
msgid "Unimplemented"
-msgstr "NonImplementato"
+msgstr "Non Implementato"
#: share/html/Admin/Users/Modify.html:91
msgid "Unix login"
@@ -7300,7 +7962,7 @@
#: NOT FOUND IN SOURCE
msgid "UnixUsername"
-msgstr "UsernameUnix"
+msgstr "Username Unix"
#: lib/RT/Crypt/GnuPG.pm:2112 lib/RT/Crypt/GnuPG.pm:2117
msgid "Unknown (no trust value assigned)"
@@ -7310,9 +7972,9 @@
msgid "Unknown (this value is new to the system)"
msgstr ""
-#: lib/RT/Attachment_Overlay.pm:300 lib/RT/Record.pm:806
#. ($self->ContentEncoding)
#. ($ContentEncoding)
+#: lib/RT/Attachment_Overlay.pm:300 lib/RT/Record.pm:806
msgid "Unknown ContentEncoding %1"
msgstr "ContentEncoding sconosciuto %1"
@@ -7320,8 +7982,8 @@
msgid "Unknown field: $key"
msgstr "Campo sconosciuto: $key"
-#: lib/RT/Interface/Web/QueryBuilder/Tree.pm:266
#. ($key)
+#: lib/RT/Interface/Web/QueryBuilder/Tree.pm:266
msgid "Unknown field: %1"
msgstr ""
@@ -7339,7 +8001,7 @@
#: NOT FOUND IN SOURCE
msgid "Unprivileged"
-msgstr "NonPrevilegiato"
+msgstr "Non Privilegiato"
#: share/html/Admin/Elements/EditCustomFields:62
msgid "Unselected Custom Fields"
@@ -7357,16 +8019,20 @@
msgid "Unsubscribe"
msgstr ""
-#: share/html/Dashboards/index.html:101
#. ($Dashboard->Name)
+#: share/html/Dashboards/index.html:101
msgid "Unsubscribed to dashboard %1"
msgstr ""
#: lib/RT/Transaction_Overlay.pm:648
msgid "Untaken"
-msgstr "NonPreso"
+msgstr "Non Preso"
-#: share/html/Admin/Elements/EditScrip:143 share/html/Admin/Users/Memberships.html:88 share/html/Elements/RT__Ticket/ColumnMap:276 share/html/Search/Bulk.html:202 share/html/Search/Bulk.html:80 share/html/Search/Elements/EditSearches:70
+#: share/html/Admin/Elements/EditScrip:143
+#: share/html/Admin/Users/Memberships.html:88
+#: share/html/Elements/RT__Ticket/ColumnMap:276
+#: share/html/Search/Bulk.html:202 share/html/Search/Bulk.html:80
+#: share/html/Search/Elements/EditSearches:70
msgid "Update"
msgstr "Aggiornamento"
@@ -7386,7 +8052,8 @@
msgid "Update Ticket"
msgstr "Aggiorna ticket"
-#: share/html/Search/Bulk.html:131 share/html/Ticket/ModifyAll.html:90 share/html/Ticket/Update.html:86
+#: share/html/Search/Bulk.html:131 share/html/Ticket/ModifyAll.html:90
+#: share/html/Ticket/Update.html:86
msgid "Update Type"
msgstr "Tipo aggiornamento"
@@ -7430,13 +8097,14 @@
msgid "Update ticket # %1"
msgstr "Aggiorna il ticket n° %1"
-#: share/html/SelfService/Update.html:114 share/html/SelfService/Update.html:49
#. ($Ticket->id)
+#: share/html/SelfService/Update.html:114
+#: share/html/SelfService/Update.html:49
msgid "Update ticket #%1"
msgstr "Aggiorna il ticket n°%1"
-#: share/html/Ticket/Update.html:180
#. ($TicketObj->id, $TicketObj->Subject)
+#: share/html/Ticket/Update.html:180
msgid "Update ticket #%1 (%2)"
msgstr "Aggiorna il ticket n°%1 (%2)"
@@ -7444,12 +8112,14 @@
msgid "Update type was neither correspondence nor comment."
msgstr "Il tipo aggiornamento non era ne' corrispondenza ne' commento."
-#: lib/RT/CustomField_Overlay.pm:1177 lib/RT/Ticket_Overlay.pm:907 share/html/Elements/SelectDateType:56 share/html/Ticket/Elements/ShowDates:79
+#: lib/RT/CustomField_Overlay.pm:1177 lib/RT/Ticket_Overlay.pm:907
+#: share/html/Elements/SelectDateType:56
+#: share/html/Ticket/Elements/ShowDates:79
msgid "Updated"
msgstr "Aggiornato"
-#: share/html/Search/Elements/EditSearches:257
#. ($desc)
+#: share/html/Search/Elements/EditSearches:257
msgid "Updated saved search \"%1\""
msgstr ""
@@ -7493,8 +8163,8 @@
msgid "Use SSL?"
msgstr ""
-#: share/html/Widgets/Form/Boolean:66
#. ($DefaultValue? loc('Yes'): loc('No'))
+#: share/html/Widgets/Form/Boolean:66
msgid "Use default (%1)"
msgstr ""
@@ -7502,8 +8172,8 @@
msgid "Use other RT administrative tools"
msgstr "Usa altri strumenti di amministrazione di RT"
-#: share/html/Widgets/Form/Select:74
#. (join ', ', @DefaultValue)
+#: share/html/Widgets/Form/Select:74
msgid "Use system default (%1)"
msgstr ""
@@ -7515,8 +8185,8 @@
msgid "User %1 Password: %2\\n"
msgstr "Utente %1 Password: %2\\n"
-#: lib/RT/Ticket_Overlay.pm:398
#. ($args{'Owner'})
+#: lib/RT/Ticket_Overlay.pm:398
msgid "User '%1' could not be found."
msgstr "Impossibile trovare l'utente '%1'"
@@ -7548,17 +8218,24 @@
msgid "User Id"
msgstr "Username"
-#: share/html/Admin/Elements/CustomFieldTabs:74 share/html/Admin/Elements/GroupTabs:70 share/html/Admin/Elements/QueueTabs:87 share/html/Admin/Elements/SystemTabs:70 share/html/Admin/Global/index.html:74
+#: share/html/Admin/Elements/CustomFieldTabs:74
+#: share/html/Admin/Elements/GroupTabs:70
+#: share/html/Admin/Elements/QueueTabs:87
+#: share/html/Admin/Elements/SystemTabs:70
+#: share/html/Admin/Global/index.html:74
msgid "User Rights"
msgstr "Diritti dell'utente"
-#: lib/RT/Interface/Web.pm:1205
#. ($cf->Name, ref $args{'Object'}, $args{'Object'}->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "L'utente ha richiesto un aggiornamento di tipo sconosciuto sul campo personalizzato %1 per %2 l'oggetto n°%3"
+#: lib/RT/Interface/Web.pm:1205
+msgid ""
+"User asked for an unknown update type for custom field %1 for %2 object #%3"
+msgstr ""
+"L'utente ha richiesto un aggiornamento di tipo sconosciuto sul campo "
+"personalizzato %1 per %2 l'oggetto n°%3"
-#: share/html/Admin/Users/Modify.html:306
#. ($msg)
+#: share/html/Admin/Users/Modify.html:306
msgid "User could not be created: %1"
msgstr "Impossibile creare l'utente: %1"
@@ -7566,7 +8243,10 @@
msgid "User created"
msgstr "Utente creato"
-#: share/html/Admin/CustomFields/GroupRights.html:76 share/html/Admin/Global/GroupRights.html:90 share/html/Admin/Groups/GroupRights.html:77 share/html/Admin/Queues/GroupRights.html:92
+#: share/html/Admin/CustomFields/GroupRights.html:76
+#: share/html/Admin/Global/GroupRights.html:90
+#: share/html/Admin/Groups/GroupRights.html:77
+#: share/html/Admin/Queues/GroupRights.html:92
msgid "User defined groups"
msgstr "Gruppi definiti dall'utente"
@@ -7594,11 +8274,19 @@
msgid "User-defined groups"
msgstr "Gruppi definiti dall'utente"
-#: share/html/Admin/Users/Modify.html:71 share/html/Elements/Login:92 share/html/Ticket/Elements/AddWatchers:58
+#: share/html/Admin/Users/Modify.html:71 share/html/Elements/Login:92
+#: share/html/Ticket/Elements/AddWatchers:58
msgid "Username"
msgstr "Username"
-#: lib/RT/CustomField_Overlay.pm:1101 share/html/Admin/Elements/GlobalCustomFieldTabs:57 share/html/Admin/Elements/SelectNewGroupMembers:49 share/html/Admin/Elements/Tabs:55 share/html/Admin/Global/CustomFields/index.html:66 share/html/Admin/Groups/Members.html:77 share/html/Admin/Queues/People.html:91 share/html/Admin/index.html:58 share/html/User/Groups/Members.html:81
+#: lib/RT/CustomField_Overlay.pm:1101
+#: share/html/Admin/Elements/GlobalCustomFieldTabs:57
+#: share/html/Admin/Elements/SelectNewGroupMembers:49
+#: share/html/Admin/Elements/Tabs:55
+#: share/html/Admin/Global/CustomFields/index.html:66
+#: share/html/Admin/Groups/Members.html:77
+#: share/html/Admin/Queues/People.html:91 share/html/Admin/index.html:58
+#: share/html/User/Groups/Members.html:81
msgid "Users"
msgstr "Utenti"
@@ -7606,8 +8294,8 @@
msgid "Users matching search criteria"
msgstr "Utenti che soddisfano il criterio di ricerca"
-#: bin/rt-crontool:161
#. ($txn->id)
+#: bin/rt-crontool:161
msgid "Using transaction #%1..."
msgstr ""
@@ -7617,13 +8305,14 @@
#: share/html/Admin/CustomFields/Modify.html:85
msgid "Validation"
-msgstr ""
+msgstr "Validazione"
#: NOT FOUND IN SOURCE
msgid "ValueOfQueue"
msgstr "ValoreDellaCoda"
-#: share/html/Admin/CustomFields/Modify.html:119 share/html/Admin/Elements/EditCustomField:80
+#: share/html/Admin/CustomFields/Modify.html:119
+#: share/html/Admin/Elements/EditCustomField:80
msgid "Values"
msgstr "Valori"
@@ -7636,7 +8325,9 @@
msgstr ""
#: share/html/Dashboards/Subscription.html:255
-msgid "Warning: you have no email address set, so you will not receive this dashboard until you have it set"
+msgid ""
+"Warning: you have no email address set, so you will not receive this "
+"dashboard until you have it set"
msgstr ""
#: lib/RT/Queue_Overlay.pm:107
@@ -7681,23 +8372,35 @@
#: share/html/Tools/MyDay.html:77
msgid "What I did today"
-msgstr ""
+msgstr "Cosa ho fatto oggi"
#: etc/initialdata:582
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Quando un ticket ha ricevuto tutte le approvazioni richieste, aggiungi una corrispondenza al ticket originale"
+msgid ""
+"When a ticket has been approved by all approvers, add correspondence to the "
+"original ticket"
+msgstr ""
+"Quando un ticket ha ricevuto tutte le approvazioni richieste, aggiungi una "
+"corrispondenza al ticket originale"
#: etc/initialdata:546
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Quando un ticket riceve una qualsiasi delle approvazioni richieste, aggiungi una corrispondenza al ticket originale"
+msgid ""
+"When a ticket has been approved by any approver, add correspondence to the "
+"original ticket"
+msgstr ""
+"Quando un ticket riceve una qualsiasi delle approvazioni richieste, aggiungi "
+"una corrispondenza al ticket originale"
#: etc/initialdata:104
msgid "When a ticket is created"
msgstr "Quando viene creato un ticket"
#: etc/initialdata:479
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Quando una richiesta di approvazione viene creata, notifica chi ha in carico il ticket e gli AdminCc che devono approvarlo"
+msgid ""
+"When an approval ticket is created, notify the Owner and AdminCc of the item "
+"awaiting their approval"
+msgstr ""
+"Quando una richiesta di approvazione viene creata, notifica chi ha in carico "
+"il ticket e gli AdminCc che devono approvarlo"
#: etc/initialdata:109
msgid "When anything happens"
@@ -7759,7 +8462,8 @@
msgid "WorkPhone"
msgstr "TelefonoLavoro"
-#: share/html/Ticket/Elements/ShowBasics:65 share/html/Ticket/Update.html:78 share/html/Tools/MyDay.html:62
+#: share/html/Ticket/Elements/ShowBasics:65 share/html/Ticket/Update.html:78
+#: share/html/Tools/MyDay.html:62
msgid "Worked"
msgstr "Impiegato"
@@ -7772,40 +8476,51 @@
msgstr "Hai già in carico questo ticket"
#: share/html/Elements/GnuPG/KeyIssues:63
-msgid "You are going to encrypt outgoing email messages, but there are problems with recipients' public keys. You have to fix the problems with the keys, disable sending a message to the recipients with key problems, or disable encryption."
+msgid ""
+"You are going to encrypt outgoing email messages, but there are problems "
+"with recipients' public keys. You have to fix the problems with the keys, "
+"disable sending a message to the recipients with key problems, or disable "
+"encryption."
msgstr ""
#: share/html/Elements/GnuPG/KeyIssues:61
-msgid "You are going to encrypt outgoing email messages, but there is a problem with a recipient's public key. You have to fix the problem with the key, disable sending a message to that recipient, or disable encryption."
+msgid ""
+"You are going to encrypt outgoing email messages, but there is a problem "
+"with a recipient's public key. You have to fix the problem with the key, "
+"disable sending a message to that recipient, or disable encryption."
msgstr ""
#: share/html/autohandler:228 share/html/autohandler:236
msgid "You are not an authorized user"
msgstr "Non sei un utente autorizzato"
-#: share/html/Ticket/Elements/ShowUpdateStatus:51
#. (RT->Config->Get('WebPath') ."/Ticket/Display.html?id=". $Ticket->id. "#txn-".$txn->id, RT->Config->Get('WebPath') ."/Ticket/Display.html?id=". $Ticket->id ."&MarkAsSeen=1". "#txn-".$txn->id)
-msgid "You can <a href=\"%1\">jump to the first unread message</a> or <a href=\"%2\">jump to the first unread message and mark all messages as seen</a>."
+#: share/html/Ticket/Elements/ShowUpdateStatus:51
+msgid ""
+"You can <a href=\"%1\">jump to the first unread message</a> or <a href=\"%2"
+"\">jump to the first unread message and mark all messages as seen</a>."
msgstr ""
#: share/html/Prefs/Search.html:58
msgid "You can also edit the predefined search itself"
-msgstr ""
+msgstr "E' possibile anche modificare la ricerca predefinta stessa"
#: lib/RT/Ticket_Overlay.pm:2722
msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Puoi solo riassegnare ticket che hai in carico, o che non sono ancora assegnati"
+msgstr ""
+"Puoi solo riassegnare ticket che hai in carico, o che non sono ancora "
+"assegnati"
#: lib/RT/Ticket_Overlay.pm:2718
msgid "You can only take tickets that are unowned"
-msgstr ""
+msgstr "E' possibile prendere in carico solo i ticket non assegnati"
#: NOT FOUND IN SOURCE
msgid "You don't have permission to view that ticket.\\n"
msgstr "Non hai i permessi per visualizzare questo ticket.\\n"
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:772
#. ($num, $queue)
+#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:772
msgid "You found %1 tickets in queue %2"
msgstr "Hai trovato %1 ticket nella coda %2"
@@ -7830,13 +8545,19 @@
msgstr "Le tue %1 richieste"
#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "L'amministratore RT non ha configurato correttamente l'alias di email che invoca RT"
+msgid ""
+"Your RT administrator has misconfigured the mail aliases which invoke RT"
+msgstr ""
+"L'amministratore RT non ha configurato correttamente l'alias di email che "
+"invoca RT"
-#: etc/initialdata:563 etc/initialdata:565
#. (# loc $self->TransactionObj->CreatorObj->Name,)
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "La tua richiesta è stata approvata da %1. Potrebbero essere necessarie altre approvazioni."
+#: etc/initialdata:563 etc/initialdata:565
+msgid ""
+"Your request has been approved by %1. Other approvals may still be pending."
+msgstr ""
+"La tua richiesta è stata approvata da %1. Potrebbero essere necessarie altre "
+"approvazioni."
#: etc/initialdata:601
msgid "Your request has been approved."
@@ -7844,7 +8565,7 @@
#: NOT FOUND IN SOURCE
msgid "Your request was rejected"
-msgstr "Your request was rejected"
+msgstr "La tua richiesta è stata respinte"
#: etc/initialdata:506
msgid "Your request was rejected."
@@ -7878,8 +8599,8 @@
msgid "allow loading of saved searches"
msgstr "permetti il caricamento di ricerche salvate"
-#: share/html/User/Elements/DelegateRights:82
#. ($right->PrincipalObj->Object->SelfDescription)
+#: share/html/User/Elements/DelegateRights:82
msgid "as granted to %1"
msgstr "come concesso a %1"
@@ -7943,7 +8664,8 @@
msgid "doesn't contain"
msgstr "non contiene"
-#: share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectMatch:58 share/html/Search/Elements/PickBasics:74
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectMatch:58 share/html/Search/Elements/PickBasics:74
msgid "doesn't match"
msgstr ""
@@ -7963,7 +8685,8 @@
msgid "error: can't move down"
msgstr "errore: impossibile spostare in basso"
-#: share/html/Search/Elements/EditQuery:110 share/html/Search/Elements/EditQuery:116
+#: share/html/Search/Elements/EditQuery:110
+#: share/html/Search/Elements/EditQuery:116
msgid "error: can't move left"
msgstr "errore: impossibile spostare a sinistra"
@@ -7975,7 +8698,9 @@
msgid "error: nothing to delete"
msgstr "errore: niente da cancellare"
-#: share/html/Search/Elements/EditQuery:102 share/html/Search/Elements/EditQuery:129 share/html/Search/Elements/EditQuery:150
+#: share/html/Search/Elements/EditQuery:102
+#: share/html/Search/Elements/EditQuery:129
+#: share/html/Search/Elements/EditQuery:150
msgid "error: nothing to move"
msgstr "errore: niente da spostare"
@@ -7995,12 +8720,13 @@
msgid "full"
msgstr ""
-#: share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectEqualityOperator:61
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectEqualityOperator:61
msgid "greater than"
msgstr "maggiore di"
-#: lib/RT/Group_Overlay.pm:140
#. ($self->Name)
+#: lib/RT/Group_Overlay.pm:140
msgid "group '%1'"
msgstr "gruppo '%1'"
@@ -8016,11 +8742,15 @@
msgid "id"
msgstr "Codice"
-#: share/html/Elements/SelectBoolean:55 share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectMatch:59 share/html/Search/Elements/PickCFs:84
+#: share/html/Elements/SelectBoolean:55
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectMatch:59 share/html/Search/Elements/PickCFs:84
msgid "is"
msgstr "uguale a"
-#: share/html/Elements/SelectBoolean:59 share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectMatch:60 share/html/Search/Elements/PickCFs:85
+#: share/html/Elements/SelectBoolean:59
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectMatch:60 share/html/Search/Elements/PickCFs:85
msgid "isn't"
msgstr "diverso da"
@@ -8036,7 +8766,8 @@
msgid "key revoked"
msgstr ""
-#: share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectEqualityOperator:61
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectEqualityOperator:61
msgid "less than"
msgstr "minore di"
@@ -8044,7 +8775,8 @@
msgid "marginal"
msgstr ""
-#: share/html/Elements/SelectCustomFieldOperator:61 share/html/Elements/SelectMatch:57 share/html/Search/Elements/PickBasics:73
+#: share/html/Elements/SelectCustomFieldOperator:61
+#: share/html/Elements/SelectMatch:57 share/html/Search/Elements/PickBasics:73
msgid "matches"
msgstr "corrisponde a"
@@ -8064,7 +8796,10 @@
msgid "months"
msgstr "mesi"
-#: share/html/Admin/Elements/ShowKeyInfo:59 share/html/Admin/Elements/ShowKeyInfo:62 share/html/Admin/Elements/ShowKeyInfo:67 share/html/Admin/Elements/ShowKeyInfo:68
+#: share/html/Admin/Elements/ShowKeyInfo:59
+#: share/html/Admin/Elements/ShowKeyInfo:62
+#: share/html/Admin/Elements/ShowKeyInfo:67
+#: share/html/Admin/Elements/ShowKeyInfo:68
msgid "never"
msgstr ""
@@ -8072,11 +8807,13 @@
msgid "new"
msgstr "nuovo"
-#: share/html/Elements/RT__Group/ColumnMap:65 share/html/Elements/RT__Group/ColumnMap:73
+#: share/html/Elements/RT__Group/ColumnMap:65
+#: share/html/Elements/RT__Group/ColumnMap:73
msgid "no"
msgstr ""
-#: share/html/Admin/Elements/PickCustomFields:66 share/html/Admin/Elements/PickObjects:67
+#: share/html/Admin/Elements/PickCustomFields:66
+#: share/html/Admin/Elements/PickObjects:67
msgid "no name"
msgstr "nessun nome"
@@ -8084,7 +8821,8 @@
msgid "no value"
msgstr "nessun valore"
-#: lib/RT/Crypt/GnuPG.pm:2106 share/html/Admin/Elements/EditQueueWatchers:50 share/html/Ticket/Elements/EditWatchers:51
+#: lib/RT/Crypt/GnuPG.pm:2106 share/html/Admin/Elements/EditQueueWatchers:50
+#: share/html/Ticket/Elements/EditWatchers:51
msgid "none"
msgstr "nessuno"
@@ -8109,16 +8847,17 @@
msgstr ""
#: lib/RT/Installer.pm:154
+#, fuzzy
msgid "password of the user root in RT"
-msgstr ""
+msgstr "Cronologia dell'utente %1"
-#: lib/RT/Group_Overlay.pm:145
#. ($self->Name, $user->Name)
+#: lib/RT/Group_Overlay.pm:145
msgid "personal group '%1' for user '%2'"
msgstr "Gruppo personale '%1' per l'utente '%2'"
-#: lib/RT/Group_Overlay.pm:153
#. ($queue->Name, $self->Type)
+#: lib/RT/Group_Overlay.pm:153
msgid "queue %1 %2"
msgstr "coda %1 %2"
@@ -8150,13 +8889,13 @@
msgid "summary rows"
msgstr ""
-#: lib/RT/Group_Overlay.pm:148
#. ($self->Type)
+#: lib/RT/Group_Overlay.pm:148
msgid "system %1"
msgstr "sistema %1"
-#: lib/RT/Group_Overlay.pm:159
#. ($self->Type)
+#: lib/RT/Group_Overlay.pm:159
msgid "system group '%1'"
msgstr "gruppo di sistema '%1'"
@@ -8164,8 +8903,8 @@
msgid "the calling component did not specify why"
msgstr "il componente chiamante non ha specificato il perché"
-#: lib/RT/Group_Overlay.pm:156
#. ($self->Instance, $self->Type)
+#: lib/RT/Group_Overlay.pm:156
msgid "ticket #%1 %2"
msgstr "ticket n°%1 %2"
@@ -8177,8 +8916,8 @@
msgid "ultimate"
msgstr ""
-#: lib/RT/Group_Overlay.pm:162
#. ($self->Id)
+#: lib/RT/Group_Overlay.pm:162
msgid "undescribed group %1"
msgstr "gruppo %1 senza descrizione"
@@ -8186,8 +8925,8 @@
msgid "undescripbed group %1"
msgstr "gruppo %1 senza descrizione"
-#: lib/RT/Group_Overlay.pm:137
#. ($user->Object->Name)
+#: lib/RT/Group_Overlay.pm:137
msgid "user %1"
msgstr "utente %1"
@@ -8215,7 +8954,43 @@
msgid "years"
msgstr "anni"
-#: share/html/Elements/RT__Group/ColumnMap:65 share/html/Elements/RT__Group/ColumnMap:73
+#: share/html/Elements/RT__Group/ColumnMap:65
+#: share/html/Elements/RT__Group/ColumnMap:73
msgid "yes"
msgstr ""
+#~ msgid ""
+#~ "(Sends a blind carbon-copy of this update to a comma-delimited list of "
+#~ "email addresses. Does <strong>not</strong> change who will receive future "
+#~ "updates.)"
+#~ msgstr ""
+#~ "invia copia silente di questo aggiornamento ad una lista di indirizzi "
+#~ "email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei "
+#~ "successivi aggiornamenti."
+
+#~ msgid ""
+#~ "(Sends a carbon-copy of this update to a comma-delimited list of email "
+#~ "addresses. Does <strong>not</strong> change who will receive future "
+#~ "updates.)"
+#~ msgstr ""
+#~ "invia copia di questo aggiornamento ad una lista di indirizzi email "
+#~ "separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi "
+#~ "aggiornamenti."
+
+#~ msgid "Choose a date"
+#~ msgstr "Scegli una data"
+
+#~ msgid "Add and Search"
+#~ msgstr "Aggiungi e cerca"
+
+#~ msgid "Permissions denied"
+#~ msgstr "Permessi negati"
+
+#~ msgid "chart"
+#~ msgstr "grafico"
+
+#~ msgid "grouped by %1"
+#~ msgstr "raggruppati per %1"
+
+#~ msgid "style: %1"
+#~ msgstr "stile: %1"
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ja.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ja.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ja.po Mon Jul 7 16:21:51 2008
@@ -3712,7 +3712,7 @@
msgstr ""
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr ""
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/nl.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/nl.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/nl.po Mon Jul 7 16:21:51 2008
@@ -3845,7 +3845,7 @@
msgstr "Wijzig een scrip voor deze queue %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Wijzig een scrip die betrekking heeft op alle queues"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/no.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/no.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/no.po Mon Jul 7 16:21:51 2008
@@ -1866,7 +1866,7 @@
msgstr "Opprett et fleksifelt for køen %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Opprett et fleksifelt for alle køer"
#: NOT FOUND IN SOURCE
@@ -3977,7 +3977,7 @@
msgstr "Endre et fleksifelt for køen %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Endre et fleksifelt som gjelder for alle køer"
#: share/html/Admin/Queues/Scrip.html:84
@@ -3986,7 +3986,7 @@
msgstr "Endre et scrip for køen %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Endre et scrip som gjelder for alle køer"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pl.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pl.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pl.po Mon Jul 7 16:21:51 2008
@@ -1892,7 +1892,7 @@
msgstr "Utwórz pole dla kolejki %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Utwórz pole, które dotyczy wszystkich kolejek"
#: NOT FOUND IN SOURCE
@@ -4056,7 +4056,7 @@
msgstr "Modyfikuj pole dla kolejki %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Modyfikuj pole, które dotyczy wszystkich kolejek"
#: share/html/Admin/Queues/Scrip.html:84
@@ -4065,7 +4065,7 @@
msgstr "Modyfikuj skrypt dla kolejki %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Modyfikuj skrypt, który dotyczy wszystkich kolejek"
#: NOT FOUND IN SOURCE
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_br.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_br.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_br.po Mon Jul 7 16:21:51 2008
@@ -1909,7 +1909,7 @@
msgstr "Criar um Campo Personalizado para a fila %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Criar um Campo Personalizado para todas as filas"
#: NOT FOUND IN SOURCE
@@ -4042,7 +4042,7 @@
msgstr "Modificar um Campo Personalizado para a fila %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Modificar um Campo Personalizado que se aplica a todas as filas"
#: share/html/Admin/Queues/Scrip.html:84
@@ -4051,7 +4051,7 @@
msgstr "Modificar um scrip para a fila %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Modificar um scrip aplicável a todas as filas"
#: share/html/Admin/CustomFields/Objects.html:92
Added: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_pt.po
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/pt_pt.po Mon Jul 7 16:21:51 2008
@@ -0,0 +1,5194 @@
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: RT 3.5.x\n"
+"PO-Revision-Date: 2008-05-12 12:00-0000\n"
+"Last-Translator: RICARDO OLIVEIRA <rmo at eurotux.com>\n"
+"Language-Team: rt-devel <rt-devel at lists.bestpractical.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: html/Widgets/SavedSearch:117
+#. ($self->{CurrentSearch}{Object}->Description)
+msgid " %1 deleted."
+msgstr " %1 apagado"
+
+#: html/Widgets/SavedSearch:94
+#. ($self->{CurrentSearch}{Description}, $args->{Description})
+msgid " %1 renamed to %2."
+msgstr " %1 alterado para %2."
+
+#: html/Widgets/SavedSearch:107
+#. ($args->{Description})
+msgid " %1 saved."
+msgstr " %1 gravado"
+
+#: html/Approvals/Elements/Approve:50 html/Approvals/Elements/ShowDependency:73 html/SelfService/Display.html:48 html/Ticket/Display.html:49 html/Ticket/Display.html:53
+#. ($Ticket->id, $Ticket->Subject)
+#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+#. ($ticket->Id, $ticket->Subject)
+#. ($TicketObj->Id, $TicketObj->Subject)
+msgid "#%1: %2"
+msgstr "#%1: %2"
+
+#: html/Elements/ShowSearch:116
+msgid "$1"
+msgstr "$1"
+
+#: lib/RT/Record.pm:957
+#. ($label)
+msgid "$prefix %1"
+msgstr "$prefix %1"
+
+#: lib/RT/URI/fsck_com_rt.pm:258
+#. ($self->ObjectType, $self->Object->Id)
+msgid "%1 #%2"
+msgstr "%1 #%2"
+
+#: lib/RT/Date.pm:367
+#. ($s, $time_unit)
+msgid "%1 %2"
+msgstr "%1 %2"
+
+#: lib/RT/Tickets_Overlay.pm:1684
+#. ($args{'FIELD'}, $args{'OPERATOR'}, $args{'VALUE'})
+msgid "%1 %2 %3"
+msgstr ""
+
+#: lib/RT/Date.pm:403
+#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
+msgid "%1 %2 %3 %4:%5:%6 %7"
+msgstr "%1 %2 %3 %4:%5:%6 %7"
+
+#: lib/RT/Record.pm:1707 lib/RT/Transaction_Overlay.pm:668 lib/RT/Transaction_Overlay.pm:711
+#. ($cf->Name, $new_value->Content)
+#. ($field, $self->NewValue)
+#. ($self->Field, $principal->Object->Name)
+msgid "%1 %2 added"
+msgstr "%1 %2 adicionado"
+
+#: lib/RT/Date.pm:364
+#. ($s, $time_unit)
+msgid "%1 %2 ago"
+msgstr "há %1 %2"
+
+#: lib/RT/Record.pm:1714 lib/RT/Transaction_Overlay.pm:675
+#. ($cf->Name, $old_content, $new_value->Content)
+#. ($field, $self->OldValue, $self->NewValue)
+msgid "%1 %2 changed to %3"
+msgstr "%1 %2 alterado para %3"
+
+#: lib/RT/Record.pm:1711 lib/RT/Transaction_Overlay.pm:671 lib/RT/Transaction_Overlay.pm:717
+#. ($cf->Name, $old_value->Content)
+#. ($field, $self->OldValue)
+#. ($self->Field, $principal->Object->Name)
+msgid "%1 %2 deleted"
+msgstr "%1 %2 apagado"
+
+#: html/Admin/Elements/EditScrips:67 html/Admin/Elements/ListGlobalScrips:65 html/Ticket/Elements/PreviewScrips:105
+#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
+msgid "%1 %2 with template %3"
+msgstr ""
+
+#: html/Ticket/Elements/ShowAttachments:74
+#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
+msgid "%1 (%2) by %3"
+msgstr "%1 (%2) por %3"
+
+#: html/SelfService/Update.html:62 html/Ticket/Elements/EditBasics:110 html/Ticket/Update.html:63 html/Ticket/Update.html:65 html/Tools/MyDay.html:71
+#. (loc($DefaultStatus))
+#. (loc($Ticket->Status()))
+#. (loc($TicketObj->Status))
+#. ($TicketObj->OwnerObj->Name())
+msgid "%1 (Unchanged)"
+msgstr "%1 (inalterado)"
+
+#: bin/rt-crontool:239 bin/rt-crontool:246 bin/rt-crontool:252
+#. ("--search-argument", "--search")
+#. ("--condition-argument", "--condition")
+#. ("--action-argument", "--action")
+msgid "%1 - An argument to pass to %2"
+msgstr ""
+
+#: bin/rt-crontool:264
+#. ("--verbose")
+msgid "%1 - Output status updates to STDOUT"
+msgstr ""
+
+#: bin/rt-crontool:255
+#. ("--template-id")
+msgid "%1 - Specify id of the template you want to use"
+msgstr ""
+
+#: bin/rt-crontool:258
+#. ("--transaction")
+msgid "%1 - Specify if you want to use either 'first' or 'last' transaction"
+msgstr ""
+
+#: bin/rt-crontool:249
+#. ("--action")
+msgid "%1 - Specify the action module you want to use"
+msgstr ""
+
+#: bin/rt-crontool:243
+#. ("--condition")
+msgid "%1 - Specify the condition module you want to use"
+msgstr ""
+
+#: bin/rt-crontool:236
+#. ("--search")
+msgid "%1 - Specify the search module you want to use"
+msgstr ""
+
+#: bin/rt-crontool:261
+#. ("--transaction-type")
+msgid "%1 - Specify the type of a transaction you want to use"
+msgstr "%1 - Especifique o tipo de transacção que quer usar"
+
+#: html/Elements/Footer:58
+#. ('»|«', $RT::VERSION, '2006', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
+msgid "%1 RT %2 Copyright 1996-%3 %4."
+msgstr ""
+
+#: lib/RT/ScripAction_Overlay.pm:152
+#. ($self->Id)
+msgid "%1 ScripAction loaded"
+msgstr ""
+
+#: lib/RT/Record.pm:1744
+#. ($args{'Value'}, $cf->Name)
+msgid "%1 added as a value for %2"
+msgstr "%1 adicionado como valor de %2"
+
+#: lib/RT/Link_Overlay.pm:146 lib/RT/Link_Overlay.pm:153
+#. ($args{'Base'})
+#. ($args{'Target'})
+msgid "%1 appears to be a local object, but can't be found in the database"
+msgstr ""
+
+#: html/Ticket/Elements/ShowDates:75 lib/RT/Transaction_Overlay.pm:552
+#. ($self->BriefDescription , $self->CreatorObj->Name)
+#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
+msgid "%1 by %2"
+msgstr "%1 por %2"
+
+#: lib/RT/Record.pm:534 lib/RT/Transaction_Overlay.pm:619 lib/RT/Transaction_Overlay.pm:809 lib/RT/Transaction_Overlay.pm:818 lib/RT/Transaction_Overlay.pm:821
+#. ($args{'Field'}, ( $old_val ? "'$old_val'" : $self->loc("(no value)") ), '"' . $self->__Value( $args{'Field'}) . '"')
+#. ($self->Field, ( $self->OldValue ? "'" . $self->OldValue . "'" : $no_value ), "'" . $self->NewValue . "'")
+#. ($self->Field , $q1->Name , $q2->Name)
+#. ($self->Field, $t2->AsString, $t1->AsString)
+#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
+msgid "%1 changed from %2 to %3"
+msgstr "%1 alterado de %2 para %3"
+
+#: html/Search/Build.html:215
+#. ($Description)
+msgid "%1 copy"
+msgstr "cópia %1"
+
+#: lib/RT/Record.pm:961
+msgid "%1 could not be set to %2."
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2789
+#. ($self)
+msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:592
+#. ($obj_type)
+msgid "%1 created"
+msgstr "%1 criado"
+
+#: lib/RT/Transaction_Overlay.pm:597
+#. ($obj_type)
+msgid "%1 deleted"
+msgstr "%1 apagado"
+
+#: etc/initialdata:593
+msgid "%1 highest priority tickets I own"
+msgstr "%1 tickets com maior prioridade da minha responsabilidade"
+
+#: bin/rt-crontool:231
+#. ($0)
+msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:867
+#. ($principal->Object->Name, $args{'Type'})
+msgid "%1 is no longer a %2 for this queue."
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1576
+#. ($principal->Object->Name, $args{'Type'})
+msgid "%1 is no longer a %2 for this ticket."
+msgstr ""
+
+#: lib/RT/Record.pm:1801
+#. ($TransactionObj->OldValue, $cf->Name)
+msgid "%1 is no longer a value for custom field %2"
+msgstr ""
+
+#: html/Ticket/Elements/ShowTime:49 html/Ticket/Elements/ShowTime:51
+#. ($minutes)
+msgid "%1 min"
+msgstr "%1 min"
+
+#: etc/initialdata:601
+msgid "%1 newest unowned tickets"
+msgstr "%1 tickets mais recentes sem responsável atribuído"
+
+#: lib/RT/CustomField_Overlay.pm:896
+msgid "%1 objects"
+msgstr ""
+
+#: html/User/Elements/DelegateRights:99
+#. (loc($ObjectType =~ /^RT::(.*)$/))
+msgid "%1 rights"
+msgstr ""
+
+#: lib/RT/Action/ResolveMembers.pm:65
+#. (ref $self)
+msgid "%1 will resolve all members of a resolved group ticket."
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:897
+msgid "%1's %2 objects"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:898
+msgid "%1's %2's %3 objects"
+msgstr ""
+
+#: html/Search/Elements/SearchPrivacy:54 html/Search/Elements/SelectSearchObject:57 html/Search/Elements/SelectSearchesForObjects:59
+#. ($object->Name)
+#. ($Object->Name)
+msgid "%1's saved searches"
+msgstr "Pesquisas gravadas de %1"
+
+#: lib/RT/Transaction_Overlay.pm:502
+#. ($self)
+msgid "%1: no attachment specified"
+msgstr "%1: anexo não especificado"
+
+#: html/Ticket/Elements/ShowTransactionAttachments:80
+#. ($size)
+msgid "%1b"
+msgstr ""
+
+#: html/Ticket/Elements/ShowTransactionAttachments:77
+#. (int( $size / 102.4 ) / 10)
+msgid "%1k"
+msgstr ""
+
+#: html/Ticket/Elements/ShowTime:51
+#. (sprintf("%.1f",$minutes / 60))
+msgid "%quant(%1,hour)"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1144
+#. ($args{'Status'})
+msgid "'%1' is an invalid value for status"
+msgstr ""
+
+#: html/Admin/Elements/EditCustomFieldValues:52 html/Admin/Elements/EditQueueWatchers:52 html/Admin/Elements/EditScrips:58 html/Admin/Elements/EditTemplates:59 html/Admin/Groups/Members.html:75 html/Elements/EditLinks:56 html/Ticket/Elements/EditPeople:69 html/User/Groups/Members.html:78
+msgid "(Check box to delete)"
+msgstr "(Seleccione caixa para apagar)"
+
+#: html/Ticket/Elements/PreviewScrips:101
+msgid "(Check boxes to disable notifications to the listed recipients)"
+msgstr "(Seleccione caixas para desactivar notificações para os destinatários listados)"
+
+#: html/Ticket/Elements/PreviewScrips:125
+msgid "(Check boxes to enable notifications to the listed recipients)"
+msgstr "(Seleccione caixas para activar notificações para os destinatários listados)"
+
+#: html/Ticket/Create.html:221
+msgid "(Enter ticket ids or URLs, separated with spaces)"
+msgstr "(Insira identificadores de tickets, separados por espaços)"
+
+#: html/Admin/Queues/Modify.html:77 html/Admin/Queues/Modify.html:83
+#. ($RT::CorrespondAddress)
+#. ($RT::CommentAddress)
+msgid "(If left blank, will default to %1)"
+msgstr "(Por omissão será %1)"
+
+#: html/Admin/Elements/EditCustomFields:76 html/Admin/Elements/ListGlobalCustomFields:55
+msgid "(No custom fields)"
+msgstr ""
+
+#: html/Admin/Groups/Members.html:73 html/User/Groups/Members.html:76
+msgid "(No members)"
+msgstr "(Sem membros)"
+
+#: html/Admin/Elements/EditScrips:55 html/Admin/Elements/ListGlobalScrips:50
+msgid "(No scrips)"
+msgstr ""
+
+#: html/Admin/Elements/EditTemplates:54
+msgid "(No templates)"
+msgstr ""
+
+#: html/Admin/Elements/PickCustomFields:49 html/Admin/Elements/PickObjects:49
+msgid "(None)"
+msgstr "(Nada)"
+
+#: html/Ticket/Update.html:92
+msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <strong>not</strong> change who will receive future updates.)"
+msgstr ""
+
+#: html/Ticket/Create.html:105
+msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <strong>will</strong> receive future updates.)"
+msgstr ""
+
+#: html/Ticket/Update.html:88
+msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <strong>not</strong> change who will receive future updates.)"
+msgstr ""
+
+#: html/Ticket/Create.html:95
+msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <strong>will</strong> receive future updates.)"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:98
+msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
+msgstr ""
+
+#: html/Ticket/Elements/EditWatchers:62 html/Ticket/Elements/ShowUserEntry:55
+msgid "(Will not be sent email)"
+msgstr "(Não vai ser enviado email)"
+
+#: html/Tools/MyDay.html:53
+#. ($session{'CurrentUser'}->Name)
+msgid "(displaying new and open tickets for %1)"
+msgstr "(mostrar tickets novos e abertos de %1)"
+
+#: html/Admin/Groups/index.html:59 html/User/Groups/index.html:56
+msgid "(empty)"
+msgstr "(vazio)"
+
+#: html/Admin/Users/index.html:62
+msgid "(no name listed)"
+msgstr "(sem nome)"
+
+#: html/Admin/Elements/SelectRights:74 html/Elements/EditCustomFieldSelect:71 html/Elements/SelectCustomFieldValue:53 html/Elements/ShowCustomFields:56 html/Search/Chart:134 html/Search/Elements/Chart:78 lib/RT/Transaction_Overlay.pm:612
+msgid "(no value)"
+msgstr "(sem valor)"
+
+#: html/Admin/Elements/EditCustomFieldValues:49
+msgid "(no values)"
+msgstr "(sem valores)"
+
+#: html/Elements/EditLinks:133 html/Ticket/Elements/BulkLinks:51
+msgid "(only one ticket)"
+msgstr "(apenas um ticket)"
+
+#: html/Elements/RT__Ticket/ColumnMap:151
+msgid "(pending approval)"
+msgstr "(aprovações pendentes)"
+
+#: html/Elements/RT__Ticket/ColumnMap:154
+msgid "(pending other Collection)"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:73
+msgid "(required)"
+msgstr "(obrigatório)"
+
+#: html/Ticket/Elements/ShowTransactionAttachments:84
+msgid "(untitled)"
+msgstr ""
+
+#: html/Ticket/Elements/Reminders:135
+msgid "(yyyy/mm/dd)"
+msgstr ""
+
+#: html/Elements/EditCustomFieldSelect:59
+msgid "-"
+msgstr ""
+
+#: bin/rt-crontool:97
+msgid "--transaction argument could be only 'first' or 'last'"
+msgstr ""
+
+#: html/Ticket/Elements/ShowBasics:55
+msgid "<% $Ticket->Status%>"
+msgstr "<% $Ticket->Status%>"
+
+#: html/Elements/SelectTicketTypes:50
+msgid "<% $_ %>"
+msgstr "<% $_ %>"
+
+#: html/Search/Elements/SelectLinks:50
+msgid "<%$_%>"
+msgstr "<%$_%>"
+
+#: html/Search/Elements/DisplayOptions:75
+msgid "<%$field%>"
+msgstr "<%$field%>"
+
+#: html/Elements/CreateTicket:49
+#. ($m->scomp('/Elements/SelectNewTicketQueue'))
+msgid "<input type=\"submit\" class=\"button\" value=\"New ticket in\" /> %1"
+msgstr "<input type=\"submit\" class=\"button\" value=\"Novo Pedido em\" /> %1"
+
+#: docs/design_docs/string-extraction-guide.txt:54 lib/RT/StyleGuide.pod:785
+#. ($m->scomp('/Elements/SelectNewTicketQueue'))
+msgid "<input type=\"submit\" value=\"New ticket in\"> %1"
+msgstr "<input type=\"submit\" value=\"Novo Pedido em\"> %1"
+
+#: etc/initialdata:218
+msgid "A blank template"
+msgstr "Template em branco"
+
+#: html/Admin/Users/Modify.html:375
+msgid "A password was not set, so user won't be able to login."
+msgstr "Password não foi definida, portanto o utilizador não vai conseguir efectuar login."
+
+#: lib/RT/ACE_Overlay.pm:176 lib/RT/Principal_Overlay.pm:221
+msgid "ACE not found"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:855
+msgid "ACEs can only be created and deleted."
+msgstr ""
+
+#: html/Search/Elements/SelectAndOr:48
+msgid "AND"
+msgstr "E"
+
+#: html/User/Elements/Tabs:55
+msgid "About me"
+msgstr "Sobre mim"
+
+#: html/Admin/Users/Modify.html:108
+msgid "Access control"
+msgstr "Controle de Acesso"
+
+#: html/Admin/Elements/EditScrip:67
+msgid "Action"
+msgstr "Acção"
+
+#: lib/RT/Scrip_Overlay.pm:174
+#. ($args{'ScripAction'})
+msgid "Action %1 not found"
+msgstr "Acção %1 não encontrada"
+
+#: bin/rt-crontool:173
+msgid "Action committed.\\n"
+msgstr ""
+
+#: lib/RT/Scrip_Overlay.pm:170
+msgid "Action is mandatory argument"
+msgstr ""
+
+#: bin/rt-crontool:169
+msgid "Action prepared..."
+msgstr ""
+
+#: html/Search/Build.html:87
+msgid "Add"
+msgstr "Adicionar"
+
+#: html/Search/Bulk.html:94
+msgid "Add AdminCc"
+msgstr "Adicionar AdminCc"
+
+#: html/Search/Bulk.html:90
+msgid "Add Cc"
+msgstr "Adicionar Cc"
+
+#: html/Search/Elements/EditFormat:51
+msgid "Add Columns"
+msgstr "Adicionar colunas"
+
+#: html/Search/Elements/PickCriteria:48
+msgid "Add Criteria"
+msgstr "Adicionar critérios"
+
+#: html/Ticket/Create.html:149 html/Ticket/Update.html:118
+msgid "Add More Files"
+msgstr "Adicionar mais ficheiros"
+
+#: html/Search/Bulk.html:86
+msgid "Add Requestor"
+msgstr ""
+
+#: html/Admin/Elements/AddCustomFieldValue:48
+msgid "Add Value"
+msgstr ""
+
+#: html/Admin/Global/Scrip.html:85
+msgid "Add a scrip which will apply to all queues"
+msgstr ""
+
+#: html/Search/Build.html:111 html/Search/Build.html:96
+msgid "Add and Search"
+msgstr "Adicionar e pesquisar"
+
+#: html/Search/Bulk.html:126
+msgid "Add comments or replies to selected tickets"
+msgstr "Adicionar comentários ou respostas aos tickets seleccionados"
+
+#: html/Admin/Groups/Members.html:65 html/User/Groups/Members.html:62
+msgid "Add members"
+msgstr "Adicionar membros"
+
+#: html/Admin/Queues/People.html:89 html/Ticket/Elements/AddWatchers:51
+msgid "Add new watchers"
+msgstr "Adicionar novos watchers"
+
+#: html/Search/Build.html:87
+msgid "Add these terms to your search"
+msgstr "Adicionar estes termos à sua pesquisa"
+
+#: html/Search/Bulk.html:160
+msgid "Add values"
+msgstr "Adicionar valores"
+
+#: lib/RT/CustomField_Overlay.pm:110
+msgid "Add, delete and modify custom field values for objects"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:758
+#. ($args{'Type'})
+msgid "Added principal as a %1 for this queue"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1448
+#. ($self->loc($args{'Type'}))
+msgid "Added principal as a %1 for this ticket"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:149 html/User/Prefs.html:135
+msgid "Address1"
+msgstr "Endereço (1)"
+
+#: html/Admin/Users/Modify.html:154 html/User/Prefs.html:139
+msgid "Address2"
+msgstr "Endereço (2)"
+
+#: html/Ticket/Create.html:100
+msgid "Admin Cc"
+msgstr ""
+
+#: etc/initialdata:295
+msgid "Admin Comment"
+msgstr "Comentário de Admin"
+
+#: etc/initialdata:274
+msgid "Admin Correspondence"
+msgstr ""
+
+#: html/Admin/Queues/index.html:48 html/Admin/Queues/index.html:51
+msgid "Admin queues"
+msgstr ""
+
+#: html/Admin/Global/index.html:49 html/Admin/Global/index.html:51
+msgid "Admin/Global configuration"
+msgstr ""
+
+#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:62 lib/RT/ACE_Overlay.pm:115
+msgid "AdminCc"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:108
+msgid "AdminCustomField"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:165
+msgid "AdminGroup"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:167
+msgid "AdminGroupMembership"
+msgstr ""
+
+#: lib/RT/System.pm:82
+msgid "AdminOwnPersonalGroups"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:94
+msgid "AdminQueue"
+msgstr ""
+
+#: lib/RT/System.pm:83
+msgid "AdminUsers"
+msgstr ""
+
+#: html/Admin/Queues/People.html:71 html/Ticket/Elements/EditPeople:77
+msgid "Administrative Cc"
+msgstr ""
+
+#: html/Ticket/Elements/Tabs:218
+msgid "Advanced"
+msgstr "Avançado"
+
+#: html/Elements/SelectDateRelation:59
+msgid "After"
+msgstr ""
+
+#: html/Search/Elements/PickCriteria:54
+msgid "Aggregator"
+msgstr "Agregador"
+
+#: etc/initialdata:363
+msgid "All Approvals Passed"
+msgstr "Todas as aprovações tratadas"
+
+#: html/Admin/Queues/index.html:77
+msgid "All Queues"
+msgstr "Todas as Queues"
+
+#: html/Search/Elements/EditQuery:58
+msgid "And/Or"
+msgstr "E/Ou"
+
+#: html/Admin/CustomFields/Modify.html:75 html/Admin/Elements/CustomFieldTabs:85
+msgid "Applies to"
+msgstr "Aplica-se a"
+
+#: html/Search/Edit.html:66
+msgid "Apply"
+msgstr "Aplicar"
+
+#: html/Search/Edit.html:66
+msgid "Apply your changes"
+msgstr "Aplicar as alterações"
+
+#: html/Elements/Tabs:80
+msgid "Approval"
+msgstr "Aprovação"
+
+#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:65 html/Approvals/index.html:88
+#. ($Ticket->Id, $Ticket->Subject)
+#. ($ticket->id, $msg)
+#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+msgid "Approval #%1: %2"
+msgstr "Aprovação #%1: %2"
+
+#: html/Approvals/index.html:77
+#. ($ticket->Id)
+msgid "Approval #%1: Notes not recorded due to a system error"
+msgstr ""
+
+#: html/Approvals/index.html:75
+#. ($ticket->Id)
+msgid "Approval #%1: Notes recorded"
+msgstr ""
+
+#: etc/initialdata:351
+msgid "Approval Passed"
+msgstr ""
+
+#: etc/initialdata:374
+msgid "Approval Rejected"
+msgstr ""
+
+#: html/Approvals/Elements/Approve:71
+msgid "Approve"
+msgstr ""
+
+#: etc/initialdata:504 etc/initialdata:506
+#. (# loc $note)
+msgid "Approver's notes: %1"
+msgstr ""
+
+#: lib/RT/Date.pm:446
+msgid "Apr."
+msgstr "Apr"
+
+#: html/Search/Elements/DisplayOptions:83
+msgid "Asc"
+msgstr "Asc"
+
+#: html/Elements/SelectSortOrder:58
+msgid "Ascending"
+msgstr "Ascendente"
+
+#: lib/RT/Queue_Overlay.pm:98
+msgid "Assign and remove custom fields"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:98
+msgid "AssignCustomFields"
+msgstr ""
+
+#: html/Search/Bulk.html:144 html/SelfService/Update.html:89 html/Ticket/ModifyAll.html:117 html/Ticket/Update.html:118
+msgid "Attach"
+msgstr "Anexar"
+
+#: html/SelfService/Create.html:94 html/Ticket/Create.html:145
+msgid "Attach file"
+msgstr "Anexar ficheiro"
+
+#: html/SelfService/Update.html:77 html/Ticket/Create.html:133 html/Ticket/Update.html:96
+msgid "Attached file"
+msgstr "Ficheiro anexo"
+
+#: html/Ticket/ShowEmailRecord.html:54 html/Ticket/ShowEmailRecord.html:58 html/Ticket/ShowEmailRecord.html:61
+#. ($Attachment)
+msgid "Attachment '%1' could not be loaded"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:510
+msgid "Attachment created"
+msgstr "Anexo criado"
+
+#: lib/RT/Tickets_Overlay.pm:2134
+msgid "Attachment filename"
+msgstr ""
+
+#: html/Ticket/Elements/ShowAttachments:49
+msgid "Attachments"
+msgstr "Anexos"
+
+#: lib/RT/Attributes_Overlay.pm:173
+msgid "Attribute Deleted"
+msgstr ""
+
+#: lib/RT/Date.pm:450
+msgid "Aug."
+msgstr "Aug"
+
+#: etc/initialdata:221
+msgid "Autoreply"
+msgstr "Resposta automática"
+
+#: etc/initialdata:72
+msgid "Autoreply To Requestors"
+msgstr "Resposta automática para utilizadores"
+
+#: html/Widgets/SelectionBox:191
+msgid "Available"
+msgstr "Disponível"
+
+#: html/Admin/Elements/CustomFieldTabs:67 html/Admin/Elements/GroupTabs:62 html/Admin/Elements/QueueTabs:62 html/Admin/Elements/UserTabs:60 html/Ticket/Elements/Tabs:115 html/User/Elements/GroupTabs:61
+msgid "Basics"
+msgstr "Informação básica"
+
+#: html/Ticket/Update.html:90
+msgid "Bcc"
+msgstr "Bcc"
+
+#: html/Admin/CustomFields/GroupRights.html:93 html/Admin/CustomFields/UserRights.html:76 html/Admin/Elements/EditScrip:91
+msgid "Be sure to save your changes"
+msgstr ""
+
+#: html/Elements/SelectDateRelation:57 lib/RT/CurrentUser.pm:363
+msgid "Before"
+msgstr "Antes"
+
+#: html/Elements/Logo:49
+msgid "Best Practical Solutions, LLC corporate logo"
+msgstr ""
+
+#: etc/initialdata:217
+msgid "Blank"
+msgstr "Branco"
+
+#: html/Search/Elements/EditFormat:86
+msgid "Bold"
+msgstr ""
+
+#: html/Search/Results.html:81
+msgid "Bookmarkable link"
+msgstr ""
+
+#: html/Ticket/Elements/ShowHistory:66 html/Ticket/Elements/ShowHistory:71
+msgid "Brief headers"
+msgstr ""
+
+#: html/Ticket/Elements/Tabs:228
+msgid "Bulk Update"
+msgstr "Actualização em bloco"
+
+#: lib/RT/User_Overlay.pm:1855
+msgid "Can not modify system users"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:93
+msgid "Can this principal see this queue"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:382
+msgid "Can't add a custom field value without a name"
+msgstr ""
+
+#: html/Admin/CustomFields/Objects.html:88
+#. ($Class)
+msgid "Can't find a collection class for '%1'"
+msgstr ""
+
+#: html/Search/Build.html:288
+msgid "Can't find a saved search to work with"
+msgstr "Impossível encontrar a pesquisa gravada definida"
+
+#: lib/RT/Link_Overlay.pm:161
+msgid "Can't link a ticket to itself"
+msgstr ""
+
+#: html/Widgets/SavedSearch:110
+#. (loc($self->{SearchType}))
+msgid "Can't save %1"
+msgstr ""
+
+#: html/Search/Build.html:292
+msgid "Can't save this search"
+msgstr "Não é possível gravar esta pesquisa"
+
+#: lib/RT/Record.pm:1304 lib/RT/Record.pm:1380
+msgid "Can't specifiy both base and target"
+msgstr ""
+
+#: html/autohandler:206
+#. ($msg)
+msgid "Cannot create user: %1"
+msgstr "Não é possível criar utilizador: %1"
+
+#: html/Admin/Elements/AddCustomFieldValue:64 html/Admin/Elements/EditCustomFieldValues:60
+msgid "Category"
+msgstr "Categoria"
+
+#: etc/initialdata:50 html/Admin/Queues/People.html:67 html/SelfService/Create.html:73 html/Ticket/Create.html:90 html/Ticket/Elements/EditPeople:74 html/Ticket/Elements/ShowPeople:58 html/Ticket/Update.html:85 lib/RT/ACE_Overlay.pm:114
+msgid "Cc"
+msgstr ""
+
+#: html/SelfService/Prefs.html:54
+msgid "Change password"
+msgstr "Mudar password"
+
+#: html/Elements/Submit:80
+msgid "Check All"
+msgstr "Seleccionar todos"
+
+#: html/SelfService/Update.html:80 html/Ticket/Create.html:136 html/Ticket/Update.html:99
+msgid "Check box to delete"
+msgstr "Seleccione caixa para apagar"
+
+#: html/Admin/Elements/SelectRights:57
+msgid "Check box to revoke right"
+msgstr ""
+
+#: html/Elements/EditLinks:149 html/Elements/EditLinks:86 html/Elements/ShowLinks:80 html/Ticket/Create.html:226 html/Ticket/Elements/BulkLinks:66
+msgid "Children"
+msgstr "Filhos"
+
+#: html/NoAuth/js/util.js:203
+msgid "Choose a date"
+msgstr "Escolha uma data"
+
+#: html/Admin/Users/Modify.html:159 html/User/Prefs.html:143
+msgid "City"
+msgstr "Cidade"
+
+#: html/Widgets/SelectionBox:214
+msgid "Clear"
+msgstr ""
+
+#: html/Elements/Submit:82
+msgid "Clear All"
+msgstr "Limpar todos"
+
+#: html/Helpers/CalPopup.html:53
+msgid "Close window"
+msgstr "Fechar janela"
+
+#: html/Ticket/Elements/ShowDates:70
+msgid "Closed"
+msgstr "Fechado"
+
+#: html/SelfService/Closed.html:48 html/SelfService/Elements/Tabs:81
+msgid "Closed tickets"
+msgstr "Tickets fechados"
+
+#: lib/RT/CustomField_Overlay.pm:91
+msgid "Combobox: Select or enter multiple values"
+msgstr "Seleccione ou insira valores múltiplos"
+
+#: lib/RT/CustomField_Overlay.pm:92
+msgid "Combobox: Select or enter one value"
+msgstr "Seleccione ou insira um valor"
+
+#: lib/RT/CustomField_Overlay.pm:93
+msgid "Combobox: Select or enter up to %1 values"
+msgstr "Seleccione ou insira até %1 valores"
+
+#: html/Ticket/Elements/ShowTransaction:193 html/Ticket/Elements/Tabs:187
+msgid "Comment"
+msgstr "Comentário"
+
+#: html/Admin/Queues/Modify.html:81
+msgid "Comment Address"
+msgstr "Morada de Comentário"
+
+#: lib/RT/Queue_Overlay.pm:113
+msgid "Comment on tickets"
+msgstr "Comentar tickets"
+
+#: lib/RT/Queue_Overlay.pm:113
+msgid "CommentOnTicket"
+msgstr ""
+
+#: html/Tools/MyDay.html:67
+msgid "Comments"
+msgstr "Comentários"
+
+#: html/Ticket/ModifyAll.html:93 html/Ticket/Update.html:77
+msgid "Comments (Not sent to requestors)"
+msgstr "Comentários (não so enviados para utilizadores)"
+
+#: html/Search/Bulk.html:130
+msgid "Comments (not sent to requestors)"
+msgstr "Comentários (não so enviados para utilizadores)"
+
+#: html/Admin/Users/Modify.html:229 html/Ticket/Elements/ShowRequestor:69
+msgid "Comments about this user"
+msgstr "Comentários sobre este utilizador"
+
+#: lib/RT/Transaction_Overlay.pm:655
+msgid "Comments added"
+msgstr "Comentários adicionados"
+
+#: lib/RT/Action/Generic.pm:177
+msgid "Commit Stubbed"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:61
+msgid "Condition"
+msgstr "Condição"
+
+#: lib/RT/Scrip_Overlay.pm:186
+msgid "Condition is mandatory argument"
+msgstr "Condição é argumento obrigatório"
+
+#: bin/rt-crontool:153
+msgid "Condition matches..."
+msgstr ""
+
+#: lib/RT/Scrip_Overlay.pm:190
+msgid "Condition not found"
+msgstr ""
+
+#: html/Elements/Tabs:87
+msgid "Configuration"
+msgstr "Configuração"
+
+#: html/SelfService/Prefs.html:56
+msgid "Confirm"
+msgstr "Confirmar"
+
+#: html/Admin/Elements/ModifyTemplate:67 html/Elements/SelectAttachmentField:50 html/Ticket/ModifyAll.html:121
+msgid "Content"
+msgstr "Conteúdo"
+
+#: html/Elements/SelectAttachmentField:51
+msgid "Content-Type"
+msgstr ""
+
+#: html/Search/Elements/EditSearches:67
+msgid "Copy"
+msgstr "Copiar"
+
+#: etc/initialdata:286
+msgid "Correspondence"
+msgstr "Correspondência"
+
+#: lib/RT/Transaction_Overlay.pm:651
+msgid "Correspondence added"
+msgstr "Correspondência adicionada"
+
+#: lib/RT/Record.pm:1682 lib/RT/Record.pm:1729
+#. ($value_msg)
+msgid "Could not add new custom field value: %1"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:3062 lib/RT/Ticket_Overlay.pm:3070 lib/RT/Ticket_Overlay.pm:3087
+msgid "Could not change owner. "
+msgstr "Não foi possível alterar responsável"
+
+#: html/Admin/CustomFields/Modify.html:163
+#. ($msg)
+msgid "Could not create CustomField"
+msgstr ""
+
+#: html/Admin/Elements/EditCustomField:115
+#. ($msg)
+msgid "Could not create CustomField: %1"
+msgstr ""
+
+#: html/User/Groups/Modify.html:100 lib/RT/Group_Overlay.pm:496 lib/RT/Group_Overlay.pm:503
+msgid "Could not create group"
+msgstr ""
+
+#: html/Admin/Global/Template.html:94 html/Admin/Queues/Template.html:95
+#. ($msg)
+msgid "Could not create template: %1"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1077 lib/RT/Ticket_Overlay.pm:409
+msgid "Could not create ticket. Queue not set"
+msgstr "Não é possível criar pedido. Especifique uma fila."
+
+#: lib/RT/User_Overlay.pm:257 lib/RT/User_Overlay.pm:271 lib/RT/User_Overlay.pm:280 lib/RT/User_Overlay.pm:289 lib/RT/User_Overlay.pm:298 lib/RT/User_Overlay.pm:312 lib/RT/User_Overlay.pm:322 lib/RT/User_Overlay.pm:498
+msgid "Could not create user"
+msgstr "Não foi possível criar utilizador"
+
+#: lib/RT/Queue_Overlay.pm:737 lib/RT/Ticket_Overlay.pm:1416
+msgid "Could not find or create that user"
+msgstr "Não foi possível criar ou encontrar esse utilizador"
+
+#: lib/RT/Queue_Overlay.pm:804 lib/RT/Ticket_Overlay.pm:1497
+msgid "Could not find that principal"
+msgstr ""
+
+#: html/Admin/CustomFields/Objects.html:71
+msgid "Could not load CustomField %1"
+msgstr ""
+
+#: html/Admin/Groups/Members.html:114 html/User/Groups/Members.html:113 html/User/Groups/Modify.html:105
+msgid "Could not load group"
+msgstr ""
+
+#: lib/RT/SavedSearch.pm:121
+#. ($privacy)
+msgid "Could not load object for %1"
+msgstr ""
+
+#: lib/RT/SavedSearch.pm:199
+msgid "Could not load search attribute"
+msgstr "Não é possível carregar o atributo da pesquisa"
+
+#: lib/RT/Queue_Overlay.pm:756
+#. ($args{'Type'})
+msgid "Could not make that principal a %1 for this queue"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1437
+#. ($self->loc($args{'Type'}))
+msgid "Could not make that principal a %1 for this ticket"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:864
+#. ($args{'Type'})
+msgid "Could not remove that principal as a %1 for this queue"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1564
+#. ($args{'Type'})
+msgid "Could not remove that principal as a %1 for this ticket"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:193
+msgid "Could not set user info"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:161
+msgid "Couldn't add attachment"
+msgstr "Não foi possível adicionar anexo"
+
+#: lib/RT/Group_Overlay.pm:1005
+msgid "Couldn't add member to group"
+msgstr "Não foi possível adicionar membro a grupo"
+
+#: lib/RT/Record.pm:1741 lib/RT/Record.pm:1793
+#. ($Msg)
+msgid "Couldn't create a transaction: %1"
+msgstr "Não foi possível criar uma transacção: %1"
+
+#: lib/RT/Record.pm:970
+msgid "Couldn't find row"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:979
+msgid "Couldn't find that principal"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:412
+msgid "Couldn't find that value"
+msgstr ""
+
+#: lib/RT/CurrentUser.pm:147
+#. ($self->Id)
+msgid "Couldn't load %1 from the users database.\\n"
+msgstr ""
+
+#: html/Admin/CustomFields/UserRights.html:151
+#. ($id)
+msgid "Couldn't load Class %1"
+msgstr ""
+
+#: html/Admin/CustomFields/GroupRights.html:109
+#. ($id)
+msgid "Couldn't load CustomField %1"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2009
+#. ($self->Id)
+msgid "Couldn't load copy of ticket #%1."
+msgstr ""
+
+#: html/Admin/Groups/GroupRights.html:111 html/Admin/Groups/UserRights.html:98
+#. ($id)
+msgid "Couldn't load group %1"
+msgstr ""
+
+#: lib/RT/Link_Overlay.pm:204 lib/RT/Link_Overlay.pm:213 lib/RT/Link_Overlay.pm:240
+msgid "Couldn't load link"
+msgstr ""
+
+#: html/Admin/Elements/ObjectCustomFields:85 html/Admin/Queues/CustomFields.html:61 html/Admin/Users/CustomFields.html:61
+#. ($id)
+msgid "Couldn't load object %1"
+msgstr ""
+
+#: html/Admin/Queues/People.html:144
+#. ($id)
+msgid "Couldn't load queue"
+msgstr ""
+
+#: html/Admin/Queues/GroupRights.html:124 html/Admin/Queues/UserRights.html:95
+#. ($id)
+msgid "Couldn't load queue %1"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:128 html/Admin/Elements/EditScrip:169
+#. ($id)
+msgid "Couldn't load scrip #%1"
+msgstr ""
+
+#: html/SelfService/Display.html:160 lib/RT/Action/CreateTickets.pm:682
+#. ($id)
+msgid "Couldn't load ticket '%1'"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2637
+#. ($args{'URI'})
+msgid "Couldn't resolve '%1' into a URI."
+msgstr ""
+
+#: lib/RT/Link_Overlay.pm:113
+#. ($args{'Base'})
+msgid "Couldn't resolve base '%1' into a URI."
+msgstr ""
+
+#: lib/RT/Link_Overlay.pm:128
+#. ($args{'Target'})
+msgid "Couldn't resolve target '%1' into a URI."
+msgstr ""
+
+#: html/Admin/Users/Modify.html:176 html/User/Prefs.html:155
+msgid "Country"
+msgstr "País"
+
+#: html/Admin/Elements/CreateUserCalled:49 html/Admin/Elements/EditCustomField:86 html/Admin/Elements/EditScrip:135 html/Admin/Global/Template.html:67 html/Admin/Queues/Template.html:68 html/Elements/QuickCreate:67 html/Ticket/Create.html:171 html/Ticket/Create.html:238
+msgid "Create"
+msgstr "Criar"
+
+#: etc/initialdata:135
+msgid "Create Tickets"
+msgstr "Criar tickets"
+
+#: html/Admin/CustomFields/Modify.html:152 html/Admin/Elements/EditCustomField:98
+msgid "Create a CustomField"
+msgstr ""
+
+#: html/Admin/Queues/CustomField.html:71
+#. ($QueueObj->Name())
+msgid "Create a CustomField for queue %1"
+msgstr ""
+
+#: html/Admin/Groups/Modify.html:105 html/Admin/Groups/Modify.html:131
+msgid "Create a new group"
+msgstr "Criar novo grupo"
+
+#: html/User/Groups/Modify.html:115 html/User/Groups/Modify.html:90
+msgid "Create a new personal group"
+msgstr ""
+
+#: html/Ticket/Create.html:49 html/Ticket/Create.html:53 html/Ticket/Create.html:62
+msgid "Create a new ticket"
+msgstr "Criar novo ticket"
+
+#: html/Admin/Users/Modify.html:256 html/Admin/Users/Modify.html:318
+msgid "Create a new user"
+msgstr "Criar novo utilizador"
+
+#: html/Admin/Queues/Modify.html:127
+msgid "Create a queue"
+msgstr "Criar queue"
+
+#: html/Admin/Queues/Scrip.html:91
+#. ($QueueObj->Name)
+msgid "Create a scrip for queue %1"
+msgstr ""
+
+#: html/Admin/Global/Template.html:87 html/Admin/Queues/Template.html:88
+msgid "Create a template"
+msgstr "Criar template"
+
+#: html/SelfService/Create.html:48 html/SelfService/CreateTicketInQueue.html:48
+msgid "Create a ticket"
+msgstr "Criar ticket"
+
+#: etc/initialdata:137
+msgid "Create new tickets based on this scrip's template"
+msgstr "Criar novo pedido baseado num modelo existente"
+
+#: html/SelfService/Create.html:107
+msgid "Create ticket"
+msgstr "Criar ticket"
+
+#: lib/RT/Queue_Overlay.pm:111
+msgid "Create tickets in this queue"
+msgstr "Criar tickets nesta queue"
+
+#: lib/RT/CustomField_Overlay.pm:108
+msgid "Create, delete and modify custom fields"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:94
+msgid "Create, delete and modify queues"
+msgstr ""
+
+#: lib/RT/System.pm:82
+msgid "Create, delete and modify the members of personal groups"
+msgstr ""
+
+#: lib/RT/System.pm:83
+msgid "Create, delete and modify users"
+msgstr ""
+
+#: lib/RT/System.pm:89
+msgid "CreateSavedSearch"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:111
+msgid "CreateTicket"
+msgstr ""
+
+#: html/Elements/SelectDateType:49 html/Ticket/Elements/ShowDates:50 lib/RT/Ticket_Overlay.pm:1171
+msgid "Created"
+msgstr "Criado"
+
+#: html/Admin/CustomFields/Modify.html:165 html/Admin/Elements/EditCustomField:119
+#. ($CustomFieldObj->Name())
+msgid "Created CustomField %1"
+msgstr "Campo Personalisado %1 criado"
+
+#: html/Tools/Reports/Elements/Tabs:65
+msgid "Created in a date range"
+msgstr ""
+
+#: html/Tools/Reports/CreatedByDates.html:54
+msgid "Created tickets in period, grouped by status"
+msgstr "Pedidos criados dentro de um periodo de tempo, agrupados por estado"
+
+#: html/Search/Elements/PickBasics:104
+msgid "Creator"
+msgstr ""
+
+#: html/Elements/EditLinks:51
+msgid "Current Links"
+msgstr "Links actuais"
+
+#: html/Admin/Elements/EditScrips:53
+msgid "Current Scrips"
+msgstr ""
+
+#: html/Admin/Groups/Members.html:62 html/User/Groups/Members.html:65
+msgid "Current members"
+msgstr "Membros actuais"
+
+#: html/Admin/Elements/SelectRights:53
+msgid "Current rights"
+msgstr "Direitos actuais"
+
+#: html/Search/Elements/EditQuery:49
+msgid "Current search"
+msgstr "Pesquisa actual"
+
+#: html/Admin/Queues/People.html:64 html/Ticket/Elements/EditPeople:68
+msgid "Current watchers"
+msgstr ""
+
+#: html/Admin/Elements/SystemTabs:63 html/Admin/Elements/Tabs:64 html/Admin/Global/index.html:73 html/Admin/Users/Modify.html:209 html/Admin/index.html:79 html/Ticket/Elements/ShowSummary:58
+msgid "Custom Fields"
+msgstr ""
+
+#: html/Admin/CustomFields/index.html:62
+#. ($lookup)
+msgid "Custom Fields for %1"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:109
+msgid "Custom action cleanup code"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:105
+msgid "Custom action preparation code"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:101
+msgid "Custom condition"
+msgstr ""
+
+#: lib/RT/Tickets_Overlay.pm:2619
+#. ($CF->Name, $args{OPERATOR}, $args{VALUE})
+msgid "Custom field %1 %2 %3"
+msgstr ""
+
+#: lib/RT/Record.pm:1625
+#. ($args{'Field'})
+msgid "Custom field %1 does not apply to this object"
+msgstr ""
+
+#: lib/RT/Tickets_Overlay.pm:2613
+#. ($CF->Name)
+msgid "Custom field %1 has a value."
+msgstr ""
+
+#: lib/RT/Tickets_Overlay.pm:2609
+#. ($CF->Name)
+msgid "Custom field %1 has no value."
+msgstr ""
+
+#: lib/RT/Record.pm:1614 lib/RT/Record.pm:1776
+#. ($args{'Field'})
+msgid "Custom field %1 not found"
+msgstr ""
+
+#: lib/RT/Report/Tickets.pm:120 lib/RT/Report/Tickets.pm:123
+#. ($cf)
+#. ($obj->Name)
+msgid "Custom field '%1'"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:1160
+#. ($args{'Content'}, $self->Name)
+msgid "Custom field value %1 could not be found for custom field %2"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:422
+msgid "Custom field value could not be deleted"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:1172
+msgid "Custom field value could not be found"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:1174 lib/RT/CustomField_Overlay.pm:420
+msgid "Custom field value deleted"
+msgstr ""
+
+#: html/Elements/SelectGroups:53 html/Elements/SelectUsers:53 lib/RT/Transaction_Overlay.pm:659
+msgid "CustomField"
+msgstr ""
+
+#: html/Prefs/MyRT.html:80 html/Prefs/Quicksearch.html:72 html/Prefs/Search.html:77
+msgid "Customize"
+msgstr ""
+
+#: html/SelfService/Display.html:63 html/Ticket/Create.html:206 html/Ticket/Elements/ShowSummary:91 html/Ticket/Elements/Tabs:118 html/Ticket/ModifyAll.html:67
+msgid "Dates"
+msgstr "Datas"
+
+#: lib/RT/Date.pm:454
+msgid "Dec."
+msgstr "Dec"
+
+#: etc/initialdata:222
+msgid "Default Autoresponse template"
+msgstr ""
+
+#: html/Tools/Offline.html:63
+msgid "Default Queue"
+msgstr "Queue por omissão"
+
+#: html/Tools/Offline.html:72
+msgid "Default Requestor"
+msgstr ""
+
+#: etc/initialdata:296
+msgid "Default admin comment template"
+msgstr ""
+
+#: etc/initialdata:275
+msgid "Default admin correspondence template"
+msgstr ""
+
+#: etc/initialdata:287
+msgid "Default correspondence template"
+msgstr ""
+
+#: etc/initialdata:253
+msgid "Default transaction template"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:637
+#. ($type, $self->Field, ( $self->OldValue ? "'" . $self->OldValue . "'" : $self->loc("(no value)") ), "'" . $self->NewValue . "'")
+msgid "Default: %1/%2 changed from %3 to %4"
+msgstr ""
+
+#: html/User/Delegation.html:48 html/User/Delegation.html:51
+msgid "Delegate rights"
+msgstr ""
+
+#: lib/RT/System.pm:86
+msgid "Delegate specific rights which have been granted to you."
+msgstr ""
+
+#: lib/RT/System.pm:86
+msgid "DelegateRights"
+msgstr ""
+
+#: html/User/Elements/Tabs:61
+msgid "Delegation"
+msgstr ""
+
+#: html/Admin/Elements/EditScrips:77 html/Search/Elements/EditFormat:105 html/Search/Elements/EditQuery:59 html/Search/Elements/EditSearches:65 html/Widgets/SelectionBox:212
+msgid "Delete"
+msgstr "Apagar"
+
+#: html/Admin/Elements/EditTemplates:81
+msgid "Delete Template"
+msgstr "Apagar template"
+
+#: lib/RT/SavedSearch.pm:222
+#. ($msg)
+msgid "Delete failed: %1"
+msgstr ""
+
+#: html/Admin/Elements/EditScrips:76
+msgid "Delete selected scrips"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:116
+msgid "Delete tickets"
+msgstr "Apagar tickets"
+
+#: html/Search/Bulk.html:161
+msgid "Delete values"
+msgstr "Apagar valores"
+
+#: lib/RT/Queue_Overlay.pm:116
+msgid "DeleteTicket"
+msgstr ""
+
+#: lib/RT/SavedSearch.pm:220
+msgid "Deleted search"
+msgstr "Pesquisa apagada"
+
+#: lib/RT/Queue_Overlay.pm:396
+msgid "Deleting this object would break referential integrity"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:514
+msgid "Deleting this object would violate referential integrity"
+msgstr ""
+
+#: html/Approvals/Elements/Approve:75
+msgid "Deny"
+msgstr ""
+
+#: html/Elements/EditLinks:141 html/Elements/EditLinks:68 html/Elements/ShowLinks:60 html/Ticket/Create.html:224 html/Ticket/Elements/BulkLinks:58 html/Ticket/Elements/ShowDependencies:55
+msgid "Depended on by"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:739
+#. ($value)
+msgid "Dependency by %1 added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:779
+#. ($value)
+msgid "Dependency by %1 deleted"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:736
+#. ($value)
+msgid "Dependency on %1 added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:776
+#. ($value)
+msgid "Dependency on %1 deleted"
+msgstr ""
+
+#: html/Elements/EditLinks:137 html/Elements/EditLinks:59 html/Elements/SelectLinkType:50 html/Elements/ShowLinks:50 html/Ticket/Create.html:223 html/Ticket/Elements/BulkLinks:54 html/Ticket/Elements/ShowDependencies:48
+msgid "Depends on"
+msgstr ""
+
+#: html/Search/Elements/DisplayOptions:88
+msgid "Desc"
+msgstr ""
+
+#: html/Elements/SelectSortOrder:58
+msgid "Descending"
+msgstr "Descendente"
+
+#: html/SelfService/Create.html:102 html/Ticket/Create.html:154
+msgid "Describe the issue below"
+msgstr "Descreva o pedido, abaixo"
+
+#: html/Admin/CustomFields/Modify.html:63 html/Admin/Elements/AddCustomFieldValue:59 html/Admin/Elements/EditCustomField:62 html/Admin/Elements/EditCustomFieldValues:58 html/Admin/Elements/EditScrip:57 html/Admin/Elements/ModifyTemplate:59 html/Admin/Groups/Modify.html:73 html/Admin/Queues/Modify.html:71 html/Search/Elements/EditSearches:58 html/User/Groups/Modify.html:72
+msgid "Description"
+msgstr "Descrição"
+
+#: html/Search/Elements/EditFormat:73 html/Ticket/Elements/Tabs:110
+msgid "Display"
+msgstr "Mostrar"
+
+#: lib/RT/Queue_Overlay.pm:95
+msgid "Display Access Control List"
+msgstr ""
+
+#: html/Search/Elements/DisplayOptions:48
+msgid "Display Columns"
+msgstr "Visualizar Colunas"
+
+#: lib/RT/Queue_Overlay.pm:101
+msgid "Display Scrip templates for this queue"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:104
+msgid "Display Scrips for this queue"
+msgstr ""
+
+#: html/Ticket/Elements/ShowHistory:61
+msgid "Display mode"
+msgstr "Modo de visualização"
+
+#: lib/RT/Group_Overlay.pm:170
+msgid "Display saved searches for this group"
+msgstr "Visualizar a pesquisa gravada para este grupo"
+
+#: html/Elements/Footer:63
+msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
+msgstr ""
+
+#: lib/RT/System.pm:77
+msgid "Do anything and everything"
+msgstr ""
+
+#: html/Elements/Refresh:53
+msgid "Don't refresh this page."
+msgstr ""
+
+#: html/Ticket/Elements/ShowTransactionAttachments:84
+msgid "Download"
+msgstr "Descarregar"
+
+#: html/Admin/Groups/index.html:63 html/Admin/Users/index.html:66
+msgid "Download as a tab-delimited file"
+msgstr "Descarregar num ficheiro separado por tabs"
+
+#: html/Elements/SelectDateType:55 html/Ticket/Create.html:212 html/Ticket/Elements/EditDates:68 html/Ticket/Elements/Reminders:135 html/Ticket/Elements/ShowDates:66 lib/RT/Ticket_Overlay.pm:1175
+msgid "Due"
+msgstr "Prazo"
+
+#: html/Elements/Quicksearch:50 html/Elements/ShowSearch:51 html/index.html:109
+msgid "Edit"
+msgstr "Editar"
+
+#: html/Search/Bulk.html:151
+msgid "Edit Custom Fields"
+msgstr "Editar Campos Personalizados"
+
+#: html/Admin/Elements/ObjectCustomFields:94 html/Admin/Queues/CustomFields.html:66 html/Admin/Users/CustomFields.html:66
+#. ($Object->Name)
+msgid "Edit Custom Fields for %1"
+msgstr "Editar Campos Personalizados de %1"
+
+#: html/Admin/Global/CustomFields/Groups.html:56
+msgid "Edit Custom Fields for all groups"
+msgstr "Editar Campos Personalizados para todos os grupos"
+
+#: html/Admin/Global/CustomFields/Users.html:56
+msgid "Edit Custom Fields for all users"
+msgstr "Editar Campos Personalizados para todos os utilizadores"
+
+#: html/Admin/Global/CustomFields/Queue-Tickets.html:56 html/Admin/Global/CustomFields/Queue-Transactions.html:56
+msgid "Edit Custom Fields for tickets in all queues"
+msgstr "Editar \"Campos Personalizados\" para todos os pedidos"
+
+#: html/Search/Bulk.html:190 html/Ticket/ModifyLinks.html:59
+msgid "Edit Links"
+msgstr "Editar ligações"
+
+#: html/Search/Edit.html:70
+msgid "Edit Query"
+msgstr "Editar Pesquisa"
+
+#: html/Ticket/Elements/Tabs:216
+msgid "Edit Search"
+msgstr "Editar Pesquisa"
+
+#: html/Admin/Queues/Templates.html:65
+#. ($QueueObj->Name)
+msgid "Edit Templates for queue %1"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:169
+msgid "Edit saved searches for this group"
+msgstr "Editar Pesquisas para este grupo"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:62 html/Admin/Global/index.html:69
+msgid "Edit system templates"
+msgstr "Editar modelos de sistema"
+
+#: lib/RT/Group_Overlay.pm:169
+msgid "EditSavedSearches"
+msgstr ""
+
+#: html/Admin/Queues/Modify.html:142
+#. ($QueueObj->Name)
+msgid "Editing Configuration for queue %1"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:169 html/Admin/Elements/EditCustomField:122
+#. ($CustomFieldObj->Name())
+msgid "Editing CustomField %1"
+msgstr ""
+
+#: html/Admin/Groups/Members.html:57
+#. ($Group->Name)
+msgid "Editing membership for group %1"
+msgstr ""
+
+#: html/User/Groups/Members.html:152
+#. ($Group->Name)
+msgid "Editing membership for personal group %1"
+msgstr ""
+
+#: lib/RT/Record.pm:1317 lib/RT/Record.pm:1394 lib/RT/Ticket_Overlay.pm:2512 lib/RT/Ticket_Overlay.pm:2602
+msgid "Either base or target must be specified"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:76 html/Ticket/Elements/AddWatchers:79 html/User/Prefs.html:67
+msgid "Email"
+msgstr "Email"
+
+#: lib/RT/User_Overlay.pm:237
+msgid "Email address in use"
+msgstr "Endereço de email já utilizado"
+
+#: html/Admin/CustomFields/Modify.html:100 html/Admin/Elements/EditCustomField:74
+msgid "Enabled (Unchecking this box disables this custom field)"
+msgstr "Activo (remover selecção desta caixa desactiva este campo)"
+
+#: html/Admin/Groups/Modify.html:89 html/User/Groups/Modify.html:76
+msgid "Enabled (Unchecking this box disables this group)"
+msgstr "Activo (remover selecção desta caixa desactiva este grupo)"
+
+#: html/Admin/Queues/Modify.html:107
+msgid "Enabled (Unchecking this box disables this queue)"
+msgstr "Activo (remover selecção desta caixa desactiva esta queue)"
+
+#: html/Admin/Queues/index.html:80
+msgid "Enabled Queues"
+msgstr "Queues activas"
+
+#: html/Admin/Elements/EditCustomField:138 html/Admin/Groups/Modify.html:156 html/Admin/Users/Modify.html:354 html/User/Groups/Modify.html:140
+#. (loc_fuzzy($msg))
+msgid "Enabled status %1"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:187 html/Admin/Queues/Modify.html:164
+#. (loc_fuzzy($msg))
+msgid "Enabled status: %1"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:66
+msgid "Enter multiple values"
+msgstr ""
+
+#: html/Elements/EditLinks:127
+msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:67
+msgid "Enter one value"
+msgstr "Inserir um valor"
+
+#: html/Elements/EditLinks:124
+msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
+msgstr "Escreva as filas ou URIs para ligar as filas. Separe várias entradas com espaços."
+
+#: html/Elements/EditLinks:120 html/Search/Bulk.html:191
+msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
+msgstr "Escreva o número dos pedidos ou URIs para ligar os pedidos. Separe várias entradas com espaços."
+
+#: lib/RT/CustomField_Overlay.pm:68
+msgid "Enter up to %1 values"
+msgstr "Inserir até %1 valores"
+
+#: html/Elements/Login:78 html/SelfService/Error.html:48 html/SelfService/Error.html:49
+msgid "Error"
+msgstr "Erro"
+
+#: lib/RT/Queue_Overlay.pm:681
+msgid "Error in parameters to Queue->AddWatcher"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:837
+msgid "Error in parameters to Queue->DeleteWatcher"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1376
+msgid "Error in parameters to Ticket->AddWatcher"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1531
+msgid "Error in parameters to Ticket->DeleteWatcher"
+msgstr ""
+
+#: html/Search/Build.html:390
+#. ($val, $token, $string)
+msgid "Error near ->%1<- expecting a %2 in '%3'"
+msgstr ""
+
+#: bin/rt-crontool:287
+msgid "Escalate tickets"
+msgstr ""
+
+#: html/Ticket/Elements/ShowBasics:59
+msgid "Estimated"
+msgstr "Estimado"
+
+#: etc/initialdata:20
+msgid "Everyone"
+msgstr "Todos"
+
+#: bin/rt-crontool:273
+msgid "Example:"
+msgstr "Exemplo:"
+
+#: html/Admin/Users/Modify.html:101
+msgid "Extra info"
+msgstr "Informação adicional"
+
+#: lib/RT/SavedSearch.pm:179
+msgid "Failed to create search attribute"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:378
+msgid "Failed to find 'Privileged' users pseudogroup."
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:385
+msgid "Failed to find 'Unprivileged' users pseudogroup"
+msgstr ""
+
+#: bin/rt-crontool:208
+#. ($modname, $@)
+msgid "Failed to load module %1. (%2)"
+msgstr ""
+
+#: lib/RT/SavedSearch.pm:154
+#. ($privacy)
+msgid "Failed to load object for %1"
+msgstr ""
+
+#: lib/RT/Date.pm:444
+msgid "Feb."
+msgstr "Feb"
+
+#: html/Elements/SelectAttachmentField:52
+msgid "Filename"
+msgstr "Ficheiro"
+
+#: lib/RT/CustomField_Overlay.pm:71
+msgid "Fill in multiple text areas"
+msgstr "Preencher múltiplas áreas de texto"
+
+#: lib/RT/CustomField_Overlay.pm:76
+msgid "Fill in multiple wikitext areas"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:72
+msgid "Fill in one text area"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:77
+msgid "Fill in one wikitext area"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:109 html/Admin/CustomFields/Modify.html:120
+msgid "Fill in this field with a URL."
+msgstr "Preencha este campo com um URL"
+
+#: lib/RT/CustomField_Overlay.pm:73
+msgid "Fill in up to %1 text areas"
+msgstr "Preencha até %1 áreas de texto"
+
+#: lib/RT/CustomField_Overlay.pm:78
+msgid "Fill in up to %1 wikitext areas"
+msgstr ""
+
+#: html/Search/Elements/PickBasics:151 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:99 lib/RT/Tickets_Overlay.pm:2030
+msgid "Final Priority"
+msgstr "Prioridade final"
+
+#: lib/RT/Ticket_Overlay.pm:1166
+msgid "FinalPriority"
+msgstr ""
+
+#: html/Admin/Groups/index.html:74 html/Admin/Queues/People.html:84 html/Ticket/Elements/EditPeople:57
+msgid "Find groups whose"
+msgstr "Encontrar grupos cujo"
+
+#: html/Admin/Queues/People.html:80 html/Admin/Users/index.html:72 html/Ticket/Elements/EditPeople:53
+msgid "Find people whose"
+msgstr "Encontrar pessoas cujo"
+
+#: html/Search/Results.html:149
+msgid "Find tickets"
+msgstr "Encontrar tickets"
+
+#: html/Ticket/Elements/Tabs:83
+msgid "First"
+msgstr "Primeiro"
+
+#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:764
+msgid "Foo Bar Baz"
+msgstr ""
+
+#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:755
+msgid "Foo!"
+msgstr ""
+
+#: html/Search/Bulk.html:85
+msgid "Force change"
+msgstr "Forçar alteraçao"
+
+#: html/Search/Elements/EditFormat:54
+msgid "Format"
+msgstr ""
+
+#: html/Search/Results.html:147
+#. ($ticketcount)
+msgid "Found %quant(%1,ticket)"
+msgstr ""
+
+#: lib/RT/Record.pm:973
+msgid "Found Object"
+msgstr ""
+
+#: lib/RT/Date.pm:423
+msgid "Fri."
+msgstr "Fri"
+
+#: html/Ticket/Elements/ShowHistory:68 html/Ticket/Elements/ShowHistory:74
+msgid "Full headers"
+msgstr "Cabeçalhos completos"
+
+#: html/Tools/Offline.html:87
+msgid "Get template from file"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:705
+#. ($New->Name)
+msgid "Given to %1"
+msgstr ""
+
+#: html/Admin/Elements/Tabs:67 html/Admin/index.html:84
+msgid "Global"
+msgstr ""
+
+#: html/Admin/Elements/EditCustomFields:57
+msgid "Global Custom Fields"
+msgstr ""
+
+#: html/Admin/Global/CustomFields/index.html:61
+msgid "Global custom field configuration"
+msgstr ""
+
+#: html/Admin/Global/MyRT.html:95
+#. ($pane)
+msgid "Global portlet %1 saved."
+msgstr ""
+
+#: html/Admin/Elements/SelectTemplate:61
+#. (loc($Template->Name))
+msgid "Global template: %1"
+msgstr ""
+
+#: html/Admin/CustomFields/index.html:82 html/Admin/Groups/index.html:69 html/Admin/Groups/index.html:75 html/Admin/Queues/People.html:82 html/Admin/Queues/People.html:86 html/Admin/Queues/index.html:68 html/Admin/Users/index.html:75 html/Approvals/index.html:54 html/Elements/RefreshHomepage:50 html/Search/Results.html:76 html/Search/Results.html:92 html/Ticket/Elements/EditPeople:55 html/Ticket/Elements/EditPeople:59 html/Tools/Offline.html:91
+msgid "Go!"
+msgstr ""
+
+#: html/Elements/GotoTicket:48 html/SelfService/Elements/GotoTicket:48
+msgid "Goto ticket"
+msgstr "Ir para ticket"
+
+#: html/Ticket/Elements/AddWatchers:69 html/Ticket/Elements/ShowGroupMembers:57 html/User/Elements/DelegateRights:101
+msgid "Group"
+msgstr "Grupo"
+
+#: html/Admin/Elements/CustomFieldTabs:70 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:84 html/Admin/Elements/SystemTabs:67 html/Admin/Global/index.html:78
+msgid "Group Rights"
+msgstr "Direitos do grupo"
+
+#: lib/RT/Group_Overlay.pm:985
+msgid "Group already has member"
+msgstr "Grupo já tem membro"
+
+#: html/Admin/Groups/Modify.html:115
+#. ($create_msg)
+msgid "Group could not be created: %1"
+msgstr "Grupo não pôde ser criado: %1"
+
+#: lib/RT/Group_Overlay.pm:523
+msgid "Group created"
+msgstr "Grupo criado"
+
+#: lib/RT/Group_Overlay.pm:1157
+msgid "Group has no such member"
+msgstr "O grupo não tem esse membro"
+
+#: lib/RT/Group_Overlay.pm:965 lib/RT/Queue_Overlay.pm:743 lib/RT/Queue_Overlay.pm:810 lib/RT/Ticket_Overlay.pm:1423 lib/RT/Ticket_Overlay.pm:1503
+msgid "Group not found"
+msgstr "Grupo não encontrado"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:61 html/Admin/Elements/SelectNewGroupMembers:59 html/Admin/Elements/Tabs:58 html/Admin/Global/CustomFields/index.html:71 html/Admin/Groups/Members.html:88 html/Admin/Queues/People.html:106 html/Admin/Users/Memberships.html:55 html/Admin/index.html:69 html/User/Groups/Members.html:90 lib/RT/CustomField_Overlay.pm:1213
+msgid "Groups"
+msgstr "Grupos"
+
+#: lib/RT/Group_Overlay.pm:991
+msgid "Groups can't be members of their members"
+msgstr "Grupos não podem ser membros dos seus membros"
+
+#: html/Admin/Groups/index.html:88
+msgid "Groups matching search criteria"
+msgstr "Grupos que preenchem critérios"
+
+#: html/Ticket/Elements/ShowRequestor:79
+msgid "Groups this user belongs to"
+msgstr "Grupos a que este utilizador pertence"
+
+#: lib/RT/Interface/CLI.pm:96 lib/RT/Interface/CLI.pm:96
+msgid "Hello!"
+msgstr "Olá!"
+
+#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:771
+#. ($name)
+msgid "Hello, %1"
+msgstr "Olá, %1"
+
+#: html/Admin/Elements/GroupTabs:72 html/Admin/Elements/UserTabs:66 html/Ticket/Elements/ShowHistory:55 html/Ticket/Elements/Tabs:113
+msgid "History"
+msgstr "Histórico"
+
+#: html/Admin/Groups/History.html:64
+#. ($GroupObj->Name)
+msgid "History of the group %1"
+msgstr "Histórico do grupo %1"
+
+#: html/Admin/Users/History.html:64
+#. ($UserObj->Name)
+msgid "History of the user %1"
+msgstr "Histórico do utilizador %1"
+
+#: html/Elements/Tabs:68
+msgid "Homepage"
+msgstr "Home"
+
+#: html/Elements/SelectTimeUnits:50
+msgid "Hours"
+msgstr "Horas"
+
+#: lib/RT/Base.pm:135
+#. (6)
+msgid "I have %quant(%1,concrete mixer)."
+msgstr ""
+
+#: html/Search/Build.html:466 lib/RT/Report/Tickets.pm:415
+msgid "I'm lost"
+msgstr "Estou perdido"
+
+#: html/Ticket/Elements/ShowBasics:50 lib/RT/Tickets_Overlay.pm:1955
+msgid "Id"
+msgstr "Id"
+
+#: html/Admin/Users/Modify.html:67 html/User/Prefs.html:62
+msgid "Identity"
+msgstr "Identidade"
+
+#: etc/initialdata:429
+msgid "If an approval is rejected, reject the original and delete pending approvals"
+msgstr ""
+
+#: html/Tools/Offline.html:76
+msgid "If no Requestor is specified, create tickets with this requestor."
+msgstr "Se nenhum Requerente for especificado, criar um pedido sem Requerente."
+
+#: html/Tools/Offline.html:67
+msgid "If no queue is specified, create tickets in this queue."
+msgstr "Se nenhuma queue foi definida, criar tickets nesta queue"
+
+#: bin/rt-crontool:269
+msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
+msgstr ""
+
+#: html/Admin/Queues/People.html:128 html/Ticket/Modify.html:62 html/Ticket/ModifyAll.html:130 html/Ticket/ModifyPeople.html:62
+msgid "If you've updated anything above, be sure to"
+msgstr "Se actualizou algo acima, certifique-se que"
+
+#: lib/RT/Record.pm:964
+msgid "Illegal value for %1"
+msgstr ""
+
+#: lib/RT/Record.pm:967
+msgid "Immutable field"
+msgstr ""
+
+#: html/Admin/Groups/index.html:67
+msgid "Include disabled groups in listing."
+msgstr "Incluir grupos desactivados na listagem"
+
+#: html/Admin/Queues/index.html:67
+msgid "Include disabled queues in listing."
+msgstr "Incluir queues desactivadas na listagem"
+
+#: html/Admin/Users/index.html:73
+msgid "Include disabled users in search."
+msgstr "Incluir utilizadores desactivados na listagem"
+
+#: html/Admin/CustomFields/Modify.html:115
+msgid "Include page"
+msgstr "Incluir página"
+
+#: html/Search/Build.html:492 lib/RT/Report/Tickets.pm:441
+msgid "Incomplete Query"
+msgstr "Query incompleta"
+
+#: html/Search/Build.html:489 lib/RT/Report/Tickets.pm:438
+msgid "Incomplete query"
+msgstr "Query incompleta"
+
+#: html/Search/Elements/PickBasics:150 lib/RT/Tickets_Overlay.pm:2005
+msgid "Initial Priority"
+msgstr "Prioridade Inicial"
+
+#: lib/RT/Ticket_Overlay.pm:1165 lib/RT/Ticket_Overlay.pm:1167
+msgid "InitialPriority"
+msgstr ""
+
+#: lib/RT/ScripAction_Overlay.pm:135
+msgid "Input error"
+msgstr ""
+
+#: html/Elements/ValidateCustomFields:70 lib/RT/CustomField_Overlay.pm:1024 lib/RT/CustomField_Overlay.pm:1165
+#. ($self->FriendlyPattern)
+#. ($CF->FriendlyPattern)
+msgid "Input must match %1"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:3522
+msgid "Internal Error"
+msgstr "Erro interno"
+
+#: lib/RT/Record.pm:315
+#. ($id->{error_message})
+msgid "Internal Error: %1"
+msgstr "Erro interno: %1"
+
+#: lib/RT/Group_Overlay.pm:670
+msgid "Invalid Group Type"
+msgstr ""
+
+#: lib/RT/Principal_Overlay.pm:163
+msgid "Invalid Right"
+msgstr "Direito Inválido"
+
+#: lib/RT/Record.pm:969
+msgid "Invalid data"
+msgstr "Dados Inválidos"
+
+#: lib/RT/CustomField_Overlay.pm:210 lib/RT/CustomField_Overlay.pm:681
+#. ($msg)
+msgid "Invalid pattern: %1"
+msgstr "Padrão inválido: %1"
+
+#: lib/RT/Scrip_Overlay.pm:159 lib/RT/Template_Overlay.pm:246
+msgid "Invalid queue"
+msgstr "Queue inválida"
+
+#: lib/RT/ACE_Overlay.pm:266 lib/RT/ACE_Overlay.pm:275 lib/RT/ACE_Overlay.pm:281 lib/RT/ACE_Overlay.pm:292
+msgid "Invalid right"
+msgstr "Direito inválido"
+
+#: lib/RT/Record.pm:290
+#. ($key)
+msgid "Invalid value for %1"
+msgstr "Valor inválido para %1"
+
+#: lib/RT/Record.pm:1632
+msgid "Invalid value for custom field"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:426
+msgid "Invalid value for status"
+msgstr "Valor inválido para estado"
+
+#: bin/rt-crontool:270
+msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
+msgstr "É muito importante que os utilizadores não privilegiados não possam executar esta ferramenta."
+
+#: bin/rt-crontool:271
+msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
+msgstr "É sugerido que crie um utilizador não privilegiado com o grupo correcto e acesso ao RT para utilizar esta ferramenta."
+
+#: bin/rt-crontool:233
+msgid "It takes several arguments:"
+msgstr "Necessários vários argumentos:"
+
+#: html/Search/Elements/EditFormat:87
+msgid "Italic"
+msgstr "Itálico"
+
+#: lib/RT/Date.pm:443
+msgid "Jan."
+msgstr "Jan"
+
+#: lib/RT/Group_Overlay.pm:168
+msgid "Join or leave this group"
+msgstr ""
+
+#: lib/RT/Date.pm:449
+msgid "Jul."
+msgstr "Jul"
+
+#: html/Ticket/Elements/Tabs:127
+msgid "Jumbo"
+msgstr ""
+
+#: lib/RT/Date.pm:448
+msgid "Jun."
+msgstr "Jun"
+
+#: html/Admin/Users/Modify.html:96 html/User/Prefs.html:78
+msgid "Language"
+msgstr "Língua"
+
+#: html/Search/Elements/EditFormat:81
+msgid "Large"
+msgstr ""
+
+#: html/Ticket/Elements/Tabs:98
+msgid "Last"
+msgstr "Último"
+
+#: html/Ticket/Elements/EditDates:61 html/Ticket/Elements/ShowDates:62
+msgid "Last Contact"
+msgstr "Último Contacto"
+
+#: html/Elements/SelectDateType:52
+msgid "Last Contacted"
+msgstr ""
+
+#: html/Elements/SelectDateType:53
+msgid "Last Updated"
+msgstr "Última actualização"
+
+#: html/Search/Elements/PickBasics:105
+msgid "LastUpdatedBy"
+msgstr ""
+
+#: html/Ticket/Elements/ShowBasics:70
+msgid "Left"
+msgstr "Restante"
+
+#: html/Admin/Users/Modify.html:111
+msgid "Let this user access RT"
+msgstr "Permitir que este utilizador aceda ao RT"
+
+#: html/Admin/Users/Modify.html:115
+msgid "Let this user be granted rights"
+msgstr "Permitir que este utilizador tenha direitos"
+
+#: html/Search/Elements/EditFormat:70
+msgid "Link"
+msgstr "Ligação"
+
+#: lib/RT/Record.pm:1328
+msgid "Link already exists"
+msgstr "Ligação já existe"
+
+#: lib/RT/Record.pm:1342
+msgid "Link could not be created"
+msgstr "Ligação não pôde ser criada"
+
+#: lib/RT/Record.pm:1348
+#. ($TransString)
+msgid "Link created (%1)"
+msgstr "Ligação criada (%1)"
+
+#: lib/RT/Record.pm:1409
+#. ($TransString)
+msgid "Link deleted (%1)"
+msgstr "Ligação apagada (%1)"
+
+#: lib/RT/Record.pm:1415
+msgid "Link not found"
+msgstr "Ligação não encontrada"
+
+#: html/Ticket/ModifyLinks.html:48 html/Ticket/ModifyLinks.html:52
+#. ($Ticket->Id)
+msgid "Link ticket #%1"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:104
+msgid "Link values to"
+msgstr "Ligar valores a"
+
+#: lib/RT/Ticket_Overlay.pm:702
+msgid "Linking. Permission denied"
+msgstr "Ligação. Permissão negada"
+
+#: html/Ticket/Create.html:219 html/Ticket/Elements/ShowSummary:97 html/Ticket/Elements/Tabs:122 html/Ticket/ModifyAll.html:80
+msgid "Links"
+msgstr "Ligações"
+
+#: html/Search/Elements/EditSearches:77
+msgid "Load"
+msgstr "Carregar"
+
+#: html/Search/Elements/EditSearches:75
+msgid "Load saved search:"
+msgstr "Carregar pesquisa gravada:"
+
+#: lib/RT/System.pm:88
+msgid "LoadSavedSearch"
+msgstr ""
+
+#: html/Admin/Tools/Configuration.html:66
+msgid "Loaded perl modules"
+msgstr "Módulos perl carregados"
+
+#: lib/RT/SavedSearch.pm:113
+#. ($self->Name)
+msgid "Loaded search %1"
+msgstr "Pesquisa %1 carregada"
+
+#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:128
+msgid "Location"
+msgstr "Localização"
+
+#: html/Elements/Header:93
+#. ("<span>".$session{'CurrentUser'}->Name."</span>")
+msgid "Logged in as %1"
+msgstr "Ligado como %1"
+
+#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:102 html/Elements/Login:70 html/Elements/Login:86 lib/RT/StyleGuide.pod:795
+msgid "Login"
+msgstr "Entrar"
+
+#: html/Elements/Header:103
+msgid "Logout"
+msgstr "Sair"
+
+#: lib/RT/CustomField_Overlay.pm:935
+msgid "Lookup type mismatch"
+msgstr ""
+
+#: html/Search/Bulk.html:84
+msgid "Make Owner"
+msgstr "Definir Proprietário"
+
+#: html/Search/Bulk.html:108
+msgid "Make Status"
+msgstr "Definir estado"
+
+#: html/Search/Bulk.html:116
+msgid "Make date Due"
+msgstr "Definir data como prazo"
+
+#: html/Search/Bulk.html:118
+msgid "Make date Resolved"
+msgstr ""
+
+#: html/Search/Bulk.html:112
+msgid "Make date Started"
+msgstr ""
+
+#: html/Search/Bulk.html:110
+msgid "Make date Starts"
+msgstr ""
+
+#: html/Search/Bulk.html:114
+msgid "Make date Told"
+msgstr ""
+
+#: html/Search/Bulk.html:104
+msgid "Make priority"
+msgstr "Definir prioridade"
+
+#: html/Search/Bulk.html:106
+msgid "Make queue"
+msgstr ""
+
+#: html/Search/Bulk.html:102
+msgid "Make subject"
+msgstr "Definir assunto"
+
+#: lib/RT/Group_Overlay.pm:171
+msgid "Make this group visible to user"
+msgstr ""
+
+#: html/Admin/index.html:80
+msgid "Manage custom fields and custom field values"
+msgstr ""
+
+#: html/Admin/index.html:71
+msgid "Manage groups and group membership"
+msgstr "Gerir grupos e membros de grupos"
+
+#: html/Admin/index.html:87
+msgid "Manage properties and configuration which apply to all queues"
+msgstr "Gerir propriedades e configuração que se aplica a todas as queues"
+
+#: html/Admin/index.html:76
+msgid "Manage queues and queue-specific properties"
+msgstr "Gerir queues e propriedades específicas das queues"
+
+#: html/Admin/index.html:66
+msgid "Manage users and passwords"
+msgstr "Gerir utilizadores e passwords"
+
+#: lib/RT/Date.pm:445
+msgid "Mar."
+msgstr "Mar"
+
+#: lib/RT/Date.pm:447
+msgid "May."
+msgstr "May"
+
+#: lib/RT/Transaction_Overlay.pm:752
+#. ($value)
+msgid "Member %1 added"
+msgstr "Membro %1 adicionado"
+
+#: lib/RT/Transaction_Overlay.pm:792
+#. ($value)
+msgid "Member %1 deleted"
+msgstr "Membro %1 apagado"
+
+#: lib/RT/Group_Overlay.pm:1002
+msgid "Member added"
+msgstr "Membro adicionado"
+
+#: lib/RT/Group_Overlay.pm:1164
+msgid "Member deleted"
+msgstr "Membro apagado"
+
+#: lib/RT/Group_Overlay.pm:1168
+msgid "Member not deleted"
+msgstr "Membro não apagado"
+
+#: html/Elements/SelectLinkType:49
+msgid "Member of"
+msgstr "Membro de"
+
+#: html/Admin/Elements/GroupTabs:65 html/User/Elements/GroupTabs:65
+msgid "Members"
+msgstr "Membros"
+
+#: lib/RT/Transaction_Overlay.pm:749
+#. ($value)
+msgid "Membership in %1 added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:789
+#. ($value)
+msgid "Membership in %1 deleted"
+msgstr ""
+
+#: html/Admin/Elements/UserTabs:63
+msgid "Memberships"
+msgstr ""
+
+#: html/Admin/Users/Memberships.html:62
+#. ($UserObj->Name)
+msgid "Memberships of the user %1"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2896
+msgid "Merge Successful"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2774
+msgid "Merge failed. Couldn't set EffectiveId"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:2791
+msgid "Merge failed. Couldn't set Status"
+msgstr ""
+
+#: html/Elements/EditLinks:132 html/Ticket/Elements/BulkLinks:50
+msgid "Merge into"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:755
+#. ($value)
+msgid "Merged into %1"
+msgstr ""
+
+#: html/Search/Bulk.html:145 html/Ticket/Update.html:120
+msgid "Message"
+msgstr "Mensagem"
+
+#: html/Ticket/Elements/ShowTransactionAttachments:166
+msgid "Message body not shown because it is too large or is not plain text."
+msgstr "Corpo da mensagem não apresentado porque é grande demais ou não é texto"
+
+#: lib/RT/Ticket_Overlay.pm:2445
+msgid "Message could not be recorded"
+msgstr "Mensagem não pôde ser gravada"
+
+#: lib/RT/Ticket_Overlay.pm:2448
+msgid "Message recorded"
+msgstr "Mensagem gravada"
+
+#: html/Ticket/Elements/PreviewScrips:124
+msgid "Messages about this ticket will not be sent to..."
+msgstr "Mensagens sobre este ticket não serão enviadas a..."
+
+#: html/Elements/SelectTimeUnits:49
+msgid "Minutes"
+msgstr "Minutos"
+
+#: html/Search/Build.html:496 lib/RT/Report/Tickets.pm:445
+msgid "Mismatched parentheses"
+msgstr ""
+
+#: lib/RT/Record.pm:971
+msgid "Missing a primary key?: %1"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:196 html/User/Prefs.html:94
+msgid "Mobile"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:96
+msgid "Modify Access Control List"
+msgstr "Alterar Lista de Controle de Acessos"
+
+#: html/Admin/Elements/ObjectCustomFields:98
+#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
+msgid "Modify Custom Fields which apply to %1 for all %2"
+msgstr ""
+
+#: html/Admin/Elements/ObjectCustomFields:100
+#. (loc(lc($Types)))
+msgid "Modify Custom Fields which apply to all %1"
+msgstr ""
+
+#: html/Admin/Global/GroupRights.html:108 html/Admin/Groups/GroupRights.html:96 html/Admin/Queues/GroupRights.html:109
+msgid "Modify Group Rights"
+msgstr "Alterar Direitos de Grupo"
+
+#: html/Admin/Groups/Members.html:107 html/User/Groups/Members.html:103
+msgid "Modify Members"
+msgstr "Alterar Membros"
+
+#: html/User/Delegation.html:60
+msgid "Modify Rights"
+msgstr "Alterar Direitos"
+
+#: lib/RT/Queue_Overlay.pm:99
+msgid "Modify Scrip templates for this queue"
+msgstr "Alterar templates dos Scrips para esta queue"
+
+#: lib/RT/Queue_Overlay.pm:102
+msgid "Modify Scrips for this queue"
+msgstr "Alterar Scrips para esta queue"
+
+#: html/Admin/Global/UserRights.html:76 html/Admin/Groups/UserRights.html:78 html/Admin/Queues/UserRights.html:77
+msgid "Modify User Rights"
+msgstr "Alterar Direitos de Utilizadores"
+
+#: html/Admin/Queues/CustomField.html:68
+#. ($QueueObj->Name())
+msgid "Modify a CustomField for queue %1"
+msgstr ""
+
+#: html/Admin/Queues/Scrip.html:84
+#. ($QueueObj->Name)
+msgid "Modify a scrip for queue %1"
+msgstr "Alterar uma scrip da queue %1"
+
+#: html/Admin/Global/Scrip.html:77
+msgid "Modify a scrip that applies to all queues"
+msgstr "Alterar uma scrip que se aplica a todas as queues"
+
+#: html/Admin/CustomFields/Objects.html:92
+#. ($CF->Name)
+msgid "Modify associated objects for %1"
+msgstr ""
+
+#: html/Ticket/ModifyDates.html:48 html/Ticket/ModifyDates.html:52
+#. ($TicketObj->Id)
+msgid "Modify dates for #%1"
+msgstr "Alterar datas de #%1"
+
+#: html/Ticket/ModifyDates.html:59
+#. ($TicketObj->Id)
+msgid "Modify dates for ticket # %1"
+msgstr "Alterar datas do ticket # %1"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:67 html/Admin/Global/index.html:74
+msgid "Modify global custom fields"
+msgstr ""
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:72 html/Admin/Global/GroupRights.html:48 html/Admin/Global/GroupRights.html:51 html/Admin/Global/index.html:79
+msgid "Modify global group rights"
+msgstr "Alterar direitos de grupo globais"
+
+#: html/Admin/Global/GroupRights.html:56
+msgid "Modify global group rights."
+msgstr "Alterar direitos de grupo globais"
+
+#: html/Admin/Global/UserRights.html:48 html/Admin/Global/UserRights.html:51 html/Admin/Global/index.html:83
+msgid "Modify global user rights"
+msgstr "Alterar direitos de utilizador globais"
+
+#: html/Admin/Global/UserRights.html:56
+msgid "Modify global user rights."
+msgstr "Alterar direitos de utilizador globais"
+
+#: lib/RT/Group_Overlay.pm:165
+msgid "Modify group metadata or delete group"
+msgstr ""
+
+#: html/Admin/CustomFields/GroupRights.html:113
+#. ($CustomFieldObj->Name)
+msgid "Modify group rights for custom field %1"
+msgstr ""
+
+#: html/Admin/Groups/GroupRights.html:48 html/Admin/Groups/GroupRights.html:52 html/Admin/Groups/GroupRights.html:58
+#. ($GroupObj->Name)
+msgid "Modify group rights for group %1"
+msgstr "Alterar direitos de grupo para o grupo %1"
+
+#: html/Admin/Queues/GroupRights.html:48 html/Admin/Queues/GroupRights.html:52
+#. ($QueueObj->Name)
+msgid "Modify group rights for queue %1"
+msgstr "Alterar direitos de grupo para a queue %1"
+
+#: lib/RT/Group_Overlay.pm:167
+msgid "Modify membership roster for this group"
+msgstr ""
+
+#: lib/RT/System.pm:84
+msgid "Modify one's own RT account"
+msgstr ""
+
+#: html/Admin/Queues/People.html:48 html/Admin/Queues/People.html:52
+#. ($QueueObj->Name)
+msgid "Modify people related to queue %1"
+msgstr "Alterar pessoas relacionadas com a queue %1"
+
+#: html/Ticket/ModifyPeople.html:48 html/Ticket/ModifyPeople.html:52 html/Ticket/ModifyPeople.html:59
+#. ($Ticket->id)
+#. ($Ticket->Id)
+msgid "Modify people related to ticket #%1"
+msgstr "Alterar pessoas relacionadas com o ticket %1"
+
+#: html/Admin/Queues/Scrips.html:69
+#. ($QueueObj->Name)
+msgid "Modify scrips for queue %1"
+msgstr "Alterar scrips da queue %1"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:58 html/Admin/Global/Scrips.html:67 html/Admin/Global/index.html:65
+msgid "Modify scrips which apply to all queues"
+msgstr "Alterar scrips que se aplicam a todas as queues"
+
+#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:101
+#. (loc($TemplateObj->Name()))
+msgid "Modify template %1"
+msgstr "Alterar template %1"
+
+#: html/Admin/Global/Templates.html:67
+msgid "Modify templates which apply to all queues"
+msgstr "Alterar templates que se aplicam a todas as queues"
+
+#: html/Admin/Global/index.html:87
+msgid "Modify the default \"RT at a glance\" view"
+msgstr "Alterar a página principal"
+
+#: html/Admin/Groups/Modify.html:125 html/User/Groups/Modify.html:109
+#. ($Group->Name)
+msgid "Modify the group %1"
+msgstr "Alterar o grupo %1"
+
+#: lib/RT/Queue_Overlay.pm:97
+msgid "Modify the queue watchers"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:313
+#. ($UserObj->Name)
+msgid "Modify the user %1"
+msgstr "Alterar o utilizador %1"
+
+#: html/Ticket/ModifyAll.html:60
+#. ($Ticket->Id)
+msgid "Modify ticket # %1"
+msgstr "Alterar o ticket # %1"
+
+#: html/Ticket/Modify.html:48 html/Ticket/Modify.html:51 html/Ticket/Modify.html:57
+#. ($TicketObj->Id)
+msgid "Modify ticket #%1"
+msgstr "Alterar ticket # %1"
+
+#: lib/RT/Queue_Overlay.pm:115
+msgid "Modify tickets"
+msgstr "Alterar tickets"
+
+#: html/Admin/CustomFields/UserRights.html:159
+#. ($CustomFieldObj->Name)
+msgid "Modify user rights for custom field %1"
+msgstr ""
+
+#: html/Admin/Groups/UserRights.html:48 html/Admin/Groups/UserRights.html:52 html/Admin/Groups/UserRights.html:58
+#. ($GroupObj->Name)
+msgid "Modify user rights for group %1"
+msgstr "Alterar direitos de utilizadores para o grupo %1"
+
+#: html/Admin/Queues/UserRights.html:48 html/Admin/Queues/UserRights.html:52
+#. ($QueueObj->Name)
+msgid "Modify user rights for queue %1"
+msgstr "Alterar direitos de utilizador para a queue %1"
+
+#: lib/RT/Queue_Overlay.pm:96
+msgid "ModifyACL"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:110
+msgid "ModifyCustomField"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:168
+msgid "ModifyOwnMembership"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:97
+msgid "ModifyQueueWatchers"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:102
+msgid "ModifyScrips"
+msgstr ""
+
+#: lib/RT/System.pm:84
+msgid "ModifySelf"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:99
+msgid "ModifyTemplate"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:115
+msgid "ModifyTicket"
+msgstr ""
+
+#: lib/RT/Date.pm:419
+msgid "Mon."
+msgstr "Mon"
+
+#: html/Ticket/Elements/ShowRequestor:63
+#. ($name)
+msgid "More about %1"
+msgstr "Mais sobre %1"
+
+#: html/Admin/Elements/PickCustomFields:85
+msgid "Move down"
+msgstr "Mover para baixo"
+
+#: html/Admin/Elements/PickCustomFields:77
+msgid "Move up"
+msgstr "Mover para cima"
+
+#: html/Admin/Elements/SelectSingleOrMultiple:50
+msgid "Multiple"
+msgstr "Múltiplo"
+
+#: lib/RT/User_Overlay.pm:228
+msgid "Must specify 'Name' attribute"
+msgstr ""
+
+#: html/SelfService/Elements/MyRequests:79
+#. ($friendly_status)
+msgid "My %1 tickets"
+msgstr "Os meus %1 tickets"
+
+#: html/Tools/Elements/Tabs:65
+msgid "My Day"
+msgstr ""
+
+#: html/Approvals/index.html:48 html/Approvals/index.html:49
+msgid "My approvals"
+msgstr "As minhas aprovações"
+
+#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
+msgid "My saved searches"
+msgstr "As minhas pesquisas guardadas"
+
+#: html/Admin/CustomFields/Modify.html:60 html/Admin/Elements/AddCustomFieldValue:55 html/Admin/Elements/EditCustomField:57 html/Admin/Elements/EditCustomFieldValues:57 html/Admin/Elements/ModifyTemplate:51 html/Admin/Groups/Modify.html:67 html/Search/Bulk.html:159 html/User/Groups/Modify.html:67
+msgid "Name"
+msgstr "Nome"
+
+#: lib/RT/User_Overlay.pm:235
+msgid "Name in use"
+msgstr "Nome em utilização"
+
+#: html/Ticket/Elements/ShowDates:75
+msgid "Never"
+msgstr "Nunca"
+
+#: html/Elements/EditLinks:118
+msgid "New Links"
+msgstr "Novas Ligações"
+
+#: html/Admin/Users/Modify.html:121 html/User/Prefs.html:111
+msgid "New Password"
+msgstr "Nova Password"
+
+#: etc/initialdata:332
+msgid "New Pending Approval"
+msgstr "Novas aprovações pendentes"
+
+#: html/Ticket/Elements/Tabs:214
+msgid "New Search"
+msgstr "Nova Pesquisa"
+
+#: html/Admin/Elements/CustomFieldTabs:95 html/Admin/Queues/CustomField.html:75
+msgid "New custom field"
+msgstr ""
+
+#: html/Admin/Elements/GroupTabs:79 html/User/Elements/GroupTabs:75
+msgid "New group"
+msgstr "Novo grupo"
+
+#: html/SelfService/Prefs.html:55
+msgid "New password"
+msgstr "Nova password"
+
+#: lib/RT/User_Overlay.pm:818
+msgid "New password notification sent"
+msgstr ""
+
+#: html/Admin/Elements/QueueTabs:97
+msgid "New queue"
+msgstr "Nova queue"
+
+#: html/Ticket/Elements/Reminders:120
+msgid "New reminder:"
+msgstr "Nova Nota"
+
+#: html/Admin/Elements/SelectRights:67
+msgid "New rights"
+msgstr "Novos direitos"
+
+#: html/Admin/Global/Scrip.html:65 html/Admin/Global/Scrips.html:62 html/Admin/Queues/Scrip.html:73 html/Admin/Queues/Scrips.html:78
+msgid "New scrip"
+msgstr "Novo scrip"
+
+#: html/Admin/Global/Template.html:80 html/Admin/Global/Templates.html:62 html/Admin/Queues/Template.html:81 html/Admin/Queues/Templates.html:73
+msgid "New template"
+msgstr "Novo template"
+
+#: html/SelfService/Elements/Tabs:87 html/SelfService/Elements/Tabs:91
+msgid "New ticket"
+msgstr "Novo ticket"
+
+#: lib/RT/Ticket_Overlay.pm:2751
+msgid "New ticket doesn't exist"
+msgstr "Novo ticket não existe"
+
+#: html/Admin/Elements/UserTabs:83
+msgid "New user"
+msgstr "Novo utilizador"
+
+#: html/Admin/Elements/CreateUserCalled:49
+msgid "New user called"
+msgstr "Novo utilizador chamado"
+
+#: html/Admin/Queues/People.html:78 html/Ticket/Elements/EditPeople:52
+msgid "New watchers"
+msgstr ""
+
+#: html/Helpers/CalPopup.html:60 html/Ticket/Elements/Tabs:94
+msgid "Next"
+msgstr "Próximo"
+
+#: html/Elements/TicketList:108
+msgid "Next Page"
+msgstr "Próxima Página"
+
+#: html/Admin/Users/Modify.html:86 html/User/Prefs.html:74
+msgid "Nickname"
+msgstr "Nick"
+
+#: html/Admin/CustomFields/UserRights.html:147
+msgid "No Class defined"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:168 html/Admin/Elements/EditCustomField:121
+msgid "No CustomField"
+msgstr ""
+
+#: html/Admin/CustomFields/GroupRights.html:105
+msgid "No CustomField defined"
+msgstr ""
+
+#: html/Admin/Groups/GroupRights.html:107 html/Admin/Groups/UserRights.html:94
+msgid "No Group defined"
+msgstr "Sem Grupo definido"
+
+#: lib/RT/Tickets_Overlay_SQL.pm:484
+msgid "No Query"
+msgstr ""
+
+#: html/Admin/Queues/GroupRights.html:120 html/Admin/Queues/UserRights.html:91
+msgid "No Queue defined"
+msgstr ""
+
+#: bin/rt-crontool:75
+msgid "No RT user found. Please consult your RT administrator.\\n"
+msgstr ""
+
+#: html/Admin/Global/Template.html:98 html/Admin/Queues/Template.html:99
+msgid "No Template"
+msgstr ""
+
+#: html/Approvals/Elements/Approve:79
+msgid "No action"
+msgstr ""
+
+#: lib/RT/Record.pm:966
+msgid "No column specified"
+msgstr ""
+
+#: html/Ticket/Elements/ShowRequestor:70
+msgid "No comment entered about this user"
+msgstr ""
+
+#: lib/RT/Action/Generic.pm:187 lib/RT/Condition/Generic.pm:199 lib/RT/Search/ActiveTicketsInQueue.pm:79 lib/RT/Search/Generic.pm:136 lib/RT/Search/Googleish.pm:90
+#. (ref $self)
+msgid "No description for %1"
+msgstr "Sem descrição para %1"
+
+#: lib/RT/Users_Overlay.pm:192
+msgid "No group specified"
+msgstr "Grupo não especificado"
+
+#: html/Admin/Groups/index.html:54
+msgid "No groups matching search criteria found."
+msgstr "Nenhum grupo verificou o critério de pesquisa especificado."
+
+#: lib/RT/Ticket_Overlay.pm:2386
+msgid "No message attached"
+msgstr "Sem mensagem anexada"
+
+#: lib/RT/User_Overlay.pm:1036
+msgid "No password set"
+msgstr "Password não definida"
+
+#: lib/RT/Queue_Overlay.pm:363
+msgid "No permission to create queues"
+msgstr "Sem permissão para criar queues"
+
+#: lib/RT/Ticket_Overlay.pm:1090 lib/RT/Ticket_Overlay.pm:422
+#. ($QueueObj->Name)
+msgid "No permission to create tickets in the queue '%1'"
+msgstr "Sem permissão para criar tickets na queue '%1'"
+
+#: lib/RT/User_Overlay.pm:188
+msgid "No permission to create users"
+msgstr "Sem permissão para criar utilizadores"
+
+#: html/SelfService/Display.html:210
+msgid "No permission to display that ticket"
+msgstr "Sem permissão para ver esse ticket"
+
+#: lib/RT/SavedSearch.pm:158
+msgid "No permission to save system-wide searches"
+msgstr "Não tem permissão para gravar uma pesquisa de sistema"
+
+#: html/SelfService/Update.html:119
+msgid "No permission to view update ticket"
+msgstr "Sem permissão para ver ou actualizar esse ticket"
+
+#: lib/RT/Ticket_Overlay.pm:1482
+msgid "No principal specified"
+msgstr ""
+
+#: html/Admin/Queues/People.html:177 html/Admin/Queues/People.html:187
+msgid "No principals selected."
+msgstr ""
+
+#: html/Admin/Queues/index.html:59
+msgid "No queues matching search criteria found."
+msgstr "Nenhuma fila verificou os critérios de pesquisa especificados"
+
+#: html/Admin/Elements/SelectRights:108
+msgid "No rights found"
+msgstr ""
+
+#: html/Admin/Elements/SelectRights:55
+msgid "No rights granted."
+msgstr ""
+
+#: lib/RT/SavedSearch.pm:198
+msgid "No search loaded"
+msgstr "Nenhuma pesquisa carregada"
+
+#: html/Search/Bulk.html:234
+msgid "No search to operate on."
+msgstr "Nenhuma pesquisa possível"
+
+#: html/Elements/RT__Ticket/ColumnMap:139 html/Search/Results.rdf:80
+msgid "No subject"
+msgstr "Sem assunto"
+
+#: html/Search/Chart:101
+msgid "No tickets found."
+msgstr "Tickets não encontrados"
+
+#: lib/RT/Transaction_Overlay.pm:549 lib/RT/Transaction_Overlay.pm:586
+msgid "No transaction type specified"
+msgstr ""
+
+#: html/Admin/Users/index.html:57
+msgid "No users matching search criteria found."
+msgstr "Nenhum proprietário verificou o critério de pesquisa."
+
+#: lib/RT/Record.pm:963
+msgid "No value sent to _Set!\\n"
+msgstr ""
+
+#: html/Elements/QuickCreate:61
+msgid "Nobody"
+msgstr "Nobody"
+
+#: lib/RT/Record.pm:968
+msgid "Nonexistant field?"
+msgstr ""
+
+#: html/Search/Chart:149 html/Search/Elements/Chart:90
+msgid "Not Set"
+msgstr "Não definido"
+
+#: html/Elements/Header:98
+msgid "Not logged in."
+msgstr "Desligado"
+
+#: lib/RT/Date.pm:399
+msgid "Not set"
+msgstr ""
+
+#: html/NoAuth/Reminder.html:50
+msgid "Not yet implemented."
+msgstr ""
+
+#: html/Approvals/Elements/Approve:83
+msgid "Notes"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:821
+msgid "Notification could not be sent"
+msgstr "Notificação não pôde ser enviada"
+
+#: etc/initialdata:101
+msgid "Notify AdminCcs"
+msgstr ""
+
+#: etc/initialdata:97
+msgid "Notify AdminCcs as Comment"
+msgstr "Notificar AdminCCS como Comentário"
+
+#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
+msgid "Notify Ccs"
+msgstr ""
+
+#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
+msgid "Notify Ccs as Comment"
+msgstr "Notificar CCs como Comentário"
+
+#: etc/initialdata:128
+msgid "Notify Other Recipients"
+msgstr ""
+
+#: etc/initialdata:124
+msgid "Notify Other Recipients as Comment"
+msgstr "Notificar outros recipientes como comentário"
+
+#: etc/initialdata:85
+msgid "Notify Owner"
+msgstr "Notificar Proprietário"
+
+#: etc/initialdata:81
+msgid "Notify Owner as Comment"
+msgstr "Notificar Proprietário como comentário"
+
+#: etc/initialdata:376
+msgid "Notify Owner of their rejected ticket"
+msgstr ""
+
+#: etc/initialdata:365
+msgid "Notify Owner of their ticket has been approved by all approvers"
+msgstr ""
+
+#: etc/initialdata:353
+msgid "Notify Owner of their ticket has been approved by some approver"
+msgstr ""
+
+#: etc/initialdata:334
+msgid "Notify Owners and AdminCcs of new items pending their approval"
+msgstr ""
+
+#: etc/initialdata:77
+msgid "Notify Requestors"
+msgstr "Notificar Requerentes"
+
+#: etc/initialdata:111
+msgid "Notify Requestors and Ccs"
+msgstr "Notificar Requerentes e CCs"
+
+#: etc/initialdata:106
+msgid "Notify Requestors and Ccs as Comment"
+msgstr "Notificar Requerentes e CCs como comentário"
+
+#: etc/initialdata:120
+msgid "Notify Requestors, Ccs and AdminCcs"
+msgstr "Notificar Requerentes, CCs e AdminCCs"
+
+#: etc/initialdata:116
+msgid "Notify Requestors, Ccs and AdminCcs as Comment"
+msgstr "Notificar Requerentes, CCs e AdminCCs como comentário"
+
+#: lib/RT/Date.pm:453
+msgid "Nov."
+msgstr "Nov"
+
+#: html/Search/Elements/SelectAndOr:49
+msgid "OR"
+msgstr "OU"
+
+#: lib/RT/Record.pm:329
+msgid "Object could not be created"
+msgstr ""
+
+#: lib/RT/Record.pm:130
+msgid "Object could not be deleted"
+msgstr ""
+
+#: lib/RT/Record.pm:348
+msgid "Object created"
+msgstr ""
+
+#: lib/RT/Record.pm:127
+msgid "Object deleted"
+msgstr "Objecto apagado"
+
+#: html/Admin/CustomFields/Objects.html:74 html/Admin/Elements/ObjectCustomFields:65
+#. ($ObjectType)
+#. ($LookupType)
+msgid "Object of type %1 cannot take custom fields"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:970
+msgid "Object type mismatch"
+msgstr ""
+
+#: lib/RT/Date.pm:452
+msgid "Oct."
+msgstr "Oct"
+
+#: html/Tools/Elements/Tabs:57
+msgid "Offline"
+msgstr "Offline"
+
+#: html/Tools/Offline.html:51
+msgid "Offline edits"
+msgstr ""
+
+#: html/Tools/Offline.html:48
+msgid "Offline upload"
+msgstr ""
+
+#: html/Elements/SelectDateRelation:58
+msgid "On"
+msgstr "Em"
+
+#: lib/RT/Transaction_Overlay.pm:349
+#. ($self->CreatedAsString(), $self->CreatorObj->Name())
+msgid "On %1, %2 wrote:"
+msgstr ""
+
+#: etc/initialdata:163
+msgid "On Comment"
+msgstr "Em comentário"
+
+#: etc/initialdata:156
+msgid "On Correspond"
+msgstr "Em Resposta"
+
+#: etc/initialdata:145
+msgid "On Create"
+msgstr "Em Criação"
+
+#: etc/initialdata:184
+msgid "On Owner Change"
+msgstr "Em Alteração de Dono"
+
+#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
+msgid "On Priority Change"
+msgstr "Em Alteração de Prioridade"
+
+#: etc/initialdata:192
+msgid "On Queue Change"
+msgstr "Em Alteração de Queue"
+
+#: etc/initialdata:198
+msgid "On Resolve"
+msgstr "Em Resolução"
+
+#: etc/initialdata:169
+msgid "On Status Change"
+msgstr "Em Alteração de Estado"
+
+#: etc/initialdata:150
+msgid "On Transaction"
+msgstr "Em Transacção"
+
+#: html/Approvals/Elements/PendingMyApproval:72
+#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter' id='CreatedAfter' />")
+msgid "Only show approvals for requests created after %1"
+msgstr ""
+
+#: html/Approvals/Elements/PendingMyApproval:70
+#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore' id='CreatedBefore' />")
+msgid "Only show approvals for requests created before %1"
+msgstr ""
+
+#: html/Admin/CustomFields/index.html:77
+msgid "Only show custom fields for:"
+msgstr ""
+
+#: etc/initialdata:139
+msgid "Open Tickets"
+msgstr "Tickets Abertos"
+
+#: html/Ticket/Elements/Tabs:162
+msgid "Open it"
+msgstr "Abrir"
+
+#: html/SelfService/Elements/Tabs:78 html/SelfService/index.html:48
+msgid "Open tickets"
+msgstr "Tickets Abertos"
+
+#: etc/initialdata:140
+msgid "Open tickets on correspondence"
+msgstr "Abrir Tickets em resposta"
+
+#: html/Prefs/MyRT.html:72
+msgid "Options"
+msgstr "Opções"
+
+#: html/Search/Elements/DisplayOptions:61
+msgid "Order by"
+msgstr "Ordenar por"
+
+#: html/Admin/Users/Modify.html:144 html/User/Prefs.html:131
+msgid "Organization"
+msgstr "Organização"
+
+#: html/Approvals/Elements/Approve:55
+#. ($approving->Id, $approving->Subject)
+msgid "Originating ticket: #%1"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:643
+msgid "Outgoing email about a comment recorded"
+msgstr "Registado email sobre um comentário"
+
+#: lib/RT/Transaction_Overlay.pm:647
+msgid "Outgoing email recorded"
+msgstr "Registado email"
+
+#: html/Admin/Queues/Modify.html:92
+msgid "Over time, priority moves toward"
+msgstr "Com o passar do tempo, a prioridade altera-se para"
+
+#: lib/RT/Queue_Overlay.pm:114
+msgid "Own tickets"
+msgstr "Próprios tickets"
+
+#: lib/RT/Queue_Overlay.pm:114
+msgid "OwnTicket"
+msgstr ""
+
+#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:103 html/Ticket/Create.html:74 html/Ticket/Elements/EditBasics:63 html/Ticket/Elements/EditPeople:66 html/Ticket/Elements/EditPeople:67 html/Ticket/Elements/Reminders:131 html/Ticket/Elements/ShowPeople:50 html/Ticket/Update.html:64 lib/RT/ACE_Overlay.pm:112 lib/RT/Tickets_Overlay.pm:2195
+msgid "Owner"
+msgstr "Dono"
+
+#: lib/RT/Ticket_Overlay.pm:539
+#. ($Owner->Name)
+msgid "Owner '%1' does not have rights to own this ticket."
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:3100
+#. ($OldOwnerObj->Name, $NewOwnerObj->Name)
+msgid "Owner changed from %1 to %2"
+msgstr "Dono alterado de %1 para %2"
+
+#: lib/RT/Ticket_Overlay.pm:507
+msgid "Owner could not be set."
+msgstr "Dono não pôde ser definido."
+
+#: lib/RT/Transaction_Overlay.pm:693
+#. ($Old->Name , $New->Name)
+msgid "Owner forcibly changed from %1 to %2"
+msgstr "Proprietário forçado de %1 para %2"
+
+#: html/Elements/TicketList:82
+#. ($Page, $pages)
+msgid "Page %1 of %2"
+msgstr "Página %1 de %2"
+
+#: html/Admin/Users/Modify.html:201 html/User/Prefs.html:98
+msgid "Pager"
+msgstr ""
+
+#: html/Elements/EditLinks:145 html/Elements/EditLinks:77 html/Elements/ShowLinks:70 html/Ticket/Create.html:225 html/Ticket/Elements/BulkLinks:62
+msgid "Parents"
+msgstr ""
+
+#: html/Elements/Login:97 html/User/Prefs.html:107
+msgid "Password"
+msgstr "Password"
+
+#: html/NoAuth/Reminder.html:48
+msgid "Password Reminder"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:802 lib/RT/User_Overlay.pm:1047
+msgid "Password changed"
+msgstr "Password alterada"
+
+#: lib/RT/User_Overlay.pm:1039 lib/RT/User_Overlay.pm:216
+#. ($RT::MinimumPasswordLength)
+msgid "Password needs to be at least %1 characters long"
+msgstr "A Password tem de ter pelo menos %1 caracteres"
+
+#: lib/RT/User_Overlay.pm:1046
+msgid "Password set"
+msgstr "Password definida"
+
+#: html/User/Prefs.html:242
+#. (loc_fuzzy($msg))
+msgid "Password: %1"
+msgstr "Password: %1"
+
+#: lib/RT/User_Overlay.pm:1032
+msgid "Password: Permission Denied"
+msgstr "Password: Permissão Negada"
+
+#: html/Admin/Users/Modify.html:368
+msgid "Passwords do not match."
+msgstr "As passwords não coincidem."
+
+#: html/User/Prefs.html:244
+msgid "Passwords do not match. Your password has not been changed"
+msgstr "As passwords não coincidem. A sua password não foi alterada"
+
+#: html/Ticket/Elements/ShowSummary:64 html/Ticket/Elements/Tabs:121 html/Ticket/ModifyAll.html:74
+msgid "People"
+msgstr "Pessoas"
+
+#: etc/initialdata:133
+msgid "Perform a user-defined action"
+msgstr ""
+
+#: html/Admin/Tools/Configuration.html:96
+msgid "Perl configuration"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:253 lib/RT/ACE_Overlay.pm:259 lib/RT/ACE_Overlay.pm:582 lib/RT/ACE_Overlay.pm:592 lib/RT/ACE_Overlay.pm:602 lib/RT/ACE_Overlay.pm:667 lib/RT/Attribute_Overlay.pm:160 lib/RT/Attribute_Overlay.pm:166 lib/RT/Attribute_Overlay.pm:407 lib/RT/Attribute_Overlay.pm:416 lib/RT/Attribute_Overlay.pm:429 lib/RT/CurrentUser.pm:118 lib/RT/CurrentUser.pm:127 lib/RT/CustomField_Overlay.pm:1020 lib/RT/CustomField_Overlay.pm:1141 lib/RT/CustomField_Overlay.pm:1284 lib/RT/CustomField_Overlay.pm:174 lib/RT/CustomField_Overlay.pm:191 lib/RT/CustomField_Overlay.pm:202 lib/RT/CustomField_Overlay.pm:377 lib/RT/CustomField_Overlay.pm:406 lib/RT/CustomField_Overlay.pm:766 lib/RT/CustomField_Overlay.pm:939 lib/RT/CustomField_Overlay.pm:974 lib/RT/Group_Overlay.pm:1119 lib/RT/Group_Overlay.pm:1123 lib/RT/Group_Overlay.pm:1132 lib/RT/Group_Overlay.pm:1242 lib/RT/Group_Overlay.pm:1246 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:447 lib/RT/Group_Overlay.pm:544 lib/RT/Group_Overlay.pm:622 lib/RT/Group_Overlay.pm:630 lib/RT/Group_Overlay.pm:728 lib/RT/Group_Overlay.pm:732 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:924 lib/RT/Group_Overlay.pm:928 lib/RT/Group_Overlay.pm:941 lib/RT/Queue_Overlay.pm:1058 lib/RT/Queue_Overlay.pm:142 lib/RT/Queue_Overlay.pm:160 lib/RT/Queue_Overlay.pm:685 lib/RT/Queue_Overlay.pm:823 lib/RT/Queue_Overlay.pm:832 lib/RT/Queue_Overlay.pm:845 lib/RT/Scrip_Overlay.pm:151 lib/RT/Scrip_Overlay.pm:162 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:110 lib/RT/Template_Overlay.pm:279 lib/RT/Ticket_Overlay.pm:1380 lib/RT/Ticket_Overlay.pm:1515 lib/RT/Ticket_Overlay.pm:1525 lib/RT/Ticket_Overlay.pm:1539 lib/RT/Ticket_Overlay.pm:1656 lib/RT/Ticket_Overlay.pm:1976 lib/RT/Ticket_Overlay.pm:2119 lib/RT/Ticket_Overlay.pm:2289 lib/RT/Ticket_Overlay.pm:2339 lib/RT/Ticket_Overlay.pm:2519 lib/RT/Ticket_Overlay.pm:2532 lib/RT/Ticket_Overlay.pm:2608 lib/RT/Ticket_Overlay.pm:2621 lib/RT/Ticket_Overlay.pm:2742 lib/RT/Ticket_Overlay.pm:2756 lib/RT/Ticket_Overlay.pm:3007 lib/RT/Ticket_Overlay.pm:3018 lib/RT/Ticket_Overlay.pm:3024 lib/RT/Ticket_Overlay.pm:3241 lib/RT/Ticket_Overlay.pm:3245 lib/RT/Ticket_Overlay.pm:3388 lib/RT/Ticket_Overlay.pm:3516 lib/RT/Transaction_Overlay.pm:537 lib/RT/Transaction_Overlay.pm:544 lib/RT/Transaction_Overlay.pm:572 lib/RT/Transaction_Overlay.pm:579 lib/RT/User_Overlay.pm:1178 lib/RT/User_Overlay.pm:1858 lib/RT/User_Overlay.pm:371 lib/RT/User_Overlay.pm:737 lib/RT/User_Overlay.pm:776
+msgid "Permission Denied"
+msgstr "Permissão Negada"
+
+#: lib/RT/Template_Overlay.pm:240 lib/RT/Template_Overlay.pm:249
+msgid "Permission denied"
+msgstr "Permissão Negada"
+
+#: lib/RT/Template_Overlay.pm:379
+msgid "Permissions denied"
+msgstr "Permissão Negada"
+
+#: html/User/Elements/Tabs:58
+msgid "Personal Groups"
+msgstr "Grupos Pessoais"
+
+#: html/User/Groups/index.html:53 html/User/Groups/index.html:63
+msgid "Personal groups"
+msgstr "Grupos Pessoais"
+
+#: html/User/Elements/DelegateRights:60
+msgid "Personal groups:"
+msgstr "Grupos Pessoais:"
+
+#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:83
+msgid "Phone numbers"
+msgstr "Números de telefone"
+
+#: html/Elements/Header:95 html/Elements/Tabs:94 html/SelfService/Elements/Tabs:98 html/SelfService/Prefs.html:48 html/User/Prefs.html:48 html/User/Prefs.html:51
+msgid "Preferences"
+msgstr "Preferências"
+
+#: html/Admin/Users/MyRT.html:122
+#. ($pane, $UserObj->Name)
+msgid "Preferences %1 for user %2 ."
+msgstr "Preferências %1 para utilizador %2 ."
+
+#: html/Prefs/MyRT.html:143
+#. ($pane)
+msgid "Preferences saved for %1."
+msgstr "Preferências gravadas para %1."
+
+#: lib/RT/Action/Generic.pm:197
+msgid "Prepare Stubbed"
+msgstr ""
+
+#: html/Helpers/CalPopup.html:58 html/Ticket/Elements/Tabs:86
+msgid "Prev"
+msgstr ""
+
+#: html/Elements/TicketList:105
+msgid "Previous Page"
+msgstr "Página Anterior"
+
+#: lib/RT/ACE_Overlay.pm:159 lib/RT/ACE_Overlay.pm:241 lib/RT/ACE_Overlay.pm:571
+#. ($args{'PrincipalId'})
+msgid "Principal %1 not found."
+msgstr ""
+
+#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:94 html/Ticket/Elements/ShowBasics:74 lib/RT/Tickets_Overlay.pm:1979
+msgid "Priority"
+msgstr "Prioridade"
+
+#: html/Admin/Queues/Modify.html:88
+msgid "Priority starts at"
+msgstr "Prioridade começa em"
+
+#: html/Search/Elements/EditSearches:52
+msgid "Privacy:"
+msgstr "Privacidade:"
+
+#: etc/initialdata:25
+msgid "Privileged"
+msgstr "Privilegiados"
+
+#: html/Admin/Users/Modify.html:346 html/User/Prefs.html:233
+#. (loc_fuzzy($msg))
+msgid "Privileged status: %1"
+msgstr ""
+
+#: html/Admin/Users/index.html:104
+msgid "Privileged users"
+msgstr "Utilizadores privilegiados"
+
+#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
+msgid "Pseudogroup for internal use"
+msgstr ""
+
+#: html/Search/Build.html:123
+msgid "Query Builder"
+msgstr "Construtor de Pesquisas"
+
+#: html/Search/Elements/Chart:103
+msgid "Query:"
+msgstr "Pesquisa"
+
+#: html/Elements/QueueSummary:50 html/Elements/QuickCreate:56 html/Search/Elements/PickBasics:73 html/SelfService/Create.html:56 html/Ticket/Create.html:64 html/Ticket/Elements/EditBasics:59 html/Ticket/Elements/ShowBasics:78 html/Tools/Reports/CreatedByDates.html:87 html/Tools/Reports/ResolvedByDates.html:88 html/Tools/Reports/ResolvedByOwner.html:68 html/User/Elements/DelegateRights:103 lib/RT/Tickets_Overlay.pm:1806
+msgid "Queue"
+msgstr "Queue"
+
+#: html/Admin/Queues/CustomField.html:65 html/Admin/Queues/Scrip.html:63 html/Admin/Queues/Scrips.html:71 html/Admin/Queues/Templates.html:67
+#. ($Queue)
+#. ($id)
+msgid "Queue %1 not found"
+msgstr "Queue %1 não encontrada"
+
+#: html/Admin/Queues/Modify.html:66
+msgid "Queue Name"
+msgstr "Nome da Queue"
+
+#: lib/RT/Queue_Overlay.pm:367
+msgid "Queue already exists"
+msgstr "Essa Queue já existe"
+
+#: lib/RT/Queue_Overlay.pm:376 lib/RT/Queue_Overlay.pm:382
+msgid "Queue could not be created"
+msgstr "A Queue não pôde ser criada"
+
+#: html/Ticket/Create.html:319 lib/t/regression/01ticket_link_searching.t:17
+msgid "Queue could not be loaded."
+msgstr ""
+
+#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:386 lib/RT/StyleGuide.pod:807
+msgid "Queue created"
+msgstr "Queue criada"
+
+#: html/SelfService/Display.html:128 lib/RT/CustomField_Overlay.pm:199
+msgid "Queue not found"
+msgstr "Queue não encontrada"
+
+#: html/Admin/Elements/Tabs:61 html/Admin/index.html:74
+msgid "Queues"
+msgstr "Queues"
+
+#: html/Elements/MyAdminQueues:48
+msgid "Queues I administer"
+msgstr ""
+
+#: html/Elements/MySupportQueues:48
+msgid "Queues I'm an AdminCc for"
+msgstr ""
+
+#: html/Elements/Quicksearch:49 html/Prefs/Elements/Tabs:60 html/Prefs/Quicksearch.html:72
+msgid "Quick search"
+msgstr "Pesquisa rápida"
+
+#: html/Elements/QuickCreate:49
+msgid "Quick ticket creation"
+msgstr "Criação de tickets rápida"
+
+#: html/Search/Results.html:83
+msgid "RSS"
+msgstr "RSS"
+
+#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:794
+#. ($RT::VERSION, $RT::rtname)
+msgid "RT %1 for %2"
+msgstr "RT %1 para %2"
+
+#: html/Admin/index.html:48 html/Admin/index.html:49
+msgid "RT Administration"
+msgstr "Administração RT"
+
+#: html/Elements/Error:65 html/SelfService/Error.html:64
+msgid "RT Error"
+msgstr "Erro RT"
+
+#: html/SelfService/Elements/Tabs:72 html/SelfService/Elements/Tabs:74
+msgid "RT Self Service"
+msgstr "RT Self Service"
+
+#: html/Admin/Tools/Configuration.html:75
+msgid "RT Variables"
+msgstr ""
+
+#: html/Admin/Elements/SystemTabs:73 html/Admin/Elements/UserTabs:69 html/Admin/Global/MyRT.html:48 html/Admin/Global/MyRT.html:51 html/Admin/Global/MyRT.html:59 html/Admin/Global/index.html:86 html/Admin/Users/MyRT.html:68 html/Prefs/MyRT.html:68 html/Prefs/MyRT.html:80 html/User/Elements/Tabs:67 html/index.html:1 html/index.html:77
+msgid "RT at a glance"
+msgstr "RT no geral"
+
+#: html/Admin/Users/MyRT.html:77
+#. ($UserObj->Name)
+msgid "RT at a glance for the user %1"
+msgstr "\"RT no geral\" do utilizador %1"
+
+#: html/Admin/CustomFields/Modify.html:119
+msgid "RT can include content from another web service when showing this custom field."
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:108
+msgid "RT can make this custom field's values into hyperlinks to another service."
+msgstr ""
+
+#: html/Elements/SetupSessionCookie:102
+msgid "RT couldn't store your session."
+msgstr ""
+
+#: html/Elements/Logo:51 html/Elements/PageLayout:176
+#. ($RT::rtname)
+msgid "RT for %1"
+msgstr "RT para %1"
+
+#: html/Search/Simple.html:62
+msgid "RT will look for anything else you enter in ticket subjects."
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:110 html/Admin/CustomFields/Modify.html:121
+msgid "RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record id and custom field value, respectively"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:81 html/User/Prefs.html:71
+msgid "Real Name"
+msgstr "Nome"
+
+#: html/Tools/MyDay.html:76
+msgid "Record all updates"
+msgstr "Gravar todas as actualizações"
+
+#: lib/RT/Transaction_Overlay.pm:746
+#. ($value)
+msgid "Reference by %1 added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:786
+#. ($value)
+msgid "Reference by %1 deleted"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:743
+#. ($value)
+msgid "Reference to %1 added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:783
+#. ($value)
+msgid "Reference to %1 deleted"
+msgstr ""
+
+#: html/Elements/EditLinks:104 html/Elements/EditLinks:157 html/Elements/ShowLinks:94 html/Ticket/Create.html:228 html/Ticket/Elements/BulkLinks:74
+msgid "Referred to by"
+msgstr "Referido por"
+
+#: html/Elements/EditLinks:153 html/Elements/EditLinks:95 html/Elements/SelectLinkType:51 html/Elements/ShowLinks:84 html/Ticket/Create.html:227 html/Ticket/Elements/BulkLinks:70
+msgid "Refers to"
+msgstr "Refere-se a"
+
+#: html/Elements/Refresh:59
+#. ($value/60)
+msgid "Refresh this page every %1 minutes."
+msgstr "Refrescar esta pagina de %1 em %1 minutos."
+
+#: lib/RT/Transaction_Overlay.pm:832
+#. ($ticket->Subject)
+msgid "Reminder '%1' added"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:845
+#. ($ticket->Subject)
+msgid "Reminder '%1' completed"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:838
+#. ($ticket->Subject)
+msgid "Reminder '%1' reopened"
+msgstr ""
+
+#: html/Ticket/Reminders.html:48
+#. ($Ticket->Id)
+msgid "Reminder ticket #%1"
+msgstr ""
+
+#: html/Elements/MyReminders:50 html/Ticket/Elements/ShowSummary:77 html/Ticket/Elements/Tabs:124 html/Ticket/Reminders.html:54
+msgid "Reminders"
+msgstr "Lembretes"
+
+#: html/Ticket/Reminders.html:52
+#. ($Ticket->Id)
+msgid "Reminders for ticket #%1"
+msgstr "Notas para o pedido #%1"
+
+#: html/Search/Bulk.html:96
+msgid "Remove AdminCc"
+msgstr ""
+
+#: html/Search/Bulk.html:92
+msgid "Remove Cc"
+msgstr ""
+
+#: html/Search/Bulk.html:88
+msgid "Remove Requestor"
+msgstr ""
+
+#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:149
+msgid "Reply"
+msgstr "Responder"
+
+#: html/Admin/Queues/Modify.html:74
+msgid "Reply Address"
+msgstr "Endereço de Resposta"
+
+#: html/Search/Bulk.html:131 html/Ticket/ModifyAll.html:96 html/Ticket/Update.html:80
+msgid "Reply to requestors"
+msgstr "Responder aos Requerentes"
+
+#: lib/RT/Queue_Overlay.pm:112
+msgid "Reply to tickets"
+msgstr "Resposta a tickets"
+
+#: lib/RT/Queue_Overlay.pm:112
+msgid "ReplyToTicket"
+msgstr ""
+
+#: html/Tools/Elements/Tabs:61 html/Tools/Reports/index.html:48 html/Tools/Reports/index.html:49
+msgid "Reports"
+msgstr "Relatórios"
+
+#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:113
+msgid "Requestor"
+msgstr ""
+
+#: html/SelfService/Create.html:65 html/Ticket/Create.html:82 html/Ticket/Elements/EditPeople:71 html/Ticket/Elements/ShowPeople:54
+msgid "Requestors"
+msgstr "Requerentes"
+
+#: html/Admin/Queues/Modify.html:98
+msgid "Requests should be due in"
+msgstr ""
+
+#: lib/RT/Attribute_Overlay.pm:148
+#. ('Object')
+msgid "Required parameter '%1' not specified"
+msgstr ""
+
+#: html/Elements/Submit:85
+msgid "Reset"
+msgstr ""
+
+#: html/Admin/Users/MyRT.html:62 html/Prefs/MyRT.html:62
+msgid "Reset to default"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:186 html/User/Prefs.html:86
+msgid "Residence"
+msgstr "Residência"
+
+#: html/Ticket/Elements/Tabs:158
+msgid "Resolve"
+msgstr "Resolver"
+
+#: html/Ticket/Update.html:158
+#. ($TicketObj->id, $TicketObj->Subject)
+msgid "Resolve ticket #%1 (%2)"
+msgstr "Resolver ticket #%1 (%2)"
+
+#: etc/initialdata:323 html/Elements/SelectDateType:51 lib/RT/Ticket_Overlay.pm:1174
+msgid "Resolved"
+msgstr "Resolvido"
+
+#: html/Tools/Reports/Elements/Tabs:57
+msgid "Resolved by owner"
+msgstr "Resolvido pelo dono"
+
+#: html/Tools/Reports/Elements/Tabs:61
+msgid "Resolved in date range"
+msgstr "Resolvido dentro do intervalo de datas"
+
+#: html/Tools/Reports/ResolvedByDates.html:54
+msgid "Resolved tickets in period, grouped by owner"
+msgstr "Tickets resolvidos no período, agrupados por dono"
+
+#: html/Tools/Reports/ResolvedByOwner.html:52
+msgid "Resolved tickets, grouped by owner"
+msgstr "Tickets resolvidos, agrupados por dono"
+
+#: html/Elements/ListActions:48 html/Search/Elements/NewListActions:49
+msgid "Results"
+msgstr "Resultados"
+
+#: html/Admin/Users/Modify.html:128 html/User/Prefs.html:118
+msgid "Retype Password"
+msgstr "Repita Password"
+
+#: html/Search/Elements/EditSearches:63
+msgid "Revert"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:632
+msgid "Right Delegated"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:322
+msgid "Right Granted"
+msgstr "Direito concedido"
+
+#: lib/RT/ACE_Overlay.pm:180
+msgid "Right Loaded"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:697 lib/RT/ACE_Overlay.pm:718
+msgid "Right could not be revoked"
+msgstr ""
+
+#: html/User/Delegation.html:87
+msgid "Right not found"
+msgstr "Direito não encontrado"
+
+#: lib/RT/ACE_Overlay.pm:562 lib/RT/ACE_Overlay.pm:657
+msgid "Right not loaded."
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:714
+msgid "Right revoked"
+msgstr ""
+
+#: html/Admin/Elements/UserTabs:72
+msgid "Rights"
+msgstr "Direitos"
+
+#: html/Admin/CustomFields/UserRights.html:102 lib/RT/Interface/Web.pm:992
+#. ($object_type)
+msgid "Rights could not be granted for %1"
+msgstr ""
+
+#: html/Admin/CustomFields/UserRights.html:132 lib/RT/Interface/Web.pm:1021
+#. ($object_type)
+msgid "Rights could not be revoked for %1"
+msgstr ""
+
+#: html/Admin/Global/GroupRights.html:74 html/Admin/Queues/GroupRights.html:76
+msgid "Roles"
+msgstr "Perfis"
+
+#: html/Prefs/MyRT.html:74
+msgid "Rows per box"
+msgstr "Linhas por caixa"
+
+#: html/Search/Elements/DisplayOptions:95
+msgid "Rows per page"
+msgstr "Linhas por página"
+
+#: lib/RT/Date.pm:424
+msgid "Sat."
+msgstr "Sat"
+
+#: html/Prefs/MyRT.html:74 html/Prefs/Quicksearch.html:66 html/Prefs/Search.html:71 html/Prefs/Search.html:71 html/Search/Elements/EditSearches:72 html/Widgets/SelectionBox:222
+msgid "Save"
+msgstr "Gravar"
+
+#: html/Admin/Groups/Modify.html:94 html/Admin/Queues/Modify.html:113 html/Admin/Queues/People.html:128 html/Admin/Users/Modify.html:243 html/Prefs/Quicksearch.html:66 html/Prefs/SearchOptions.html:65 html/SelfService/Prefs.html:60 html/Ticket/Modify.html:62 html/Ticket/ModifyAll.html:129 html/Ticket/ModifyDates.html:62 html/Ticket/ModifyLinks.html:63 html/Ticket/ModifyPeople.html:62 html/User/Groups/Modify.html:79
+msgid "Save Changes"
+msgstr "Gravar Alterações"
+
+#: html/User/Prefs.html:183
+msgid "Save Preferences"
+msgstr "Gravar Preferências"
+
+#: html/Ticket/Elements/PreviewScrips:133
+msgid "Save changes"
+msgstr "Gravar alterações"
+
+#: lib/RT/SavedSearch.pm:175
+#. ($name)
+msgid "Saved search %1"
+msgstr "Pesquisa gravada %1"
+
+#: html/Search/Elements/EditSearches:102 html/Widgets/SavedSearch:154
+msgid "Saved searches"
+msgstr ""
+
+#: html/Admin/Elements/ListGlobalScrips:62 html/Admin/Global/Scrip.html:79 html/Admin/Queues/Scrip.html:86
+#. ($scrip->Id)
+#. ($id)
+msgid "Scrip #%1"
+msgstr ""
+
+#: lib/RT/Scrip_Overlay.pm:205
+msgid "Scrip Created"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:54
+msgid "Scrip Fields"
+msgstr ""
+
+#: html/Admin/Elements/EditScrips:111
+msgid "Scrip deleted"
+msgstr ""
+
+#: html/Admin/Elements/QueueTabs:69 html/Admin/Elements/SystemTabs:56 html/Admin/Global/index.html:64
+msgid "Scrips"
+msgstr ""
+
+#: html/Admin/Queues/Scrips.html:57
+msgid "Scrips which apply to all queues"
+msgstr ""
+
+#: html/Elements/SimpleSearch:50 html/Search/Simple.html:67
+msgid "Search"
+msgstr "Procurar"
+
+#: html/Prefs/SearchOptions.html:49 html/Prefs/SearchOptions.html:52
+msgid "Search Preferences"
+msgstr "Preferências de pesquisa"
+
+#: lib/RT/SavedSearch.pm:117
+msgid "Search attribute load failure"
+msgstr "Erro a carregar o atributo de pesquisa"
+
+#: html/Approvals/Elements/PendingMyApproval:61
+msgid "Search for approvals"
+msgstr "Procurar nas aprovações"
+
+#: html/Search/Simple.html:77
+msgid "Search for tickets"
+msgstr "Procurar tickets"
+
+#: html/Search/Simple.html:59
+msgid "Search for tickets. Enter <strong>id</strong> numbers, <strong>queues</strong> by name, Owners by <strong>username</strong> and Requestors by <strong>email address</strong>."
+msgstr ""
+
+#: html/User/Elements/Tabs:64
+msgid "Search options"
+msgstr "Opções de pesquisa"
+
+#: html/Search/Chart.html:58
+#. ($PrimaryGroupBy)
+msgid "Search results grouped by %1"
+msgstr "Resultados de pesquisa agrupados por %1"
+
+#: lib/RT/SavedSearch.pm:205
+#. ($msg)
+msgid "Search update: %1"
+msgstr "Actualização de pesquisa: %1"
+
+#: html/Search/Simple.html:61
+msgid "Searching the full text of every ticket can take a long time, but if you need to do it, you can search for any word in full ticket history for any word by typing <b>fulltext:<i>word</i></b>."
+msgstr "Procurar com o texto completo pode levar muito tempo a realizar, mas se for realmente necessário, pode efectuar uma pesquisa por qualquer palavra no historial do pedido ao especificar <b>fulltext:<i>palavra</i></b>."
+
+#: bin/rt-crontool:267
+msgid "Security:"
+msgstr "Segurança:"
+
+#: html/Elements/ShowCustomFields:102
+msgid "See also:"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:107
+msgid "See custom fields"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:108
+msgid "See exact outgoing email messages and their recipeients"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:106
+msgid "See ticket private commentary"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:105
+msgid "See ticket summaries"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:107
+msgid "SeeCustomField"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:171
+msgid "SeeGroup"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:93
+msgid "SeeQueue"
+msgstr ""
+
+#: html/Admin/CustomFields/index.html:48 html/Admin/CustomFields/index.html:51
+msgid "Select a Custom Field"
+msgstr ""
+
+#: html/Admin/Groups/index.html:80
+msgid "Select a group"
+msgstr "Escolha um grupo"
+
+#: html/Admin/Queues/index.html:56
+msgid "Select a queue"
+msgstr "Escolha uma queue"
+
+#: html/SelfService/CreateTicketInQueue.html:50
+msgid "Select a queue for your new ticket"
+msgstr "Escolha uma queue para o novo ticket"
+
+#: html/Admin/Users/index.html:48 html/Admin/Users/index.html:51 html/Admin/Users/index.html:54
+msgid "Select a user"
+msgstr "Escolha um utilizador"
+
+#: html/Admin/Elements/CustomFieldTabs:92
+msgid "Select custom field"
+msgstr ""
+
+#: html/Admin/Global/CustomFields/index.html:72
+msgid "Select custom fields for all user groups"
+msgstr ""
+
+#: html/Admin/Global/CustomFields/index.html:67
+msgid "Select custom fields for all users"
+msgstr ""
+
+#: html/Admin/Global/CustomFields/index.html:78
+msgid "Select custom fields for tickets in all queues"
+msgstr "Seleccioned os \"Campos Personalizados\" para os pedidos em todas as filas"
+
+#: html/Admin/Global/CustomFields/index.html:85
+msgid "Select custom fields for transactions on tickets in all queues"
+msgstr ""
+
+#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
+msgid "Select group"
+msgstr "Escolha grupo"
+
+#: lib/RT/CustomField_Overlay.pm:61
+msgid "Select multiple values"
+msgstr "Escolha múltiplos valores"
+
+#: lib/RT/CustomField_Overlay.pm:62
+msgid "Select one value"
+msgstr "Escolha um valor"
+
+#: html/Admin/Elements/QueueTabs:94
+msgid "Select queue"
+msgstr "Escolha a queue"
+
+#: html/Prefs/Quicksearch.html:55
+msgid "Select queues to be displayed on the \"RT at a glance\" page"
+msgstr "Escolha queues para apresentação na página principal"
+
+#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:59 html/Admin/Queues/Scrip.html:69 html/Admin/Queues/Scrips.html:75
+msgid "Select scrip"
+msgstr ""
+
+#: html/Admin/Global/Template.html:77 html/Admin/Global/Templates.html:59 html/Admin/Queues/Template.html:78 html/Admin/Queues/Templates.html:70
+msgid "Select template"
+msgstr "Escolha template"
+
+#: lib/RT/CustomField_Overlay.pm:63
+msgid "Select up to %1 values"
+msgstr ""
+
+#: html/Admin/Elements/UserTabs:80
+msgid "Select user"
+msgstr "Escolha utilizador"
+
+#: html/Admin/Elements/EditCustomFields:60
+msgid "Selected Custom Fields"
+msgstr ""
+
+#: html/Admin/CustomFields/Objects.html:61
+msgid "Selected objects"
+msgstr ""
+
+#: html/Widgets/SelectionBox:220
+msgid "Selections modified. Please save your changes"
+msgstr ""
+
+#: etc/initialdata:121
+msgid "Send mail to all watchers"
+msgstr "Enviar email para todos os watchers"
+
+#: etc/initialdata:117
+msgid "Send mail to all watchers as a \"comment\""
+msgstr "Enviar email para todos os watchers como um comentário"
+
+#: etc/initialdata:112
+msgid "Send mail to requestors and Ccs"
+msgstr ""
+
+#: etc/initialdata:107
+msgid "Send mail to requestors and Ccs as a comment"
+msgstr ""
+
+#: etc/initialdata:78
+msgid "Sends a message to the requestors"
+msgstr ""
+
+#: etc/initialdata:125 etc/initialdata:129
+msgid "Sends mail to explicitly listed Ccs and Bccs"
+msgstr ""
+
+#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
+msgid "Sends mail to the Ccs"
+msgstr ""
+
+#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
+msgid "Sends mail to the Ccs as a comment"
+msgstr ""
+
+#: etc/initialdata:102
+msgid "Sends mail to the administrative Ccs"
+msgstr ""
+
+#: etc/initialdata:98
+msgid "Sends mail to the administrative Ccs as a comment"
+msgstr ""
+
+#: etc/initialdata:82 etc/initialdata:86
+msgid "Sends mail to the owner"
+msgstr "Enviar email para o dono"
+
+#: lib/RT/Date.pm:451
+msgid "Sep."
+msgstr "Sep"
+
+#: html/Ticket/Elements/ShowTransaction:161
+msgid "Show"
+msgstr "Mostrar"
+
+#: html/Search/Elements/EditFormat:58
+msgid "Show Columns"
+msgstr ""
+
+#: html/Ticket/Elements/Tabs:222
+msgid "Show Results"
+msgstr "Mostrar Resultados"
+
+#: html/Approvals/Elements/PendingMyApproval:66
+msgid "Show approved requests"
+msgstr ""
+
+#: html/Ticket/Create.html:391
+msgid "Show basics"
+msgstr "Mostrar informação básica"
+
+#: html/Approvals/Elements/PendingMyApproval:67
+msgid "Show denied requests"
+msgstr ""
+
+#: html/Ticket/Create.html:394
+msgid "Show details"
+msgstr "Mostrar detalhes"
+
+#: html/Approvals/Elements/PendingMyApproval:65
+msgid "Show pending requests"
+msgstr "Mostrar pedidos pendentes"
+
+#: html/Approvals/Elements/PendingMyApproval:68
+msgid "Show requests awaiting other approvals"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:95
+msgid "ShowACL"
+msgstr ""
+
+#: lib/RT/System.pm:87
+msgid "ShowConfigTab"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:108
+msgid "ShowOutgoingEmail"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:170
+msgid "ShowSavedSearches"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:104
+msgid "ShowScrips"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:101
+msgid "ShowTemplate"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:105
+msgid "ShowTicket"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:106
+msgid "ShowTicketComments"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:109
+msgid "Sign up as a ticket Requestor or ticket or queue Cc"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:110
+msgid "Sign up as a ticket or queue AdminCc"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:234 html/User/Prefs.html:170
+msgid "Signature"
+msgstr "Assinatura"
+
+#: html/Elements/Tabs:71
+msgid "Simple Search"
+msgstr "Pesquisa Simples"
+
+#: html/Admin/Elements/SelectSingleOrMultiple:49
+msgid "Single"
+msgstr ""
+
+#: html/Search/Elements/EditFormat:77
+msgid "Size"
+msgstr "Tamanho"
+
+#: html/Elements/Header:91
+msgid "Skip Menu"
+msgstr ""
+
+#: html/Search/Elements/EditFormat:80
+msgid "Small"
+msgstr "Pequeno"
+
+#: html/Admin/CustomFields/Modify.html:122
+msgid "Some browsers may only load content from the same domain as your RT server."
+msgstr ""
+
+#: html/Admin/Elements/AddCustomFieldValue:51 html/Admin/Elements/EditCustomFieldValues:56
+msgid "Sort"
+msgstr "Ordenar"
+
+#: html/Admin/Elements/EditScrip:80
+msgid "Stage"
+msgstr ""
+
+#: html/Elements/SelectDateType:50 html/Ticket/Elements/EditDates:55 html/Ticket/Elements/ShowDates:58
+msgid "Started"
+msgstr "Iniciado"
+
+#: html/Elements/SelectDateType:54 html/Ticket/Create.html:211 html/Ticket/Elements/EditDates:50 html/Ticket/Elements/ShowDates:54
+msgid "Starts"
+msgstr "Começa"
+
+#: html/Admin/Users/Modify.html:165 html/User/Prefs.html:147
+msgid "State"
+msgstr "Estado"
+
+#: html/Search/Elements/PickBasics:89 html/SelfService/Update.html:59 html/Ticket/Create.html:68 html/Ticket/Elements/EditBasics:55 html/Ticket/Elements/ShowBasics:54 html/Ticket/Update.html:61 html/Tools/MyDay.html:70 lib/RT/Ticket_Overlay.pm:1168 lib/RT/Tickets_Overlay.pm:1840
+msgid "Status"
+msgstr "Estado"
+
+#: etc/initialdata:309
+msgid "Status Change"
+msgstr "Alteração de Estado"
+
+#: lib/RT/Transaction_Overlay.pm:605
+#. ("'" . $self->loc( $self->OldValue ) . "'", "'" . $self->loc( $self->NewValue ) . "'")
+msgid "Status changed from %1 to %2"
+msgstr "Alteração de estado de %1 para %2"
+
+#: html/Ticket/Elements/Tabs:180
+msgid "Steal"
+msgstr "Roubar"
+
+#: lib/RT/Queue_Overlay.pm:119
+msgid "Steal tickets"
+msgstr "Roubar tickets"
+
+#: lib/RT/Queue_Overlay.pm:119
+msgid "StealTicket"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:699
+#. ($Old->Name)
+msgid "Stolen from %1"
+msgstr "Roubado de %1"
+
+#: html/Search/Elements/EditFormat:83
+msgid "Style"
+msgstr ""
+
+#: html/Elements/QuickCreate:54 html/Elements/SelectAttachmentField:49 html/Search/Bulk.html:134 html/SelfService/Create.html:81 html/SelfService/Update.html:67 html/Ticket/Create.html:110 html/Ticket/Elements/EditBasics:50 html/Ticket/Elements/Reminders:127 html/Ticket/ModifyAll.html:102 html/Ticket/Update.html:84 lib/RT/Ticket_Overlay.pm:1164 lib/RT/Tickets_Overlay.pm:1922
+msgid "Subject"
+msgstr "Assunto"
+
+#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:813 lib/RT/Transaction_Overlay.pm:721
+#. ($self->Data)
+msgid "Subject changed to %1"
+msgstr "Assunto alterado para %1"
+
+#: html/Elements/Submit:77
+msgid "Submit"
+msgstr "Enviar"
+
+#: lib/RT/Group_Overlay.pm:776
+msgid "Succeeded"
+msgstr ""
+
+#: lib/RT/Date.pm:425
+msgid "Sun."
+msgstr "Sun"
+
+#: lib/RT/System.pm:77
+msgid "SuperUser"
+msgstr ""
+
+#: html/User/Elements/DelegateRights:100
+msgid "System"
+msgstr ""
+
+#: html/Admin/Elements/ToolTabs:56 html/Admin/Tools/Configuration.html:50
+msgid "System Configuration"
+msgstr "Configuração de Sistema"
+
+#: html/Admin/CustomFields/UserRights.html:100 html/Admin/CustomFields/UserRights.html:130 html/Admin/Elements/SelectRights:108 lib/RT/ACE_Overlay.pm:586 lib/RT/Interface/Web.pm:1020 lib/RT/Interface/Web.pm:991
+msgid "System Error"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:226 lib/RT/Transaction_Overlay.pm:232
+#. ($msg)
+msgid "System Error: %1"
+msgstr ""
+
+#: html/Admin/Tools/index.html:49
+msgid "System Tools"
+msgstr "Ferramentas de Sistema"
+
+#: lib/RT/ACE_Overlay.pm:635
+msgid "System error. Right not delegated."
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:165 lib/RT/ACE_Overlay.pm:230 lib/RT/ACE_Overlay.pm:325
+msgid "System error. Right not granted."
+msgstr ""
+
+#: html/Admin/CustomFields/GroupRights.html:60 html/Admin/Global/GroupRights.html:58 html/Admin/Groups/GroupRights.html:60 html/Admin/Queues/GroupRights.html:59
+msgid "System groups"
+msgstr "Grupos de sistema"
+
+#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
+msgid "SystemRolegroup for internal use"
+msgstr ""
+
+#: lib/RT/CurrentUser.pm:359
+msgid "TEST_STRING"
+msgstr ""
+
+#: etc/initialdata:603 html/Search/Elements/EditFormat:74 html/Ticket/Elements/Tabs:172
+msgid "Take"
+msgstr "Tomar"
+
+#: lib/RT/Queue_Overlay.pm:117
+msgid "Take tickets"
+msgstr "Tomar pedidos"
+
+#: lib/RT/Queue_Overlay.pm:117
+msgid "TakeTicket"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:684
+msgid "Taken"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:73 html/Tools/Offline.html:80
+msgid "Template"
+msgstr "Template"
+
+#: html/Admin/Global/Template.html:110 html/Admin/Queues/Template.html:115
+#. ($TemplateObj->Id())
+msgid "Template #%1"
+msgstr "Template $%1"
+
+#: html/Admin/Elements/EditTemplates:112
+msgid "Template deleted"
+msgstr "Template apagado"
+
+#: lib/RT/Scrip_Overlay.pm:178
+msgid "Template is mandatory argument"
+msgstr ""
+
+#: lib/RT/Scrip_Overlay.pm:182
+msgid "Template not found"
+msgstr ""
+
+#: lib/RT/Template_Overlay.pm:346
+msgid "Template parsed"
+msgstr ""
+
+#: lib/RT/Template_Overlay.pm:398
+msgid "Template parsing error"
+msgstr ""
+
+#: html/Admin/Elements/QueueTabs:72 html/Admin/Elements/SystemTabs:59 html/Admin/Global/index.html:68
+msgid "Templates"
+msgstr "Templates"
+
+#: lib/RT/CustomField_Overlay.pm:946 lib/RT/Record.pm:962
+msgid "That is already the current value"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:415
+msgid "That is not a value for this custom field"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1987
+msgid "That is the same value"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:307 lib/RT/ACE_Overlay.pm:616
+msgid "That principal already has that right"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:748
+#. ($args{'Type'})
+msgid "That principal is already a %1 for this queue"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1428
+#. ($self->loc($args{'Type'}))
+msgid "That principal is already a %1 for this ticket"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:856
+#. ($args{'Type'})
+msgid "That principal is not a %1 for this queue"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1550
+#. ($args{'Type'})
+msgid "That principal is not a %1 for this ticket"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1983
+msgid "That queue does not exist"
+msgstr "Essa queue não existe"
+
+#: lib/RT/Ticket_Overlay.pm:3250
+msgid "That ticket has unresolved dependencies"
+msgstr ""
+
+#: lib/RT/Action/CreateTickets.pm:712 lib/RT/Ticket_Overlay.pm:3053
+msgid "That user already owns that ticket"
+msgstr "Esse utilizador já é dono desse ticket"
+
+#: lib/RT/Ticket_Overlay.pm:2996
+msgid "That user does not exist"
+msgstr "Esse utilizador não existe"
+
+#: lib/RT/User_Overlay.pm:391
+msgid "That user is already privileged"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:412
+msgid "That user is already unprivileged"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:404
+msgid "That user is now privileged"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:425
+msgid "That user is now unprivileged"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:3046
+msgid "That user may not own tickets in that queue"
+msgstr "Esse utilizador não pode ser dono de tickets nessa queue"
+
+#: lib/RT/Link_Overlay.pm:235
+msgid "That's not a numerical id"
+msgstr ""
+
+#: html/SelfService/Display.html:55 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:51
+msgid "The Basics"
+msgstr "O Básico"
+
+#: lib/RT/ACE_Overlay.pm:114
+msgid "The CC of a ticket"
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:115
+msgid "The administrative CC of a ticket"
+msgstr ""
+
+#: bin/rt-crontool:277
+msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
+msgstr ""
+
+#: lib/RT/Record.pm:965
+msgid "The new value has been set."
+msgstr ""
+
+#: lib/RT/ACE_Overlay.pm:112
+msgid "The owner of a ticket"
+msgstr "O dono de um ticket"
+
+#: lib/RT/ACE_Overlay.pm:113
+msgid "The requestor of a ticket"
+msgstr ""
+
+#: html/Admin/Elements/EditUserComments:49
+msgid "These comments aren't generally visible to the user"
+msgstr ""
+
+#: lib/RT/CustomField_Overlay.pm:981
+msgid "This custom field does not apply to that object"
+msgstr ""
+
+#: html/Admin/Tools/Configuration.html:52
+msgid "This feature is only available to system administrators"
+msgstr "Esta funcionalidade está disponível apenas para os administradores do sistema"
+
+#: html/Elements/SetupSessionCookie:106
+#. ($RT::MasonSessionDir)
+msgid "This may mean that that the directory '%1' isn't writable or a database table is missing or corrupt."
+msgstr ""
+
+#: html/Ticket/Elements/PreviewScrips:98
+msgid "This message will be sent to..."
+msgstr "Esta mensagem será enviada para..."
+
+#: bin/rt-crontool:268
+msgid "This tool allows the user to run arbitrary perl modules from within RT."
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:327
+msgid "This transaction appears to have no content"
+msgstr "Esta transacção não parece ter conteúdo"
+
+#: html/Ticket/Elements/ShowRequestor:72
+#. ($rows)
+msgid "This user's %1 highest priority tickets"
+msgstr "%1 tickets deste utilizador com maior prioridade"
+
+#: lib/RT/Date.pm:422
+msgid "Thu."
+msgstr "Thu"
+
+#: html/Ticket/ModifyAll.html:48 html/Ticket/ModifyAll.html:52
+#. ($Ticket->Id, $Ticket->Subject)
+msgid "Ticket #%1 Jumbo update: %2"
+msgstr ""
+
+#: html/Approvals/Elements/ShowDependency:69
+#. ($link->BaseObj->Id, $link->BaseObj->Subject)
+msgid "Ticket #%1: %2"
+msgstr "Ticket #%1: %2"
+
+#: lib/RT/Action/CreateTickets.pm:1352 lib/RT/Action/CreateTickets.pm:1361 lib/RT/Action/CreateTickets.pm:607 lib/RT/Action/CreateTickets.pm:731 lib/RT/Action/CreateTickets.pm:743
+#. ($T::Tickets{$template_id}->Id)
+#. ($T::Tickets{$template_id}->id)
+#. ($ticket->Id)
+msgid "Ticket %1"
+msgstr "Ticket %1"
+
+#: lib/RT/Ticket_Overlay.pm:757 lib/RT/Ticket_Overlay.pm:777
+#. ($self->Id, $QueueObj->Name)
+msgid "Ticket %1 created in queue '%2'"
+msgstr "Ticket %1 criado na queue '%2'"
+
+#: html/Search/Bulk.html:380 html/Tools/MyDay.html:103 html/Tools/MyDay.html:94 html/Tools/MyDay.html:97
+#. ($Ticket->Id, $_)
+#. ($id, $msg)
+msgid "Ticket %1: %2"
+msgstr "Ticket %1: %2"
+
+#: html/Admin/Elements/QueueTabs:76
+msgid "Ticket Custom Fields"
+msgstr ""
+
+#: html/Ticket/History.html:48 html/Ticket/History.html:51
+#. ($Ticket->Id, $Ticket->Subject)
+msgid "Ticket History # %1 %2"
+msgstr "Histórico do ticket # %1 %2"
+
+#: etc/initialdata:324
+msgid "Ticket Resolved"
+msgstr "Ticket Resolvido"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:71 html/Admin/Global/CustomFields/index.html:83 lib/RT/CustomField_Overlay.pm:1210
+msgid "Ticket Transactions"
+msgstr "Transacções do ticket"
+
+#: lib/RT/Tickets_Overlay.pm:2109
+msgid "Ticket content"
+msgstr "Conteúdo do ticket"
+
+#: lib/RT/Tickets_Overlay.pm:2158
+msgid "Ticket content type"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:605 lib/RT/Ticket_Overlay.pm:619 lib/RT/Ticket_Overlay.pm:630 lib/RT/Ticket_Overlay.pm:765
+msgid "Ticket could not be created due to an internal error"
+msgstr ""
+
+#: html/Ticket/Create.html:247
+msgid "Ticket could not be loaded"
+msgstr ""
+
+#: html/Ticket/Display.html:57
+msgid "Ticket metadata"
+msgstr ""
+
+#: etc/initialdata:310
+msgid "Ticket status changed"
+msgstr "Estado do ticket alterado"
+
+#: lib/RT/Search/FromSQL.pm:84
+#. (ref $self)
+msgid "TicketSQL search module"
+msgstr ""
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:66 html/Admin/Global/CustomFields/index.html:77 html/Elements/Tabs:74 html/Search/Chart:113 html/Search/Elements/Chart:111 lib/RT/CustomField_Overlay.pm:1209
+msgid "Tickets"
+msgstr "Tickets"
+
+#: lib/RT/Tickets_Overlay.pm:2350
+#. ($self->loc( $args{'TYPE'} ), ( $args{'BASE'} || $args{'TICKET'} ))
+msgid "Tickets %1 %2"
+msgstr "Tickets %1 %2"
+
+#: lib/RT/Tickets_Overlay.pm:2302
+#. ($self->loc( $args{'TYPE'} ), ( $args{'TARGET'} || $args{'TICKET'} ))
+msgid "Tickets %1 by %2"
+msgstr "Tickets %1 por %2"
+
+#: html/Tools/Reports/CreatedByDates.html:88
+msgid "Tickets created after"
+msgstr "Tickets criados depois de"
+
+#: html/Tools/Reports/CreatedByDates.html:90
+msgid "Tickets created before"
+msgstr "Tickets criados antes de"
+
+#: html/Tools/Reports/ResolvedByDates.html:89
+msgid "Tickets resolved after"
+msgstr "Tickets resolvidos depois de"
+
+#: html/Tools/Reports/ResolvedByDates.html:91
+msgid "Tickets resolved before"
+msgstr "Tickets resolvidos antes de"
+
+#: html/Approvals/Elements/ShowDependency:50
+msgid "Tickets which depend on this approval:"
+msgstr "Pedidos que dependem desta aprovação"
+
+#: html/Search/Elements/PickBasics:136 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:74
+msgid "Time Estimated"
+msgstr "Tempo previsto"
+
+#: html/Search/Elements/PickBasics:137 html/Ticket/Create.html:199 html/Ticket/Elements/EditBasics:87 lib/RT/Tickets_Overlay.pm:2080
+msgid "Time Left"
+msgstr "Tempo disponível"
+
+#: html/Search/Elements/PickBasics:135 html/Ticket/Create.html:192 html/Ticket/Elements/EditBasics:80 lib/RT/Tickets_Overlay.pm:2055
+msgid "Time Worked"
+msgstr "Tempo de trabalho"
+
+#: html/Elements/Footer:53
+msgid "Time to display"
+msgstr "Tempo usado para disponibilizar página"
+
+#: lib/RT/Ticket_Overlay.pm:1169
+msgid "TimeWorked"
+msgstr ""
+
+#: html/Search/Elements/EditFormat:76
+msgid "Title"
+msgstr ""
+
+#: html/Elements/Footer:64
+#. ('<a href="mailto:sales at bestpractical.com">sales at bestpractical.com</a>')
+msgid "To inquire about support, training, custom development or licensing, please contact %1."
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:1172
+msgid "Told"
+msgstr ""
+
+#: html/Admin/Elements/Tabs:70 html/Admin/index.html:90 html/Elements/Tabs:77 html/Tools/index.html:48 html/Tools/index.html:51
+msgid "Tools"
+msgstr "Ferramentas"
+
+#: html/Search/Elements/Chart:132
+msgid "Total"
+msgstr "Total"
+
+#: etc/initialdata:252
+msgid "Transaction"
+msgstr "Transacção"
+
+#: lib/RT/Transaction_Overlay.pm:826
+#. ($self->Data)
+msgid "Transaction %1 purged"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:185
+msgid "Transaction Created"
+msgstr "Transacção Criada"
+
+#: html/Admin/Elements/QueueTabs:80
+msgid "Transaction Custom Fields"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:130
+msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:891
+msgid "Transactions are immutable"
+msgstr ""
+
+#: lib/RT/Date.pm:420
+msgid "Tue."
+msgstr "Tue"
+
+#: html/Admin/CustomFields/Modify.html:68 html/Admin/Elements/EditCustomField:67 html/Ticket/Elements/AddWatchers:56 html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/AddWatchers:77 lib/RT/Ticket_Overlay.pm:1170 lib/RT/Tickets_Overlay.pm:1894
+msgid "Type"
+msgstr "Tipo"
+
+#: lib/RT/ScripCondition_Overlay.pm:130
+msgid "Unimplemented"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:91
+msgid "Unix login"
+msgstr ""
+
+#: lib/RT/Attachment_Overlay.pm:291 lib/RT/Record.pm:863
+#. ($self->ContentEncoding)
+#. ($ContentEncoding)
+msgid "Unknown ContentEncoding %1"
+msgstr ""
+
+#: html/Search/Build.html:461 lib/RT/Report/Tickets.pm:410
+#. ($key)
+msgid "Unknown field: %1"
+msgstr ""
+
+#: html/Elements/SelectResultsPerPage:60
+msgid "Unlimited"
+msgstr ""
+
+#: html/Search/Elements/SelectSearchesForObjects:66
+msgid "Unnamed search"
+msgstr "Procura sem nome"
+
+#: etc/initialdata:32
+msgid "Unprivileged"
+msgstr ""
+
+#: html/Admin/Elements/EditCustomFields:62
+msgid "Unselected Custom Fields"
+msgstr ""
+
+#: html/Admin/CustomFields/Objects.html:63
+msgid "Unselected objects"
+msgstr ""
+
+#: lib/RT/Transaction_Overlay.pm:680
+msgid "Untaken"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:130 html/Elements/RT__Ticket/ColumnMap:304 html/Search/Bulk.html:195 html/Search/Bulk.html:77
+msgid "Update"
+msgstr "Actualizar"
+
+#: html/Ticket/Update.html:137
+msgid "Update Ticket"
+msgstr "Actualizar Ticket"
+
+#: html/Search/Bulk.html:128 html/Ticket/ModifyAll.html:89 html/Ticket/Update.html:74
+msgid "Update Type"
+msgstr "Tipo de actualização"
+
+#: html/Search/Bulk.html:202 html/Search/Results.html:80
+msgid "Update multiple tickets"
+msgstr "Actualizar múltiplos tickets"
+
+#: lib/RT/Action/CreateTickets.pm:752 lib/RT/Interface/Web.pm:611
+msgid "Update not recorded."
+msgstr ""
+
+#: html/Ticket/ModifyAll.html:86
+msgid "Update ticket"
+msgstr "Actualizar ticket"
+
+#: html/SelfService/Update.html:114 html/SelfService/Update.html:49
+#. ($Ticket->id)
+msgid "Update ticket #%1"
+msgstr "Actualizar ticket #%1"
+
+#: html/Ticket/Update.html:160
+#. ($TicketObj->id, $TicketObj->Subject)
+msgid "Update ticket #%1 (%2)"
+msgstr "Actualizar ticket #%1 (%2)"
+
+#: lib/RT/Action/CreateTickets.pm:750 lib/RT/Interface/Web.pm:610
+msgid "Update type was neither correspondence nor comment."
+msgstr ""
+
+#: html/Elements/SelectDateType:56 html/Ticket/Elements/ShowDates:74 lib/RT/CustomField_Overlay.pm:1287 lib/RT/Ticket_Overlay.pm:1173
+msgid "Updated"
+msgstr "Actualizado"
+
+#: html/Tools/Offline.html:95
+msgid "Upload"
+msgstr "Carregar"
+
+#: lib/RT/CustomField_Overlay.pm:86
+msgid "Upload multiple files"
+msgstr "Carregar múltiplos ficheiros"
+
+#: lib/RT/CustomField_Overlay.pm:81
+msgid "Upload multiple images"
+msgstr "Carregar múltiplas imagens"
+
+#: lib/RT/CustomField_Overlay.pm:87
+msgid "Upload one file"
+msgstr "Carregar um ficheiro"
+
+#: lib/RT/CustomField_Overlay.pm:82
+msgid "Upload one image"
+msgstr "Carregar uma imagem"
+
+#: lib/RT/CustomField_Overlay.pm:88
+msgid "Upload up to %1 files"
+msgstr "Carregar até %1 ficheiros"
+
+#: lib/RT/CustomField_Overlay.pm:83
+msgid "Upload up to %1 images"
+msgstr "Carregar até %1 imagens"
+
+#: html/Tools/Offline.html:95
+msgid "Upload your changes"
+msgstr ""
+
+#: html/Admin/index.html:92
+msgid "Use other RT administrative tools"
+msgstr "Utilizar outras ferramentas administrativas do RT"
+
+#: lib/RT/Ticket_Overlay.pm:508
+#. ($args{'Owner'})
+msgid "User '%1' could not be found."
+msgstr "Utilizador '%1' não encontrado"
+
+#: etc/initialdata:132 etc/initialdata:206
+msgid "User Defined"
+msgstr ""
+
+#: html/Admin/Elements/EditScrip:95
+msgid "User Defined conditions and actions"
+msgstr ""
+
+#: html/Admin/Elements/CustomFieldTabs:74 html/Admin/Elements/GroupTabs:70 html/Admin/Elements/QueueTabs:87 html/Admin/Elements/SystemTabs:70 html/Admin/Global/index.html:82
+msgid "User Rights"
+msgstr "Direitos de utilizador"
+
+#: lib/RT/Interface/Web.pm:1392
+#. ($cf->Name, ref $args{'Object'}, $args{'Object'}->id)
+msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:305
+#. ($msg)
+msgid "User could not be created: %1"
+msgstr "Utilizador não criado: %1"
+
+#: lib/RT/User_Overlay.pm:332
+msgid "User created"
+msgstr "Utilizador criado"
+
+#: html/Admin/CustomFields/GroupRights.html:76 html/Admin/Global/GroupRights.html:90 html/Admin/Groups/GroupRights.html:77 html/Admin/Queues/GroupRights.html:92
+msgid "User defined groups"
+msgstr ""
+
+#: lib/RT/User_Overlay.pm:594 lib/RT/User_Overlay.pm:614
+msgid "User loaded"
+msgstr "Utilizador carregado"
+
+#: html/Admin/Groups/index.html:105
+msgid "User-defined groups"
+msgstr "Grupos definidos por utilizadores"
+
+#: html/Admin/Users/Modify.html:71 html/Elements/Login:92 html/Ticket/Elements/AddWatchers:58
+msgid "Username"
+msgstr "Username"
+
+#: html/Admin/Elements/GlobalCustomFieldTabs:57 html/Admin/Elements/SelectNewGroupMembers:49 html/Admin/Elements/Tabs:55 html/Admin/Global/CustomFields/index.html:66 html/Admin/Groups/Members.html:78 html/Admin/Queues/People.html:91 html/Admin/index.html:64 html/User/Groups/Members.html:81 lib/RT/CustomField_Overlay.pm:1211
+msgid "Users"
+msgstr "Utilizadores"
+
+#: html/Admin/Users/index.html:87
+msgid "Users matching search criteria"
+msgstr "Utilizadores que verificam o critério de pesquisa"
+
+#: bin/rt-crontool:136
+#. ($transaction->id)
+msgid "Using transaction #%1..."
+msgstr ""
+
+#: lib/RT/Tickets_Overlay_SQL.pm:530
+msgid "Valid Query"
+msgstr "Query válida"
+
+#: html/Admin/CustomFields/Modify.html:82
+msgid "Validation"
+msgstr ""
+
+#: html/Admin/CustomFields/Modify.html:132 html/Admin/Elements/EditCustomField:80
+msgid "Values"
+msgstr "Valores"
+
+#: lib/RT/Queue_Overlay.pm:109
+msgid "Watch"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:110
+msgid "WatchAsAdminCc"
+msgstr ""
+
+#: html/Admin/Elements/QueueTabs:65
+msgid "Watchers"
+msgstr ""
+
+#: lib/RT/Date.pm:421
+msgid "Wed."
+msgstr "Wed"
+
+#: html/Tools/MyDay.html:80
+msgid "What I did today"
+msgstr ""
+
+#: etc/initialdata:521
+msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
+msgstr ""
+
+#: etc/initialdata:485
+msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
+msgstr ""
+
+#: etc/initialdata:146
+msgid "When a ticket is created"
+msgstr "Quando um ticket é criado"
+
+#: etc/initialdata:418
+msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
+msgstr ""
+
+#: etc/initialdata:151
+msgid "When anything happens"
+msgstr "Quando algo acontece"
+
+#: etc/initialdata:199
+msgid "Whenever a ticket is resolved"
+msgstr "Quando um ticket é resolvido"
+
+#: etc/initialdata:185
+msgid "Whenever a ticket's owner changes"
+msgstr ""
+
+#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
+msgid "Whenever a ticket's priority changes"
+msgstr ""
+
+#: etc/initialdata:193
+msgid "Whenever a ticket's queue changes"
+msgstr ""
+
+#: etc/initialdata:170
+msgid "Whenever a ticket's status changes"
+msgstr ""
+
+#: etc/initialdata:207
+msgid "Whenever a user-defined condition occurs"
+msgstr ""
+
+#: etc/initialdata:164
+msgid "Whenever comments come in"
+msgstr ""
+
+#: etc/initialdata:157
+msgid "Whenever correspondence comes in"
+msgstr ""
+
+#: html/Admin/Users/Modify.html:191 html/User/Prefs.html:90
+msgid "Work"
+msgstr ""
+
+#: html/Search/Results.html:84
+msgid "Work offline"
+msgstr ""
+
+#: html/Ticket/Elements/ShowBasics:65 html/Ticket/Update.html:66 html/Tools/MyDay.html:65
+msgid "Worked"
+msgstr ""
+
+#: lib/RT/Ticket_Overlay.pm:3157
+msgid "You already own this ticket"
+msgstr "Este ticket já é seu"
+
+#: html/autohandler:216 html/autohandler:224
+msgid "You are not an authorized user"
+msgstr ""
+
+#: html/Prefs/Search.html:58
+msgid "You can also edit the predefined search itself"
+msgstr "Também pode editar a própria procura personalizada"
+
+#: lib/RT/Ticket_Overlay.pm:3039
+msgid "You can only reassign tickets that you own or that are unowned"
+msgstr "Só pode atribuir um pedido que seja seu ou que não proprietário"
+
+#: lib/RT/Ticket_Overlay.pm:3035
+msgid "You can only take tickets that are unowned"
+msgstr "Só pode responsabilizar-se por tickets que não têm dono"
+
+#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:778
+#. ($num, $queue)
+msgid "You found %1 tickets in queue %2"
+msgstr "Encontrou %1 tickets na queue %2"
+
+#: html/NoAuth/Logout.html:54
+msgid "You have been logged out of RT."
+msgstr "Saiu do RT"
+
+#: html/SelfService/Display.html:135
+msgid "You have no permission to create tickets in that queue."
+msgstr "Não tem permissão para criar tickets nessa queue."
+
+#: lib/RT/Ticket_Overlay.pm:1996
+msgid "You may not create requests in that queue."
+msgstr "Não pode criar pedidos nessa queue"
+
+#: html/NoAuth/Logout.html:58
+msgid "You're welcome to login again"
+msgstr ""
+
+#: etc/initialdata:502 etc/initialdata:504
+#. (# loc $self->TransactionObj->CreatorObj->Name,)
+msgid "Your request has been approved by %1. Other approvals may still be pending."
+msgstr ""
+
+#: etc/initialdata:540
+msgid "Your request has been approved."
+msgstr ""
+
+#: etc/initialdata:445
+msgid "Your request was rejected."
+msgstr ""
+
+#: html/autohandler:253
+msgid "Your username or password is incorrect"
+msgstr "Login ou password errados"
+
+#: html/Admin/Users/Modify.html:171 html/User/Prefs.html:151
+msgid "Zip"
+msgstr "Código Postal"
+
+#: html/Search/Elements/DisplayOptions:67
+msgid "[none]"
+msgstr ""
+
+#: lib/RT/System.pm:89
+msgid "allow creation of saved searches"
+msgstr ""
+
+#: lib/RT/System.pm:88
+msgid "allow loading of saved searches"
+msgstr ""
+
+#: html/User/Elements/DelegateRights:82
+#. ($right->PrincipalObj->Object->SelfDescription)
+msgid "as granted to %1"
+msgstr ""
+
+#: html/Search/Results.html:85
+msgid "chart"
+msgstr ""
+
+#: html/SelfService/Closed.html:51
+msgid "closed"
+msgstr "fechado"
+
+#: html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectMatch:57
+msgid "contains"
+msgstr "contém"
+
+#: lib/RT/Report/Tickets.pm:347
+msgid "current: $current, want $want, Error near ->$val<- expecting a $token in '$string'\\n"
+msgstr ""
+
+#: html/Admin/Queues/Modify.html:100 lib/RT/Date.pm:348
+msgid "days"
+msgstr "dias"
+
+#: lib/RT/Queue_Overlay.pm:89
+msgid "deleted"
+msgstr "apagado"
+
+#: html/Search/Elements/PickBasics:63
+msgid "does not match"
+msgstr ""
+
+#: html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectMatch:58
+msgid "doesn't contain"
+msgstr "não contém"
+
+#: html/Elements/SelectEqualityOperator:61
+msgid "equal to"
+msgstr "igual a"
+
+#: html/Search/Build.html:553
+msgid "error: can't move down"
+msgstr ""
+
+#: html/Search/Build.html:575
+msgid "error: can't move left"
+msgstr ""
+
+#: html/Search/Build.html:534
+msgid "error: can't move up"
+msgstr ""
+
+#: html/Search/Build.html:618
+msgid "error: nothing to delete"
+msgstr ""
+
+#: html/Search/Build.html:539 html/Search/Build.html:558 html/Search/Build.html:580 html/Search/Build.html:609
+msgid "error: nothing to move"
+msgstr ""
+
+#: html/Search/Build.html:636
+msgid "error: nothing to toggle"
+msgstr ""
+
+#: html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectEqualityOperator:61
+msgid "greater than"
+msgstr "maior do que"
+
+#: lib/RT/Group_Overlay.pm:216
+#. ($self->Name)
+msgid "group '%1'"
+msgstr "grupo '%1'"
+
+#: html/Search/Results.html:90
+#. ($m->scomp('Elements/SelectGroupBy', Name => 'PrimaryGroupBy', Query => $Query))
+msgid "grouped by %1"
+msgstr "agrupado por %1"
+
+#: lib/RT/Date.pm:344
+msgid "hours"
+msgstr "horas"
+
+#: html/Search/Elements/PickBasics:50
+msgid "id"
+msgstr "id"
+
+#: html/Elements/SelectBoolean:55 html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectMatch:59 html/Search/Elements/PickBasics:164 html/Search/Elements/PickBasics:76 html/Search/Elements/PickBasics:92 html/Search/Elements/PickCFs:55
+msgid "is"
+msgstr "é"
+
+#: html/Elements/SelectBoolean:59 html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectMatch:60 html/Search/Elements/PickBasics:165 html/Search/Elements/PickBasics:77 html/Search/Elements/PickBasics:93 html/Search/Elements/PickCFs:56
+msgid "isn't"
+msgstr "não é"
+
+#: html/Elements/SelectCustomFieldOperator:61 html/Elements/SelectEqualityOperator:61
+msgid "less than"
+msgstr "menos do que"
+
+#: html/Search/Elements/PickBasics:62
+msgid "matches"
+msgstr "coincide"
+
+#: lib/RT/Date.pm:340
+msgid "min"
+msgstr ""
+
+#: html/Tools/MyDay.html:65
+msgid "minutes"
+msgstr "minutos"
+
+#: lib/RT/Date.pm:356
+msgid "months"
+msgstr "meses"
+
+#: lib/RT/Queue_Overlay.pm:84
+msgid "new"
+msgstr "novo"
+
+#: html/Admin/Elements/PickCustomFields:66 html/Admin/Elements/PickObjects:67
+msgid "no name"
+msgstr "sem nome"
+
+#: html/Admin/Elements/EditScrips:66
+msgid "no value"
+msgstr "sem valor"
+
+#: html/Admin/Elements/EditQueueWatchers:50 html/Ticket/Elements/EditWatchers:51
+msgid "none"
+msgstr "nenhum"
+
+#: html/Elements/SelectEqualityOperator:61
+msgid "not equal to"
+msgstr "diferente de"
+
+#: html/SelfService/Elements/MyRequests:78 lib/RT/Queue_Overlay.pm:85
+msgid "open"
+msgstr "aberto"
+
+#: lib/RT/Group_Overlay.pm:221
+#. ($self->Name, $user->Name)
+msgid "personal group '%1' for user '%2'"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:229
+#. ($queue->Name, $self->Type)
+msgid "queue %1 %2"
+msgstr "queue %1 %2"
+
+#: lib/RT/Queue_Overlay.pm:88
+msgid "rejected"
+msgstr "rejeitado"
+
+#: lib/RT/Queue_Overlay.pm:87
+msgid "resolved"
+msgstr "resolvido"
+
+#: lib/RT/Date.pm:336
+msgid "sec"
+msgstr ""
+
+#: lib/RT/System.pm:87
+msgid "show Configuration tab"
+msgstr ""
+
+#: html/Search/Results.html:82
+msgid "spreadsheet"
+msgstr ""
+
+#: lib/RT/Queue_Overlay.pm:86
+msgid "stalled"
+msgstr "pendente"
+
+#: html/Search/Results.html:91
+#. ($m->scomp('Elements/SelectChartType', Name => 'ChartStyle'))
+msgid "style: %1"
+msgstr ""
+
+#: html/Prefs/MyRT.html:95
+msgid "summary rows"
+msgstr "linhas de sumário"
+
+#: lib/RT/Group_Overlay.pm:224
+#. ($self->Type)
+msgid "system %1"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:235
+#. ($self->Type)
+msgid "system group '%1'"
+msgstr ""
+
+#: html/Elements/Error:66 html/SelfService/Error.html:65
+msgid "the calling component did not specify why"
+msgstr ""
+
+#: lib/RT/Group_Overlay.pm:232
+#. ($self->Instance, $self->Type)
+msgid "ticket #%1 %2"
+msgstr "ticket #%1 %2"
+
+#: lib/RT/Group_Overlay.pm:238
+#. ($self->Id)
+msgid "undescribed group %1"
+msgstr "grupo indefinido %1"
+
+#: lib/RT/Group_Overlay.pm:213
+#. ($user->Object->Name)
+msgid "user %1"
+msgstr "utilizador %1"
+
+#: lib/RT/Date.pm:352
+msgid "weeks"
+msgstr "semanas"
+
+#: lib/RT/Date.pm:360
+msgid "years"
+msgstr "anos"
+
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ru.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ru.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/ru.po Mon Jul 7 16:21:51 2008
@@ -1940,7 +1940,7 @@
msgstr "Создать дополнительное поле для очереди %1"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "Создать дополнительное поле для всех очередей"
#: NOT FOUND IN SOURCE
@@ -4111,7 +4111,7 @@
msgstr "Изменить дополнительное поле для очереди %1"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "Изменить дополнительное поле, которое применяется ко всем очередям"
#: share/html/Admin/Queues/Scrip.html:84
@@ -4120,7 +4120,7 @@
msgstr "Изменить скриплет для очереди %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Изменить скриплет, который действует для всех очередей"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/sv.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/sv.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/sv.po Mon Jul 7 16:21:51 2008
@@ -3357,7 +3357,7 @@
msgstr "Modifiera ett scrip för kö %1"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Modifiera ett scrip som gäller för alla köer"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/tr.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/tr.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/tr.po Mon Jul 7 16:21:51 2008
@@ -3359,7 +3359,7 @@
msgstr "%1 kuyruğu için bir senet değiştir"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "Bütün kuyruklara etki eden bir senedi değiştir"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_cn.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_cn.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_cn.po Mon Jul 7 16:21:51 2008
@@ -2273,7 +2273,7 @@
msgstr "为 %1 表单新增自订字段"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "为 %1 表单新增自订字段"
#: NOT FOUND IN SOURCE
@@ -5084,7 +5084,7 @@
msgstr "更改 %1 表单内的自订字段"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "更改适用于所有表单的自订字段"
#: share/html/Admin/Queues/Scrip.html:84
@@ -5093,7 +5093,7 @@
msgstr "更改 %1 表单内的手续"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "更改适用于所有表单的手续"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_tw.po
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_tw.po (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/I18N/zh_tw.po Mon Jul 7 16:21:51 2008
@@ -2269,7 +2269,7 @@
msgstr "為 %1 表單新增自訂欄位"
#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
+msgid "Create a CustomField that applies to all queues"
msgstr "為 %1 表單新增自訂欄位"
#: NOT FOUND IN SOURCE
@@ -5068,7 +5068,7 @@
msgstr "更改 %1 表單內的自訂欄位"
#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
+msgid "Modify a CustomField that applies to all queues"
msgstr "更改適用於所有表單的自訂欄位"
#: share/html/Admin/Queues/Scrip.html:84
@@ -5077,7 +5077,7 @@
msgstr "更改 %1 表單內的手續"
#: share/html/Admin/Global/Scrip.html:77
-msgid "Modify a scrip which applies to all queues"
+msgid "Modify a scrip that applies to all queues"
msgstr "更改適用於所有表單的手續"
#: share/html/Admin/CustomFields/Objects.html:92
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Installer.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Installer.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Installer.pm Mon Jul 7 16:21:51 2008
@@ -73,7 +73,7 @@
DatabaseHost => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
- Description => 'Database host',
+ Description => 'Database host', #loc
Default => 1,
DefaultLabel => "Keep 'localhost' if you're not sure", #loc
Hints => "The domain name of your database server (like 'db.example.com').", #loc
@@ -85,7 +85,7 @@
Description => 'Database port', #loc
Default => 1,
DefaultLabel =>
- 'Leave empty to use a default value', #loc
+ 'Leave empty to use the default value for your database', #loc
},
},
DatabaseName => {
@@ -98,23 +98,25 @@
Widget => '/Widgets/Form/String',
WidgetArguments => {
Default => 1,
- DefaultLabel => "Leave this alone to use a default value", #loc
+ Hints => "Leave this alone to use the default dba username for your database type", #loc
Description => 'DBA username', # loc
+ DefaultLabel => '',
},
},
DatabaseAdminPassword => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
- Description =>
- 'DBA password', #loc
- Hints => "The DBA's database password",#loc
+ Description => 'DBA password', #loc
+ DefaultLabel => "The DBA's database password",#loc
Type => 'password',
+ Hints => "You must provide the dba's password so we can create the RT database and user.",
},
},
DatabaseUser => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
Description => 'Database username for RT', #loc
+ Hints => 'RT will connect to the database using this user. It will be created for you.', #loc
},
},
DatabasePassword => {
@@ -122,6 +124,7 @@
WidgetArguments => {
Description => 'Database password for RT', #loc
Type => 'password',
+ Hints => 'The password RT should use to connect to the database.',
},
},
DatabaseRequireSSL => {
@@ -134,7 +137,7 @@
Widget => '/Widgets/Form/String',
WidgetArguments => {
Description => 'Site name', #loc
- Hints => 'Set this to your internet domain. (ex: example.com)' #loc
+ Hints => 'RT will use this string to uniquely identify your installation and looks for it in the subject of emails to decide what ticket a message applies to. We recommend that you set this to your internet domain. (ex: example.com)' #loc
},
},
MinimumPasswordLength => {
@@ -154,8 +157,8 @@
OwnerEmail => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
- Description => 'RT Administrator', #loc
- Hints => 'The email address of a human who manages RT.',
+ Description => 'RT Administrator Email', #loc
+ Hints => "When RT can't handle an email message, where should it be forwarded?", #loc
},
},
CommentAddress => {
@@ -174,34 +177,25 @@
'the default addresses that will be listed in From: and Reply-To: headers of correspondence mail.' #loc
},
},
- SendmailArguments => {
- Widget => '/Widgets/Form/String',
- WidgetArguments => {
- Description => 'Sendmail arguments', #loc
- },
- },
- SendmailBounceArguments => {
- Widget => '/Widgets/Form/String',
- WidgetArguments => {
- Description => 'Sendmail bounce arguments', #loc
- },
- },
SendmailPath => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
- Description => 'where is sendmail command', #loc
+ Hints => 'Where to find your sendmail binary.', #loc
+ Description => 'Path to sendmail', #loc
},
},
WebDomain => {
Widget => '/Widgets/Form/String',
WidgetArguments => {
- Description => 'domain name', #loc
+ Description => 'Domain name', #loc
+ Hints => "Don't include http://, just something like 'localhost', 'rt.example.com'", #loc
},
},
WebPort => {
Widget => '/Widgets/Form/Integer',
WidgetArguments => {
- Description => 'web port', #loc
+ Description => 'Web port', #loc
+ Hints => 'which port your web server will listen to, e.g. 8080', #loc
},
},
@@ -214,9 +208,22 @@
Widget => '/Widgets/Form/Select',
WidgetArguments => {
Description => 'Timezone', #loc
- Values => [ '', DateTime::TimeZone->all_names ],
- ValuesLabel => {
- '' => 'System Default', #loc
+ Callback => sub {
+ my $ret;
+ $ret->{Values} = ['', DateTime::TimeZone->all_names];
+
+ my $has_datetime = eval { require DateTime };
+ if ( $has_datetime ) {
+ my $dt = DateTime->now;
+ for my $tz ( DateTime::TimeZone->all_names ) {
+ $dt->set_time_zone( $tz );
+ $ret->{ValuesLabel}{$tz} =
+ $tz . ' ' . $dt->strftime('%z');
+ }
+ }
+ $ret->{ValuesLabel}{''} = 'System Default'; #loc
+
+ return $ret;
},
},
};
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Email.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Email.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Email.pm Mon Jul 7 16:21:51 2008
@@ -51,7 +51,7 @@
use strict;
use warnings;
-use Mail::Address;
+use Email::Address;
use MIME::Entity;
use RT::EmailParser;
use File::Temp;
@@ -207,7 +207,7 @@
=item From - sender's address, by default is 'CorrespondAddress';
-=item To - reciepient, by default is 'OwnerEmail';
+=item To - recipient, by default is 'OwnerEmail';
=item Bcc - optional Bcc recipients;
@@ -430,7 +430,7 @@
# duplicate head as we want drop Bcc field
my $head = $args{'Entity'}->head->dup;
- my @recipients = map $_->address, Mail::Address->parse(
+ my @recipients = map $_->address, Email::Address->parse(
map $head->get($_), qw(To Cc Bcc)
);
$head->delete('Bcc');
@@ -704,7 +704,7 @@
}
return 0 unless @bad_recipients;
- $_->{'AddressObj'} = (Mail::Address->parse( $_->{'Recipient'} ))[0]
+ $_->{'AddressObj'} = (Email::Address->parse( $_->{'Recipient'} ))[0]
foreach @bad_recipients;
foreach my $recipient ( @bad_recipients ) {
@@ -834,7 +834,7 @@
my @recipients =
map lc $_->address,
- map Mail::Address->parse( $args{'Head'}->get( $_ ) ),
+ map Email::Address->parse( $args{'Head'}->get( $_ ) ),
qw(To Cc);
my @res;
@@ -912,7 +912,7 @@
# Some broken mailers send: ""Vincent, Jesse"" <jesse at fsck.com>. Hate
$Addr =~ s/\"\"(.*?)\"\"/\"$1\"/g;
- my @Addresses = Mail::Address->parse($Addr);
+ my @Addresses = Email::Address->parse($Addr);
my ($AddrObj) = grep ref $_, @Addresses;
unless ( $AddrObj ) {
@@ -941,7 +941,7 @@
foreach my $field ( qw(To Cc Bcc) ) {
$head->set( $field =>
join ', ', map $_->format, grep !$skip{ lc $_->address },
- Mail::Address->parse( $head->get( $field ) )
+ Email::Address->parse( $head->get( $field ) )
);
}
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Web.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Web.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Interface/Web.pm Mon Jul 7 16:21:51 2008
@@ -447,7 +447,7 @@
my @temp_squelch;
foreach my $type (qw(Requestor Cc AdminCc)) {
- push @temp_squelch, map $_->address, Mail::Address->parse( $create_args{ $type } )
+ push @temp_squelch, map $_->address, Email::Address->parse( $create_args{ $type } )
if grep $_ eq $type || $_ eq ($type.'s'), @{ $ARGS{'SkipNotification'} || [] };
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Principal_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Principal_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Principal_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -305,7 +305,7 @@
if $args{'EquivObjects'};
if ( $self->Disabled ) {
- $RT::Logger->error( "Disabled User #"
+ $RT::Logger->debug( "Disabled User #"
. $self->id
. " failed access check for "
. $args{'Right'} );
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Record.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Record.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Record.pm Mon Jul 7 16:21:51 2008
@@ -314,8 +314,6 @@
}
if (UNIVERSAL::isa('errno',$id)) {
- exit(0);
- warn "It's here!";
return(undef);
}
@@ -1179,6 +1177,26 @@
# }}}
+# {{{ sub FormatType
+
+=head2 FormatType
+
+Takes a Type and returns a string that is more human readable.
+
+=cut
+
+sub FormatType{
+ my $self = shift;
+ my %args = ( Type => '',
+ @_
+ );
+ $args{Type} =~ s/([A-Z])/" " . lc $1/ge;
+ return $args{Type};
+}
+
+
+# }}}
+
# {{{ sub FormatLink
=head2 FormatLink
@@ -1273,8 +1291,9 @@
FallBack => $args{Base});
my $targettext = $self->FormatLink(Object => $link->TargetObj,
FallBack => $args{Target});
+ my $typetext = $self->FormatType(Type => $args{Type});
my $TransString =
- "$basetext $args{Type} $targettext.";
+ "$basetext $typetext $targettext.";
return ( $linkid, $TransString ) ;
}
@@ -1332,13 +1351,14 @@
#it's a real link.
if ( $link->id ) {
- my $basetext = $self->FormatLink(Object => $link->BaseObj,
- FallBack => $args{Base});
- my $targettext = $self->FormatLink(Object => $link->TargetObj,
- FallBack => $args{Target});
+ my $basetext = $self->FormatLink(Object => $link->BaseObj,
+ FallBack => $args{Base});
+ my $targettext = $self->FormatLink(Object => $link->TargetObj,
+ FallBack => $args{Target});
+ my $typetext = $self->FormatType(Type => $args{Type});
my $linkid = $link->id;
$link->Delete();
- my $TransString = "$basetext no longer $args{Type} $targettext.";
+ my $TransString = "$basetext no longer $typetext $targettext.";
return ( 1, $TransString);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/SavedSearch.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/SavedSearch.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/SavedSearch.pm Mon Jul 7 16:21:51 2008
@@ -48,7 +48,7 @@
=head1 NAME
- RT::SavedSearch - an API for saving and retrieving search form values.
+RT::SavedSearch - an API for saving and retrieving search form values.
=head1 SYNOPSIS
@@ -56,12 +56,9 @@
=head1 DESCRIPTION
- SavedSearch is an object that can belong to either an RT::User or an
- RT::Group. It consists of an ID, a description, and a number of
- search parameters.
-
-=head1 METHODS
-
+SavedSearch is an object based on L<RT::SharedSetting> that can belong
+to either an L<RT::User> or an L<RT::Group>. It consists of an ID,
+a description, and a number of search parameters.
=cut
@@ -71,6 +68,8 @@
use warnings;
use base qw/RT::SharedSetting/;
+=head1 METHODS
+
=head2 ObjectName
An object of this class is called "search"
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/SharedSetting.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/SharedSetting.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/SharedSetting.pm Mon Jul 7 16:21:51 2008
@@ -89,7 +89,7 @@
=head2 Load
Takes a privacy specification and a shared-setting ID. Loads the given object
-ID if it belongs to the stated user or group. Calls the PostLoad method on
+ID if it belongs to the stated user or group. Calls the L</PostLoad> method on
success for any further initialization. Returns a tuple of status and message,
where status is true on success.
@@ -106,11 +106,15 @@
$self->{'Id'} = $self->{'Attribute'}->Id;
$self->{'Privacy'} = $privacy;
$self->PostLoad();
+
+ return (0, $self->loc("Permission denied"))
+ unless $self->CurrentUserCanSee;
+
return (1, $self->loc("Loaded [_1] [_2]", $self->ObjectName, $self->Name));
} else {
$RT::Logger->error("Could not load attribute " . $id
. " for object " . $privacy);
- return (0, $self->loc("[_1] attribute load failure", ucfirst($self->ObjectName)));
+ return (0, $self->loc("Failed to load [_1] [_2]", $self->ObjectName, $id))
}
} else {
$RT::Logger->warning("Could not load object $privacy when loading " . $self->ObjectName);
@@ -131,8 +135,10 @@
my $id = shift;
my $attr = RT::Attribute->new($self->CurrentUser);
- unless ($attr->LoadById($id)) {
- return (0, $self->loc("Failed to load attribute [_1]", $id))
+ my ($ok, $msg) = $attr->LoadById($id);
+
+ if (!$ok) {
+ return (0, $self->loc("Failed to load [_1] [_2]: [_3]", $self->ObjectName, $id, $msg))
}
my $privacy = $self->_build_privacy($attr->ObjectType, $attr->ObjectId);
@@ -152,10 +158,11 @@
=head2 Save
-Takes a privacy, a name, and any other arguments. Saves the given parameters to
-the appropriate user/group object, and loads the resulting object. Arguments
-are passed to the SaveAttribute method, which does the actual update. Returns a
-tuple of status and message, where status is true on success. Defaults are:
+Creates a new shared setting. Takes a privacy, a name, and any other arguments.
+Saves the given parameters to the appropriate user/group object, and loads the
+resulting object. Arguments are passed to the L</SaveAttribute> method, which
+does the actual update. Returns a tuple of status and message, where status is
+true on success. Defaults are:
Privacy: CurrentUser only
Name: "new (ObjectName)"
@@ -177,13 +184,8 @@
return (0, $self->loc("Failed to load object for [_1]", $privacy))
unless $object;
- if ( $object->isa('RT::System') ) {
- return (0, $self->loc("No permission to save system-wide [_1]", $self->ObjectName))
- unless $self->CurrentUser->HasRight(
- Object => $RT::System,
- Right => 'SuperUser',
- );
- }
+ return (0, $self->loc("Permission denied"))
+ unless $self->CurrentUserCanCreate($privacy);
my ($att_id, $att_msg) = $self->SaveAttribute($object, \%args);
@@ -199,11 +201,19 @@
}
}
+=head2 SaveAttribute
+
+An empty method for subclassing. Called from L</Save> method.
+
+=cut
+
+sub SaveAttribute { }
+
=head2 Update
Updates the parameters of an existing shared setting. Any arguments are passed
-to the UpdateAttribute method. Returns a tuple of status and message, where
-status is true on success.
+to the L</UpdateAttribute> method. Returns a tuple of status and message, where
+status is true on success.
=cut
@@ -215,6 +225,9 @@
return(0, $self->loc("Could not load [_1] attribute", $self->ObjectName))
unless $self->{'Attribute'}->Id;
+ return (0, $self->loc("Permission denied"))
+ unless $self->CurrentUserCanModify;
+
my ($status, $msg) = $self->UpdateAttribute(\%args);
return (1, $self->loc("[_1] update: Nothing changed", ucfirst($self->ObjectName)))
@@ -227,6 +240,14 @@
return ($status, $self->loc("[_1] update: [_2]", ucfirst($self->ObjectName), $msg));
}
+=head2 UpdateAttribute
+
+An empty method for subclassing. Called from L</Update> method.
+
+=cut
+
+sub UpdateAttribute { }
+
=head2 Delete
Deletes the existing shared setting. Returns a tuple of status and message,
@@ -237,6 +258,9 @@
sub Delete {
my $self = shift;
+ return (0, $self->loc("Permission denied"))
+ unless $self->CurrentUserCanDelete;
+
my ($status, $msg) = $self->{'Attribute'}->Delete;
if ($status) {
return (1, $self->loc("Deleted [_1]", $self->ObjectName));
@@ -295,6 +319,50 @@
return $self->{'Attribute'}->SubValue($param);
}
+=head2 IsVisibleTo Privacy
+
+Returns true if the setting is visible to all principals of the given privacy.
+This does not deal with ACLs, this only looks at membership.
+
+=cut
+
+sub IsVisibleTo {
+ my $self = shift;
+ my $to = shift;
+ my $privacy = $self->Privacy;
+
+ # if the privacies are the same, then they can be seen. this handles
+ # a personal setting being visible to that user.
+ return 1 if $privacy eq $to;
+
+ # If the setting is systemwide, then any user can see it.
+ return 1 if $privacy =~ /^RT::System/;
+
+ # Only privacies that are RT::System can be seen by everyone.
+ return 0 if $to =~ /^RT::System/;
+
+ # If the setting is group-wide...
+ if ($privacy =~ /^RT::Group-(\d+)$/) {
+ my $setting_group = RT::Group->new($self->CurrentUser);
+ $setting_group->Load($1);
+
+ if ($to =~ /-(\d+)$/) {
+ my $to_id = $1;
+
+ # then any principal that is a member of the setting's group can see
+ # the setting
+ return $setting_group->HasMemberRecursively($to_id);
+ }
+ }
+
+ return 0;
+}
+
+sub CurrentUserCanSee { 1 }
+sub CurrentUserCanCreate { 1 }
+sub CurrentUserCanModify { 1 }
+sub CurrentUserCanDelete { 1 }
+
### Internal methods
# _GetObject: helper routine to load the correct object whose parameters
@@ -306,6 +374,12 @@
my ($obj_type, $obj_id) = split(/\-/, ($privacy || ''));
+ unless ($obj_type && $obj_id) {
+ $privacy = '(undef)' if !defined($privacy);
+ $RT::Logger->debug("Invalid privacy string '$privacy'");
+ return undef;
+ }
+
my $object = $self->_load_privacy_object($obj_type, $obj_id);
unless (ref($object) eq $obj_type) {
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Template_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Template_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Template_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -272,6 +272,11 @@
Returns L<MIME::Entity> object parsed using L</Parse> method. Returns
undef if last call to L</Parse> failed or never be called.
+Note that content of the template is UTF-8, but L<MIME::Parser> is not
+good at handling it and all data of the entity should be treated as
+octets and converted to perl strings using Encode::decode_utf8 or
+something else.
+
=cut
sub MIMEObj {
@@ -351,7 +356,9 @@
### Should we forgive normally-fatal errors?
$parser->ignore_errors(1);
- $self->{'MIMEObj'} = eval { $parser->parse_data($content) };
+ # MIME::Parser doesn't play well with perl strings
+ utf8::encode($content);
+ $self->{'MIMEObj'} = eval { $parser->parse_data( \$content ) };
if ( my $error = $@ || $parser->last_error ) {
$RT::Logger->error( "$error" );
return ( 0, $error );
@@ -425,8 +432,6 @@
);
return ( undef, $self->loc('Template parsing error') ) if $is_broken;
- # MIME::Parser has problems dealing with high-bit utf8 data.
- Encode::_utf8_off($retval);
return ($retval);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Test.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Test.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Test.pm Mon Jul 7 16:21:51 2008
@@ -54,6 +54,7 @@
use Test::More;
use Socket;
use File::Temp;
+use File::Spec;
my $config;
our ($existing_server, $port, $dbname);
my $mailsent;
@@ -115,6 +116,7 @@
use RT::Interface::Web::Standalone;
use Test::HTTP::Server::Simple;
use Test::WWW::Mechanize;
+use File::Path 'mkpath';
unshift @RT::Interface::Web::Standalone::ISA, 'Test::HTTP::Server::Simple';
@@ -167,16 +169,28 @@
min_level => $screen_logger->min_level,
action => { error => 'warn',
critical => 'warn' } ) );
+
+ # XXX: this should really be totally isolated environment so we
+ # can parallelize and be sane
+ mkpath [ $RT::MasonSessionDir ]
+ if RT->Config->Get('DatabaseType');
+
}
my $created_new_db; # have we created new db? mainly for parallel testing
+sub db_requires_no_dba {
+ my $self = shift;
+ my $db_type = RT->Config->Get('DatabaseType');
+ return 1 if $db_type eq 'SQLite';
+}
+
sub bootstrap_db {
my $self = shift;
my %args = @_;
unless (defined $ENV{'RT_DBA_USER'} && defined $ENV{'RT_DBA_PASSWORD'}) {
- BAIL_OUT("RT_DBA_USER and RT_DBA_PASSWORD environment variables need to be set in order to run 'make test'");
+ BAIL_OUT("RT_DBA_USER and RT_DBA_PASSWORD environment variables need to be set in order to run 'make test'") unless $self->db_requires_no_dba;
}
# bootstrap with dba cred
my $dbh = _get_dbh(RT::Handle->SystemDSN,
@@ -531,13 +545,14 @@
return ($status, $id);
}
+my $mailbox_catcher = File::Temp->new( OPEN => 0, CLEANUP => 0 )->filename;
sub set_mail_catcher {
my $self = shift;
my $catcher = sub {
my $MIME = shift;
- open my $handle, '>>', 't/mailbox'
- or die "Unable to open t/mailbox for appending: $!";
+ open my $handle, '>>', $mailbox_catcher
+ or die "Unable to open $mailbox_catcher for appending: $!";
$MIME->print($handle);
print $handle "%% split me! %%\n";
@@ -549,7 +564,11 @@
sub fetch_caught_mails {
my $self = shift;
return grep /\S/, split /%% split me! %%/,
- RT::Test->file_content( 't/mailbox', 'unlink' => 1, noexist => 1 );
+ RT::Test->file_content( $mailbox_catcher, 'unlink' => 1, noexist => 1 );
+}
+
+sub clean_caught_mails {
+ unlink $mailbox_catcher;
}
sub file_content {
@@ -557,7 +576,7 @@
my $path = shift;
my %args = @_;
- $path = File::Spec->catfile( @$path ) if ref $path;
+ $path = File::Spec->catfile( @$path ) if ref $path eq 'ARRAY';
diag "reading content of '$path'" if $ENV{'TEST_VERBOSE'};
@@ -584,6 +603,48 @@
return undef;
}
+=head2 get_relocatable_dir
+
+Takes a path relative to the location of the test file that is being
+run and returns a path that takes the invocation path into account.
+
+e.g. RT::Test::get_relocatable_dir(File::Spec->updir(), 'data', 'emails')
+
+=cut
+
+sub get_relocatable_dir {
+ (my $volume, my $directories, my $file) = File::Spec->splitpath($0);
+ if (File::Spec->file_name_is_absolute($directories)) {
+ return File::Spec->catdir($directories, @_);
+ } else {
+ return File::Spec->catdir(File::Spec->curdir(), $directories, @_);
+ }
+}
+
+=head2 get_relocatable_file
+
+Same as get_relocatable_dir, but takes a file and a path instead
+of just a path.
+
+e.g. RT::Test::get_relocatable_file('test-email',
+ (File::Spec->updir(), 'data', 'emails'))
+
+=cut
+
+sub get_relocatable_file {
+ my $file = shift;
+ return File::Spec->catfile(get_relocatable_dir(@_), $file);
+}
+
+sub get_abs_relocatable_dir {
+ (my $volume, my $directories, my $file) = File::Spec->splitpath($0);
+ if (File::Spec->file_name_is_absolute($directories)) {
+ return File::Spec->catdir($directories, @_);
+ } else {
+ return File::Spec->catdir(Cwd->getcwd(), $directories, @_);
+ }
+}
+
sub import_gnupg_key {
my $self = shift;
my $key = shift;
@@ -591,9 +652,16 @@
$key =~ s/\@/-at-/g;
$key .= ".$type.key";
+
require RT::Crypt::GnuPG;
+ (my $volume, my $directories, my $file) = File::Spec->splitpath($0);
+ my $keys_dir = File::Spec->catdir( File::Spec->curdir(), $directories,
+ File::Spec->updir(), qw(data gnupg keys) );
+ # this is a bit hackish; calling it from somewhere that's not a subdir
+ # of t/ will fail
return RT::Crypt::GnuPG::ImportKey(
- RT::Test->file_content([qw(t data gnupg keys), $key])
+ RT::Test->file_content([get_relocatable_dir(File::Spec->updir(), 'data',
+ 'gnupg', 'keys'), $key])
);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Ticket_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Ticket_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Ticket_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -430,7 +430,7 @@
if ( $watcher =~ /^\d+$/ ) {
push @{ $args{$type} }, $watcher;
} else {
- my @addresses = Mail::Address->parse( $watcher );
+ my @addresses = Email::Address->parse( $watcher );
foreach my $address( @addresses ) {
my $user = RT::User->new( $RT::SystemUser );
my ($uid, $msg) = $user->LoadOrCreateByEmail( $address );
@@ -1037,7 +1037,7 @@
return $self->_AddWatcher( %args )
if $self->CurrentUserHasRight('ModifyTicket');
if ( $args{'Email'} ) {
- my ($addr) = Mail::Address->parse( $args{'Email'} );
+ my ($addr) = Email::Address->parse( $args{'Email'} );
return (0, $self->loc("Couldn't parse address from '[_1]' string", $args{'Email'} ))
unless $addr;
@@ -1601,7 +1601,7 @@
=head2 TransactionAddresses
Returns a composite hashref of the results of L<RT::Transaction/Addresses> for all this ticket's Create, Comment or Correspond transactions.
-The keys are C<To>, C<Cc> and C<Bcc>. The values are lists of C<Mail::Address> objects.
+The keys are C<To>, C<Cc> and C<Bcc>. The values are lists of C<Email::Address> objects.
NOTE: For performance reasons, this method might want to skip transactions and go straight for attachments. But to make that work right, we're going to need to go and walk around the access control in Attachment.pm's sub _Value.
@@ -2119,7 +2119,7 @@
my $addresses = join ', ', (
map { RT::User->CanonicalizeEmailAddress( $_->address ) }
- Mail::Address->parse( $args{ $type . 'MessageTo' } ) );
+ Email::Address->parse( $args{ $type . 'MessageTo' } ) );
$args{'MIMEObj'}->head->add( 'RT-Send-' . $type, $addresses );
}
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -132,7 +132,9 @@
Cc => [ 'WATCHERFIELD' => 'Cc', ],
AdminCc => [ 'WATCHERFIELD' => 'AdminCc', ],
Watcher => [ 'WATCHERFIELD', ],
-
+ QueueCc => [ 'WATCHERFIELD' => 'Cc' => 'Queue', ],
+ QueueAdminCc => [ 'WATCHERFIELD' => 'AdminCc' => 'Queue', ],
+ QueueWatcher => [ 'WATCHERFIELD' => undef => 'Queue', ],
CustomFieldValue => [ 'CUSTOMFIELD', ],
CustomField => [ 'CUSTOMFIELD', ],
CF => [ 'CUSTOMFIELD', ],
@@ -735,6 +737,7 @@
my $meta = $FIELD_METADATA{ $field };
my $type = $meta->[1] || '';
+ my $class = $meta->[2] || 'Ticket';
# Owner was ENUM field, so "Owner = 'xxx'" allowed user to
# search by id and Name at the same time, this is workaround
@@ -752,7 +755,7 @@
}
$rest{SUBKEY} ||= 'EmailAddress';
- my $groups = $self->_RoleGroupsJoin( Type => $type );
+ my $groups = $self->_RoleGroupsJoin( Type => $type, Class => $class );
$self->_OpenParen;
if ( $op =~ /^IS(?: NOT)?$/ ) {
@@ -890,14 +893,15 @@
sub _RoleGroupsJoin {
my $self = shift;
- my %args = (New => 0, Type => '', @_);
- return $self->{'_sql_role_group_aliases'}{ $args{'Type'} }
- if $self->{'_sql_role_group_aliases'}{ $args{'Type'} } && !$args{'New'};
+ my %args = (New => 0, Class => 'Ticket', Type => '', @_);
+ return $self->{'_sql_role_group_aliases'}{ $args{'Class'} .'-'. $args{'Type'} }
+ if $self->{'_sql_role_group_aliases'}{ $args{'Class'} .'-'. $args{'Type'} }
+ && !$args{'New'};
# we always have watcher groups for ticket, so we use INNER join
my $groups = $self->Join(
ALIAS1 => 'main',
- FIELD1 => 'id',
+ FIELD1 => $args{'Class'} eq 'Queue'? 'Queue': 'id',
TABLE2 => 'Groups',
FIELD2 => 'Instance',
ENTRYAGGREGATOR => 'AND',
@@ -906,7 +910,7 @@
LEFTJOIN => $groups,
ALIAS => $groups,
FIELD => 'Domain',
- VALUE => 'RT::Ticket-Role',
+ VALUE => 'RT::'. $args{'Class'} .'-Role',
);
$self->SUPER::Limit(
LEFTJOIN => $groups,
@@ -915,7 +919,7 @@
VALUE => $args{'Type'},
) if $args{'Type'};
- $self->{'_sql_role_group_aliases'}{ $args{'Type'} } = $groups
+ $self->{'_sql_role_group_aliases'}{ $args{'Class'} .'-'. $args{'Type'} } = $groups
unless $args{'New'};
return $groups;
@@ -2591,22 +2595,7 @@
# of being revoked, it's ok if queue rights allow
# ShowTicket. It seems need another query, but we have
# rights cache in Principal::HasRight.
- elsif ($Ticket->QueueObj->CurrentUserHasRight('ShowTicket')
- || $Ticket->CurrentUserHasRight('ShowTicket') )
- {
- return ($Ticket);
- }
-
- if ( $Ticket->__Value('Status') eq 'deleted' ) {
- return ( $self->Next() );
- }
-
- # Since Ticket could be granted with more rights instead
- # of being revoked, it's ok if queue rights allow
- # ShowTicket. It seems need another query, but we have
- # rights cache in Principal::HasRight.
- elsif ($Ticket->QueueObj->CurrentUserHasRight('ShowTicket')
- || $Ticket->CurrentUserHasRight('ShowTicket') )
+ elsif ( $Ticket->CurrentUserHasRight('ShowTicket') )
{
return ($Ticket);
}
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay_SQL.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay_SQL.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/Tickets_Overlay_SQL.pm Mon Jul 7 16:21:51 2008
@@ -198,6 +198,9 @@
}
die "Unknown field '$key' in '$string'" unless $class;
+ # replace __CurrentUser__ with id
+ $value = $self->CurrentUser->id if $value eq '__CurrentUser__';
+
unless( $dispatch{ $class } ) {
die "No dispatch method for class '$class'"
Modified: rt/3.8/branches/3.8.0-releng/lib/RT/User_Overlay.pm
==============================================================================
--- rt/3.8/branches/3.8.0-releng/lib/RT/User_Overlay.pm (original)
+++ rt/3.8/branches/3.8.0-releng/lib/RT/User_Overlay.pm Mon Jul 7 16:21:51 2008
@@ -464,7 +464,7 @@
=head2 LoadOrCreateByEmail ADDRESS
Attempts to find a user who has the provided email address. If that fails, creates an unprivileged user with
-the provided email address and loads them. Address can be provided either as L<Mail::Address> object
+the provided email address and loads them. Address can be provided either as L<Email::Address> object
or string which is parsed using the module.
Returns a tuple of the user's id and a status message.
@@ -477,7 +477,7 @@
my $email = shift;
my ($message, $name);
- if ( UNIVERSAL::isa( $email => 'Mail::Address' ) ) {
+ if ( UNIVERSAL::isa( $email => 'Email::Address' ) ) {
($email, $name) = ($email->address, $email->phrase);
} else {
($email, $name) = RT::Interface::Email::ParseAddressFromHeader( $email );
@@ -606,7 +606,7 @@
}
-=head2 Password related functions
+=head2 Password and authentication related functions
=head3 SetRandomPassword
@@ -999,7 +999,10 @@
=head3 AuthToken
-Returns an authentication string associated with the user.
+Returns an authentication string associated with the user. This
+string can be used to generate passwordless URLs to integrate
+RT with services and programms like callendar managers, rss
+readers and other.
=cut
@@ -1032,6 +1035,41 @@
return $self->SetAttribute( Name => "AuthToken", Content => $token );
}
+=head3 GenerateAuthString
+
+Takes a string and returns back a hex hash string. Later you can use
+this pair to make sure it's generated by this user using L</ValidateAuthString>
+
+=cut
+
+sub GenerateAuthString {
+ my $self = shift;
+ my $protect = shift;
+
+ my $str = $self->AuthToken . $protect;
+ utf8::encode($str);
+
+ return substr(Digest::MD5::md5_hex($str),0,16);
+}
+
+=head3 ValidateAuthString
+
+Takes auth string and protected string. Returns true is protected string
+has been protected by user's L</AuthToken>. See also L</GenerateAuthString>.
+
+=cut
+
+sub ValidateAuthString {
+ my $self = shift;
+ my $auth_string = shift;
+ my $protected = shift;
+
+ my $str = $self->AuthToken . $protected;
+ utf8::encode( $str );
+
+ return $auth_string eq substr(Digest::MD5::md5_hex($str),0,16);
+}
+
=head2 SetDisabled
Toggles the user's disabled flag.
Modified: rt/3.8/branches/3.8.0-releng/sbin/extract-message-catalog
==============================================================================
--- rt/3.8/branches/3.8.0-releng/sbin/extract-message-catalog (original)
+++ rt/3.8/branches/3.8.0-releng/sbin/extract-message-catalog Mon Jul 7 16:21:51 2008
@@ -155,7 +155,7 @@
# Comment-based mark: "..." # loc
$line = 1;
pos($_) = 0;
- while (m/\G.*?($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],]*\s*\#\s*loc\s*$/smg) {
+ while (m/\G.*?($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],;]*\s*\#\s*loc\s*$/smg) {
my $str = substr($1, 1, -1);
$line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
$str =~ s/\\'/\'/g;
@@ -165,7 +165,7 @@
# Comment-based pair mark: "..." => "..." # loc_pair
$line = 1;
pos($_) = 0;
- while (m/\G.*?(\w+)\s*=>\s*($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],]*\s*\#\s*loc_pair\s*$/smg) {
+ while (m/\G.*?(\w+)\s*=>\s*($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],;]*\s*\#\s*loc_pair\s*$/smg) {
my $key = $1;
my $val = substr($2, 1, -1);
$line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
@@ -218,7 +218,7 @@
my $is_english = ( $lang =~ /^en(?:[^A-Za-z]|$)/ );
foreach my $str ( sort keys %{$FILECAT} ) {
- $Lexicon{$str} ||= '';;
+ $Lexicon{$str} ||= '';
}
foreach ( sort keys %Lexicon ) {
my $f = join ( ' ', sort map $_->[0].":".$_->[1], @{ $FILECAT->{$_} } );
@@ -251,7 +251,7 @@
$var =~ s/\s*$//;
$out .= "#. ($var)\n" unless $seen{$var}++;
}
- $out .= "msgid \"$_\"\nmsgstr \"$Lexicon{$_}\"\n\n";
+ $out .= 'msgid ' . fmt($_) . "msgstr \"$Lexicon{$_}\"\n\n";
}
open PO, ">$file" or die $!;
@@ -267,6 +267,23 @@
return $text;
}
+sub fmt {
+ my $str = shift;
+ return "\"$str\"\n" unless $str =~ /\n/;
+
+ my $multi_line = ($str =~ /\n(?!\z)/);
+ $str =~ s/\n/\\n"\n"/g;
+
+ if ($str =~ /\n"$/) {
+ chop $str;
+ }
+ else {
+ $str .= "\"\n";
+ }
+ return $multi_line ? qq(""\n"$str) : qq("$str);
+}
+
+
__END__
# Local variables:
# c-indentation-style: bsd
Modified: rt/3.8/branches/3.8.0-releng/sbin/rt-email-dashboards.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/sbin/rt-email-dashboards.in (original)
+++ rt/3.8/branches/3.8.0-releng/sbin/rt-email-dashboards.in Mon Jul 7 16:21:51 2008
@@ -103,7 +103,7 @@
# Read in the options
my %opts;
GetOptions( \%opts,
- "help", "dryrun", "verbose", "vverbose", "epoch=i", "all", "skip-acl"
+ "help", "dryrun", "verbose", "debug", "epoch=i", "all", "skip-acl"
);
if ($opts{'help'}) {
@@ -114,8 +114,8 @@
}
# helper functions
-sub verbose { print loc(@_), "\n" if $opts{verbose} || $opts{vverbose}; 1 }
-sub vverbose { print loc(@_), "\n" if $opts{vverbose}; 1 }
+sub verbose { print loc(@_), "\n" if $opts{verbose} || $opts{verbose}; 1 }
+sub debug { print loc(@_), "\n" if $opts{debug}; 1 }
sub error { $RT::Logger->error(loc(@_)); verbose(@_); 1 }
sub warning { $RT::Logger->warning(loc(@_)); verbose(@_); 1 }
@@ -123,38 +123,31 @@
verbose "Using time [_1]", scalar localtime($now);
my $from = get_from();
-vverbose "Sending email from [_1]", $from;
+debug "Sending email from [_1]", $from;
# look through each user for her subscriptions
my $Users = RT::Users->new($RT::SystemUser);
+$Users->LimitToPrivileged;
+
while (defined(my $user = $Users->Next)) {
if ($user->PrincipalObj->Disabled) {
- vverbose "Skipping over "
- . $user->Name
- . " due to having a disabled account.";
+ debug "Skipping over "
+ . $user->Name
+ . " due to having a disabled account.";
next;
}
unless (email_of($user)) {
- vverbose "Skipping over "
- . $user->Name
- . " due to lack of EmailAddress.";
+ debug "Skipping over "
+ . $user->Name
+ . " due to lack of EmailAddress.";
next;
}
- if (!$opts{"skip-acl"}) {
- unless ($user->HasRight(Right => 'SubscribeDashboard', Object => $RT::System)) {
- vverbose "Skipping over "
- . $user->Name
- . " due to lack of SubscribeDashboard right.";
- next;
- }
- }
-
- my ($hour, $dow, $dom) = hour_dow_dom_in($user->Timezone || 'UTC');
+ my ($hour, $dow, $dom) = hour_dow_dom_in($user->Timezone || RT->Config->Get('Timezone'));
$hour .= ':00';
- vverbose "Checking [_1]'s subscriptions: hour [_2], dow [_3], dom [_4]",
- $user->Name, $hour, $dow, $dom;
+ debug "Checking [_1]'s subscriptions: hour [_2], dow [_3], dom [_4]",
+ $user->Name, $hour, $dow, $dom;
my $currentuser = RT::CurrentUser->new;
$currentuser->LoadByName($user->Name);
@@ -164,7 +157,9 @@
for my $subscription ($user->Attributes->Named('Subscription')) {
if (!$opts{all}) {
- vverbose "Checking against subscription with frequency [_1], hour [_2], dow [_3], dom [_4]", $subscription->SubValue('Frequency'), $subscription->SubValue('Hour'), $subscription->SubValue('Dow'), $subscription->SubValue('Dom');
+ debug "Checking against subscription with frequency [_1], hour [_2], dow [_3], dom [_4]", $subscription->SubValue('Frequency'), $subscription->SubValue('Hour'), $subscription->SubValue('Dow'), $subscription->SubValue('Dom');
+
+ next if $subscription->SubValue('Frequency') eq 'never';
# correct hour?
next if $subscription->SubValue('Hour') ne $hour;
@@ -192,14 +187,42 @@
my $dashboard = RT::Dashboard->new($currentuser);
- $dashboard->LoadById($subscription->SubValue('DashboardId'))
- or die loc(
- "Unable to load dashboard [_1] of subscription [_2] for user [_3]",
+ my ($ok, $msg) = $dashboard->LoadById($subscription->SubValue('DashboardId'));
+
+ # failed to load dashboard. perhaps it was deleted or it changed privacy
+ if (!$ok) {
+ warning "Unable to load dashboard [_1] of subscription [_2] for user [_3]: [_4]",
$subscription->SubValue('DashboardId'),
$subscription->Id,
- $currentuser->Name
+ $currentuser->Name,
+ $msg;
+
+ my $ok = RT::Interface::Email::SendEmailUsingTemplate(
+ From => $from,
+ To => email_of($currentuser),
+ Template => 'Error: Missing dashboard',
+ Arguments => {
+ SubscriptionObj => $subscription,
+ },
);
+ # only delete the subscription if the email looks like it went through
+ if ($ok) {
+ my ($deleted, $msg) = $subscription->Delete();
+ if ($deleted) {
+ verbose("Deleted an obsolete subscription: [_1]", $msg);
+ }
+ else {
+ warning("Unable to delete an obsolete subscription: [_1]", $msg);
+ }
+ }
+ else {
+ warning("Unable to notify [_1] of an obsolete subscription", $currentuser->Name);
+ }
+
+ return;
+ }
+
verbose 'Creating dashboard "[_1]" for user "[_2]":',
$dashboard->Name,
$currentuser->Name;
@@ -215,24 +238,25 @@
$HTML::Mason::Commands::session{CurrentUser} = $currentuser;
my $contents = run_component(
'/Dashboards/Render.html',
- id => $dashboard->Id,
+ id => $dashboard->Id,
+ Preview => 0,
);
for (@{ RT->Config->Get('EmailDashboardRemove') || [] }) {
$contents =~ s/$_//g;
}
- vverbose "Got [_1] characters of output.", length $contents;
+ debug "Got [_1] characters of output.", length $contents;
$contents = HTML::RewriteAttributes::Links->rewrite(
$contents,
RT->Config->Get('WebURL') . '/Dashboards/Render.html',
);
- send_mail($currentuser, $dashboard, $subscription, $contents);
+ email_dashboard($currentuser, $dashboard, $subscription, $contents);
}
-sub send_mail {
+sub email_dashboard {
my ($currentuser, $dashboard, $subscription, $content) = @_;
verbose 'Sending dashboard "[_1]" to user [_2] <[_3]>',
@@ -240,11 +264,10 @@
$currentuser->Name,
email_of($currentuser);
- my $subject = $currentuser->loc(
- (RT->Config->Get('DashboardSubject') || "RT [_2] Dashboard: [_1]"),
- $dashboard->Name,
+ my $subject = sprintf '[%s] ' . RT->Config->Get('DashboardSubject'),
+ RT->Config->Get('rtname'),
ucfirst($subscription->SubValue('Frequency')),
- );
+ $dashboard->Name;
my $entity = build_email(
$content, $from, email_of($currentuser), $subject,
@@ -254,9 +277,9 @@
Entity => $entity,
);
- vverbose "Done sending dashboard to [_1] <[_2]>",
- $currentuser->Name, email_of($currentuser)
- and return if $ok;
+ debug "Done sending dashboard to [_1] <[_2]>",
+ $currentuser->Name, email_of($currentuser)
+ and return if $ok;
error 'Failed to email dashboard to user [_1] <[_2]>',
$currentuser->Name, email_of($currentuser);
@@ -324,7 +347,7 @@
}
sub get_from {
- RT->Config->Get('DashboardAddress') || RT->Config->Get('CorrespondAddress')
+ RT->Config->Get('DashboardAddress') || RT->Config->Get('OwnerEmail')
}
{
@@ -333,7 +356,7 @@
sub mason {
unless ($mason) {
- vverbose "Creating Mason object.";
+ debug "Creating Mason object.";
$mason = HTML::Mason::Interp->new(
RT::Interface::Web::Handler->DefaultHandlerArgs,
out_method => \$outbuf,
@@ -378,31 +401,47 @@
}
sub get_resource {
- my $uri = shift;
+ my $uri = URI->new(shift);
my ($content, $filename, $mimetype, $encoding);
- # strip out RT::WebURL
- $uri =~ s/^\Q$RT::WebURL//;
+ verbose "Getting resource [_1]", $uri;
+
+ # strip out the equivalent of WebURL, so we start at the correct /
+ my $path = $uri->path;
+ my $webpath = RT->Config->Get('WebPath');
+ $path =~ s/^\Q$webpath//;
# add a leading / if needed
- $uri = "/$uri"
- unless $uri =~ m{^/};
+ $path = "/$path"
+ unless $path =~ m{^/};
+ # grab the query arguments
my %args;
- if ($uri =~ s/\?(.*)//) {
- for (split /&/, ($1||'')) {
- my ($k, $v) = /^(.*?)=(.*)$/
- or die "Unable to parse query parameter '$_'";
+ for (split /&/, ($uri->query||'')) {
+ my ($k, $v) = /^(.*?)=(.*)$/
+ or die "Unable to parse query parameter '$_'";
- for ($k, $v) { s/%(..)/chr hex $1/ge }
+ for ($k, $v) { s/%(..)/chr hex $1/ge }
+
+ # no value yet, simple key=value
+ if (!exists $args{$k}) {
$args{$k} = $v;
}
+ # already have key=value, need to upgrade it to key=[value1, value2]
+ elsif (!ref($args{$k})) {
+ $args{$k} = [$args{$k}, $v];
+ }
+ # already key=[value1, value2], just add the new value
+ else {
+ push @{ $args{$k} }, $v;
+ }
}
- $content = run_component($uri, %args);
+ debug "Running component '[_1]'", $path;
+ $content = run_component($path, %args);
- $uri =~ s{^(.*/)(.*?)$}{$1};
- $filename = $2;
+ # guess at the filename from the component name
+ $filename = $2 if $path =~ m{^.*/(.*?)$};
# the rest of this was taken from Email::MIME::CreateHTML::Resolver::LWP
($mimetype, $encoding) = MIME::Types::by_suffix($filename);
@@ -419,6 +458,13 @@
$mimetype ||= 'application/octet-stream';
$encoding ||= 'base64';
+ debug "Resource [_1]: length=[_2] filename='[_3]' mimetype='[_4]', encoding='[_5]'",
+ $uri,
+ length($content),
+ $filename,
+ $mimetype,
+ $encoding;
+
return ($content, $filename, $mimetype, $encoding);
}
@@ -484,7 +530,7 @@
Print out some tracing information (such as which dashboards are being
generated and sent out)
-=item --vverbose
+=item --debug
Print out more tracing information (such as each user and subscription that is
being considered)
@@ -494,10 +540,6 @@
Disable checking of whether each subscription should be sent right now (should
only be used with --dryrun)
-=item --skip-acl
-
-Skip SubscribeDashboard access control checks
-
=back
=cut
Modified: rt/3.8/branches/3.8.0-releng/sbin/rt-email-digest.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/sbin/rt-email-digest.in (original)
+++ rt/3.8/branches/3.8.0-releng/sbin/rt-email-digest.in Mon Jul 7 16:21:51 2008
@@ -49,7 +49,30 @@
use warnings;
use strict;
-use lib qw( @RT_LIB_PATH@ );
+BEGIN {
+ require File::Spec;
+ my @libs = ("@RT_LIB_PATH@", "@LOCAL_LIB_PATH@");
+ my $bin_path;
+
+ for my $lib (@libs) {
+ unless ( File::Spec->file_name_is_absolute($lib) ) {
+ unless ($bin_path) {
+ if ( File::Spec->file_name_is_absolute(__FILE__) ) {
+ $bin_path = ( File::Spec->splitpath(__FILE__) )[1];
+ }
+ else {
+ require FindBin;
+ no warnings "once";
+ $bin_path = $FindBin::Bin;
+ }
+ }
+ $lib = File::Spec->catfile( $bin_path, File::Spec->updir, $lib );
+ }
+ unshift @INC, $lib;
+ }
+
+}
+
use Date::Format qw( strftime );
use Getopt::Long;
use RT;
Modified: rt/3.8/branches/3.8.0-releng/sbin/rt-test-dependencies.in
==============================================================================
--- rt/3.8/branches/3.8.0-releng/sbin/rt-test-dependencies.in (original)
+++ rt/3.8/branches/3.8.0-releng/sbin/rt-test-dependencies.in Mon Jul 7 16:21:51 2008
@@ -221,6 +221,7 @@
Locale::Maketext::Fuzzy
MIME::Entity 5.425
Mail::Mailer 1.57
+Email::Address
Text::Wrapper
Time::ParseDate
Time::HiRes
@@ -237,6 +238,7 @@
Encode 2.13
CSS::Squish 0.06
File::Glob
+Devel::StackTrace 1.19
.
$deps{'MASON'} = [ text_to_hash( << '.') ];
@@ -295,25 +297,25 @@
.
$deps{'FASTCGI'} = [ text_to_hash( << '.') ];
-CGI 3.35
+CGI 3.38
FCGI
CGI::Fast
.
$deps{'SPEEDYCGI'} = [ text_to_hash( << '.') ];
-CGI 3.35
+CGI 3.38
CGI::SpeedyCGI
.
$deps{'MODPERL1'} = [ text_to_hash( << '.') ];
-CGI 3.35
+CGI 3.38
Apache::Request
Apache::DBI 0.92
.
$deps{'MODPERL2'} = [ text_to_hash( << '.') ];
-CGI 3.35
+CGI 3.38
Apache::DBI
HTML::Mason 1.36
.
Added: rt/3.8/branches/3.8.0-releng/sbin/tweak-template-locstring
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/sbin/tweak-template-locstring Mon Jul 7 16:21:51 2008
@@ -0,0 +1,8 @@
+#!/usr/bin/perl -w
+use strict;
+# run this script with:
+# perl -0pi sbin/tweak-template-locstring `ack -f share/html -G 'html$'`
+s!\<\&\|\/l([^&]*)\&\>[\n\s]+(.*?)[\n\s]*\<\/\&\>!;my ($arg, $x) = ($1, $2); $x =~ s/\s*\n\s*/ /g;"<&|/l$arg&>$x</&>"!smge;
+
+
+1;
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/CustomFields/Modify.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/CustomFields/Modify.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/CustomFields/Modify.html Mon Jul 7 16:21:51 2008
@@ -145,6 +145,8 @@
LookupType => $LookupType,
Description => $Description,
Pattern => $Pattern,
+ LinkValueTo => $LinkValueTo,
+ IncludeContentForValue => $IncludeContentForValue,
);
$m->comp( "/Elements/Error", Why => loc( "Could not create CustomField", $msg ) ) unless $val;
push @results, $msg;
@@ -227,4 +229,6 @@
$SetEnabled => undef
$Enabled => 0
$ValuesClass => 'RT::CustomFieldValues'
+$LinkValueTo => undef
+$IncludeContentForValue => undef
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/Global/Scrip.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/Global/Scrip.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/Global/Scrip.html Mon Jul 7 16:21:51 2008
@@ -74,7 +74,7 @@
my ($title, $current_subtab);
if ( $id ) {
$current_subtab = "Admin/Global/Scrip.html?id=$id&Queue=0";
- $title = loc("Modify a scrip which applies to all queues");
+ $title = loc("Modify a scrip that applies to all queues");
$subtabs->{"C"} = {
title => loc('Scrip #[_1]', $id),
path => "Admin/Global/Scrip.html?id=$id&Queue=0",
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment Mon Jul 7 16:21:51 2008
@@ -48,6 +48,6 @@
<%ARGS>
$Object => undef
</%ARGS>
-<a href="<% RT->Config->Get('WebBaseURL') %>/Ticket/Attachment/<% $Object->TransactionId %>/<% $Object->id %>/">
+<a href="<% RT->Config->Get('WebURL') %>/Ticket/Attachment/<% $Object->TransactionId %>/<% $Object->id %>/">
Attachment(id:<% $Object->id %>, FileName: <% $Object->Filename || '(no value)' %>)
</a>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket Mon Jul 7 16:21:51 2008
@@ -48,6 +48,6 @@
<%ARGS>
$Object => undef
</%ARGS>
-<a href="<% RT->Config->Get('WebBaseURL') %>/Ticket/Display.html?id=<% $Object->id %>">
+<a href="<% RT->Config->Get('WebURL') %>/Ticket/Display.html?id=<% $Object->id %>">
Ticket(id:<% $Object->id %>, Subject: <% substr($Object->Subject, 0, 30) %>...)
</a>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--User
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--User (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/Tools/Shredder/Elements/Object/RT--User Mon Jul 7 16:21:51 2008
@@ -48,6 +48,6 @@
<%ARGS>
$Object => undef
</%ARGS>
-<a href="<% RT->Config->Get('WebBaseURL') %>/Admin/Users/Modify.html?id=<% $Object->id %>">
+<a href="<% RT->Config->Get('WebURL') %>/Admin/Users/Modify.html?id=<% $Object->id %>">
User(id:<% $Object->id %>, Name: <% $Object->Name %>)
</a>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Admin/Users/MyRT.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Admin/Users/MyRT.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Admin/Users/MyRT.html Mon Jul 7 16:21:51 2008
@@ -80,7 +80,7 @@
if ($ARGS{Reset}) {
my ($ok, $msg) = $UserObj->SetPreferences('HomepageSettings', {});
- push @actions, $ok ? loc('Preferences saved for user [_2].', $UserObj->Name) : $msg;
+ push @actions, $ok ? loc('Preferences saved for user [_1].', $UserObj->Name) : $msg;
}
my ($default_portlets) = RT::System->new($session{'CurrentUser'})->Attributes->Named('HomepageSettings');
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObject
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObject (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObject Mon Jul 7 16:21:51 2008
@@ -49,21 +49,33 @@
$Object => undef
</%args>
<%init>
-# Returns an array of dashboards associated on $Object
+# Returns a hash of dashboards associated on $Object
use RT::Dashboard;
-my @dashboards;
+my %dashboards;
my $privacy = RT::Dashboard->_build_privacy($Object);
while (my $attr = $Object->Attributes->Next) {
if ($attr->Name =~ /^Dashboard\b/) {
my $dashboard = RT::Dashboard->new($session{'CurrentUser'});
- my ($ok) = $dashboard->Load($privacy, $attr->id);
- next if !$ok;
+ my ($ok, $msg) = $dashboard->Load($privacy, $attr->id);
- push @dashboards, $dashboard;
+ if (!$ok) {
+ $RT::Logger->debug("Unable to load dashboard $ok (privacy $privacy): $msg");
+ next;
+ }
+
+ if ($Object->isa('RT::System')) {
+ push @{ $dashboards{system} }, $dashboard;
+ }
+ elsif ($Object->isa('RT::User')) {
+ push @{ $dashboards{personal} }, $dashboard;
+ }
+ elsif ($Object->isa('RT::Group')) {
+ push @{ $dashboards{group}{$Object->Name} }, $dashboard;
+ }
}
}
-return @dashboards;
+return \%dashboards;
</%init>
Added: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObjects
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/DashboardsForObjects Mon Jul 7 16:21:51 2008
@@ -0,0 +1,68 @@
+%# BEGIN BPS TAGGED BLOCK {{{
+%#
+%# COPYRIGHT:
+%#
+%# This software is Copyright (c) 1996-2008 Best Practical Solutions, LLC
+%# <jesse at bestpractical.com>
+%#
+%# (Except where explicitly superseded by other copyright notices)
+%#
+%#
+%# LICENSE:
+%#
+%# This work is made available to you under the terms of Version 2 of
+%# the GNU General Public License. A copy of that license should have
+%# been provided with this software, but in any event can be snarfed
+%# from www.gnu.org.
+%#
+%# This work is distributed in the hope that it will be useful, but
+%# WITHOUT ANY WARRANTY; without even the implied warranty of
+%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+%# General Public License for more details.
+%#
+%# You should have received a copy of the GNU General Public License
+%# along with this program; if not, write to the Free Software
+%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+%# 02110-1301 or visit their web page on the internet at
+%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
+%#
+%#
+%# CONTRIBUTION SUBMISSION POLICY:
+%#
+%# (The following paragraph is not intended to limit the rights granted
+%# to you to modify and distribute this software under the terms of
+%# the GNU General Public License and is only of importance to you if
+%# you choose to contribute your changes and enhancements to the
+%# community by submitting them to Best Practical Solutions, LLC.)
+%#
+%# By intentionally submitting any modifications, corrections or
+%# derivatives to this work, or any other work intended for use with
+%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
+%# you are the copyright holder for those contributions and you grant
+%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
+%# royalty-free, perpetual, license to use, copy, create derivative
+%# works based on those contributions, and sublicense and distribute
+%# those contributions and any derivatives thereof.
+%#
+%# END BPS TAGGED BLOCK }}}
+<%args>
+ at Objects
+$dashboards => {}
+</%args>
+<%init>
+# Returns a hash of dashboards associated with @Objects
+
+for my $object (@Objects) {
+ my $new_dashboards = $m->comp("/Dashboards/Elements/DashboardsForObject", Object => $object);
+
+ push @{ $dashboards->{$_} }, @{ $new_dashboards->{$_} || [] }
+ for qw/personal system/;
+
+ push @{ $dashboards->{group}{$_} }, @{ $new_dashboards->{group}{$_} }
+ for keys %{ $new_dashboards->{group} || {} };
+}
+
+return $dashboards;
+</%init>
+
+
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/ShowDashboards
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/ShowDashboards (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/ShowDashboards Mon Jul 7 16:21:51 2008
@@ -46,29 +46,55 @@
%#
%# END BPS TAGGED BLOCK }}}
<&| /Widgets/TitleBox, title => loc("[_1] Dashboards", $Type) &>
+<& SELF:table, %ARGS &>
+</&>
+<%ARGS>
+$Type => undef
+</%ARGS>
+
+<%METHOD table>
+<%ARGS>
+$Dashboards => undef
+$Verbose => 1
+</%ARGS>
+<%INIT>
+# map each subscription to a dashboard ID
+my %subscription_for;
+
+for my $attr ($session{'CurrentUser'}->UserObj->Attributes->Named('Subscription')) {
+ $subscription_for{$attr->SubValue('DashboardId')} = $attr;
+}
+</%INIT>
% if (@$Dashboards == 0) {
- <p><% loc("No dashboards.") %></p>
+% if ($Verbose) {
+ <p><% loc("No dashboards.") %></p>
+% }
% } else {
<table class="collection-as-table">
<tr class="collection-as-table">
+% if ($Verbose) {
<th class="collection-as-table"><% loc("#") %></th>
+% }
<th class="collection-as-table"><% loc("Name") %></th>
<th class="collection-as-table"><% loc("Subscription") %></th>
</tr>
% my $i = 0;
-% for my $dashboard (sort {$b->Id <=> $a->Id} @$Dashboards) {
-% my $url = sprintf '%s/Dashboards/Modify.html?id=%d',
+% for my $dashboard (@$Dashboards) {
+% my $url = sprintf '%s/Dashboards/%d/%s',
% RT->Config->Get('WebPath'),
-% $dashboard->Id;
+% $dashboard->Id,
+% $dashboard->Name;
<tr class="collection-as-table <% ++$i % 2 ? 'oddline' : 'evenline' %>">
+% if ($Verbose) {
<td class="collection-as-table">
<a href="<% $url %>">
<% $dashboard->Id %>
</a>
</td>
+% }
<td class="collection-as-table">
<a href="<% $url %>">
<% $dashboard->Name %>
@@ -82,19 +108,5 @@
</table>
% }
-
-</&>
-
-<%ARGS>
-$Type => "Personal"
-$Dashboards => undef
-</%ARGS>
-<%INIT>
-# map each subscription to a dashboard ID
-my %subscription_for;
-
-for my $attr ($session{'CurrentUser'}->UserObj->Attributes->Named('Subscription')) {
- $subscription_for{$attr->SubValue('DashboardId')} = $attr;
-}
-</%INIT>
+</%METHOD>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/Tabs
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/Tabs (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Elements/Tabs Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /User/Elements/Tabs,
+<& /Tools/Elements/Tabs,
subtabs => $tabs,
current_tab => 'Dashboards/index.html',
current_subtab => $current_subtab,
@@ -87,7 +87,11 @@
};
delete $tabs->{"this"}{"subtabs"}{"c_Subscription"}
- if !$session{'CurrentUser'}->HasRight(Right => 'SubscribeDashboard', Object => $RT::System);
+ unless $DashboardObj->CurrentUserCanSubscribe;
+
+ $tabs->{"this"}{"subtabs"}{"z_Preview"}{path} = $real_subtab
+ if $real_subtab =~ /Render/
+ || $real_subtab =~ /Dashboard\/\d+/;
$current_subtab = $modify;
}
@@ -95,7 +99,10 @@
$tabs->{"A"} = { title => loc('Select dashboard'),
path => "Dashboards/index.html" };
-if ($session{'CurrentUser'}->HasRight(Right => 'ModifyDashboard', Object => $RT::System)) {
+my $dashboard = RT::Dashboard->new($session{'CurrentUser'});
+my @objects = $dashboard->_PrivacyObjects(Create => 1);
+
+if (@objects) {
$tabs->{"B"} = { title => loc('New dashboard'),
path => "Dashboards/Modify.html?Create=1",
separator => 1 };
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Modify.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Modify.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Modify.html Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => $title &>
+<& /Elements/Header, Title => $title &>
<& /Dashboards/Elements/Tabs,
current_subtab => $current_subtab,
Title => $title,
@@ -73,6 +73,9 @@
</td></tr>
</table>
<& /Elements/Submit, Name => 'Save', Label => loc('Save Changes') &>
+% if ($Dashboard->Id && $can_delete) {
+<& /Elements/Submit, Name => 'Delete', Label => loc('Delete') &>
+% }
</form>
<%INIT>
@@ -80,13 +83,15 @@
my ($title, @results);
my $tried_create = 0;
+# user went directly to Modify.html
+$Create = 1 if !$id;
+
use RT::Dashboard;
my $Dashboard = RT::Dashboard->new($session{'CurrentUser'});
-my @privacies = $Dashboard->_PrivacyObjects;
+my @privacies = $Dashboard->_PrivacyObjects(($Create ? 'Create' : 'Modify') => 1);
-# user went directly to Modify.html
-$Create = 1 if !$id;
+Abort(loc("Permission denied")) if @privacies == 0;
if ($Create) {
$current_subtab = 'Dashboards/Modify.html?Create=1';
@@ -94,28 +99,23 @@
}
else {
if ($id eq 'new') {
- my ($val, $msg);
$tried_create = 1;
- if ($session{'CurrentUser'}->HasRight(Right => 'ModifyDashboard', Object => $RT::System)) {
- ($val, $msg) = $Dashboard->Save(
- Name => $ARGS{'Name'},
- Privacy => $ARGS{'Privacy'},
- );
- push @results, $msg;
- }
- else {
- $msg = "No permission to create dashboards";
- }
+ my ($val, $msg) = $Dashboard->Save(
+ Name => $ARGS{'Name'},
+ Privacy => $ARGS{'Privacy'},
+ );
if (!$val) {
Abort(loc("Dashboard could not be created: [_1]", $msg));
}
+
+ push @results, $msg;
$id = $Dashboard->Id;
}
else {
- my ($ok) = $Dashboard->LoadById($id);
- $ok || Abort('Could not load dashboard');
+ my ($ok, $msg) = $Dashboard->LoadById($id);
+ $ok || Abort($msg);
}
if ($id) {
@@ -131,14 +131,8 @@
}
if (!$Create && !$tried_create && $id && $ARGS{'Save'}) {
- my ($ok, $msg);
- if ($session{'CurrentUser'}->HasRight(Right => 'ModifyDashboard', Object => $RT::System)) {
- ($ok, $msg) = $Dashboard->Update(Privacy => $ARGS{'Privacy'},
- Name => $ARGS{'Name'});
- }
- else {
- $msg = "No permission to update dashboards";
- }
+ my ($ok, $msg) = $Dashboard->Update(Privacy => $ARGS{'Privacy'},
+ Name => $ARGS{'Name'});
if ($ok) {
push @results, loc("Dashboard updated");
@@ -148,11 +142,23 @@
}
}
+
+my $can_delete = $Dashboard->CurrentUserCanDelete;
+
+if (!$Create && !$tried_create && $id && $ARGS{'Delete'}) {
+ my ($ok, $msg) = $Dashboard->Delete();
+ $ok || Abort(loc("Couldn't delete dashboard [_1]: [_2]", $id, $msg));
+
+ # put the user back into a useful place with a message
+ RT::Interface::Web::Redirect(RT->Config->Get('WebURL')."Dashboards/index.html?Deleted=$id");
+
+}
</%INIT>
<%ARGS>
$Create => undef
$Name => undef
$id => '' unless defined $id
+$Delete => undef
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Queries.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Queries.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Queries.html Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => $title &>
+<& /Elements/Header, Title => $title &>
<& /Dashboards/Elements/Tabs,
current_subtab => $current_subtab,
Title => $title,
@@ -83,8 +83,8 @@
use RT::Dashboard;
my $Dashboard = new RT::Dashboard($session{'CurrentUser'});
-my ($ok) = $Dashboard->LoadById($id);
-$ok || Abort("Couldn't load dashboard.");
+my ($ok, $msg) = $Dashboard->LoadById($id);
+$ok || Abort(loc("Couldn't load dashboard [_1]: [_2]", $id, $msg));
my $title = loc("Modify the queries of dashboard [_1]", $Dashboard->Name);
my %desc_of;
@@ -134,13 +134,7 @@
[ reverse(split /-/, $_, 2), $desc_of{$_} ]
} @{ $self->{Current} } ];
- my ($ok, $msg);
- if ($session{'CurrentUser'}->HasRight(Right => 'ModifyDashboard', Object => $RT::System)) {
- ($ok, $msg) = $Dashboard->Update(Searches => $searches);
- }
- else {
- $msg = "No permission to update dashboards";
- }
+ my ($ok, $msg) = $Dashboard->Update(Searches => $searches);
if ($ok) {
push @results, loc("Dashboard updated");
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Render.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Render.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Render.html Mon Jul 7 16:21:51 2008
@@ -45,11 +45,14 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => $title &>
+<& /Elements/Header, Title => $title, JavaScript => $Preview, ShowBar => $Preview &>
+
+% if ($Preview) {
<& /Dashboards/Elements/Tabs,
current_subtab => $current_subtab,
Title => $title,
DashboardObj => $DashboardObj &>
+% }
<table border="0" width="100%">
<tr valign="top">
@@ -58,7 +61,12 @@
% foreach ($DashboardObj->SearchIds) {
% my ($type, $id, $desc) = @$_;
% my @for_showsearch = $DashboardObj->SearchPrivacy(@$_);
- <& /Elements/ShowSearch, @for_showsearch, Override => { Rows => $rows }, IgnoreMissing => 1 &>
+ <& /Elements/ShowSearch,
+ @for_showsearch,
+ Override => { Rows => $rows },
+ IgnoreMissing => 1,
+ hideable => $Preview,
+ &>
% }
</td>
@@ -71,8 +79,8 @@
use RT::Dashboard;
my $DashboardObj = RT::Dashboard->new($session{'CurrentUser'});
-my ($ok) = $DashboardObj->LoadById($id);
-Abort('Could not load dashboard') if !$ok;
+my ($ok, $msg) = $DashboardObj->LoadById($id);
+Abort(loc("Couldn't load dashboard [_1]: [_2]", $id, $msg)) if !$ok;
my $SubscriptionObj = RT::Attribute->new($session{'CurrentUser'});
my $Loaded = 0;
@@ -91,5 +99,6 @@
</%INIT>
<%ARGS>
$id => undef
+$Preview => 1
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Subscription.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Subscription.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/Subscription.html Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => $title &>
+<& /Elements/Header, Title => $title &>
<& /Dashboards/Elements/Tabs,
current_subtab => $current_subtab,
Title => $title,
@@ -62,16 +62,16 @@
<&| /Widgets/TitleBox, title => loc('Dashboard') &>
<table>
-<tr><td align="right">
+<tr><td class="label">
<&|/l&>Dashboard</&>:
-</td><td>
+</td><td class="value">
<% $DashboardObj->Name %>
</td></tr>
-<tr><td align="right">
+<tr><td class="label">
<&|/l&>Queries</&>:
-</td><td>
-% my @searches = $DashboardObj->Searches;
+</td><td class="value">
+% my @searches = grep { defined } $DashboardObj->Searches;
% if (!@searches) {
(none)
% } else {
@@ -97,24 +97,9 @@
<&| /Widgets/TitleBox, title => loc('Subscription') &>
<table>
-<tr><td align="right">
-<&|/l&>Hour</&>:
-</td><td>
-<select name="Hour">
-% for my $hour (0..23) {
-% my $formatted = sprintf '%02d:00', $hour;
-% my $selected = $formatted eq $fields{'Hour'}
-% ? 'selected="selected"'
-% : '';
-
- <option value="<% $formatted %>" <%$selected%>><% $formatted %></option>
-% }
-</select>
-(in <%$timezone%>)
-</td></tr>
-<tr><td align="right">
+<tr><td class="label">
<&|/l&>Frequency</&>:
-</td><td>
+</td><td class="value">
<input type="radio" name="Frequency" value="daily" <% $fields{'Frequency'} eq 'daily' ? 'checked="checked"' : "" %>>
daily
</input><br />
@@ -135,11 +120,31 @@
<option value="<% $dom %>" <% $fields{'Dom'} == $dom ? 'selected="selected"' : '' %>><% loc($dom) %></option>
% }
</select>
+<br />
+
+<input type="radio" name="Frequency" value="never" <% $fields{'Frequency'} eq 'never' ? 'checked="checked"' : "" %>>
+ never
+</input>
</td></tr>
-<tr><td align="right">
+<tr><td class="label">
+<&|/l&>Hour</&>:
+</td><td class="value">
+<select name="Hour">
+% for my $hour (0..23) {
+% my $formatted = sprintf '%02d:00', $hour;
+% my $selected = $formatted eq $fields{'Hour'}
+% ? 'selected="selected"'
+% : '';
+
+ <option value="<% $formatted %>" <%$selected%>><% $formatted %></option>
+% }
+</select>
+(in <%$timezone%>)
+</td></tr>
+<tr><td class="label">
<&|/l&>Rows</&>:
-</td><td>
+</td><td class="value">
<select name="Rows">
% for my $rows (1, 2, 5, 10, 15, 20, 25, 50, 75, 100, 0) {
<option value="<% $rows %>" <% $fields{'Rows'} eq $rows ? 'selected="selected"' : '' %>><% loc($rows || 'Unlimited') %></option>
@@ -154,8 +159,6 @@
% if ($SubscriptionObj->Id) {
<& /Elements/Submit, Name => "Save", Label => loc('Save Changes') &>
- <br />
- <& /Elements/Submit, Name => "Unsubscribe", Label => loc('Unsubscribe') &>
% } else {
<& /Elements/Submit, Name => "Save", Label => loc('Subscribe') &>
% }
@@ -168,7 +171,7 @@
my ($title, @results);
my ($val, $msg);
my $Loaded = 0;
-my $timezone = eval{$session{'CurrentUser'}->UserObj->Timezone} || 'UTC';
+my $timezone = $session{'CurrentUser'}->UserObj->Timezone || RT->Config->Get('Timezone');
use RT::Dashboard;
my $DashboardObj = RT::Dashboard->new($session{'CurrentUser'});
@@ -187,15 +190,7 @@
: $ARGS{'DashboardId'};
($val, $msg) = $DashboardObj->LoadById($DashboardId);
-$val || Abort("Couldn't load dashboard $DashboardId: $msg.");
-
-if ($SubscriptionObj->Id && $Unsubscribe) {
- my ($ok, $msg) = $SubscriptionObj->Delete();
- $ok || Abort("Couldn't unsubscribe to dashboard $DashboardId.");
-
- # put the user back into a useful place with a message
- RT::Interface::Web::Redirect(RT->Config->Get('WebURL')."Dashboards/index.html?Unsubscribe=$DashboardId");
-}
+$val || Abort(loc("Couldn't load dashboard [_1]: [_2].", $DashboardId, $msg));
my %fields = (
DashboardId => $DashboardId,
@@ -238,18 +233,16 @@
}
# create
else {
- if ($session{'CurrentUser'}->HasRight(Right => 'SubscribeDashboard', Object => $RT::System)) {
- ($val, $msg) = $SubscriptionObj->Create(
- Name => 'Subscription',
- Description => 'Subscription to dashboard ' . $DashboardId,
- ContentType => 'storable',
- Object => $session{'CurrentUser'}->UserObj,
- Content => \%fields,
- );
- }
- else {
- ($val, $msg) = (0, "No permission to subscribe to dashboards");
- }
+ Abort(loc("Unable to subscribe to dashboard [_1]: Permission denied", $DashboardId))
+ unless $DashboardObj->CurrentUserCanSubscribe;
+
+ my ($val, $msg) = $SubscriptionObj->Create(
+ Name => 'Subscription',
+ Description => 'Subscription to dashboard ' . $DashboardId,
+ ContentType => 'storable',
+ Object => $session{'CurrentUser'}->UserObj,
+ Content => \%fields,
+ );
if ($val) {
push @results, loc("Subscribed to dashboard [_1]", $DashboardObj->Name);
push @results, loc("Warning: you have no email address set, so you will not receive this dashboard until you have it set")
@@ -276,6 +269,5 @@
$Dow => undef
$Dom => undef
$Rows => undef
-$Unsubscribe => undef
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Dashboards/index.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Dashboards/index.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Dashboards/index.html Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => $title &>
+<& /Elements/Header, Title => $title &>
<& /Dashboards/Elements/Tabs,
current_subtab => 'Dashboards/index.html',
Title => $title &>
@@ -54,59 +54,35 @@
<& /Dashboards/Elements/ShowDashboards,
Type => "Personal",
- Dashboards => \@personal_dashboards,
+ Dashboards => [sort { $a->Id <=> $b->Id } @{ $dashboards->{personal} || [] }],
&>
<& /Dashboards/Elements/ShowDashboards,
Type => "System",
- Dashboards => \@system_dashboards,
+ Dashboards => [sort { $a->Id <=> $b->Id } @{ $dashboards->{system} || [] }],
&>
-% for my $group (sort keys %group_dashboards) {
+% for my $group (sort keys %{ $dashboards->{group} || {} }) {
<& /Dashboards/Elements/ShowDashboards,
Type => $group,
- Dashboards => $group_dashboards{$group},
+ Dashboards => [sort { $a->Id <=> $b->Id } @{ $dashboards->{group}{$group} || [] }],
&>
% }
<%INIT>
my $title = loc("Dashboards");
-my @personal_dashboards;
-my @system_dashboards;
-my %group_dashboards;
-
use RT::Dashboard;
-my @objs = RT::Dashboard->new($session{CurrentUser})->_PrivacyObjects(ShowSystem => 1);
-
-for my $object (@objs) {
- for my $dashboard ($m->comp("/Dashboards/Elements/DashboardsForObject", Object => $object)) {
- if ($object->isa('RT::System')) {
- push @system_dashboards, $dashboard;
- }
- elsif ($object->isa('RT::User')) {
- push @personal_dashboards, $dashboard;
- }
- else {
- push @{ $group_dashboards{$object->Name} }, $dashboard;
- }
- }
-}
+my @objs = RT::Dashboard->new($session{CurrentUser})->_PrivacyObjects;
+my $dashboards = $m->comp("/Dashboards/Elements/DashboardsForObjects", Objects => \@objs);
my @actions;
-if (defined $Unsubscribe) {
- my $Dashboard = RT::Dashboard->new($session{'CurrentUser'});
- $Dashboard->LoadById($Unsubscribe);
- if ($Dashboard->Id) {
- push @actions, loc("Unsubscribed to dashboard [_1]", $Dashboard->Name);
- }
- else {
- push @actions, loc("Unable to unsubscribe to dashboard [_1]", $Unsubscribe);
- }
+if (defined $Deleted) {
+ push @actions, loc("Deleted dashboard [_1]", $Deleted);
}
</%INIT>
<%ARGS>
-$Unsubscribe => undef
+$Deleted => undef
</%ARGS>
Added: rt/3.8/branches/3.8.0-releng/share/html/Elements/Dashboards
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/Dashboards Mon Jul 7 16:21:51 2008
@@ -0,0 +1,73 @@
+%# BEGIN BPS TAGGED BLOCK {{{
+%#
+%# COPYRIGHT:
+%#
+%# This software is Copyright (c) 1996-2008 Best Practical Solutions, LLC
+%# <jesse at bestpractical.com>
+%#
+%# (Except where explicitly superseded by other copyright notices)
+%#
+%#
+%# LICENSE:
+%#
+%# This work is made available to you under the terms of Version 2 of
+%# the GNU General Public License. A copy of that license should have
+%# been provided with this software, but in any event can be snarfed
+%# from www.gnu.org.
+%#
+%# This work is distributed in the hope that it will be useful, but
+%# WITHOUT ANY WARRANTY; without even the implied warranty of
+%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+%# General Public License for more details.
+%#
+%# You should have received a copy of the GNU General Public License
+%# along with this program; if not, write to the Free Software
+%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+%# 02110-1301 or visit their web page on the internet at
+%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
+%#
+%#
+%# CONTRIBUTION SUBMISSION POLICY:
+%#
+%# (The following paragraph is not intended to limit the rights granted
+%# to you to modify and distribute this software under the terms of
+%# the GNU General Public License and is only of importance to you if
+%# you choose to contribute your changes and enhancements to the
+%# community by submitting them to Best Practical Solutions, LLC.)
+%#
+%# By intentionally submitting any modifications, corrections or
+%# derivatives to this work, or any other work intended for use with
+%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
+%# you are the copyright holder for those contributions and you grant
+%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
+%# royalty-free, perpetual, license to use, copy, create derivative
+%# works based on those contributions, and sublicense and distribute
+%# those contributions and any derivatives thereof.
+%#
+%# END BPS TAGGED BLOCK }}}
+<div class="dashboards">
+<&|/Widgets/TitleBox, title => loc("Dashboards"), bodyclass => "",
+ titleright => loc("Edit"), titleright_href => RT->Config->Get('WebPath').'/Dashboards' &>
+
+<& /Dashboards/Elements/ShowDashboards:table,
+ Dashboards => \@dashboards,
+ Verbose => 0,
+&>
+</&>
+</div>
+<%INIT>
+use RT::Dashboard;
+
+my @objs = RT::Dashboard->new($session{CurrentUser})->_PrivacyObjects(ShowSystem => 1);
+my $dashboard_map = $m->comp("/Dashboards/Elements/DashboardsForObjects", Objects => \@objs);
+
+my @dashboards = (
+ (sort { $a->Id <=> $b->Id } @{ $dashboard_map->{personal} || [] }),
+ (sort { $a->Id <=> $b->Id } @{ $dashboard_map->{system} || [] }),
+
+ map { sort { $a->Id <=> $b->Id } @{ $dashboard_map->{group}{$_} } }
+ keys %{ $dashboard_map->{group} || {} },
+);
+
+</%INIT>
+
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomField
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomField (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomField Mon Jul 7 16:21:51 2008
@@ -57,7 +57,7 @@
my $Values;
if ( $Object && $Object->id ) {
$Values = $Object->CustomFieldValues( $CustomField->id );
- $Values->Columns( qw( id CustomField ObjectType ObjectId Disabled Content ContentType ContentEncoding ) );
+ $Values->Columns( qw( id CustomField ObjectType ObjectId Disabled Content ContentType ContentEncoding SortOrder Creator Created LastUpdatedBy LastUpdated ) );
$NamePrefix ||= join('-', 'Object', ref($Object), $Object->Id, 'CustomField', '');
} elsif (not $Default) {
my %TOP = $m->request_args;
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomFieldSelect
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomFieldSelect (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/EditCustomFieldSelect Mon Jul 7 16:21:51 2008
@@ -83,6 +83,11 @@
<%METHOD options>
% @Default = grep defined && length, @Default;
+% # $Values->HasEntry is too slow here
+% if ( !@Default && $Values ) {
+% @Default = map $_->Content, @{$Values->ItemsArrayRef};
+% }
+% $_ = lc $_ foreach @Default;
% my $selected;
% my $CFVs = $CustomField->Values;
% my @levels;
@@ -107,8 +112,7 @@
% push @levels, $level;
% }
<option value="<% $name %>"
-% if ( ( grep $_ eq $name, @Default )
-% || ( $Values && $Values->HasEntry( $name ) ) )
+% if ( grep $_ eq lc $name, @Default )
% {
% $$SelectedRef = 1;
selected="selected"
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/Header
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/Header (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/Header Mon Jul 7 16:21:51 2008
@@ -69,7 +69,10 @@
<link rel="alternate" href="<%$RSSAutoDiscovery%>" type="application/rss+xml" title="RSS RT Search" />
% }
+% if ($JavaScript) {
<& HeaderJavascript, focus => $Focus, onload => $onload &>
+% }
+
% my $stylesheet_plugin = "/NoAuth/css/". RT->Config->Get( 'WebDefaultStylesheet', $session{'CurrentUser'} )."/InHeader";
% if ($m->comp_exists($stylesheet_plugin) ) {
<& $stylesheet_plugin &>
@@ -127,4 +130,5 @@
$RSSAutoDiscovery => undef
$onload => undef
$LinkRel => undef
+$JavaScript => 1
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/RT__Ticket/ColumnMap
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/RT__Ticket/ColumnMap (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/RT__Ticket/ColumnMap Mon Jul 7 16:21:51 2008
@@ -75,6 +75,11 @@
};
$COLUMN_MAP = {
+ Queue => {
+ attribute => 'Queue',
+ title => 'Queue id',
+ value => sub { return $_[0]->Queue }
+ },
QueueName => {
attribute => 'Queue',
title => 'Queue',
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectOwner
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectOwner (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectOwner Mon Jul 7 16:21:51 2008
@@ -50,14 +50,16 @@
<option value=""<% !$Default ? qq[ selected="selected"] : '' |n %>><%$DefaultLabel%></option>
%}
% $Default = 0 unless defined $Default && $Default =~ /^\d+$/;
-%foreach my $User ( @users) {
+% my @formatednames = sort {lc $a->[1] cmp lc $b->[1]} map {[$_, $m->scomp('/Elements/ShowUser', User => $_)]} @users;
+%foreach my $UserRef ( @formatednames) {
+%my $User = $UserRef->[0];
<option <% ( $User->Id == $Default) ? qq[ selected="selected"] : '' |n %>
%if ($ValueAttribute eq 'id') {
value="<%$User->id%>"
%} elsif ($ValueAttribute eq 'Name') {
value="<%$User->Name%>"
%}
-><& /Elements/ShowUser, User => $User &></option>
+><% $UserRef->[1] |n %></option>
%}
</select>
<%INIT>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectTimezone
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectTimezone (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/SelectTimezone Mon Jul 7 16:21:51 2008
@@ -47,8 +47,21 @@
%# END BPS TAGGED BLOCK }}}
<%ONCE>
my $HAS_DATETIME_TZ = eval { require DateTime::TimeZone };
-my @names;
- at names = DateTime::TimeZone->all_names if $HAS_DATETIME_TZ;
+my $HAS_DATETIME = eval { require DateTime };
+
+my (@names, %label);
+if ( $HAS_DATETIME_TZ ) {
+ @names = DateTime::TimeZone->all_names;
+}
+
+if ( $HAS_DATETIME ) {
+ my $dt = DateTime->now;
+ for ( @names ) {
+ $dt->set_time_zone( $_ );
+ $label{$_} = $_ . ' ' . $dt->strftime('%z');
+ }
+}
+
</%ONCE>
% unless ( $HAS_DATETIME_TZ && @names ) {
<input type="text" name="<% $Name %>" value="<% $Default %>" />
@@ -58,7 +71,8 @@
<option value=""><&|/l&>System Default</&></option>
% }
% foreach my $tz (@names) {
-<option value="<% $tz %>" <% ($Default||'') eq $tz? 'selected="selected"' :'' |n %> ><% $tz %></option>
+<option value="<% $tz %>" <% ($Default||'') eq $tz? 'selected="selected"' :''
+ |n %> ><% $label{$tz} || $tz %></option>
% }
</select>
% }
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowSearch
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowSearch (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowSearch Mon Jul 7 16:21:51 2008
@@ -49,8 +49,9 @@
title => loc($search->Description, $ProcessedSearchArg->{'Rows'}),
title_href => $query_link_url.$QueryString,
titleright => $customize ? loc('Edit') : '',
- titleright_href => $customize &>
-<& $query_display_component, %$ProcessedSearchArg, ShowNavigation => 0, Class => 'RT::Tickets' &>
+ titleright_href => $customize,
+ hideable => $hideable &>
+<& $query_display_component, hideable => $hideable, %$ProcessedSearchArg, ShowNavigation => 0, Class => 'RT::Tickets' &>
</&>
<%init>
my $search;
@@ -58,7 +59,7 @@
my $SearchArg;
my $customize;
my $query_display_component = '/Elements/CollectionList';
-my $query_link_url = 'Search/Results.html';
+my $query_link_url = RT->Config->Get('WebURL').'Search/Results.html';
if ($SavedSearch) {
my ( $container_object, $search_id ) = _parse_saved_search($SavedSearch);
@@ -77,7 +78,7 @@
# XXX: dispatch to different handler here
$query_display_component
= '/Search/Elements/' . $SearchArg->{SearchType};
- $query_link_url = "Search/$SearchArg->{SearchType}.html";
+ $query_link_url = RT->Config->Get('WebURL') . "/Search/$SearchArg->{SearchType}.html";
} else {
$customize = RT->Config->Get('WebPath') . '/Search/Build.html?'
. $m->comp( '/Elements/QueryString',
@@ -115,7 +116,6 @@
);
foreach ( $SearchArg, $ProcessedSearchArg ) {
- $_->{'Query'} =~ s/__CurrentUser__/$session{'CurrentUser'}->Id/ge;
$_->{'Format'} =~ s/__(Web(?:Path|Base|BaseURL))__/scalar RT->Config->Get($1)/ge;
$_->{'Format'} =~ s/__loc\(["']?(\w+)["']?\)__/loc("$1")/ge;
if ( $_->{'Query'} =~ /__Bookmarks__/ ) {
@@ -133,8 +133,9 @@
</%init>
<%ARGS>
-$Name => undef
-$SavedSearch => undef
-%Override => ()
+$Name => undef
+$SavedSearch => undef
+%Override => ()
$IgnoreMissing => undef
+$hideable => 1
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUser
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUser (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUser Mon Jul 7 16:21:51 2008
@@ -48,7 +48,7 @@
%# Released under the terms of version 2 of the GNU Public License
<%INIT>
# $User is an RT::User object
-# $Address is Mail::Address object
+# $Address is Email::Address object
if ( !$User && $Address ) {
$User = RT::User->new( $session{'CurrentUser'} );
$User->LoadByEmail( $Address->address );
Modified: rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUserVerbose
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUserVerbose (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Elements/ShowUserVerbose Mon Jul 7 16:21:51 2008
@@ -46,24 +46,26 @@
%#
%# END BPS TAGGED BLOCK }}}
%# Released under the terms of version 2 of the GNU Public License
-<% $Address->format %>\
+<%$Address->format%>\
<%INIT>
my ($phrase, $address, $comment);
if ($User) {
-$address = $User->EmailAddress;
-$phrase = $User->RealName
- if $User->RealName && lc $User->RealName ne lc $address;
-$comment = $User->Name if lc $User->Name ne lc $address;
- $Address = Mail::Address->new( $phrase, $address, $comment );
-}
-
+ $address = $User->EmailAddress;
+ $phrase = $User->RealName
+ if $User->RealName && lc $User->RealName ne lc $address;
+ $comment = $User->Name if lc $User->Name ne lc $address;
+ $comment = "($comment)" if defined $comment and length $comment;
+ $Address = Email::Address->new( $phrase, $address, $comment );
+}
$Address->comment('') if $comment && lc $Address->user eq lc $comment;
-if ( $phrase and my ($l, $r) = ($phrase =~ /^(\w+) (\w+)$/) ) {
- $Address->phrase('') if $Address->user =~ /^\Q$l\E.\Q$r\E$/
- || $Address->user =~ /^\Q$r\E.\Q$l\E$/;
+if ( $phrase and my ( $l, $r ) = ( $phrase =~ /^(\w+) (\w+)$/ ) ) {
+ $Address->phrase('')
+ if $Address->user =~ /^\Q$l\E.\Q$r\E$/
+ || $Address->user =~ /^\Q$r\E.\Q$l\E$/;
}
+
</%INIT>
<%ARGS>
$User => undef
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/Basics.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/Basics.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Basics.html Mon Jul 7 16:21:51 2008
@@ -45,25 +45,28 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&| Elements/Wrapper, Title => loc('Step 3 of 7: Customize Basics') &>
+<&| Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 3, 7) . loc('Customize Basics') &>
-<& /Elements/ListActions, actions => \@results &>
+<& Elements/Errors, Errors => \@errors &>
+
+<p>
+<&|/l&>These configuration options cover some of the basics needed to get RT up and running. We need to know the name of your RT installation and the domain name where RT will live. You will also need to set a password for your defauly administrative user.</&>
+</p>
<form method="post">
<& /Widgets/BulkEdit, Types => \@Types,Meta => $RT::Installer->{Meta},
CurrentValue => RT::Installer->CurrentValues(@Types) &>
<input type="hidden" name="Run" value="1">
-<& /Elements/Submit, Label => loc('Next: Customize Email Addresses'), Back => 1,
- BackLabel => loc('Back: Customize Database Details') &>
+<& /Elements/Submit, Label => loc('Next: ') . loc('Customize Email Configuration'),Back => 1, BackLabel => loc('Back: ' ) . loc( 'Customize Database Details') &>
</form>
</&>
<%init>
-my @results;
+my @errors;
-my @Types = qw/rtname WebDomain WebPort Timezone Password/;
+my @Types = qw/rtname WebDomain WebPort Password/;
if ( $Run ) {
@@ -71,10 +74,12 @@
Store => $RT::Installer->{InstallConfig},
Meta => $RT::Installer->{Meta} );
- for ( qw/WebPort/ ) {
- if ( $ARGS{$_} && $ARGS{$_} !~ /^\d+$/ ) {
- push @results, "Invalid $_: it should be a number";
- }
+ if ( $ARGS{WebPort} && $ARGS{WebPort} !~ /^\d+$/ ) {
+ push @errors, loc("Invalid [_1]: it should be a number", 'WebPort');
+ }
+
+ unless ( $ARGS{Password} ) {
+ push @errors, loc("You must enter an Administrative password");
}
if ( $Back ) {
@@ -82,9 +87,9 @@
'Install/DatabaseDetails.html');
}
- unless ( @results ) {
+ unless ( @errors ) {
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Emails.html');
+'Install/Sendmail.html');
}
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseDetails.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseDetails.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseDetails.html Mon Jul 7 16:21:51 2008
@@ -45,10 +45,26 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&| Elements/Wrapper, Title => loc('Step 2 of 7: Check your database credentials') &>
+<&| Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 2, 7 ) . loc('Check your database credentials') &>
+% if ( @errors ) {
+<& Elements/Errors, Errors => \@errors &>
+<p>
+<&|/l&>Tell us a little about how to find the database RT will be using</&>
+<p>
+<&|/l&>We need to know the name of the database RT will use and where to find it. We also need to know the username and password of the user RT should use. RT can create the database and user for you, which is why we ask for the username and password of a user with DBA privileges. During step 6 of the installation process we will use this information to create and initialize RT's database.</&>
+</p>
+<p>
+<&|/l&>When you click on 'Check Database Connectivity' there may be a small delay while RT tries to connect to your database</&>
+
+% } else {
<& /Elements/ListActions, actions => \@results &>
+<p>
+<&|/l&>We were able to find your database and connect as the DBA. You can click on 'Customize Basics' to continue customizing RT.</&>
+
+% }
+
<form method="post">
<& /Widgets/BulkEdit, Types => \@Types, Meta => $RT::Installer->{Meta},
CurrentValue => { %{RT::Installer->CurrentValues(@Types)},
@@ -58,25 +74,26 @@
( $db_type eq 'mysql' ? 'root'
: $db_type eq 'Pg' ? 'postgres'
: '' ),
- DatabasePassword => @results ?
- $RT::Installer->{InstallConfig}{DatabasePassword} : ''
}
&>
<input type="hidden" name="Run" value="1">
-<& /Elements/Submit, Label => loc('Check Database Connectivity'),
-Back => 1, BackLabel => loc('Back: Select Database Type'),
+% if ( @results && !@errors ) {
+<& /Elements/Submit, Label => loc('Next: ') . loc('Customize Basics'),
+Back => 1, BackLabel => loc('Back: ') . loc('Select Database Type'),
+Name => 'Next' &>
+% } else {
+<& /Elements/Submit, Label => loc('Check Database Connectivity'),
+Back => 1, BackLabel => loc('Back: ') . loc('Select Database Type')
&>
-
-% if ( @results && $results[0] eq 'Connection succeeded' ) {
-<& /Elements/Submit, Label => loc('Next: Customize Basics'), Name => 'Next' &>
% }
-
</form>
</&>
+
<%init>
-my @results;
+my (@results, @errors);
+my $ConnectionSucceeded;
my @Types = 'DatabaseName';
@@ -116,7 +133,7 @@
);
if ( $dbh ) {
- push @results, 'Connection succeeded';
+ push @results, loc('Connection succeeded');
# dba connect dsn, which has table info
$dbh = DBI->connect(
RT::Handle->DSN, $ARGS{DatabaseAdmin}, $ARGS{DatabaseAdminPassword}, { RaiseError => 0, PrintError => 0 },
@@ -141,16 +158,16 @@
$sth->execute('RT_System');
if ( $sth->fetchrow_array ) {
$RT::Installer->{DatabaseAction} = 'none';
- push @results, "Database $RT::DatabaseName appears to be fully initialized.";
+ push @results, loc("[_1] appears to be fully initialized. We won't need to create any tables or insert metadata, but you can continue to customez RT by clicking 'Customize Basics' below", $RT::DatabaseName);
}
else {
$RT::Installer->{DatabaseAction} = 'acl,coredata,insert';
- push @results, "Database $RT::DatabaseName already exists and has RT's tables in place, but does not contain RT's metadata. The 'Initialize Database' step later on can insert metadata into this existing database. If this is acceptable, click 'Customize Basic' below to continue customizing RT.";
+ push @results, loc("[_1] already exists and has RT's tables in place, but does not contain RT's metadata. The 'Initialize Database' step later on can insert metadata into this existing database. If this is acceptable, click 'Customize Basics' below to continue customizing RT.", $RT::DatabaseName);
}
}
else {
$RT::Installer->{DatabaseAction} = 'schema,acl,coredata,insert';
- push @results, "Database $RT::DatabaseName already exists, but does not contain RT's tables or metadata. The 'Initialize Database' step later on can insert tables and metadata into this existing database. if this is acceptable, click 'Customize Basic' below to continue customizing RT.";
+ push @results, loc("[_1] already exists, but does not contain RT's tables or metadata. The 'Initialize Database' step later on can insert tables and metadata into this existing database. if this is acceptable, click 'Customize Basic' below to continue customizing RT.", $RT::DatabaseName );
}
}
@@ -161,14 +178,14 @@
}
else {
$RT::Installer->{DatabaseAction} = 'error';
- push @results, "Failed to connect to database: $DBI::errstr";
+ push @errors, loc("Failed to connect to database: [_1]",
+ $DBI::errstr );
}
}
else {
- push @results, $msg;
+ push @results, loc($msg);
}
-
}
</%init>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseType.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseType.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/DatabaseType.html Mon Jul 7 16:21:51 2008
@@ -45,17 +45,21 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&|Elements/Wrapper, Title => loc('Step 1 of 7: Choose a database engine') &>
-
-<& /Elements/ListActions, actions => \@results &>
+<&|Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 1, 7 ) . loc('Choose a database engine') &>
<div class="intro">
-<&|/l&>
- <p>RT works just great with a number of different databases. <b>MySQL</b>, <b>PostgreSQL</b>, <b>Oracle</b> and <b>SQLite</b> are all supported.</p>
- <p>You should choose the database you or your local database administrator is most comfortable with.</p>
- <p><i>SQLite is a simple database that doesn't need a server or any configuration whatsoever. RT's authors recommend it for testing, demoing and development, but <b>it's not quite right for a high-volume production RT server</b>.</i></p>
- <p>If your supported database isn't listed in the dropdown below, that means RT couldn't find a <i>database driver</i> for it installed locally. You may be able to remedy this by using <a href="http://search.cpan.org" target="_new">CPAN</a> to download and install DBD::MySQL, DBD::Oracle or DBD::Pg.</p>
- </&>
+<p>
+<&|/l&>RT works with a number of different databases. <b>MySQL</b>, <b>PostgreSQL</b>, <b>Oracle</b> and <b>SQLite</b> are all supported.</&>
+</p>
+<p>
+<&|/l&>You should choose the database you or your local database administrator is most comfortable with.</&>
+</p>
+ <p><b>
+<&|/l&>SQLite is a database that doesn't need a server or any configuration whatsoever. RT's authors recommend it for testing, demoing and development, but it's not quite right for a high-volume production RT server.</&>
+</b></p>
+<p>
+<&|/l, '<a href="http://search.cpan.org" target="_new">CPAN</a>' &>If your preferred database isn't listed in the dropdown below, that means RT couldn't find a <i>database driver</i> for it installed locally. You may be able to remedy this by using [_1] to download and install DBD::MySQL, DBD::Oracle or DBD::Pg.</&>
+</p>
</div>
<form method="post">
@@ -63,12 +67,11 @@
CurrentValue => RT::Installer->CurrentValues(@Types) &>
<input type="hidden" name="Run" value="1">
-<& /Elements/Submit, Label => loc('Next: Check your database credentials') &>
+<& /Elements/Submit, Label => loc('Next: ') . loc( 'Check your database credentials') &>
</form>
</&>
<%init>
-my @results;
my @Types = 'DatabaseType';
if ( $Run ) {
Added: rt/3.8/branches/3.8.0-releng/share/html/Install/Elements/Errors
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Elements/Errors Mon Jul 7 16:21:51 2008
@@ -0,0 +1,63 @@
+%# BEGIN BPS TAGGED BLOCK {{{
+%#
+%# COPYRIGHT:
+%#
+%# This software is Copyright (c) 1996-2008 Best Practical Solutions, LLC
+%# <jesse at bestpractical.com>
+%#
+%# (Except where explicitly superseded by other copyright notices)
+%#
+%#
+%# LICENSE:
+%#
+%# This work is made available to you under the terms of Version 2 of
+%# the GNU General Public License. A copy of that license should have
+%# been provided with this software, but in any event can be snarfed
+%# from www.gnu.org.
+%#
+%# This work is distributed in the hope that it will be useful, but
+%# WITHOUT ANY WARRANTY; without even the implied warranty of
+%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+%# General Public License for more details.
+%#
+%# You should have received a copy of the GNU General Public License
+%# along with this program; if not, write to the Free Software
+%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+%# 02110-1301 or visit their web page on the internet at
+%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
+%#
+%#
+%# CONTRIBUTION SUBMISSION POLICY:
+%#
+%# (The following paragraph is not intended to limit the rights granted
+%# to you to modify and distribute this software under the terms of
+%# the GNU General Public License and is only of importance to you if
+%# you choose to contribute your changes and enhancements to the
+%# community by submitting them to Best Practical Solutions, LLC.)
+%#
+%# By intentionally submitting any modifications, corrections or
+%# derivatives to this work, or any other work intended for use with
+%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
+%# you are the copyright holder for those contributions and you grant
+%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
+%# royalty-free, perpetual, license to use, copy, create derivative
+%# works based on those contributions, and sublicense and distribute
+%# those contributions and any derivatives thereof.
+%#
+%# END BPS TAGGED BLOCK }}}
+% if (@Errors) {
+<&| "/Widgets/TitleBox", title => loc('Error'), hideable => 0, class => 'error' &>
+<ul>
+% for my $Error ( @Errors ) {
+<li>
+<% $Error %>
+</li>
+% }
+</ul>
+
+</&>
+% }
+
+<%args>
+ at Errors
+</%args>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/Finish.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/Finish.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Finish.html Mon Jul 7 16:21:51 2008
@@ -45,26 +45,24 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&| Elements/Wrapper, Title => loc('Step 7 of 7: Finish') &>
+<&| Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 7, 7) . loc('Finish') &>
<div class="intro">
-<&|/l&>
<p>
-Click "Finish Installation" below to complete this wizard.
+<&|/l&>Click "Finish Installation" below to complete this wizard.</&>
</p>
<p>
-You should be taken directly to a login page. You'll be able to log in with username of <tt>root</tt>.
-But if you've changed web port, then you have to restart the server to use RT.
+<&|/l&>You should be taken directly to a login page. You'll be able to log in with username of <tt>root</tt> and the password you set earlier.</&>
</p>
<p>
-The settings you've chosen are stored in <% RT::Installer->ConfigFile %>,
-the place you can refine your configuration further. Using
-`<tt>chmod -w '<% RT::Installer->ConfigFile %>'</tt>` will prevent this
-installation wizard from being run again.
+<&|/l&>If you've change the Port that RT runs on, you'll need to restart the server in order to log in.</&>
+</p>
+
+<p>
+<&|/l, RT::Installer->ConfigFile &>The settings you've chosen are stored in [_1]. You can edit this file to refine your configuration further. You can prevent this installation wizard from being shown again by running `<tt>chmod -w '[_1]'</tt>`.</&>
</p>
-</&>
</div>
<form method="post">
Copied: rt/3.8/branches/3.8.0-releng/share/html/Install/Global.html (from r13474, /rt/3.8/branches/3.8.0-releng/share/html/Install/Emails.html)
==============================================================================
--- /rt/3.8/branches/3.8.0-releng/share/html/Install/Emails.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Global.html Mon Jul 7 16:21:51 2008
@@ -45,23 +45,30 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&| Elements/Wrapper, Title => loc('Step 4 of 7: Customize Email Addresses') &>
+<&| Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 5, 7 ) . loc('Customize Email Addresses') &>
-<& /Elements/ListActions, actions => \@results &>
+<& Elements/Errors, Errors => \@errors &>
+<p><&|/l&>Help us set up some useful defaults for RT.</&></p>
+
+<p><&|/l&>When RT sends an email it sets the From: and Reply-To: headers so users can add to the conversation by just hitting Reply in their mail client. It uses different addresses for Replies and Comments. These can be changed for each of your queues. These addresses will need to be configured to use the <tt>rt-mailgate</tt> program.</&></p>
+
+<p><&|/l&>By default, RT will use the timezone of your system. This lets you set a global default for the display of dates and times in RT. Your users can choose a different Timezone in their preferences.</&></p>
<form method="post">
<& /Widgets/BulkEdit, Types => \@Types,Meta => $RT::Installer->{Meta},
- CurrentValue => RT::Installer->CurrentValues(@Types) &>
+ CurrentValue => RT::Installer->CurrentValues(@Types)
+&>
<input type="hidden" name="Run" value="1">
-<& /Elements/Submit, Label => loc('Next: Email Configuration'), Back => 1,
- BackLabel => loc('Back: Customize Basics') &>
+<& /Elements/Submit, Label => $RT::Installer->{DatabaseAction} eq 'none' ?
+loc('Next: ') . loc('Finish') : loc('Next: ') . loc( 'Initialize Database'),
+ Back => 1, BackLabel => loc('Back: ' ) . loc('Customize Email Configuration') &>
</form>
</&>
<%init>
-my @results;
+my @errors;
-my @Types = qw/OwnerEmail CommentAddress CorrespondAddress/;
+my @Types = qw/CommentAddress CorrespondAddress Timezone/;
if ( $Run ) {
@@ -71,12 +78,36 @@
if ( $Back ) {
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Basics.html');
+'Install/Sendmail.html');
}
- unless ( @results ) {
- RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Sendmail.html');
+ for ( qw/CommentAddress CorrespondAddress/ ) {
+ if ( $ARGS{$_} && $ARGS{$_} !~ /.+ at .+/ ) {
+ push @errors,
+ loc("Invalid [_1]: '[_2]' doesn't look like an email address",
+ $_, $ARGS{$_});
+ }
+ }
+
+ unless ( @errors ) {
+ my ( $status, $msg ) = RT::Installer->SaveConfig;
+
+ if ( $status ) {
+ delete $INC{'RT_SiteConfig.pm'};
+ RT->LoadConfig;
+
+ if ( $RT::Installer->{DatabaseAction} ne 'none' ) {
+ RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
+'Install/Initialize.html');
+ }
+ else {
+ RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
+'Install/Finish.html');
+ }
+ }
+ else {
+ push @errors, loc($msg);
+ }
}
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/Initialize.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/Initialize.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Initialize.html Mon Jul 7 16:21:51 2008
@@ -45,28 +45,28 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&|Elements/Wrapper, Title => loc('Step 6 of 7: Initialize Database') &>
+<&|Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 6, 7) . loc('Initialize Database') &>
-<& /Elements/ListActions, actions => \@results &>
+<& Elements/Errors, Errors => \@errors &>
-% unless ( @results ) {
+% unless ( @errors ) {
<div>
-<&|/l&>Click "Initialize Database" to begin creating the database. This may take a few moments</&>
+<&|/l&>Click "Initialize Database" to create RT's database and insert initial metadata. This may take a few moments</&>
</div>
% }
<form method="post">
<input type="hidden" name="Run" value="1">
<& /Elements/Submit, Label => loc('Initialize Database'), Back => 1,
- BackLabel => loc('Back: Customize Sendmail') &>
+ BackLabel => loc('Back: ') . loc('Customize Global') &>
</form>
</&>
<%init>
-my @results;
+my @errors;
if ( $Run ) {
if ( $Back ) {
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Sendmail.html');
+'Install/Global.html');
}
my @actions = split /,/, $RT::Installer->{DatabaseAction};
@@ -84,7 +84,7 @@
if ( $actions[0] eq 'create' ) {
($status, $msg) = RT::Handle->CreateDatabase( $sysdbh );
unless ( $status ) {
- push @results, "ERROR: $msg";
+ push @errors, loc('ERROR: [_1]', $msg );
}
shift @actions; # shift the 'create' action since its job is done.
@@ -121,13 +121,13 @@
($status, $msg) = $RT::Handle->InsertData( $file );
}
unless ( $status ) {
- push @results, "ERROR: $msg";
+ push @errors, loc('ERROR: [_1]', $msg);
last;
}
}
}
- unless ( @results ) {
+ unless ( @errors ) {
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
'Install/Finish.html');
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/Sendmail.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/Sendmail.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/Sendmail.html Mon Jul 7 16:21:51 2008
@@ -45,24 +45,28 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&|Elements/Wrapper, Title => loc('Step 5 of 7: Email Configuration') &>
+<&|Elements/Wrapper, Title => loc('Step [_1] of [_2]: ', 4, 7 ) . loc('Email Configuration') &>
-<& /Elements/ListActions, actions => \@results &>
+<& Elements/Errors, Errors => \@errors &>
+
+<p>
+<&|/l&>RT can communicate with your users about new tickets or new correspondence on tickets. Tell us where to find sendmail (or a sendmail compatible binary such as the one provided by postifx). RT also needs to know who to notify when someone sends invalid email. This must not be an address that feeds back into RT.</&>
+</p>
<form method="post">
<& /Widgets/BulkEdit, Types => \@Types,Meta => $RT::Installer->{Meta},
- CurrentValue => RT::Installer->CurrentValues(@Types) &>
+ CurrentValue => RT::Installer->CurrentValues(@Types)
+&>
<input type="hidden" name="Run" value="1">
-<& /Elements/Submit, Label => $RT::Installer->{DatabaseAction} eq 'none' ?
-loc('Next: Finish') : loc('Next: Initialize Database'), Back => 1,
- BackLabel => loc('Back: Customize Email Addresses') &>
+<& /Elements/Submit, Label => loc('Next: ') . loc( 'Customize Global Defaults'),
+ Back => 1, BackLabel => loc('Back: ' ) . loc('Customize Basics') &>
</form>
</&>
<%init>
-my @results;
+my @errors;
-my @Types = qw/SendmailArguments SendmailBounceArguments SendmailPath/;
+my @Types = qw/SendmailPath OwnerEmail/;
if ( $Run ) {
@@ -72,34 +76,24 @@
if ( $Back ) {
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Emails.html');
+'Install/Basics.html');
}
unless ( -e $ARGS{SendmailPath} ) {
- push @results, "$ARGS{SendmailPath} doesn't exist.";
+ push @errors, loc( "[_1] doesn't exist.", $ARGS{SendmailPath} );
}
- unless ( @results ) {
+ if ( ! $ARGS{OwnerEmail} || $ARGS{OwnerEmail} !~ /.+ at .+/ ) {
+ push @errors,
+ loc("Invalid [_1]: that doesn't look like an email address",
+ 'Administrator Email');
+ }
- my ( $status, $msg ) = RT::Installer->SaveConfig;
- if ( $status ) {
- delete $INC{'RT_SiteConfig.pm'};
- RT->LoadConfig;
-
- if ( $RT::Installer->{DatabaseAction} ne 'none' ) {
- RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Initialize.html');
- }
- else {
- RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
-'Install/Finish.html');
- }
- }
- else {
- push @results, $msg;
- }
+ unless ( @errors ) {
+ RT::Interface::Web::Redirect(RT->Config->Get('WebURL') .
+'Install/Global.html');
}
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Install/index.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Install/index.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Install/index.html Mon Jul 7 16:21:51 2008
@@ -47,25 +47,27 @@
%# END BPS TAGGED BLOCK }}}
<&| Elements/Wrapper, Title => loc('Welcome to RT!') &>
-<& /Elements/ListActions, actions => \@results &>
+<& Elements/Errors, Errors => \@errors &>
% if ( !$locked) {
-<h1>What is RT?</h1>
+<h1><% loc('What is RT?') %></h1>
<div class="intro">
-<&|/l&>
<p>
-RT is an enterprise-grade issue tracking system designed to let you intelligently and efficiently manage tasks, issues, requests, defects or anything else that looks like an "action item."</p>
+<&|/l&>RT is an enterprise-grade issue tracking system designed to let you intelligently and efficiently manage tasks, issues, requests, defects or anything else that looks like an "action item."</&>
+</p>
<p>
-RT is used by Fortune 100 companies, one-person businesses, government agencies, educational institutions, hospitals, nonprofits, NGOs, libraries, open source projects and all sorts of other organizations on all seven continents. (Yes, even Antarctica.)
+<&|/l&>RT is used by Fortune 100 companies, one-person businesses, government agencies, educational institutions, hospitals, nonprofits, NGOs, libraries, open source projects and all sorts of other organizations on all seven continents. (Yes, even Antarctica.)</&>
</p>
-<h2>Getting started</h2>
+<h2><% loc('Getting started') %></h2>
<p>
-<b>You're seeing this screen because you started up an RT server without a working database. Most likely, this is the first time you're running RT. If you click <i>Let's go!</i> below, RT will guide you through setting up your RT server and database.</b>
+<b>
+<&|/l&>You're seeing this screen because you started up an RT server without a working database. Most likely, this is the first time you're running RT. If you click <i>Let's go!</i> below, RT will guide you through setting up your RT server and database.</&>
+</b>
</p>
-<p>If you already have a working RT server and database, you should take this opportunity to make sure that your database server is running and that the RT server can connect to it. Once you've done that, stop and start the RT server.</p>
-</&>
+<p>
+<&|/l&>If you already have a working RT server and database, you should take this opportunity to make sure that your database server is running and that the RT server can connect to it. Once you've done that, stop and start the RT server.</p></&>
</div>
<form method="post">
@@ -75,23 +77,29 @@
% }
</&>
<%init>
-my @results;
+my @errors;
my $locked;
my $file = File::Spec->catfile( $RT::EtcPath, 'RT_SiteConfig.pm' );
$locked = 1 unless -w $file;
if ( $locked ) {
- push @results, "Config file $file is locked";
+ push @errors, loc("Config file [_1] is locked", $file);
}
elsif ( $Run ) {
$RT::Installer->{InstallConfig} ||= {};
for my $field ( qw/DatabaseType DatabaseName DatabaseHost DatabasePort
- DatabaseUser DatabasePassword DatabaseRequireSSL rtname
- Organization TimeZone MinimumPasswordLength MaxAttachmentSize
- OwnerEmail CommentAddress CorrespondAddress MailCommand
- SendmailArguments SendmailBounceArguments SendmailPath/ ) {
+ DatabaseUser DatabaseRequireSSL rtname
+ Organization TimeZone CommentAddress CorrespondAddress
+ SendmailPath WebDomain WebPort/ ) {
$RT::Installer->{InstallConfig}{$field} ||= RT->Config->Get($field);
}
+
+ for my $field ( qw/OwnerEmail Password DatabasePassword
+ DatabaseAdminPassword/ ) {
+ # stuff we don't want to keep null
+ $RT::Installer->{InstallConfig}{$field} = '';
+ }
+
RT::Interface::Web::Redirect(RT->Config->Get('WebURL') . 'Install/DatabaseType.html');
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/NoAuth/css/web2/forms.css
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/NoAuth/css/web2/forms.css (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/NoAuth/css/web2/forms.css Mon Jul 7 16:21:51 2008
@@ -54,7 +54,6 @@
.input-row .label {
- display: inline-block;
position: relative;
text-align: right;
width: 4em;
@@ -139,7 +138,7 @@
.label, .labeltop {
text-align: right;
font-size: 0.8em;
- padding-right: 0.5em;
+ padding-right: .5em;
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/NoAuth/iCal/dhandler
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/NoAuth/iCal/dhandler (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/NoAuth/iCal/dhandler Mon Jul 7 16:21:51 2008
@@ -60,18 +60,16 @@
$notfound->() unless $path =~ m!^([^/]+)/([^/]+)/(.*)(\.(ical|ics))?!;
my ($name, $auth, $search) = ($1, $2, $3);
-$name = Encode::decode_utf8( $name );
+# Unescape parts
+$_ =~ s/\%([0-9a-z]{2})/chr(hex($1))/gei for $name, $search;
+# convert to perl strings
+$_ = Encode::decode_utf8( $_ ) for $name, $search;
+
my $user = RT::User->new( $RT::SystemUser );
$user->Load( $name );
$notfound->() unless $user->id;
-# Unescape the query
-$search =~ s/\%([0-9a-z]{2})/chr(hex($1))/gei;
-
-my $secret = $user->AuthToken;
-$notfound->() unless $auth eq substr(Digest::MD5::md5_hex($secret.$search),0,16);
-
-$search = Encode::decode_utf8( $search );
+$notfound->() unless $user->ValidateAuthString( $auth, $search );
my $cu = RT::CurrentUser->new;
$cu->Load($user);
Modified: rt/3.8/branches/3.8.0-releng/share/html/NoAuth/js/util.js
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/NoAuth/js/util.js (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/NoAuth/js/util.js Mon Jul 7 16:21:51 2008
@@ -194,7 +194,8 @@
if (e) {
var link = document.createElement('a');
link.setAttribute('href', '#');
- link.setAttribute('onclick', "openCalWindow('"+input+"'); return false;");
+ $(link).observe('click', function(ev) { openCalWindow(input); ev.stop(); });
+ //link.setAttribute('onclick', "openCalWindow('"+input+"'); return false;");
var text = document.createTextNode('<% loc("Calendar") %>');
link.appendChild(text);
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Bulk.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Bulk.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Bulk.html Mon Jul 7 16:21:51 2008
@@ -53,7 +53,8 @@
Query => $Query,
Rows => $Rows,
OrderBy => $OrderBy,
- Order => $Order &>
+ Order => $Order,
+ SavedSearchId => $SavedSearchId &>
<& /Elements/ListActions, actions => \@results &>
<form method="post" action="<% RT->Config->Get('WebPath') %>/Search/Bulk.html" enctype="multipart/form-data">
@@ -206,6 +207,7 @@
<%INIT>
+$Rows = $RowsPerPage unless (defined $Rows);
my $title = loc("Update multiple tickets");
# Iterate through the ARGS hash and remove anything with a null value.
@@ -380,7 +382,9 @@
$Format => undef
$Page => 1
$Rows => undef
+$RowsPerPage => undef
$Order => 'ASC'
$OrderBy => 'id'
$Query => undef
+$SavedSearchId => undef
</%args>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/BuildFormatString
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/BuildFormatString (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/BuildFormatString Mon Jul 7 16:21:51 2008
@@ -93,6 +93,8 @@
MemberOf Members
Parents Children
+ Bookmark
+
NEWLINE
);
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditQuery
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditQuery (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditQuery Mon Jul 7 16:21:51 2008
@@ -163,9 +163,12 @@
push @top, $node;
}
+ my %seen;
+ my @non_siblings_top = grep !$seen{ $_->getParent }++, @top;
+
foreach ( @New ) {
my $add = $_->clone;
- foreach my $selected( @top ) {
+ foreach my $selected( @non_siblings_top ) {
my $newindex = $selected->getIndex + 1;
$selected->insertSibling( $newindex, $add );
}
@@ -207,9 +210,12 @@
}
if ( @New && @$Selected ) {
+ my %seen;
+ my @non_siblings_selected = grep !$seen{ $_->getParent }++, @$Selected;
+
foreach ( @New ) {
my $add = $_->clone;
- foreach my $selected( @$Selected ) {
+ foreach my $selected( @non_siblings_selected ) {
my $newindex = $selected->getIndex + 1;
$selected->insertSibling( $newindex, $add );
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditSearches
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditSearches (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/EditSearches Mon Jul 7 16:21:51 2008
@@ -261,7 +261,7 @@
my ($status, $msg) = $saved_search->Save(
Privacy => $privacy,
Name => $desc,
- Type => $saved_search->{'Type'},
+ Type => $SavedSearch->{'Type'},
SearchParams => \%params,
);
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/ResultViews
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/ResultViews (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/ResultViews Mon Jul 7 16:21:51 2008
@@ -73,6 +73,6 @@
<%init>
my $ical_path = join '/', map $m->interp->apply_escapes($_, 'u'),
$session{'CurrentUser'}->UserObj->Name,
- substr(Digest::MD5::md5_hex($session{'CurrentUser'}->UserObj->AuthToken . $Query),0,16),
+ $session{'CurrentUser'}->UserObj->GenerateAuthString( $Query ),
$Query;
</%init>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/SelectPersonType
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/SelectPersonType (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Elements/SelectPersonType Mon Jul 7 16:21:51 2008
@@ -69,10 +69,10 @@
@types = qw(Requestor Cc AdminCc Watcher);
}
else {
- @types = qw(Requestor Cc AdminCc Watcher Owner);
+ @types = qw(Requestor Cc AdminCc Watcher Owner QueueCc QueueAdminCc QueueWatcher);
}
-my @subtypes = qw(EmailAddress Name RealName Nickname Organization Address1 Address2 WorkPhone HomePhone MobilePhone PagerPhone);
+my @subtypes = qw(EmailAddress Name RealName Nickname Organization Address1 Address2 WorkPhone HomePhone MobilePhone PagerPhone id);
</%INIT>
<%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Results.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Results.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Results.html Mon Jul 7 16:21:51 2008
@@ -55,7 +55,8 @@
Query => $Query,
Rows => $Rows,
OrderBy => $OrderBy,
- Order => $Order &>
+ Order => $Order,
+ SavedSearchId => $SavedSearchId &>
<& /Elements/CollectionList,
Query => $Query,
AllowSorting => 1,
@@ -106,7 +107,7 @@
# We call it RowsPerPage everywhere else.
if ( !defined($Rows) ) {
- if ( $ARGS{'RowsPerPage'} ) {
+ if (defined $ARGS{'RowsPerPage'} ) {
$Rows = $ARGS{'RowsPerPage'};
} elsif ( defined $prefs->{'RowsPerPage'} ) {
$Rows = $prefs->{'RowsPerPage'};
@@ -179,7 +180,7 @@
$link_rel{first} = $BaseURL . $genpage->(1) if $Page > 1;
$link_rel{prev} = $BaseURL . $genpage->($Page - 1) if $Page > 1;
$link_rel{next} = $BaseURL . $genpage->($Page + 1) if ($Page * $Rows) < $ticketcount;
-$link_rel{last} = $BaseURL . $genpage->(POSIX::ceil($ticketcount/$Rows)) if ($Page * $Rows) < $ticketcount;
+$link_rel{last} = $BaseURL . $genpage->(POSIX::ceil($ticketcount/$Rows)) if $Rows and ($Page * $Rows) < $ticketcount;
</%INIT>
<%CLEANUP>
$session{'tickets'}->PrepForSerialization();
@@ -192,4 +193,5 @@
$Page => 1
$OrderBy => undef
$Order => undef
+$SavedSearchId => undef
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Search/Results.tsv
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Search/Results.tsv (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Search/Results.tsv Mon Jul 7 16:21:51 2008
@@ -81,6 +81,7 @@
$row->{$attr} = "";
} else {
my $method = '$Ticket->'.$attr.'()';
+ $method =~ s/->ISO\(\)$/->ISO( Timezone => 'user' )/;
$row->{$attr} = eval $method;
if ($@) {die "Failed to find $attr - ". $@};
}
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Reminders
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Reminders (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Reminders Mon Jul 7 16:21:51 2008
@@ -133,7 +133,7 @@
<tr class="input-row">
<td class="label">
<label class="horizontal" for="NewReminder-Owner" ><&|/l&>Owner</&>:</label></td><td class="value">
-<& /Elements/SelectOwner, Name => 'NewReminder-Owner', QueueObj => $Ticket->QueueObj, DefaultValue => 0 &>
+<& /Elements/SelectOwner, Name => 'NewReminder-Owner', QueueObj => $Ticket->QueueObj, Default=>$session{'CurrentUser'}->id, DefaultValue => 0 &>
</td>
</tr>
<tr class="input-row">
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMembers
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMembers (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMembers Mon Jul 7 16:21:51 2008
@@ -57,6 +57,7 @@
<%INIT>
+return unless $Ticket;
my $members = $Ticket->Members;
return unless $members->Count;
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMessageStanza
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMessageStanza (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/ShowMessageStanza Mon Jul 7 16:21:51 2008
@@ -46,6 +46,7 @@
%#
%# END BPS TAGGED BLOCK }}}
% if ( ref $Message ) {
+% $m->out($pon);
<div class="message-stanza-depth-<% $Depth %>">
<%perl>
my $para = '';
@@ -64,10 +65,15 @@
$print_content->( \$para ) if length $para;
</%perl>
</div>
+%$m->out($poff);
% } else {
% $print_content->( \$Message );
% }
<%INIT>
+my ($pon, $poff) = (RT->Config->Get('PlainTextPre', $session{'CurrentUser'}) && $Depth == 0)
+ ? ('<pre>', '</pre>')
+ : ('', '');
+
my $ticket = $Transaction ? $Transaction->TicketObj : undef;
my $print_content = sub {
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Tabs
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Tabs (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Elements/Tabs Mon Jul 7 16:21:51 2008
@@ -292,8 +292,8 @@
}
}
- if ( $current_tab =~ m{Search/Bulk.html} ) {
- $current_tab = "Search/Bulk.html$args";
+ if ( $current_tab =~ m{Search/(Bulk|Build|Edit)\.html} ) {
+ $current_tab = "Search/$1.html$args";
}
$tabs->{"i"} = {
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowGraph
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowGraph (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowGraph Mon Jul 7 16:21:51 2008
@@ -53,6 +53,8 @@
$id => undef
</%ARGS>
<%INIT>
+use RT::Util 'safe_run_child';
+
my $ticket = RT::Ticket->new( $session{'CurrentUser'} );
$ticket->Load( $id );
unless ( $ticket->id ) {
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowLegends
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowLegends (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/Elements/ShowLegends Mon Jul 7 16:21:51 2008
@@ -45,7 +45,7 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<&| /Widgets/TitleBox, title => loc('Legends') &>
+<&| /Widgets/TitleBox, title => loc('Legends'), hideable => $hideable &>
<table>
<tr style="height: 2.8em;"><td>Status:</td><td>
@@ -69,4 +69,5 @@
<%ARGS>
$FillUsing => ''
+$hideable => 1
</%ARGS>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/index.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/index.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/Graphs/index.html Mon Jul 7 16:21:51 2008
@@ -82,7 +82,7 @@
foreach my $level ( 0 .. 6 ) {
push @save_arguments, "Level-". $level ."-Properties";
}
-my $saved_search = { };
+my $saved_search = { Type => 'Graph' };
push @results, $m->comp( '/Search/Elements/EditSearches:Init',
%ARGS,
Query => \%ARGS,
Modified: rt/3.8/branches/3.8.0-releng/share/html/Ticket/ModifyAll.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Ticket/ModifyAll.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Ticket/ModifyAll.html Mon Jul 7 16:21:51 2008
@@ -73,7 +73,7 @@
<&| /Widgets/TitleBox, title => loc('People'), class=>'ticket-info-people' &>
-<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp, GroupString => $GroupString, GroupOp => $GroupOp, GroupField => $GroupField &>
+<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp, GroupString => $GroupString, GroupOp => $GroupOp, GroupField => $GroupField &>
</&>
<br />
Modified: rt/3.8/branches/3.8.0-releng/share/html/Tools/Elements/Tabs
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Tools/Elements/Tabs (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Tools/Elements/Tabs Mon Jul 7 16:21:51 2008
@@ -54,14 +54,18 @@
<%INIT>
my $tabs = {
a => {
+ title => loc('Dashboards'),
+ path => 'Dashboards/index.html',
+ },
+ b => {
title => loc('Offline'),
path => 'Tools/Offline.html',
},
- b => {
+ c => {
title => loc('Reports'),
path => 'Tools/Reports/index.html',
},
- c => {
+ d => {
title => loc('My Day'),
path => 'Tools/MyDay.html',
},
Modified: rt/3.8/branches/3.8.0-releng/share/html/Tools/Reports/index.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Tools/Reports/index.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Tools/Reports/index.html Mon Jul 7 16:21:51 2008
@@ -47,4 +47,30 @@
%# END BPS TAGGED BLOCK }}}
<& /Elements/Header, Title => loc('Reports') &>
<& /Tools/Reports/Elements/Tabs, Title => loc('Reports') &>
+<& /Elements/ListMenu, items => $tabs &>
+
% $m->callback;
+
+<%init>
+
+my $tabs = {
+ A => {
+ title => loc('Resolved by owner'),
+ path => 'ResolvedByOwner.html',
+ description => loc('Examine tickets resolved in a queue, grouped by owner'),
+ },
+ B => {
+ title => loc('Resolved in date range'),
+ path => 'ResolvedByDates.html',
+ description => loc('Examine tickets resolved in a queue between two dates'),
+ },
+ C => {
+ title => loc('Created in a date range'),
+ path => 'CreatedByDates.html',
+ description => loc('Examine tickets created in a queue between two dates'),
+ },
+};
+
+$m->callback( CallbackName => 'ListReports', %ARGS, tabs => $tabs );
+
+</%init>
Modified: rt/3.8/branches/3.8.0-releng/share/html/Tools/index.html
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Tools/index.html (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Tools/index.html Mon Jul 7 16:21:51 2008
@@ -49,4 +49,33 @@
<& Elements/Tabs,
current_tab => "Tools/index.html",
Title => loc("Tools") &>
+<& /Elements/ListMenu, items => $tabs &>
+<%init>
+
+my $tabs = {
+ A => {
+ title => loc('Dashboards'),
+ path => '/Dashboards/index.html',
+ description => loc('Named, shared collection of saved searches'),
+ },
+ B => {
+ title => loc('Offline'),
+ path => 'Offline.html',
+ description => loc('Create tickets offline'),
+ },
+ C => {
+ title => loc('Reports'),
+ path => 'Reports/index.html',
+ description => loc('Various RT reports'),
+ },
+ D => {
+ title => loc('My Day'),
+ path => 'MyDay.html',
+ description => loc('Easy updating of your open tickets'),
+ },
+};
+
+$m->callback( %ARGS, tabs => $tabs );
+
+</%init>
Modified: rt/3.8/branches/3.8.0-releng/share/html/User/Elements/Tabs
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/User/Elements/Tabs (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/User/Elements/Tabs Mon Jul 7 16:21:51 2008
@@ -73,9 +73,6 @@
r => { title => loc('RT at a glance'),
path => 'Prefs/MyRT.html',
},
- s => { title => loc('Dashboards'),
- path => 'Dashboards/index.html',
- },
};
# Now let callbacks add their extra tabs
Modified: rt/3.8/branches/3.8.0-releng/share/html/Widgets/Form/Boolean
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/Widgets/Form/Boolean (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/Widgets/Form/Boolean Mon Jul 7 16:21:51 2008
@@ -51,10 +51,12 @@
<div id="form-box-<% lc $Name %>" class="widget">
<span class="label description"><% $Description %></span>
<span class="value"><& SELF:InputOnly, %ARGS &></span>
+<span class="hints"><% $Hints %></span>
</div>
<%ARGS>
$Name => undef,
$Description => undef,
+$Hints => ''
</%ARGS>
<%METHOD InputOnly>
Modified: rt/3.8/branches/3.8.0-releng/share/html/autohandler
==============================================================================
--- rt/3.8/branches/3.8.0-releng/share/html/autohandler (original)
+++ rt/3.8/branches/3.8.0-releng/share/html/autohandler Mon Jul 7 16:21:51 2008
@@ -201,7 +201,7 @@
'Zip', 'Country'
)
{
- $m->callback( Attribute => $attribute, UserInfo => $new_user_info, CallbackName => 'NewUser' );
+ $m->callback( Attribute => $attribute, User => $user, UserInfo => $new_user_info, CallbackName => 'NewUser' );
my $method = "Set$attribute";
$UserObj->$method( $new_user_info->{$attribute} )
@@ -296,7 +296,7 @@
}
# otherwise, drop the user at the SelfService default page
- elsif ( $m->base_comp->path !~ '^(/+)SelfService/' ) {
+ elsif ( $m->base_comp->path !~ RT->Config->Get('SelfServiceRegex') ) {
RT::Interface::Web::Redirect( RT->Config->Get('WebURL') ."SelfService/" );
}
# if user is in SelfService dir let him do anything
@@ -324,7 +324,7 @@
}
$RT::Logger->log(
level => $log_sql_statements,
- message => "SQL(" . sprintf( "%.2f", $duration ) . "s): $sql;"
+ message => "SQL(" . sprintf( "%.6f", $duration ) . "s): $sql;"
. ( @bind ? " [ bound values: @{[map{qq|'$_'|} @bind]} ]" : "" )
);
}
Modified: rt/3.8/branches/3.8.0-releng/t/00-mason-syntax.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/00-mason-syntax.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/00-mason-syntax.t Mon Jul 7 16:21:51 2008
@@ -4,6 +4,7 @@
use warnings;
use Test::More tests => 1;
+use RT::Test ();
my $ok = 1;
@@ -23,7 +24,7 @@
$ok = 0;
diag "error in ${File::Find::name}:\n$@";
},
-}, 'share/html');
+}, RT::Test::get_relocatable_dir('../share/html'));
ok($ok, "mason syntax is ok");
use HTML::Mason;
Modified: rt/3.8/branches/3.8.0-releng/t/mail/charsets-outgoing.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/charsets-outgoing.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/charsets-outgoing.t Mon Jul 7 16:21:51 2008
@@ -124,10 +124,7 @@
$subject =~ /$str_ru_test/
or do { $status = 0; diag "wrong subject: $subject" };
}
- {
- local $TODO = "This is being worked in in a branch";
- ok $status, "all mails have correct data";
- }
+ ok $status, "all mails have correct data";
}
diag "return back the empty subject tag" if $ENV{'TEST_VERBOSE'};
@@ -225,10 +222,7 @@
$subject =~ /$str_ru_autoreply/
or do { $status = 0; diag "wrong subject: $subject" };
}
- {
- local $TODO = "This is being worked in in a branch";
- ok $status, "all mails have correct data";
- }
+ ok $status, "all mails have correct data";
}
diag "flush subject tag of the queue" if $ENV{'TEST_VERBOSE'};
Modified: rt/3.8/branches/3.8.0-releng/t/mail/crypt-gnupg.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/crypt-gnupg.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/crypt-gnupg.t Mon Jul 7 16:21:51 2008
@@ -17,7 +17,10 @@
use File::Spec ();
use Cwd;
-my $homedir = File::Spec->catdir( cwd(), qw(t data gnupg keyrings) );
+
+my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
+ qw(data gnupg keyrings) );
+
mkdir $homedir;
use_ok('RT::Crypt::GnuPG');
Modified: rt/3.8/branches/3.8.0-releng/t/mail/gnupg-bad.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/gnupg-bad.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/gnupg-bad.t Mon Jul 7 16:21:51 2008
@@ -14,7 +14,8 @@
use Cwd 'getcwd';
-my $homedir = File::Spec->catdir( getcwd(), qw(t data gnupg keyrings) );
+my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
+ qw(data gnupg keyrings));
RT->Config->Set( LogToScreen => 'debug' );
RT->Config->Set( 'GnuPG',
Modified: rt/3.8/branches/3.8.0-releng/t/mail/gnupg-incoming.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/gnupg-incoming.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/gnupg-incoming.t Mon Jul 7 16:21:51 2008
@@ -17,7 +17,8 @@
use String::ShellQuote 'shell_quote';
use IPC::Run3 'run3';
-my $homedir = File::Spec->catdir( getcwd(), qw(t data gnupg keyrings) );
+my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
+ qw(data gnupg keyrings));
# catch any outgoing emails
RT::Test->set_mail_catcher;
Modified: rt/3.8/branches/3.8.0-releng/t/mail/gnupg-realmail.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/gnupg-realmail.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/gnupg-realmail.t Mon Jul 7 16:21:51 2008
@@ -69,7 +69,9 @@
my ($eid, $usage, $format, $attachment) = @_;
diag "email_ok $eid: $usage, $format, $attachment" if $ENV{'TEST_VERBOSE'};
- my ($file) = glob("t/data/gnupg/emails/$eid-*");
+ my $emaildatadir = RT::Test::get_relocatable_dir(File::Spec->updir(),
+ qw(data gnupg emails));
+ my ($file) = glob("$emaildatadir/$eid-*");
my $mail = RT::Test->file_content($file);
my ($status, $id) = RT::Test->send_via_mailgate($mail);
Modified: rt/3.8/branches/3.8.0-releng/t/mail/gnupg-reverification.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/gnupg-reverification.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/gnupg-reverification.t Mon Jul 7 16:21:51 2008
@@ -49,7 +49,9 @@
my @ticket_ids;
-my @files = glob("t/data/gnupg/emails/*-signed-*");
+my $emaildatadir = RT::Test::get_relocatable_dir(File::Spec->updir(),
+ qw(data gnupg emails));
+my @files = glob("$emaildatadir/*-signed-*");
foreach my $file ( @files ) {
diag "testing $file" if $ENV{'TEST_VERBOSE'};
Modified: rt/3.8/branches/3.8.0-releng/t/mail/sendmail.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/mail/sendmail.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/mail/sendmail.t Mon Jul 7 16:21:51 2008
@@ -2,6 +2,7 @@
use strict;
use Test::More tests => 137;
+use File::Spec ();
use RT::Test;
@@ -43,9 +44,10 @@
my $parser = RT::EmailParser->new();
-
# Let's test to make sure a multipart/report is processed correctly
-my $content = RT::Test->file_content("t/data/emails/multipart-report");
+my $multipart_report_email = RT::Test::get_relocatable_file('multipart-report',
+ (File::Spec->updir(), 'data', 'emails'));
+my $content = RT::Test->file_content($multipart_report_email);
# be as much like the mail gateway as possible.
use RT::Interface::Email;
my %args = (message => $content, queue => 1, action => 'correspond');
@@ -100,7 +102,9 @@
# create an iso 8859-1 ticket
@scrips_fired = ();
-$content = RT::Test->file_content("t/data/emails/new-ticket-from-iso-8859-1");
+my $iso_8859_1_ticket_email = RT::Test::get_relocatable_file(
+ 'new-ticket-from-iso-8859-1', (File::Spec->updir(), 'data', 'emails'));
+$content = RT::Test->file_content($iso_8859_1_ticket_email);
@@ -148,7 +152,7 @@
# create an iso 8859-1 ticket
@scrips_fired = ();
- $content = RT::Test->file_content("t/data/emails/new-ticket-from-iso-8859-1");
+ $content = RT::Test->file_content($iso_8859_1_ticket_email);
# be as much like the mail gateway as possible.
use RT::Interface::Email;
@@ -242,7 +246,9 @@
# {{{ test a multipart alternative containing a text-html part with an umlaut
- $content = RT::Test->file_content("t/data/emails/multipart-alternative-with-umlaut");
+ my $alt_umlaut_email = RT::Test::get_relocatable_file(
+ 'multipart-alternative-with-umlaut', (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($alt_umlaut_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -270,8 +276,9 @@
# }}}
# {{{ test a text-html message with an umlaut
-
- $content = RT::Test->file_content("t/data/emails/text-html-with-umlaut");
+ my $text_html_email = RT::Test::get_relocatable_file('text-html-with-umlaut',
+ (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($text_html_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -306,8 +313,9 @@
# }}}
# {{{ test a text-html message with russian characters
-
- $content = RT::Test->file_content("t/data/emails/text-html-in-russian");
+ my $russian_email = RT::Test::get_relocatable_file('text-html-in-russian',
+ (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($russian_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -333,7 +341,9 @@
RT->Config->Set( EmailInputEncodings => 'koi8-r', RT->Config->Get('EmailInputEncodings') );
RT->Config->Set( EmailOutputEncoding => 'koi8-r' );
-$content = RT::Test->file_content("t/data/emails/russian-subject-no-content-type");
+my $russian_subject_email = RT::Test::get_relocatable_file(
+ 'russian-subject-no-content-type', (File::Spec->updir(), 'data', 'emails'));
+$content = RT::Test->file_content($russian_subject_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -374,7 +384,9 @@
# {{{ test a message containing a nested RFC 822 message
- $content = RT::Test->file_content("t/data/emails/nested-rfc-822");
+my $nested_rfc822_email = RT::Test::get_relocatable_file('nested-rfc-822',
+ (File::Spec->updir(), 'data', 'emails'));
+$content = RT::Test->file_content($nested_rfc822_email);
ok ($content, "Loaded nested-rfc-822 to test");
$parser->ParseMIMEEntityFromScalar($content);
@@ -413,7 +425,9 @@
# {{{ test a multipart alternative containing a uuencoded mesage generated by lotus notes
- $content = RT::Test->file_content("t/data/emails/notes-uuencoded");
+ my $uuencoded_email = RT::Test::get_relocatable_file('notes-uuencoded',
+ (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($uuencoded_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -438,7 +452,9 @@
# {{{ test a multipart that crashes the file-based mime-parser works
- $content = RT::Test->file_content("t/data/emails/crashes-file-based-parser");
+ my $crashes_file_based_parser_email = RT::Test::get_relocatable_file(
+ 'crashes-file-based-parser', (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($crashes_file_based_parser_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -465,7 +481,9 @@
# {{{ test a multi-line RT-Send-CC header
- $content = RT::Test->file_content("t/data/emails/rt-send-cc");
+ my $rt_send_cc_email = RT::Test::get_relocatable_file('rt-send-cc',
+ (File::Spec->updir(), 'data', 'emails'));
+ $content = RT::Test->file_content($rt_send_cc_email);
$parser->ParseMIMEEntityFromScalar($content);
@@ -490,7 +508,9 @@
diag q{regression test for #5248 from rt3.fsck.com} if $ENV{TEST_VERBOSE};
{
- my $content = RT::Test->file_content("t/data/emails/subject-with-folding-ws");
+ my $subject_folding_email = RT::Test::get_relocatable_file(
+ 'subject-with-folding-ws', (File::Spec->updir(), 'data', 'emails'));
+ my $content = RT::Test->file_content($subject_folding_email);
my ($status, $msg, $ticket) = RT::Interface::Email::Gateway(
{ message => $content, queue => 1, action => 'correspond' }
);
@@ -501,7 +521,9 @@
diag q{regression test for #5248 from rt3.fsck.com} if $ENV{TEST_VERBOSE};
{
- my $content = RT::Test->file_content("t/data/emails/very-long-subject");
+ my $long_subject_email = RT::Test::get_relocatable_file('very-long-subject',
+ (File::Spec->updir(), 'data', 'emails'));
+ my $content = RT::Test->file_content($long_subject_email);
my ($status, $msg, $ticket) = RT::Interface::Email::Gateway(
{ message => $content, queue => 1, action => 'correspond' }
);
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/00load.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/00load.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/00load.t Mon Jul 7 16:21:51 2008
@@ -1,8 +1,14 @@
use strict;
use warnings;
+use File::Spec;
use Test::More tests => 11;
+use RT::Test ();
-BEGIN { require "t/shredder/utils.pl" }
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
use_ok("RT::Shredder");
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/00skeleton.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/00skeleton.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/00skeleton.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 1;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/01basics.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/01basics.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/01basics.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 3;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/01ticket.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/01ticket.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/01ticket.t Mon Jul 7 16:21:51 2008
@@ -5,10 +5,17 @@
use Test::More;
use Test::Deep;
+use File::Spec;
+use RT::Test ();
plan tests => 15;
-BEGIN { require "t/shredder/utils.pl"; }
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
+
init_db();
create_savepoint('clean');
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/02group_member.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/02group_member.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/02group_member.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 22;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/02queue.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/02queue.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/02queue.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 16;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/02template.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/02template.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/02template.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 7;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/02user.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/02user.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/02user.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
init_db();
plan tests => 8;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/03plugin.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/03plugin.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/03plugin.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
my @PLUGINS = sort qw(Attachments Base Objects SQLDump Summary Tickets Users);
plan tests => 7 + 3 * @PLUGINS;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_summary.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_summary.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_summary.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
plan tests => 4;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_tickets.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_tickets.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_tickets.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
plan tests => 44;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_users.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_users.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/03plugin_users.t Mon Jul 7 16:21:51 2008
@@ -5,7 +5,13 @@
use Test::More;
use Test::Deep;
-BEGIN { require "t/shredder/utils.pl"; }
+use File::Spec;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
plan tests => 9;
Modified: rt/3.8/branches/3.8.0-releng/t/shredder/utils.pl
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/shredder/utils.pl (original)
+++ rt/3.8/branches/3.8.0-releng/t/shredder/utils.pl Mon Jul 7 16:21:51 2008
@@ -3,7 +3,7 @@
use strict;
use warnings;
-require File::Spec;
+use File::Spec;
require File::Path;
require File::Copy;
require Cwd;
@@ -138,7 +138,9 @@
foreach ( qw(Type Host Port Name User Password) ) {
$ENV{ "RT_DB_". uc $_ } = RT->Config->Get("Database$_");
}
- my $cmd = "$^X sbin/rt-setup-database --action init";
+ my $rt_setup_database = RT::Test::get_relocatable_file(
+ 'rt-setup-database', (File::Spec->updir(), File::Spec->updir(), 'sbin'));
+ my $cmd = "$^X $rt_setup_database --action init";
my ($child_out, $child_in);
my $pid = open2($child_out, $child_in, $cmd);
@@ -212,15 +214,19 @@
=head3 tmpdir
Return absolute path to tmp dir used in tests.
-It is C<cwd(). "t/data/shredder">.
+It is C<Cwd->getcwd()>. $directories . "../data/shredder", relative to the
+location of this file, where $directories is the directory portion of $0.
=cut
-sub tmpdir { return File::Spec->catdir(Cwd::cwd(), qw(t data shredder)) }
+sub tmpdir {
+ return RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
+ 'data', 'shredder');
+}
=head2 create_tmpdir
-Creates tmp dir if doesn't exist. Returns tmpdir absolute path.
+Creates tmp dir if doesn't exist. Returns tmpdir path.
=cut
Added: rt/3.8/branches/3.8.0-releng/t/ticket/badlinks.t
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/t/ticket/badlinks.t Mon Jul 7 16:21:51 2008
@@ -0,0 +1,39 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use Test::More tests => 12;
+use RT::Test;
+
+my ($baseurl, $m) = RT::Test->started_ok;
+ok($m->login, "Logged in");
+
+my $queue = RT::Test->load_or_create_queue(Name => 'General');
+ok($queue->Id, "loaded the General queue");
+
+my $ticket = RT::Ticket->new($RT::SystemUser);
+my ($tid, $txn, $msg) = $ticket->Create(
+ Queue => $queue->id,
+ Subject => 'test links',
+ );
+ok $tid, 'created a ticket #'. $tid or diag "error: $msg";
+
+$m->goto_ticket($tid);
+
+$m->follow_link_ok( { text => 'Links' }, "Followed link to Links" );
+
+ok $m->form_with_fields("$tid-DependsOn"), "found the form";
+my $not_a_ticket_url = "http://example.com/path/to/nowhere";
+$m->field("$tid-DependsOn", $not_a_ticket_url);
+$m->field("DependsOn-$tid", $not_a_ticket_url);
+$m->field("$tid-MemberOf", $not_a_ticket_url);
+$m->field("MemberOf-$tid", $not_a_ticket_url);
+$m->field("$tid-RefersTo", $not_a_ticket_url);
+$m->field("RefersTo-$tid", $not_a_ticket_url);
+$m->submit;
+
+foreach my $type ("depends on", "member of", "refers to") {
+ $m->content_like(qr/$type.+$not_a_ticket_url/,"base for $type");
+ $m->content_like(qr/$not_a_ticket_url.+$type/,"target for $type");
+}
+
+$m->goto_ticket($tid);
Modified: rt/3.8/branches/3.8.0-releng/t/ticket/search_by_watcher.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/ticket/search_by_watcher.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/ticket/search_by_watcher.t Mon Jul 7 16:21:51 2008
@@ -3,7 +3,7 @@
use strict;
use warnings;
-use Test::More tests => 103;
+use Test::More tests => 119;
use RT::Test;
use RT::Ticket;
@@ -104,6 +104,7 @@
{ xy => 0, x => 1, y => 0, '-' => 0, z => 0 },
'Subject NOT LIKE "x" AND Requestor != "y at example.com"' =>
{ xy => 0, x => 0, y => 0, '-' => 1, z => 1 },
+
'Subject LIKE "x" OR Requestor = "y at example.com"' =>
{ xy => 1, x => 1, y => 1, '-' => 0, z => 0 },
'Subject NOT LIKE "x" OR Requestor = "y at example.com"' =>
@@ -113,6 +114,24 @@
'Subject NOT LIKE "x" OR Requestor != "y at example.com"' =>
{ xy => 0, x => 1, y => 1, '-' => 1, z => 1 },
+# group of cases when user doesn't exist in DB at all
+ 'Subject LIKE "x" AND Requestor = "not-exist at example.com"' =>
+ { xy => 0, x => 0, y => 0, '-' => 0, z => 0 },
+ 'Subject NOT LIKE "x" AND Requestor = "not-exist at example.com"' =>
+ { xy => 0, x => 0, y => 0, '-' => 0, z => 0 },
+ 'Subject LIKE "x" AND Requestor != "not-exist at example.com"' =>
+ { xy => 1, x => 1, y => 0, '-' => 0, z => 0 },
+ 'Subject NOT LIKE "x" AND Requestor != "not-exist at example.com"' =>
+ { xy => 0, x => 0, y => 1, '-' => 1, z => 1 },
+# 'Subject LIKE "x" OR Requestor = "not-exist at example.com"' =>
+# { xy => 1, x => 1, y => 0, '-' => 0, z => 0 },
+# 'Subject NOT LIKE "x" OR Requestor = "not-exist at example.com"' =>
+# { xy => 0, x => 0, y => 1, '-' => 1, z => 1 },
+ 'Subject LIKE "x" OR Requestor != "not-exist at example.com"' =>
+ { xy => 1, x => 1, y => 1, '-' => 1, z => 1 },
+ 'Subject NOT LIKE "x" OR Requestor != "not-exist at example.com"' =>
+ { xy => 1, x => 1, y => 1, '-' => 1, z => 1 },
+
'Subject LIKE "z" AND (Requestor = "x at example.com" OR Requestor = "y at example.com")' =>
{ xy => 0, x => 0, y => 0, '-' => 0, z => 0 },
'Subject NOT LIKE "z" AND (Requestor = "x at example.com" OR Requestor = "y at example.com")' =>
@@ -129,6 +148,10 @@
%test = (
'Requestor = "x at example.com" AND Requestor = "y at example.com"'
=> { xy => 1, x => 0, y => 0, '-' => 0, z => 0 },
+ 'Subject LIKE "x" OR Requestor = "not-exist at example.com"' =>
+ { xy => 1, x => 1, y => 0, '-' => 0, z => 0 },
+ 'Subject NOT LIKE "x" OR Requestor = "not-exist at example.com"' =>
+ { xy => 0, x => 0, y => 1, '-' => 1, z => 1 },
);
run_tests();
}
Modified: rt/3.8/branches/3.8.0-releng/t/web/command_line.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/command_line.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/command_line.t Mon Jul 7 16:21:51 2008
@@ -1,6 +1,7 @@
#!/usr/bin/perl -w
use strict;
+use File::Spec ();
use Test::Expect;
use Test::More tests => 241;
use RT::Test;
@@ -108,9 +109,11 @@
expect_like(qr/Message recorded/, "Added the correspondence");
### should test to make sure it actually got added
+ my $test_email = RT::Test::get_relocatable_file('lorem-ipsum',
+ (File::Spec->updir(), 'data', 'emails'));
# add attachments to a ticket
# text attachment
- check_attachment("t/data/emails/lorem-ipsum");
+ check_attachment($test_email);
# binary attachment
check_attachment($RT::MasonComponentRoot.'/NoAuth/images/bplogo.gif');
Modified: rt/3.8/branches/3.8.0-releng/t/web/crypt-gnupg.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/crypt-gnupg.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/crypt-gnupg.t Mon Jul 7 16:21:51 2008
@@ -79,7 +79,7 @@
$m->field(Encrypt => 1);
$m->submit;
-unlink "t/mailbox";
+RT::Test->clean_caught_mails;
$m->goto_create_ticket( $queue );
$m->form_name('TicketCreate');
@@ -148,7 +148,7 @@
$m->field(Sign => 1);
$m->submit;
-unlink "t/mailbox";
+RT::Test->clean_caught_mails;
$m->goto_create_ticket( $queue );
$m->form_name('TicketCreate');
@@ -220,7 +220,8 @@
$m->field(Sign => 1);
$m->submit;
-unlink "t/mailbox";
+RT::Test->clean_caught_mails;
+
$m->goto_create_ticket( $queue );
$m->form_name('TicketCreate');
@@ -285,7 +286,7 @@
like($attachments[0]->Content, qr/$RT::rtname/, "RT's mail includes this instance's name");
}
-unlink "t/mailbox";
+RT::Test->clean_caught_mails;
$m->goto_create_ticket( $queue );
$m->form_name('TicketCreate');
Added: rt/3.8/branches/3.8.0-releng/t/web/dashboards-groups.t
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/t/web/dashboards-groups.t Mon Jul 7 16:21:51 2008
@@ -0,0 +1,99 @@
+#!/usr/bin/perl -w
+use strict;
+
+use Test::More tests => 36;
+use RT::Test;
+my ($baseurl, $m) = RT::Test->started_ok;
+
+my $url = $m->rt_base_url;
+
+# create user and queue {{{
+my $user_obj = RT::User->new($RT::SystemUser);
+my ($ok, $msg) = $user_obj->LoadOrCreateByEmail('customer at example.com');
+ok($ok, 'ACL test user creation');
+$user_obj->SetName('customer');
+$user_obj->SetPrivileged(1);
+($ok, $msg) = $user_obj->SetPassword('customer');
+$user_obj->PrincipalObj->GrantRight(Right => 'ModifySelf');
+my $currentuser = RT::CurrentUser->new($user_obj);
+
+my $queue = RT::Queue->new($RT::SystemUser);
+$queue->Create(Name => 'SearchQueue'.$$);
+
+$user_obj->PrincipalObj->GrantRight(Right => $_, Object => $queue)
+ for qw/SeeQueue ShowTicket OwnTicket/;
+
+# grant the user all these rights so we can make sure that the group rights
+# are checked and not these as well
+$user_obj->PrincipalObj->GrantRight(Right => $_, Object => $RT::System)
+ for qw/SubscribeDashboard CreateOwnDashboard SeeOwnDashboard ModifyOwnDashboard DeleteOwnDashboard/;
+# }}}
+# create and test groups (outer < inner < user) {{{
+my $inner_group = RT::Group->new($RT::SystemUser);
+($ok, $msg) = $inner_group->CreateUserDefinedGroup(Name => "inner", Description => "inner group");
+ok($ok, "created inner group: $msg");
+
+my $outer_group = RT::Group->new($RT::SystemUser);
+($ok, $msg) = $outer_group->CreateUserDefinedGroup(Name => "outer", Description => "outer group");
+ok($ok, "created outer group: $msg");
+
+($ok, $msg) = $outer_group->AddMember($inner_group->PrincipalId);
+ok($ok, "added inner as a member of outer: $msg");
+
+($ok, $msg) = $inner_group->AddMember($user_obj->PrincipalId);
+ok($ok, "added user as a member of member: $msg");
+
+ok($outer_group->HasMember($inner_group->PrincipalId), "outer has inner");
+ok(!$outer_group->HasMember($user_obj->PrincipalId), "outer doesn't have user directly");
+ok($outer_group->HasMemberRecursively($inner_group->PrincipalId), "outer has inner recursively");
+ok($outer_group->HasMemberRecursively($user_obj->PrincipalId), "outer has user recursively");
+
+ok(!$inner_group->HasMember($outer_group->PrincipalId), "inner doesn't have outer");
+ok($inner_group->HasMember($user_obj->PrincipalId), "inner has user");
+ok(!$inner_group->HasMemberRecursively($outer_group->PrincipalId), "inner doesn't have outer, even recursively");
+ok($inner_group->HasMemberRecursively($user_obj->PrincipalId), "inner has user recursively");
+# }}}
+
+ok $m->login(customer => 'customer'), "logged in";
+
+$m->get_ok("$url/Dashboards");
+
+$m->follow_link_ok({text => "New dashboard"});
+$m->form_name('ModifyDashboard');
+is_deeply([$m->current_form->find_input('Privacy')->possible_values], ["RT::User-" . $user_obj->Id], "the only selectable privacy is user");
+$m->content_lacks('Delete', "Delete button hidden because we are creating");
+
+$user_obj->PrincipalObj->GrantRight(Right => 'CreateGroupDashboard', Object => $inner_group);
+
+$m->follow_link_ok({text => "New dashboard"});
+$m->form_name('ModifyDashboard');
+is_deeply([$m->current_form->find_input('Privacy')->possible_values], ["RT::User-" . $user_obj->Id, "RT::Group-" . $inner_group->Id], "the only selectable privacies are user and inner group (not outer group)");
+$m->field("Name" => 'inner dashboard');
+$m->field("Privacy" => "RT::Group-" . $inner_group->Id);
+$m->content_lacks('Delete', "Delete button hidden because we are creating");
+
+$m->click_button(value => 'Save Changes');
+$m->content_lacks("No permission to create dashboards");
+$m->content_contains("Saved dashboard inner dashboard");
+$m->content_lacks('Delete', "Delete button hidden because we lack DeleteDashboard");
+
+my $dashboard = RT::Dashboard->new($currentuser);
+my ($id) = $m->content =~ /name="id" value="(\d+)"/;
+ok($id, "got an ID, $id");
+$dashboard->LoadById($id);
+is($dashboard->Name, "inner dashboard");
+
+is($dashboard->Privacy, 'RT::Group-' . $inner_group->Id, "correct privacy");
+is($dashboard->PossibleHiddenSearches, 0, "all searches are visible");
+
+$m->get_ok("/Dashboards/Modify.html?id=$id");
+$m->content_lacks("inner dashboard", "no SeeGroupDashboard right");
+$m->content_contains("Permission denied");
+
+$user_obj->PrincipalObj->GrantRight(Right => 'SeeGroupDashboard', Object => $inner_group);
+$m->get_ok("/Dashboards/Modify.html?id=$id");
+$m->content_contains("inner dashboard", "we now have SeeGroupDashboard right");
+$m->content_lacks("Permission denied");
+
+$m->content_contains('Subscription', "Subscription link not hidden because we have SubscribeDashboard");
+
Modified: rt/3.8/branches/3.8.0-releng/t/web/dashboards.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/dashboards.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/dashboards.t Mon Jul 7 16:21:51 2008
@@ -1,7 +1,7 @@
#!/usr/bin/perl -w
use strict;
-use Test::More tests => 59;
+use Test::More tests => 78;
use RT::Test;
my ($baseurl, $m) = RT::Test->started_ok;
@@ -25,28 +25,45 @@
ok $m->login(customer => 'customer'), "logged in";
$m->get_ok($url."Dashboards/index.html");
-$m->content_lacks("New dashboard", "No 'new dashboard' link because we have no ModifyDashboard");
+$m->content_lacks("New dashboard", "No 'new dashboard' link because we have no CreateOwnDashboard");
$m->get_ok($url."Dashboards/Modify.html?Create=1");
-$m->form_name('ModifyDashboard');
-$m->field("Name" => 'test dashboard');
-$m->click_button(value => 'Save Changes');
-$m->content_contains("No permission to create dashboards");
+$m->content_contains("Permission denied");
+$m->content_lacks("Save Changes");
+
+$user_obj->PrincipalObj->GrantRight(Right => 'ModifyOwnDashboard', Object => $RT::System);
+
+# Modify itself is no longer good enough, you need Create
+$m->get_ok($url."Dashboards/Modify.html?Create=1");
+$m->content_contains("Permission denied");
+$m->content_lacks("Save Changes");
-$user_obj->PrincipalObj->GrantRight(Right => 'ModifyDashboard');
+$user_obj->PrincipalObj->GrantRight(Right => 'CreateOwnDashboard', Object => $RT::System);
+
+$m->get_ok($url."Dashboards/Modify.html?Create=1");
+$m->content_lacks("Permission denied");
+$m->content_contains("Save Changes");
$m->get_ok($url."Dashboards/index.html");
-$m->content_contains("New dashboard", "'New dashboard' link because we now have ModifyDashboard");
+$m->content_contains("New dashboard", "'New dashboard' link because we now have ModifyOwnDashboard");
$m->follow_link_ok({text => "New dashboard"});
$m->form_name('ModifyDashboard');
$m->field("Name" => 'different dashboard');
+$m->content_lacks('Delete', "Delete button hidden because we are creating");
$m->click_button(value => 'Save Changes');
$m->content_lacks("No permission to create dashboards");
$m->content_contains("Saved dashboard different dashboard");
+$m->content_lacks('Delete', "Delete button hidden because we lack DeleteOwnDashboard");
+
+$m->get_ok($url."Dashboards/index.html");
+$m->content_lacks("different dashboard", "we lack SeeOwnDashboard");
+
+$user_obj->PrincipalObj->GrantRight(Right => 'SeeOwnDashboard', Object => $RT::System);
$m->get_ok($url."Dashboards/index.html");
-$m->content_contains("different dashboard");
+$m->content_contains("different dashboard", "we now have SeeOwnDashboard");
+$m->content_lacks("Permission denied");
$m->follow_link_ok({text => "different dashboard"});
$m->content_contains("Basics");
@@ -70,6 +87,9 @@
$dashboard->LoadById($id);
is($dashboard->Name, "different dashboard");
+is($dashboard->Privacy, 'RT::User-' . $user_obj->Id, "correct privacy");
+is($dashboard->PossibleHiddenSearches, 0, "all searches are visible");
+
my @searches = $dashboard->Searches;
is(@searches, 1, "one saved search in the dashboard");
like($searches[0]->Name, qr/newest unowned tickets/, "correct search name");
@@ -111,12 +131,12 @@
$m->get_ok("/Dashboards/Subscription.html?DashboardId=$id");
$m->form_name('SubscribeDashboard');
$m->click_button(name => 'Save');
-$m->content_contains("No permission to subscribe to dashboards");
+$m->content_contains("Permission denied");
RT::Record->FlushCache if RT::Record->can('FlushCache');
is($user_obj->Attributes->Named('Subscription'), 0, "no subscriptions");
-$user_obj->PrincipalObj->GrantRight(Right => 'SubscribeDashboard');
+$user_obj->PrincipalObj->GrantRight(Right => 'SubscribeDashboard', Object => $RT::System);
$m->get_ok("/Dashboards/Modify.html?id=$id");
$m->follow_link_ok({text => "Subscription"});
@@ -127,7 +147,7 @@
$m->form_name('SubscribeDashboard');
$m->click_button(name => 'Save');
-$m->content_lacks("No permission to subscribe to dashboards");
+$m->content_lacks("Permission denied");
$m->content_contains("Subscribed to dashboard different dashboard");
RT::Record->FlushCache if RT::Record->can('FlushCache');
@@ -140,10 +160,19 @@
$m->follow_link_ok({text => "Subscription"});
$m->content_contains("Modify the subscription to dashboard different dashboard");
-$m->form_name('SubscribeDashboard');
-$m->click_button(name => 'Unsubscribe');
+$m->get_ok("/Dashboards/Modify.html?id=$id&Delete=1");
+$m->content_contains("Permission denied", "unable to delete dashboard because we lack DeleteOwnDashboard");
-$m->content_contains("Unsubscribed to dashboard different dashboard");
+$user_obj->PrincipalObj->GrantRight(Right => 'DeleteOwnDashboard', Object => $RT::System);
+
+$m->get_ok("/Dashboards/Modify.html?id=$id");
+$m->content_contains('Delete', "Delete button shows because we have DeleteOwnDashboard");
+
+$m->form_name('ModifyDashboard');
+$m->click_button(name => 'Delete');
+$m->content_contains("Deleted dashboard $id");
+
+$m->get("/Dashboards/Modify.html?id=$id");
+$m->content_lacks("different dashboard", "dashboard was deleted");
+$m->content_contains("Failed to load dashboard $id");
-RT::Record->FlushCache if RT::Record->can('FlushCache');
-is($user_obj->Attributes->Named('Subscription'), 0, "no more subscriptions");
Modified: rt/3.8/branches/3.8.0-releng/t/web/gnupg-outgoing.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/gnupg-outgoing.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/gnupg-outgoing.t Mon Jul 7 16:21:51 2008
@@ -255,8 +255,7 @@
sub create_a_ticket {
my %args = (@_);
- # cleanup mail catcher's storage
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
$m->goto_create_ticket( $queue );
$m->form_name('TicketCreate');
@@ -287,8 +286,7 @@
my $tid = shift;
my %args = (@_);
- # cleanup mail catcher's storage
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
Modified: rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-create.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-create.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-create.t Mon Jul 7 16:21:51 2008
@@ -53,7 +53,7 @@
diag "check that signing doesn't work if there is no key" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -79,7 +79,7 @@
diag "check that things don't work if there is no key" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -114,7 +114,7 @@
diag "check that things still doesn't work if key is not trusted" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -161,7 +161,7 @@
diag "check that things still doesn't work if two keys are not trusted" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -206,7 +206,7 @@
diag "check that we see key selector even if only one key is trusted but there are more keys";
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -233,7 +233,7 @@
diag "check that key selector works and we can select trusted key";
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
@@ -265,7 +265,7 @@
diag "check encrypting of attachments";
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_create_ticket( $queue ), "UI -> create ticket";
$m->form_number(3);
Modified: rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-update.t
==============================================================================
--- rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-update.t (original)
+++ rt/3.8/branches/3.8.0-releng/t/web/gnupg-select-keys-on-update.t Mon Jul 7 16:21:51 2008
@@ -64,7 +64,7 @@
diag "check that signing doesn't work if there is no key" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -91,7 +91,7 @@
diag "check that things don't work if there is no key" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -128,7 +128,7 @@
diag "check that things still doesn't work if key is not trusted" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -176,7 +176,7 @@
diag "check that things still doesn't work if two keys are not trusted" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -222,7 +222,7 @@
diag "check that we see key selector even if only one key is trusted but there are more keys" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -250,7 +250,7 @@
diag "check that key selector works and we can select trusted key" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
@@ -283,7 +283,7 @@
diag "check encrypting of attachments" if $ENV{TEST_VERBOSE};
{
- unlink "t/mailbox";
+ RT::Test->clean_caught_mails;
ok $m->goto_ticket( $tid ), "UI -> ticket #$tid";
$m->follow_link_ok( { text => 'Reply' }, 'ticket -> reply' );
Added: rt/3.8/branches/3.8.0-releng/t/web/unlimited_search.t
==============================================================================
--- (empty file)
+++ rt/3.8/branches/3.8.0-releng/t/web/unlimited_search.t Mon Jul 7 16:21:51 2008
@@ -0,0 +1,42 @@
+#!/usr/bin/perl
+
+use strict;
+use Test::More tests => 8;
+
+use RT::Test;
+RT::Test->started_ok;
+
+my $ticket = RT::Ticket->new($RT::SystemUser);
+for ( 1 .. 75 ) {
+ $ticket->Create(
+ Subject => 'Ticket ' . $_,
+ Queue => 'General',
+ Owner => 'root',
+ Requestor => 'unlimitedsearch at localhost',
+ );
+}
+
+my $agent = RT::Test::Web->new;
+ok $agent->login('root', 'password'), 'logged in as root';
+
+$agent->get_ok('/Search/Build.html');
+$agent->form_name('BuildQuery');
+$agent->field('idOp', '>');
+$agent->field('ValueOfid', '0');
+$agent->submit('AddClause');
+$agent->form_name('BuildQuery');
+$agent->field('RowsPerPage', '0');
+$agent->submit('DoSearch');
+$agent->follow_link_ok({text=>'Show Results'});
+$agent->content_like(qr/Ticket 75/);
+
+$agent->follow_link_ok({text=>'New Search'});
+$agent->form_name('BuildQuery');
+$agent->field('idOp', '>');
+$agent->field('ValueOfid', '0');
+$agent->submit('AddClause');
+$agent->form_name('BuildQuery');
+$agent->field('RowsPerPage', '50');
+$agent->submit('DoSearch');
+$agent->follow_link_ok({text=>'Bulk Update'});
+$agent->content_unlike(qr/Ticket 51/);
More information about the Rt-commit
mailing list