N°6147 - Filter list : tooltip and new action

This commit is contained in:
Benjamin Dalsass
2023-04-12 07:53:12 +02:00
parent 544ee695be
commit 288641646c
4 changed files with 332 additions and 314 deletions

View File

@@ -1781,6 +1781,14 @@ class MenuBlock extends DisplayBlock
$this->AddNewObjectMenuAction($aRegularActions, $sClass, $sDefaultValuesAsUrlParams);
}
// Filter this list (provided by extra params has it need filter param)
if (array_key_exists('filter_this_list_url', $aExtraParams)) {
$aToolkitActions[] = [
'label' => Dict::S('UI:Menu:FilterList'),
'url' => $aExtraParams['filter_this_list_url'],
];
}
// Any style actions
// - Bulk actions on objects set
if ($iSetCount > 1) {

View File

@@ -423,7 +423,7 @@ Dict::Add('EN US', 'English', 'English', array(
<li>Manage the most important asset of your IT: Documentation.</li>
</ul>
</p>',
'UI:WelcomeMenu:Text' => '<div>Congratulations, you landed on '.ITOP_APPLICATION.' '.ITOP_VERSION_NAME.'!</div>
'UI:WelcomeMenu:Text' => '<div>Congratulations, you landed on '.ITOP_APPLICATION.' '.ITOP_VERSION_NAME.'!</div>
<div>This version features a brand new modern and accessible backoffice design.</div>
@@ -432,111 +432,111 @@ We hope youll enjoy this version as much as we enjoyed imagining and creating
<div>Customize your '.ITOP_APPLICATION.' preferences for a personalized experience.</div>',
'UI:WelcomeMenu:AllOpenRequests' => 'Open requests: %1$d',
'UI:WelcomeMenu:MyCalls' => 'My requests',
'UI:WelcomeMenu:OpenIncidents' => 'Open incidents: %1$d',
'UI:WelcomeMenu:AllConfigItems' => 'Configuration Items: %1$d',
'UI:WelcomeMenu:MyIncidents' => 'Incidents assigned to me',
'UI:AllOrganizations' => ' All Organizations ',
'UI:YourSearch' => 'Your Search',
'UI:LoggedAsMessage' => 'Logged in as %1$s (%2$s)',
'UI:LoggedAsMessage+Admin' => 'Logged in as %1$s (%2$s, Administrator)',
'UI:Button:Logoff' => 'Log off',
'UI:Button:GlobalSearch' => 'Search',
'UI:Button:Search' => ' Search ',
'UI:Button:Clear' => ' Clear ',
'UI:Button:Confirm' => ' Confirm ',
'UI:Button:SearchInHierarchy' => 'Search in hierarchy',
'UI:Button:Query' => ' Query ',
'UI:Button:Ok' => 'Ok',
'UI:Button:Save' => 'Save',
'UI:Button:SaveAnd' => 'Save and %1$s',
'UI:Button:Cancel' => 'Cancel',
'UI:Button:Close' => 'Close',
'UI:Button:Apply' => 'Apply',
'UI:Button:Send' => 'Send',
'UI:Button:SendAnd' => 'Send and %1$s',
'UI:Button:Back' => ' << Back ',
'UI:Button:Restart' => ' |<< Restart ',
'UI:Button:Next' => ' Next >> ',
'UI:Button:Finish' => ' Finish ',
'UI:Button:DoImport' => ' Run the Import ! ',
'UI:Button:Done' => ' Done ',
'UI:Button:SimulateImport' => ' Simulate the Import ',
'UI:Button:Test' => 'Test!',
'UI:Button:Evaluate' => ' Evaluate ',
'UI:Button:Evaluate:Title' => ' Evaluate (Ctrl+Enter)',
'UI:Button:AddObject' => ' Add... ',
'UI:Button:BrowseObjects' => ' Browse... ',
'UI:Button:Add' => ' Add ',
'UI:Button:AddToList' => ' << Add ',
'UI:Button:RemoveFromList' => ' Remove >> ',
'UI:Button:FilterList' => ' Filter... ',
'UI:Button:Create' => ' Create ',
'UI:Button:Delete' => ' Delete ! ',
'UI:Button:Rename' => ' Rename... ',
'UI:Button:ChangePassword' => ' Change Password ',
'UI:Button:ResetPassword' => ' Reset Password ',
'UI:Button:Insert' => 'Insert',
'UI:Button:More' => 'More',
'UI:Button:Less' => 'Less',
'UI:Button:Wait' => 'Please wait while updating fields',
'UI:Treeview:CollapseAll' => 'Collapse All',
'UI:Treeview:ExpandAll' => 'Expand All',
'UI:UserPref:DoNotShowAgain' => 'Do not show again',
'UI:InputFile:NoFileSelected' => 'No File Selected',
'UI:InputFile:SelectFile' => 'Select a file',
'UI:WelcomeMenu:MyCalls' => 'My requests',
'UI:WelcomeMenu:OpenIncidents' => 'Open incidents: %1$d',
'UI:WelcomeMenu:AllConfigItems' => 'Configuration Items: %1$d',
'UI:WelcomeMenu:MyIncidents' => 'Incidents assigned to me',
'UI:AllOrganizations' => ' All Organizations ',
'UI:YourSearch' => 'Your Search',
'UI:LoggedAsMessage' => 'Logged in as %1$s (%2$s)',
'UI:LoggedAsMessage+Admin' => 'Logged in as %1$s (%2$s, Administrator)',
'UI:Button:Logoff' => 'Log off',
'UI:Button:GlobalSearch' => 'Search',
'UI:Button:Search' => ' Search ',
'UI:Button:Clear' => ' Clear ',
'UI:Button:Confirm' => ' Confirm ',
'UI:Button:SearchInHierarchy' => 'Search in hierarchy',
'UI:Button:Query' => ' Query ',
'UI:Button:Ok' => 'Ok',
'UI:Button:Save' => 'Save',
'UI:Button:SaveAnd' => 'Save and %1$s',
'UI:Button:Cancel' => 'Cancel',
'UI:Button:Close' => 'Close',
'UI:Button:Apply' => 'Apply',
'UI:Button:Send' => 'Send',
'UI:Button:SendAnd' => 'Send and %1$s',
'UI:Button:Back' => ' << Back ',
'UI:Button:Restart' => ' |<< Restart ',
'UI:Button:Next' => ' Next >> ',
'UI:Button:Finish' => ' Finish ',
'UI:Button:DoImport' => ' Run the Import ! ',
'UI:Button:Done' => ' Done ',
'UI:Button:SimulateImport' => ' Simulate the Import ',
'UI:Button:Test' => 'Test!',
'UI:Button:Evaluate' => ' Evaluate ',
'UI:Button:Evaluate:Title' => ' Evaluate (Ctrl+Enter)',
'UI:Button:AddObject' => ' Add... ',
'UI:Button:BrowseObjects' => ' Browse... ',
'UI:Button:Add' => ' Add ',
'UI:Button:AddToList' => ' << Add ',
'UI:Button:RemoveFromList' => ' Remove >> ',
'UI:Button:FilterList' => ' Filter... ',
'UI:Button:Create' => ' Create ',
'UI:Button:Delete' => ' Delete ! ',
'UI:Button:Rename' => ' Rename... ',
'UI:Button:ChangePassword' => ' Change Password ',
'UI:Button:ResetPassword' => ' Reset Password ',
'UI:Button:Insert' => 'Insert',
'UI:Button:More' => 'More',
'UI:Button:Less' => 'Less',
'UI:Button:Wait' => 'Please wait while updating fields',
'UI:Treeview:CollapseAll' => 'Collapse All',
'UI:Treeview:ExpandAll' => 'Expand All',
'UI:UserPref:DoNotShowAgain' => 'Do not show again',
'UI:InputFile:NoFileSelected' => 'No File Selected',
'UI:InputFile:SelectFile' => 'Select a file',
'UI:SearchToggle' => 'Search',
'UI:ClickToCreateNew' => 'Create a %1$s',
'UI:SearchFor_Class' => 'Search for %1$s objects',
'UI:NoObjectToDisplay' => 'No object to display.',
'UI:Error:SaveFailed' => 'The object cannot be saved :',
'UI:Error:MandatoryTemplateParameter_object_id' => 'Parameter object_id is mandatory when link_attr is specified. Check the definition of the display template.',
'UI:Error:MandatoryTemplateParameter_target_attr' => 'Parameter target_attr is mandatory when link_attr is specified. Check the definition of the display template.',
'UI:Error:MandatoryTemplateParameter_group_by' => 'Parameter group_by is mandatory. Check the definition of the display template.',
'UI:Error:InvalidGroupByFields' => 'Invalid list of fields to group by: "%1$s".',
'UI:Error:UnsupportedStyleOfBlock' => 'Error: unsupported style of block: "%1$s".',
'UI:SearchToggle' => 'Search',
'UI:ClickToCreateNew' => 'Create a %1$s',
'UI:SearchFor_Class' => 'Search for %1$s objects',
'UI:NoObjectToDisplay' => 'No object to display.',
'UI:Error:SaveFailed' => 'The object cannot be saved :',
'UI:Error:MandatoryTemplateParameter_object_id' => 'Parameter object_id is mandatory when link_attr is specified. Check the definition of the display template.',
'UI:Error:MandatoryTemplateParameter_target_attr' => 'Parameter target_attr is mandatory when link_attr is specified. Check the definition of the display template.',
'UI:Error:MandatoryTemplateParameter_group_by' => 'Parameter group_by is mandatory. Check the definition of the display template.',
'UI:Error:InvalidGroupByFields' => 'Invalid list of fields to group by: "%1$s".',
'UI:Error:UnsupportedStyleOfBlock' => 'Error: unsupported style of block: "%1$s".',
'UI:Error:IncorrectLinkDefinition_LinkedClass_Class' => 'Incorrect link definition: the class of objects to manage: %1$s was not found as an external key in the class %2$s',
'UI:Error:Object_Class_Id_NotFound' => 'Object: %1$s:%2$d not found.',
'UI:Error:WizardCircularReferenceInDependencies' => 'Error: Circular reference in the dependencies between the fields, check the data model.',
'UI:Error:UploadedFileTooBig' => 'The uploaded file is too big. (Max allowed size is %1$s). To modify this limit, contact your '.ITOP_APPLICATION_SHORT.' administrator. (Check the PHP configuration for upload_max_filesize and post_max_size on the server).',
'UI:Error:UploadedFileTruncated.' => 'Uploaded file has been truncated !',
'UI:Error:NoTmpDir' => 'The temporary directory is not defined.',
'UI:Error:CannotWriteToTmp_Dir' => 'Unable to write the temporary file to the disk. upload_tmp_dir = "%1$s".',
'UI:Error:UploadStoppedByExtension_FileName' => 'Upload stopped by extension. (Original file name = "%1$s").',
'UI:Error:UploadFailedUnknownCause_Code' => 'File upload failed, unknown cause. (Error code = "%1$s").',
'UI:Error:Object_Class_Id_NotFound' => 'Object: %1$s:%2$d not found.',
'UI:Error:WizardCircularReferenceInDependencies' => 'Error: Circular reference in the dependencies between the fields, check the data model.',
'UI:Error:UploadedFileTooBig' => 'The uploaded file is too big. (Max allowed size is %1$s). To modify this limit, contact your '.ITOP_APPLICATION_SHORT.' administrator. (Check the PHP configuration for upload_max_filesize and post_max_size on the server).',
'UI:Error:UploadedFileTruncated.' => 'Uploaded file has been truncated !',
'UI:Error:NoTmpDir' => 'The temporary directory is not defined.',
'UI:Error:CannotWriteToTmp_Dir' => 'Unable to write the temporary file to the disk. upload_tmp_dir = "%1$s".',
'UI:Error:UploadStoppedByExtension_FileName' => 'Upload stopped by extension. (Original file name = "%1$s").',
'UI:Error:UploadFailedUnknownCause_Code' => 'File upload failed, unknown cause. (Error code = "%1$s").',
'UI:Error:1ParametersMissing' => 'Error: the following parameter must be specified for this operation: %1$s.',
'UI:Error:2ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s and %2$s.',
'UI:Error:3ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s, %2$s and %3$s.',
'UI:Error:4ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s, %2$s, %3$s and %4$s.',
'UI:Error:IncorrectOQLQuery_Message' => 'Error: incorrect OQL query: %1$s',
'UI:Error:1ParametersMissing' => 'Error: the following parameter must be specified for this operation: %1$s.',
'UI:Error:2ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s and %2$s.',
'UI:Error:3ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s, %2$s and %3$s.',
'UI:Error:4ParametersMissing' => 'Error: the following parameters must be specified for this operation: %1$s, %2$s, %3$s and %4$s.',
'UI:Error:IncorrectOQLQuery_Message' => 'Error: incorrect OQL query: %1$s',
'UI:Error:AnErrorOccuredWhileRunningTheQuery_Message' => 'An error occured while running the query: %1$s',
'UI:Error:ObjectAlreadyUpdated' => 'Error: the object has already been updated.',
'UI:Error:ObjectCannotBeUpdated' => 'Error: object cannot be updated.',
'UI:Error:ObjectsAlreadyDeleted' => 'Error: objects have already been deleted!',
'UI:Error:BulkDeleteNotAllowedOn_Class' => 'You are not allowed to perform a bulk delete of objects of class %1$s',
'UI:Error:DeleteNotAllowedOn_Class' => 'You are not allowed to delete objects of class %1$s',
'UI:Error:ReadNotAllowedOn_Class' => 'You are not allowed to view objects of class %1$s',
'UI:Error:BulkModifyNotAllowedOn_Class' => 'You are not allowed to perform a bulk update of objects of class %1$s',
'UI:Error:ObjectAlreadyCloned' => 'Error: the object has already been cloned!',
'UI:Error:ObjectAlreadyCreated' => 'Error: the object has already been created!',
'UI:Error:Invalid_Stimulus_On_Object_In_State' => '%2$s is currently in the "%3$s" state, the "%1$s" operation you requested could not be applied.',
'UI:Error:InvalidDashboardFile' => 'Error: invalid dashboard file',
'UI:Error:InvalidDashboard' => 'Error: invalid dashboard',
'UI:Error:MaintenanceMode' => 'Application is currently in maintenance',
'UI:Error:MaintenanceTitle' => 'Maintenance',
'UI:Error:InvalidToken' => 'Error: the requested operation has already been performed (CSRF token not found)',
'UI:Error:ObjectAlreadyUpdated' => 'Error: the object has already been updated.',
'UI:Error:ObjectCannotBeUpdated' => 'Error: object cannot be updated.',
'UI:Error:ObjectsAlreadyDeleted' => 'Error: objects have already been deleted!',
'UI:Error:BulkDeleteNotAllowedOn_Class' => 'You are not allowed to perform a bulk delete of objects of class %1$s',
'UI:Error:DeleteNotAllowedOn_Class' => 'You are not allowed to delete objects of class %1$s',
'UI:Error:ReadNotAllowedOn_Class' => 'You are not allowed to view objects of class %1$s',
'UI:Error:BulkModifyNotAllowedOn_Class' => 'You are not allowed to perform a bulk update of objects of class %1$s',
'UI:Error:ObjectAlreadyCloned' => 'Error: the object has already been cloned!',
'UI:Error:ObjectAlreadyCreated' => 'Error: the object has already been created!',
'UI:Error:Invalid_Stimulus_On_Object_In_State' => '%2$s is currently in the "%3$s" state, the "%1$s" operation you requested could not be applied.',
'UI:Error:InvalidDashboardFile' => 'Error: invalid dashboard file',
'UI:Error:InvalidDashboard' => 'Error: invalid dashboard',
'UI:Error:MaintenanceMode' => 'Application is currently in maintenance',
'UI:Error:MaintenanceTitle' => 'Maintenance',
'UI:Error:InvalidToken' => 'Error: the requested operation has already been performed (CSRF token not found)',
'UI:Error:SMTP:UnknownVendor' => 'OAuth SMTP provider %1$s does not exist (email_transport_smtp.oauth.provider)',
'UI:GroupBy:Count' => 'Count',
'UI:GroupBy:Count+' => 'Number of elements',
'UI:CountOfObjects' => '%1$d objects matching the criteria.',
'UI_CountOfObjectsShort' => '%1$d objects.',
'UI:NoObject_Class_ToDisplay' => 'No %1$s to display',
'UI:GroupBy:Count' => 'Count',
'UI:GroupBy:Count+' => 'Number of elements',
'UI:CountOfObjects' => '%1$d objects matching the criteria.',
'UI_CountOfObjectsShort' => '%1$d objects.',
'UI:NoObject_Class_ToDisplay' => 'No %1$s to display',
'UI:History:LastModified_On_By' => 'Last modified on %1$s by %2$s.',
'UI:HistoryTab' => 'History',
'UI:HistoryTab' => 'History',
'UI:NotificationsTab' => 'Notifications',
'UI:History:BulkImports' => 'History',
'UI:History:BulkImports+' => 'List of CSV imports (latest import first)',
@@ -1428,67 +1428,69 @@ When associated with a trigger, each action is given an "order" number, specifyi
'DayOfWeek-Sunday' => 'Sunday',
'DayOfWeek-Monday' => 'Monday',
'DayOfWeek-Tuesday' => 'Tuesday',
'DayOfWeek-Wednesday' => 'Wednesday',
'DayOfWeek-Thursday' => 'Thursday',
'DayOfWeek-Friday' => 'Friday',
'DayOfWeek-Saturday' => 'Saturday',
'Month-01' => 'January',
'Month-02' => 'February',
'Month-03' => 'March',
'Month-04' => 'April',
'Month-05' => 'May',
'Month-06' => 'June',
'Month-07' => 'July',
'Month-08' => 'August',
'Month-09' => 'September',
'Month-10' => 'October',
'Month-11' => 'November',
'Month-12' => 'December',
'DayOfWeek-Wednesday' => 'Wednesday',
'DayOfWeek-Thursday' => 'Thursday',
'DayOfWeek-Friday' => 'Friday',
'DayOfWeek-Saturday' => 'Saturday',
'Month-01' => 'January',
'Month-02' => 'February',
'Month-03' => 'March',
'Month-04' => 'April',
'Month-05' => 'May',
'Month-06' => 'June',
'Month-07' => 'July',
'Month-08' => 'August',
'Month-09' => 'September',
'Month-10' => 'October',
'Month-11' => 'November',
'Month-12' => 'December',
// Short version for the DatePicker
'DayOfWeek-Sunday-Min' => 'Su',
'DayOfWeek-Monday-Min' => 'Mo',
'DayOfWeek-Tuesday-Min' => 'Tu',
'DayOfWeek-Wednesday-Min' => 'We',
'DayOfWeek-Thursday-Min' => 'Th',
'DayOfWeek-Friday-Min' => 'Fr',
'DayOfWeek-Saturday-Min' => 'Sa',
'Month-01-Short' => 'Jan',
'Month-02-Short' => 'Feb',
'Month-03-Short' => 'Mar',
'Month-04-Short' => 'Apr',
'Month-05-Short' => 'May',
'Month-06-Short' => 'Jun',
'Month-07-Short' => 'Jul',
'Month-08-Short' => 'Aug',
'Month-09-Short' => 'Sep',
'Month-10-Short' => 'Oct',
'Month-11-Short' => 'Nov',
'Month-12-Short' => 'Dec',
'Calendar-FirstDayOfWeek' => 0,// 0 = Sunday, 1 = Monday, etc...
'DayOfWeek-Sunday-Min' => 'Su',
'DayOfWeek-Monday-Min' => 'Mo',
'DayOfWeek-Tuesday-Min' => 'Tu',
'DayOfWeek-Wednesday-Min' => 'We',
'DayOfWeek-Thursday-Min' => 'Th',
'DayOfWeek-Friday-Min' => 'Fr',
'DayOfWeek-Saturday-Min' => 'Sa',
'Month-01-Short' => 'Jan',
'Month-02-Short' => 'Feb',
'Month-03-Short' => 'Mar',
'Month-04-Short' => 'Apr',
'Month-05-Short' => 'May',
'Month-06-Short' => 'Jun',
'Month-07-Short' => 'Jul',
'Month-08-Short' => 'Aug',
'Month-09-Short' => 'Sep',
'Month-10-Short' => 'Oct',
'Month-11-Short' => 'Nov',
'Month-12-Short' => 'Dec',
'Calendar-FirstDayOfWeek' => 0,
// 0 = Sunday, 1 = Monday, etc...
'UI:Menu:ShortcutList' => 'Create a Shortcut...',
'UI:Menu:FilterList' => 'Filter list...',
'UI:ShortcutRenameDlg:Title' => 'Rename the shortcut',
'UI:ShortcutListDlg:Title' => 'Create a shortcut for the list',
'UI:ShortcutDelete:Confirm' => 'Please confirm that wou wish to delete the shortcut(s).',
'Menu:MyShortcuts' => 'My Shortcuts',// Duplicated into itop-welcome-itil (will be removed from here...)
'Class:Shortcut' => 'Shortcut',
'Class:Shortcut+' => '',
'Class:Shortcut/Attribute:name' => 'Name',
'Class:Shortcut/Attribute:name+' => 'Label used in the menu and page title',
'Class:ShortcutOQL' => 'Search result shortcut',
'Class:ShortcutOQL+' => '',
'Class:ShortcutOQL/Attribute:oql' => 'Query',
'Class:ShortcutOQL/Attribute:oql+' => 'OQL defining the list of objects to search for',
'Class:ShortcutOQL/Attribute:auto_reload' => 'Automatic refresh',
'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => 'Disabled',
'UI:Menu:ShortcutList' => 'Create a Shortcut...',
'UI:Menu:FilterList' => 'Display list with search criteria',
'UI:ShortcutRenameDlg:Title' => 'Rename the shortcut',
'UI:ShortcutListDlg:Title' => 'Create a shortcut for the list',
'UI:ShortcutDelete:Confirm' => 'Please confirm that wou wish to delete the shortcut(s).',
'Menu:MyShortcuts' => 'My Shortcuts',
// Duplicated into itop-welcome-itil (will be removed from here...)
'Class:Shortcut' => 'Shortcut',
'Class:Shortcut+' => '',
'Class:Shortcut/Attribute:name' => 'Name',
'Class:Shortcut/Attribute:name+' => 'Label used in the menu and page title',
'Class:ShortcutOQL' => 'Search result shortcut',
'Class:ShortcutOQL+' => '',
'Class:ShortcutOQL/Attribute:oql' => 'Query',
'Class:ShortcutOQL/Attribute:oql+' => 'OQL defining the list of objects to search for',
'Class:ShortcutOQL/Attribute:auto_reload' => 'Automatic refresh',
'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => 'Disabled',
'Class:ShortcutOQL/Attribute:auto_reload/Value:custom' => 'Custom rate',
'Class:ShortcutOQL/Attribute:auto_reload_sec' => 'Automatic refresh interval (seconds)',
'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => 'The minimum allowed is %1$d seconds',
'Class:ShortcutOQL/Attribute:auto_reload_sec' => 'Automatic refresh interval (seconds)',
'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => 'The minimum allowed is %1$d seconds',
'UI:FillAllMandatoryFields' => 'Please fill all mandatory fields.',
'UI:ValueMustBeSet' => 'Please specify a value',
'UI:ValueMustBeSet' => 'Please specify a value',
'UI:ValueMustBeChanged' => 'Please change the value',
'UI:ValueInvalidFormat' => 'Invalid format',

View File

@@ -410,97 +410,97 @@ Nous espérons que vous aimerez cette version autant que nous avons eu du plaisi
'UI:Button:Evaluate' => ' Exécuter ',
'UI:Button:Evaluate:Title' => ' Exécuter (Ctrl+Entrée)',
'UI:Button:AddObject' => ' Ajouter... ',
'UI:Button:BrowseObjects' => ' Naviguer... ',
'UI:Button:Add' => ' Ajouter ',
'UI:Button:AddToList' => ' << Ajouter ',
'UI:Button:RemoveFromList' => ' Enlever >> ',
'UI:Button:FilterList' => ' Filtrer... ',
'UI:Button:Create' => ' Créer ',
'UI:Button:Delete' => ' Supprimer ! ',
'UI:Button:Rename' => ' Renommer... ',
'UI:Button:ChangePassword' => ' Changer ! ',
'UI:Button:ResetPassword' => ' Ràz du mot de passe ',
'UI:Button:Insert' => 'Insérer',
'UI:Button:More' => 'Plus',
'UI:Button:Less' => 'Moins',
'UI:Button:Wait' => 'Patientez pendant la mise à jour des champs',
'UI:Treeview:CollapseAll' => 'Tout replier',
'UI:Treeview:ExpandAll' => 'Tout déplier',
'UI:UserPref:DoNotShowAgain' => 'Ne plus afficher ce message',
'UI:Button:BrowseObjects' => ' Naviguer... ',
'UI:Button:Add' => ' Ajouter ',
'UI:Button:AddToList' => ' << Ajouter ',
'UI:Button:RemoveFromList' => ' Enlever >> ',
'UI:Button:FilterList' => ' Filtrer... ',
'UI:Button:Create' => ' Créer ',
'UI:Button:Delete' => ' Supprimer ! ',
'UI:Button:Rename' => ' Renommer... ',
'UI:Button:ChangePassword' => ' Changer ! ',
'UI:Button:ResetPassword' => ' Ràz du mot de passe ',
'UI:Button:Insert' => 'Insérer',
'UI:Button:More' => 'Plus',
'UI:Button:Less' => 'Moins',
'UI:Button:Wait' => 'Patientez pendant la mise à jour des champs',
'UI:Treeview:CollapseAll' => 'Tout replier',
'UI:Treeview:ExpandAll' => 'Tout déplier',
'UI:UserPref:DoNotShowAgain' => 'Ne plus afficher ce message',
'UI:InputFile:NoFileSelected' => 'Aucun fichier sélectionné',
'UI:InputFile:SelectFile' => 'Sélectionner un fichier',
'UI:InputFile:SelectFile' => 'Sélectionner un fichier',
'UI:SearchToggle' => 'Recherche',
'UI:ClickToCreateNew' => 'Créer un(e) %1$s',
'UI:SearchFor_Class' => 'Rechercher des objets de type %1$s',
'UI:NoObjectToDisplay' => 'Aucun objet à afficher.',
'UI:Error:SaveFailed' => 'L\'objet ne peut pas être sauvé : ',
'UI:Error:MandatoryTemplateParameter_object_id' => 'Le paramètre object_id est obligatoire quand link_attr est spécifié. Vérifiez la définition du modèle.',
'UI:Error:MandatoryTemplateParameter_target_attr' => 'Le paramètre taarget_attr est obligatoire quand link_attr est spécifié. Vérifiez la définition du modèle.',
'UI:Error:MandatoryTemplateParameter_group_by' => 'Le paramètre group_by est obligatoire. Vérifiez la définition du modèle.',
'UI:Error:InvalidGroupByFields' => 'Liste des champs "group by" incorrecte: "%1$s".',
'UI:Error:UnsupportedStyleOfBlock' => 'Erreur: style de bloc("%1$s") inconnu.',
'UI:SearchToggle' => 'Recherche',
'UI:ClickToCreateNew' => 'Créer un(e) %1$s',
'UI:SearchFor_Class' => 'Rechercher des objets de type %1$s',
'UI:NoObjectToDisplay' => 'Aucun objet à afficher.',
'UI:Error:SaveFailed' => 'L\'objet ne peut pas être sauvé : ',
'UI:Error:MandatoryTemplateParameter_object_id' => 'Le paramètre object_id est obligatoire quand link_attr est spécifié. Vérifiez la définition du modèle.',
'UI:Error:MandatoryTemplateParameter_target_attr' => 'Le paramètre taarget_attr est obligatoire quand link_attr est spécifié. Vérifiez la définition du modèle.',
'UI:Error:MandatoryTemplateParameter_group_by' => 'Le paramètre group_by est obligatoire. Vérifiez la définition du modèle.',
'UI:Error:InvalidGroupByFields' => 'Liste des champs "group by" incorrecte: "%1$s".',
'UI:Error:UnsupportedStyleOfBlock' => 'Erreur: style de bloc("%1$s") inconnu.',
'UI:Error:IncorrectLinkDefinition_LinkedClass_Class' => 'la définition du lien est incorrecte: la classe d\'objets à gérer: %1$s n\'est référencée par aucune clef externe de la classe %2$s',
'UI:Error:Object_Class_Id_NotFound' => 'L\'objet: %1$s:%2$d est introuvable.',
'UI:Error:WizardCircularReferenceInDependencies' => 'Erreur: Référence circulaire entre les dépendences entre champs, vérifiez le modèle de données.',
'UI:Error:UploadedFileTooBig' => 'Le fichier téléchargé est trop gros. (La taille maximale autorisée est %1$s). Pour modifier cette limite contactez votre administrateur '.ITOP_APPLICATION_SHORT.'. (Réglages upload_max_filesize et post_max_size dans la configuration PHP sur le serveur)',
'UI:Error:UploadedFileTruncated.' => 'Le fichier téléchargé a été tronqué !',
'UI:Error:NoTmpDir' => 'Il n\'y a aucun répertoire temporaire de défini.',
'UI:Error:CannotWriteToTmp_Dir' => 'Impossible d\'écrire le fichier temporaire sur disque. upload_tmp_dir = "%1$s".',
'UI:Error:UploadStoppedByExtension_FileName' => 'Téléchargement arrêté à cause de l\'extension. (Nom du fichier original = "%1$s").',
'UI:Error:UploadFailedUnknownCause_Code' => 'Le téléchargement a échoué pour une raison inconnue. (Code d\'erreur = "%1$s").',
'UI:Error:Object_Class_Id_NotFound' => 'L\'objet: %1$s:%2$d est introuvable.',
'UI:Error:WizardCircularReferenceInDependencies' => 'Erreur: Référence circulaire entre les dépendences entre champs, vérifiez le modèle de données.',
'UI:Error:UploadedFileTooBig' => 'Le fichier téléchargé est trop gros. (La taille maximale autorisée est %1$s). Pour modifier cette limite contactez votre administrateur '.ITOP_APPLICATION_SHORT.'. (Réglages upload_max_filesize et post_max_size dans la configuration PHP sur le serveur)',
'UI:Error:UploadedFileTruncated.' => 'Le fichier téléchargé a été tronqué !',
'UI:Error:NoTmpDir' => 'Il n\'y a aucun répertoire temporaire de défini.',
'UI:Error:CannotWriteToTmp_Dir' => 'Impossible d\'écrire le fichier temporaire sur disque. upload_tmp_dir = "%1$s".',
'UI:Error:UploadStoppedByExtension_FileName' => 'Téléchargement arrêté à cause de l\'extension. (Nom du fichier original = "%1$s").',
'UI:Error:UploadFailedUnknownCause_Code' => 'Le téléchargement a échoué pour une raison inconnue. (Code d\'erreur = "%1$s").',
'UI:Error:1ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque le paramètre suivant: %1$s.',
'UI:Error:2ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s and %2$s.',
'UI:Error:3ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s, %2$s and %3$s.',
'UI:Error:4ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s, %2$s, %3$s and %4$s.',
'UI:Error:IncorrectOQLQuery_Message' => 'Erreur: requête OQL incorrecte: %1$s',
'UI:Error:1ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque le paramètre suivant: %1$s.',
'UI:Error:2ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s and %2$s.',
'UI:Error:3ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s, %2$s and %3$s.',
'UI:Error:4ParametersMissing' => 'Erreur: Pour effectuer cette opération il manque les paramètres suivants: %1$s, %2$s, %3$s and %4$s.',
'UI:Error:IncorrectOQLQuery_Message' => 'Erreur: requête OQL incorrecte: %1$s',
'UI:Error:AnErrorOccuredWhileRunningTheQuery_Message' => 'Une erreur s\'est produite en exécutant la requête: %1$s',
'UI:Error:ObjectAlreadyUpdated' => 'Erreur: l\'objet a déjà été mis à jour.',
'UI:Error:ObjectCannotBeUpdated' => 'Erreur: l\'objet ne peut pas être mis à jour.',
'UI:Error:ObjectsAlreadyDeleted' => 'Erreur: les objets ont déjà été supprimés !',
'UI:Error:BulkDeleteNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à faire une suppression massive sur les objets de type %1$s',
'UI:Error:DeleteNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à supprimer des objets de type %1$s',
'UI:Error:ReadNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à voir des objets de type %1$s',
'UI:Error:BulkModifyNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à faire une modification massive sur les objets de type %1$s',
'UI:Error:ObjectAlreadyCloned' => 'Erreur: l\'objet a déjà été dupliqué !',
'UI:Error:ObjectAlreadyCreated' => 'Erreur: l\'objet a déjà été créé !',
'UI:Error:Invalid_Stimulus_On_Object_In_State' => '%2$s est actuellement dans l\'état "%3$s", l\'opération "%1$s" que vous avez demandée ne peut être appliquée.',
'UI:Error:InvalidDashboardFile' => 'Erreur: Le fichier tableau de bord est invalide',
'UI:Error:InvalidDashboard' => 'Erreur: Le tableau de bord est invalide',
'UI:Error:MaintenanceMode' => 'L\'application est en maintenance',
'UI:Error:MaintenanceTitle' => 'Maintenance',
'UI:Error:InvalidToken' => 'Erreur: l\'opération a déjà été effectuée (CSRF token not found)',
'UI:Error:ObjectAlreadyUpdated' => 'Erreur: l\'objet a déjà été mis à jour.',
'UI:Error:ObjectCannotBeUpdated' => 'Erreur: l\'objet ne peut pas être mis à jour.',
'UI:Error:ObjectsAlreadyDeleted' => 'Erreur: les objets ont déjà été supprimés !',
'UI:Error:BulkDeleteNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à faire une suppression massive sur les objets de type %1$s',
'UI:Error:DeleteNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à supprimer des objets de type %1$s',
'UI:Error:ReadNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à voir des objets de type %1$s',
'UI:Error:BulkModifyNotAllowedOn_Class' => 'Vous n\'êtes pas autorisé à faire une modification massive sur les objets de type %1$s',
'UI:Error:ObjectAlreadyCloned' => 'Erreur: l\'objet a déjà été dupliqué !',
'UI:Error:ObjectAlreadyCreated' => 'Erreur: l\'objet a déjà été créé !',
'UI:Error:Invalid_Stimulus_On_Object_In_State' => '%2$s est actuellement dans l\'état "%3$s", l\'opération "%1$s" que vous avez demandée ne peut être appliquée.',
'UI:Error:InvalidDashboardFile' => 'Erreur: Le fichier tableau de bord est invalide',
'UI:Error:InvalidDashboard' => 'Erreur: Le tableau de bord est invalide',
'UI:Error:MaintenanceMode' => 'L\'application est en maintenance',
'UI:Error:MaintenanceTitle' => 'Maintenance',
'UI:Error:InvalidToken' => 'Erreur: l\'opération a déjà été effectuée (CSRF token not found)',
'UI:Error:SMTP:UnknownVendor' => 'Le provider SMTP OAuth 2.0 %1$s n\'existe pas',
'UI:GroupBy:Count' => 'Nombre',
'UI:GroupBy:Count+' => 'Nombre d\'éléments',
'UI:CountOfObjects' => '%1$d objets correspondants aux critères.',
'UI_CountOfObjectsShort' => '%1$d objets.',
'UI:NoObject_Class_ToDisplay' => 'Aucun objet %1$s à afficher',
'UI:History:LastModified_On_By' => 'Dernière modification par %2$s le %1$s.',
'UI:HistoryTab' => 'Historique',
'UI:NotificationsTab' => 'Notifications',
'UI:History:BulkImports' => 'Historique',
'UI:History:BulkImports+' => 'Liste des imports CSV (le dernier est en haut de la liste)',
'UI:History:BulkImportDetails' => 'Changements résultant de l\'import CSV du %1$s (auteur: %2$s)',
'UI:History:Date' => 'Date',
'UI:History:Date+' => 'Date de modification',
'UI:History:User' => 'Utilisateur',
'UI:History:User+' => 'Utilisateur qui a fait la modification',
'UI:History:Changes' => 'Changements',
'UI:History:Changes+' => 'Changements sur cet objet',
'UI:History:StatsCreations' => 'Créés',
'UI:History:StatsCreations+' => 'Nombre d\'objets créés',
'UI:History:StatsModifs' => 'Modifiés',
'UI:History:StatsModifs+' => 'Nombre d\'objets modifiés',
'UI:History:StatsDeletes' => 'Effacés',
'UI:History:StatsDeletes+' => 'Nombre d\'objets effacés',
'UI:Loading' => 'Chargement...',
'UI:Menu:Actions' => 'Actions',
'UI:Menu:OtherActions' => 'Autres Actions',
'UI:Menu:Transitions' => 'Transitions',
'UI:GroupBy:Count' => 'Nombre',
'UI:GroupBy:Count+' => 'Nombre d\'éléments',
'UI:CountOfObjects' => '%1$d objets correspondants aux critères.',
'UI_CountOfObjectsShort' => '%1$d objets.',
'UI:NoObject_Class_ToDisplay' => 'Aucun objet %1$s à afficher',
'UI:History:LastModified_On_By' => 'Dernière modification par %2$s le %1$s.',
'UI:HistoryTab' => 'Historique',
'UI:NotificationsTab' => 'Notifications',
'UI:History:BulkImports' => 'Historique',
'UI:History:BulkImports+' => 'Liste des imports CSV (le dernier est en haut de la liste)',
'UI:History:BulkImportDetails' => 'Changements résultant de l\'import CSV du %1$s (auteur: %2$s)',
'UI:History:Date' => 'Date',
'UI:History:Date+' => 'Date de modification',
'UI:History:User' => 'Utilisateur',
'UI:History:User+' => 'Utilisateur qui a fait la modification',
'UI:History:Changes' => 'Changements',
'UI:History:Changes+' => 'Changements sur cet objet',
'UI:History:StatsCreations' => 'Créés',
'UI:History:StatsCreations+' => 'Nombre d\'objets créés',
'UI:History:StatsModifs' => 'Modifiés',
'UI:History:StatsModifs+' => 'Nombre d\'objets modifiés',
'UI:History:StatsDeletes' => 'Effacés',
'UI:History:StatsDeletes+' => 'Nombre d\'objets effacés',
'UI:Loading' => 'Chargement...',
'UI:Menu:Actions' => 'Actions',
'UI:Menu:OtherActions' => 'Autres Actions',
'UI:Menu:Transitions' => 'Transitions',
'UI:Menu:OtherTransitions' => 'Autres Transitions',
'UI:Menu:New' => 'Créer...',
'UI:Menu:Add' => 'Ajouter...',
@@ -1344,95 +1344,97 @@ Lors de l\'association à un déclencheur, on attribue à chaque action un numé
'UI:DashletHeaderStatic:Prop-Title:Default' => 'Contacts',
'UI:DashletHeaderStatic:Prop-Icon' => 'Icône',
'UI:DashletHeaderDynamic:Label' => 'En-tête dynamique',
'UI:DashletHeaderDynamic:Description' => 'En-tête avec statistiques (regroupements)',
'UI:DashletHeaderDynamic:Prop-Title' => 'Titre',
'UI:DashletHeaderDynamic:Prop-Title:Default' => 'Contacts',
'UI:DashletHeaderDynamic:Prop-Icon' => 'Icône',
'UI:DashletHeaderDynamic:Prop-Subtitle' => 'Sous-titre',
'UI:DashletHeaderDynamic:Label' => 'En-tête dynamique',
'UI:DashletHeaderDynamic:Description' => 'En-tête avec statistiques (regroupements)',
'UI:DashletHeaderDynamic:Prop-Title' => 'Titre',
'UI:DashletHeaderDynamic:Prop-Title:Default' => 'Contacts',
'UI:DashletHeaderDynamic:Prop-Icon' => 'Icône',
'UI:DashletHeaderDynamic:Prop-Subtitle' => 'Sous-titre',
'UI:DashletHeaderDynamic:Prop-Subtitle:Default' => 'Contacts',
'UI:DashletHeaderDynamic:Prop-Query' => 'Requête OQL',
'UI:DashletHeaderDynamic:Prop-GroupBy' => 'Grouper par',
'UI:DashletHeaderDynamic:Prop-Values' => 'Valeurs',
'UI:DashletHeaderDynamic:Prop-Query' => 'Requête OQL',
'UI:DashletHeaderDynamic:Prop-GroupBy' => 'Grouper par',
'UI:DashletHeaderDynamic:Prop-Values' => 'Valeurs',
'UI:DashletBadge:Label' => 'Badge',
'UI:DashletBadge:Label' => 'Badge',
'UI:DashletBadge:Description' => 'Icône représentant une classe d\'objets, ainsi que des liens pour créer/rechercher',
'UI:DashletBadge:Prop-Class' => 'Classe',
'UI:DashletBadge:Prop-Class' => 'Classe',
'DayOfWeek-Sunday' => 'Dimanche',
'DayOfWeek-Monday' => 'Lundi',
'DayOfWeek-Tuesday' => 'Mardi',
'DayOfWeek-Wednesday' => 'Mercredi',
'DayOfWeek-Thursday' => 'Jeudi',
'DayOfWeek-Friday' => 'Vendredi',
'DayOfWeek-Saturday' => 'Samedi',
'Month-01' => 'Janvier',
'Month-02' => 'Février',
'Month-03' => 'Mars',
'Month-04' => 'Avril',
'Month-05' => 'Mai',
'Month-06' => 'Juin',
'Month-07' => 'Juillet',
'Month-08' => 'Août',
'Month-09' => 'Septembre',
'Month-10' => 'Octobre',
'Month-11' => 'Novembre',
'Month-12' => 'Décembre',
'DayOfWeek-Sunday' => 'Dimanche',
'DayOfWeek-Monday' => 'Lundi',
'DayOfWeek-Tuesday' => 'Mardi',
'DayOfWeek-Wednesday' => 'Mercredi',
'DayOfWeek-Thursday' => 'Jeudi',
'DayOfWeek-Friday' => 'Vendredi',
'DayOfWeek-Saturday' => 'Samedi',
'Month-01' => 'Janvier',
'Month-02' => 'Février',
'Month-03' => 'Mars',
'Month-04' => 'Avril',
'Month-05' => 'Mai',
'Month-06' => 'Juin',
'Month-07' => 'Juillet',
'Month-08' => 'Août',
'Month-09' => 'Septembre',
'Month-10' => 'Octobre',
'Month-11' => 'Novembre',
'Month-12' => 'Décembre',
// Short version for the DatePicker
'DayOfWeek-Sunday-Min' => 'Di',
'DayOfWeek-Monday-Min' => 'Lu',
'DayOfWeek-Tuesday-Min' => 'Ma',
'DayOfWeek-Sunday-Min' => 'Di',
'DayOfWeek-Monday-Min' => 'Lu',
'DayOfWeek-Tuesday-Min' => 'Ma',
'DayOfWeek-Wednesday-Min' => 'Me',
'DayOfWeek-Thursday-Min' => 'Je',
'DayOfWeek-Friday-Min' => 'Ve',
'DayOfWeek-Saturday-Min' => 'Sa',
'Month-01-Short' => 'Jan',
'Month-02-Short' => 'Fév',
'Month-03-Short' => 'Mar',
'Month-04-Short' => 'Avr',
'Month-05-Short' => 'Mai',
'Month-06-Short' => 'Juin',
'Month-07-Short' => 'Juil',
'Month-08-Short' => 'Août',
'Month-09-Short' => 'Sept',
'Month-10-Short' => 'Oct',
'Month-11-Short' => 'Nov',
'Month-12-Short' => 'Déc',
'Calendar-FirstDayOfWeek' => '1',// 0 = Sunday, 1 = Monday, etc...
'DayOfWeek-Thursday-Min' => 'Je',
'DayOfWeek-Friday-Min' => 'Ve',
'DayOfWeek-Saturday-Min' => 'Sa',
'Month-01-Short' => 'Jan',
'Month-02-Short' => 'Fév',
'Month-03-Short' => 'Mar',
'Month-04-Short' => 'Avr',
'Month-05-Short' => 'Mai',
'Month-06-Short' => 'Juin',
'Month-07-Short' => 'Juil',
'Month-08-Short' => 'Août',
'Month-09-Short' => 'Sept',
'Month-10-Short' => 'Oct',
'Month-11-Short' => 'Nov',
'Month-12-Short' => 'Déc',
'Calendar-FirstDayOfWeek' => '1',
// 0 = Sunday, 1 = Monday, etc...
'UI:Menu:ShortcutList' => 'Créer un Raccourci...',
'UI:Menu:FilterList' => 'Filtrer la liste...',
'UI:ShortcutRenameDlg:Title' => 'Renommer le raccourci',
'UI:ShortcutListDlg:Title' => 'Créer un raccourci pour la liste',
'UI:ShortcutDelete:Confirm' => 'Veuillez confirmer la suppression du ou des raccourci(s)',
'Menu:MyShortcuts' => 'Mes raccourcis',// Duplicated into itop-welcome-itil (will be removed from here...)
'Class:Shortcut' => 'Raccourci',
'Class:Shortcut+' => '',
'Class:Shortcut/Attribute:name' => 'Nom',
'Class:Shortcut/Attribute:name+' => 'Label utilisé dans le menu et comme titre de la page',
'Class:ShortcutOQL' => 'Raccourci vers une liste d\'objets',
'Class:ShortcutOQL+' => '',
'Class:ShortcutOQL/Attribute:oql' => 'Requête',
'Class:ShortcutOQL/Attribute:oql+' => 'Requête de définition de l\'ensemble des objets',
'Class:ShortcutOQL/Attribute:auto_reload' => 'Réactualisation automatique',
'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => 'Désactivée',
'UI:Menu:ShortcutList' => 'Créer un Raccourci...',
'UI:Menu:FilterList' => 'Afficher la liste et ses critères de recherche',
'UI:ShortcutRenameDlg:Title' => 'Renommer le raccourci',
'UI:ShortcutListDlg:Title' => 'Créer un raccourci pour la liste',
'UI:ShortcutDelete:Confirm' => 'Veuillez confirmer la suppression du ou des raccourci(s)',
'Menu:MyShortcuts' => 'Mes raccourcis',
// Duplicated into itop-welcome-itil (will be removed from here...)
'Class:Shortcut' => 'Raccourci',
'Class:Shortcut+' => '',
'Class:Shortcut/Attribute:name' => 'Nom',
'Class:Shortcut/Attribute:name+' => 'Label utilisé dans le menu et comme titre de la page',
'Class:ShortcutOQL' => 'Raccourci vers une liste d\'objets',
'Class:ShortcutOQL+' => '',
'Class:ShortcutOQL/Attribute:oql' => 'Requête',
'Class:ShortcutOQL/Attribute:oql+' => 'Requête de définition de l\'ensemble des objets',
'Class:ShortcutOQL/Attribute:auto_reload' => 'Réactualisation automatique',
'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => 'Désactivée',
'Class:ShortcutOQL/Attribute:auto_reload/Value:custom' => 'Personnalisée',
'Class:ShortcutOQL/Attribute:auto_reload_sec' => 'Réactualisation toutes les (secondes)',
'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => 'Le minimum permis est de %1$d secondes',
'Class:ShortcutOQL/Attribute:auto_reload_sec' => 'Réactualisation toutes les (secondes)',
'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => 'Le minimum permis est de %1$d secondes',
'UI:FillAllMandatoryFields' => 'Veuillez remplir tous les champs obligatoires.',
'UI:ValueMustBeSet' => 'Veuillez spécifier une valeur pour ce champ',
'UI:ValueMustBeChanged' => 'Veuillez modifier la valeur de ce champ',
'UI:ValueInvalidFormat' => 'Format invalide',
'UI:ValueMustBeSet' => 'Veuillez spécifier une valeur pour ce champ',
'UI:ValueMustBeChanged' => 'Veuillez modifier la valeur de ce champ',
'UI:ValueInvalidFormat' => 'Format invalide',
'UI:CSVImportConfirmTitle' => 'Veuillez confirmer cette opération',
'UI:CSVImportConfirmMessage' => 'Etes-vous sûr(e) de vouloir faire cela ?',
'UI:CSVImportError_items' => 'Erreurs: %1$d',
'UI:CSVImportCreated_items' => 'Créations: %1$d',
'UI:CSVImportModified_items' => 'Modifications: %1$d',
'UI:CSVImportUnchanged_items' => 'Inchangés: %1$d',
'UI:CSVImport:DateAndTimeFormats' => 'Format de date et heure',
'UI:CSVImportConfirmTitle' => 'Veuillez confirmer cette opération',
'UI:CSVImportConfirmMessage' => 'Etes-vous sûr(e) de vouloir faire cela ?',
'UI:CSVImportError_items' => 'Erreurs: %1$d',
'UI:CSVImportCreated_items' => 'Créations: %1$d',
'UI:CSVImportModified_items' => 'Modifications: %1$d',
'UI:CSVImportUnchanged_items' => 'Inchangés: %1$d',
'UI:CSVImport:DateAndTimeFormats' => 'Format de date et heure',
'UI:CSVImport:DefaultDateTimeFormat_Format_Example' => 'Format par défaut: %1$s (ex. %2$s)',
'UI:CSVImport:CustomDateTimeFormat' => 'Format spécial: %1$s',
'UI:CSVImport:CustomDateTimeFormatTooltip' => 'Codes de format:<table>

View File

@@ -123,6 +123,12 @@ class DataTableUIBlockFactory extends AbstractUIBlockFactory
*/
protected static function RenderDataTable(DataTable $oDataTable, string $sStyle, WebPage $oPage, string $sListId, DBObjectSet $oSet, array $aExtraParams)
{
// Filter this list action
$sFilterListUrl = utils::GetDataTableSearchUrl($oSet->GetFilter(), $aExtraParams);
if (utils::IsNotNullOrEmptyString($sFilterListUrl)) {
$aExtraParams['filter_this_list_url'] = $sFilterListUrl;
}
if (!isset($aExtraParams['menu']) || $aExtraParams['menu']) {
$oMenuBlock = new MenuBlock($oSet->GetFilter(), $sStyle);
$aExtraParams['refresh_action'] = $oDataTable->GetJSRefresh();
@@ -177,7 +183,7 @@ class DataTableUIBlockFactory extends AbstractUIBlockFactory
} else {
$sSubTitle = Dict::Format('UI:Pagination:HeaderNoSelection', $sCountHtml);
}
$sFilterListUrl = utils::GetDataTableSearchUrl($oSet->GetFilter(), $aExtraParams);
if (utils::IsNotNullOrEmptyString($sFilterListUrl)) {
$sSubTitle = '<a href="'.$sFilterListUrl.'" title="'.Dict::S('UI:Menu:FilterList').'">'.$sSubTitle.'</a>';
}