first commit

This commit is contained in:
2023-09-12 21:41:04 +02:00
commit 3361a7f053
13284 changed files with 2116755 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
<div id="ate-controls" class="ate-controls sub-section">
<div class="otgs-notice otgs-notice__status inline">
<p> </p>
<span class="spinner"> </span>
<button class="js-synchronize-with-ams button-secondary" {{ is_ate_communication_locked ? 'disabled' : ''}} >
{{ synchronize_button_text }}
</button>
</div>
<div class="otgs-notice otgs-notice__errors error inline hidden">
<p class="message"> </p>
<p class="help">{{ strings.error_help|raw }}</p>
</div>
</div>

View File

@@ -0,0 +1,19 @@
<div class="wpml-tm-custom-xml js-wpml-tm-custom-xml">
<h3>{{ strings.content }}</h3>
<div class="wpml-tm-custom-xml-toolbar">
<div class="wpml-tm-custom-xml-controls">
<a href="#" class="button-primary">{{ strings.save }}</a><span class="spinner"></span>
</div>
<div class="wpml-tm-messages js-wpml-tm-messages">&nbsp;</div>
<div class="wpml-tm-custom-xml-shortcuts">
<a href="{{ links.documentation }}" target="_blank" class="documentation">{{ strings.documentation }}</a>
<p>{{ strings.shortcuts }}</p>
<ul>
{% for keymap, text in strings.keysmap %}
<li><strong>{{ keymap }}</strong>: {{ text }}</li>
{% endfor %}
</ul>
</div>
</div>
<textarea title="{{ string.content }}" cols="50" rows="10" class="wpml-tm-custom-xml-content" data-action="{{ data.action }}" data-nonce-validate="{{ data.nonceValidate }}" data-nonce-save="{{ data.nonceSave }}">{{ content }}</textarea>
</div>

View File

@@ -0,0 +1,17 @@
<p>{{ strings.title }}</p>
{% for lang_pair in lang_pairs %}
<p>{{ lang_pair.title }}</p>
<ul style="margin-top: -20px">
{% for element in lang_pair.elements %}
{% if element.type == 'post' %}
<li><a href="{{ element.original_link }}">{{ element.original_text }}</a>: <a href="{{ element.start_translating_link }}">{{ strings.start_translating_text }}</a></li>
{% else %}
<li>{{ strings.strings_text }}: <a href="{{ strings.strings_link }}">{{ strings.take }}</a></li>
{% endif %}
{% endfor %}
</ul>
{% endfor %}
{% if strings.closing_sentence %}
<p>{{ strings.closing_sentence|raw }}</p>
{% endif %}

View File

@@ -0,0 +1,93 @@
</td>
</tr>
</tbody>
</table>
<!--[if mso]>
</td>
<![endif]-->
<!--[if mso]>
</tr>
</table>
<![endif]-->
</td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<!-- // END BODY -->
</td>
</tr>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<!-- BEGIN FOOTER // -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" id="templateFooter" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; border-top-width: 0; border-bottom-width: 0;" bgcolor="#007492">
<tbody>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" width="600" class="templateContainer" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody>
<tr>
<td valign="top" class="footerContainer" style="padding-top: 10px; padding-bottom: 10px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;"><table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnTextBlock" style="min-width: 100%; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody class="mcnTextBlockOuter">
<tr>
<td valign="top" class="mcnTextBlockInner" style="padding-top: 9px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<!--[if mso]>
<table align="left" border="0" cellspacing="0" cellpadding="0" width="100%" style="width:100%;">
<tr>
<![endif]-->
<!--[if mso]>
<td valign="top" width="600" style="width:600px;">
<![endif]-->
<table align="left" border="0" cellpadding="0" cellspacing="0" style="max-width: 100%; min-width: 100%; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;" width="100%" class="mcnTextContentContainer">
<tbody>
<tr>
<td valign="top" class="mcnTextContent" style="font-family: Tahoma, Verdana, Segoe, sans-serif; font-size: 11px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #ffffff; line-height: 125%; padding: 0px 18px 9px;" align="left">
<p style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #ffffff; font-family: Helvetica; font-size: 13px; line-height: 125%; margin: 1em 0; padding: 0;" align="left">{{ bottom_text|raw }}</p>
<p style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #ffffff; font-family: Helvetica; font-size: 13px; line-height: 125%; margin: 1em 0; padding: 0;" align="left">{{ wpml_footer|raw }}</p>
</td>
</tr>
</tbody>
</table>
<!--[if mso]>
</td>
<![endif]-->
<!--[if mso]>
</tr>
</table>
<![endif]-->
</td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<!-- // END FOOTER -->
</td>
</tr>
</tbody>
</table>
<!-- // END TEMPLATE -->
</td>
</tr>
</tbody>
</table>
</center>
</body>
</html>

View File

@@ -0,0 +1,256 @@
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<!-- NAME: 1 COLUMN - BANDED -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<style type="text/css">
body {
height: 100% !important; margin: 0; padding: 0; width: 100% !important;
}
img {
border: 0; outline: none; text-decoration: none;
}
.ReadMsgBody {
width: 100%;
}
.ExternalClass {
width: 100%;
}
.ExternalClass {
line-height: 100%;
}
img {
-ms-interpolation-mode: bicubic;
}
body {
-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;
}
body {
background-color: #F2F2F2;
}
@media only screen and (max-width: 480px) {
body {
-webkit-text-size-adjust: none !important;
}
table {
-webkit-text-size-adjust: none !important;
}
td {
-webkit-text-size-adjust: none !important;
}
p {
-webkit-text-size-adjust: none !important;
}
a {
-webkit-text-size-adjust: none !important;
}
li {
-webkit-text-size-adjust: none !important;
}
blockquote {
-webkit-text-size-adjust: none !important;
}
body {
width: 100% !important; min-width: 100% !important;
}
table[class=mcnTextContentContainer] {
width: 100% !important;
}
.mcnBoxedTextContentContainer {
max-width: 100% !important; min-width: 100% !important; width: 100% !important;
}
table[class=mcpreview-image-uploader] {
width: 100% !important; display: none !important;
}
img[class=mcnImage] {
width: 100% !important;
}
table[class=mcnImageGroupContentContainer] {
width: 100% !important;
}
td[class=mcnImageGroupContent] {
padding: 9px !important;
}
td[class=mcnImageGroupBlockInner] {
padding-bottom: 0 !important; padding-top: 0 !important;
}
tbody[class=mcnImageGroupBlockOuter] {
padding-bottom: 9px !important; padding-top: 9px !important;
}
table[class=mcnCaptionTopContent] {
width: 100% !important;
}
table[class=mcnCaptionBottomContent] {
width: 100% !important;
}
table[class=mcnCaptionLeftTextContentContainer] {
width: 100% !important;
}
table[class=mcnCaptionRightTextContentContainer] {
width: 100% !important;
}
table[class=mcnCaptionLeftImageContentContainer] {
width: 100% !important;
}
table[class=mcnCaptionRightImageContentContainer] {
width: 100% !important;
}
table[class=mcnImageCardLeftTextContentContainer] {
width: 100% !important;
}
table[class=mcnImageCardRightTextContentContainer] {
width: 100% !important;
}
td[class=mcnImageCardLeftImageContent] {
padding-right: 18px !important; padding-left: 18px !important; padding-bottom: 0 !important;
}
td[class=mcnImageCardRightImageContent] {
padding-right: 18px !important; padding-left: 18px !important; padding-bottom: 0 !important;
}
td[class=mcnImageCardBottomImageContent] {
padding-bottom: 9px !important;
}
td[class=mcnImageCardTopImageContent] {
padding-top: 18px !important;
}
td[class=mcnImageCardLeftImageContent] {
padding-right: 18px !important; padding-left: 18px !important; padding-bottom: 0 !important;
}
td[class=mcnImageCardRightImageContent] {
padding-right: 18px !important; padding-left: 18px !important; padding-bottom: 0 !important;
}
td[class=mcnImageCardBottomImageContent] {
padding-bottom: 9px !important;
}
td[class=mcnImageCardTopImageContent] {
padding-top: 18px !important;
}
table[class=mcnCaptionLeftContentOuter] td[class=mcnTextContent] {
padding-top: 9px !important;
}
table[class=mcnCaptionRightContentOuter] td[class=mcnTextContent] {
padding-top: 9px !important;
}
td[class=mcnCaptionBlockInner] table[class=mcnCaptionTopContent]:last-child td[class=mcnTextContent] {
padding-top: 18px !important;
}
td[class=mcnBoxedTextContentColumn] {
padding-left: 18px !important; padding-right: 18px !important;
}
td[class=mcnTextContent] {
padding-right: 18px !important; padding-left: 18px !important;
}
table[class=templateContainer] {
max-width: 600px !important; width: 95% !important;
}
h1 {
font-size: 24px !important; line-height: 125% !important;
}
h2 {
font-size: 20px !important; line-height: 125% !important;
}
h3 {
font-size: 18px !important; line-height: 125% !important;
}
h4 {
font-size: 16px !important; line-height: 125% !important;
}
table[class=mcnBoxedTextContentContainer] td[class=mcnTextContent] {
font-size: 18px !important; line-height: 125% !important;
}
td[class=mcnBoxedTextContentContainer] td[class=mcnTextContent] p {
font-size: 18px !important; line-height: 125% !important;
}
table[id=templatePreheader] {
display: block !important;
}
td[class=preheaderContainer] td[class=mcnTextContent] {
font-size: 14px !important; line-height: 115% !important;
}
td[class=preheaderContainer] td[class=mcnTextContent] p {
font-size: 14px !important; line-height: 115% !important;
}
td[class=headerContainer] td[class=mcnTextContent] {
font-size: 18px !important; line-height: 125% !important;
}
td[class=headerContainer] td[class=mcnTextContent] p {
font-size: 18px !important; line-height: 125% !important;
}
td[class=bodyContainer] td[class=mcnTextContent] {
font-size: 18px !important; line-height: 125% !important;
}
td[class=bodyContainer] td[class=mcnTextContent] p {
font-size: 18px !important; line-height: 125% !important;
}
td[class=footerContainer] td[class=mcnTextContent] {
font-size: 14px !important; line-height: 115% !important;
}
td[class=footerContainer] td[class=mcnTextContent] p {
font-size: 14px !important; line-height: 115% !important;
}
td[class=footerContainer] a[class=utilityLink] {
display: block !important;
}
}
</style>
</head>
<body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0" style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; height: 100% !important; width: 100% !important; margin: 0; padding: 0;" bgcolor="#F2F2F2">
<center>
<table align="center" border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" id="bodyTable" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; height: 100% !important; width: 100% !important; margin: 0; padding: 0;" bgcolor="#F2F2F2">
<tbody>
<tr>
<td align="center" valign="top" id="bodyCell" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; border-top-width: 0; height: 100% !important; width: 100% !important; margin: 0; padding: 0;">
<!-- BEGIN TEMPLATE // -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<!-- BEGIN PREHEADER // -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" id="templatePreheader" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; border-top-width: 0; border-bottom-width: 0;" bgcolor="#FFFFFF">
<tbody>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" width="600" class="templateContainer" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody>
<tr>
<td valign="top" class="preheaderContainer" style="padding-top: 9px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;"></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<!-- // END PREHEADER -->
</td>
</tr>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<!-- BEGIN BODY // -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" id="templateBody" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; border-top-width: 0; border-bottom-width: 0;" bgcolor="#FFFFFF">
<tbody>
<tr>
<td align="center" valign="top" style="mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" width="600" class="templateContainer" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody>
<tr>
<td valign="top" class="bodyContainer" style="padding-top: 10px; padding-bottom: 10px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;"><table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnTextBlock" style="min-width: 100%; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<tbody class="mcnTextBlockOuter">
<tr>
<td valign="top" class="mcnTextBlockInner" style="padding-top: 9px; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<!--[if mso]>
<table align="left" border="0" cellspacing="0" cellpadding="0" width="100%" style="width:100%;">
<tr>
<![endif]-->
<!--[if mso]>
<td valign="top" width="600" style="width:600px;">
<![endif]-->
<table align="left" border="0" cellpadding="0" cellspacing="0" style="max-width: 100%; min-width: 100%; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;" width="100%" class="mcnTextContentContainer">
<tbody>
<tr>
<td valign="top" class="mcnTextContent" style="font-family: Tahoma, Verdana, Segoe, sans-serif; font-size: 14px; line-height: 150%; mso-table-lspace: 0pt; mso-table-rspace: 0pt; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #606060; padding: 0px 18px 9px;" align="justify">
<p style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #606060; font-family: Tahoma, Verdana, Segoe, sans-serif; font-size: 14px; line-height: 150%; margin: 2em 0; padding: 0;" align="left">{{ greetings }}</p>

View File

@@ -0,0 +1,4 @@
<p>{{ message|raw }}</p>
<p>
<a href="{{ translation_jobs_url }}">{{ view_jobs_text }}</a>
</p>

View File

@@ -0,0 +1,10 @@
<p>{{ message|raw }}</p>
<p>{{ deadline_status }}</p>
<p>
<a href="{{ translation_jobs_url }}">{{ view_jobs_text }}</a>
</p>
{% if overdue_job %}
<p>{{ needs_help.title }}</p>
<p><a target="_blank" href="{{ needs_help.translators_link }}">{{ needs_help.translators_text }}</a> {{ needs_help.options_or }} <a target="_blank" href="{{ needs_help.translation_services_link }}">{{ needs_help.translation_services_text }}</a></p>
{% endif %}

View File

@@ -0,0 +1,4 @@
<p>{{ message|raw }}</p>
<p>
<a href="{{ translation_jobs_url }}">{{ view_jobs_text }}</a>
</p>

View File

@@ -0,0 +1,12 @@
<p>{{ intro_message_1 }}</p>
<p>{{ intro_message_2 }}</p>
<ul>
{% for job in jobs %}
{% set deadline_date = job.get_deadline_date|date("Y-m-d") %}
{% set overdue_days = job.get_number_of_days_overdue %}
{% set details = job_deadline_details|format(deadline_date, overdue_days) %}
<li>{{ job.get_title }} ({{ details }})</li>
{% endfor %}
</ul>
<p>{{ message_to_translation_jobs|raw }}</p>

View File

@@ -0,0 +1 @@
<p style="background-color:#FFF0B4; padding: 5px 10px">{{ message|raw }}</p>

View File

@@ -0,0 +1,3 @@
<p>{{ intro_message_1|raw }}</p>
<p><strong><a href="{{ setup_url }}">{{ setup }}</a></strong></p>
<p>{{ reminder|raw }}</p>

View File

@@ -0,0 +1,68 @@
{% if jobs.completed %}
{% set css_border = '1px solid #999999;' %}
{% set css_border_right = 'border-right:' ~ css_border %}
{% set css_border_left = 'border-left:' ~ css_border %}
{% set css_border_top = 'border-top:' ~ css_border %}
{% set css_border_bottom = 'border-bottom:' ~ css_border %}
{% set css_text_center = ' text-align: center;' %}
{% set css_vertical_align = ' vertical-align: top;' %}
{% set css_column_fixed_width = ' width: 21%;' %}
<p>{{ text|format( site_name, number_of_updates ) }}:</p>
<table border="0" cellpadding="5" cellspacing="0" width="100%">
<tr style="background: #5a5a5a; color: #ffffff; font-size: 12px;">
<td style="{{ css_border_right ~ css_border_left ~ css_border_top }}">{{ strings.original_page }}</td>
<td style="{{ css_border_right ~ css_border_bottom }}">{{ strings.translation }}</td>
<td style="{{ css_border_right ~ css_border_bottom }}">{{ strings.translator }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_column_fixed_width }}">{{ strings.date }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_column_fixed_width }}">{{ strings.your_deadline }}</td>
</tr>
{% for job in jobs.completed %}
<tr style="font-size: 12px;">
<td style="{{ css_border_right ~ css_border_left ~ css_border_bottom ~ css_vertical_align }}"><a href="{{ job.original_page.url }}">{{ job.original_page.title }}</a></td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_vertical_align }}"><a href="{{ job.translated_page.url }}">{{ job.translated_page.title }}</a></td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_vertical_align }}">{{ job.translator }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_vertical_align }}">{{ job.completed_date }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_vertical_align }} {% if job.overdue %}color: #CC0000;{% endif %}">{{ job.deadline ? job.deadline : strings.undefined }}</td>
</tr>
{% endfor %}
</table>
{% endif %}
{% if jobs.waiting %}
<p>{{ strings.jobs_waiting }}:</p>
<table border="0" cellpadding="5" cellspacing="0" width="100%">
<tr style="background: #5a5a5a; color: #ffffff; font-size: 12px;">
<td style="{{ css_border_right ~ css_border_left ~ css_border_top }}">{{ strings.translation_languages }}</td>
<td style="{{ css_border_right ~ css_border_bottom }}">{{ strings.number_of_pages }}</td>
<td style="{{ css_border_right ~ css_border_bottom }}">{{ strings.number_of_strings }}</td>
<td style="{{ css_border_right ~ css_border_bottom }}">{{ strings.number_of_words }}</td>
</tr>
{% for job in jobs.waiting %}
<tr style="font-size: 12px;">
<td style="{{ css_border_right ~ css_border_left ~ css_border_bottom ~ css_vertical_align }}">{{ job.lang_pair }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_text_center ~ css_vertical_align }}">{{ job.number_of_pages }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_text_center ~ css_vertical_align }}">{{ job.number_of_strings }}</td>
<td style="{{ css_border_right ~ css_border_bottom ~ css_text_center ~ css_vertical_align }}">{{ job.number_of_words }}</td>
</tr>
{% endfor %}
</table>
{% endif %}
<p>{{ improve_quality.title }}</p>
<ul>
{% for option in improve_quality.options %}
<li>{{ option.text|format( '<a target="_blank" href="' ~ option.link_url ~ '">' ~ option.link_text ~ '</a>' )|raw }}</li>
{% endfor %}
</ul>

View File

@@ -0,0 +1,9 @@
<p>{{ intro_message_1|raw }}</p>
<p>{{ intro_message_2|raw }}</p>
<p><strong><a href="{{ setup_url }}">{{ setup }}</a></strong></p>
<p>{{ reminder|raw }}</p>
<p>
{{ at_your_service }},<br />
{{ admin_name }}<br />
{{ admin_for_site|raw }}
</p>

View File

@@ -0,0 +1,68 @@
<!--suppress CssInvalidPropertyValue, CssOverwrittenProperties -->
<div class="icl_tm_wrap wpml-wrap" style="overflow: auto;">
<p>
{{ strings.header }}
</p>
{% if rows %}
<p>
<a href="{{ urls.switch_mode }}" class="button-secondary">{{ strings.switch_mode }}</a>
</p>
<table class="widefat">
<thead>
<tr>
{% for header_key, header_label in headers %}
<th scope="col" class="manage-column manage-column-{{ header_key }}" style="font-size:10px;">
{{ header_label }}
</th>
{% endfor %}
</tr>
</thead>
<tfoot>
<tr>
{% for header_key, header_label in headers %}
<th scope="col" class="manage-column manage-column-{{ header_key }}" style="font-size:10px;">
{{ header_label }}
</th>
{% endfor %}
</tr>
</tfoot>
<tbody>
{% set row = 0 %}
{% for log_item in rows %}
<tr class="{{ row is divisible by(2) ? 'alternate' : '' }}">
{% for header_key, header_label in headers %}
{% set item_value = log_item[header_label] is defined ? log_item[header_label] : '' %}
<td class="column-{{ header_key }}" style="font-size:10px; overflow-wrap: break-word; word-wrap: break-word; -ms-word-break: break-all; word-break: break-all; word-break: break-word; -ms-hyphens: auto; -moz-hyphens: auto; -webkit-hyphens: auto; hyphens: auto;">
{% if is_url(item_value) %}
<a href="{{ item_value }}" target="_blank">{{ log_item.Title }}</a>
{% else %}
{% if item_value is iterable %}
{% set sub_items_count = item_value|length %}
{% set sub_items_index = 1 %}
{% for item_value_sub_item in item_value %}
{{ item_value_sub_item }}
{% if sub_items_index < sub_items_count %}
<br>
{% endif %}
{% set sub_items_index = sub_items_index + 1 %}
{% endfor %}
{% else %}
{{ item_value }}
{% endif %}
{% endif %}
</td>
{% set row = row + 1 %}
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
<form method="post" id="{{ misc.ui_key }}-form" name="{{ misc.ui_key }}-form" action="{{ urls.main }}">
<p>
<input class="button-secondary" type="submit" name="{{ misc.ui_key }}-clear" value="{{ strings.clear_log }}">&nbsp;<input class="button-secondary" type="submit" name="{{ misc.ui_key }}-export-csv" value="{{ strings.export_csv }}">
</p>
</form>
{% else %}
<strong>{{ strings.empty_log }}</strong>
{% endif %}
</div>

View File

@@ -0,0 +1,59 @@
<div class="wpml_tm_pagination_container">
<div class="otgs-notice otgs-notice__errors error inline hidden">
<p></p>
</div>
<div class="tablenav">
<div class="tablenav-pages">
<span class="spinner"></span>
<span class="displaying-num">
{% if total_items > 0 %}
{{ strings.displaying }} {{ from }}{{ to }} {{ strings.of }} {{ total_items_i18n }}
{% else %}
{{ strings.nothing_found }}
{% endif %}
</span>
{% if current_page != -1 %}
{% if ( paginate_links ) %}
{% if current_page > 1 %}
<a class="prev page-numbers" href="#">«</a>
{% endif %}
{% for link in paginate_links %}
{% if link.class == "current" %}
<span aria-current="page" class="page-numbers current">{{ link.number }}</span>
{% endif %}
{% if link.class == "" %}
<a class="page-numbers" href="#">{{ link.number }}</a>
{% endif %}
{% if link.class == "dots" %}
<span class="page-numbers dots">{{ link.number }}</span>
{% endif %}
{% endfor %}
{% if current_page < total_pages %}
<a class="next page-numbers" href="#">»</a>
{% endif %}
{% endif %}
{% endif %}
{% if total_items > select[0] %}
<select name="wpml_tm_per_page">
{% for option in select %}
{% set selected = "" %}
{% if option == select_value %}
{% set selected = "selected" %}
{% endif %}
<option value="{{ option }}" {{ selected }}>{{ option }}</option>
{% endfor %}
</select>
{% endif %}
{% if ( current_page != -1 ) and ( total_items > select_value ) %}
<a class="display-all" href="#">{{ strings.display_all }}</a>
{% endif %}
</div>
</div>
</div>

View File

@@ -0,0 +1,8 @@
<div class="wpml-flex-table-row wpml_tm_search_container">
<div class="wpml-flex-table-cell text-right">
<span class="spinner"></span>
<label>
{{ strings.search_for }}:<input type="text" class="wpml_tm_search" value="{{ search_string }}">
</label>
</div>
</div>

View File

@@ -0,0 +1,6 @@
<div class="js-existing-user-section existing-user-section" style="display:none;">
<div class="wpml-form-row">
<input type="text" class="js-translation-manager-select" placeholder="{{ strings.placeholder }}"/>
<button class="js-add-existing-translation-manager button-primary button-small" disabled="disabled">{{ strings.add_button }}</button>
</div>
</div>

View File

@@ -0,0 +1,24 @@
<div class="wpml-form-row">
<label>{{ strings.first_name }}</label>
<input type="text" class="js-first-name"/>
</div>
<div class="wpml-form-row">
<label>{{ strings.last_name }}</label>
<input type="text" class="js-last-name"/>
</div>
<div class="wpml-form-row">
<label>{{ strings.email }}</label>
<input type="text" class="js-email"/>
</div>
<div class="wpml-form-row">
<label>{{ strings.user_name }}</label>
<input type="text" class="js-user-name"/>
</div>
<div class="wpml-form-row">
<label for="roles">{{ strings.wp_role }}</label>
<select class="js-role" id="roles">
{% for role in wp_roles %}
<option value="{{ role.id }}" {% if role.default %}selected="selected"{% endif %}>{{ role.name }}</option>
{% endfor %}
</select>
</div>

View File

@@ -0,0 +1,6 @@
<div class="js-new-user-section new-user-section" style="display:none;">
{% include 'new-user-inputs.twig' %}
<div class="wpml-form-row">
<button class="js-add-new-translation-manager button-primary" disabled="disabled">{{ strings.add_button }}</button>
</div>
</div>

View File

@@ -0,0 +1,7 @@
<li data-user_id="{{ user.ID }}">
<a class="translation-manager-link" href="{{ user.edit_link }}" title="{{ strings.edit }}">
<span class="translation-manager-avatar">{{ user.avatar|raw }}</span>
<span class="translation-manager-name js-translation-manager-name">{{ user.user_login }}</span>
</a>
<a class="otgs-ico-close js-remove-translation-manager js-otgs-popover-tooltip" title="{{ strings.remove }}"></a>
</li>

View File

@@ -0,0 +1,50 @@
<div class="js-translation-managers translation-managers-section wpml-section" data-nonce="{{ nonce }}" data-current-user-id="{{ user_id }}">
<h2>{{ strings.title }}</h2>
<div class="js-choose-managers-section text-center clearfix">
<button class="button-primary js-add-translation-manager"
data-set-text="{{ strings.set_user }}"
data-add-text="+ {{ strings.add_user }}"
></button>
</div>
{% include 'existing-user-section.twig' %}
{% include 'new-user-section.twig' %}
<span class="notice notice-error inline js-error-message" style="display: none"></span>
<ul class="js-translation-managers-list translation-managers-list" style="display:none;">
{% for user in translation_managers %}
{% include 'translation-managers-row.twig' %}
{% endfor %}
</ul>
<div class="js-no-translation-managers notice notice-warning inline" style="display:none;"><p>{{ strings.no_users }}</p></div>
<div id="{{ dialog.id }}"
class="{{ dialog.class }}"
title="{{ dialog.strings.title }}"
style="display:none"
data-ok-text="{{ dialog.strings.add_text }}"
data-cancel-text="{{ dialog.strings.cancel_text }}">
<div class="js-select-user"
data-nonce="{{ dialog.nonce }}"
style="width: 600px">
<label class="add-new-translation-role-label" for="manager-existing-user"><input type="radio" id="manager-existing-user" name="user" value="existing"/> {{ dialog.strings.existing_user }}</label>
<div class="js-existing-user-section add-new-translation-role-form" style="display: none">
<input type="text" class="js-translation-user-select" placeholder=""/>
</div>
<label class="add-new-translation-role-label" for="manager-new-user"> <input type="radio" id="manager-new-user" name="user" value="new"/> {{ dialog.strings.new_user }}</label>
<div class="js-new-user-section add-new-translation-role-form" style="display: none">
{% include 'new-user-inputs.twig' %}
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,55 @@
<div class="js-wpml-active-service-wrapper">
<div class="js-ts-refreshing-message ts-refreshing-message" style="display:none">
<p><span class="spinner is-active"></span>{{ strings.refreshing_ts_message }}</p>
</div>
<div class="ts-active-service js-ts-active-service">
<input type="hidden" class="active-service-title" value="{{ strings.modal_title }}">
<input type="hidden" class="active-service-header" value="{{ strings.modal_header }}">
<input type="hidden" class="active-service-tip" value="{{ strings.modal_tip|format( "<a target='_blank' href='" ~ active_service.get_url ~ "'>" ~ active_service.get_name ~ "</a>" ) }}">
<input type="hidden" class="js-needs-info-refresh" value="{{ needs_info_refresh }}">
<input type="hidden" class="js-ts-refresh-nonce" value="{{ nonces['refresh_ts_info'] }}">
<div class="ts-admin-section-leftcol">
<h3>{{ strings.title }}</h3>
<div class="service-logo"><img src="{{ active_service.get_logo_url }}" alt="{{ active_service.get_name }}"/></div>
<p>
<button data-id="{{ active_service.get_id }}" class="button-secondary js-deactivate-service">{{ strings.deactivate }}</button>
</p>
</div>
<div class="ts-admin-section-rightcol">
{% if active_service.get_has_language_pairs and active_service.get_custom_fields_data %}
<div class="refresh-language-pairs-section">
<div class="spinner"></div>
<div class="wpml_ajax_response"></div>
<a class="button-secondary js-refresh-language-pairs" data-nonce="{{ nonces['wpml-tp-refresh-language-pairs'] }}">
{{ strings.refresh_language_pairs }}
</a>
</div>
{% endif %}
<h3>{{ active_service.get_name }}</h3>
<p>{{ active_service.get_description|raw }}</p>
<p><a target="_blank" href="{{ active_service.get_doc_url }}">{{ strings.documentation }}</a></p>
{% if 1 == active_service.get_requires_authentication %}
<div class="ts-authentication notice notice-warning inline clearfix">
{% if active_service.get_custom_fields_data %}
<p>{{ strings.authentication.is_authorized|raw }}</p>
<p class="notice-action-link">
<button data-id="{{ active_service.get_id }}" data-custom-fields="{{ active_service.get_custom_fields | json_encode }}" class="js-invalidate-service button-primary">{{ strings.authentication.de_authorize_button }}</button>
<button data-id="{{ active_service.get_id }}" data-custom-fields="{{ active_service.get_custom_fields | json_encode }}" class="js-update-service-credentials button-primary">{{ strings.authentication.update_credentials_button }}</button>
</p>
{% else %}
<p>{{ strings.authentication.description|format( active_service.get_name, '<a target="_blank" href="' ~ active_service.get_doc_url ~ '">' ~ strings.documentation_lower ~ '</a>' )|raw }}</p>
<p class="notice-action-link"><button class="js-authenticate-service button-primary" data-id="{{ active_service.get_id }}" data-custom-fields="{{ active_service.get_custom_fields | json_encode }}">{{ strings.authentication.authenticate_button }}</button></p>
{% endif %}
</div>
{% endif %}
</div>
</div>
</div>

View File

@@ -0,0 +1,3 @@
<div class="wpml-tm-nositekey-button-wrapper">
<a class="button-primary button-lg" href="{{ registration.link }}">{{ registration.text }}</a>
</div>

View File

@@ -0,0 +1,3 @@
<button id="wpml-tm-refresh-services" data-nonce="{{ nonce }}" class="button-secondary">{{ button_text }}</button>
<br />
<small class="wpml-tm-refresh-services-msg"></small>

View File

@@ -0,0 +1,32 @@
{% for key, nonce in nonces %}
<input type="hidden" class="{{ key }}" name="{{ key }}" value="{{ nonce }}">
{% endfor %}
<div class="wpml-tm-ts-admin-section">
{{ active_service|raw }}
{% if false == has_preferred_service and has_services %}
<div
id="wpml-tp-services"
data-services="{{ services|json_encode() }}"
data-strings="{{ strings|json_encode() }}"
>
</div>
<div class="js-bottom-section">
<hr class="wpml-margin-top-base">
<p>{{ strings.ts.different }} <a target="_blank" class="wpml-external-link" href="{{ strings.ts.tell_us_url }}">{{ strings.ts.tell_us }}</a></p>
</div>
{% endif %}
{% if false == has_services %}
<div class="warning notice-warning otgs-notice">
{% for no_service_message in strings.no_service_found %}
<p>{{ no_service_message|format( "<a target='_blank' href='" ~ strings.support_link ~ "'>" ~ strings.wpml_support ~ "</a>" )|raw }}</p>
{% endfor %}
</div>
{% endif %}
</div>

View File

@@ -0,0 +1,5 @@
<div class="tablenav {{ nav_location }}">
{% include 'pagination.twig' with { 'pagination_model': pagination_model, 'nav_location': nav_location } only %}
</div>

View File

@@ -0,0 +1,3 @@
{% for i in 1..5 %}
<span class="otgs-ico-star{% if i <= filled %} full-star{% endif %}"></span>
{% endfor %}

View File

@@ -0,0 +1,9 @@
<tr>
<th scope="col" class="manage-column sortable ts-admin-section-logo-head {{ table_sort.name.classes }}"><a href="{{ table_sort.name.url }}"><span>{{ strings.columns.name }}</span><span class="sorting-indicator"></span></a></th>
<th scope="col" class="manage-column ts-admin-section-description-head">{{ strings.columns.description }}</th>
<th scope="col" class="{{ table_sort.popularity.classes }} ts-admin-section-rating sortable"><a href="{{ table_sort.popularity.url }}"><span>{{ strings.columns.popularity }}</span><span class="sorting-indicator"></span></a></th>
<th scope="col" class="{{ table_sort.speed.classes }} ts-admin-section-rating sortable"><a href="{{ table_sort.speed.url }}"><span>{{ strings.columns.speed }}</span><span class="sorting-indicator"></span></a></th>
<th scope="col" class="manage-column"></th>
</tr>

View File

@@ -0,0 +1,47 @@
<?php
namespace WPML\TM\Templates\Notices;
class AteLocked {
public function renderUser( $model ) {
?>
<div class="wpmltm-notice">
<h2><?php echo esc_html( $model->title ); ?></h2>
<p><?php echo esc_html( $model->intro ); ?></p>
</div>
<?php
}
public function renderAdmin( $model ) {
?>
<div class="wpmltm-notice">
<h2><?php echo esc_html( $model->title ); ?></h2>
<p><?php echo esc_html( $model->intro ); ?></p>
<?php wp_nonce_field( 'icl_doc_translation_method_cloned_nonce', 'icl_doc_translation_method_cloned_nonce' ); ?>
<fieldset>
<div>
<label>
<input type="radio" name="ate_locked_option" value="move" checked="checked">
<span><?php echo esc_html( $model->radio_option_1 ); ?></span>
</label>
</div>
<div>
<label>
<input type="radio" name="ate_locked_option" value="copy">
<span><?php echo esc_html( $model->radio_option_2 ); ?></span>
</label>
</div>
</fieldset>
<div class="wpmltm-notice__actions">
<a class="wpmltm-notice__actions-btn" id="wpml_save_cloned_sites_report_type"
href="#"><?php echo esc_html( $model->btn_text ); ?></a>
<a class="wpmltm-notice__actions-link" href="https://wpml.org/documentation/translating-your-contents/advanced-translation-editor/using-advanced-translation-editor-when-you-move-or-use-a-copy-of-your-site/?utm_source=plugin&utm_medium=gui&utm_campaign=wpmltm">
<?php echo esc_html( $model->link_text ); ?>
</a>
</div>
</div>
<?php
}
}

View File

@@ -0,0 +1,8 @@
<h3>{{ strings.title }}</h3>
<p>{{ strings.body }}</p>
<ul>
{% for job in strings.jobs %}
<li>{{ job }}</li>
{% endfor %}
</ul>
<p>{{ strings.bottom | raw }}</p>

View File

@@ -0,0 +1,13 @@
<div id="wpml-tm-post-edit-alert" class="js-wpml-tm-post-edit-alert wpml-tm-post-edit-alert wpml-tm-post-edit-alert-in-progress" style="display: none;">
{{ nonce | raw }}
<p id="icl_side_by_site">
{{ warning|raw }}
<br /><br />
{{ message|raw }}
</p>
<p class="text-center">
<a class="js-wpml-tm-continue button button-secondary">{{ edit_anyway_button }}</a>
<a class="js-wpml-tm-go-back button button-secondary">{{ go_back_button }}</a>
</p>
<p><label><input class="do-not-show-again" type="checkbox" value="1" data-action="{{ do_not_show_again_action }}">{{ do_not_show_again }}</label></p>
</div>

View File

@@ -0,0 +1,7 @@
<div class="error fade">
<p id="icl_side_by_site">
{{ warning|raw }}
<br /><br />
{{ check_dashboard|raw }}
</p>
</div>

View File

@@ -0,0 +1,4 @@
<div class="error">
<p>{{ warning|raw }}</p>
<p>{{ use_tm_dashboard|raw }}</p>
</div>'

View File

@@ -0,0 +1,10 @@
<div id="wpml-tm-post-edit-alert" class="js-wpml-tm-post-edit-alert wpml-tm-post-edit-alert" style="display: none;">
{{ nonce | raw }}
<p>{{ warning|raw }}</p>
<p class="text-center">
<a class="js-wpml-tm-go-back button button-secondary">{{ go_back_button }}</a>
<a class="js-wpml-tm-continue button button-secondary">{{ edit_anyway_button }}</a>
<a class="js-wpml-tm-open-in-te wpml-button button button-primary" href="{{ translation_editor_url }}">{{ open_in_te_button }}</a>
</p>
<p><label><input class="do-not-show-again" type="checkbox" value="1" data-action="{{ do_not_show_again_action }}">{{ do_not_show_again }}</label></p>
</div>

View File

@@ -0,0 +1,35 @@
<div id="translation-service-instruction" class="notice wpml-notice otgs-is-dismissible">
<h3>{{ strings.title }}</h3>
<p>{{ strings.description }}</p>
<p class="ts-instruction-video">
<a href="{{ video_link }}" target="_blank">
<img src="{{ image_url }}" alt="" width="440" height="230"/>
</a>
</p>
<p class="ts-instruction-help">
{{ strings.need_help }}
<a href="{{ help_link }}" target="_blank">
{{ strings.help_caption }}
</a>
</p>
<p class="ts-instruction-dismiss">
<input type="checkbox" value="" id="checkbox-my-test-translation-went-fine" disabled="disabled" style="display: none;">
<span id="this-stuff-is-important">
{{ strings.this_stuff_is_important }}
</span>
<span id="my-test-translation-went-fine" style="display: none;">
{{ strings.my_test_translation_went_fine }}
<button class="js-ts-instruction-dismiss button button-secondary" id="dismiss-instruction" disabled="disabled" style="display: none;">
{{ strings.dismiss }}
</button>
</span>
</p>
<span class="js-ts-instruction-dismiss notice-dismiss" style="display:none">
<span class="screen-reader-text">{{ strings.dismiss }}</span>
</span>
</div>

View File

@@ -0,0 +1,66 @@
{% set completed_frequency_dropdown %}
<select name="notification[completed_frequency]"{{ settings.completed_frequency.disabled }}>
{% for option in settings.completed_frequency.options %}
<option value="{{ option.value }}"{{ option.checked }}>{{ option.label }}</option>
{% endfor %}
</select>
{% endset %}
{% set overdue_offset_input %}
<input name="notification[overdue_offset]" value="{{ settings.overdue_offset.value }}"
size="1"{{ settings.overdue_offset.disabled }}>
{% endset %}
<div class="wpml-section" id="translation-notifications-translator">
<div class="wpml-section-header">
<h4>{{ strings.section_title_translator }}</h4>
</div>
<div class="wpml-section-content">
<ul>
<li>
<input name="notification[new-job]" type="checkbox" id="wpml_tm_notify_new_job"
data-child="notification[include_xliff]"
value="{{ settings.new_job.value }}"{{ settings.new_job.checked }}>
<label for="wpml_tm_notify_new_job">{{ strings.label_new_job }}</label>
<ul>
<li>
<input type="checkbox" name="notification[include_xliff]" id="wpml_tm_notify_include_xliff"
value="{{ settings.include_xliff.value }}"
{{ settings.include_xliff.checked }}{{ settings.include_xliff.disabled }}>
<label for="icl_include_xliff">{{ strings.label_include_xliff }}</label>
</li>
</ul>
</li>
<li>
<input name="notification[resigned]" type="checkbox" id="wpml_tm_notify_job_resigned"
value="{{ settings.resigned.value }}"{{ settings.resigned.checked }}>
<label for="wpml_tm_notify_job_resigned">{{ strings.label_resigned_job }}</label>
</li>
</ul>
</div>
</div>
<div class="wpml-section" id="translation-notifications-manager">
<div class="wpml-section-header">
<h4>{{ strings.section_title_manager }}</h4>
</div>
<div class="wpml-section-content">
<ul>
<li>
<input name="notification[completed]" type="checkbox" id="wpml_tm_notify_completed"
data-child="notification[completed_frequency]"
value="{{ settings.completed.value }}"{{ settings.completed.checked }}>
<label for="wpml_tm_notify_completed">
{{ strings.label_completed_job|format(completed_frequency_dropdown)|raw }}
</label>
</li>
<li>
<input name="notification[overdue]" type="checkbox" id="wpml_tm_notify_job_overdue"
data-child="notification[overdue_offset]"
value="{{ settings.overdue.value }}"{{ settings.overdue.checked }}>
<label for="wpml_tm_notify_job_overdue">
{{ strings.label_overdue_job|format(overdue_offset_input)|raw }}
</label>
</li>
</ul>
</div>
</div>

View File

@@ -0,0 +1,16 @@
<div class="wpml-section" id="translation-notifications-sec-3">
<div class="wpml-section-header">
<h4>{{ title }}</h4>
</div>
<div class="wpml-section-content">
<ul>
{% for setting in settings %}
<li>
<input {{ setting.checked }} name="{{ setting.name }}" type="radio" value="{{ setting.value }}"/>
<label>{{ setting.label }}</label>
</li>
{% endfor %}
</ul>
</div>
</div>

View File

@@ -0,0 +1,22 @@
<h1 id="icl20-migration">{{ title }}</h1><p>{{ message }}</p>
<table class="widefat wpml-support-info striped">
<tbody>
{% for label,value in data %}
<tr>
<th style="vertical-align: top">
{{ label }}
</th>
<td style="vertical-align: top">
{{ value }}
</td>
</tr>
{% endfor %}
{% for action,button_data in buttons %}
<tr>
<th colspan="2" style="vertical-align: top">
<a href="{{ button_data.url }}" class="button-{{ button_data.type }}">{{ button_data.label }}</a>
</th>
</tr>
{% endfor %}
</tbody>
</table>

View File

@@ -0,0 +1,74 @@
<form method="post" id="translation-jobs-translators-form" name="translation-jobs-translators" action="">
<div {% if current_user_only_translator %} style="display: none"{% endif %}>
<h3 class="wpml-tm-section-header">{{ strings.heading_basket_name }}</h3>
<p>
<input type="hidden" name="icl_tm_action" value="send_all_jobs"/>
<label for="basket_name">{{ strings.batch_name_label }}</label>
<input id="basket_name"
name="basket_name"
type="text"
value="{{ basket_name_placeholder }}"
maxlength="{{ basket_name_max_length }}"
placeholder="{{ basket_name_placeholder }}">
<a
class="js-otgs-popover-tooltip js-otgs-popover-tooltip otgs-ico-help"
data-tippy-zIndex="999999"
title="{{ strings.batch_name_desc }}"
> </a>
</p>
<p>
<label for="basket-deadline">{{ strings.batch_deadline_label }}</label>
<input id="basket-deadline" name="basket-deadline" type="text" value="{{ deadline_estimation_date }}">
<a
class="js-otgs-popover-tooltip js-otgs-popover-tooltip otgs-ico-help"
data-tippy-zIndex="999999"
title="{{ strings.batch_deadline_tooltip|raw }}"
> </a>
<span class="spinner"> </span>
</p>
<h3 class="wpml-tm-section-header">{{ strings.heading_translators }}</h3>
<table class="widefat striped wpml-margin-bottom-sm" id="icl-translation-translators" cellspacing="0">
<thead>
<tr>
<th class="column-language-pair" scope="col">{{ strings.column_language }}</th>
<th class="column-translator" scope="col">{{ strings.column_translator }}</th>
</tr>
</thead>
{% if target_languages %}
<tbody>
{% for key, lang in target_languages %}
<tr>
<td class="column-language-pair" >{{ source_language_flag|raw }} {{ source_language.display_name }} &raquo; {{ lang.flag|raw }} {{ lang.display_name }}</td>
<td class="column-translator" >
{{ dropdowns_translators[ lang.code ]|raw }}
{% if translation_service_enabled == false %}
<a
class="js-otgs-popover-tooltip js-otgs-popover-tooltip otgs-ico-help"
data-tippy-zIndex="999999"
title="{{ strings.pro_translation_tip }}{{ pro_translation_link }}"
> </a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
</div>
{{ extra_basket_fields|raw }}
{% for name, nonce in nonces %}
<input type="hidden" id="{{ name }}" name="{{ name }}" value="{{ nonce }}" />
{% endfor %}
<div class="text-center wpml-margin-top-lg">
<input type="submit" class="button-primary button-lg" name="send-all-jobs-for-translation" value="{{ strings.button_send_all }}">
</div>
</form>

View File

@@ -0,0 +1,23 @@
<div class="js-wpml-translation-basket-dialog otgs-confirmation-dialog" style="display:none"
data-title="{{ strings.title }}" data-button-done="{{ strings.button_done }}"
data-redirect-url="{{ redirect_url }}">
<div class="otgs-confirmation-dialog-icon">
<span class="otgs-ico-ok"></span>
</div>
<div class="js-dialog-content otgs-confirmation-dialog-content">
<p class="js-call-to-action">
{{ strings.sent_to_translation }}
</p>
<p class="js-batch-link text-center" style="display: none">
<a
href="#"
class="button-primary button-lg wpml-margin-top-sm"
target="_blank"
rel="noopener"
></a>
</p>
</div>
</div>

View File

@@ -0,0 +1,14 @@
<div class="otgs-notice error">
<h3>{{ strings.title }}</h3>
<p>{{ strings.message }}</p>
<ul class="">
{% for document in documents %}
<li><strong>{{ document.title }}</strong>: {{ document.error_message }} (<a href="#" class="wpml-tm-invalid-fields-open-dialog" data-fields="{{ document.fields }}" data-page-title="{{ document.title }}">{{ strings.show_fields }}</a>)</li>
{% endfor %}
</ul>
<p>{{ strings.message_bottom }}</p>
<p><a href="{{ strings.documentation.link }}">{{ strings.documentation.text }}</a></p>
<div class="wpml-tm-invalid-fields-dialog"></div>
</div>

View File

@@ -0,0 +1,21 @@
<div class="wpml-translation-action-buttons-abort">
<button class="cancel wpml-dialog-close-button js-dialog-cancel"><%=cancel%></button>
<button class="button-secondary wpml-resign-button js-resign"><%=resign%></button>
</div>
<div class="wpml-translation-action-buttons-status">
<div class="progress-bar js-progress-bar"><div class="progress-bar-text"></div></div>
<label><input class="js-translation-complete" name="complete" type="checkbox"/><%=translation_complete%></label>
<div class="otgs-toggle-group">
<input type="checkbox" class="js-toggle-translated otgs-switcher-input" id="wpml_tm_toggle_translated">
<label for="wpml_tm_toggle_translated" class="otgs-switcher" data-on="ON" data-off="OFF"><%=hide_translated%></label>
</div>
</div>
<div class = "wpml-translation-action-buttons-apply">
<span class = "js-saving-message" style = "display:none"><img src="<%=loading_url%>" alt="<%=saving%>" height="16" width="16"/><%=saving%></span>
<button class = "button button-primary button-large wpml-dialog-close-button js-save-and-close"><%=save_and_close%></button>
<button class = "button button-primary button-large wpml-dialog-close-button js-save"><%=save%></button>
</div>

View File

@@ -0,0 +1,10 @@
<% if ( title ) { %><%= title %><% } %>
<div class="inside">
</div>
<% if ( divider ) { %>
<hr />
<% } %>
<button class="button-copy button-secondary js-button-copy-group">
<i class="otgs-ico-copy"></i>
</button>

View File

@@ -0,0 +1,2 @@
<%= title %>
<a href="<%= link_url %>" class="view" target="_blank"><%= link_text %></a>

View File

@@ -0,0 +1,8 @@
<div class="inside">
<img src="<%= image_src %>">
</div>
<% if ( divider ) { %>
<hr />
<% } %>

View File

@@ -0,0 +1,17 @@
<input type="hidden" name="source_lang" value="<%= language.source %>" />
<input type="hidden" name="target_lang" value="<%= language.target %>" />
<h3 class="wpml-header-original"><%= labels.source_lang %>:
<span class="wpml-title-flag"><img src="<%= language.img.source_url %>" alt="<%= language.source_lang %>"/></span>
<strong><%= language.source_lang %></strong>
</h3>
<h3 class="wpml-header-translation"><%= labels.target_lang %>:
<span class="wpml-title-flag"><img src="<%= language.img.target_url %>" alt="<%= language.target_lang %>"/></span>
<strong><%= language.target_lang %></strong>
</h3>
<div class="wpml-copy-container">
<button class="button-secondary button-copy-all js-button-copy-all" title="<%= labels.copy_from_original %>">
<i class="otgs-ico-copy"></i> <%= labels.copy_all %>
</button>
</div>

View File

@@ -0,0 +1,2 @@
<p><%= note %></p>

View File

@@ -0,0 +1,10 @@
<div class="handlediv button-link"><br></div>
<h3 class="hndle">
<span><%= section.title %> <% if ( section.empty ) { %>&nbsp;<i><%= section.empty_message %><% } %></span>
<% if ( section.sub_title ) { %>
<span class="subtitle"><i class="otgs-ico-warning"></i><%= section.sub_title %></span>
<% } %>
</h3>
<div class="inside">
</div>

View File

@@ -0,0 +1,17 @@
<label><%=field.title%></label>
<input readonly class="original_value js-original-value" value="<%- field.field_data %>" type="text" <%=field.original_direction%>/>
<button class="button-copy button-secondary js-button-copy icl_tm_copy_link otgs-ico-copy" id="icl_tm_copy_link_<%=field.field_type%>" title="<%= labels.copy_from_original %>" ></button>
<input class="translated_value js-translated-value" name="fields[<%=field.field_type%>][data]" value="<%- field.field_data_translated %>" type="text" <%=field.translation_direction%>/>
<div class="field_translation_complete">
<label><input class="icl_tm_finished js-field-translation-complete" name="fields[<%=field.field_type%>][finished]" type="checkbox" <% if (field.field_finished) { %> checked="checked" <% } %> /><%=labels.translation_complete%></label>
</div>
<% if (field.diff) { %>
<a class="js-toggle-diff toggle-diff"><%=labels.show_diff%></a>
<%=field.diff%>
<% } %>
<input type="hidden" name="fields[<%=field.field_type%>][tid]" value="<%=field.tid%>">
<input type="hidden" name="fields[<%=field.field_type%>][format]" value="base64">

View File

@@ -0,0 +1,17 @@
<label><%=field.title%></label>
<textarea class="original_value js-original-value" readonly cols="22" rows="10" <%=field.original_direction%>><%= field.field_data %></textarea>
<button class="button-copy button-secondary js-button-copy icl_tm_copy_link otgs-ico-copy" id="icl_tm_copy_link_<%=field.field_type%>" title="<%= labels.copy_from_original %>"></button>
<textarea class="translated_value js-translated-value cols="22" rows="10" name="fields[<%=field.field_type%>][data]" <%=field.translation_direction%>><%= field.field_data_translated %></textarea>
<div class="field_translation_complete">
<label><input class="icl_tm_finished js-field-translation-complete" name="fields[<%=field.field_type%>][finished]" type="checkbox" <% if (field.field_finished) { %> checked="checked" <% } %> /><%=labels.translation_complete%></label>
</div>
<% if (field.diff) { %>
<a class="js-toggle-diff toggle-diff"><%=labels.show_diff%></a>
<%=field.diff%>
<% } %>
<input type="hidden" name="fields[<%=field.field_type%>][tid]" value="<%=field.tid%>">
<input type="hidden" name="fields[<%=field.field_type%>][format]" value="base64">

View File

@@ -0,0 +1,17 @@
<label><%=field.title%></label>
<div id="original_<%=field.field_type%>_placeholder"></div>
<button class="button-copy button-secondary js-button-copy icl_tm_copy_link otgs-ico-copy" id="icl_tm_copy_link_<%=field.field_type%>" title="<%= labels.copy_from_original %>"></button>
<div id="translated_<%=field.field_type%>_placeholder"></div>
<input type="hidden" name="fields[<%=field.field_type%>][tid]" value="<%=field.tid%>">
<input type="hidden" name="fields[<%=field.field_type%>][format]" value="base64">
<div class="field_translation_complete">
<label><input class="icl_tm_finished js-field-translation-complete" name="fields[<%=field.field_type%>][finished]" type="checkbox" <% if (field.field_finished) { %> checked="checked" <% } %> /><%=labels.translation_complete%></label>
</div>
<% if (field.diff) { %>
<a class="js-toggle-diff toggle-diff"><%=labels.show_diff%></a>
<%=field.diff%>
<% } %>

View File

@@ -0,0 +1,15 @@
<h3>{{ strings.title }}</h3>
<div class="wpml-job-migration-error" style="display: none;">
<p><strong>{{ strings.communicationError }}</strong></p>
<p class="error-message"></p>
</div>
<p>{{ strings.description|raw }}</p>
{% if strings.button %}
<button style="float:left" class="button-primary wpml-start-jobs-migration">{{ strings.button }}</button>
<div style="float:left" class="spinner wpml-jobs-migration-spinner"></div>
<div style="float: left; margin-left: 10px; display:none" class="wpml-js-jobs-migration-progress">
<span class="wpml-js-migrated-jobs">20</span> {{ strings.of }} <span class="wpml-js-total-jobs">100</span> {{ strings.jobs_migrated }}
</div>
{{ nonce|raw }}
{% endif %}
<div class="clearfix"></div>

View File

@@ -0,0 +1,36 @@
<div id="{{ dialog.id }}"
class="{{ dialog.class }}"
title="{{ dialog.strings.title }}"
style="display:none"
data-previous-text="{{ dialog.strings.previous_text }}"
data-cancel-text="{{ dialog.strings.cancel_text }}">
<div class="js-select-user"
data-set-languages-text="{{ dialog.strings.set_languages_text }}"
data-nonce="{{ dialog.nonce }}"
style="width: 600px">
<label class="add-new-translation-role-label" for="translator-existing-user"><input type="radio" id="translator-existing-user" name="user" value="existing"/> {{ dialog.strings.existing_user }}</label>
<div class="js-existing-user-section add-new-translation-role-form" style="display: none">
<input type="text" class="js-translation-user-select" placeholder=""/>
</div>
<label class="add-new-translation-role-label" for="translator-new-user"> <input type="radio" id="translator-new-user" name="user" value="new"/> {{ dialog.strings.new_user }}</label>
<div class="js-new-user-section add-new-translation-role-form" style="display: none">
{% include 'new-user-inputs.twig' %}
</div>
</div>
<div class="js-select-languages-section add-new-translator-languages"
data-save-translator-text="{{ dialog.strings.save_translator_text }}"
style="width: 600px;display: none">
<h4 data-text="{{ dialog.strings.set_lang }}"></h4>
<div class="js-error notice notice-error otgs-notice-icon" style="display: none"></div>
{% include 'language-pairs.twig' %}
</div>
</div>

View File

@@ -0,0 +1,10 @@
<div id="{{ dialog.id }}"
class="{{ dialog.class }}"
title="{{ dialog.strings.title }}"
style="display:none"
data-save-text="{{ dialog.strings.save_text }}"
data-cancel-text="{{ dialog.strings.cancel_text }}">
{% include 'language-pairs.twig' %}
</div>

View File

@@ -0,0 +1,28 @@
<div class="js-language-pairs" data-default-language="{{ dialog.default_language }}"></div>
<button class="button button-secondary button-small js-add-lang-pair">{{ dialog.strings.add_lang_pair_text }}</button>
<div class="js-select-languages" style="width: 600px;display: none">
<div class="wpml-form-row">
<span class="languages-from-label">{{ dialog.strings.from }}:</span>
<select name="from-language[]" class="js-from-language-select">
<option value="0">{{ dialog.strings.choose_language }}</option>
{% for lang in dialog.source_languages.get_codes() %}
{% set lang_details = dialog.source_languages.get( lang ) %}
<option value="{{ lang_details.get_code() }}">{{ lang_details.get_display_name() }}</option>
{% endfor %}
</select>
<i class="otgs-ico-close js-delete-language-pair delete-language-pair"></i>
</div>
<div class="languages-to js-to-languages" style="display: none;">
<span class="languages-to-label">{{ dialog.strings.to }}:</span>
<div>
{% for lang in dialog.languages.get_codes() %}
<label>
<input type="checkbox" name="to-language[]" value="{{ lang }}"/>
{% include 'language-with-flag.twig' with {'lang' : lang, 'languages' : dialog.languages} %}
</label>
{% endfor %}
</div>
</div>
</div>

View File

@@ -0,0 +1,2 @@
{% set lang_details = languages.get( lang ) %}
<img width="18" height="12" src="{{ lang_details.get_flag_url() }}"> {{ lang_details.get_display_name() }}

View File

@@ -0,0 +1,13 @@
{% if only_i_user %}
<div class="js-translator-only-i translator-only-i" data-user-id="{{ only_i_user.ID }}">
<div class="translator-only-i-person">
<span class="translator-only-i-avatar">{{ only_i_user.avatar|raw }}</span>
<span class="translator-only-i-name ">{{ only_i_user.user_login }}</span>
<a class="otgs-ico-close js-remove-translator translator-only-i-remove-icon js-otgs-popover-tooltip" title="{{ strings.remove_me }}"></a>
</div>
<div class="translator-only-i-info">
<span class="translator-only-i-text">{{ strings.only_i }}</span>
<a class="js-remove-translator translator-only-i-remove-action">{{ strings.remove_me }}</a>
</div>
</div>
{% endif %}

View File

@@ -0,0 +1,5 @@
<tr>
<th scope="col" class="manage-column sortable"><a><span>{{ strings.columns.name }}</span><span class="sorting-indicator"></span></a></th>
<th scope="col" class="manage-column sortable"><a><span>{{ strings.columns.email }}</span><span class="sorting-indicator"></span></a></th>
<th scope="col" class="manage-column">{{ strings.columns.language_pairs }}</th>
</tr>

View File

@@ -0,0 +1,27 @@
<tr data-user-id="{{ user.ID }}" data-language-pairs="{{ user.language_pairs|json_encode() }}">
<td class="column-title">
{{ user.display_name }}
<div class="row-actions">
<span class="edit">
<a class="js-edit-languages" title="{{ strings.edit_languages }}">{{ strings.edit_languages }}</a>
</span>
|
<span class="trash">
<a class="js-remove-translator" title="{{ strings.remove }}">{{ strings.remove }}</a>
</span>
</div>
</td>
<td class="column-email">{{ user.user_email }}</td>
<td class="column-languages">
{% for from_lang, to_langs in user.language_pairs %}
<div>
{% include 'language-with-flag.twig' with {'lang' : from_lang } %} &raquo;
{% for lang in to_langs -%}
<span>
{%- include 'language-with-flag.twig' -%}
</span>
{%- endfor %}
</div>
{% endfor %}
</td>
</tr>

View File

@@ -0,0 +1,10 @@
<table class="widefat striped js-translators-table translators-table">
<thead>
{% include 'table-header.twig' %}
</thead>
<tbody>
{% for user in users %}
{% include 'translators-row.twig' %}
{% endfor %}
</tbody>
</table>

View File

@@ -0,0 +1,22 @@
<div class="js-translators wpml-section" data-nonce="{{ nonce }}">
<h2>{{ strings.title }}</h2>
<div class="js-translators-list">
{% include 'only-i-translator.twig' %}
<div class="tablenav top clearfix text-center">
<button
class="button-secondary alignright js-add-translator"
{% if not can_add_translators %} disabled {% endif %}
> + {{ strings.add_translator }}</button>
</div>
{% if can_add_translators %}
{% include 'translators-table.twig' %}
{% else %}
<div class="notice notice-warning inline">
<p>{{ strings.no_capability }}</p>
</div>
{% endif %}
</div>
{% include 'add-new-translator-dialog.twig' with { 'dialog': add_translator_dialog } %}
{% include 'edit-translator-languages-dialog.twig' with { 'dialog': edit_translator_languages_dialog } %}
</div>

View File

@@ -0,0 +1,9 @@
<div class="icl_cyan_box" id="{{ placeHolder|e }}">
<input type="hidden" name="action" value="{{ formAction|e }}">
<input type="hidden" name="wpml_clear_ts_nonce" value="{{ nonces.clearTS|e }}">
<h3>{{ strings.title }}</h3>
<p>{{ strings.message }}</p>
<a class="button-primary" href="#">{{ strings.button }}</a><span class="spinner"></span>
</div><br clear="all"/>

View File

@@ -0,0 +1,21 @@
<div class="icl_cyan_box" id="{{ placeHolder|e }}">
<h3>{{ strings.title }}</h3>
<div class="icl_form_errors">
{{ strings.alert1 }}
<br/>
{{ strings.alert2 }}
</div>
<p style="padding:6px;">
<input id="icl_reset_pro_check" type="checkbox" value="1"/>
&nbsp;<label for="icl_reset_pro_check">{{ strings.checkBoxLabel }}</label>
</p>
<p style="padding:6px;">
<a id="icl_reset_pro_but" href="#" class="button-primary button-primary-disabled">
{{ strings.button }}
</a><span class="spinner"></span>
</p>
</div>
<br clear="all"/>

View File

@@ -0,0 +1,10 @@
<tr class="user-language-wrap">
<th colspan="2"><h3><a name="wpml"></a>{{ strings.section_title }}</h3></th>
</tr>
<tr class="user-language-wrap">
<th>{{ strings.field_title }}</th>
<td>
<input type="checkbox" name="{{ strings.field_name }}" id="{{ strings.field_name }}" value="0" {{ strings.checked }} />
&nbsp;<label for="{{ strings.field_name }}">{{ strings.field_text }}</label>
</td>
</tr>

View File

@@ -0,0 +1,9 @@
<span>
{% if value is same as(true) %}
<i class="otgs-ico-ok"></i>
{% elseif value is not same as(false) %}
<span>
{{ value }}
</span>
{% endif %}
</span>

View File

@@ -0,0 +1,43 @@
<div class="wpml-wizard-step wpml-summary-step js-wpml-summary-step"
data-mode='{{ mode }}'>
<h2 class="text-center">{{ strings.title }}</h2>
<div class="wpml-translators-wrapper">
{% if( translators|length > 0 ) %}
<div class="wpml-local-translators js-wpml-local-translators">
<h3>{{ strings.local_translators }}:</h3>
<ul>
{% for user in translators %}
<li>{{ user.display_name }}</li>
{% endfor %}
</ul>
<div class="notice notice-success inline">
<p>{{ strings.local_summary }}</p>
</div>
</div>
{% endif %}
{% if ( translation_service ) %}
<div class="wpml-translation-service js-wpml-translation-service">
<h3>{{ strings.translation_service }}:</h3>
<div class="wpml-translation-service-activated">
<img src="{{ translation_service.logo_url }}">
<strong>{{ translation_service.name }}</strong>
</div>
</div>
{% endif %}
</div>
<div class="wpml-tm-instructions">
{{ strings.instructions|raw }}
</div>
<div class="wpml-wizard-buttons-container">
<button class="button button-secondary alignleft js-go-back">&laquo; {{ strings.go_back }}</button>
<button class="button wpml-button button-lg alignright js-done">{{ strings.done }}</button>
</div>
</div>

View File

@@ -0,0 +1,22 @@
<div class="wpml-wizard-step wpml-translation-editor-step js-wpml-translation-editor-step">
<div class="wpml-translation-editor-step__ate">
<h2>An Advanced Translation Editor</h2>
<p>WPMLs Advanced Translation Editor allows you and your translators to translate faster, easier and more accurately. The editor includes key features like:</p>
<ul>
<li>Convenient translation for page-builder designs</li>
<li>Automatic translation</li>
<li>Translation memory and glossary</li>
<li>A modern translation interface</li>
</ul>
<div class="wpml-translation-editor-step__ate-cta">
<button>Continue</button>
<span class="spinner" ></span>
<span class="error"></span>
</div>
</div>
<div class="wpml-translation-editor-step__classic">
<p>Prefer the old translation editor? <a href="#">Switch to WPMLs Classic Translation Editor</a><span class="spinner" ></span></p>
</div>
</div>

View File

@@ -0,0 +1,106 @@
<div class="wpml-wizard-step wpml-who-will-translate-step js-who-will-translate-step"
data-nonce="{{ nonce }}"
data-mode='{{ mode }}'
>
<div class="js-main">
<h2 class="text-center">{{ strings.title }}</h2>
<div class="wpml-who-will-translate-option">
<input type="checkbox" class="js-only-i" id="who-only-i"/>
<label for="who-only-i">{{ strings.only_i }}</label>
{% include 'help-tooltip.twig' with {'help': strings.only_i_help} %}
</div>
<div class="wpml-who-will-translate-option">
<input type="checkbox" class="js-users" id="who-users"/>
<label for="who-users">{{ strings.users }}</label>
{% include 'help-tooltip.twig' with {'help': strings.users_help} %}
</div>
<div class="js-users-section js-section wpml-who-will-translate-settings" style="display:none">
{{ translators_ui|raw }}
</div>
<div class="wpml-who-will-translate-option">
<input type="checkbox" class="js-translation-service" id="who-translation-service"/>
<label for="who-translation-service">{{ strings.translation_service }}</label>
{% include 'help-tooltip.twig' with {'help': strings.translation_service_help} %}
</div>
<div class="js-translation-service-section js-section wpml-who-will-translate-settings" style="display:none">
<div class="wpml-section js-choose-section text-center">
<button class="button-primary js-choose-translation-service">{{ strings.choose_translation_service }}</button>
</div>
<div class="wpml-section js-selected-section" style="display: none">
</div>
<div id="js-translation-services-dialog"
class=""
title="{{ strings.translation_service_dialog.title }}"
style="display:none"
data-cancel-text="{{ strings.dialog_cancel }}"
>
<p>{{ strings.translation_service_dialog.into }}</p>
{{ translation_services_table | raw }}
</div>
<div id="js-activate-translation-services-dialog"
class="ts-activate-section"
data-title="{{ strings.activate_translation_service_dialog.title }}"
style="display: none"
data-cancel-text="&laquo; {{ strings.activate_translation_service_dialog.cancel }}"
data-ok-text="{{ strings.activate_translation_service_dialog.ok }}"
>
<div class="ts-activate-logo">
<img class="js-activate-logo" src="">
</div>
<div class="ts-activate-content">
<p class="js-connect-desc"
data-text="{{ strings.activate_translation_service_dialog.connect_desc }}"></p>
<p><a href="" class="wpml-external-link js-connect-how-to-find"
data-text="{{ strings.activate_translation_service_dialog.connect_how_to_find }}"
target="_blank"></a></p>
<div class="custom_fields_wrapper js-custom-fields-wrapper"></div>
<div class="notice notice-error inline js-error-message ts-activate-notice"
style="display: none"></div>
<p class="js-create-account ts-create-account-link"
data-text="{{ strings.activate_translation_service_dialog.no_account }}">
<span></span> <a class="wpml-external-link" href=""
target="_blank">{{ strings.activate_translation_service_dialog.create_one }}</a>
</p>
</div>
</div>
</div>
{% if is_administrator %}
<div class="wpml-who-will-translate-option">
<input type="checkbox" class="js-leave-choice" id="who-leave-choice"/>
<label for="who-leave-choice">{{ strings.leave_choice }}</label>
{% include 'help-tooltip.twig' with {'help': strings.leave_choice_help } %}
</div>
<div class="js-leave-choice-section js-section wpml-who-will-translate-settings" style="display:none">
{{ translation_manager_ui|raw }}
</div>
{% endif %}
<div class="wpml-wizard-buttons-container ">
<button class="button wpml-button button-lg alignright js-continue button-primary">{{ strings.button_text }} &raquo;</button>
</div>
</div>
</div>

View File

@@ -0,0 +1,5 @@
{% if estimatedTime > 1 %}
{{- strings.inMinutes|format( estimatedTime ) -}}
{% else %}
{{- strings.inMinute|format( estimatedTime ) -}}
{% endif %}

View File

@@ -0,0 +1,12 @@
<tr class="{{ row.status }}{% if row.isRequested %} is-requested{% endif %}{% if row.needsRefresh %} needs-refresh{% endif %}"
{% if row.needsRefresh %} title="{{ strings.needsRefresh }}"{% endif %}>
<td class="word-count-checkbox">
<input type="checkbox" class="requested-type"
data-group="{{ row.group }}" data-type="{{ row.type }}"
{% if row.isRequested %} checked="checked"{% endif %}
{% if countInProgress %} disabled="disabled"{% endif %}"></td>
<td>{{ row.typeLabel }}</td>
<td><span class="js-row-completed-items">{{ row.completedItems }}</span>/{{ row.countItems }}</td>
<td class="js-row-count-words">{{ row.countWords }}</td>
<td class="word-count-status">{% include 'estimated-time.twig' with {estimatedTime: row.estimatedTime, strings:strings} %}</td>
</tr>

View File

@@ -0,0 +1,50 @@
{% if not cron_is_on %}
<div class="notice notice-warning">
<p>{{ strings.cronWarning }}</p>
<ol class="ol-decimal">
{% for tip in strings.cronTips %}
<li>{{ tip }}</li>
{% endfor %}
</ol>
</div>
{% endif %}
<form class="js-word-count-report{% if countInProgress %} word-count-in-progress"{% endif %}">
<button class="start-count alignright button button-small button-secondary"
{% if countInProgress or totals.requestedTypes == 0 %} disabled="disabled"{% endif %}>
<span class="otgs-ico-refresh"></span> {{ strings.recalculate }}</button>
<span class="spinner alignright {% if countInProgress %} is-active{% endif %}"></span>
<table class="widefat striped">
<thead>
<tr>
<th></th>
<th>{{ strings.contentType }}</th>
<th>{{ strings.itemsCount }}</th>
<th>{{ strings.wordCount }}</th>
<th>{{ strings.estimatedTime }}</th>
</tr>
</thead>
<tbody>
{% for post_type in data.post_types %}
{% include 'report-row.twig' with {row:post_type, strings:strings, countInProgress:countInProgress} %}
{% endfor %}
{% for package_kind in data.package_kinds %}
{% include 'report-row.twig' with {row:package_kind, strings:strings, countInProgress:countInProgress} %}
{% endfor %}
</tbody>
<tfoot>
<tr>
<th></th>
<th>{{ strings.total }}</th>
<th><span class="js-total-completed-items">{{ totals.completedItems }}</span>/{{ totals.countItems }}</th>
<th class="js-total-count-words">{{ totals.countWords }}</th>
<th>{% include 'estimated-time.twig' with {estimatedTime: totals.estimatedTime, strings:strings} %}</th>
</tr>
</tfoot>
</table>
</form>