Skip to content

Commit

Permalink
Merge pull request #23 from UKGovLD/1-translatable-ui
Browse files Browse the repository at this point in the history
Translatable UI
  • Loading branch information
simonoakesepimorphics authored Dec 3, 2020
2 parents df5d6c6 + 6dcae0c commit d4fdd3f
Show file tree
Hide file tree
Showing 67 changed files with 841 additions and 373 deletions.
299 changes: 299 additions & 0 deletions ldregistry/config/language/messages/en.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,299 @@
ui.search=Search
ui.close=Close
ui.cancel=Cancel
ui.uri=URI
ui.submit=Submit
ui.allFieldsRequired=All fields are required.
ui.emptyValue=No value set
ui.pane.loading=Pane is loading...
ui.download=Download

about.service=This service is based on the UKGovLD <a href="https://github.com/UKGovLD/registry-core/wiki"> design</a> for a Linked Data registry.

admin.label=Administrator
admin.action.complete=Admin action completed
admin.action.menu=See the Admin menu for further actions available.
admin.actions.heading=Actions

admin.list.current=Current administrators
admin.list.add.button=Add administrator
admin.list.remove.button=remove
admin.list.remove.warning=Warning: this will remove administrator rights from this person!
admin.list.locate=Locate a registered user to grant administration rights to

admin.permissions.label=View permissions
admin.permissions.grant.button=grant
admin.permissions.grant.global=Click grant to give a user {0} privileges.
admin.permissions.grant.uri=Click grant to give a user {0} privileges on {1}.
admin.permissions.grant.search=Locate a registered user to grant {0} rights to
admin.permissions.submitter.label=Submitter
admin.permissions.reviewer.label=Reviewer

admin.users.label=Manage users
admin.users.heading=Manage users
admin.users.register.heading=Register a new user
admin.users.register.button=Register a new user
admin.users.remove.button=Remove user
admin.users.admin.button=Make admin
admin.users.admin.label=Administrator
admin.users.replication.button=Grant replication
admin.users.details.heading=User details
admin.users.create.button=Create account

admin.loginRequired=You must be logged in as an administrator to access this page.

annotate.label=Attach graph
annotate.heading=Annotate the item with a data graph
annotate.input.file=Choose annotation file to upload:
annotate.input.label=Annotation label to use:
annotate.button=Annotate

apiKey.heading=Create a temporary password (API Key)
apiKey.passwordWarning=Only use this if you authenticate via OAuth (e.g. Google login). If you login by password, this will replace the password with a temporary one that will expire.
apiKey.password=Your temporary API password is: <strong>{0}</strong>
apiKey.password.create.button=Create password
apiKey.example.login=Example login command
apiKey.minutesToLive=Minutes to live

backups.label=Backups
backups.heading=Backups
backups.schedule.button=Schedule backups

checkUri.label=Check URI
checkUri.heading=Check whether a URI is registered
checkUri.button=Check
checkUri.uri=URI to check
checkUri.notFound=<strong>Not found.</strong> URI <{0}> does not seem to be registered.
checkUri.registered=URI is registered:

compare.item.new.label=New
compare.item.suggested.label=Suggested
compare.exactMatch.description=One or more entries exist with the same label or identifier:
compare.closeMatch.description=One or more entries exist with a similar label:
compare.noMatch.description=No similar entries were found.

error.title=Registry Error
error.heading=Sorry
error.internal.title=Internal error {0}
error.internal.description=Sorry, an internal error has occurred.
error.notFound.heading=Not found (404)
error.notFound.note=Sorry, the URI <a href="{0}">{1}</a> was not found on this site.

footer.support.heading=Support
footer.about.heading=About this page
footer.about.credit=Design and development by <a href="{1}">{0}</a>.
footer.language.cookies.notice=This website uses cookies to store your language preferences.

import.label=Import

login.heading=Login or register
login.label=Login
login.title=Registry login
login.note=It is not necessary to login or register to simply access the registry. This is only necessary if you need to add or change entries.
login.button=Login
login.oauth.note=Or log in to a registered account via an OAuth provider.
login.oauth.provider.login=Login via {0}
login.oauth.provider.register=Create account via {0}
login.register.heading=Register as a new user
login.register.button=Create account
login.register.oauth=Or register via an OAuth provider.
login.cookies.notice=If you register or login this site will use cookies to record your preferred OpenID provider (if any) and to record the ID you are logged in with for this session.

logout.button=Logout
logout.confirm=Do you want to logout?

nav.browse.label=Browse
nav.about.label=About
nav.admin.label=Admin
nav.advanced.label=Advanced
nav.user.label=User
nav.toggle.button=Toggle navigation

service.beta.label=beta
service.beta.description=This is a trial service &ndash; your <a href="mailto:{0}">feedback</a> will help us to improve it.

sparql.label=SPARQL
sparql.title=SPARQL Query
sparql.example=Example queries
sparql.prefix.heading=Prefixes
sparql.prefix.prefix=Prefix
sparql.prefix.add=Add a SPARQL prefix
sparql.prefix.add.button=add prefix
sparql.prefix.lookup=Lookup <span></span> on prefix.cc
sparql.endpoint.label=SPARQL endpoint
sparql.results.heading=Query results
sparql.results.table.button=table
sparql.results.label=Results
sparql.results.format.table=table
sparql.results.format.plain=plain text
sparql.perform.button=perform query
sparql.waiting=waiting for server action to complete

textIndex.rebuild.label=Rebuild text index
textIndex.rebuild.heading=Rebuild text index
textIndex.rebuild.button=Reindex

textSearch.title=Search: {0}
textSearch.results.heading=Search results for: {0}

redirect.label=Create redirect
redirect.heading=Create an HTTP forwarding record for {0}

register.create.button=Register new or changed entries
register.hideDeprecated=Hide deprecated entries
register.showAll=Show all entries
register.setStatus.heading="Set status of register contents to ..."
register.setStatus.button=Set contents status
register.createManual.heading=Create a sub-register in {0}
register.createManual.button=Create register
register.createManual.type.description=Type of register to create
register.type.default.label=Default simple register
register.type.scheme.label=Concept scheme
register.type.tree.label=Hierarchical scheme (tree)
register.type.collection.label=Simple concept collection
register.type.ontology.label=Ontology
register.category.description=Category tag for register
register.owner.description=Owner of register
register.entity.description=Type of entities in register
register.license.description=License that applies to the register contents
register.import.heading=Import a replacement register tree
register.import.button=Import
register.notation.description=Notation (identifier) for the register
register.notation.prompt=Short identifier (no spaces, only allowed symbols are - and _)
register.label.description=Label for the register
register.label.prompt=Short name
register.description.description=Description of the register
register.description.prompt=Description
register.update.heading=Register new or changed entries
register.update.upload.description=Upload a file of entries in <code>csv</code>csv, <code>jsonld</code> or <code>ttl</code> or format.
register.update.upload.button=Upload
register.update.content.label=File contents:
register.update.content.edit.description=may contain patches to existing entries as well as new registrations
register.update.content.batch.description=contains a sub-register plus its contents ("bulk upload")
register.update.content.new.description=contains new entries only, reject if any have already been registered
register.update.file.label=Choose patch file to upload:
register.heading=Register: {0}
register.property.heading=All properties of the register
register.property.label=All properties
register.supersedes.label=Supersedes
register.empty.note=...currently empty
register.view.tree.heading=Contents (tree view)
register.view.tree.description=View contents as a hierarchy
register.view.list.heading=Contents (list view)
register.view.list.label=Show as list
register.view.list.description=View contents as a list
register.view.ontology.label=Show as class diagram
register.view.ontology.description=View contents as a class diagram
register.permission.open.button=Open
register.permission.open.description=Any authorized user can register items
register.permission.fullyOpen.button=Fully open
register.permission.fullyOpen.description=Any authorized user can register items, update them and update status
register.list.heading=List all registers
register.list.filters.heading=Filters
register.reserved.heading=Reserved items
register.reserved.note=The following items are reserved for future use: {0}
registerItem.tab.prompt=Select tab to expand

registerItem.item.label=Item
registerItem.register.label=Register
registerItem.status.label=Status
registerItem.name.label=Name
registerItem.notation.label=Notation
registerItem.description.label=Description
registerItem.types.label=Types
registerItem.delegated.note=(delegated)
registerItem.replace.button=Replace
registerItem.replace.heading=Replace entry with new version
registerItem.replace.input.file=Choose file containing replacement entry
registerItem.delete.button=Delete
registerItem.delete.confirm=Do you really want to delete {0}?
registerItem.edit.button=Edit
registerItem.setStatus.button=Set status
registerItem.setStatus.heading=Set status of {0} to ...
registerItem.createManual.heading=Create a new entry in {0}
registerItem.createManual.button=Manual entry
registerItem.createManual.form.prompt=Choose a form:
registerItem.create.button=Create and register
registerItem.compare.button=Find similar
registerItem.property.prompt=URI, can use prefixes, separate multiple values with ",".
registerItem.edit.heading=Edit: {0}
registerItem.edit.external.note=Sorry, you can only update managed entities, this looks like an external reference.
registerItem.edit.syntax.note=The values will be converted to Turtle syntax (anything that looks like a URL will be wrapped in &lt;...&gt;,anything that looks like a general string will be quoted). To force a particular interpretation (e.g. to enter a string that looks like a number), use explicit Turtle syntax.
registerItem.edit.property.prompt=Click on values to edit them.
registerItem.edit.save.button=Save changes
registerItem.propertyTable.label=Property Table
registerItem.prefix.label=Prefixes
registerItem.links.header=Links
registerItem.links.notFound=...None found
registerItem.heading=Entry: {0}
registerItem.version.heading=showing version {0}
registerItem.metadata.heading=Core metadata
registerItem.metadata.type.label=is a
registerItem.metadata.category.label=category
registerItem.metadata.owner.label=owned by
registerItem.metadata.contains.label=contains
registerItem.metadata.license.label=licence
registerItem.metadata.attribution.label=rights attribution
registerItem.metadata.modifiedDate.label=changed on
registerItem.metadata.submitter.label=submitted by
registerItem.metadata.acceptedDate.label=accepted on
registerItem.metadata.successor.label=superseded by
registerItem.metadata.predecessor.label=supersedes
registerItem.metadata.all.heading=All metadata properties
registerItem.metadata.all.label=All metadata
registerItem.contents.label=Contents
registerItem.action.status.label=Status
registerItem.action.register.label=Register
registerItem.action.create.label=Create
registerItem.action.edit.label=Edit
registerItem.admins.heading=Administrators for this item
registerItem.admins.notFound=No local authorizations found
registerItem.admins.remove.button=remove
registerItem.download.format.heading=Download formats available
registerItem.download.plain.label=plain
registerItem.download.withMetadata.label=with metadata
registerItem.download.export.label=Export all
registerItem.download.export.button=export
registerItem.successor.prompt=URI for new item
registerItem.superseded.label=or, superseded by:
registerItem.superseded.button=superseded
registerItem.history.heading=Historical versions available
registerItem.history.label=History
registerItem.history.version.version.label=Version
registerItem.history.version.validFrom.label=Valid from
registerItem.history.version.validTo.label=Valid to
registerItem.definition.heading=Definition

registry.label=Registry

resource.heading=Resource: {0}
resource.description.notFound=no description supplied
resource.type.label=Type:

user.loginRequired=You must be logged in to access this page.

user.password.label=Password
user.password.current=Current password
user.password.new=New password
user.password.repeat=Repeat password
user.password.reset.heading=Change password for {0}
user.password.reset.button=Reset password
user.password.change.label=Change password
user.password.change.heading=Change password
user.password.change.button=Change password
user.password.temporary.label=Create temporary password

user.permissions.heading=Permissions
user.permissions.none=No explicit permissions granted
user.permissions.admin.note=As an administrator, you have full permissions.
user.permissions.granted=Explicitly granted permissions (inherit down the tree)

user.username.label=Username
user.name.label=Name
user.name.prompt=Display name or nickname
user.username.prompt=Username e.g. email address
user.displayName.label=Display Name
user.displayName.prompt=Display name or nickname
user.isAdmin.label=Administrator?
user.actions.label=Actions
user.remove.button=Remove
4 changes: 1 addition & 3 deletions ldregistry/templates/about.vm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
</div>
</div>

<p>This is a pilot service to provide management and public access to codes and codelists used by the Defra family of organizations.</p>

<p>It is based on the UKGovLD <a href="https://github.com/UKGovLD/registry-core/wiki"> design</a> for a Linked Data registry.</p>
<p>$msg['about.service']</p>

#parse("structure/_footer.vm")
10 changes: 5 additions & 5 deletions ldregistry/templates/actions/_attach-graph-dialog.vm
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,29 @@
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>Annotate the item with a data graph</h3>
<h3>$msg['annotate.heading']</h3>
</div>
<div id="annotate-dialog-status-body" class="modal-body">
<form class="ajax-form" id="annotate-form" action="$root/$uri" method="post" enctype="multipart/form-data" data-action="$root/$uri">
<div class="form-group">
<label for="replace-chooser">
Choose annotation file to upload:
$msg['annotate.input.file']
</label>
<input id="replace-chooser" class="form-control" type="file" name="file" multiple />
</div>
<div class="form-group">
<label for="annotation">
Annotation label to use:
$msg['annotate.input.label']
</label>
<input class="form-control" type="text" name="annotation" id="annotation" value="label" />
</div>
<input type="hidden" name="action" value="annotate" />
<button class="btn form-submit">Annotate</button>
<button class="btn form-submit">$msg['annotate.button']</button>
</form>
<div class="ajax-error"></div>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn" data-dismiss="modal" aria-hidden="true">$msg['ui.close']</button>
</div>
</div>
</div>
Expand Down
18 changes: 9 additions & 9 deletions ldregistry/templates/actions/_configure-create-register.vm
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@

#set( $createRegisterTypes = [ "default", "scheme", "tree", "collection", "ontology" ] )
#set( $createRegisterTypeMap = {
"default" : { "label" : "Default simple register" },
"scheme" : { "label" : "Concept scheme", "imembership" : "skos:inScheme", "type" : "skos:ConceptScheme" },
"tree" : { "label" : "Hierarchical scheme (tree view)", "imembership" : "skos:inScheme", "type" : "skos:ConceptScheme", "hChild" : "skos:narrower", "hRoot" : "skos:topConceptOf" },
"collection" : { "label" : "Simple concept collection", "membership" : "skos:member", "type" : "skos:Collection" },
"ontology" : { "label" : "Ontology", "imembership" : "rdfs:isDefinedBy", "type" : "owl:Ontology" }
"default" : { "label" : $msg['register.type.default.label'] },
"scheme" : { "label" : $msg['register.type.scheme.label'], "imembership" : "skos:inScheme", "type" : "skos:ConceptScheme" },
"tree" : { "label" : $msg['register.type.tree.label'], "imembership" : "skos:inScheme", "type" : "skos:ConceptScheme", "hChild" : "skos:narrower", "hRoot" : "skos:topConceptOf" },
"collection" : { "label" : $msg['register.type.collection.label'], "membership" : "skos:member", "type" : "skos:Collection" },
"ontology" : { "label" : $msg['register.type.ontology.label'], "imembership" : "rdfs:isDefinedBy", "type" : "owl:Ontology" }
} )

#set( $registerTagSets = [ "category", "owner", "entity", "licence" ] )
#set( $registerTagSepecs = {
"category" : { "label" : "Category tag for register", "register" : "/structure/category", "formField" : "category"},
"owner" : { "label" : "Owner of register", "register" : "/structure/org", "formField" : "owner"},
"entity" : { "label" : "Type of entities in register", "register" : "/structure/entity-type", "formField" : "entity"},
"licence" : { "label" : "Licence that applies to the regster contents", "register" : "/structure/licence", "formField" : "licence"}
"category" : { "label" : $msg['register.category.description'], "register" : "/structure/category", "formField" : "category"},
"owner" : { "label" : $msg['register.owner.description'], "register" : "/structure/org", "formField" : "owner"},
"entity" : { "label" : $msg['register.entity.description'], "register" : "/structure/entity-type", "formField" : "entity"},
"licence" : { "label" : $msg['register.license.description'], "register" : "/structure/licence", "formField" : "licence"}
} )
2 changes: 1 addition & 1 deletion ldregistry/templates/actions/_create-manual.vm
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
## Action to manually create a new entry in a register
<a href="$uiroot/actions/create-manual-page?register=#linkhref($register)&return=$root/$uri" role="button" class="btn btn-default btn-sm" data-toggle="modal">Manual entry <span class="glyphicon glyphicon-plus-sign"></span></a>
<a href="$uiroot/actions/create-manual-page?register=#linkhref($register)&return=$root/$uri" role="button" class="btn btn-default btn-sm" data-toggle="modal">$msg['registerItem.createManual.button'] <span class="glyphicon glyphicon-plus-sign"></span></a>
2 changes: 1 addition & 1 deletion ldregistry/templates/actions/_create-register.vm
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
## Action to manually create a new register
<a href="$uiroot/actions/create-register-page?register=#linkhref($register)&return=$root/$uri" role="button" class="btn btn-default btn-sm" data-toggle="modal">Create register <span class="glyphicon glyphicon-plus-sign"></span></a>
<a href="$uiroot/actions/create-register-page?register=#linkhref($register)&return=$root/$uri" role="button" class="btn btn-default btn-sm" data-toggle="modal">$msg['register.createManual.button'] <span class="glyphicon glyphicon-plus-sign"></span></a>
4 changes: 2 additions & 2 deletions ldregistry/templates/actions/_delete-dialog.vm
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h3>Do you really want to delete $uri?</h3>
<h3>$msg.get('registerItem.delete.confirm', $uri)</h3>
</div>
<div class="modal-body">
<form class="form-inline" action="$root/$uri?real_delete" method="post">
<input type="submit" value="Delete" class="btn btn-danger btn-sm">
<input type="submit" value="$msg['registerItem.delete.button']" class="btn btn-danger btn-sm">
</form>
</div>
</div>
Expand Down
Loading

0 comments on commit d4fdd3f

Please sign in to comment.