183 lines
7.0 KiB
Smarty
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;">
|
|
<{$tag} {$name}="<span class="label-tooltip" data-original-value='{$regexVal|htmlspecialchars_decode|htmlspecialchars}'>{$value|htmlspecialchars_decode|htmlspecialchars}</span>">
|
|
</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;">
|
|
<{$object_tag|replace:",":"><"}>
|
|
</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;">
|
|
<{$name}>
|
|
</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;">
|
|
</{$name}>
|
|
</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;">
|
|
</{$object_tag|replace:",":"></"}>
|
|
</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> |