From 7dd742795fbd2e762f149f05e23ea16843facf8a Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Tue, 24 Mar 2020 20:03:41 -0400 Subject: [PATCH 01/28] Layer uqam updates onto upstream-master --- .../src/main/webapp/i18n/all_fr_CA.properties | 927 ++++++++++++++++++ .../freemarker/lib/lib-properties_fr_CA.ftl | 344 +++++++ .../freemarker/search-help_fr_CA.ftl | 42 + .../templates/freemarker/termsOfUse_fr_CA.ftl | 34 + .../userAccounts-acctCreatedEmail_fr_CA.ftl | 68 ++ ...nts-acctCreatedExternalOnlyEmail_fr_CA.ftl | 43 + ...ccounts-confirmEmailChangedEmail_fr_CA.ftl | 38 + ...rAccounts-firstTimeExternalEmail_fr_CA.ftl | 43 + ...serAccounts-passwordCreatedEmail_fr_CA.ftl | 43 + ...ounts-passwordResetCompleteEmail_fr_CA.ftl | 44 + ...counts-passwordResetPendingEmail_fr_CA.ftl | 61 ++ .../vitro/i18n/images/select_locale_fr_CA.png | Bin 0 -> 919 bytes .../userAccounts-myProxiesPanel_fr_CA.ftl | 69 ++ .../contactForm/contactForm-form_fr_CA.ftl | 60 ++ .../body/individual/individual-menu_fr_CA.ftl | 65 ++ .../individual/individual-vitro_fr_CA.ftl | 114 +++ .../manageLabelsForIndividual_fr_CA.ftl | 110 +++ .../manageProxies-list_fr_CA.ftl | 204 ++++ .../body/menupage/emptyPage_fr_CA.ftl | 10 + .../individualsForClassesMenuPage_fr_CA.ftl | 17 + .../menupage--defaultFixedHtml_fr_CA.ftl | 15 + ...nupage--defaultSearchIndividuals_fr_CA.ftl | 53 + .../menupage--defaultSparql_fr_CA.ftl | 38 + ...age--exampleMultipleContentTypes_fr_CA.ftl | 85 ++ .../body/menupage/page-classgroup_fr_CA.ftl | 17 + .../body/menupage/page-pageList_fr_CA.ftl | 34 + .../body/message/message-titled_fr_CA.ftl | 7 + .../freemarker/body/message/message_fr_CA.ftl | 7 + .../body/pagemanagement/pageList_fr_CA.ftl | 89 ++ .../siteAdmin-classHierarchy_fr_CA.ftl | 64 ++ .../siteAdmin-objectPropHierarchy_fr_CA.ftl | 78 ++ .../forms/defaultDataPropertyForm_fr_CA.ftl | 105 ++ .../edit/forms/menuManagement_fr_CA.ftl | 115 +++ ...ageManagement--browseClassGroups_fr_CA.ftl | 69 ++ .../forms/pageManagement--fixedHtml_fr_CA.ftl | 23 + ...ageManagement--searchIndividuals_fr_CA.ftl | 33 + .../pageManagement--sparqlQuery_fr_CA.ftl | 25 + .../edit/forms/pageManagement_fr_CA.ftl | 209 ++++ .../page/partials/headScripts_fr_CA.ftl | 18 + .../vitro/templates/page-home_fr_CA.ftl | 73 ++ .../themes/vitro/templates/page_fr_CA.ftl | 26 + 41 files changed, 3519 insertions(+) create mode 100644 webapp/src/main/webapp/i18n/all_fr_CA.properties create mode 100644 webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl create mode 100644 webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl diff --git a/webapp/src/main/webapp/i18n/all_fr_CA.properties b/webapp/src/main/webapp/i18n/all_fr_CA.properties new file mode 100644 index 0000000..0bcdc2d --- /dev/null +++ b/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -0,0 +1,927 @@ +# +# Text strings for the controllers and templates +# +# Default (English) +# +save_changes=Sauvegarder +save_entry=Sauvegarder +select_existing=Choisir l'enregistrement existant +select_an_existing=Choisir un enregistrement existant +add_an_entry_to=Ajouter un enregistrement de type +change_entry_for=Modifier l'enregistrement pour: +add_new_entry_for=Ajouter un enregistrement pour: +change_text_for=Changement du texte pour: +cancel_link = Annuler +cancel_title = annuler +required_fields = champs requis +or = ou +alt_error_alert = Icône d'alerte +alt_confirmation = Icône de confirmation +for=pour +email_address = Adresse courriel +first_name = Prénom +last_name = Nom de famille +roles = Rôles +status = Statut + +manage_publications_link = Gérer les publications + + +ascending_order = tri ascendant +descending_order = tri descendant +select_one = Selectionner une entrée + +type_more_characters = Entrer plus de caractères +no_match = aucune correspondance + +request_failed = La requête a échoué. Veuillez contacter l'administrateur système. + +# +# Image upload pages +# +upload_page_title = Téléverser une image +upload_page_title_with_name = Téléverser une image de {0} +upload_heading = Téléversement d'une image + +replace_page_title = Remplacer l'image +replace_page_title_with_name = Remplacer l'image de {0} + +crop_page_title = Rogner l'image +crop_page_title_with_name = Rogner l'image de {0} + +current_photo = Photo active +upload_photo = Téléverser une photo +replace_photo = Remplacer la Photo +photo_types = (JPEG, GIF ou PNG) +maximum_file_size = Taille maximale de l'image: {0} megaoctets +minimum_image_dimensions = Taille minimale de l'image: {0} par {1} pixels + +cropping_caption = La photo de votre profil ressemblera à l'image ci-dessous. +cropping_note = Pour ajuster, vous pouvez bouger la photo dans le cadre ou la redimentionner vers la droite. \ +Lorsque vous êtes satisfait, cliquez sur "Sauvegarder la photo". + +alt_thumbnail_photo = Photo individuelle +alt_image_to_crop = Image à rogner +alt_preview_crop = Aperçu de l'image rognée + +delete_link = Détruire la photo +submit_upload = Téléverser une photo +submit_save = Sauvegarder la photo + +confirm_delete = Êtes-vous certain de vouloir supprimer cette photo? + +imageUpload.errorNoURI = URI non spécifiée +imageUpload.errorUnrecognizedURI = Cette URI n'est reliée à aucun individu: ''{0}'' +imageUpload.errorNoImageForCropping = Aucune image à rogner. +imageUpload.errorImageTooSmall = L'image téléversée devrait avoir au moins {0} pixels de hauteur et {1} pixels de largeur. +imageUpload.errorUnknown = Désolé, impossible de traiter la photo fournie. Veuillez fournir une autre photo. +imageUpload.errorFileTooBig = Veuillez téléverser une image de moins de {0} mégabytes. +imageUpload.errorUnrecognizedFileType = ''{0}'' n'est pas un format d'image reconnu. Veuillez choisir une image au format JPEG, GIF ou PNG. +imageUpload.errorNoPhotoSelected = Parcourir et choisir une photo. +imageUpload.errorBadMultipartRequest = Échec de l'analyse de la demande en plusieurs parties pour le téléversement d'une image. +imageUpload.errorFormFieldMissing = Le formulaire ne comportait pas de champs ''{0}'' + +# +# User Accounts pages +# +account_management = Gestion des comptes d'usagers +user_accounts_link = Comptes d'usagers +user_accounts_title = comptes d'usagers + +login_count = Nbre de connexions +last_login = Dernière connexion + +add_new_account = Ajouter un compte +edit_account = Éditer le compte +external_auth_only = Authentification externe seulement +reset_password = Réinitialisation du mot de passe +reset_password_note = Note: Les instructions pour la réinitialisation du mot de passe \ +seront transmises à l'adresse ci-dessus. Le mot de passe ne sera pas \ +réinitialisé tant que l'usager n'aura pas cliqué sur le lien inclus dans ce courriel. +new_password = Nouveau mot de passe +confirm_password = Confirmer le nouveau mot de passe +minimum_password_length = Longueur minimale de {0} caractères; maximum de {1}. +leave_password_unchanged = Ne pas compléter ce champs implique que le mot de passe ne sera pas changé. +confirm_initial_password = Confirmer le mot de passe actuel + +new_account_1 = Un nouveau compte pour +new_account_2 = a été créé avec succès. +new_account_title = nouveau compte +new_account_notification = Un courriel de confirmation a été envoyé à {0}. \ +Il comporte des instructions pour activer le compte et créer un mot de passe. +updated_account_1 = Le compte de +updated_account_2 = a été modifié. +updated_account_title = compte modifié +updated_account_notification = Un courriel de confirmation a été envoyé à {0} .\ +Il comporte des instructions pour réinitialiser le mot de passe. \ +Le mot de passe ne sera pas réinitialisé tant que l'usager n'aura pas cliqué sur le lien inclus dans ce courriel. +deleted_accounts = {0} détruits {0, choice, 0#accounts|1#account|1 + +<#----------------------------------------------------------------------------- + Macros and functions for working with properties and property lists +------------------------------------------------------------------------------> + +<#import "lib-generator-classes.ftl" as generators /> + +<#-- Return true iff there are statements for this property --> +<#function hasStatements propertyGroups propertyName> + + <#local property = propertyGroups.getProperty(propertyName)!> + + <#-- First ensure that the property is defined + (an unpopulated property while logged out is undefined) --> + <#if ! property?has_content> + <#return false> + + + <#if property.collatedBySubclass!false> <#-- collated object property--> + <#return property.subclasses?has_content> + <#else> + <#return property.statements?has_content> <#-- data property or uncollated object property --> + + + +<#-- Return true iff there are statements for this property --> +<#function hasVisualizationStatements propertyGroups propertyName rangeUri> + + <#local property = propertyGroups.getProperty(propertyName, rangeUri)!> + + <#-- First ensure that the property is defined + (an unpopulated property while logged out is undefined) --> + <#if ! property?has_content> + <#return false> + + + <#if property.collatedBySubclass!false> <#-- collated object property--> + <#return property.subclasses?has_content> + <#else> + <#return property.statements?has_content> <#-- data property or uncollated object property --> + + + + +<#----------------------------------------------------------------------------- + Macros for generating property lists +------------------------------------------------------------------------------> + +<#macro dataPropertyListing property editable> + <#if property?has_content> <#-- true when the property is in the list, even if not populated (when editing) --> + <@addLinkWithLabel property editable /> + <@dataPropertyList property editable /> + + + +<#macro dataPropertyList property editable template=property.template> + <#list property.statements as statement> + <@propertyListItem property statement editable ><#include "${template}"> + + + +<#macro objectProperty property editable template=property.template> + <#if property.collatedBySubclass> <#-- collated --> + <@collatedObjectPropertyList property editable template /> + <#else> <#-- uncollated --> + <#-- We pass property.statements and property.template even though we are also + passing property, because objectPropertyList can get other values, and + doesn't necessarily use property.statements and property.template --> + <@objectPropertyList property editable property.statements template /> + + + +<#macro collatedObjectPropertyList property editable template=property.template > + <#local subclasses = property.subclasses> + <#list subclasses as subclass> + <#local subclassName = subclass.name!> + <#if subclassName?has_content> +
  • +

    ${subclassName?lower_case}

    +
      + <@objectPropertyList property editable subclass.statements template /> +
    +
  • + <#else> + <#-- If not in a real subclass, the statements are in a dummy subclass with an + empty name. List them in the top level ul, not nested. --> + <@objectPropertyList property editable subclass.statements template/> + + + + +<#-- Full object property listing, including heading and ul wrapper element. +Assumes property is non-null. --> +<#macro objectPropertyListing property editable template=property.template> + <#local localName = property.localName> +

    ${property.name?capitalize} <@addLink property editable /> <@verboseDisplay property />

    + + + +<#macro objectPropertyList property editable statements=property.statements template=property.template> + <#list statements as statement> + <@propertyListItem property statement editable><#include "${template}"> + + + +<#-- Some properties usually display without a label. But if there's an add link, +we need to also show the property label. If no label is specified, the property +name will be used as the label. --> +<#macro addLinkWithLabel property editable label="${property.name?capitalize}"> + <#local addLink><@addLink property editable label /> + <#local verboseDisplay><@verboseDisplay property /> + <#-- Changed to display the label when user is in edit mode, even if there's no add link (due to + displayLimitAnnot, for example). Otherwise the display looks odd, since neighboring + properties have labels. + <#if addLink?has_content || verboseDisplay?has_content> +

    ${label} ${addLink!} ${verboseDisplay!}

    + + --> + <#if editable> +

    ${label} ${addLink!}

    + ${verboseDisplay!} + + + +<#macro addLink property editable label="${property.name}"> + <#if property.rangeUri?? > + <#local rangeUri = property.rangeUri /> + <#else> + <#local rangeUri = "" /> + + <#if property.domainUri?? > + <#local domainUri = property.domainUri /> + <#else> + <#local domainUri = "" /> + + <#if editable> + <#if property.addUrl?has_content> + <#local url = property.addUrl> + <@showAddLink property.localName label url rangeUri domainUri/> + + + + +<#macro showAddLink propertyLocalName label url rangeUri domainUri=""> + <#if (rangeUri?contains("Authorship") && domainUri?contains("IAO_0000030")) || (rangeUri?contains("Editorship") && domainUri?contains("IAO_0000030"))|| rangeUri?contains("URL") || propertyLocalName == "hasResearchArea"> + + ${i18n().manage} + <#else> + + ${i18n().add} + + + +<#macro propertyLabel property label="${property.name?capitalize}"> +

    ${label} <@verboseDisplay property />

    + + + +<#macro propertyListItem property statement editable > + <#if property.rangeUri?? > + <#local rangeUri = property.rangeUri /> + <#else> + <#local rangeUri = "" /> + +
  • + <#nested> + <@editingLinks "${property.localName}" "${property.name}" statement editable rangeUri/> +
  • + + +<#macro editingLinks propertyLocalName propertyName statement editable rangeUri=""> + <#if editable > + <#if (!rangeUri?contains("Authorship") && !rangeUri?contains("URL") && !rangeUri?contains("Editorship") && propertyLocalName != "hasResearchArea")> + <@editLink propertyLocalName propertyName statement rangeUri/> + <@deleteLink propertyLocalName propertyName statement rangeUri/> + + + +<#macro editLink propertyLocalName propertyName statement rangeUri=""> + <#local url = statement.editUrl> + <#if url?has_content> + <#if propertyLocalName?contains("ARG_2000028")> + <#if rangeUri?contains("Address")> + <#local url = url + "&addressUri=" + "${statement.address!}"> + <#elseif rangeUri?contains("Telephone") || rangeUri?contains("Fax")> + <#local url = url + "&phoneUri=" + "${statement.phone!}"> + <#elseif rangeUri?contains("Work") || rangeUri?contains("Email")> + <#local url = url + "&emailUri=" + "${statement.email!}"> + <#elseif rangeUri?contains("Name")> + <#local url = url + "&fullNameUri=" + "${statement.fullName!}"> + <#elseif rangeUri?contains("Title")> + <#local url = url + "&titleUri=" + "${statement.title!}"> + + + <@showEditLink propertyLocalName rangeUri url /> + + + +<#macro showEditLink propertyLocalName rangeUri url> + ${i18n().edit_entry} + + +<#macro deleteLink propertyLocalName propertyName statement rangeUri=""> + <#local url = statement.deleteUrl> + <#if url?has_content> + <#--We need to specify the actual object to be deleted as it is different from the object uri--> + <#if propertyLocalName?contains("ARG_2000028")> + <#if rangeUri?contains("Address")> + <#local url = url + "&deleteObjectUri=" + "${statement.address!}"> + <#elseif rangeUri?contains("Telephone") || rangeUri?contains("Fax")> + <#local url = url + "&deleteObjectUri=" + "${statement.phone!}"> + <#elseif rangeUri?contains("Work") || rangeUri?contains("Email")> + <#local url = url + "&deleteObjectUri=" + "${statement.email!}"> + <#elseif rangeUri?contains("Name")> + <#local url = url + "&deleteObjectUri=" + "${statement.fullName!}"> + <#elseif rangeUri?contains("Title")> + <#local url = url + "&deleteObjectUri=" + "${statement.title!}"> + + + <@showDeleteLink propertyLocalName rangeUri url /> + + + +<#macro showDeleteLink propertyLocalName rangeUri url> + ${i18n().delete_entry} + + +<#macro verboseDisplay property> + <#local verboseDisplay = property.verboseDisplay!> + <#if verboseDisplay?has_content> +
    + <#if verboseDisplay.fauxProperty?has_content> + + ${verboseDisplay.fauxProperty.displayName} + is a faux property of + + ${verboseDisplay.localName} + (${property.type?lower_case} property); + order in group: ${verboseDisplay.displayRank}; + display level: ${verboseDisplay.displayLevel}; + update level: ${verboseDisplay.updateLevel}; + publish level: ${verboseDisplay.publishLevel} +
    + + + +<#----------------------------------------------------------------------------- + Macros for specific properties +------------------------------------------------------------------------------> + +<#-- Image + + Values for showPlaceholder: "always", "never", "with_add_link" + + Note that this macro has a side-effect in the call to propertyGroups.pullProperty(). +--> +<#macro image individual propertyGroups namespaces editable showPlaceholder="never" imageWidth=160 > + <#local mainImage = propertyGroups.pullProperty("${namespaces.vitroPublic}mainImage")!> + <#local thumbUrl = individual.thumbUrl!> + <#-- Don't assume that if the mainImage property is populated, there is a thumbnail image (though that is the general case). + If there's a mainImage statement but no thumbnail image, treat it as if there is no image. --> + <#if (mainImage.statements)?has_content && thumbUrl?has_content> + + ${individual.name} + + <@editingLinks "${mainImage.localName}" "" mainImage.first() editable /> + <#else> + <#local imageLabel><@addLinkWithLabel mainImage editable "${i18n().photo}" /> + ${imageLabel} + <#if showPlaceholder == "always" || (showPlaceholder="with_add_link" && imageLabel?has_content)> + ${i18n().placeholder_image} + + + + +<#-- Label --> +<#macro label individual editable labelCount localesCount=1 languageCount=1> + <#assign labelPropertyUri = ("http://www.w3.org/2000/01/rdf-schema#label"?url) /> + <#assign useEditLink = false /> + <#--edit link used if in edit mode and only one label and one language--> + <#--locales count may be 0 in case where no languages/selectable locales are specified--> + <#if labelCount = 1 && editable && (localesCount >= 0) > + <#assign useEditLink = true/> + + <#local label = individual.nameStatement> + ${label.value} + <#if useEditLink> + <@editingLinks "label" "" label editable ""/> + <#elseif (editable && (labelCount > 0)) || (languageCount > 1)> + <#--We display the link even when the user is not logged in case of multiple labels with different languages--> + <#assign labelLink = ""/> + <#-- Manage labels now goes to generator --> + <#assign individualUri = individual.uri!""/> + <#assign individualUri = (individualUri?url)/> + <#assign individualProfileUrl = individual.profileUrl /> + <#assign profileParameters = individualProfileUrl?substring(individualProfileUrl?index_of("?") + 1)/> + <#assign extraParameters = ""/> + <#if profileParameters?contains("uri=")> + <#assign extraParameters = profileParameters?replace("uri=" + individualUri, "") /> + + <#--IF there are special parameters, then get those--> + <#if editable> + <#assign imageAlt = "${i18n().manage}" /> + <#assign linkTitle = "${i18n().manage_list_of_labels}"> + <#assign labelLink= "${urls.base}/editRequestDispatch?subjectUri=${individualUri}&editForm=${generators.ManageLabelsGenerator}&predicateUri=${labelPropertyUri}${extraParameters}"> + <#else> + <#assign linkTitle = "${i18n().view_list_of_labels}"> + <#assign imageAlt = "${i18n().view}" /> + <#assign labelLink= "${urls.base}/viewLabels?subjectUri=${individualUri}${extraParameters}"> + + + + + ${imageAlt} + + + + +<#-- Most specific types --> +<#macro mostSpecificTypes individual > + <#list individual.mostSpecificTypes as type> + ${type} + + + +<#macro mostSpecificTypesPerson individual editable> + <#list individual.mostSpecificTypes as type> +
    ${type}
    + + + +<#--Property group names may have spaces in them, replace spaces with underscores for html id/hash--> +<#function createPropertyGroupHtmlId propertyGroupName> + <#local groupName = propertyGroupName?replace(" ", "_")> + <#local groupName = groupName?replace("/", "-slash-")> + <#local groupName = groupName?replace(",", "-comma-")> + <#local groupName = groupName?replace("&", "-and-")> + <#return groupName> + + diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl new file mode 100644 index 0000000..5d69088 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl @@ -0,0 +1,42 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#if origination?has_content && origination == "helpLink"> +

    Conseils pour la recherche

    + + Retour aux résultats + +<#else> +

    Astuces de recherche

    + + + +

    Conseils avancés

    + + +${stylesheets.add('')} + \ No newline at end of file diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl new file mode 100644 index 0000000..733b1eb --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl @@ -0,0 +1,34 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +
    +

    Conditions d'utilisation

    + +

    Renonciations

    +

    This ${termsOfUse.siteName} website contains material—text information, publication + citations, links, and images—provided by ${termsOfUse.siteHost} and by various + third parties, both individuals and organizations, commercial and otherwise. To the extent copyrightable, + the information presented on the VIVO website and available as Resource Description Framework (RDF) data + from VIVO at ${termsOfUse.siteHost} is intended for public use and is freely distributed under the terms of the + Creative Commons CC-BY 3.0 license which allows you + to copy, distribute, display and make derivatives of this information provided you give credit to + ${termsOfUse.siteHost}. Any non-copyrightable information is available to you under a + CC0 waiver. However, source documents, + images or web pages attached to or linked from VIVO may contain copyrighted information and should only be + used or distributed under terms included with each source or in accordance with the principles of fair use. +

    + +

    Disclaimer of Liability

    +

    ${termsOfUse.siteHost?cap_first} makes no warranty, expressed or implied, including the warranties of merchantability + and fitness for a particular purpose, or assumes any legal liability or responsibility for the accuracy, + completeness, currency or usefulness of any material displayed or distributed through the + ${termsOfUse.siteName} website or represents that its use would not infringe privately owned rights. + ${termsOfUse.siteHost?cap_first} disclaims all warranties with regard to the information provided. Any reliance upon such information + is at your own risk. In no event will ${termsOfUse.siteHost} be liable to you for any damages or losses whatsoever resulting + from or caused by the ${siteName} website or its contents.

    + +

    Disclaimer of Endorsement

    +

    Reference herein to any specific commercial product, process, or service by trade name, + trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement or recommendation + by ${termsOfUse.siteHost}. The views and opinions of authors expressed herein do not necessarily state or reflect those of + ${termsOfUse.siteHost} and shall not be used for advertising or product endorsement purposes.

    +
    diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl new file mode 100644 index 0000000..969960c --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl @@ -0,0 +1,68 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new account on ${siteName}, associated with ${userAccount.emailAddress}. +

    + +

    + If you did not request this new account you can safely ignore this email. + This request will expire if not acted upon for 30 days. +

    + +

    + Click the link below to create your password for your new account using our secure server. +

    + +

    + ${passwordLink} +

    + +

    + If the link above doesn't work, you can copy and paste the link directly into your browser's address bar. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new account on ${siteName}, +associated with ${userAccount.emailAddress}. + +If you did not request this new account you can safely ignore this email. +This request will expire if not acted upon for 30 days. + +Paste the link below into your browser's address bar to create your password +for your new account using our secure server. + +${passwordLink} + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl new file mode 100644 index 0000000..51d6f11 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new VIVO account associated with ${userAccount.emailAddress}. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new VIVO account associated with +${userAccount.emailAddress}. + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl new file mode 100644 index 0000000..98105d8 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl @@ -0,0 +1,38 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that the user has changed his email account. --> + +<#assign subject = "Your ${siteName} email account has been changed." /> + +<#assign html> + + + ${subject} + + +

    + Hi, ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + You recently changed the email address associated with + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Thank you. +

    + + + + +<#assign text> +Hi, ${userAccount.firstName} ${userAccount.lastName} + +You recently changed the email address associated with +${userAccount.firstName} ${userAccount.lastName} + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl new file mode 100644 index 0000000..c6d3deb --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created for an externally-authenticated user. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new VIVO account associated with ${userAccount.emailAddress}. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new VIVO account associated with +${userAccount.emailAddress}. + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl new file mode 100644 index 0000000..6a77ad6 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an password has been created. --> + +<#assign subject = "Your ${siteName} password has successfully been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Password successfully created. +

    + +

    + Your new password associated with ${userAccount.emailAddress} has been created. +

    + +

    + Thank you. +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Password successfully created. + +Your new password associated with ${userAccount.emailAddress} +has been created. + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl new file mode 100644 index 0000000..4ae08e8 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl @@ -0,0 +1,44 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that a password has been reset. --> + +<#assign subject = "Your ${siteName} password changed." /> + +<#assign html> + + + ${subject} + + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Password successfully changed. +

    + +

    + Your new password associated with ${userAccount.emailAddress} has been changed. +

    + +

    + Thank you. +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Password successfully changed. + +Your new password associated with ${userAccount.emailAddress} +has been changed. + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl new file mode 100644 index 0000000..f629c84 --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl @@ -0,0 +1,61 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation email for user account password reset --> + +<#assign subject = "${siteName} reset password request" /> + +<#assign html> + + + ${subject} + + +

    + Dear ${userAccount.firstName} ${userAccount.lastName}: +

    + +

    + We have received a request to reset the password for your ${siteName} account (${userAccount.emailAddress}). +

    + +

    + Please follow the instructions below to proceed with your password reset. +

    + +

    + If you did not request this new account you can safely ignore this email. + This request will expire if not acted upon within 30 days. +

    + +

    + Click on the link below or paste it into your browser's address bar to reset your password + using our secure server. +

    + +

    ${passwordLink}

    + +

    Thank you!

    + + + + +<#assign text> +Dear ${userAccount.firstName} ${userAccount.lastName}: + +We have received a request to reset the password for your ${siteName} account +(${userAccount.emailAddress}). + +Please follow the instructions below to proceed with your password reset. + +If you did not request this new account you can safely ignore this email. +This request will expire if not acted upon within 30 days. + +Paste the link below into your browser's address bar to reset your password +using our secure server. + +${passwordLink} + +Thank you! + + +<@email subject=subject html=html text=text /> diff --git a/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png b/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png new file mode 100644 index 0000000000000000000000000000000000000000..a9246fc54871035ed3443644e14ec958c204def9 GIT binary patch literal 919 zcmV;I18Dq-P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf11w2IK~!i%<(bb* z+h7>SzqV3;q>hP~3KP+J@*wC*7)->Ycn}m7@elCgO~ik|g9q^+5Mc*Tf?o6>;zjT* zg0O)wRt4Ege`wmOHBFZ9+q_$*ZNctMg7|@lJb8X4U*9B6ZQXakLKPZqJ8J90Y~KPj zBPU{}W#LXQz&c$N`+oE8(>krZeitc z{~=_LS11!~-rYG~3B$fje?+6sp1pzt1CI9`caA;mb@O!g|Da58sHq8G?YEtHXD5`GvM=q7F-KU-9`FN(DDhOo%Oq(s*A|Kw@?liK(fw2V;ym*05II z@3L0TR7JUSsF~>8+_P1r0Qo?YTQ~09(>!N!rb?6v=E>O|Ccv(r1i0;rs9(5KjdcE-uhKJdC!L6|^57 zqAQ!lNBiE49Umiha3Flfm}3oV+2bXi3Xb&jp#A6w@0XX+JTii?rir+jPQ!A(1~SGR zYgo%3FY)}6E{B=Pz*6{?? + +<#-- Template for setting the account reference field, which can also associate a profile with the user account --> + +<#assign strings = i18n() /> + +
    +

    ${strings.who_can_edit_profile}

    + + + + + +

    +   +

    +

    ${myAccountUri}

    +

    ${strings.selected_editors}:

    + + <#-- Magic ul that holds all of the proxy data and the template that shows how to display it. --> +
      + <#list proxies as proxy> +
      +

      ${proxy.uri}

      +

      ${proxy.label}

      +

      ${proxy.classLabel}

      +

      ${proxy.imageUrl}

      +
      + + + <#-- + Each proxy will be shown using the HTML inside this div. + It must contain at least: + -- a link with templatePart="remove" + -- a hidden input field with templatePart="uriField" + --> +
      +
    • + %label% + +

      %label% | %classLabel% +
      + ${strings.remove_selection} + + +

      +
    • +
      +
    +
    + + + +${stylesheets.add('', + '')} + +${scripts.add('', + '', + '', + '')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl new file mode 100644 index 0000000..996dd69 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl @@ -0,0 +1,60 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Contact form --> + +
    +

    ${title!}

    + + <#if errorMessage?has_content> +
    +

    ${errorMessage}

    +
    + + +

    ${i18n().interest_thanks(siteName)}

    + +
    + + + + + + + + + + + + + + + + +

    + +

    + +
    +
    +
    + +

    * ${i18n().required_fields}

    +
    +
    + + +${stylesheets.add('', + '')} +${scripts.add('', + '', + '')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl new file mode 100644 index 0000000..d4a510d --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl @@ -0,0 +1,65 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Menu management page (uses individual display mechanism) --> + +<#include "individual-setup.ftl"> + +<#assign hasElement = propertyGroups.pullProperty("${namespaces.display}hasElement")!> +<#assign returnURL = "/vivo/individual?uri=http%3A%2F%2Fvitro.mannlib.cornell.edu%2Fontologies%2Fdisplay%2F1.1%23DefaultMenu&switchToDisplayModel=true" /> + +<#if hasElement?has_content> + + +

    ${i18n().menu_ordering}

    + + <#-- List the menu items --> + + + <#-- Link to add a new menu item --> + <#if editable> +
    + + + + + + + <#if verbosePropertySwitch.url?contains("pageManagement")> + ${i18n().or} + Return to Page Management + + +
    +
    +

    ${i18n().refresh_page_after_reordering}

    + + + ${stylesheets.add('', + '')} + + ${headScripts.add('')} + + <#assign positionPredicate = "${namespaces.display}menuPosition" /> + + + + ${scripts.add('')} +<#else> +

    ${i18n().display_has_element_error}

    + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl new file mode 100644 index 0000000..4cbc5d8 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl @@ -0,0 +1,114 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#import "lib-microformats.ftl" as mf> + +<#--Number of labels present--> +<#if !labelCount??> + <#assign labelCount = 0 > + +<#--Number of available locales--> +<#if !localesCount??> + <#assign localesCount = 1> + +<#--Number of distinct languages represented, with no language tag counting as a language, across labels--> +<#if !languageCount??> + <#assign languageCount = 1> + + +<#-- Default individual profile page template --> +<#--@dumpAll /--> +<#include "individual-adminPanel.ftl"> +
    > + +
    + <#-- Image --> + <#assign individualImage> + <@p.image individual=individual + propertyGroups=propertyGroups + namespaces=namespaces + editable=editable + showPlaceholder="with_add_link" /> + + + <#if ( individualImage?contains(' + <#assign infoClass = 'class="withThumb"'/> + +
    ${individualImage}
    +
    + +
    + + <#if individualProductExtensionPreHeader??> + ${individualProductExtensionPreHeader} + + +
    + <#if relatedSubject??> +

    ${relatedSubject.relatingPredicateDomainPublic} for ${relatedSubject.name}

    +

    ← ${i18n().return_to(relatedSubject.name)}

    + <#else> +

    + <#-- Label --> + <@p.label individual editable labelCount localesCount languageCount/> + + <#-- Most-specific types --> + <@p.mostSpecificTypes individual /> + uri icon +

    + +
    + + <#if individualProductExtension??> + ${individualProductExtension} + <#else> +
    +
    + + +<#assign nameForOtherGroup = "${i18n().other}"> + + +<#-- + With release 1.6 there are now two types of property group displays: the original property group + menu and the horizontal tab display, which is the default. If you prefer to use the property + group menu, simply substitute the include statement below with the one that appears after this + comment section. + + <#include "individual-property-group-menus.ftl"> +--> + +<#include "individual-property-group-tabs.ftl"> + +<#assign rdfUrl = individual.rdfUrl> + +<#if rdfUrl??> + + + + +${stylesheets.add('', + '')} + +${headScripts.add('', + '')} + +${scripts.add('', + '', + '')} + + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl new file mode 100644 index 0000000..608c185 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl @@ -0,0 +1,110 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#include "manageLabelsForIndividualTerms.ftl" > +<#-- Custom form for managing labels for individuals --> +<#--This is used both for editing and for viewLabelsServlet--> +<#import "manageLabelsForIndividualMacros.ftl" as m > +<#assign requiredHint = " *" /> +<#assign subjectUri = editConfiguration.subjectUri/> +<#assign labelStr = "" > +<#assign languageTag = "" > +<#assign labelSeq = [] > +<#assign submissionErrorsExist = "false"/> +<#assign selectLocalesFullList = {} /> +<#assign editable = false/> +<#if editConfiguration.pageData.editable?has_content> + <#assign editable = editConfiguration.pageData.editable /> + +<#assign displayRemoveLink = true/> +<#if editConfiguration.pageData.displayRemoveLink?has_content> + <#assign displayRemoveLink = editConfiguration.pageData.displayRemoveLink/> + +<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> + <#assign submissionErrors = editSubmission.validationErrors/> + <#assign submissionErrorsExist = "true" /> + +<#assign availableLocalesNumber = 0/> +<#if editConfiguration.pageData.selectLocale?has_content> + <#assign availableLocalesNumber = editConfiguration.pageData.selectLocale?size /> + +<#if editConfiguration.pageData.subjectName?? > +

    ${i18n().manage_labels_for} ${editConfiguration.pageData.subjectName}

    +<#else> +

    ${i18n().manage_labels_capitalized}

    + + + + +

    ${i18n().manage_labels_intro}

    + + +
    + + + +
      + <#if editConfiguration.pageData.labelsSortedByLanguageName?has_content> + <#--List of labelInformation objects as value where key = language name --> + <#assign labelsSorted = editConfiguration.pageData.labelsSortedByLanguageName /> + <#--Keys would be the actual names of languages--> + <#assign labelLanguages = labelsSorted?keys?sort /> + <#assign editGenerator = "editForm=edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.RDFSLabelGenerator" /> + + <#--What we need here is printing out the labels by the language Name and not language code, starting with untyped first--> + <@m.displayExistingLabelsForLanguage "untyped" labelsSorted editable editGenerator/> + <@m.displayExistingTypedLabels labelLanguages labelsSorted editable editGenerator/> + + +
    + +
    +

    + + <#if editable> + <#include "manageLabelsForIndividualSubmissionErrors.ftl"> +

    + ${i18n().or} + ${returnText} +
    + + <#include "manageLabelsForIndividualAddForm.ftl" > + + +

    +
    + + + + +${stylesheets.add('')} + +${scripts.add('', + '', + '')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl new file mode 100644 index 0000000..cf718c9 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl @@ -0,0 +1,204 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Template for displaying list of user accounts --> + +

    ${i18n().manage_profile_editing}

    + +<#if message??> + + + + + +
    +

    ${i18n().relate_editors_profiles} ${i18n().info_icon}

    + +
    +
    + ${i18n().select_editors} + +
    + + +

     

    + + <#-- Magic div that holds all of the proxy data and the template that shows how to display it. --> +
      + <#-- + Each proxy will be shown using the HTML inside this div. + It must contain at least: + -- a link with templatePart="remove" + -- a hidden input field with templatePart="uriField" + --> +
      +
    • + %label% + +

      + %label% | %classLabel% +
      + ${i18n().remove_selection} + +

      +
    • +
      +
    +
    +
    + +
    + ${i18n().select_profiles} + +
    + + + +

     

    + + <#-- Magic div thst holds all of the proxy data and the template that shows how to display it. --> +
      + <#-- + Each proxy will be shown using the HTML inside this element. + It must contain at least: + -- a link with templatePart="remove" + -- a hidden input field with templatePart="uriField" + --> +
      +
    • + %label% + +

      %label% | %classLabel% +
      ${i18n().remove_selection} +

      + + +
    • +
      +
    +
    +
    + + +
    +
    + + +

    ${i18n().profile_editors}

    + +
    +
    + + + <#if page.previous??> + | ${i18n().previous} + + + <#if page.last != 0> + ${page.current} of ${page.last} + + + <#if page.next??> + ${i18n().next_capitalized} + + + <#if searchTerm?has_content> +

    ${i18n().search_results_for} '${searchTerm}' | ${i18n().view_profile_editors}

    + +
    +
    + +<#list relationships as r> +
    +
    +
    + <#assign p = r.proxyInfos[0]> +
    + ${p.label} + +

    + ${p.label} | ${p.classLabel} +
    + ${i18n().delete_profile_editor} + +

    +
    +
    + +
    + ${i18n().add_profile} + +
    + + + +

     

    +

    ${r.proxyInfos[0].profileUri}

    +

    ${i18n().selected_profiles}:

    + + <#-- Magic div that holds all of the proxy data and the template that shows how to display it. --> +
      + <#list r.profileInfos as p> +
      +

      ${p.uri}

      +

      ${p.label}

      +

      ${p.classLabel}

      +

      ${p.imageUrl}

      +
      + + + <#-- + Each proxy will be shown using the HTML inside this element. + It must contain at least: + -- a link with templatePart="remove" + -- a hidden input field with templatePart="uriField" + --> +
      +
    • + %label% + +

      %label% | %classLabel% +
      ${i18n().remove_selection} +

      +
    • + + +
      +
    +
    + + +
    +
    +
    + + + + +${stylesheets.add('')} +${stylesheets.add('')} +${stylesheets.add('')} +${stylesheets.add('')} + +${scripts.add('')} +${scripts.add('', + '', + '')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl new file mode 100644 index 0000000..1732f11 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl @@ -0,0 +1,10 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +
    +

    ${i18n().page_not_configured}

    + +

    ${i18n().implement_capitalized} ${i18n().a_link} ${i18n().configure_page_if_permissable}

    + + + +
    diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl new file mode 100644 index 0000000..3b3dcdf --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl @@ -0,0 +1,17 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#include "menupage-checkForData.ftl"> + +<#if !noData> + + + <#include "menupage-browse.ftl"> + + ${stylesheets.add('')} + + <#include "menupage-scripts.ftl"> +<#else> + ${noDataNotification} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl new file mode 100644 index 0000000..1df32a5 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl @@ -0,0 +1,15 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#--Save to variable indicated in generator --> + +<#assign htmlExists = false/> +<#if variableName?has_content> + <#assign htmlExists = true /> + +<#if htmlExists> + ${.globals[variableName]} +<#else> + ${i18n().no_html_specified} + + + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl new file mode 100644 index 0000000..0dfe78c --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl @@ -0,0 +1,53 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- List individuals in the requested class. --> + +<#import "lib-list.ftl" as l> + +<#include "individualList-checkForData.ftl"> + +${stylesheets.add('')} + +
    +

    ${title!} +

    + <#if subtitle?has_content> +

    ${subtitle}

    + + + <#if (!noData)> + <#if errorMessage?has_content> +

    ${errorMessage}

    + <#else> + <#assign pagination> + <#if (pages?has_content && pages?size > 1)> + ${i18n().pages}: +
      + <#list pages as page> + <#if page.selected> +
    • ${page.text}
    • + <#else> + <#-- RY Ideally the urls would be generated by the controller; see search-pagedResults.ftl --> +
    • ${page.text}
    • + + +
    + + + + ${pagination} + +
      + <#list individuals as individual> +
    • + <@shortView uri=individual.uri viewContext="index" /> +
    • + +
    + + ${pagination} + + <#else> + ${noDataNotification} + +
    diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl new file mode 100644 index 0000000..e58a5e9 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl @@ -0,0 +1,38 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#--Save to variable is sparqlResults --> +<#assign resultsExist = false/> +<#if variableName?has_content> + <#assign resultsExist = true/> + <#--This will retrieve the results stored in the variable name being returned from the sparql query. + For example, if "results" was specified as the variable storing the sparql results, the value + of "results" will not be assigned to "sparqlResults" below. --> + <#assign sparqlResults = .globals[variableName]/> + + +

    ${i18n().sparql_query_results}

    +<#if resultsExist> + <#assign numberRows = sparqlResults?size/> + <#assign firstRow = false/> + <#list sparqlResults as resultRow> + <#assign resultKeys = resultRow?keys /> + <#if firstRow = false> +
    + <#list resultKeys as resultKey> +
    ${resultKey}
    + +
    + <#assign firstRow = true/> + +
    + <#list resultKeys as resultKey> +
    ${resultRow[resultKey]}
    + +
    + +<#else> + ${i18n().no_results_returned} + + +${stylesheets.add('')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl new file mode 100644 index 0000000..1877366 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl @@ -0,0 +1,85 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--This is an example of including multiple content types in the same template, + this combines the default templates for Fixed HTML, Class groups and Search Individuals in one template--> +<#include "menupage-checkForData.ftl"> +<#--Fixed HTML portion--> +<#--Note that variableName is employed by both the fixed html and sparql query templates, this is used to store the +actual name of the variable that is used to store either the fixed html or sparql query results. If combining fixed html +and sparql query results in a custom template, the template can utilize the actual variable name e.g. "query results" instead of how +variableName is used below.--> +<#assign htmlExists = false/> + +<#if variableName?has_content> + <#assign htmlExists = true /> + +<#if htmlExists> + ${.globals[variableName]} +<#else> + ${i18n().no_html_specified} + + +<#--Class grou section--> +<#if !noData> + + + <#include "menupage-browse.ftl"> + + ${stylesheets.add('')} + + <#include "menupage-scripts.ftl"> +<#else> + ${noDataNotification} + + +<#--Search Individuals section--> +<#import "lib-list.ftl" as l> + +<#include "individualList-checkForData.ftl"> + +${stylesheets.add('')} + +
    +

    ${title!} +

    + <#if subtitle?has_content> +

    ${subtitle}

    + + + <#if (!noData)> + <#if errorMessage?has_content> +

    ${errorMessage}

    + <#else> + <#assign pagination> + <#if (pages?has_content && pages?size > 1)> + ${i18n().pages}: +
      + <#list pages as page> + <#if page.selected> +
    • ${page.text}
    • + <#else> + <#-- RY Ideally the urls would be generated by the controller; see search-pagedResults.ftl --> +
    • ${page.text}
    • + + +
    + + + + ${pagination} + +
      + <#list individuals as individual> +
    • + <@shortView uri=individual.uri viewContext="index" /> +
    • + +
    + + ${pagination} + + <#else> + ${noDataNotification} + +
    diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl new file mode 100644 index 0000000..3b3dcdf --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl @@ -0,0 +1,17 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#include "menupage-checkForData.ftl"> + +<#if !noData> + + + <#include "menupage-browse.ftl"> + + ${stylesheets.add('')} + + <#include "menupage-scripts.ftl"> +<#else> + ${noDataNotification} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl new file mode 100644 index 0000000..55ac458 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl @@ -0,0 +1,34 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#import "lib-generator-classes.ftl" as generators /> + +
    + +<#if pages?has_content > + + + + <#list pages as pagex> + + + <#if pagex.pageUri??> + + <#else> + + + + +
    ${i18n().title_capitalized}URI
    ${(pagex.title)!i18n().untitled}${pagex.pageUri}${i18n().uri_not_defined}
    + +<#else> +

    ${i18n().no_pages_defined}

    + + +
    + + + + +
    + +
    diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl new file mode 100644 index 0000000..11b4ed0 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl @@ -0,0 +1,7 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Standard template to display a message with a title generated from any controller. Keeps this out of individual templates. --> + +

    ${title!}

    + +<#include "message.ftl"> diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl new file mode 100644 index 0000000..6750875 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl @@ -0,0 +1,7 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Standard template to display a message generated from any controller. Keeps this out of individual templates. --> + +<#if message??> +

    ${message}

    + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl new file mode 100644 index 0000000..a26ca1f --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl @@ -0,0 +1,89 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +
    +
    +

    ${i18n().page_management}

    +
    + + +<#if pages?has_content > + + + + + + + + + + + + + + + <#list pages as pagex> + + + + + + + + + + + + +
    ${i18n().page_management}
    ${i18n().title_capitalized}URL${i18n().custom_template}${i18n().menu_page}${i18n().controls}
    + <#if pagex.listedPageUri?has_content> + <#if pagex.listedPageTitle == "Home" > + ${pagex.listedPageTitle!} + <#else> + ${(pagex.listedPageTitle)!i18n().untitled} + + + <#else> + ${i18n().uri_not_defined} + + ${pagex.listedPageUrlMapping}${(pagex.listedPageTemplate)!''} + <#if pagex.listedPageMenuItem?has_content> + + + + ${i18n().edit_page} +    + ${i18n().view_profile_for_page} +    + <#if !pagex.listedPageCannotDeletePage?has_content > + ${i18n().delete_page} + +
    + +<#else> +

    ${i18n().no_pages_defined}

    + + +
    + + + + +
    +
    +

    ${i18n().use_capitalized} ${i18n().menu_orering} ${i18n().to_order_menu_items}

    +
    + + +${stylesheets.add('', + '')} + +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} + + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl new file mode 100644 index 0000000..5428b40 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl @@ -0,0 +1,64 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +
    + <#if propertyName?? > +

    Classes with a restriction on ${propertyName!}

    +
    + <#else> +

    ${pageTitle!}

    + + <#if !displayOption?has_content> + <#assign displayOption = "asserted"> + +
    + + + + <#if displayOption == "group"> + + +
    + + <#if displayOption == "group"> + + <#else> + + + +
    + <#if propertyName?? && !jsonTree?? > + ${i18n().no_class_restrictions} + +
    + + + + + +${stylesheets.add('')} + +${scripts.add('', + '')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl new file mode 100644 index 0000000..7cf844b --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl @@ -0,0 +1,78 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- + Used to display both the object and data property hierarchies, though there are + separate controllers for those. Also used to display lists of "all" object and + data properties, though there are separate controllers for those, too. + --> + <#if propertyType??> + <#assign propType = propertyType> +<#else> + <#assign propType = "group"> + + + +
    + +

    ${pageTitle!}

    + + <#if !displayOption?has_content> + <#assign displayOption = "hierarchy"> + + + <#if propType == "group"> +
    + + +
    + + <#else> +
    Object<#else>DataPropertyHierarchy" method="post" role="classHierarchy"> + + + ${i18n().object}<#else>${i18n().data} ${i18n().property}"/> +
    + + + +
    +
    + +
    + + + + + + +${stylesheets.add('')} + +${scripts.add('', + '')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl new file mode 100644 index 0000000..6b0894f --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl @@ -0,0 +1,105 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#--If edit submission exists, then retrieve validation errors if they exist--> +<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> + <#assign submissionErrors = editSubmission.validationErrors/> + + + +

    ${editConfiguration.formTitle}

    + +<#--Display error messages if any--> +<#if submissionErrors?has_content> + + + +<#assign literalValues = "${editConfiguration.dataLiteralValuesAsString}" /> +<#assign datatype = editConfiguration.dataPredicateProperty.rangeDatatypeURI!"none" /> + +
    + + <#if editConfiguration.dataPredicatePublicDescription?has_content> + + + + <#if "HTML" == editConfiguration.dataPredicateProperty.editing!> + + + <#elseif datatype = "http://www.w3.org/2001/XMLSchema#integer" || datatype = "http://www.w3.org/2001/XMLSchema#int"> + + + <#elseif datatype = "http://www.w3.org/2001/XMLSchema#float"> + + + <#elseif datatype = "http://www.w3.org/2001/XMLSchema#boolean"> + + + <#elseif datatype = "http://www.w3.org/2001/XMLSchema#anyURI"> + + + <#elseif datatype = "http://www.w3.org/2001/XMLSchema#dateTime" || + datatype = "http://www.w3.org/2001/XMLSchema#date" || + datatype = "http://www.w3.org/2001/XMLSchema#time" || + datatype = "http://www.w3.org/2001/XMLSchema#gYearMonth" || + datatype = "http://www.w3.org/2001/XMLSchema#gYear" || + datatype = "http://www.w3.org/2001/XMLSchema#gMonth" > + <#include "dateTimeEntryForm.ftl"> + + <#else> + + + + +
    + <#--The submit label should be set within the template itself, right now + the default label for default data/object property editing is returned from Edit Configuration Template Model, + but that method may not return the correct result for other custom forms--> + + or + ${i18n().cancel_link} + +
    + +<#if editConfiguration.includeDeletionForm = true> +<#include "defaultDeletePropertyForm.ftl"> + + + + +<#include "defaultFormScripts.ftl"> + +${stylesheets.add('')} + +${scripts.add('', + '')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl new file mode 100644 index 0000000..2f7da20 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl @@ -0,0 +1,115 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#--Template for adding and editing menu items --> + +<#-- some additional processing here which shows or hides the class group selection and classes based on initial action--> +<#assign existingClassGroupStyle = " " /> +<#assign selectClassGroupStyle = 'class="hidden"' /> +<#-- Reveal the class group and hide the class selects if adding a new menu item or editing an existing menu item with an empty class group (no classes)--> +<#if menuAction == "Add" || !classGroup?has_content> + <#assign existingClassGroupStyle = 'class="hidden"' /> + <#assign selectClassGroupStyle = " " /> + + + +

    ${menuAction} ${i18n().menu_item}

    + +
    +
    + + + + + + + + + +

    ${i18n().start_with_leading_slash}

    + +

    ${i18n().template_capitalized} *

    + + checked role="radio" /> + +
    + checked role="input" /> + + +
    class="hidden" role="region"> + * +
    + +
    +

    ${i18n().selected_page_content_type}

    +

    + ${associatedPage!} + ${i18n().change_content_type} +

    +
    + + <#-- Select class group --> +
    + + + +
    + +
    + <#-- Select classes in a class group --> +

    ${i18n().select_content_display} *

    + + <#include "menuManagement--classIntersections.ftl"> + + +
    + + ${i18n().or} ${i18n().cancel_link} + +

    * ${i18n().required_fields}

    +
    +
    + +${stylesheets.add('')} +${stylesheets.add('')} + +${scripts.add('')} +${scripts.add('')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl new file mode 100644 index 0000000..2e07d60 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl @@ -0,0 +1,69 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--Browse Class Groups Section--> +<#-----------Variable assignment--------------> +<#--Requires Menu action be defined in parent template--> + +<#assign classGroup = pageData.classGroup /> +<#assign classGroups = pageData.classGroups /> +<#-- some additional processing here which shows or hides the class group selection and classes based on initial action--> +<#assign existingClassGroupStyle = " " /> +<#assign selectClassGroupStyle = 'class="hidden"' /> +<#-- Reveal the class group and hide the class selects if adding a new menu item or editing an existing menu item with an empty class group (no classes)--> +<#-- Menu action needs to be sent from main template--> +<#if menuAction == "Add" || !classGroup?has_content> + <#assign existingClassGroupStyle = 'class="hidden"' /> + <#assign selectClassGroupStyle = " " /> + + + +<#--HTML Portion--> +
    + +
    + + + +
    + + +
    + <#-- Select classes in a class group --> +

    ${i18n().select_content_display} *

    + + <#include "pageManagement--classIntersections.ftl"> + +
    + + <#if menuAction == "Add"> + ${i18n().or} ${i18n().cancel_link} + +
    +
    + + <#--Include JavaScript specific to the types of data getters related to this content--> + <#include "pageManagement--browseClassGroupsScripts.ftl"> diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl new file mode 100644 index 0000000..a31a937 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl @@ -0,0 +1,23 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--This contains the template for the fixed HTML content type that is to be cloned and used in page management--> + +
    + + + +
    + + <#if menuAction == "Add"> + ${i18n().or} ${i18n().cancel_link} + +
    + +${scripts.add('')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl new file mode 100644 index 0000000..b92b015 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl @@ -0,0 +1,33 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--This contains the template for the Search Index class individuals content type that is to be cloned and used in page management--> +<#assign classGroup = pageData.classGroup /> +<#assign classGroups = pageData.classGroups /> +<#assign classes = pageData.classes /> +
    + + + +
    + +
    + + <#if menuAction == "Add"> + or ${i18n().cancel_link} + +
    + +${scripts.add('')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl new file mode 100644 index 0000000..472eb55 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl @@ -0,0 +1,25 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--This contains the template for the Sparql Query content type that is to be cloned and used in page management--> +
    + + + <#--Hiding query model for now--> + <#-- --> + + +
    + + <#if menuAction == "Add"> + or ${i18n().cancel_link} + +
    + +${scripts.add('')} diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl new file mode 100644 index 0000000..c62ad86 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl @@ -0,0 +1,209 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#import "lib-vitro-form.ftl" as lvf> + +<#--------Set up variables--------> +<#assign pageData = editConfiguration.pageData /> +<#assign menuAction = pageData.menuAction /> +<#assign pageAvailablePermissions = pageData.availablePermissions /> +<#assign pageAvailablePermissionsURIsList = pageData.availablePermissionOrderedList /> + +<#assign pageName = "" /> +<#assign selectedTemplateType = "default" /> +<#assign prettyUrl = ""/> +<#assign menuItem = ""/> +<#assign menuLinkText = "" /> +<#assign action = "" /> +<#assign menuPosition = pageData.highestMenuPosition /> +<#assign addMenuItem = "" /> +<#assign pageHeading = "${i18n().add_new_page}" /> +<#assign saveBtnText = "${i18n().save_new_page}" /> +<#if pageData.addMenuItem?has_content> + <#assign addMenuItem = pageData.addMenuItem /> + +<#--Existing Values For Editing condition--> +<#assign literalValues = editConfiguration.existingLiteralValues /> +<#assign uriValues = editConfiguration.existingUriValues /> +<#if menuAction = "Edit"> + <#assign pageName = lvf.getFormFieldValue(editSubmission, editConfiguration, "pageName")/> + <#assign prettyUrl = lvf.getFormFieldValue(editSubmission, editConfiguration, "prettyUrl")/> + <#assign menuItem = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuItem")/> + <#assign menuLinkText = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuLinkText")/> + <#assign customTemplate = lvf.getFormFieldValue(editSubmission, editConfiguration, "customTemplate")/> + <#assign selfContainedTemplate = lvf.getFormFieldValue(editSubmission, editConfiguration, "isSelfContainedTemplate")/> + <#assign action = lvf.getFormFieldValue(editSubmission, editConfiguration, "action")/> + + <#assign pageHeading = "${i18n().edit_page(pageName)}" /> + <#assign saveBtnText = "${i18n().save_changes}" /> + <#if customTemplate?has_content> + <#if selfContainedTemplate?has_content> + <#assign selectedTemplateType = "selfContained" /> + <#else> + <#assign selectedTemplateType = "custom" /> + + + <#assign editMenuPosition = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuPosition")/> + <#--if menu position exists for a menu item, then use that, otherwise use the highest available menu position number from page data--> + <#if editMenuPosition?has_content && editMenuPosition != ""> + <#assign menuPosition = editMenuPosition/> + + +<#--If edit submission exists, then retrieve validation errors if they exist--> +<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> + <#assign submissionErrors = editSubmission.validationErrors/> + + +<#------------HTML Portion-------------> + + +<#--class group section has associated page uri, but that depends on editing a current page or if one is selected later--> +
    + <#--form method="POST" action="${formUrls}" role="${menuAction} menu item"--> +
    + + +

    ${pageHeading}

    + +
    +
    style="display:none;"> +
    + +  ${i18n().add_types} +
    +
    +
    +
    + + <#--This include file contains links to the templates that will be cloned and used for the different content types--> + + <#include "pageManagement--contentTemplates.ftl"> +
    +
    + +
    +
    + + + + +

    ${i18n().begin_with_slash_no_example}
    ${i18n().slash_example}

    +

    ${i18n().template_capitalized} *

    + checked="checked" role="radio" /> + +
    + checked="checked" role="input" /> + +
    + checked="checked" role="input" /> +
    +
    class="hidden" role="region"> + * + +
    + + +
    +
    + + + +
    +
    +
    +
    +
    + or + ${i18n().cancel_link} +
    +

    * ${i18n().required_fields}

    +
    + + + + +
    +
    + + + +<#include "pageManagement--customDataScript.ftl"> + + +${stylesheets.add('')} +${stylesheets.add('')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} +<#--Process Data Getter Utils will refer to the various content type specific javascript files that should +already have been added within the template section for each content type--> +${scripts.add('')} +<#--Page management is used on page load and utilizes processDataGetterUtils as well as the custom data from the custom data script--> +${scripts.add('')} + diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl new file mode 100644 index 0000000..a7ab7cf --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl @@ -0,0 +1,18 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Template for scripts that must be loaded in the head --> + + + + + +<#-- script for enabling new HTML5 semantic markup in IE browsers --> + + +${headScripts.list()} diff --git a/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl new file mode 100644 index 0000000..42d1fb6 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl @@ -0,0 +1,73 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<@widget name="login" include="assets" /> +<#import "lib-home-page.ftl" as lh> + + + + + + <#include "head.ftl"> + + + + + <#include "menu.ftl"> + +
    +
    +

    ${i18n().what_is_vitro}

    + +

    ${i18n().vitro_description}

    +

    ${i18n().with_vitro}

    + +
      +
    • ${i18n().vitro_bullet_one}
    • +
    • ${i18n().vitro_bullet_two}
    • +
    • ${i18n().vitro_bullet_three}
    • +
    • ${i18n().vitro_bullet_four}
    • +
    + +
    +

    ${i18n().search_vitro} filteredSearch

    + +
    + ${i18n().search_form} + +
    +
    + +
    + + <@widget name="login" /> + + + <@lh.allClassGroups vClassGroups! /> +
    + + <#include "footer.ftl"> + + + \ No newline at end of file diff --git a/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl b/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl new file mode 100644 index 0000000..c6e7f69 --- /dev/null +++ b/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl @@ -0,0 +1,26 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#import "lib-list.ftl" as l> + + + + + + + + <#include "head.ftl"> + + + + + <#include "menu.ftl"> + +
    + ${body} +
    + <#include "footer.ftl"> + + \ No newline at end of file From a4cb6f67b4e41f50f09836e4fe56224d3b3ab879 Mon Sep 17 00:00:00 2001 From: michelheonuqam Date: Wed, 1 Apr 2020 15:54:28 -0400 Subject: [PATCH 02/28] Distribution of languages in different directories --- README.md => core/README.md | 0 core/pom.xml | 223 ++++++++++++++++++ update-versions.sh => core/update-versions.sh | 0 .../vivo-rc-script-languages.sh | 0 {webapp => core/webapp}/pom.xml | 4 +- de_DE/.gitignore | 21 ++ de_DE/README.md | 25 ++ de_DE/pom.xml | 223 ++++++++++++++++++ de_DE/update-versions.sh | 12 + de_DE/vivo-rc-script-languages.sh | 21 ++ de_DE/webapp/pom.xml | 47 ++++ .../src/main/webapp/i18n/all_de_DE.properties | 0 .../freemarker/search-help_de_DE.ftl | 0 .../templates/freemarker/termsOfUse_de_DE.ftl | 0 .../userAccounts-acctCreatedEmail_de_DE.ftl | 0 ...nts-acctCreatedExternalOnlyEmail_de_DE.ftl | 0 ...ccounts-confirmEmailChangedEmail_de_DE.ftl | 0 ...rAccounts-firstTimeExternalEmail_de_DE.ftl | 0 ...serAccounts-passwordCreatedEmail_de_DE.ftl | 0 ...ounts-passwordResetCompleteEmail_de_DE.ftl | 0 ...counts-passwordResetPendingEmail_de_DE.ftl | 0 en_US/README.md | 25 ++ en_US/pom.xml | 223 ++++++++++++++++++ en_US/update-versions.sh | 12 + en_US/vivo-rc-script-languages.sh | 21 ++ en_US/webapp/pom.xml | 47 ++++ .../src/main/webapp/i18n/all_en_US.properties | 0 .../freemarker/search-help_en_US.ftl | 0 .../templates/freemarker/termsOfUse_en_US.ftl | 0 .../userAccounts-acctCreatedEmail_en_US.ftl | 0 ...nts-acctCreatedExternalOnlyEmail_en_US.ftl | 0 ...ccounts-confirmEmailChangedEmail_en_US.ftl | 0 ...rAccounts-firstTimeExternalEmail_en_US.ftl | 0 ...serAccounts-passwordCreatedEmail_en_US.ftl | 0 ...ounts-passwordResetCompleteEmail_en_US.ftl | 0 ...counts-passwordResetPendingEmail_en_US.ftl | 0 .../vitro/i18n/images/select_locale_en_US.gif | Bin es/README.md | 25 ++ es/pom.xml | 218 +++++++++++++++++ es/update-versions.sh | 12 + es/vivo-rc-script-languages.sh | 21 ++ es/webapp/pom.xml | 47 ++++ .../src/main/webapp/i18n/all_es.properties | 0 .../templates/freemarker/search-help_es.ftl | 0 .../templates/freemarker/termsOfUse_es.ftl | 0 .../userAccounts-acctCreatedEmail_es.ftl | 0 ...counts-acctCreatedExternalOnlyEmail_es.ftl | 0 ...erAccounts-confirmEmailChangedEmail_es.ftl | 0 ...userAccounts-firstTimeExternalEmail_es.ftl | 0 .../userAccounts-passwordCreatedEmail_es.ftl | 0 ...Accounts-passwordResetCompleteEmail_es.ftl | 0 ...rAccounts-passwordResetPendingEmail_es.ftl | 0 .../vitro/i18n/images/select_locale_es.png | Bin fr_CA/README.md | 25 ++ fr_CA/pom.xml | 212 +++++++++++++++++ fr_CA/update-versions.sh | 12 + fr_CA/vivo-rc-script-languages.sh | 21 ++ fr_CA/webapp/pom.xml | 47 ++++ .../src/main/webapp/i18n/all_fr_CA.properties | 0 .../freemarker/lib/lib-properties_fr_CA.ftl | 0 .../freemarker/search-help_fr_CA.ftl | 0 .../templates/freemarker/termsOfUse_fr_CA.ftl | 0 .../userAccounts-acctCreatedEmail_fr_CA.ftl | 0 ...nts-acctCreatedExternalOnlyEmail_fr_CA.ftl | 0 ...ccounts-confirmEmailChangedEmail_fr_CA.ftl | 0 ...rAccounts-firstTimeExternalEmail_fr_CA.ftl | 0 ...serAccounts-passwordCreatedEmail_fr_CA.ftl | 0 ...ounts-passwordResetCompleteEmail_fr_CA.ftl | 0 ...counts-passwordResetPendingEmail_fr_CA.ftl | 0 .../vitro/i18n/images/select_locale_fr_CA.png | Bin .../userAccounts-myProxiesPanel_fr_CA.ftl | 0 .../contactForm/contactForm-form_fr_CA.ftl | 0 .../body/individual/individual-menu_fr_CA.ftl | 0 .../individual/individual-vitro_fr_CA.ftl | 0 .../manageLabelsForIndividual_fr_CA.ftl | 0 .../manageProxies-list_fr_CA.ftl | 0 .../body/menupage/emptyPage_fr_CA.ftl | 0 .../individualsForClassesMenuPage_fr_CA.ftl | 0 .../menupage--defaultFixedHtml_fr_CA.ftl | 0 ...nupage--defaultSearchIndividuals_fr_CA.ftl | 0 .../menupage--defaultSparql_fr_CA.ftl | 0 ...age--exampleMultipleContentTypes_fr_CA.ftl | 0 .../body/menupage/page-classgroup_fr_CA.ftl | 0 .../body/menupage/page-pageList_fr_CA.ftl | 0 .../body/message/message-titled_fr_CA.ftl | 0 .../freemarker/body/message/message_fr_CA.ftl | 0 .../body/pagemanagement/pageList_fr_CA.ftl | 0 .../siteAdmin-classHierarchy_fr_CA.ftl | 0 .../siteAdmin-objectPropHierarchy_fr_CA.ftl | 0 .../forms/defaultDataPropertyForm_fr_CA.ftl | 0 .../edit/forms/menuManagement_fr_CA.ftl | 0 ...ageManagement--browseClassGroups_fr_CA.ftl | 0 .../forms/pageManagement--fixedHtml_fr_CA.ftl | 0 ...ageManagement--searchIndividuals_fr_CA.ftl | 0 .../pageManagement--sparqlQuery_fr_CA.ftl | 0 .../edit/forms/pageManagement_fr_CA.ftl | 0 .../page/partials/headScripts_fr_CA.ftl | 0 .../vitro/templates/page-home_fr_CA.ftl | 0 .../themes/vitro/templates/page_fr_CA.ftl | 0 pom.xml | 17 +- pt_BR/README.md | 25 ++ pt_BR/pom.xml | 210 +++++++++++++++++ pt_BR/update-versions.sh | 12 + pt_BR/vivo-rc-script-languages.sh | 21 ++ pt_BR/webapp/pom.xml | 47 ++++ .../src/main/webapp/i18n/all_pt_BR.properties | 0 .../freemarker/search-help_pt_BR.ftl | 0 .../templates/freemarker/termsOfUse_pt_BR.ftl | 0 .../userAccounts-acctCreatedEmail_pt_BR.ftl | 0 ...nts-acctCreatedExternalOnlyEmail_pt_BR.ftl | 0 ...ccounts-confirmEmailChangedEmail_pt_BR.ftl | 0 ...rAccounts-firstTimeExternalEmail_pt_BR.ftl | 0 ...serAccounts-passwordCreatedEmail_pt_BR.ftl | 0 ...ounts-passwordResetCompleteEmail_pt_BR.ftl | 0 ...counts-passwordResetPendingEmail_pt_BR.ftl | 0 .../vitro/i18n/images/select_locale_pt_BR.gif | Bin 116 files changed, 1870 insertions(+), 6 deletions(-) rename README.md => core/README.md (100%) create mode 100644 core/pom.xml rename update-versions.sh => core/update-versions.sh (100%) rename vivo-rc-script-languages.sh => core/vivo-rc-script-languages.sh (100%) rename {webapp => core/webapp}/pom.xml (93%) create mode 100644 de_DE/.gitignore create mode 100644 de_DE/README.md create mode 100644 de_DE/pom.xml create mode 100644 de_DE/update-versions.sh create mode 100644 de_DE/vivo-rc-script-languages.sh create mode 100644 de_DE/webapp/pom.xml rename {webapp => de_DE/webapp}/src/main/webapp/i18n/all_de_DE.properties (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/search-help_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_de_DE.ftl (100%) rename {webapp => de_DE/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_de_DE.ftl (100%) create mode 100644 en_US/README.md create mode 100644 en_US/pom.xml create mode 100644 en_US/update-versions.sh create mode 100644 en_US/vivo-rc-script-languages.sh create mode 100644 en_US/webapp/pom.xml rename {webapp => en_US/webapp}/src/main/webapp/i18n/all_en_US.properties (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/search-help_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/termsOfUse_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_US.ftl (100%) rename {webapp => en_US/webapp}/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif (100%) create mode 100644 es/README.md create mode 100644 es/pom.xml create mode 100644 es/update-versions.sh create mode 100644 es/vivo-rc-script-languages.sh create mode 100644 es/webapp/pom.xml rename {webapp => es/webapp}/src/main/webapp/i18n/all_es.properties (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/search-help_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/termsOfUse_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_es.ftl (100%) rename {webapp => es/webapp}/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png (100%) create mode 100644 fr_CA/README.md create mode 100644 fr_CA/pom.xml create mode 100644 fr_CA/update-versions.sh create mode 100644 fr_CA/vivo-rc-script-languages.sh create mode 100644 fr_CA/webapp/pom.xml rename {webapp => fr_CA/webapp}/src/main/webapp/i18n/all_fr_CA.properties (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl (100%) rename {webapp => fr_CA/webapp}/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl (100%) create mode 100644 pt_BR/README.md create mode 100644 pt_BR/pom.xml create mode 100644 pt_BR/update-versions.sh create mode 100644 pt_BR/vivo-rc-script-languages.sh create mode 100644 pt_BR/webapp/pom.xml rename {webapp => pt_BR/webapp}/src/main/webapp/i18n/all_pt_BR.properties (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/search-help_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/termsOfUse_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_pt_BR.ftl (100%) rename {webapp => pt_BR/webapp}/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif (100%) diff --git a/README.md b/core/README.md similarity index 100% rename from README.md rename to core/README.md diff --git a/core/pom.xml b/core/pom.xml new file mode 100644 index 0000000..b8199df --- /dev/null +++ b/core/pom.xml @@ -0,0 +1,223 @@ + + + 4.0.0 + + vitro-languages-core + pom + + Vitro Languages CORE + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + webapp + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + org.vivoweb + 1.11.2-SNAPSHOT + diff --git a/update-versions.sh b/core/update-versions.sh similarity index 100% rename from update-versions.sh rename to core/update-versions.sh diff --git a/vivo-rc-script-languages.sh b/core/vivo-rc-script-languages.sh similarity index 100% rename from vivo-rc-script-languages.sh rename to core/vivo-rc-script-languages.sh diff --git a/webapp/pom.xml b/core/webapp/pom.xml similarity index 93% rename from webapp/pom.xml rename to core/webapp/pom.xml index 1688681..ef439f1 100644 --- a/webapp/pom.xml +++ b/core/webapp/pom.xml @@ -9,12 +9,12 @@ org.vivoweb - vitro-languages + vitro-languages-core 1.11.2-SNAPSHOT .. - Vitro Languages for Web App + Vitro Languages for Web App CORE diff --git a/de_DE/.gitignore b/de_DE/.gitignore new file mode 100644 index 0000000..08b9a4b --- /dev/null +++ b/de_DE/.gitignore @@ -0,0 +1,21 @@ +/.build/ +/deploy.properties +/build.properties +/runtime.properties +/ontology/public/catalog-v0001.xml + +rdf/auth/firsttime/test-user-model.owl +utilities/solrtester/.work +utilities/rdbmigration/.work + +**/.idea +**/*.iml +**/target + +**/overlays + +# Eclipse artifacts +**/.settings +**/.classpath +**/.project +**/bin/ diff --git a/de_DE/README.md b/de_DE/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/de_DE/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/de_DE/pom.xml b/de_DE/pom.xml new file mode 100644 index 0000000..3c77e02 --- /dev/null +++ b/de_DE/pom.xml @@ -0,0 +1,223 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-de_DE + 1.11.2-SNAPSHOT + pom + + Vitro Languages de_DE + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + webapp + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + vitro-languages + org.vivoweb + 1.11.2-SNAPSHOT + + diff --git a/de_DE/update-versions.sh b/de_DE/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/de_DE/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/de_DE/vivo-rc-script-languages.sh b/de_DE/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/de_DE/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/de_DE/webapp/pom.xml b/de_DE/webapp/pom.xml new file mode 100644 index 0000000..ded2537 --- /dev/null +++ b/de_DE/webapp/pom.xml @@ -0,0 +1,47 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-de_DE + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-de_DE + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App de_DE + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties similarity index 100% rename from webapp/src/main/webapp/i18n/all_de_DE.properties rename to de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/search-help_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/search-help_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/search-help_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_de_DE.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_de_DE.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_de_DE.ftl rename to de_DE/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_de_DE.ftl diff --git a/en_US/README.md b/en_US/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/en_US/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/en_US/pom.xml b/en_US/pom.xml new file mode 100644 index 0000000..4122708 --- /dev/null +++ b/en_US/pom.xml @@ -0,0 +1,223 @@ + + + 4.0.0 + + vitro-languages-en_US + pom + + Vitro Languages en_US + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + webapp + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + 1.11.2-SNAPSHOT + org.vivoweb + diff --git a/en_US/update-versions.sh b/en_US/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/en_US/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/en_US/vivo-rc-script-languages.sh b/en_US/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/en_US/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/en_US/webapp/pom.xml b/en_US/webapp/pom.xml new file mode 100644 index 0000000..c70451c --- /dev/null +++ b/en_US/webapp/pom.xml @@ -0,0 +1,47 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-en_US + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-en_US + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App en_US + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties similarity index 100% rename from webapp/src/main/webapp/i18n/all_en_US.properties rename to en_US/webapp/src/main/webapp/i18n/all_en_US.properties diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/search-help_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/search-help_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/search-help_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/termsOfUse_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_US.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_US.ftl b/en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_US.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_US.ftl rename to en_US/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_US.ftl diff --git a/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif b/en_US/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif similarity index 100% rename from webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif rename to en_US/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif diff --git a/es/README.md b/es/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/es/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/es/pom.xml b/es/pom.xml new file mode 100644 index 0000000..18ddacd --- /dev/null +++ b/es/pom.xml @@ -0,0 +1,218 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-es + 1.11.2-SNAPSHOT + pom + + Vitro Languages es + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + webapp + + diff --git a/es/update-versions.sh b/es/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/es/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/es/vivo-rc-script-languages.sh b/es/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/es/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/es/webapp/pom.xml b/es/webapp/pom.xml new file mode 100644 index 0000000..401240b --- /dev/null +++ b/es/webapp/pom.xml @@ -0,0 +1,47 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-es + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-es + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App es + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties similarity index 100% rename from webapp/src/main/webapp/i18n/all_es.properties rename to es/webapp/src/main/webapp/i18n/all_es.properties diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/search-help_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/search-help_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/search-help_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/termsOfUse_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/termsOfUse_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/termsOfUse_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_es.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_es.ftl b/es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_es.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_es.ftl rename to es/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_es.ftl diff --git a/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png b/es/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png similarity index 100% rename from webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png rename to es/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png diff --git a/fr_CA/README.md b/fr_CA/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/fr_CA/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/fr_CA/pom.xml b/fr_CA/pom.xml new file mode 100644 index 0000000..8392481 --- /dev/null +++ b/fr_CA/pom.xml @@ -0,0 +1,212 @@ + + + 4.0.0 + + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + + + org.vivoweb + vitro-languages-fr_CA + 1.11.2-SNAPSHOT + pom + + Vitro Languages fr_CA + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + webapp + + diff --git a/fr_CA/update-versions.sh b/fr_CA/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/fr_CA/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/fr_CA/vivo-rc-script-languages.sh b/fr_CA/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/fr_CA/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/fr_CA/webapp/pom.xml b/fr_CA/webapp/pom.xml new file mode 100644 index 0000000..4ee6ba3 --- /dev/null +++ b/fr_CA/webapp/pom.xml @@ -0,0 +1,47 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-fr_CA + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-fr_CA + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App fr_CA + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties similarity index 100% rename from webapp/src/main/webapp/i18n/all_fr_CA.properties rename to fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties diff --git a/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/search-help_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png b/fr_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png similarity index 100% rename from webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png rename to fr_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl diff --git a/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl similarity index 100% rename from webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl diff --git a/pom.xml b/pom.xml index 80e1d66..d3f31c3 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ 1.11.2-SNAPSHOT pom - Vitro Lanugages + Vitro Languages Vitro Languages http://vivoweb.org/ @@ -62,9 +62,6 @@ UTF-8 - - webapp - @@ -215,4 +212,16 @@ https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + core + + + + + en_US + es + fr_CA + pt_BR + de_DE + diff --git a/pt_BR/README.md b/pt_BR/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/pt_BR/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/pt_BR/pom.xml b/pt_BR/pom.xml new file mode 100644 index 0000000..3bae218 --- /dev/null +++ b/pt_BR/pom.xml @@ -0,0 +1,210 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + + org.vivoweb + vitro-languages-pt_BR + 1.11.2-SNAPSHOT + pom + + Vitro Languages pt_BR + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + webapp + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + diff --git a/pt_BR/update-versions.sh b/pt_BR/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/pt_BR/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/pt_BR/vivo-rc-script-languages.sh b/pt_BR/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/pt_BR/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/pt_BR/webapp/pom.xml b/pt_BR/webapp/pom.xml new file mode 100644 index 0000000..0aa3a0f --- /dev/null +++ b/pt_BR/webapp/pom.xml @@ -0,0 +1,47 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-pt_BR + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-pt_BR + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App pt_BR + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties similarity index 100% rename from webapp/src/main/webapp/i18n/all_pt_BR.properties rename to pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties diff --git a/webapp/src/main/webapp/templates/freemarker/search-help_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/search-help_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/search-help_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/search-help_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/termsOfUse_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/termsOfUse_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/termsOfUse_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/termsOfUse_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_pt_BR.ftl b/pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_pt_BR.ftl similarity index 100% rename from webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_pt_BR.ftl rename to pt_BR/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_pt_BR.ftl diff --git a/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif b/pt_BR/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif similarity index 100% rename from webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif rename to pt_BR/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif From 37c7a004562d1223d7f0933e2abddce053298c40 Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Fri, 10 Apr 2020 15:15:22 -0400 Subject: [PATCH 03/28] Update fr_CA translation of 'close' to 'fermer' Resolves: https://jira.lyrasis.org/browse/VIVO-1777 --- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 0bcdc2d..86d3946 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -839,7 +839,7 @@ or_enter_valid_address = ou saisissez une autre adresse électronique complète share_profile_uri = partager l URI de ce profil view_profile_in_rdf = afficher le profil en format RDF -close = close +close = fermer error_processing_labels = Erreur au traitement de cette requète : les étiquettes non cochées n'ont pas pu être effacées. From 578b3b6c7da904261dea663e4c979f23632efbb8 Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Fri, 10 Apr 2020 16:20:55 -0400 Subject: [PATCH 04/28] Fix typo in fr_CA translation Resolves: https://jira.lyrasis.org/browse/VIVO-1785 --- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 0bcdc2d..1b8d95c 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -245,7 +245,7 @@ edit_this_individual = Éditer ce dossier verbose_status_on = actif verbose_status_off = inactif verbose_property_status = La propriété de verbosité est -verbose_control = contrôle de verbossité +verbose_control = contrôle de verbosité verbose_turn_on = Activer verbose_turn_off = Turn off resource_uri = Désactiver From fabe44e64cfc6be17cc3996172fb808a1417a79c Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Tue, 14 Apr 2020 15:22:16 -0400 Subject: [PATCH 05/28] Fix typo in core/webapp/pom.xml Resolves: https://jira.lyrasis.org/browse/VIVO-1791 --- core/webapp/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/webapp/pom.xml b/core/webapp/pom.xml index ef439f1..eb5520b 100644 --- a/core/webapp/pom.xml +++ b/core/webapp/pom.xml @@ -3,7 +3,7 @@ 4.0.0 org.vivoweb - vitro-languages-webapp + vitro-languages-webapp-core 1.11.2-SNAPSHOT war From 21d39409f23bf5784fecf35fd9e25f70b71d33ff Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Tue, 14 Apr 2020 19:25:23 -0400 Subject: [PATCH 06/28] Add i18n version of Edit page title Related to: https://jira.lyrasis.org/browse/VIVO-1779 --- .gitignore | 2 ++ de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 1 + en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 1 + es/webapp/src/main/webapp/i18n/all_es.properties | 1 + fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 1 + pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 3 ++- 6 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 08b9a4b..2232b8c 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,8 @@ utilities/rdbmigration/.work **/*.iml **/target +*~ + **/overlays # Eclipse artifacts diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index baf00e5..541e08e 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -749,6 +749,7 @@ enter_sparql_query_here = Geben Sie hier eine SPARQL-Query ein add_new_page = Neue Seite hinzufügen save_new_page = Neue Seite speichern edit_page = {0} Seite bearbeiten +edit_page_title = Edit content_type = Inhaltstyp select_type = Wählen Sie einen Typ browse_class_group = Klassengruppe durchsuchen diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index b25b631..43a6105 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -759,6 +759,7 @@ enter_sparql_query_here = Enter SPARQL query here add_new_page = Add New Page save_new_page = Save new page edit_page = Edit {0} Page +edit_page_title = Edit content_type = Content Type select_type = Select a type browse_class_group = Browse Class Group diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 39c6b8c..0520980 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -769,6 +769,7 @@ enter_sparql_query_here = Introduzca consulta SPARQL aquí add_new_page = Añadir una nueva página save_new_page = Guardar página nueva edit_page = Editar {0} Página +edit_page_title = Edit content_type = Tipo de contenido select_type = Seleccione un tipo browse_class_group = Examinar grupo de clase diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 0bcdc2d..2da46ea 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -764,6 +764,7 @@ enter_sparql_query_here = Saisir votre requête SPARQL ici add_new_page = Ajouter une page save_new_page = Enregistrer la page edit_page = Éditer la page {0} +edit_page_title = Éditer content_type = Type de contenu select_type = Choisir un type browse_class_group = Parcourir le groupe de classes diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index 5d7e1e1..3398ce5 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -784,6 +784,7 @@ enter_sparql_query_here = Digite consulta SPARQL aqui add_new_page = Adicionar nova página save_new_page = Salve nova página edit_page = Editar Página {0} +edit_page_title = Edit content_type = Tipo de Conteúdo select_type = Selecione um tipo de browse_class_group = Navegar Grupo Classe @@ -920,4 +921,4 @@ view_labels_for = Visualizar Labels para select_an_existing_document = Selecione um documento existem -datetime_year_required = Data / hora do intervalo deve ser iniciado com o ano. Entre com o ano inicial e final ou com ambos. \ No newline at end of file +datetime_year_required = Data / hora do intervalo deve ser iniciado com o ano. Entre com o ano inicial e final ou com ambos. From f490ecd6af5e843f1b29384b2e512c8fdf15302b Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Wed, 15 Apr 2020 12:11:24 -0400 Subject: [PATCH 07/28] Move fr_CA files into directories expected by VIVO (#15) Resolves: https://jira.lyrasis.org/browse/VIVO-1781 Co-authored-by: Andrew Woods --- .../body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl | 0 .../freemarker/body/contactForm/contactForm-form_fr_CA.ftl | 0 .../freemarker/body/individual/individual-menu_fr_CA.ftl | 0 .../freemarker/body/individual/individual-vitro_fr_CA.ftl | 0 .../body/individual/manageLabelsForIndividual_fr_CA.ftl | 0 .../freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl | 0 .../templates/freemarker/body/menupage/emptyPage_fr_CA.ftl | 0 .../body/menupage/individualsForClassesMenuPage_fr_CA.ftl | 0 .../freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl | 0 .../body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl | 0 .../freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl | 0 .../body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl | 0 .../templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl | 0 .../templates/freemarker/body/menupage/page-pageList_fr_CA.ftl | 0 .../templates/freemarker/body/message/message-titled_fr_CA.ftl | 0 .../templates/freemarker/body/message/message_fr_CA.ftl | 0 .../templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl | 0 .../freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl | 0 .../body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl | 0 .../freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl | 0 .../templates/freemarker/edit/forms/menuManagement_fr_CA.ftl | 0 .../edit/forms/pageManagement--browseClassGroups_fr_CA.ftl | 0 .../freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl | 0 .../edit/forms/pageManagement--searchIndividuals_fr_CA.ftl | 0 .../freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl | 0 .../templates/freemarker/edit/forms/pageManagement_fr_CA.ftl | 0 .../templates => templates/freemarker/page}/page-home_fr_CA.ftl | 0 .../vitro/templates => templates/freemarker/page}/page_fr_CA.ftl | 0 .../templates/freemarker/page/partials/headScripts_fr_CA.ftl | 0 29 files changed, 0 insertions(+), 0 deletions(-) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/individual/individual-menu_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/message/message-titled_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/message/message_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro/templates => templates/freemarker/page}/page-home_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro/templates => templates/freemarker/page}/page_fr_CA.ftl (100%) rename fr_CA/webapp/src/main/webapp/{themes/vitro => }/templates/freemarker/page/partials/headScripts_fr_CA.ftl (100%) diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-menu_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message-titled_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/message/message_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/page-home_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/page-home_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/page/page-home_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/page_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/page_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/page/page_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl similarity index 100% rename from fr_CA/webapp/src/main/webapp/themes/vitro/templates/freemarker/page/partials/headScripts_fr_CA.ftl rename to fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl From b657aaad80ab74139ea6a48d2bbd972c3b7f13d0 Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Fri, 1 May 2020 06:02:40 -0400 Subject: [PATCH 08/28] Add language-specific modules into the core build artifact (#18) Add new 'available-langs.properties' file used in Vitro to filter out language files that are not enabled in the Vitro configuration Part of resolution to: https://jira.lyrasis.org/browse/VIVO-1836 Co-authored-by: Andrew Woods --- .gitignore | 1 + core/README.md => README.md | 3 + core/pom.xml | 95 ++++++++----------- .../webapp/i18n/available-langs.properties | 5 + 4 files changed, 48 insertions(+), 56 deletions(-) rename core/README.md => README.md (89%) create mode 100644 core/webapp/src/main/webapp/i18n/available-langs.properties diff --git a/.gitignore b/.gitignore index 08b9a4b..db99a39 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ utilities/rdbmigration/.work **/.idea **/*.iml **/target +*~ **/overlays diff --git a/core/README.md b/README.md similarity index 89% rename from core/README.md rename to README.md index 4f6f391..050552f 100644 --- a/core/README.md +++ b/README.md @@ -8,6 +8,9 @@ Available language files At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. +**Note**: Whenever a new language is added to this project the following file must be updated to include it: +`core/webapp/src/main/webapp/i18n/available-langs.properties` + Using the language files ------------------------ diff --git a/core/pom.xml b/core/pom.xml index b8199df..404ed96 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -3,12 +3,19 @@ 4.0.0 vitro-languages-core + 1.11.2-SNAPSHOT pom Vitro Languages CORE Vitro Languages http://vivoweb.org/ + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + BSD 3-Clause License @@ -149,55 +156,38 @@ - - - - - maven-assembly-plugin - 3.1.1 - - - maven-clean-plugin - 3.1.0 - - - org.apache.maven.plugins - maven-jar-plugin - 3.1.2 - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - org.apache.maven.plugins - maven-source-plugin - 3.1.0 - - - org.apache.maven.plugins - maven-war-plugin - 3.2.3 - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - org.codehaus.mojo - buildnumber-maven-plugin - 1.4 - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.8 - - - - + + + org.vivoweb + vitro-languages-webapp-en_US + ${project.version} + war + + + org.vivoweb + vitro-languages-webapp-de_DE + ${project.version} + war + + + org.vivoweb + vitro-languages-webapp-es + ${project.version} + war + + + org.vivoweb + vitro-languages-webapp-fr_CA + ${project.version} + war + + + org.vivoweb + vitro-languages-webapp-pt_BR + ${project.version} + war + + @@ -213,11 +203,4 @@ https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - org.vivoweb - vitro-languages - 1.11.2-SNAPSHOT - - org.vivoweb - 1.11.2-SNAPSHOT diff --git a/core/webapp/src/main/webapp/i18n/available-langs.properties b/core/webapp/src/main/webapp/i18n/available-langs.properties new file mode 100644 index 0000000..1d96f50 --- /dev/null +++ b/core/webapp/src/main/webapp/i18n/available-langs.properties @@ -0,0 +1,5 @@ +de_DE +en_US +es +fr_CA +pt_BR From 85139a94523fcd4d003a8927ae5aa00c33ff388f Mon Sep 17 00:00:00 2001 From: Nicolas D <46490666+nicalico@users.noreply.github.com> Date: Wed, 20 May 2020 17:19:53 -0400 Subject: [PATCH 09/28] Modified string in all_fr_CA.properties (#19) Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1773 --- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 1830609..c151975 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -717,7 +717,7 @@ edit_capitalized = Éditer add_capitalized = Ajouter create_entry = Créer une entrée select_existing_collaborator = Sélectionner un collaborateur existant pour{0} -selected = Sélectionné +selected = Sélection change_selection = changer la sélection there_are_no_entries_for_selection = Il n'y a pas d'entrées dans le système à partir desquelles vous pouvez sélectionner. the_range_class_does_not_exist= La classe de plage pour cette propriété n'existe pas dans le système. From fd97232e6c378d85c5c938d71c6ecb6809c41b24 Mon Sep 17 00:00:00 2001 From: Nicolas D <46490666+nicalico@users.noreply.github.com> Date: Tue, 12 May 2020 10:45:05 -0400 Subject: [PATCH 10/28] Fixed typos and gender related expressions in properties files --- .../src/main/webapp/i18n/all_fr_CA.properties | 66 +++++++++---------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index c151975..566dd50 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -29,12 +29,12 @@ manage_publications_link = Gérer les publications ascending_order = tri ascendant descending_order = tri descendant -select_one = Selectionner une entrée +select_one = Sélectionner une entrée type_more_characters = Entrer plus de caractères no_match = aucune correspondance -request_failed = La requête a échoué. Veuillez contacter l'administrateur système. +request_failed = La requête a échoué. Veuillez contacter l'administrateur(-trice) système. # # Image upload pages @@ -53,11 +53,11 @@ current_photo = Photo active upload_photo = Téléverser une photo replace_photo = Remplacer la Photo photo_types = (JPEG, GIF ou PNG) -maximum_file_size = Taille maximale de l'image: {0} megaoctets +maximum_file_size = Taille maximale de l'image: {0} mégaoctets minimum_image_dimensions = Taille minimale de l'image: {0} par {1} pixels cropping_caption = La photo de votre profil ressemblera à l'image ci-dessous. -cropping_note = Pour ajuster, vous pouvez bouger la photo dans le cadre ou la redimentionner vers la droite. \ +cropping_note = Pour ajuster, vous pouvez bouger la photo dans le cadre ou la redimensionner vers la droite. \ Lorsque vous êtes satisfait, cliquez sur "Sauvegarder la photo". alt_thumbnail_photo = Photo individuelle @@ -75,7 +75,7 @@ imageUpload.errorUnrecognizedURI = Cette URI n'est reliée à aucun individu: '' imageUpload.errorNoImageForCropping = Aucune image à rogner. imageUpload.errorImageTooSmall = L'image téléversée devrait avoir au moins {0} pixels de hauteur et {1} pixels de largeur. imageUpload.errorUnknown = Désolé, impossible de traiter la photo fournie. Veuillez fournir une autre photo. -imageUpload.errorFileTooBig = Veuillez téléverser une image de moins de {0} mégabytes. +imageUpload.errorFileTooBig = Veuillez téléverser une image de moins de {0} mégaoctets. imageUpload.errorUnrecognizedFileType = ''{0}'' n'est pas un format d'image reconnu. Veuillez choisir une image au format JPEG, GIF ou PNG. imageUpload.errorNoPhotoSelected = Parcourir et choisir une photo. imageUpload.errorBadMultipartRequest = Échec de l'analyse de la demande en plusieurs parties pour le téléversement d'une image. @@ -101,7 +101,7 @@ réinitialisé tant que l'usager n'aura pas cliqué sur le lien inclus dans ce c new_password = Nouveau mot de passe confirm_password = Confirmer le nouveau mot de passe minimum_password_length = Longueur minimale de {0} caractères; maximum de {1}. -leave_password_unchanged = Ne pas compléter ce champs implique que le mot de passe ne sera pas changé. +leave_password_unchanged = Ne pas compléter ce champ implique que le mot de passe ne sera pas changé. confirm_initial_password = Confirmer le mot de passe actuel new_account_1 = Un nouveau compte pour @@ -220,9 +220,9 @@ logged_in_but_no_profile = Vous êtes connecté, mais aucun profil ne correspond unknown_user_name = ami login_welcome_message = Bienvenue {0} external_login_failed = La connexion externe a échoué. -logged_out = Vous êtes déconnecté. +logged_out = Vous êtes déconnecté. -insufficient_authorization = Désolé, vous n'êtes pas autorisé à consulter la page demandée. Si vous considérez qu'ill s'agit d'une erreur, veuillez contacter le support de VIVO. +insufficient_authorization = Désolé, vous n'êtes pas autorisé à consulter la page demandée. Si vous considérez qu'il s'agit d'une erreur, veuillez contacter le support de VIVO. # # "partial" individual templates ( /templates/freemarker/body/partials/individual ) @@ -254,8 +254,8 @@ individual_not_found = élément introuvable individual_not_found_msg = Élément introuvable dans le système. entity_to_query_for = Cet identifiant est celui de l'élément sur lequel porte la requête. "netid" fonctionne également -menu_ordering = Ordonnancement du menu -refresh_page_after_reordering = Rafraîchir la page une fois les éléments de menu réordonnancés +menu_ordering = Ordre du menu +refresh_page_after_reordering = Rafraîchir la page une fois les éléments de menu réordonnés display_has_element_error = Erreur système: la propriété "display:hasElement" n'a pu être retrouvée. return_to = revenir à {0} @@ -278,7 +278,7 @@ error_alert_icon = Icône d'alerte d'erreur current_user = Usager courant external_auth_id = ID d'authentification externe user_role = Rôle -not_logged_in = No connecté +not_logged_in = Non connecté identifiers = Identifiants associated_individuals = éléments associés match_by = apparié par {0} @@ -409,7 +409,7 @@ page_loggedin_permission_option = Les usagers connectés peuvent accéder à cet page_public_permission_option = Cette page est visible à tous -recompute_inferences = Recalculet l'inférence +recompute_inferences = Recalculer l'inférence revision_info = Information sur la révision levels = Niveaux @@ -431,10 +431,10 @@ zoo_two = Zoo 2 berries = Baies: raw_string_literals = Littéraux de chaînes brutes containers_do_not_pick_up_changes = Les conteneurs ne prennent pas en compte les modifications de la valeur de leurs éléments -list_elements_of = Liste des elements de +list_elements_of = Liste des éléments de contains_no_pears = ne contient pas de poires numbers = Nombres -undo_camelcasing = Démoulage +undo_camelcasing = Retirer la casse chameau run_sdb_setup = Exécuter la configuration SDB @@ -509,7 +509,7 @@ site_config = Configuration du site internal_class_i_capped = Classes internes à l'institution manage_profile_editing = Gestion de l'édition de profils page_management = Gestion des pages -menu_ordering_mixed_caps = Ordonnancement des menus +menu_ordering_mixed_caps = Ordre des menus restrict_logins_mixed_caps = Restriction des connexions site_information = Informations de site user_accounts = Comptes d'utilisateurs @@ -555,7 +555,7 @@ view_profile_page_for = Afficher la page de profil de # # menupage templates ( /templates/freemarker/body/partials/menupage ) # -browse_page_javascript_one = Cette page de navigation nécessite le javascript, mais votre navigateur est configuré pour désactiver le javascript. Activez le javascript ou utilisez la fonction +browse_page_javascript_one = Cette page de navigation nécessite JavaScript, mais votre navigateur est configuré pour désactiver JavaScript. Activez JavaScript ou utilisez la fonction browse_page_javascript_two = pour rechercher des informations. index_page = page index @@ -586,7 +586,7 @@ update_button = Mettre à jour # title_capitalized = Titre type_capitalized = Type -uri_not_defined = URI de la page non défini +uri_not_defined = URI de la page non définie page_uri = page URI no_pages_defined = Il n'y a pas encore de pages définies. add_page = Ajouter une page @@ -598,9 +598,9 @@ listed_page_title = titre de la page affichée untitled = -sans titre- delete_page = supprimer cette page view_profile_for_page = afficher le profil individuel pour cette page -menu_orering = Ordonnancement des menus +menu_orering = Ordre des menus use_capitalized = Utiliser -to_order_menu_items = pour définir l'ordonnancement des éléments de menus. +to_order_menu_items = pour définir l'ordre des éléments de menus. # # menupage templates ( /templates/freemarker/body/menupage ) @@ -608,14 +608,14 @@ to_order_menu_items = pour définir l'ordonnancement des éléments de menus. page_not_configured = Cette page n'est pas encore configurée. implement_capitalized = Créer a_link = un lien -configure_page_if_permissable = pour configuer cette page di l'utilisateur a les droits appropriés. +configure_page_if_permissable = pour configurer cette page si l'utilisateur a les droits appropriés. no_html_specified = HTML non spécifié. page_text = texte de la page -sparql_query_results = Résultats de la requète SPARQL -no_results_returned = Acun résultat obtenu. -search_individual_results = Recherche d'individus de d'une classe +sparql_query_results = Résultats de la requête SPARQL +no_results_returned = Aucun résultat obtenu. +search_individual_results = Recherche d'individus d'une classe select_vclass_uri = VClass sélectionné # # manage proxies templates ( /templates/freemarker/body/manageproxies ) @@ -632,7 +632,7 @@ type_more_chars = tapez plus de caractères select_profiles = Sélectionner des profils profile_editors = Éditeurs de profils search_button = Chercher -view_profile_editors = Afficher tous les éditeurss de profils +view_profile_editors = Afficher tous les éditeurs de profils delete_profile_editor = Supprimer l'éditeur de profils add_profile = Ajouter un profil selected_profiles = Profils sélectionnés @@ -677,7 +677,7 @@ login_status = Statut de connexion: alert_icon = Icône d'alerte javascript_require_to_edit = Pour pouvoir modifier le contenu, vous devez activer JavaScript. -javascript_instructions = instructions java script +javascript_instructions = instructions JavaScript to_enable_javascript = Voici les instructions pour activer JavaScript dans votre navigateur Web external_auth_name = nom d'authentification externe external_login_text = Connexion utilisant BearCat Shibboleth @@ -685,14 +685,14 @@ account = compte change_password_to_login = Changez le mot de passe pour vous connecter new_password_capitalized = Nouveau mot de passe confirm_password_capitalized = Confirmer le nouveau mot de passe -already_logged_in = Vous êtes déjà conecté. +already_logged_in = Vous êtes déjà connecté. # # lib templates ( /templates/freemarker/lib ) # statistics = Statistiques -manage_list_of = Gérer le liste de +manage_list_of = Gérer la liste de manage = gérer add = ajouter entry = entrée @@ -742,7 +742,7 @@ confirm_menu_item_delete = Êtes-vous certain de vouloir supprimer? remove_capitalized = Supprimer pretty_url = URL conviviale -start_with_leading_slash = Doit commencer par une barre oblique vers l'avant : / (p. ex., /people) +start_with_leading_slash = Doit commencer par une barre oblique vers l'avant : / (par ex.: /people) default = Défaut custom_template_mixed_caps = Gabarit personnalisé change_content_type = Changer le type de contenu @@ -771,7 +771,7 @@ browse_class_group = Parcourir le groupe de classes fixed_html = HTML fixe add_types = Ajouter un ou plusieurs types begin_with_slash_no_example = Doit débuter avec une barre oblique: / -slash_example = (p. ex., /people) +slash_example = (par ex.: /people) custom_template_requiring_content = Gabarit personnalisé nécessitant du contenu custom_template_containing_content = Gabarit personnalisé contenant tout le contenu a_menu_page = Ceci est une page de menu @@ -838,11 +838,11 @@ content = contenu please_format_email = Veuillez formater votre adresse e-mail de la façon suivante : or_enter_valid_address = ou saisissez une autre adresse électronique complète et valide. -share_profile_uri = partager l URI de ce profil +share_profile_uri = partager ce profil avec son URI view_profile_in_rdf = afficher le profil en format RDF close = fermer -error_processing_labels = Erreur au traitement de cette requète : les étiquettes non cochées n'ont pas pu être effacées. +error_processing_labels = Erreur au traitement de cette requête : les étiquettes non cochées n'ont pas pu être effacées. drag_drop_to_reorder_menus = Glisser-déposer pour réorganiser les éléments du menu reordering_menus_failed = La réorganisation des éléments du menu a échoué. @@ -851,7 +851,7 @@ page = page view_page = Voir la page of_the_results = des résultats there_are_no = Aucune -individuals_names_starting_with = personne dont le nom débute par +individuals_names_starting_with = personnes dont le nom débute par try_another_letter = Essayez une autre lettre ou parcourez toutes les lettres. individuals_in_system = personnes dans le système. select_another_class = Veuillez sélectionner une autre classe dans la liste. @@ -876,7 +876,7 @@ double_quote_note_allowed = Le nom de la variable ne doit pas comporter de doubl supply_html = Vous devez fournir du code HTML ou du texte. supply_query_variable = Vous devez fournir une variable pour sauvegarder les résultats de la requête. -supply_sparql_query = Vous devez fournir une requète SPARQL. +supply_sparql_query = Vous devez fournir une requête SPARQL. confirm_page_deletion = Vous êtes certain de vouloir supprimer cette page : From 8b389bc6384b3c97a71f580bae1beaeb38d8b574 Mon Sep 17 00:00:00 2001 From: Michel Heon Date: Fri, 22 May 2020 11:15:10 -0400 Subject: [PATCH 11/28] Feature en ca (#20) * Adding en_CA Co-authored-by: michelheon Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1862 --- core/pom.xml | 6 + .../webapp/i18n/available-langs.properties | 1 + en_CA/README.md | 25 + en_CA/pom.xml | 210 ++++ en_CA/update-versions.sh | 12 + en_CA/vivo-rc-script-languages.sh | 21 + en_CA/webapp/pom.xml | 48 + .../src/main/webapp/i18n/all_en_CA.properties | 922 ++++++++++++++++++ .../freemarker/search-help_en_CA.ftl | 42 + .../templates/freemarker/termsOfUse_en_CA.ftl | 34 + .../userAccounts-acctCreatedEmail_en_CA.ftl | 68 ++ ...nts-acctCreatedExternalOnlyEmail_en_CA.ftl | 43 + ...ccounts-confirmEmailChangedEmail_en_CA.ftl | 38 + ...rAccounts-firstTimeExternalEmail_en_CA.ftl | 43 + ...serAccounts-passwordCreatedEmail_en_CA.ftl | 43 + ...ounts-passwordResetCompleteEmail_en_CA.ftl | 44 + ...counts-passwordResetPendingEmail_en_CA.ftl | 61 ++ .../vitro/i18n/images/select_locale_en_CA.png | Bin 0 -> 21577 bytes pom.xml | 5 +- 19 files changed, 1662 insertions(+), 4 deletions(-) create mode 100644 en_CA/README.md create mode 100644 en_CA/pom.xml create mode 100644 en_CA/update-versions.sh create mode 100644 en_CA/vivo-rc-script-languages.sh create mode 100644 en_CA/webapp/pom.xml create mode 100644 en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/search-help_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_CA.ftl create mode 100644 en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png diff --git a/core/pom.xml b/core/pom.xml index 404ed96..469efcb 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -187,6 +187,12 @@ ${project.version} war + + org.vivoweb + vitro-languages-webapp-en_CA + ${project.version} + war + diff --git a/core/webapp/src/main/webapp/i18n/available-langs.properties b/core/webapp/src/main/webapp/i18n/available-langs.properties index 1d96f50..a918115 100644 --- a/core/webapp/src/main/webapp/i18n/available-langs.properties +++ b/core/webapp/src/main/webapp/i18n/available-langs.properties @@ -3,3 +3,4 @@ en_US es fr_CA pt_BR +en_CA diff --git a/en_CA/README.md b/en_CA/README.md new file mode 100644 index 0000000..4f6f391 --- /dev/null +++ b/en_CA/README.md @@ -0,0 +1,25 @@ +Vitro-languages +=============== + +Files that enable Vitro (and by extension, VIVO) to operate in languages beyond American English. + +Available language files +------------------------ + +At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. + +Using the language files +------------------------ + +If the files you want already exist here, you can add them to your VIVO instance by +following the instructions in the VIVO wiki for [Adding a language to VIVO][1]. + +If the files for your desired language do not exist then you may use the files in this repository as a +starting point for doing the translations yourself. Search for the required files for any of the language prefixes above (e.g. _en_US), copy the files, and rename your new files using the appropriate language code [prefix][2]. Please send a note to [the VIVO Tech group][3] +to find out if someone else is already working on a translation. + +If you create a translation, please consider contributing your language files to the VIVO community. + +[1]: https://wiki.duraspace.org/display/VIVODOC110x/Internationalization#Internationalization-AddinganexistinglanguagetoyourVIVOsite +[2]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +[3]: mailto:vivo-tech@googlegroups.com diff --git a/en_CA/pom.xml b/en_CA/pom.xml new file mode 100644 index 0000000..f2399f2 --- /dev/null +++ b/en_CA/pom.xml @@ -0,0 +1,210 @@ + + + 4.0.0 + + vitro-languages-en_CA + pom + + Vitro Languages en_CA + Vitro Languages + http://vivoweb.org/ + + + + BSD 3-Clause License + https://raw.github.com/vivo-project/VIVO/develop/LICENSE + repo + + + + + + Graham Triggs + gtriggs@duraspace.org + DuraSpace + http://vivoweb.org/ + + + Jim Blake + jeb228@cornell.edu + Cornell University Library + https://github.com/j2blake + + + John Fereira + jaf30@cornell.edu + Cornell University + https://github.com/fereira + + + + + + scm:git:git@github.com:vivo-project/Vitro-languages.git + scm:git:git@github.com:vivo-project/Vitro-languages.git + git@github.com:vivo-project/Vitro-languages.git + HEAD + + + + ${project.version} + ${basedir} + yyyy-MM-dd HH:mm:ss + ${maven.build.timestamp} + false + / + UTF-8 + + + + webapp + + + + + release-sign-artifacts + + + performRelease + true + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + validate + + create + + + + + false + false + 7 + Detached + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + + + + + + + + + + + maven-assembly-plugin + 3.1.1 + + + maven-clean-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + org.apache.maven.plugins + maven-source-plugin + 3.1.0 + + + org.apache.maven.plugins + maven-war-plugin + 3.2.3 + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.8 + + + + + + + + vivo-project + https://vivo-project.github.io/ + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + org.vivoweb + vitro-languages + 1.11.2-SNAPSHOT + + 1.11.2-SNAPSHOT + org.vivoweb + diff --git a/en_CA/update-versions.sh b/en_CA/update-versions.sh new file mode 100644 index 0000000..79dccd3 --- /dev/null +++ b/en_CA/update-versions.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +if [ -z "$1" ] + then + echo 'New version number required eg. 1.11.0-RC-1' + exit 1 +fi + +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd installer +mvn versions:set -DgenerateBackupPoms=false -DnewVersion=$1 +cd .. diff --git a/en_CA/vivo-rc-script-languages.sh b/en_CA/vivo-rc-script-languages.sh new file mode 100644 index 0000000..7226eea --- /dev/null +++ b/en_CA/vivo-rc-script-languages.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# RC Script for languages + +RC_VERSION=1.11.1 +RC_NUM=1 + +git checkout master +git pull +git push origin master:rel-${RC_VERSION}-RC + + +git checkout rel-${RC_VERSION}-RC +git tag -a "rel-${RC_VERSION}-RC-${RC_NUM}" -m "rel-${RC_VERSION}-RC-${RC_NUM}" +git push origin --tags + + +# Created Branch and Tag Examples +# (Branch) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/Vitro-languages/tree/rel-1.11.1-RC-1 +# (Branch) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC +# (Tag) https://github.com/vivo-project/VIVO-languages/tree/rel-1.11.1-RC-1 diff --git a/en_CA/webapp/pom.xml b/en_CA/webapp/pom.xml new file mode 100644 index 0000000..1efc3ca --- /dev/null +++ b/en_CA/webapp/pom.xml @@ -0,0 +1,48 @@ + + + 4.0.0 + + org.vivoweb + vitro-languages-webapp-en_CA + 1.11.2-SNAPSHOT + war + + + org.vivoweb + vitro-languages-en_CA + 1.11.2-SNAPSHOT + .. + + + Vitro Languages for Web App en_CA + + + + + org.apache.maven.plugins + maven-war-plugin + + false + WEB-INF/lib/*.jar + false + + + true + + + + + + maven-clean-plugin + + + + overlays + + + + + + + diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties new file mode 100644 index 0000000..b25b631 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -0,0 +1,922 @@ +# +# Text strings for the controllers and templates +# +# Default (English) +# +save_changes=Save changes +save_entry=Save entry +select_existing=Select existing +select_an_existing=Select an existing +add_an_entry_to=Add an entry of type +change_entry_for=Change entry for: +add_new_entry_for=Add new entry for: +change_text_for=Change text for: +cancel_link = Cancel +cancel_title = cancel +required_fields = required fields +or = or +alt_error_alert = Error alert icon +alt_confirmation = Confirmation icon +for=for +email_address = Email address +first_name = First name +last_name = Last name +roles = Roles +status = Status + +ascending_order = ascending order +descending_order = descending order +select_one = Select one + +type_more_characters = type more characters +no_match = no match + +request_failed = Request failed. Please contact your system administrator. + +# +# Image upload pages +# +upload_page_title = Upload image +upload_page_title_with_name = Upload image for {0} +upload_heading = Photo Upload + +replace_page_title = Replace image +replace_page_title_with_name = Replace image for {0} + +crop_page_title = Crop image +crop_page_title_with_name = Crop image for {0} + +current_photo = Current Photo +upload_photo = Upload a photo +replace_photo = Replace Photo +photo_types = (JPEG, GIF or PNG) +maximum_file_size = Maximum file size: {0} megabytes +minimum_image_dimensions = Minimum image dimensions: {0} x {1} pixels + +cropping_caption = Your profile photo will look like the image below. +cropping_note = To make adjustments, you can drag around and resize the photo to the right. \ +When you are happy with your photo click the "Save Photo" button. + +alt_thumbnail_photo = Individual photo +alt_image_to_crop = Image to be cropped +alt_preview_crop = Preview of photo cropped + +delete_link = Delete photo +submit_upload = Upload photo +submit_save = Save photo + +confirm_delete = Are you sure you want to delete this photo? + +imageUpload.errorNoURI = No entity URI was provided +imageUpload.errorUnrecognizedURI = This URI is not recognized as belonging to anyone: ''{0}'' +imageUpload.errorNoImageForCropping = There is no image file to be cropped. +imageUpload.errorImageTooSmall = The uploaded image should be at least {0} pixels high and {1} pixels wide. +imageUpload.errorUnknown = Sorry, we were unable to process the photo you provided. Please try another photo. +imageUpload.errorFileTooBig = Please upload an image smaller than {0} megabytes. +imageUpload.errorUnrecognizedFileType = ''{0}'' is not a recognized image file type. Please upload JPEG, GIF, or PNG files only. +imageUpload.errorNoPhotoSelected = Please browse and select a photo. +imageUpload.errorBadMultipartRequest = Failed to parse the multi-part request for uploading an image. +imageUpload.errorFormFieldMissing = The form did not contain a ''{0}'' field." + +# +# User Accounts pages +# +account_management = Account Management +user_accounts_link = User accounts +user_accounts_title = user accounts + +login_count = Login count +last_login = Last Login + +add_new_account = Add new account +edit_account = Edit account +external_auth_only = Externally Authenticated Only +reset_password = Reset password +reset_password_note = Note: Instructions for resetting the password will \ +be emailed to the address entered above. The password will not \ +be reset until the user follows the link provided in this email. +new_password = New password +confirm_password = Confirm new password +minimum_password_length = Minimum of {0} characters in length; maximum of {1}. +leave_password_unchanged = Leaving this blank means that the password will not be changed. +confirm_initial_password = Confirm initial password + +new_account_1 = A new account for +new_account_2 = was successfully created. +new_account_title = new account +new_account_notification = A notification email has been sent to {0} \ +with instructions for activating the account and creating a password. +updated_account_1 = The account for +updated_account_2 = has been updated. +updated_account_title = updated account +updated_account_notification = A confirmation email has been sent to {0} \ +with instructions for resetting a password. \ +The password will not be reset until the user follows the link provided in this email. +deleted_accounts = Deleted {0} {0, choice, 0#accounts|1#account|1 + +<#if origination?has_content && origination == "helpLink"> +

    Search Tips

    + + Back to results + +<#else> +

    Search Tips

    + +
      +
    • Keep it simple! Use short, single terms unless your searches are returning too many results.
    • +
    • Use quotes to search for an entire phrase -- e.g., "protein folding".
    • +
    • Except for boolean operators, searches are not case-sensitive, so "Geneva" and "geneva" are equivalent
    • +
    • If you are unsure of the correct spelling, put ~ at the end of your search term -- e.g., cabage~ finds cabbage, steven~ finds Stephen and Stefan (as well as other similar names).
    • +
    + +

    Advanced Tips

    + + +${stylesheets.add('')} + \ No newline at end of file diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_CA.ftl new file mode 100644 index 0000000..855397a --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/termsOfUse_en_CA.ftl @@ -0,0 +1,34 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +
    +

    Terms of Use

    + +

    Disclaimers

    +

    This ${termsOfUse.siteName} website contains material—text information, publication + citations, links, and images—provided by ${termsOfUse.siteHost} and by various + third parties, both individuals and organizations, commercial and otherwise. To the extent copyrightable, + the information presented on the VIVO website and available as Resource Description Framework (RDF) data + from VIVO at ${termsOfUse.siteHost} is intended for public use and is freely distributed under the terms of the + Creative Commons CC-BY 3.0 license which allows you + to copy, distribute, display and make derivatives of this information provided you give credit to + ${termsOfUse.siteHost}. Any non-copyrightable information is available to you under a + CC0 waiver. However, source documents, + images or web pages attached to or linked from VIVO may contain copyrighted information and should only be + used or distributed under terms included with each source or in accordance with the principles of fair use. +

    + +

    Disclaimer of Liability

    +

    ${termsOfUse.siteHost?cap_first} makes no warranty, expressed or implied, including the warranties of merchantability + and fitness for a particular purpose, or assumes any legal liability or responsibility for the accuracy, + completeness, currency or usefulness of any material displayed or distributed through the + ${termsOfUse.siteName} website or represents that its use would not infringe privately owned rights. + ${termsOfUse.siteHost?cap_first} disclaims all warranties with regard to the information provided. Any reliance upon such information + is at your own risk. In no event will ${termsOfUse.siteHost} be liable to you for any damages or losses whatsoever resulting + from or caused by the ${siteName} website or its contents.

    + +

    Disclaimer of Endorsement

    +

    Reference herein to any specific commercial product, process, or service by trade name, + trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement or recommendation + by ${termsOfUse.siteHost}. The views and opinions of authors expressed herein do not necessarily state or reflect those of + ${termsOfUse.siteHost} and shall not be used for advertising or product endorsement purposes.

    +
    \ No newline at end of file diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_CA.ftl new file mode 100644 index 0000000..ce80a54 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedEmail_en_CA.ftl @@ -0,0 +1,68 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new account on ${siteName}, associated with ${userAccount.emailAddress}. +

    + +

    + If you did not request this new account you can safely ignore this email. + This request will expire if not acted upon for 30 days. +

    + +

    + Click the link below to create your password for your new account using our secure server. +

    + +

    + ${passwordLink} +

    + +

    + If the link above doesn't work, you can copy and paste the link directly into your browser's address bar. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new account on ${siteName}, +associated with ${userAccount.emailAddress}. + +If you did not request this new account you can safely ignore this email. +This request will expire if not acted upon for 30 days. + +Paste the link below into your browser's address bar to create your password +for your new account using our secure server. + +${passwordLink} + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_CA.ftl new file mode 100644 index 0000000..844df02 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-acctCreatedExternalOnlyEmail_en_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new VIVO account associated with ${userAccount.emailAddress}. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new VIVO account associated with +${userAccount.emailAddress}. + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_CA.ftl new file mode 100644 index 0000000..2f55508 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-confirmEmailChangedEmail_en_CA.ftl @@ -0,0 +1,38 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that the user has changed his email account. --> + +<#assign subject = "Your ${siteName} email account has been changed." /> + +<#assign html> + + + ${subject} + + +

    + Hi, ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + You recently changed the email address associated with + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Thank you. +

    + + + + +<#assign text> +Hi, ${userAccount.firstName} ${userAccount.lastName} + +You recently changed the email address associated with +${userAccount.firstName} ${userAccount.lastName} + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_CA.ftl new file mode 100644 index 0000000..04a8e6e --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-firstTimeExternalEmail_en_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an account has been created for an externally-authenticated user. --> + +<#assign subject = "Your ${siteName} account has been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Congratulations! +

    + +

    + We have created your new VIVO account associated with ${userAccount.emailAddress}. +

    + +

    + Thanks! +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Congratulations! + +We have created your new VIVO account associated with +${userAccount.emailAddress}. + +Thanks! + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_CA.ftl new file mode 100644 index 0000000..2f80d50 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordCreatedEmail_en_CA.ftl @@ -0,0 +1,43 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that an password has been created. --> + +<#assign subject = "Your ${siteName} password has successfully been created." /> + +<#assign html> + + + ${subject} + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Password successfully created. +

    + +

    + Your new password associated with ${userAccount.emailAddress} has been created. +

    + +

    + Thank you. +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Password successfully created. + +Your new password associated with ${userAccount.emailAddress} +has been created. + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_CA.ftl new file mode 100644 index 0000000..c4e64c1 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetCompleteEmail_en_CA.ftl @@ -0,0 +1,44 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation that a password has been reset. --> + +<#assign subject = "Your ${siteName} password changed." /> + +<#assign html> + + + ${subject} + + + +

    + ${userAccount.firstName} ${userAccount.lastName} +

    + +

    + Password successfully changed. +

    + +

    + Your new password associated with ${userAccount.emailAddress} has been changed. +

    + +

    + Thank you. +

    + + + + +<#assign text> +${userAccount.firstName} ${userAccount.lastName} + +Password successfully changed. + +Your new password associated with ${userAccount.emailAddress} +has been changed. + +Thank you. + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_CA.ftl b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_CA.ftl new file mode 100644 index 0000000..9ac0438 --- /dev/null +++ b/en_CA/webapp/src/main/webapp/templates/freemarker/userAccounts-passwordResetPendingEmail_en_CA.ftl @@ -0,0 +1,61 @@ +<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> + +<#-- Confirmation email for user account password reset --> + +<#assign subject = "${siteName} reset password request" /> + +<#assign html> + + + ${subject} + + +

    + Dear ${userAccount.firstName} ${userAccount.lastName}: +

    + +

    + We have received a request to reset the password for your ${siteName} account (${userAccount.emailAddress}). +

    + +

    + Please follow the instructions below to proceed with your password reset. +

    + +

    + If you did not request this new account you can safely ignore this email. + This request will expire if not acted upon within 30 days. +

    + +

    + Click on the link below or paste it into your browser's address bar to reset your password + using our secure server. +

    + +

    ${passwordLink}

    + +

    Thank you!

    + + + + +<#assign text> +Dear ${userAccount.firstName} ${userAccount.lastName}: + +We have received a request to reset the password for your ${siteName} account +(${userAccount.emailAddress}). + +Please follow the instructions below to proceed with your password reset. + +If you did not request this new account you can safely ignore this email. +This request will expire if not acted upon within 30 days. + +Paste the link below into your browser's address bar to reset your password +using our secure server. + +${passwordLink} + +Thank you! + + +<@email subject=subject html=html text=text /> diff --git a/en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png b/en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png new file mode 100644 index 0000000000000000000000000000000000000000..8c487f3f7820139e493bcdf76fa39a347320e8e6 GIT binary patch literal 21577 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 wGi>&0{J)O>w>fi9&;5UWavD%b8OpQh*kh{K@ core - - - - + en_CA en_US es fr_CA From 33c145b1d1f7e6be262314c33daa095df193547b Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Fri, 26 Jun 2020 19:43:13 -0400 Subject: [PATCH 12/28] Adds internationalization to the admin/sparql-query page (#22) * Adds internationalization to the admin/sparql-query page Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1873 * Add i18n for 'save query result' Related to: https://jira.lyrasis.org/browse/VIVO-1873 * code review Co-authored-by: Andrew Woods --- de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 9 +++++++++ en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties | 9 +++++++++ en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 9 +++++++++ es/webapp/src/main/webapp/i18n/all_es.properties | 9 +++++++++ fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 9 +++++++++ pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 9 +++++++++ 6 files changed, 54 insertions(+) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index 541e08e..e0ef856 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -281,6 +281,15 @@ work_level = Arbeitsebene since = Seit flags = Flags +sparql_query_title = SPARQL Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file +sparql_query_run_query = Run Query + search_index_status = Suchindex-Status search_index_not_connected = Der Suchindex ist nicht verbunden. failed = Fehlgeschlagen diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index b25b631..e7066b9 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -291,6 +291,15 @@ work_level = Work level since = Since flags = Flags +sparql_query_title = SPARQL Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file +sparql_query_run_query = Run Query + search_index_status = Search Index Status search_index_not_connected = The search index is not connected. failed = failed diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index 43a6105..be3c6f6 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -291,6 +291,15 @@ work_level = Work level since = Since flags = Flags +sparql_query_title = SPARQL Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file +sparql_query_run_query = Run Query + search_index_status = Search Index Status search_index_not_connected = The search index is not connected. failed = failed diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 0520980..56cc79e 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -312,6 +312,15 @@ work_level = Nivel de trabajo since = Desde flags = Banderas +sparql_query_title = SPARQL Query +sparql_query_run_query = Run Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file + search_index_status = Estatus del índice de búsqueda search_index_not_connected = El índice de búsqueda no está conectado. failed = fallo diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 566dd50..679ed53 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -296,6 +296,15 @@ work_level = Niveau de tâche since = Depuis flags = Fanions +sparql_query_title = SPARQL Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file +sparql_query_run_query = Run Query + search_index_status = Status de l'index de recherche search_index_not_connected = L'index de recherche n'est pas connecté. failed = échoué diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index 3398ce5..0f2a172 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -324,6 +324,15 @@ work_level = nível de Trabalho since = Desde flags = Flags +sparql_query_title = SPARQL Query +sparql_query_header = Query +sparql_query_description_0 = # This example query gets 20 geographic locations +sparql_query_description_1 = # and (if available) their labels +sparql_query_select_ask_results = Format for SELECT and ASK query results +sparql_query_construct_describe_results = Format for CONSTRUCT and DESCRIBE query results +sparql_query_save_results = Save results to file +sparql_query_run_query = Run Query + search_index_status = Status do Índice de Pesquisa search_index_not_connected = O índice de pesquisa não está conectado. failed = falhou From 7f0b68e9dc9d991d0dc04dd9528d760e5d2ad163 Mon Sep 17 00:00:00 2001 From: dofeldsc Date: Mon, 24 Aug 2020 17:20:24 +0200 Subject: [PATCH 13/28] translated the german termsOfUse in german, ticket vivo-1901 --- .../templates/freemarker/termsOfUse_de_DE.ftl | 68 ++++++++++++------- 1 file changed, 42 insertions(+), 26 deletions(-) diff --git a/de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl b/de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl index 855397a..690df2d 100644 --- a/de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl +++ b/de_DE/webapp/src/main/webapp/templates/freemarker/termsOfUse_de_DE.ftl @@ -1,34 +1,50 @@ <#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
    -

    Terms of Use

    +

    Nutzungsbedingungen

    +

    Dieser gesamte Text dient als Platzhalter und sollte von jedem Betreiber/in auf seine/ihre Bedürfnisse angepasst werden

    -

    Disclaimers

    -

    This ${termsOfUse.siteName} website contains material—text information, publication - citations, links, and images—provided by ${termsOfUse.siteHost} and by various - third parties, both individuals and organizations, commercial and otherwise. To the extent copyrightable, - the information presented on the VIVO website and available as Resource Description Framework (RDF) data - from VIVO at ${termsOfUse.siteHost} is intended for public use and is freely distributed under the terms of the - Creative Commons CC-BY 3.0 license which allows you - to copy, distribute, display and make derivatives of this information provided you give credit to - ${termsOfUse.siteHost}. Any non-copyrightable information is available to you under a - CC0 waiver. However, source documents, - images or web pages attached to or linked from VIVO may contain copyrighted information and should only be - used or distributed under terms included with each source or in accordance with the principles of fair use. +

    Allgemeine Haftungsausschlüsse

    +

    Die Website von ${termsOfUse.siteName} enthält Material, wie etwa Textinformationen, + Auszüge aus Veröffentlichungen, Links und Bilder, das von ${termsOfUse.siteHost} + und verschiedenen Dritten, darunter Privatpersonen als auch + Unternehmen, kommerziell oder anderweitig bereitgestellt wird. Soweit + urheberrechtlich geschützt, sind die auf der Website von VIVO + dargestellten und als Resource Description Framework (RDF) verfügbaren + Daten von VIVO im ${termsOfUse.siteHost} für die öffentliche Nutzung bestimmt und + unter den Bedingungen der Lizenz Creative Commons CC-BY 3.0 frei + verfügbar. Diese Lizenz ermöglicht die Vervielfältigung, Verbreitung, + Aufführung und Veränderung der Informationen, vorausgesetzt, ${termsOfUse.siteHost} wird als Quelle genannt. + Alle nicht urheberrechtlich geschützten Informationen stehen im Rahmen einer CC0-Verzichtserklärung zur + Verfügung. Mit VIVO verbundene oder von VIVO verlinkte Quellmaterialien, + Bilder oder Webseiten können hingegen urheberrechtlich geschützte + Informationen enthalten und sollten nur unter den der Quelle beigefügten + Bedingungen oder in Übereinstimmung mit den Grundsätzen der fairen + Nutzung verwendet oder verbreitet werden.

    -

    Disclaimer of Liability

    -

    ${termsOfUse.siteHost?cap_first} makes no warranty, expressed or implied, including the warranties of merchantability - and fitness for a particular purpose, or assumes any legal liability or responsibility for the accuracy, - completeness, currency or usefulness of any material displayed or distributed through the - ${termsOfUse.siteName} website or represents that its use would not infringe privately owned rights. - ${termsOfUse.siteHost?cap_first} disclaims all warranties with regard to the information provided. Any reliance upon such information - is at your own risk. In no event will ${termsOfUse.siteHost} be liable to you for any damages or losses whatsoever resulting - from or caused by the ${siteName} website or its contents.

    +

    Haftung für Inhalte

    +

    ${termsOfUse.siteHost?cap_first} übernimmt keine Garantie, ausdrücklich oder implizit, + einschließlich der Zusicherung bezüglich der Gebrauchstauglichkeit und + Eignung für einen bestimmten Zweck, noch übernimmt ${termsOfUse.siteHost} + jegliche Haftung oder Verantwortung für die Richtigkeit, Vollständigkeit, + Aktualität oder den Nutzen des über die Website von ${termsOfUse.siteName} dargestellten + oder verbreiteten Materials, noch vertritt ${termsOfUse.siteHost}, dass der Gebrauch + davon nicht gegen Rechte Dritter verstößt. ${termsOfUse.siteHost} lehnt jede + Gewährleistung in Bezug auf die bereitgestellten Informationen ab. + Jegliches Vertrauen in die Informationen geschieht auf eigene Gefahr. In + keinem Fall haftet ${termsOfUse.siteHost} für Schäden oder Verluste, die sich aus der + Benutzung der Website von ${termsOfUse.siteName} oder deren Inhalte ergeben bzw. durch + sie verursacht werden. +

    -

    Disclaimer of Endorsement

    -

    Reference herein to any specific commercial product, process, or service by trade name, - trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement or recommendation - by ${termsOfUse.siteHost}. The views and opinions of authors expressed herein do not necessarily state or reflect those of - ${termsOfUse.siteHost} and shall not be used for advertising or product endorsement purposes.

    +

    Haftung für Werbung

    +

    Die hier enthaltenen Bezugnahmen auf bestimmte kommerzielle Produkte, + Verfahren oder Dienstleistungen durch Handelsnamen, Markennamen, + Hersteller oder andere Verweise bedeuten nicht zwangsläufig eine + Befürwortung oder Weiterempfehlung durch ${termsOfUse.siteHost}. Die hierin + geäußerten Ansichten und Meinungen der Autoren spiegeln nicht + notwendigerweise die Ansichten und Meinungen von ${termsOfUse.siteHost} wider + und dürfen nicht für Werbe- oder Produktvermarktungszwecke verwendet + werden.

    \ No newline at end of file From e2dbd41552d4bb3c7aa27eb579257f232c7e3460 Mon Sep 17 00:00:00 2001 From: William Welling Date: Tue, 25 Aug 2020 09:24:25 -0500 Subject: [PATCH 14/28] add translations for BasicValidationVTwo (#28) Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1812 --- de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 7 +++++++ en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties | 7 +++++++ en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 7 +++++++ es/webapp/src/main/webapp/i18n/all_es.properties | 7 +++++++ fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 7 +++++++ pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 7 +++++++ 6 files changed, 42 insertions(+) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index e0ef856..cb2b2de 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -920,3 +920,10 @@ minimum_hour = Ungültiger Eintrag. Bitte geben Sie mindestens eine Stunde an. year_month = Ungültiger Eintrag. Bitte geben Sie ein Jahr und ein Monat an. decimal_only = Ungültiger Eintrag. Dezimalpunkte sind erlaubt, aber Tausendertrennzeichen sind es nicht. whole_number = Ungültiger Eintrag. Geben Sie eine ganze Zahl ohne Dezimalpunkt oder Tausendertrennzeichen an. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = Dieses Feld darf nicht leer sein. +data_not_past_msg = Bitte geben Sie ein zukünftiges Zieldatum für die Veröffentlichung ein (vergangene Daten sind ungültig). diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index e7066b9..64024d9 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -929,3 +929,10 @@ minimum_hour=Invalid entry. Please specify at least an Hour. year_month=Invalid entry. Please enter a Year and Month. decimal_only=Invalid entry. A decimal point is allowed, but thousands-separators are not. whole_number=Invalid entry. Enter a whole number with no decimal point or thousands-separators. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = This field must not be empty. +data_not_past_msg = Please enter a future target date for publication (past dates are invalid). diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index be3c6f6..e59a4e6 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -930,3 +930,10 @@ minimum_hour=Invalid entry. Please specify at least an Hour. year_month=Invalid entry. Please enter a Year and Month. decimal_only=Invalid entry. A decimal point is allowed, but thousands-separators are not. whole_number=Invalid entry. Enter a whole number with no decimal point or thousands-separators. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = This field must not be empty. +data_not_past_msg = Please enter a future target date for publication (past dates are invalid). diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 56cc79e..9fdeecf 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -915,3 +915,10 @@ view_labels_for = Ver etiquetas de select_an_existing_document = Seleccione un documento existente datetime_year_required = Intervalos de fecha / hora deben empezar por el año. Ingrese una fecha de inicio, una fecha final, o ambas. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = Este campo no debe estar vacío. +data_not_past_msg = Introduzca una fecha objetivo futura para la publicación (las fechas anteriores no son válidas). diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 679ed53..6dac637 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -935,3 +935,10 @@ minimum_hour=Entrée invalide. Veuillez spécifier au moins une heure. year_month=Entrée invalide. Veuillez entrer une année et un mois. decimal_only=Entrée invalide. Un point décimal est autorisé, mais les séparateurs de milliers ne le sont pas. whole_number=Entrée invalide. Saisissez un nombre entier sans point décimal ou des séparateurs de milliers. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = Ce champ ne doit pas être vide. +data_not_past_msg = Veuillez saisir une date cible future pour la publication (les dates passées ne sont pas valides). diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index 0f2a172..7dc110b 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -931,3 +931,10 @@ view_labels_for = Visualizar Labels para select_an_existing_document = Selecione um documento existem datetime_year_required = Data / hora do intervalo deve ser iniciado com o ano. Entre com o ano inicial e final ou com ambos. + +# +# validation messages ( BasicValidationVTwo.java ) +# + +required_field_empty_msg = Este campo não deve estar vazio. +data_not_past_msg = Insira uma data alvo futura para publicação (datas anteriores são inválidas). From f58caf9c3f7aa15bf65516f6927b50293eb964d0 Mon Sep 17 00:00:00 2001 From: dofeldsc Date: Wed, 26 Aug 2020 16:58:00 +0200 Subject: [PATCH 15/28] added js_string at i18n strings to handle quotes properly, ticket vivo-1842 (#29) Partial resolution for: https://jira.lyrasis.org/browse/VIVO-1842 --- .../userAccounts-myProxiesPanel_fr_CA.ftl | 2 +- .../contactForm/contactForm-form_fr_CA.ftl | 4 +-- .../body/individual/individual-menu_fr_CA.ftl | 4 +-- .../individual/individual-vitro_fr_CA.ftl | 14 ++++----- .../manageLabelsForIndividual_fr_CA.ftl | 4 +-- .../manageProxies-list_fr_CA.ftl | 2 +- .../body/pagemanagement/pageList_fr_CA.ftl | 2 +- .../siteAdmin-classHierarchy_fr_CA.ftl | 18 +++++------ .../siteAdmin-objectPropHierarchy_fr_CA.ftl | 26 ++++++++-------- .../forms/defaultDataPropertyForm_fr_CA.ftl | 16 +++++----- .../edit/forms/menuManagement_fr_CA.ftl | 14 ++++----- ...ageManagement--browseClassGroups_fr_CA.ftl | 8 ++--- .../forms/pageManagement--fixedHtml_fr_CA.ftl | 10 +++---- ...ageManagement--searchIndividuals_fr_CA.ftl | 12 ++++---- .../pageManagement--sparqlQuery_fr_CA.ftl | 10 +++---- .../edit/forms/pageManagement_fr_CA.ftl | 30 +++++++++---------- .../page/partials/headScripts_fr_CA.ftl | 2 +- 17 files changed, 89 insertions(+), 89 deletions(-) diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl index 41b5880..1512ec2 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl @@ -56,7 +56,7 @@ var proxyContextInfo = { ajaxUrl: '${formUrls.proxyAjax}' }; var i18nStrings = { - selectEditorAndProfile: "${i18n().select_editor_and_profile}" + selectEditorAndProfile: "${i18n().select_editor_and_profile?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl index 996dd69..086d09f 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl @@ -43,8 +43,8 @@
    diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl index d4a510d..6013268 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl @@ -54,8 +54,8 @@ positionPredicate: '${positionPredicate}' }; var i18nStrings = { - dragDropMenus: "${i18n().drag_drop_to_reorder_menus}", - reorderingFailed: "${i18n().reordering_menus_failed}" + dragDropMenus: "${i18n().drag_drop_to_reorder_menus?js_string}", + reorderingFailed: "${i18n().reordering_menus_failed?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl index 4cbc5d8..c85477a 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl @@ -87,14 +87,14 @@ @@ -110,5 +110,5 @@ ${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl index 608c185..53bcd83 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl @@ -97,8 +97,8 @@ var customFormData = { numberAvailableLocales:${availableLocalesNumber} }; var i18nStrings = { - errorProcessingLabels: "${i18n().error_processing_labels}", - selectLocaleOptionString : "${i18n().select_locale}" + errorProcessingLabels: "${i18n().error_processing_labels?js_string}", + selectLocaleOptionString : "${i18n().select_locale?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl index cf718c9..1cb91d7 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl @@ -189,7 +189,7 @@ var proxyContextInfo = { ajaxUrl: '${formUrls.ajax}' }; var i18nStrings = { - selectEditorAndProfile: "${i18n().select_editor_and_profile}" + selectEditorAndProfile: "${i18n().select_editor_and_profile?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl index a26ca1f..e3c19b9 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl @@ -75,7 +75,7 @@ ${stylesheets.add('', diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl index 5428b40..411adda 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl @@ -39,15 +39,15 @@ diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl index 7cf844b..bc167c1 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl @@ -47,19 +47,19 @@ var json = [${jsonTree!}]; var propertyType = '${propType}'; var i18nStrings = { - hideProperties: "${i18n().hide_properties}", - showProperties: "${i18n().show_properties}", - localNameString: "${i18n().local_name}", - groupString: "${i18n().group_capitalized}", - domainClass: "${i18n().domain_class}", - rangeClass: "${i18n().range_class}", - rangeDataType: "${i18n().range_data_type}", - expandAll: "${i18n().expand_all}", - collapseAll: "${i18n().collapse_all}", - subProperties: "${i18n().sub_properties}", - displayRank: "${i18n().display_rank}", - subProperty: "${i18n().subproperty}", - propertiesString: "${i18n().properties_capitalized}" + hideProperties: "${i18n().hide_properties?js_string}", + showProperties: "${i18n().show_properties?js_string}", + localNameString: "${i18n().local_name?js_string}", + groupString: "${i18n().group_capitalized?js_string}", + domainClass: "${i18n().domain_class?js_string}", + rangeClass: "${i18n().range_class?js_string}", + rangeDataType: "${i18n().range_data_type?js_string}", + expandAll: "${i18n().expand_all?js_string}", + collapseAll: "${i18n().collapse_all?js_string}", + subProperties: "${i18n().sub_properties?js_string}", + displayRank: "${i18n().display_rank?js_string}", + subProperty: "${i18n().subproperty?js_string}", + propertiesString: "${i18n().properties_capitalized?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl index 6b0894f..59164e3 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl @@ -85,14 +85,14 @@ var datatype = "${datatype!}"; var i18nStrings = { - four_digit_year: "${i18n().four_digit_year}", - year_numeric: "${i18n().year_numeric}", - year_month_day: "${i18n().year_month_day}", - minimum_ymd: "${i18n().minimum_ymd}", - minimum_hour: "${i18n().minimum_hour}", - year_month: "${i18n().year_month}", - decimal_only: "${i18n().decimal_only}", - whole_number: "${i18n().whole_number}" + four_digit_year: "${i18n().four_digit_year?js_string}", + year_numeric: "${i18n().year_numeric?js_string}", + year_month_day: "${i18n().year_month_day?js_string}", + minimum_ymd: "${i18n().minimum_ymd?js_string}", + minimum_hour: "${i18n().minimum_hour?js_string}", + year_month: "${i18n().year_month?js_string}", + decimal_only: "${i18n().decimal_only?js_string}", + whole_number: "${i18n().whole_number?js_string}" }; diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl index 2f7da20..86df077 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl @@ -99,13 +99,13 @@ ${stylesheets.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl index 2e07d60..cd5be1e 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl @@ -59,10 +59,10 @@ <#--Include JavaScript specific to the types of data getters related to this content--> diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl index a31a937..898c8d7 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl @@ -13,11 +13,11 @@ ${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl index b92b015..1456c95 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl @@ -22,12 +22,12 @@ ${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl index 472eb55..bfb8a07 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl @@ -15,11 +15,11 @@ ${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl index c62ad86..aed923c 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl @@ -176,21 +176,21 @@ <#include "pageManagement--customDataScript.ftl"> diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl index a7ab7cf..a387afd 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl @@ -3,7 +3,7 @@ <#-- Template for scripts that must be loaded in the head --> From d608a4476e4c562eb134e7b4ad03ead49b858f27 Mon Sep 17 00:00:00 2001 From: William Welling Date: Wed, 26 Aug 2020 13:03:16 -0500 Subject: [PATCH 16/28] [VIVO-1870] simplify menu page browse by vclass no entry translations (#30) * simplify menu page browse by vclass no entry translations Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1870 --- de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 3 +-- en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties | 3 +-- en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 3 +-- es/webapp/src/main/webapp/i18n/all_es.properties | 3 +-- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 3 +-- pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 5 ++--- 6 files changed, 7 insertions(+), 13 deletions(-) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index cb2b2de..adf88f7 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -844,8 +844,7 @@ reordering_menus_failed = Neuanordnung von Menüpunkten ist fehlgeschlagen. page = Seite view_page = Seite anzeigen of_the_results = der Ergebnisse -there_are_no = Es gibt keine -individuals_names_starting_with = Datensätze, deren Name beginnt mit +there_are_no_entries_starting_with = Es gibt keine Einträge, die mit beginnen try_another_letter = Bitte versuchen Sie einen anderen Buchstaben oder suchen Sie nach allen. individuals_in_system = Datensätze in dem System. select_another_class = Bitte wählen Sie eine andere Klasse aus der Liste. diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index 64024d9..c81989c 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -853,8 +853,7 @@ reordering_menus_failed = Reordering of menu items failed. page = page view_page = View page of_the_results = of the results -there_are_no = There are no -individuals_names_starting_with = individuals whose name starts with +there_are_no_entries_starting_with = There are no entries starting with try_another_letter = Please try another letter or browse all. individuals_in_system = individuals in the system. select_another_class = Please select another class from the list. diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index e59a4e6..5d0ec7a 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -854,8 +854,7 @@ reordering_menus_failed = Reordering of menu items failed. page = page view_page = View page of_the_results = of the results -there_are_no = There are no -individuals_names_starting_with = individuals whose name starts with +there_are_no_entries_starting_with = There are no entries starting with try_another_letter = Please try another letter or browse all. individuals_in_system = individuals in the system. select_another_class = Please select another class from the list. diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 9fdeecf..80953ff 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -860,8 +860,7 @@ reordering_menus_failed = Error al reordenar los elementos de menú. page = página view_page = Ver página of_the_results = de los resultados -there_are_no = No hay -individuals_names_starting_with = Personas cuyo nombre empieza con +there_are_no_entries_starting_with = No hay entradas que comiencen con try_another_letter = Por favor, pruebe otra carta o navegue por todas. individuals_in_system = individuos en el sistema. select_another_class = Por favor, seleccione otra clase de la lista. diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 6dac637..b89305d 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -859,8 +859,7 @@ reordering_menus_failed = La réorganisation des éléments du menu a échoué. page = page view_page = Voir la page of_the_results = des résultats -there_are_no = Aucune -individuals_names_starting_with = personnes dont le nom débute par +there_are_no_entries_starting_with = Il n'y a aucune entrée commençant par try_another_letter = Essayez une autre lettre ou parcourez toutes les lettres. individuals_in_system = personnes dans le système. select_another_class = Veuillez sélectionner une autre classe dans la liste. diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index 7dc110b..bab2a72 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -874,9 +874,8 @@ reordering_menus_failed = reordenação de itens de menu falhou. page = página view_page = Ver página -= of_the_results dos resultados -there_are_no = Não há -individuals_names_starting_with = indivíduos cujo nome começa com +of_the_results = dos resultados +there_are_no_entries_starting_with = Não há entradas começando com try_another_letter = Por favor, tente outra letra ou navegar. individuals_in_system = indivíduos no sistema. select_another_class = Por favor, selecione uma outra classe da lista. From 91e8d92e202fc8ce8b4daee540e4d4bc119acba0 Mon Sep 17 00:00:00 2001 From: William Welling Date: Fri, 28 Aug 2020 11:44:13 -0500 Subject: [PATCH 17/28] [VIVIO-1837] add translations for get label for class of VClassDaoJena (#27) * add translations for get label for class of VClassDaoJena * use whole message for i18 translations Partial resolution to: https://jira.lyrasis.org/browse/VIVO-1837 --- .../src/main/webapp/i18n/all_de_DE.properties | 14 ++++++++++++++ .../src/main/webapp/i18n/all_en_CA.properties | 14 ++++++++++++++ .../src/main/webapp/i18n/all_en_US.properties | 14 ++++++++++++++ es/webapp/src/main/webapp/i18n/all_es.properties | 14 ++++++++++++++ .../src/main/webapp/i18n/all_fr_CA.properties | 14 ++++++++++++++ .../src/main/webapp/i18n/all_pt_BR.properties | 14 ++++++++++++++ 6 files changed, 84 insertions(+) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index adf88f7..5698e7d 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -920,6 +920,20 @@ year_month = Ungültiger Eintrag. Bitte geben Sie ein Jahr und ein Monat an. decimal_only = Ungültiger Eintrag. Dezimalpunkte sind erlaubt, aber Tausendertrennzeichen sind es nicht. whole_number = Ungültiger Eintrag. Geben Sie eine ganze Zahl ohne Dezimalpunkt oder Tausendertrennzeichen an. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = Einschränkung auf +all_values_from = alle Werte von +some_values_from = einige Werte aus +has_value = hat Wert +minimum_cardinality = minimale Kardinalität +maximum_cardinality = maximale Kardinalität +cardinality = Kardinalität +not = nicht +and = und +or = oder + # # validation messages ( BasicValidationVTwo.java ) # diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index c81989c..b903e7f 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -929,6 +929,20 @@ year_month=Invalid entry. Please enter a Year and Month. decimal_only=Invalid entry. A decimal point is allowed, but thousands-separators are not. whole_number=Invalid entry. Enter a whole number with no decimal point or thousands-separators. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = restriction on +all_values_from = all values from +some_values_from = some values from +has_value = has value +minimum_cardinality = minimum cardinality +maximum_cardinality = maximum cardinality +cardinality = cardinality +not = not +and = and +or = or + # # validation messages ( BasicValidationVTwo.java ) # diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index 5d0ec7a..e745d8c 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -930,6 +930,20 @@ year_month=Invalid entry. Please enter a Year and Month. decimal_only=Invalid entry. A decimal point is allowed, but thousands-separators are not. whole_number=Invalid entry. Enter a whole number with no decimal point or thousands-separators. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = restriction on +all_values_from = all values from +some_values_from = some values from +has_value = has value +minimum_cardinality = minimum cardinality +maximum_cardinality = maximum cardinality +cardinality = cardinality +not = not +and = and +or = or + # # validation messages ( BasicValidationVTwo.java ) # diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 80953ff..8fe726d 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -915,6 +915,20 @@ select_an_existing_document = Seleccione un documento existente datetime_year_required = Intervalos de fecha / hora deben empezar por el año. Ingrese una fecha de inicio, una fecha final, o ambas. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = restricción en +all_values_from = todos los valores de +some_values_from = algunos valores de +has_value = tiene valor +minimum_cardinality = cardinalidad mínima +maximum_cardinality = máxima cardinalidad +cardinality = cardinalidad +not = no +and = y +or = o + # # validation messages ( BasicValidationVTwo.java ) # diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index b89305d..3ea17d2 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -935,6 +935,20 @@ year_month=Entrée invalide. Veuillez entrer une année et un mois. decimal_only=Entrée invalide. Un point décimal est autorisé, mais les séparateurs de milliers ne le sont pas. whole_number=Entrée invalide. Saisissez un nombre entier sans point décimal ou des séparateurs de milliers. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = restriction sur +all_values_from = toutes les valeurs de +some_values_from = quelques valeurs de +has_value = a de la valeur +minimum_cardinality = cardinalité minimale +maximum_cardinality = cardinalité maximale +cardinality = cardinalité +not = ne pas +and = et +or = ou + # # validation messages ( BasicValidationVTwo.java ) # diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index bab2a72..b7c9bfb 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -931,6 +931,20 @@ select_an_existing_document = Selecione um documento existem datetime_year_required = Data / hora do intervalo deve ser iniciado com o ano. Entre com o ano inicial e final ou com ambos. +# +# get label for class ( VClassDaoJena.java ) +# +restriction_on = restrição em +all_values_from = todos os valores de +some_values_from = alguns valores de +has_value = tem valor +minimum_cardinality = cardinalidade mínima +maximum_cardinality = cardinalidade máxima +cardinality = cardinalidade +not = não +and = e +or = ou + # # validation messages ( BasicValidationVTwo.java ) # From 16dc0d94ae51319e6e229262ed9c2da95e38e382 Mon Sep 17 00:00:00 2001 From: dofeldsc Date: Thu, 24 Sep 2020 23:56:22 +0200 Subject: [PATCH 18/28] removed redundant file, identical to file in Vitro-reporitory, ticket vivo-1915 (#31) Partial resolution to: https://jira.lyrasis.org/browse/VIVO-1915 --- .../manageLabelsForIndividual_fr_CA.ftl | 110 ------------------ 1 file changed, 110 deletions(-) delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl deleted file mode 100644 index 53bcd83..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/manageLabelsForIndividual_fr_CA.ftl +++ /dev/null @@ -1,110 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#include "manageLabelsForIndividualTerms.ftl" > -<#-- Custom form for managing labels for individuals --> -<#--This is used both for editing and for viewLabelsServlet--> -<#import "manageLabelsForIndividualMacros.ftl" as m > -<#assign requiredHint = " *" /> -<#assign subjectUri = editConfiguration.subjectUri/> -<#assign labelStr = "" > -<#assign languageTag = "" > -<#assign labelSeq = [] > -<#assign submissionErrorsExist = "false"/> -<#assign selectLocalesFullList = {} /> -<#assign editable = false/> -<#if editConfiguration.pageData.editable?has_content> - <#assign editable = editConfiguration.pageData.editable /> - -<#assign displayRemoveLink = true/> -<#if editConfiguration.pageData.displayRemoveLink?has_content> - <#assign displayRemoveLink = editConfiguration.pageData.displayRemoveLink/> - -<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> - <#assign submissionErrors = editSubmission.validationErrors/> - <#assign submissionErrorsExist = "true" /> - -<#assign availableLocalesNumber = 0/> -<#if editConfiguration.pageData.selectLocale?has_content> - <#assign availableLocalesNumber = editConfiguration.pageData.selectLocale?size /> - -<#if editConfiguration.pageData.subjectName?? > -

    ${i18n().manage_labels_for} ${editConfiguration.pageData.subjectName}

    -<#else> -

    ${i18n().manage_labels_capitalized}

    - - - - -

    ${i18n().manage_labels_intro}

    - - -
    - - - -
      - <#if editConfiguration.pageData.labelsSortedByLanguageName?has_content> - <#--List of labelInformation objects as value where key = language name --> - <#assign labelsSorted = editConfiguration.pageData.labelsSortedByLanguageName /> - <#--Keys would be the actual names of languages--> - <#assign labelLanguages = labelsSorted?keys?sort /> - <#assign editGenerator = "editForm=edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.RDFSLabelGenerator" /> - - <#--What we need here is printing out the labels by the language Name and not language code, starting with untyped first--> - <@m.displayExistingLabelsForLanguage "untyped" labelsSorted editable editGenerator/> - <@m.displayExistingTypedLabels labelLanguages labelsSorted editable editGenerator/> - - -
    - -
    -

    - - <#if editable> - <#include "manageLabelsForIndividualSubmissionErrors.ftl"> -

    - ${i18n().or} - ${returnText} -
    - - <#include "manageLabelsForIndividualAddForm.ftl" > - - -

    -
    - - - - -${stylesheets.add('')} - -${scripts.add('', - '', - '')} - From a27a33a7cc5ae1133760e1162c1fdf0f7a06b284 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20L=C3=BChr?= Date: Mon, 28 Sep 2020 12:18:00 +0200 Subject: [PATCH 19/28] - replaced hard coded "or" with i18n().or --- .../freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl index 59164e3..19638d8 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl @@ -72,7 +72,7 @@ the default label for default data/object property editing is returned from Edit Configuration Template Model, but that method may not return the correct result for other custom forms--> - or + ${i18n().or} ${i18n().cancel_link} From e6b0f5bce90c534b2561b8bee14716e03efde2ce Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Tue, 6 Oct 2020 17:10:51 -0600 Subject: [PATCH 20/28] Ensure RDF files are assembled into language-specific directories (#24) - Remove 'available-langs.properties' Co-authored-by: Andrew Woods --- README.md | 3 --- core/webapp/src/main/webapp/i18n/available-langs.properties | 6 ------ 2 files changed, 9 deletions(-) delete mode 100644 core/webapp/src/main/webapp/i18n/available-langs.properties diff --git a/README.md b/README.md index 050552f..4f6f391 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,6 @@ Available language files At present, VIVO has been translated into German, Spanish, and Portuguese. You may find the relevant files for each language by searching for files containing _de_DE, _es, and _pt_BR respectively. English uses the prefix _en_US. -**Note**: Whenever a new language is added to this project the following file must be updated to include it: -`core/webapp/src/main/webapp/i18n/available-langs.properties` - Using the language files ------------------------ diff --git a/core/webapp/src/main/webapp/i18n/available-langs.properties b/core/webapp/src/main/webapp/i18n/available-langs.properties deleted file mode 100644 index a918115..0000000 --- a/core/webapp/src/main/webapp/i18n/available-langs.properties +++ /dev/null @@ -1,6 +0,0 @@ -de_DE -en_US -es -fr_CA -pt_BR -en_CA From ba93dab2a65b77363def07551f9aed08bf677b73 Mon Sep 17 00:00:00 2001 From: Andrew Woods Date: Mon, 11 Jan 2021 19:53:28 -0700 Subject: [PATCH 21/28] Remove fr_CA .ftl files that only differ from core by single quotes (#33) Partial resolution to: https://jira.lyrasis.org/browse/VIVO-1937 Co-authored-by: Andrew Woods --- .../userAccounts-myProxiesPanel_fr_CA.ftl | 69 ------ .../contactForm/contactForm-form_fr_CA.ftl | 60 ----- .../body/individual/individual-menu_fr_CA.ftl | 65 ------ .../individual/individual-vitro_fr_CA.ftl | 114 ---------- .../manageProxies-list_fr_CA.ftl | 204 ----------------- .../body/menupage/emptyPage_fr_CA.ftl | 10 - .../individualsForClassesMenuPage_fr_CA.ftl | 17 -- .../menupage--defaultFixedHtml_fr_CA.ftl | 15 -- ...nupage--defaultSearchIndividuals_fr_CA.ftl | 53 ----- .../menupage--defaultSparql_fr_CA.ftl | 38 ---- ...age--exampleMultipleContentTypes_fr_CA.ftl | 85 ------- .../body/menupage/page-classgroup_fr_CA.ftl | 17 -- .../body/menupage/page-pageList_fr_CA.ftl | 34 --- .../body/message/message-titled_fr_CA.ftl | 7 - .../freemarker/body/message/message_fr_CA.ftl | 7 - .../body/pagemanagement/pageList_fr_CA.ftl | 89 -------- .../siteAdmin-classHierarchy_fr_CA.ftl | 64 ------ .../siteAdmin-objectPropHierarchy_fr_CA.ftl | 78 ------- .../forms/defaultDataPropertyForm_fr_CA.ftl | 105 --------- .../edit/forms/menuManagement_fr_CA.ftl | 115 ---------- ...ageManagement--browseClassGroups_fr_CA.ftl | 69 ------ .../forms/pageManagement--fixedHtml_fr_CA.ftl | 23 -- ...ageManagement--searchIndividuals_fr_CA.ftl | 33 --- .../pageManagement--sparqlQuery_fr_CA.ftl | 25 --- .../edit/forms/pageManagement_fr_CA.ftl | 209 ------------------ .../page/partials/headScripts_fr_CA.ftl | 18 -- 26 files changed, 1623 deletions(-) delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl delete mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl deleted file mode 100644 index 1512ec2..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/accounts/userAccounts-myProxiesPanel_fr_CA.ftl +++ /dev/null @@ -1,69 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Template for setting the account reference field, which can also associate a profile with the user account --> - -<#assign strings = i18n() /> - -
    -

    ${strings.who_can_edit_profile}

    - - - - - -

    -   -

    -

    ${myAccountUri}

    -

    ${strings.selected_editors}:

    - - <#-- Magic ul that holds all of the proxy data and the template that shows how to display it. --> -
      - <#list proxies as proxy> -
      -

      ${proxy.uri}

      -

      ${proxy.label}

      -

      ${proxy.classLabel}

      -

      ${proxy.imageUrl}

      -
      - - - <#-- - Each proxy will be shown using the HTML inside this div. - It must contain at least: - -- a link with templatePart="remove" - -- a hidden input field with templatePart="uriField" - --> -
      -
    • - %label% - -

      %label% | %classLabel% -
      - ${strings.remove_selection} - - -

      -
    • -
      -
    -
    - - - -${stylesheets.add('', - '')} - -${scripts.add('', - '', - '', - '')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl deleted file mode 100644 index 086d09f..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/contactForm/contactForm-form_fr_CA.ftl +++ /dev/null @@ -1,60 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Contact form --> - -
    -

    ${title!}

    - - <#if errorMessage?has_content> -
    -

    ${errorMessage}

    -
    - - -

    ${i18n().interest_thanks(siteName)}

    - -
    - - - - - - - - - - - - - - - - -

    - -

    - -
    -
    -
    - -

    * ${i18n().required_fields}

    -
    -
    - - -${stylesheets.add('', - '')} -${scripts.add('', - '', - '')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl deleted file mode 100644 index 6013268..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-menu_fr_CA.ftl +++ /dev/null @@ -1,65 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Menu management page (uses individual display mechanism) --> - -<#include "individual-setup.ftl"> - -<#assign hasElement = propertyGroups.pullProperty("${namespaces.display}hasElement")!> -<#assign returnURL = "/vivo/individual?uri=http%3A%2F%2Fvitro.mannlib.cornell.edu%2Fontologies%2Fdisplay%2F1.1%23DefaultMenu&switchToDisplayModel=true" /> - -<#if hasElement?has_content> - - -

    ${i18n().menu_ordering}

    - - <#-- List the menu items --> - - - <#-- Link to add a new menu item --> - <#if editable> -
    - - - - - - - <#if verbosePropertySwitch.url?contains("pageManagement")> - ${i18n().or} - Return to Page Management - - -
    -
    -

    ${i18n().refresh_page_after_reordering}

    - - - ${stylesheets.add('', - '')} - - ${headScripts.add('')} - - <#assign positionPredicate = "${namespaces.display}menuPosition" /> - - - - ${scripts.add('')} -<#else> -

    ${i18n().display_has_element_error}

    - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl deleted file mode 100644 index c85477a..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/individual/individual-vitro_fr_CA.ftl +++ /dev/null @@ -1,114 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#import "lib-microformats.ftl" as mf> - -<#--Number of labels present--> -<#if !labelCount??> - <#assign labelCount = 0 > - -<#--Number of available locales--> -<#if !localesCount??> - <#assign localesCount = 1> - -<#--Number of distinct languages represented, with no language tag counting as a language, across labels--> -<#if !languageCount??> - <#assign languageCount = 1> - - -<#-- Default individual profile page template --> -<#--@dumpAll /--> -<#include "individual-adminPanel.ftl"> -
    > - -
    - <#-- Image --> - <#assign individualImage> - <@p.image individual=individual - propertyGroups=propertyGroups - namespaces=namespaces - editable=editable - showPlaceholder="with_add_link" /> - - - <#if ( individualImage?contains(' - <#assign infoClass = 'class="withThumb"'/> - -
    ${individualImage}
    -
    - -
    - - <#if individualProductExtensionPreHeader??> - ${individualProductExtensionPreHeader} - - -
    - <#if relatedSubject??> -

    ${relatedSubject.relatingPredicateDomainPublic} for ${relatedSubject.name}

    -

    ← ${i18n().return_to(relatedSubject.name)}

    - <#else> -

    - <#-- Label --> - <@p.label individual editable labelCount localesCount languageCount/> - - <#-- Most-specific types --> - <@p.mostSpecificTypes individual /> - uri icon -

    - -
    - - <#if individualProductExtension??> - ${individualProductExtension} - <#else> -
    -
    - - -<#assign nameForOtherGroup = "${i18n().other}"> - - -<#-- - With release 1.6 there are now two types of property group displays: the original property group - menu and the horizontal tab display, which is the default. If you prefer to use the property - group menu, simply substitute the include statement below with the one that appears after this - comment section. - - <#include "individual-property-group-menus.ftl"> ---> - -<#include "individual-property-group-tabs.ftl"> - -<#assign rdfUrl = individual.rdfUrl> - -<#if rdfUrl??> - - - - -${stylesheets.add('', - '')} - -${headScripts.add('', - '')} - -${scripts.add('', - '', - '')} - - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl deleted file mode 100644 index 1cb91d7..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/manageproxies/manageProxies-list_fr_CA.ftl +++ /dev/null @@ -1,204 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Template for displaying list of user accounts --> - -

    ${i18n().manage_profile_editing}

    - -<#if message??> - - - - - -
    -

    ${i18n().relate_editors_profiles} ${i18n().info_icon}

    - -
    -
    - ${i18n().select_editors} - -
    - - -

     

    - - <#-- Magic div that holds all of the proxy data and the template that shows how to display it. --> -
      - <#-- - Each proxy will be shown using the HTML inside this div. - It must contain at least: - -- a link with templatePart="remove" - -- a hidden input field with templatePart="uriField" - --> -
      -
    • - %label% - -

      - %label% | %classLabel% -
      - ${i18n().remove_selection} - -

      -
    • -
      -
    -
    -
    - -
    - ${i18n().select_profiles} - -
    - - - -

     

    - - <#-- Magic div thst holds all of the proxy data and the template that shows how to display it. --> -
      - <#-- - Each proxy will be shown using the HTML inside this element. - It must contain at least: - -- a link with templatePart="remove" - -- a hidden input field with templatePart="uriField" - --> -
      -
    • - %label% - -

      %label% | %classLabel% -
      ${i18n().remove_selection} -

      - - -
    • -
      -
    -
    -
    - - -
    -
    - - -

    ${i18n().profile_editors}

    - -
    -
    - - - <#if page.previous??> - | ${i18n().previous} - - - <#if page.last != 0> - ${page.current} of ${page.last} - - - <#if page.next??> - ${i18n().next_capitalized} - - - <#if searchTerm?has_content> -

    ${i18n().search_results_for} '${searchTerm}' | ${i18n().view_profile_editors}

    - -
    -
    - -<#list relationships as r> -
    -
    -
    - <#assign p = r.proxyInfos[0]> -
    - ${p.label} - -

    - ${p.label} | ${p.classLabel} -
    - ${i18n().delete_profile_editor} - -

    -
    -
    - -
    - ${i18n().add_profile} - -
    - - - -

     

    -

    ${r.proxyInfos[0].profileUri}

    -

    ${i18n().selected_profiles}:

    - - <#-- Magic div that holds all of the proxy data and the template that shows how to display it. --> -
      - <#list r.profileInfos as p> -
      -

      ${p.uri}

      -

      ${p.label}

      -

      ${p.classLabel}

      -

      ${p.imageUrl}

      -
      - - - <#-- - Each proxy will be shown using the HTML inside this element. - It must contain at least: - -- a link with templatePart="remove" - -- a hidden input field with templatePart="uriField" - --> -
      -
    • - %label% - -

      %label% | %classLabel% -
      ${i18n().remove_selection} -

      -
    • - - -
      -
    -
    - - -
    -
    -
    - - - - -${stylesheets.add('')} -${stylesheets.add('')} -${stylesheets.add('')} -${stylesheets.add('')} - -${scripts.add('')} -${scripts.add('', - '', - '')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl deleted file mode 100644 index 1732f11..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/emptyPage_fr_CA.ftl +++ /dev/null @@ -1,10 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -
    -

    ${i18n().page_not_configured}

    - -

    ${i18n().implement_capitalized} ${i18n().a_link} ${i18n().configure_page_if_permissable}

    - - - -
    diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl deleted file mode 100644 index 3b3dcdf..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/individualsForClassesMenuPage_fr_CA.ftl +++ /dev/null @@ -1,17 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#include "menupage-checkForData.ftl"> - -<#if !noData> - - - <#include "menupage-browse.ftl"> - - ${stylesheets.add('')} - - <#include "menupage-scripts.ftl"> -<#else> - ${noDataNotification} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl deleted file mode 100644 index 1df32a5..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultFixedHtml_fr_CA.ftl +++ /dev/null @@ -1,15 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#--Save to variable indicated in generator --> - -<#assign htmlExists = false/> -<#if variableName?has_content> - <#assign htmlExists = true /> - -<#if htmlExists> - ${.globals[variableName]} -<#else> - ${i18n().no_html_specified} - - - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl deleted file mode 100644 index 0dfe78c..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSearchIndividuals_fr_CA.ftl +++ /dev/null @@ -1,53 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- List individuals in the requested class. --> - -<#import "lib-list.ftl" as l> - -<#include "individualList-checkForData.ftl"> - -${stylesheets.add('')} - -
    -

    ${title!} -

    - <#if subtitle?has_content> -

    ${subtitle}

    - - - <#if (!noData)> - <#if errorMessage?has_content> -

    ${errorMessage}

    - <#else> - <#assign pagination> - <#if (pages?has_content && pages?size > 1)> - ${i18n().pages}: -
      - <#list pages as page> - <#if page.selected> -
    • ${page.text}
    • - <#else> - <#-- RY Ideally the urls would be generated by the controller; see search-pagedResults.ftl --> -
    • ${page.text}
    • - - -
    - - - - ${pagination} - -
      - <#list individuals as individual> -
    • - <@shortView uri=individual.uri viewContext="index" /> -
    • - -
    - - ${pagination} - - <#else> - ${noDataNotification} - -
    diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl deleted file mode 100644 index e58a5e9..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--defaultSparql_fr_CA.ftl +++ /dev/null @@ -1,38 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#--Save to variable is sparqlResults --> -<#assign resultsExist = false/> -<#if variableName?has_content> - <#assign resultsExist = true/> - <#--This will retrieve the results stored in the variable name being returned from the sparql query. - For example, if "results" was specified as the variable storing the sparql results, the value - of "results" will not be assigned to "sparqlResults" below. --> - <#assign sparqlResults = .globals[variableName]/> - - -

    ${i18n().sparql_query_results}

    -<#if resultsExist> - <#assign numberRows = sparqlResults?size/> - <#assign firstRow = false/> - <#list sparqlResults as resultRow> - <#assign resultKeys = resultRow?keys /> - <#if firstRow = false> -
    - <#list resultKeys as resultKey> -
    ${resultKey}
    - -
    - <#assign firstRow = true/> - -
    - <#list resultKeys as resultKey> -
    ${resultRow[resultKey]}
    - -
    - -<#else> - ${i18n().no_results_returned} - - -${stylesheets.add('')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl deleted file mode 100644 index 1877366..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/menupage--exampleMultipleContentTypes_fr_CA.ftl +++ /dev/null @@ -1,85 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#--This is an example of including multiple content types in the same template, - this combines the default templates for Fixed HTML, Class groups and Search Individuals in one template--> -<#include "menupage-checkForData.ftl"> -<#--Fixed HTML portion--> -<#--Note that variableName is employed by both the fixed html and sparql query templates, this is used to store the -actual name of the variable that is used to store either the fixed html or sparql query results. If combining fixed html -and sparql query results in a custom template, the template can utilize the actual variable name e.g. "query results" instead of how -variableName is used below.--> -<#assign htmlExists = false/> - -<#if variableName?has_content> - <#assign htmlExists = true /> - -<#if htmlExists> - ${.globals[variableName]} -<#else> - ${i18n().no_html_specified} - - -<#--Class grou section--> -<#if !noData> - - - <#include "menupage-browse.ftl"> - - ${stylesheets.add('')} - - <#include "menupage-scripts.ftl"> -<#else> - ${noDataNotification} - - -<#--Search Individuals section--> -<#import "lib-list.ftl" as l> - -<#include "individualList-checkForData.ftl"> - -${stylesheets.add('')} - -
    -

    ${title!} -

    - <#if subtitle?has_content> -

    ${subtitle}

    - - - <#if (!noData)> - <#if errorMessage?has_content> -

    ${errorMessage}

    - <#else> - <#assign pagination> - <#if (pages?has_content && pages?size > 1)> - ${i18n().pages}: -
      - <#list pages as page> - <#if page.selected> -
    • ${page.text}
    • - <#else> - <#-- RY Ideally the urls would be generated by the controller; see search-pagedResults.ftl --> -
    • ${page.text}
    • - - -
    - - - - ${pagination} - -
      - <#list individuals as individual> -
    • - <@shortView uri=individual.uri viewContext="index" /> -
    • - -
    - - ${pagination} - - <#else> - ${noDataNotification} - -
    diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl deleted file mode 100644 index 3b3dcdf..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-classgroup_fr_CA.ftl +++ /dev/null @@ -1,17 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#include "menupage-checkForData.ftl"> - -<#if !noData> - - - <#include "menupage-browse.ftl"> - - ${stylesheets.add('')} - - <#include "menupage-scripts.ftl"> -<#else> - ${noDataNotification} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl deleted file mode 100644 index 55ac458..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/menupage/page-pageList_fr_CA.ftl +++ /dev/null @@ -1,34 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#import "lib-generator-classes.ftl" as generators /> - -
    - -<#if pages?has_content > - - - - <#list pages as pagex> - - - <#if pagex.pageUri??> - - <#else> - - - - -
    ${i18n().title_capitalized}URI
    ${(pagex.title)!i18n().untitled}${pagex.pageUri}${i18n().uri_not_defined}
    - -<#else> -

    ${i18n().no_pages_defined}

    - - -
    - - - - -
    - -
    diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl deleted file mode 100644 index 11b4ed0..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message-titled_fr_CA.ftl +++ /dev/null @@ -1,7 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Standard template to display a message with a title generated from any controller. Keeps this out of individual templates. --> - -

    ${title!}

    - -<#include "message.ftl"> diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl deleted file mode 100644 index 6750875..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/message/message_fr_CA.ftl +++ /dev/null @@ -1,7 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Standard template to display a message generated from any controller. Keeps this out of individual templates. --> - -<#if message??> -

    ${message}

    - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl deleted file mode 100644 index e3c19b9..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/pagemanagement/pageList_fr_CA.ftl +++ /dev/null @@ -1,89 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -
    -
    -

    ${i18n().page_management}

    -
    - - -<#if pages?has_content > - - - - - - - - - - - - - - - <#list pages as pagex> - - - - - - - - - - - - -
    ${i18n().page_management}
    ${i18n().title_capitalized}URL${i18n().custom_template}${i18n().menu_page}${i18n().controls}
    - <#if pagex.listedPageUri?has_content> - <#if pagex.listedPageTitle == "Home" > - ${pagex.listedPageTitle!} - <#else> - ${(pagex.listedPageTitle)!i18n().untitled} - - - <#else> - ${i18n().uri_not_defined} - - ${pagex.listedPageUrlMapping}${(pagex.listedPageTemplate)!''} - <#if pagex.listedPageMenuItem?has_content> - - - - ${i18n().edit_page} -    - ${i18n().view_profile_for_page} -    - <#if !pagex.listedPageCannotDeletePage?has_content > - ${i18n().delete_page} - -
    - -<#else> -

    ${i18n().no_pages_defined}

    - - -
    - - - - -
    -
    -

    ${i18n().use_capitalized} ${i18n().menu_orering} ${i18n().to_order_menu_items}

    -
    - - -${stylesheets.add('', - '')} - -${scripts.add('')} -${scripts.add('')} -${scripts.add('')} -${scripts.add('')} - - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl deleted file mode 100644 index 411adda..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-classHierarchy_fr_CA.ftl +++ /dev/null @@ -1,64 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -
    - <#if propertyName?? > -

    Classes with a restriction on ${propertyName!}

    -
    - <#else> -

    ${pageTitle!}

    - - <#if !displayOption?has_content> - <#assign displayOption = "asserted"> - -
    - - - - <#if displayOption == "group"> - - -
    - - <#if displayOption == "group"> - - <#else> - - - -
    - <#if propertyName?? && !jsonTree?? > - ${i18n().no_class_restrictions} - -
    - - - - - -${stylesheets.add('')} - -${scripts.add('', - '')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl deleted file mode 100644 index bc167c1..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/body/siteAdmin/siteAdmin-objectPropHierarchy_fr_CA.ftl +++ /dev/null @@ -1,78 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- - Used to display both the object and data property hierarchies, though there are - separate controllers for those. Also used to display lists of "all" object and - data properties, though there are separate controllers for those, too. - --> - <#if propertyType??> - <#assign propType = propertyType> -<#else> - <#assign propType = "group"> - - - -
    - -

    ${pageTitle!}

    - - <#if !displayOption?has_content> - <#assign displayOption = "hierarchy"> - - - <#if propType == "group"> -
    - - -
    - - <#else> -
    Object<#else>DataPropertyHierarchy" method="post" role="classHierarchy"> - - - ${i18n().object}<#else>${i18n().data} ${i18n().property}"/> -
    - - - -
    -
    - -
    - - - - - - -${stylesheets.add('')} - -${scripts.add('', - '')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl deleted file mode 100644 index 19638d8..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/defaultDataPropertyForm_fr_CA.ftl +++ /dev/null @@ -1,105 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#--If edit submission exists, then retrieve validation errors if they exist--> -<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> - <#assign submissionErrors = editSubmission.validationErrors/> - - - -

    ${editConfiguration.formTitle}

    - -<#--Display error messages if any--> -<#if submissionErrors?has_content> - - - -<#assign literalValues = "${editConfiguration.dataLiteralValuesAsString}" /> -<#assign datatype = editConfiguration.dataPredicateProperty.rangeDatatypeURI!"none" /> - -
    - - <#if editConfiguration.dataPredicatePublicDescription?has_content> - - - - <#if "HTML" == editConfiguration.dataPredicateProperty.editing!> - - - <#elseif datatype = "http://www.w3.org/2001/XMLSchema#integer" || datatype = "http://www.w3.org/2001/XMLSchema#int"> - - - <#elseif datatype = "http://www.w3.org/2001/XMLSchema#float"> - - - <#elseif datatype = "http://www.w3.org/2001/XMLSchema#boolean"> - - - <#elseif datatype = "http://www.w3.org/2001/XMLSchema#anyURI"> - - - <#elseif datatype = "http://www.w3.org/2001/XMLSchema#dateTime" || - datatype = "http://www.w3.org/2001/XMLSchema#date" || - datatype = "http://www.w3.org/2001/XMLSchema#time" || - datatype = "http://www.w3.org/2001/XMLSchema#gYearMonth" || - datatype = "http://www.w3.org/2001/XMLSchema#gYear" || - datatype = "http://www.w3.org/2001/XMLSchema#gMonth" > - <#include "dateTimeEntryForm.ftl"> - - <#else> - - - - -
    - <#--The submit label should be set within the template itself, right now - the default label for default data/object property editing is returned from Edit Configuration Template Model, - but that method may not return the correct result for other custom forms--> - - ${i18n().or} - ${i18n().cancel_link} - -
    - -<#if editConfiguration.includeDeletionForm = true> -<#include "defaultDeletePropertyForm.ftl"> - - - - -<#include "defaultFormScripts.ftl"> - -${stylesheets.add('')} - -${scripts.add('', - '')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl deleted file mode 100644 index 86df077..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/menuManagement_fr_CA.ftl +++ /dev/null @@ -1,115 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#--Template for adding and editing menu items --> - -<#-- some additional processing here which shows or hides the class group selection and classes based on initial action--> -<#assign existingClassGroupStyle = " " /> -<#assign selectClassGroupStyle = 'class="hidden"' /> -<#-- Reveal the class group and hide the class selects if adding a new menu item or editing an existing menu item with an empty class group (no classes)--> -<#if menuAction == "Add" || !classGroup?has_content> - <#assign existingClassGroupStyle = 'class="hidden"' /> - <#assign selectClassGroupStyle = " " /> - - - -

    ${menuAction} ${i18n().menu_item}

    - -
    -
    - - - - - - - - - -

    ${i18n().start_with_leading_slash}

    - -

    ${i18n().template_capitalized} *

    - - checked role="radio" /> - -
    - checked role="input" /> - - -
    class="hidden" role="region"> - * -
    - -
    -

    ${i18n().selected_page_content_type}

    -

    - ${associatedPage!} - ${i18n().change_content_type} -

    -
    - - <#-- Select class group --> -
    - - - -
    - -
    - <#-- Select classes in a class group --> -

    ${i18n().select_content_display} *

    - - <#include "menuManagement--classIntersections.ftl"> - - -
    - - ${i18n().or} ${i18n().cancel_link} - -

    * ${i18n().required_fields}

    -
    -
    - -${stylesheets.add('')} -${stylesheets.add('')} - -${scripts.add('')} -${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl deleted file mode 100644 index cd5be1e..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--browseClassGroups_fr_CA.ftl +++ /dev/null @@ -1,69 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#--Browse Class Groups Section--> -<#-----------Variable assignment--------------> -<#--Requires Menu action be defined in parent template--> - -<#assign classGroup = pageData.classGroup /> -<#assign classGroups = pageData.classGroups /> -<#-- some additional processing here which shows or hides the class group selection and classes based on initial action--> -<#assign existingClassGroupStyle = " " /> -<#assign selectClassGroupStyle = 'class="hidden"' /> -<#-- Reveal the class group and hide the class selects if adding a new menu item or editing an existing menu item with an empty class group (no classes)--> -<#-- Menu action needs to be sent from main template--> -<#if menuAction == "Add" || !classGroup?has_content> - <#assign existingClassGroupStyle = 'class="hidden"' /> - <#assign selectClassGroupStyle = " " /> - - - -<#--HTML Portion--> -
    - -
    - - - -
    - - -
    - <#-- Select classes in a class group --> -

    ${i18n().select_content_display} *

    - - <#include "pageManagement--classIntersections.ftl"> - -
    - - <#if menuAction == "Add"> - ${i18n().or} ${i18n().cancel_link} - -
    -
    - - <#--Include JavaScript specific to the types of data getters related to this content--> - <#include "pageManagement--browseClassGroupsScripts.ftl"> diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl deleted file mode 100644 index 898c8d7..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--fixedHtml_fr_CA.ftl +++ /dev/null @@ -1,23 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#--This contains the template for the fixed HTML content type that is to be cloned and used in page management--> - -
    - - - -
    - - <#if menuAction == "Add"> - ${i18n().or} ${i18n().cancel_link} - -
    - -${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl deleted file mode 100644 index 1456c95..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--searchIndividuals_fr_CA.ftl +++ /dev/null @@ -1,33 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#--This contains the template for the Search Index class individuals content type that is to be cloned and used in page management--> -<#assign classGroup = pageData.classGroup /> -<#assign classGroups = pageData.classGroups /> -<#assign classes = pageData.classes /> -
    - - - -
    - -
    - - <#if menuAction == "Add"> - or ${i18n().cancel_link} - -
    - -${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl deleted file mode 100644 index bfb8a07..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement--sparqlQuery_fr_CA.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#--This contains the template for the Sparql Query content type that is to be cloned and used in page management--> -
    - - - <#--Hiding query model for now--> - <#-- --> - - -
    - - <#if menuAction == "Add"> - or ${i18n().cancel_link} - -
    - -${scripts.add('')} diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl deleted file mode 100644 index aed923c..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/pageManagement_fr_CA.ftl +++ /dev/null @@ -1,209 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> -<#import "lib-vitro-form.ftl" as lvf> - -<#--------Set up variables--------> -<#assign pageData = editConfiguration.pageData /> -<#assign menuAction = pageData.menuAction /> -<#assign pageAvailablePermissions = pageData.availablePermissions /> -<#assign pageAvailablePermissionsURIsList = pageData.availablePermissionOrderedList /> - -<#assign pageName = "" /> -<#assign selectedTemplateType = "default" /> -<#assign prettyUrl = ""/> -<#assign menuItem = ""/> -<#assign menuLinkText = "" /> -<#assign action = "" /> -<#assign menuPosition = pageData.highestMenuPosition /> -<#assign addMenuItem = "" /> -<#assign pageHeading = "${i18n().add_new_page}" /> -<#assign saveBtnText = "${i18n().save_new_page}" /> -<#if pageData.addMenuItem?has_content> - <#assign addMenuItem = pageData.addMenuItem /> - -<#--Existing Values For Editing condition--> -<#assign literalValues = editConfiguration.existingLiteralValues /> -<#assign uriValues = editConfiguration.existingUriValues /> -<#if menuAction = "Edit"> - <#assign pageName = lvf.getFormFieldValue(editSubmission, editConfiguration, "pageName")/> - <#assign prettyUrl = lvf.getFormFieldValue(editSubmission, editConfiguration, "prettyUrl")/> - <#assign menuItem = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuItem")/> - <#assign menuLinkText = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuLinkText")/> - <#assign customTemplate = lvf.getFormFieldValue(editSubmission, editConfiguration, "customTemplate")/> - <#assign selfContainedTemplate = lvf.getFormFieldValue(editSubmission, editConfiguration, "isSelfContainedTemplate")/> - <#assign action = lvf.getFormFieldValue(editSubmission, editConfiguration, "action")/> - - <#assign pageHeading = "${i18n().edit_page(pageName)}" /> - <#assign saveBtnText = "${i18n().save_changes}" /> - <#if customTemplate?has_content> - <#if selfContainedTemplate?has_content> - <#assign selectedTemplateType = "selfContained" /> - <#else> - <#assign selectedTemplateType = "custom" /> - - - <#assign editMenuPosition = lvf.getFormFieldValue(editSubmission, editConfiguration, "menuPosition")/> - <#--if menu position exists for a menu item, then use that, otherwise use the highest available menu position number from page data--> - <#if editMenuPosition?has_content && editMenuPosition != ""> - <#assign menuPosition = editMenuPosition/> - - -<#--If edit submission exists, then retrieve validation errors if they exist--> -<#if editSubmission?has_content && editSubmission.submissionExists = true && editSubmission.validationErrors?has_content> - <#assign submissionErrors = editSubmission.validationErrors/> - - -<#------------HTML Portion-------------> - - -<#--class group section has associated page uri, but that depends on editing a current page or if one is selected later--> -
    - <#--form method="POST" action="${formUrls}" role="${menuAction} menu item"--> -
    - - -

    ${pageHeading}

    - -
    -
    style="display:none;"> -
    - -  ${i18n().add_types} -
    -
    -
    -
    - - <#--This include file contains links to the templates that will be cloned and used for the different content types--> - - <#include "pageManagement--contentTemplates.ftl"> -
    -
    - -
    -
    - - - - -

    ${i18n().begin_with_slash_no_example}
    ${i18n().slash_example}

    -

    ${i18n().template_capitalized} *

    - checked="checked" role="radio" /> - -
    - checked="checked" role="input" /> - -
    - checked="checked" role="input" /> -
    -
    class="hidden" role="region"> - * - -
    - - -
    -
    - - - -
    -
    -
    -
    -
    - or - ${i18n().cancel_link} -
    -

    * ${i18n().required_fields}

    -
    - - - - -
    -
    - - - -<#include "pageManagement--customDataScript.ftl"> - - -${stylesheets.add('')} -${stylesheets.add('')} -${scripts.add('')} -${scripts.add('')} -${scripts.add('')} -${scripts.add('')} -${scripts.add('')} -<#--Process Data Getter Utils will refer to the various content type specific javascript files that should -already have been added within the template section for each content type--> -${scripts.add('')} -<#--Page management is used on page load and utilizes processDataGetterUtils as well as the custom data from the custom data script--> -${scripts.add('')} - diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl deleted file mode 100644 index a387afd..0000000 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/page/partials/headScripts_fr_CA.ftl +++ /dev/null @@ -1,18 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- Template for scripts that must be loaded in the head --> - - - - - -<#-- script for enabling new HTML5 semantic markup in IE browsers --> - - -${headScripts.list()} From 5eec17c87f37d34c9e5a0243eaacc53b1c92d2eb Mon Sep 17 00:00:00 2001 From: Kampe Date: Mon, 25 Jan 2021 16:57:15 +0100 Subject: [PATCH 22/28] [VIVO-1936] i18n: Removed language flag images --- .../vitro/i18n/images/select_locale_en_CA.png | Bin 21577 -> 0 bytes .../vitro/i18n/images/select_locale_en_US.gif | Bin 1490 -> 0 bytes .../vitro/i18n/images/select_locale_es.png | Bin 6494 -> 0 bytes .../vitro/i18n/images/select_locale_fr_CA.png | Bin 919 -> 0 bytes .../vitro/i18n/images/select_locale_pt_BR.gif | Bin 3084 -> 0 bytes 5 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png delete mode 100644 en_US/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_US.gif delete mode 100644 es/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png delete mode 100644 fr_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png delete mode 100644 pt_BR/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_pt_BR.gif diff --git a/en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png b/en_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_en_CA.png deleted file mode 100644 index 8c487f3f7820139e493bcdf76fa39a347320e8e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21577 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 CUjG>Y diff --git a/es/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png b/es/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_es.png deleted file mode 100644 index 25b7b020502ddbc88d0fa839712bd97efcd3b857..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6494 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 Ef;w++Q~&?~ diff --git a/fr_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png b/fr_CA/webapp/src/main/webapp/themes/vitro/i18n/images/select_locale_fr_CA.png deleted file mode 100644 index a9246fc54871035ed3443644e14ec958c204def9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 919 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 Qzxblx(S~VNY2J_d4}*-KH~;_u From b7f531a3c67d09494ef823b0173598c3201b0f26 Mon Sep 17 00:00:00 2001 From: William Welling Date: Mon, 25 Jan 2021 23:16:10 -0600 Subject: [PATCH 23/28] french ftl function override of capitalize group name --- .../webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl index 68a189a..7e111e4 100644 --- a/fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/lib/lib-properties_fr_CA.ftl @@ -342,3 +342,6 @@ name will be used as the label. --> <#return groupName> +<#function capitalizeGroupName propertyGroupName> + <#return propertyGroupName?cap_first> + From 9772097aa954d69e7a6f1d854757bae31a8d87b6 Mon Sep 17 00:00:00 2001 From: Ben Date: Wed, 27 Jan 2021 12:11:42 -0700 Subject: [PATCH 24/28] [VIVO-1805] - Further i18n for BasicValidationVTwo.java (#36) * Add first and last name form validation strings * Further i18n for BasicValidationVTwo.java Partial resolution of: https://jira.lyrasis.org/browse/VIVO-1805 --- de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 3 +++ en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties | 3 +++ en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 4 ++++ es/webapp/src/main/webapp/i18n/all_es.properties | 3 +++ fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 3 +++ pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 3 +++ 6 files changed, 19 insertions(+) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index 5698e7d..b877586 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -940,3 +940,6 @@ or = oder required_field_empty_msg = Dieses Feld darf nicht leer sein. data_not_past_msg = Bitte geben Sie ein zukünftiges Zieldatum für die Veröffentlichung ein (vergangene Daten sind ungültig). +invalid_date_form_msg = muss im gültigen Datumsformat mm/tt/jjjj sein. +file_must_be_entered_msg = für dieses Feld muss eine Datei eingegeben werden. +invalid_url_msg = Diese URL muss mit http:// oder https:// beginnen. diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index b903e7f..37296fa 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -949,3 +949,6 @@ or = or required_field_empty_msg = This field must not be empty. data_not_past_msg = Please enter a future target date for publication (past dates are invalid). +invalid_date_form_msg = must be in valid date format mm/dd/yyyy. +file_must_be_entered_msg = a file must be entered for this field. +invalid_url_msg = This URL must start with http:// or https:// diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index e745d8c..5f5a525 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -950,3 +950,7 @@ or = or required_field_empty_msg = This field must not be empty. data_not_past_msg = Please enter a future target date for publication (past dates are invalid). +invalid_date_form_msg = must be in valid date format mm/dd/yyyy. +file_must_be_entered_msg = a file must be entered for this field. +invalid_url_msg = This URL must start with http:// or https:// + diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 8fe726d..0805a8c 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -935,3 +935,6 @@ or = o required_field_empty_msg = Este campo no debe estar vacío. data_not_past_msg = Introduzca una fecha objetivo futura para la publicación (las fechas anteriores no son válidas). +invalid_date_form_msg = debe tener un formato de fecha válido mm / dd / aaaa. +file_must_be_entered_msg = se debe ingresar un archivo para este campo. +invalid_url_msg = Esta URL debe comenzar con http: // o https: // diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 3ea17d2..8a8f4cc 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -955,3 +955,6 @@ or = ou required_field_empty_msg = Ce champ ne doit pas être vide. data_not_past_msg = Veuillez saisir une date cible future pour la publication (les dates passées ne sont pas valides). +invalid_date_form_msg = doit être au format mm/jj/aaaa. +file_must_be_entered_msg = un fichier doit être spécifié pour ce champ. +invalid_url_msg = Cette URL doit commencer par http:// ou https:// diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index b7c9bfb..4cce7e0 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -951,3 +951,6 @@ or = ou required_field_empty_msg = Este campo não deve estar vazio. data_not_past_msg = Insira uma data alvo futura para publicação (datas anteriores são inválidas). +invalid_date_form_msg = deve estar em formato de data válido mm / dd / aaaa. +file_must_be_entered_msg = um arquivo deve ser inserido para este campo. +invalid_url_msg = Este URL deve começar com http: // ou https: // From 0fdfcacada1017ea19b64190d3799a357511d072 Mon Sep 17 00:00:00 2001 From: Benjamin Kampe Date: Thu, 28 Jan 2021 20:08:45 +0100 Subject: [PATCH 25/28] Vivo 1852 (#38) * [VIVO-1852] i18n: Minor changes to the french translation in the entry page -Research- Co-authored-by: Kampe --- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 8a8f4cc..ab14bf4 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -568,7 +568,7 @@ browse_page_javascript_one = Cette page de navigation nécessite JavaScript, mai browse_page_javascript_two = pour rechercher des informations. index_page = page index -browse_all_in_class = Parcourir les fiches de cette classe +browse_all_in_class = Parcourir les fiches de cette catégorie select_all = tout sélectionner all = tous browse_all_starts_with = Parcourir toutes fiches dont les noms commencent par {0} From efd3f11f6e80326d638f7787c76330b8285105fb Mon Sep 17 00:00:00 2001 From: Nicolas D <46490666+nicalico@users.noreply.github.com> Date: Fri, 29 Jan 2021 09:45:38 -0500 Subject: [PATCH 26/28] Moving some Vitro related properties from VIVO-languages (#39) Fix to : https://jira.lyrasis.org/browse/VIVO-1877 Related PR : - https://github.com/vivo-project/Vitro/pull/203 - https://github.com/vivo-project/VIVO-languages/pull/89 --- de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties | 7 +++++++ en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties | 7 +++++++ en_US/webapp/src/main/webapp/i18n/all_en_US.properties | 6 ++++++ es/webapp/src/main/webapp/i18n/all_es.properties | 7 +++++++ fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 7 +++++++ pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties | 7 +++++++ 6 files changed, 41 insertions(+) diff --git a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties index b877586..3a0ed9a 100644 --- a/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties +++ b/de_DE/webapp/src/main/webapp/i18n/all_de_DE.properties @@ -943,3 +943,10 @@ data_not_past_msg = Bitte geben Sie ein zukünftiges Zieldatum für die Veröffe invalid_date_form_msg = muss im gültigen Datumsformat mm/tt/jjjj sein. file_must_be_entered_msg = für dieses Feld muss eine Datei eingegeben werden. invalid_url_msg = Diese URL muss mit http:// oder https:// beginnen. + +label.dateTimeWithPrecision.year_capitalized = Jahr +label.dateTimeWithPrecision.month_capitalized = Monat +label.dateTimeWithPrecision.day_capitalized = Tag +label.dateTimeWithPrecision.hour_capitalized = Stunde +label.dateTimeWithPrecision.minutes_capitalized = Minuten +label.dateTimeWithPrecision.seconds_capitalized = Sekunden diff --git a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties index 37296fa..76186ea 100644 --- a/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties +++ b/en_CA/webapp/src/main/webapp/i18n/all_en_CA.properties @@ -952,3 +952,10 @@ data_not_past_msg = Please enter a future target date for publication (past date invalid_date_form_msg = must be in valid date format mm/dd/yyyy. file_must_be_entered_msg = a file must be entered for this field. invalid_url_msg = This URL must start with http:// or https:// + +label.dateTimeWithPrecision.year_capitalized = Year +label.dateTimeWithPrecision.month_capitalized = Month +label.dateTimeWithPrecision.day_capitalized = Day +label.dateTimeWithPrecision.hour_capitalized = Hour +label.dateTimeWithPrecision.minutes_capitalized = Minutes +label.dateTimeWithPrecision.seconds_capitalized = Seconds diff --git a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties index 5f5a525..4b2e282 100644 --- a/en_US/webapp/src/main/webapp/i18n/all_en_US.properties +++ b/en_US/webapp/src/main/webapp/i18n/all_en_US.properties @@ -954,3 +954,9 @@ invalid_date_form_msg = must be in valid date format mm/dd/yyyy. file_must_be_entered_msg = a file must be entered for this field. invalid_url_msg = This URL must start with http:// or https:// +label.dateTimeWithPrecision.year_capitalized = Year +label.dateTimeWithPrecision.month_capitalized = Month +label.dateTimeWithPrecision.day_capitalized = Day +label.dateTimeWithPrecision.hour_capitalized = Hour +label.dateTimeWithPrecision.minutes_capitalized = Minutes +label.dateTimeWithPrecision.seconds_capitalized = Seconds diff --git a/es/webapp/src/main/webapp/i18n/all_es.properties b/es/webapp/src/main/webapp/i18n/all_es.properties index 0805a8c..bc736a4 100644 --- a/es/webapp/src/main/webapp/i18n/all_es.properties +++ b/es/webapp/src/main/webapp/i18n/all_es.properties @@ -938,3 +938,10 @@ data_not_past_msg = Introduzca una fecha objetivo futura para la publicación (l invalid_date_form_msg = debe tener un formato de fecha válido mm / dd / aaaa. file_must_be_entered_msg = se debe ingresar un archivo para este campo. invalid_url_msg = Esta URL debe comenzar con http: // o https: // + +label.dateTimeWithPrecision.year_capitalized = Año +label.dateTimeWithPrecision.month_capitalized = Mes +label.dateTimeWithPrecision.day_capitalized = Día +label.dateTimeWithPrecision.hour_capitalized = Hora +label.dateTimeWithPrecision.minutes_capitalized = Minutas +label.dateTimeWithPrecision.seconds_capitalized = Segundos diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index ab14bf4..7834b86 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -958,3 +958,10 @@ data_not_past_msg = Veuillez saisir une date cible future pour la publication (l invalid_date_form_msg = doit être au format mm/jj/aaaa. file_must_be_entered_msg = un fichier doit être spécifié pour ce champ. invalid_url_msg = Cette URL doit commencer par http:// ou https:// + +label.dateTimeWithPrecision.year_capitalized = Année +label.dateTimeWithPrecision.month_capitalized = Mois +label.dateTimeWithPrecision.day_capitalized = Jour +label.dateTimeWithPrecision.hour_capitalized = Heure +label.dateTimeWithPrecision.minutes_capitalized = Minutes +label.dateTimeWithPrecision.seconds_capitalized = Secondes diff --git a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties index 4cce7e0..0824984 100644 --- a/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties +++ b/pt_BR/webapp/src/main/webapp/i18n/all_pt_BR.properties @@ -954,3 +954,10 @@ data_not_past_msg = Insira uma data alvo futura para publicação (datas anterio invalid_date_form_msg = deve estar em formato de data válido mm / dd / aaaa. file_must_be_entered_msg = um arquivo deve ser inserido para este campo. invalid_url_msg = Este URL deve começar com http: // ou https: // + +label.dateTimeWithPrecision.year_capitalized = Ano +label.dateTimeWithPrecision.month_capitalized = Mês +label.dateTimeWithPrecision.day_capitalized = Dia +label.dateTimeWithPrecision.hour_capitalized = Hora +label.dateTimeWithPrecision.minutes_capitalized = Minutos +label.dateTimeWithPrecision.seconds_capitalized = Segundos From d67f58a2eb0c14be1882252e466e2aa8755cb047 Mon Sep 17 00:00:00 2001 From: dofeldsc Date: Fri, 29 Jan 2021 15:48:03 +0100 Subject: [PATCH 27/28] removed redundant property in i18n-file, ticket VIVO-1793 --- fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties | 1 - 1 file changed, 1 deletion(-) diff --git a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties index 7834b86..c31d808 100644 --- a/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties +++ b/fr_CA/webapp/src/main/webapp/i18n/all_fr_CA.properties @@ -947,7 +947,6 @@ maximum_cardinality = cardinalité maximale cardinality = cardinalité not = ne pas and = et -or = ou # # validation messages ( BasicValidationVTwo.java ) From 19b57cb4ab65dbaeaab6f6e4256c379b195364c6 Mon Sep 17 00:00:00 2001 From: dofeldsc Date: Fri, 29 Jan 2021 16:44:57 +0100 Subject: [PATCH 28/28] [VIVO-1952] i18n: autoCompleteObjectPropForm_fr_CA.ftl in wrong repository (#40) * moved autoCompleteObjectPropForm_fr_CA.ftl from VIVO-languages to Vitro-languages, ticket VIVO-1952 * updated template version from another ticket of the sprint, ticket VIVO-1952 Partial resolution for: https://jira.lyrasis.org/browse/VIVO-1952 --- .../autoCompleteObjectPropForm_fr_CA.ftl | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/autoCompleteObjectPropForm_fr_CA.ftl diff --git a/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/autoCompleteObjectPropForm_fr_CA.ftl b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/autoCompleteObjectPropForm_fr_CA.ftl new file mode 100644 index 0000000..cddcb80 --- /dev/null +++ b/fr_CA/webapp/src/main/webapp/templates/freemarker/edit/forms/autoCompleteObjectPropForm_fr_CA.ftl @@ -0,0 +1,145 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> +<#--Assign variables from editConfig--> +<#assign rangeOptions = editConfiguration.pageData.objectVar /> +<#-- +<#assign rangeOptionsExist = false /> +<#if (rangeOptions?keys?size > 0)> + <#assign rangeOptionsExist = true/> + + --> + +<#assign rangeOptionsExist = true /> +<#assign rangeVClassURI = editConfiguration.objectPredicateProperty.rangeVClassURI!"" /> +<#assign objectTypes = editConfiguration.pageData.objectTypes /> +<#assign objectTypesSize = objectTypes?length /> +<#assign objectTypesExist = false /> +<#assign multipleTypes = false /> +<#if (objectTypesSize > 1)> + <#assign objectTypesExist = true /> + +<#if objectTypes?contains(",")> + <#assign multipleTypes = true/> + +<#assign sparqlForAcFilter = editConfiguration.pageData.sparqlForAcFilter /> +<#assign editMode = editConfiguration.pageData.editMode /> +<#assign propertyNameForDisplay = "" /> +<#if editConfiguration.objectPropertyNameForDisplay?has_content> + <#assign propertyNameForDisplay = editConfiguration.objectPropertyNameForDisplay /> + +<#if editMode = "edit" > + <#assign titleVerb = "${i18n().edit_capitalized}" /> + <#assign objectLabel = editConfiguration.pageData.objectLabel /> + <#assign selectedObjectUri = editConfiguration.objectUri /> + <#assign submitButtonText = "${i18n().save_button}" /> +<#else> + <#assign titleVerb = "${i18n().add_capitalized}" > + <#assign objectLabel = "" /> + <#assign selectedObjectUri = ""/> + <#assign submitButtonText = "${i18n().create_entry}" /> + +<#assign formTitle = editConfiguration.formTitle /> +<#if editConfiguration.formTitle?contains("collaborator") > + <#assign formTitle = "${i18n().select_existing_collaborator(editConfiguration.subjectName)}" /> +<#elseif rangeVClassURI?contains("IAO_0000030")> + <#assign formTitle = "${i18n().select_an_existing_document}" + " ${i18n().for} " + editConfiguration.subjectName/> + +<#--In order to fill out the subject--> +<#assign acFilterForIndividuals = "['" + editConfiguration.subjectUri + "']" /> + +

    ${formTitle}

    + +<#if editConfiguration.propertySelectFromExisting = true> + <#if rangeOptionsExist = true > +
    + + <#if editConfiguration.propertyPublicDescription?has_content> +

    ${editConfiguration.propertyPublicDescription}

    + + + <#---This section should become autocomplete instead--> +

    + + +

    + +
    +

    + + + (${i18n().verify_this_match} ${i18n().or} + ${i18n().change_selection}) +

    + +
    + + <#--The above section should be autocomplete--> + +

    + + + ${i18n().or} + ${i18n().cancel_link} +

    +
    + <#else> +

    ${i18n().there_are_no_entries_for_selection}

    + + +

     

    +<#if editConfiguration.propertyOfferCreateNewOption = true> +<#include "defaultOfferCreateNewOptionForm.ftl"> + + + +<#if editConfiguration.propertySelectFromExisting = false && editConfiguration.propertyOfferCreateNewOption = false> +

    ${i18n().editing_prohibited}

    + + + +<#if editConfiguration.includeDeletionForm = true> +<#include "defaultDeletePropertyForm.ftl"> + + + +<#assign sparqlQueryUrl = "${urls.base}/ajax/sparqlQuery" > +<#--Passing in object types only if there are any types returned, otherwise +the parameter should not be passed at all to the search. +Also multiple types parameter set to true only if more than one type returned--> + +<#-- + edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator + edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AddAttendeeRoleToPersonGenerator +--> + +${stylesheets.add('')} + ${stylesheets.add('')} + ${stylesheets.add('')} + + + ${scripts.add('', + '', + '', + '')}