Files
interblue.pl/modules/pshowimporter/views/templates/admin/config_matchxmlfields_matches.tpl
2024-10-25 14:16:28 +02:00

183 lines
7.0 KiB
Smarty

{function xmlattr level=0}
{assign var='_path' value=$path}
{foreach from=$data key='name' item='value'}
{if $_path != ''}
{assign var='path' value=$_path|cat:"/@"|cat:$name}
{else}
{assign var='path' value='@'|cat:$name}
{/if}
<tr class="info">
<td class="col-md-6" style="padding-left: {(($level+1)*10)}px;">
<label class="control-label" style="font-size: 10px; text-align: left;">
&lt;{$tag} {$name}="<span class="label-tooltip" data-original-value='{$regexVal|htmlspecialchars_decode|htmlspecialchars}'>{$value|htmlspecialchars_decode|htmlspecialchars}</span>"&gt;
</label>
</td>
<td class="col-md-4">
<input type="hidden" name="matched[matches][{$path|md5}][key]" value="{$path}">
{include file="../helpers/config_matchxml_dbfield.tpl" type='matches' md5=$path|md5}
</td>
<td class="col-md-2 text-right">
<div class="btn-group-action">
<div class="btn-group pull-right">
<a title="Settings" class="edit btn btn-default fieldSettingsBtn">
<i class="icon-cog"></i> {l s='Show/hide settings' mod='pshowimporter'}
</a>
</div>
</div>
</td>
</tr>
{include file="./config_matchxmlfields_options_fields.tpl" type='matches' md5=$path|md5}
<tr><td></td></tr>
{/foreach}
{/function}
{function xmltag level=0 path=''}
{assign var='_path' value=$path}
{if $level == 0}
<tr>
<td class="col-md-3" style="padding-left: {($level*15)}px;">
<label class="control-label" style="font-size: 10px; text-align: left; font-weight: 900;">
&lt;{$object_tag|replace:",":"&gt;&lt;"}&gt;
</label>
</td>
<td colspan="5"></td>
</tr>
{assign 'lastTag' value=($object_tag|substr:(($object_tag|strpos:",")+(($object_tag|explode:",")|count)-1):100)}
{xmlattr data=$data->attributes() tag=$lastTag}
{/if}
{foreach from=$data key='name' item='value'}
{if $_path != ''}
{assign var='path' value=$_path|cat:"/"|cat:$name}
{else}
{assign var='path' value=$name}
{/if}
<tr>
<td class="col-md-5" style="padding-left: {(($level+1)*10)}px;">
<label class="control-label" style="padding: 0; font-size: 10px; text-align: left;">
&lt;{$name}&gt;
</label>
</td>
<td colspan="5"></td>
</tr>
{if !is_string($value)}
{xmlattr data=$value->attributes() tag=$name level=$level+1}
<tr class="info">
<td class="col-md-6" style="padding-left: {(($level+2)*10)}px;">
{assign replaceEmptyTag "<"|cat:$name|cat:"/>"}
{assign tagString "~\<"|cat:$name|cat:"(.*)\>(.*)\<(.*)\>~"}
{assign var="regexVal" value=($value->asXML()|regex_replace:$tagString:"\\2":$value->asXML())}
{if $regexVal == ""}
{assign tagString "<"|cat:$name|cat:">"}
{assign tagString2 "</"|cat:$name|cat:">"}
{assign var="regexVal" value=($value->asXML()|replace:$tagString:"":$value->asXML()|replace:$tagString2:"":$value->asXML())}
{/if}
{assign regexVal $regexVal|replace:$replaceEmptyTag:""}
<div class="control-label" style="font-size: 10px; text-align: left;">
<span class="label-tooltip" data-original-value='{$regexVal|htmlspecialchars_decode|htmlspecialchars}'>
{if $regexVal|strlen > 200}
{$regexVal|substr:0:100|htmlspecialchars_decode|htmlspecialchars} <strong>......</strong> {$regexVal|substr:($regexVal|strlen-100):100|htmlspecialchars_decode|htmlspecialchars}
{else}
{$regexVal|htmlspecialchars_decode|htmlspecialchars}
{/if}
</span>
</div>
</td>
<td class="col-md-4">
<input type="hidden" name="matched[matches][{$path|md5}][key]" value="{$path}">
{include file="../helpers/config_matchxml_dbfield.tpl" type='matches' md5=$path|md5}
</td>
<td class="col-md-2 text-right">
<div class="btn-group-action">
<div class="btn-group pull-right">
<a title="Edit" class="edit btn btn-default fieldSettingsBtn">
<i class="icon-cog"></i> {l s='Show/hide settings' mod='pshowimporter'}
</a>
</div>
</div>
</td>
</tr>
{include file="./config_matchxmlfields_options_fields.tpl" type='matches' md5=$path|md5}
<tr><td></td></tr>
{/if}
{if $value|count != 0}
{xmlattr data=$value->attributes() tag=$name level=$level+1}
{xmltag data=$value level=$level+1 path=$path}
{/if}
<tr>
<td class="col-md-5" style="padding-left: {(($level+1)*10)}px;">
<label class="control-label" style="padding: 0; font-size: 10px; text-align: left;">
&lt;/{$name}&gt;
</label>
</td>
<td colspan="5"></td>
</tr>
{/foreach}
{if $level == 0}
<tr>
<td class="col-md-5" style="padding-left: {($level*10)}px;">
<label class="control-label" style="font-size: 10px; text-align: left; font-weight: 900;">
&lt;/{$object_tag|replace:",":"&gt;&lt;/"}&gt;
</label>
</td>
<td colspan="5"></td>
</tr>
{/if}
{/function}
<div class="matchHeading" style="display: none;">
<div class="col-md-7">
<strong>{l s='XML field path' mod='pshowimporter'}</strong>
</div>
<div class="col-md-5">
<strong>{l s='PrestaShop field' mod='pshowimporter'}</strong>
</div>
<div class="col-md-2">
</div>
</div>
<table class="table matchHeadingTable">
<thead>
<tr class="active">
<td class="col-md-5">
<strong>{l s='XML field path' mod='pshowimporter'}</strong>
</td>
<td class="col-md-5">
<strong>{l s='PrestaShop field' mod='pshowimporter'}</strong>
</td>
<td class="col-md-2">
</td>
</tr>
</thead>
<tbody>
{xmltag data=$data level=0 object_tag=$objectTag fieldId=0}
</tbody>
</table>
<script src="{$smarty.const.__PS_BASE_URI__}modules/pshowimporter/views/js/config_matchxmlfields_matches.js"></script>