Merge pull request #3190 from mabashian/i18n-strings

Mark various strings for translation

Reviewed-by: https://github.com/softwarefactory-project-zuul[bot]
This commit is contained in:
softwarefactory-project-zuul[bot] 2019-02-14 15:26:50 +00:00 committed by GitHub
commit 45d522829a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 46 additions and 6 deletions

View File

@ -16,7 +16,16 @@ function JobsStrings (BaseString) {
ROW_ITEM_LABEL_CREDENTIALS: t.s('Credentials'),
NO_RUNNING: t.s('There are no running jobs.'),
JOB: t.s('Job'),
STATUS_TOOLTIP: status => t.s('Job {{status}}. Click for details.', { status })
STATUS_TOOLTIP: status => t.s('Job {{status}}. Click for details.', { status }),
SLICE_JOB: t.s('Slice Job'),
NEW: t.s('new'),
PENDING: t.s('pending'),
WAITING: t.s('waiting'),
RUNNING: t.s('running'),
SUCCESSFUL: t.s('successful'),
FAILED: t.s('failed'),
ERROR: t.s('error'),
CANCELED: t.s('canceled')
};
}

View File

@ -86,12 +86,35 @@ function ListJobsController (
}
if (job.job_slice_number && job.job_slice_count) {
return `Slice Job ${job.job_slice_number}/${job.job_slice_count}`;
return `${strings.get('list.SLICE_JOB')} ${job.job_slice_number}/${job.job_slice_count}`;
}
return null;
};
vm.getTranslatedStatusString = (status) => {
switch (status) {
case 'new':
return strings.get('list.NEW');
case 'pending':
return strings.get('list.PENDING');
case 'waiting':
return strings.get('list.WAITING');
case 'running':
return strings.get('list.RUNNING');
case 'successful':
return strings.get('list.SUCCESSFUL');
case 'failed':
return strings.get('list.FAILED');
case 'error':
return strings.get('list.ERROR');
case 'canceled':
return strings.get('list.CANCELED');
default:
return status;
}
};
vm.getSref = ({ type, id }) => {
let sref;

View File

@ -28,7 +28,7 @@
<div class="at-Row-container">
<at-row-item
status="{{ job.status }}"
status-tip="{{ vm.strings.get('list.STATUS_TOOLTIP', job.status) }}"
status-tip="{{ vm.strings.get('list.STATUS_TOOLTIP', vm.getTranslatedStatusString(job.status)) }}"
header-value="{{ job.id }} - {{ job.name }}"
header-state="{{ vm.getSref(job) }}"
header-tag="{{ vm.jobTypes[job.type] }}"

View File

@ -1,10 +1,10 @@
<!-- todo: styling, markup, css etc. - disposition according to project lib conventions -->
<div class="at-u-floatRight">
<span ng-show="!vm.hideCounts" class="at-Panel-label">plays</span>
<span ng-show="!vm.hideCounts" class="at-Panel-label">{{:: vm.strings.get('stats.PLAYS')}}</span>
<span ng-show="!vm.hideCounts && vm.running" class="at-Panel-headingTitleBadge at-Panel-headingTitleBadge--inline">...</span>
<span ng-show="!vm.hideCounts && !vm.running" class="at-Panel-headingTitleBadge at-Panel-headingTitleBadge--inline">{{ vm.plays || 0 }}</span>
<span ng-show="!vm.hideCounts" class="at-Panel-label">tasks</span>
<span ng-show="!vm.hideCounts" class="at-Panel-label">{{:: vm.strings.get('stats.TASKS')}}</span>
<span ng-show="!vm.hideCounts && vm.running" class="at-Panel-headingTitleBadge at-Panel-headingTitleBadge--inline">...</span>
<span ng-show="!vm.hideCounts && !vm.running" class="at-Panel-headingTitleBadge at-Panel-headingTitleBadge--inline">{{ vm.tasks || 0 }}</span>

View File

@ -31,6 +31,14 @@ describe('View: Split Jobs List', () => {
options: () => ['foo', 'bar'],
}
];
JobsStrings = {
get: (str) => {
if (str === 'list.SLICE_JOB') {
return 'Slice Job';
}
return '';
}
};
ProcessErrors = jasmine.createSpy('ProcessErrors');
Wait = jasmine.createSpy('Wait');
@ -44,7 +52,7 @@ describe('View: Split Jobs List', () => {
$provide.value('Prompt', Prompt);
$provide.value('Rest', angular.noop);
$provide.value('SearchBasePath', '');
$provide.value('JobsStrings', angular.noop);
$provide.value('JobsStrings', JobsStrings);
$provide.value('QuerySet', angular.noop);
$provide.provider('$stateProvider', { $get: jasmine.createSpy('$get'), });