81 lines
3.5 KiB
PHP
81 lines
3.5 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @package Joomla.Administrator
|
|
* @subpackage com_contenthistory
|
|
*
|
|
* @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org>
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
defined('_JEXEC') or die;
|
|
|
|
use Joomla\CMS\Language\Text;
|
|
use Joomla\CMS\Session\Session;
|
|
|
|
Session::checkToken('get') or die(Text::_('JINVALID_TOKEN'));
|
|
|
|
$version2 = $this->items[0];
|
|
$version1 = $this->items[1];
|
|
$object1 = $version1->data;
|
|
$object2 = $version2->data;
|
|
|
|
/** @var Joomla\CMS\WebAsset\WebAssetManager $wa */
|
|
$wa = $this->document->getWebAssetManager();
|
|
$wa->useScript('com_contenthistory.admin-compare-compare');
|
|
|
|
?>
|
|
<div role="main">
|
|
<h1 class="mb-3"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_TITLE'); ?></h1>
|
|
|
|
<table id="diff" class="table">
|
|
<caption class="visually-hidden">
|
|
<?php echo Text::_('COM_CONTENTHISTORY_COMPARE_CAPTION'); ?>
|
|
</caption>
|
|
<thead>
|
|
<tr>
|
|
<th scope="col" class="w-25"><?php echo Text::_('COM_CONTENTHISTORY_PREVIEW_FIELD'); ?></th>
|
|
<th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_OLD'); ?></th>
|
|
<th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_NEW'); ?></th>
|
|
<th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_DIFF'); ?></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<?php foreach ($object1 as $name => $value) : ?>
|
|
<?php if (isset($value->value) && isset($object2->$name->value) && $value->value != $object2->$name->value) : ?>
|
|
<?php if (is_object($value->value)) : ?>
|
|
<tr>
|
|
<td colspan="4">
|
|
<strong><?php echo $value->label; ?></strong>
|
|
</td>
|
|
</tr>
|
|
<?php foreach ($value->value as $subName => $subValue) : ?>
|
|
<?php $newSubValue = $object2->$name->value->$subName->value ?? ''; ?>
|
|
<?php if ($subValue->value || $newSubValue) : ?>
|
|
<?php if ($subValue->value != $newSubValue) : ?>
|
|
<tr>
|
|
<th scope="row"><em> <?php echo $subValue->label; ?></em></th>
|
|
<td class="original"><?php echo htmlspecialchars($subValue->value, ENT_COMPAT, 'UTF-8'); ?></td>
|
|
<td class="changed" ><?php echo htmlspecialchars($newSubValue, ENT_COMPAT, 'UTF-8'); ?></td>
|
|
<td class="diff"> </td>
|
|
</tr>
|
|
<?php endif; ?>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
<?php else : ?>
|
|
<tr>
|
|
<th scope="row">
|
|
<?php echo $value->label; ?>
|
|
</th>
|
|
<td class="original"><?php echo htmlspecialchars($value->value); ?></td>
|
|
<?php $object2->$name->value = is_object($object2->$name->value) ? json_encode($object2->$name->value) : $object2->$name->value; ?>
|
|
<td class="changed"><?php echo htmlspecialchars($object2->$name->value, ENT_COMPAT, 'UTF-8'); ?></td>
|
|
<td class="diff"> </td>
|
|
</tr>
|
|
<?php endif; ?>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
</tbody>
|
|
</table>
|
|
</div>
|