Fixed gh-534 so that the correct comment is made in the module area with the GUI placeholders. First steps towards adding multi languages for both modules and plugins gh-503 gh-493 in JCB. Other small improvments to the date helper methods. Add the otpion to target the admin area with modules.

This commit is contained in:
2020-03-24 03:11:43 +02:00
parent 86f671c87c
commit e051134a79
22 changed files with 739 additions and 324 deletions

View File

@@ -61,15 +61,98 @@ $edit = "index.php?option=com_componentbuilder&view=language_translations&task=l
<?php endif; ?>
</td>
<td class="nowrap">
<div class="name">
<?php if ($canDo->get('language_translation.edit')): ?>
<a href="<?php echo $edit; ?>&id=<?php echo $item->id; ?>"><?php echo $item->source; ?></a>
<?php if ($item->checked_out): ?>
<?php echo JHtml::_('jgrid.checkedout', $i, $userChkOut->name, $item->checked_out_time, 'language_translations.', $canCheckin); ?>
<?php endif; ?>
<?php else: ?>
<?php echo $item->source; ?>
<div>
<?php if ($canDo->get('language_translation.edit')): ?>
<a href="<?php echo $edit; ?>&id=<?php echo $item->id; ?>"><?php echo $item->source; ?></a>
<?php if ($item->checked_out): ?>
<?php echo JHtml::_('jgrid.checkedout', $i, $userChkOut->name, $item->checked_out_time, 'language_translations.', $canCheckin); ?>
<?php endif; ?>
<?php else: ?>
<?php echo $item->source; ?>
<?php endif; ?>
<?php
$langBucket = array();
if (ComponentbuilderHelper::checkJson($item->translation))
{
$translations = json_decode($item->translation, true);
if (ComponentbuilderHelper::checkArray($translations))
{
foreach ($translations as $language)
{
if (isset($language['translation']) && ComponentbuilderHelper::checkString($language['translation'])
&& isset($language['language']) && ComponentbuilderHelper::checkString($language['language']))
{
$langBucket[$language['language']] = $language['language'];
}
}
}
}
// start how many usedin's
$counterUsedin = array();
// set how many components use this string
if (ComponentbuilderHelper::checkJson($item->components))
{
$item->components = json_decode($item->components, true);
}
if (($number = ComponentbuilderHelper::checkArray($item->components)) !== false)
{
if ($number == 1)
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_COMPONENT');
}
else
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_COMPONENTS');
}
}
// set how many modules use this string
if (ComponentbuilderHelper::checkJson($item->modules))
{
$item->modules = json_decode($item->modules, true);
}
if (($number = ComponentbuilderHelper::checkArray($item->modules)) !== false)
{
if ($number == 1)
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_MODULE');
}
else
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_MODULES');
}
}
// set how many plugins use this string
if (ComponentbuilderHelper::checkJson($item->plugins))
{
$item->plugins = json_decode($item->plugins, true);
}
if (($number = ComponentbuilderHelper::checkArray($item->plugins)) !== false)
{
if ($number == 1)
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_PLUGIN');
}
else
{
$counterUsedin[] = $number . ' ' . JText::_('COM_COMPONENTBUILDER_PLUGINS');
}
}
// build the numbers
$numbersUsedin = '';
if (ComponentbuilderHelper::checkArray($counterUsedin))
{
$numbersUsedin = '<br />' . JText::_('COM_COMPONENTBUILDER_USED_IN') . ' ' . implode('<br />', $counterUsedin);
}
// load the languages to the string
if (ComponentbuilderHelper::checkArray($langBucket))
{
echo '<br /><small>' . JText::_('COM_COMPONENTBUILDER_ALREADY_TRANSLATED_INTO') . ' <em>(' . implode(', ', $langBucket) . ')</em>' . $numbersUsedin . '</small>';
}
else
{
echo '<br /><small><em>(' . JText::_('COM_COMPONENTBUILDER_NOTRANSLATION') . ')</em>' . $numbersUsedin . '</small>';
}
?>
</div>
</td>
<td class="center">