# PatchService messages
patch.service.preceeded_by_alternative=Preceeded by alternative patch ''{0}''.
patch.service.not_relevant=Not relevant to schema {0}
patch.executer.checking=Checking for patches to apply ...
patch.service.applying_patch=\tApplying patch ''{0}'' ({1}).
patch.progress=\t\tPatch {0} {1}% complete, estimated complete at {2}.
patch.validation.failed=Validation of patch ''{0}'' failed. Patch is applicable to a newer schema than the schema of this build ({1}).\nfixesToSchema: {2}\ntargetSchema: {3}.\nIf this patch should always be run once on every installation, please ensure that the ''fixesToSchema'' value is set to '''${version.schema}'''.
patch.executer.no_patches_required=No patches were required.
patch.executer.system_readonly=Patches cannot be applied to a read-only system.  Possible incompatibilities may exist between the application code and the existing data.
patch.executer.not_executed =\n=== Recorded patch (not executed) === \nID: {0}\nRESULT: \n{1}\n=====================================
patch.executer.executed     =\n=== Applied patch                 === \nID: {0}\nRESULT: \n{1}\n=====================================
patch.executer.failed       =\n=== Failed to apply patch         === \nID: {0}\nRESULT: \n{1}\n=====================================
patch.noLongerSupportedPatch.err.use_incremental_upgrade = \nPatch ''{0}'' was last supported on version {1}.\n   Please follow an incremental upgrade using version {2}. 

# General patch messages

patch.genericBootstrap.result.exists=Bootstrap location already exists: {0}
patch.genericBootstrap.result.created=Imported view into bootstrap location: {0} ({1})
patch.genericBootstrap.err.multiple_found=Multiple nodes found: {0}

patch.general.property_not_set=Patch property ''{0}'' has not been set on this patch: {1}

patch.QNamePatch.result=Successfully updated the ''{0}'' QName to ''{1}''.

# Individual patch messages

patch.noOpPatch.description=A placeholder patch; usually marks a superceded patch.
patch.noOpPatch.result=No-op patch

patch.marker.description=Marker patch to record installations and upgrades
patch.marker.result=Marker patch applied

patch.savedSearchesFolder.description=Ensures the existence of the 'Saved Searches' folder.
patch.savedSearchesFolder.result.exists=The saved searches folder already exists: {0}
patch.savedSearchesFolder.result.created=The saved searches folder was successfully created: {0}

patch.savedSearchesPermission.description=Sets required permissions on 'Saved Searches' folder.
patch.savedSearchesPermission.result.applied=Granted CONTRIBUTOR role to EVERYONE on 'Saved Searches' folder: {0}.
patch.savedSearchesPermission.err.not_found='Saved Searches' folder could not be found.

patch.updatePermissionData.description=Update permissions from 'folder' to 'cmobject' [JIRA: AR-344].
patch.updatePermissionData.result=Changed {0} 'folder' access control entries to 'cmobject'.

patch.authoritiesFolder.description=Ensures the existence of the user authorities folder [JIRA: AR-497].

patch.authoritiesFolderPermission.description=Ensures group authorities are visible to everyone.

patch.guestUser.description=Add the guest user, guest home space; and fix permissions on company home, guest home and guest person. 
patch.guestUser.result=Added guest user and fixed permissions.

patch.fixNodeSerializableValues.description=Ensure that property values are not stored as Serializable if at all possible
patch.fixNodeSerializableValues.result=Fixed {0} node property serialized values

patch.updateGuestPermission.description=Rename guest permission from 'Guest' to 'Consumer'
patch.updateGuestPermission.result=Changed {0} 'Guest' access control entries to 'Consumer'.

patch.categoryRootPermission.description=Sets required permissions on 'Category Root' folder.
patch.categoryRootPermission.result=Granted CONSUMER role to GUEST on 'Category Root' folder: {0}.
patch.categoryRootPermission.err.not_found='Category Root' folder ({0}) could not be found.

patch.guestPersonPermission.description=Change Guest Person permission from 'Consumer' to 'Read'
patch.guestPersonPermission.result=Updated Guest Person permission from 'Consumer' to 'Read'

patch.spacesRootPermission.description=Change Spaces store root permission from 'Consumer' to 'Read'
patch.spacesRootPermission.result=Updated Spaces store root permission from 'Consumer' to 'Read'

patch.contentPermission.description=Update permission entries from 'cm:content' to 'sys:base'.
patch.contentPermission.result=Changed {0} 'cm:content' access control entries to 'sys:base'.

patch.forumsIcons.description=Updates forums icon references
patch.forumsIcons.result=Updated {0} icon references

patch.emailTemplatesFolder.description=Ensures the existence of the 'Email Templates' folder.
patch.emailTemplatesFolder.result.exists=The email templates folder already exists: {0}
patch.emailTemplatesFolder.result.created=The email templates folder was successfully created: {0}

patch.emailInviteAndNotifyTemplatesFolder.description=Ensures the existence of the 'Email Invite Templates' and 'Email Notify Templates' folders.
patch.emailNotifyTemplatesFolder.result.exists=The Email Notify Templates folder already exists: {0}
patch.emailNotifyTemplatesFolder.result.created=The Email Notify Templates folder was successfully created: {0}
patch.emailInviteTemplatesFolder.result.exists=The Email Invite Templates folder already exists: {0}
patch.emailInviteTemplatesFolder.result.created=The Email Invite Templates folder was successfully created: {0}

patch.emailTemplatesContent.description=Loads the email templates into the Email Templates folder.
patch.emailTemplatesContent.result=Imported the Email Templates into the default folder.

patch.descriptorUpdate.description=Update Repository descriptor
patch.descriptorUpdate.result=Repository descriptor updated

patch.scriptsFolder.description=Ensures the existence of the 'Scripts' folder.
patch.scriptsFolder.result.exists=The scripts folder already exists: {0}
patch.scriptsFolder.result.created=The scripts folder was successfully created: {0}

patch.topLevelGroupParentChildAssociationTypePatch.description=Ensure top level groups have the correct child association type.
patch.topLevelGroupParentChildAssociationTypePatch.result=Fixed {0} top level groups child association types.
patch.topLevelGroupParentChildAssociationTypePatch.err.sys_path_not_found=Required authority system path not found: {0}
patch.topLevelGroupParentChildAssociationTypePatch.err.auth_path_not_found=Required authority path not found: {0}

patch.actionRuleDecouplingPatch.description=Migrate existing rules to the updated model where rules are decoupled from actions.
patch.actionRuleDecouplingPatch.result=Updated {0} rules.

patch.systemWorkflowFolder.description=Ensures the existence of the system workflow container.
patch.systemWorkflowFolder.result.created=Created system workflow container {0}.

patch.rssTemplatesFolder.description=Ensures the existence of the 'RSS Templates' folder.
patch.rssTemplatesFolder.result.exists=The RSS Templates folder already exists: {0}.  Re-applying guest permissions.
patch.rssTemplatesFolder.result.created=The RSS Templates folder was successfully created: {0}

patch.rendition.rendering_actions.exists=The Rendering Actions folder already exists: {0}.
patch.rendition.rendering_actions.created=The Rendering Actions folder was successfully created: {0}
patch.rendition.rendering_actions.description=Creates the Rendering Actions folder.

patch.uifacetsAspectRemovalPatch.description=Removes the incorrectly applied uifacets aspect from presentation template files.
patch.uifacetsAspectRemovalPatch.updated=Successfully removed the uifacets aspect from {0} presentation template files.

patch.guestPersonPermission2.description=Change Guest Person permission to visible by all users as 'Consumer'.
patch.guestPersonPermission2.result=Updated Guest Person permission to visible by all users as 'Consumer'.

patch.schemaUpgradeScript.description=Ensures that the database upgrade script has been run.
patch.schemaUpgradeScript.err.not_executed=The schema upgrade script, ''{0}'', has not been run against this database.

patch.uniqueChildName.description=Checks and renames duplicate children.
patch.uniqueChildName.copyOf=({0}-{1})
patch.uniqueChildName.result=Checked {0} associations and fixed {1} duplicates.  See file {2} for details.
patch.uniqueChildName.err.unable_to_fix=Auto-fixing of duplicate names failed.  See file {0} for details.

patch.invalidNameEnding.description=Fixes names ending with a space or full stop.
patch.invalidNameEnding.result=Fixed {0} names ending with a space or full stop.  See file {1} for details.
patch.invalidNameEnding.err.unable_to_fix=Auto-fixing of names ending with a space or full stop failed.  See file {0} for details.
patch.invalidNameEnding.rewritten=Name ''{0}'' rewritten to ''{1}''

patch.systemDescriptorContent.description=Adds the version properties content to the system descriptor.
patch.systemDescriptorContent.result=Added the version properties content to the system descriptor.
patch.systemDescriptorContent.err.no_version_properties=The version.properties resource could not be found.
patch.systemDescriptorContent.err.no_descriptor=The system descriptor could not be found.

patch.versionHistoryPerformance.description=Improves the performance of version history lookups.
patch.versionHistoryPerformance.result=Updated {0} version history objects to improve performance.

patch.multilingualBootstrap.description=Bootstraps the node that will hold the multilingual containers.

patch.wcmFolders.description=Ensures the existance of the WCM specific 'Web Projects' and 'Web Forms' folders.
patch.wcmFolders.webprojects.result.exists=The Web Projects folder already exists: {0}
patch.wcmFolders.webprojects.result.created=The Web Projects folder was successfully created: {0}
patch.wcmFolders.webforms.result.exists=The Web Forms folder already exists: {0}
patch.wcmFolders.webforms.result.created=The Web Forms folder was successfully created: {0}

patch.linkNodeExtension.description=Fixes link node file extensions to have a .url extension.
patch.linkNodeExtension.result=Fixed {0} link node file extensions.  See file {1} for details.
patch.linkNodeExtension.err.unable_to_fix=Auto-fixing of link node file extensions failed.  See file {0} for details.
patch.linkNodeExtension.rewritten=Name ''{0}'' rewritten to ''{1}''

patch.systemRegistryBootstrap.description=Bootstraps the node that will hold system registry metadata.

patch.userAndPersonUserNamesAsIdentifiers.description=Reindex usr:user and cm:person uids as identifiers
patch.userAndPersonUserNamesAsIdentifiers.result=Reindexed user:user and cm:person uids as identifiers

patch.contentFormFolderType.description=Update WCM Content Form folder type.
patch.contentFormFolderType.result=Updated {0} WCM Content Form objects to 'wcm:formfolder' type.

patch.groupNamesAsIdentifiers.description=Reindex usr:authorityContainer gids as identifiers
patch.groupNamesAsIdentifiers.result=Reindexed usr:authorityContainer with identifiers

patch.invalidUserPersonAndGroup.description=Fix up invalid uids for people and users; and invalid gids for groups
patch.invalidUserPersonAndGroup.result=Fixed ''{0}'' invalid user nodes, ''{1}'' invalid person nodes and ''{2}'' invalid authority nodes.

patch.AVMGuidPatch.description=Set GUIDs on AVM nodes.
patch.AVMGuidPatch.result=AVM GUIDS set.
 
patch.webscripts.description=Adds Web Scripts to Data Dictionary.
patch.webscripts2.description=Adds Web Scripts (second set) to Data Dictionary.
patch.webscripts3.description=Update Web Scripts ReadMe.
patch.webscriptsExtension.description=Adds Web Scripts Extension to Data Dictionary.

patch.AVMLayeredSnapshot.description=Set indirectionVersion on Layered Nodes.
patch.AVMLayeredSnapshot.result=Layered Node indirectionVersions set.

patch.groupMembersAsIdentifiers.description=Reindex usr:authorityContainer members as identifiers

patch.genericWorkflow.result.deployed=Re-deployed {0} workflows. 

patch.redeploySubmitProcess.description=Re-deploy WCM Submit Process Definition.
patch.deploySubmitDirectProcess.description=Deploy WCM Direct Submit Process Definition.

patch.AVMLocking.description=Adds existing web projects to locking service.
patch.AVMLocking.result=Necessary web projects added.

patch.AVMAspects.description=Changes storage of aspects on AVM Nodes.
patch.AVMAspects.result=Aspects were moved.

patch.ReadmeTemplate.description=Deployed ReadMe Template
patch.webScriptsReadme.description=Applied ReadMe template to Web Scripts folders

patch.AVMProperties.description=Changes storage of properties on AVM Nodes.
patch.AVMProperties.result=Properties were moved.

patch.customModels.description=Adds 'Models' folder to Data Dictionary
patch.customMessages.description=Adds 'Messages' folder to Data Dictionary
patch.customWebClientExtension.description=Adds 'Web Client Extension' folder to Data Dictionary

patch.customWorkflowDefs.description=Adds 'Workflow Definitions' folder to Data Dictionary.

patch.emailContributorGroup.description=Adds the 'GROUP_EMAIL_CONTRIBUTORS' group.

patch.avmStoreAsIdentifier.description=Reindex wca:webfolder to make wca:avmstore an identifier
patch.avmStoreAsIdentifier.result=Reindexed wca:webfolder to make wca:avmstore an identifier

patch.avmFormPropertyIdentifier.description=Reindex wca:webform to make wca:formname an identifier
patch.avmFormPropertyIdentifier.result=Reindexed wca:webform to make wca:formname an identifier

patch.formsFolder.description=Adds 'Forms' folder to Data Dictionary.

patch.tagRootCategory.description=Adds 'Tags' as new top-level category root.

patch.sitesFolder.description=Adds 'Sites' folder to Company Home.

patch.deploymentMigration.description=Migrates deployment data to the new model.
patch.deploymentMigration.webProjectName=Migrating deployment data for web project ''{0}''
patch.deploymentMigration.serverMigrated=Server ''{0}'' from web project ''{1}'' has been migrated
patch.deploymentMigration.reportMigrated=Deployment report for ''{0}'' from web project ''{1}'' has been migrated
patch.deploymentMigration.result=Deployment data has been migrated.

patch.updateAvmPermissionData.description=Update avm permissions from 'webfolder' to 'cmobject'.
patch.updateAvmPermissionData.result=Changed {0} 'webfolder' access control entries to 'cmobject'.

patch.updateAvmPermissions.description=Update ACLs on all avm objects to the new 2.2 permission model
patch.updateAvmPermissions.result=Updated ACLs. Created {0} defining and {1} layered ACLs.

patch.wcmPermissionPatch.description=Fix ACLs so they are only set on the staging area store.
patch.wcmPermissionPatch.result=Updated ACLs: ACLS are moved to the staging area store and removed from all other stores. They are now applied via layering.

patch.avmWebProjectInheritPermissions.description=Break inheritance of permissions on wca:webfolder object to hide access by default.
patch.avmWebProjectInheritPermissions.result=Removed inheritance of permissions on all wca:webfolder objects.

patch.wcmPostPermissionSnapshotPatch.description=Snapshot stores (after fixing ACLs so they are only set on the staging area store).
patch.wcmPostPermissionSnapshotPatch.result=Snapshot complete after WCM ACL changes.

patch.updateDmPermissions.description=Update ACLs on all DM node objects to the new 3.0 permission model
patch.updateDmPermissions.result=Updated ACLs. Created {0} defining ACLs.

patch.createSiteStore.description=Create the AVM store for site data structure for 3.0 web-tier clients.
patch.createSiteStore.result=Created the AVM site data store.

patch.sitePermissionRefactorPatch.description=Create permission groups for sites.
patch.sitePermissionRefactorPatch.result=Groups have been created for all sites and user's allocated accordingly.

patch.migrateVersionStore.description=Migrate from lightWeightVersionStore to version2Store
patch.migrateVersionStore.result=Migrated version store. Created {0} version histories

patch.inviteEmailTemplate.description=Adds invite email template to invite space

patch.calendarModelNamespacePatch.description=Update the Calendar model namespace URI and reindex all calendar objects.
patch.calendarModelNamespacePatch.result=Updated the Calendar model namespace URI to http://www.alfresco.org/model/calendar and reindexed {0} calendar objects.

patch.spacesStoreGuestPermission.description=Sets READ permissions for GUEST on root node of the SpacesStore.
patch.spacesStoreGuestPermission.result=Granted READ permissions for GUEST on root node of the SpacesStore.

patch.administratorGroup.description=Adds the 'ALFRESCO_ADMINISTRATORS' group.

patch.resetWCMToGroupBasedPermissionsPatch.description=Reset WCM to group based permissions.
patch.resetWCMToGroupBasedPermissionsPatch.result=WCM reset to group based permissions.

patch.migrateVersionStoreUpdateCounter.description=Update internal version2Store counter (if needed).
patch.migrateVersionStoreUpdateCounter.result=Update internal version2Store counter (if needed): {0}

patch.invitationMigration.description=Migrate invitations from old invite service to invitation service
patch.invitationMigration.result=Migrated {0} invitations from old invite service to invitation service.
patch.invitationMigration.no_invites=No invitations require migrating old invite service to invitation service.

patch.webSiteAddModerated.description=Changing Web Site visibility from a boolean to enum.
patch.webSiteAddModerated.result=Changed Web Site visibility.

patch.mtShareExistingTenants.description=Update existing tenants for MT Share.
patch.mtShareExistingTenants.result=Update existing tenants for MT Share.
patch.mtShareExistingTenants.result.not_applicable=Patch applied, although no changes made since MT is not enabled.

patch.redeployInvitationProcess.description=Re-deploy Invitation Process Definitions.

patch.imapFolders.description=Creates folders tree necessary for IMAP functionality
patch.imapFolders.result.exists=The 'Imap Configs' folder already exists
patch.imapFolders.result.created=The 'Imap Configs' folder was successfully created

patch.zonedAuthorities.description=Adds the remodelled cm:authority container to the spaces store

patch.authorityMigration.description=Copies any old authorities from the user store to the spaces store.
patch.authorityMigration.process.name=Authority Migration
patch.authorityMigration.warning.assoc=Ignoring group memberships of non-existent user {1}
patch.authorityMigration.result=Migrated {0} groups and {1} group associations to the spaces store.

patch.authorityDefaultZonesPatch.description=Adds groups and people to the appropriate zones for wcm, share and everything else.
patch.authorityDefaultZonesPatch.result=Unzoned groups and people added to the default zones.
patch.authorityDefaultZonesPatch.users=  Adding users to zones ...
patch.authorityDefaultZonesPatch.groups=  Adding groups to zones ...

patch.fixNameCrcValues.description=Fixes name and qname CRC32 values to match UTF-8 encoding.
patch.fixNameCrcValues.result=Fixed CRC32 values for UTF-8 encoding for {0} node child associations.  See file {1} for details.
patch.fixNameCrcValues.fixed=Updated CRC32 values for node ID {0}, name ''{1}'': {2} -> {3}, qname ''{4}'': {5} -> {6}.
patch.fixNameCrcValues.unableToChange=Failed to update the CRC32 value for node ID {0}: \n   Node name: {1} \n   name CRC old: {2} \n   name CRC new: {3} \n   Node qname: {4} \n   qname CRC old: {5} \n   qname CRC new: {6} \n   Error: {7}   

patch.personUsagePatch.description=Add person 'cm:sizeCurrent' property (if missing).
patch.personUsagePatch.result1=Added 'cm:sizeCurrent' property to {0} people that were missing this property.
patch.personUsagePatch.result2=No people were missing the 'cm:sizeCurrent' property.

patch.redeployNominatedInvitationProcessWithPropsForShare.description=Redeploy nominated invitation workflow
patch.redeployNominatedInvitationProcessWithPropsForShare.result=Nominated invitation workflow redeployed

patch.transferDefinitions.description=Add transfer definitions folder to data dictionary.
patch.transferDefinitions.result=Transfer definitions folder added to data dictionary.

patch.redeployNominatedInvitationProcessWithPropsForShare.description=Redeploy nominated invitation workflow
patch.redeployNominatedInvitationProcessWithPropsForShare.result=Nominated invitation workflow redeployed

patch.thumbnailsAssocQName.description=Update the 'cm:thumbnails' association QName to 'rn:rendition'.

patch.convertContentUrls.description=Converts pre-3.2 content URLs to use the alf_content_data table.  The conversion work can also be done on a schedule; please contact Alfresco Support for further details.
patch.convertContentUrls.bypassingPatch=Content URL conversion was NOT performed by this patch.  Activate the scheduled job 'contentUrlConverterTrigger'.
patch.convertContentUrls.start=Content URL conversion progress:
patch.convertContentUrls.error=Content URL conversion failed: {0}
patch.convertContentUrls.inProgress=Content URL conversion increment completed.  Awaiting next scheduled call...
patch.convertContentUrls.done=Content URL conversion completed.
patch.convertContentUrls.adm.start=\tProcessing ADM Content URLs.
patch.convertContentUrls.adm.done=\tFinished processing ADM nodes up to ID {0}.
patch.convertContentUrls.avm.start=\tProcessing AVM Content URLs.
patch.convertContentUrls.avm.done=\tFinished processing AVM nodes up to ID {0}.
patch.convertContentUrls.store.start=\tReading content URLs from store {0}.
patch.convertContentUrls.store.readOnly=\tNo content URLs will be marked for deletion.  The content store is read-only.
patch.convertContentUrls.store.pending=\tContent URLs will be marked for deletion once the URL conversion process is complete.
patch.convertContentUrls.store.noSupport=\tNo content URLs will be marked for deletion.  The store does not support URL enumeration.
patch.convertContentUrls.store.progress=\t\tProcessed {0} content URLs from store.
patch.convertContentUrls.store.scheduled=\tScheduled {0} content URLs for deletion from store: {1}
patch.convertContentUrls.store.done=This job is complete.  Deactivate the scheduled job 'contentUrlConverterTrigger'.
