// fix update view.tpl in AdminCustomerController and Added new helper : HelperView
git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@9908 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
@@ -23,389 +23,394 @@
|
|||||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||||
* International Registered Trademark & Property of PrestaShop SA
|
* International Registered Trademark & Property of PrestaShop SA
|
||||||
*}
|
*}
|
||||||
<script type="text/javascript">
|
|
||||||
function saveCustomerNote()
|
|
||||||
{
|
|
||||||
$('#note_feedback').html('<img src="../img/loader.gif" />').show();
|
|
||||||
var noteContent = $('#noteContent').val();
|
|
||||||
|
|
||||||
$.ajax({
|
{extends file="helper/view/view.tpl"}
|
||||||
type: "POST",
|
|
||||||
url: "ajax.php",
|
{block name="override_tpl"}
|
||||||
data: "submitCustomerNote=1&id_customer={$customer->id}¬e="+noteContent,
|
<script type="text/javascript">
|
||||||
async : true,
|
function saveCustomerNote()
|
||||||
success: function(r) {
|
{
|
||||||
$('#note_feedback').html('').hide();
|
$('#note_feedback').html('<img src="../img/loader.gif" />').show();
|
||||||
if (r == 'ok')
|
var noteContent = $('#noteContent').val();
|
||||||
{
|
|
||||||
$('#note_feedback').html("<b style='color:green'>{l s='Your note has been saved'}</b>").fadeIn(400);
|
$.ajax({
|
||||||
$('#submitCustomerNote').attr('disabled', 'disabled');
|
type: "POST",
|
||||||
|
url: "ajax.php",
|
||||||
|
data: "submitCustomerNote=1&id_customer={$customer->id}¬e="+noteContent,
|
||||||
|
async : true,
|
||||||
|
success: function(r) {
|
||||||
|
$('#note_feedback').html('').hide();
|
||||||
|
if (r == 'ok')
|
||||||
|
{
|
||||||
|
$('#note_feedback').html("<b style='color:green'>{l s='Your note has been saved'}</b>").fadeIn(400);
|
||||||
|
$('#submitCustomerNote').attr('disabled', 'disabled');
|
||||||
|
}
|
||||||
|
else if (r == 'error:validation')
|
||||||
|
$('#note_feedback').html("<b style='color:red'>({l s='Error: your note is not valid'}</b>").fadeIn(400);
|
||||||
|
else if (r == 'error:update')
|
||||||
|
$('#note_feedback').html("<b style='color:red'>{l s='Error: cannot save your note'}</b>").fadeIn(400);
|
||||||
|
$('#note_feedback').fadeOut(3000);
|
||||||
}
|
}
|
||||||
else if (r == 'error:validation')
|
});
|
||||||
$('#note_feedback').html("<b style='color:red'>({l s='Error: your note is not valid'}</b>").fadeIn(400);
|
}
|
||||||
else if (r == 'error:update')
|
</script>
|
||||||
$('#note_feedback').html("<b style='color:red'>{l s='Error: cannot save your note'}</b>").fadeIn(400);
|
|
||||||
$('#note_feedback').fadeOut(3000);
|
<fieldset style="width:400px;float: left">
|
||||||
}
|
<div style="float: right">
|
||||||
});
|
<a href="{$current}&addcustomer&id_customer={$customer->id}&token={$token}">
|
||||||
}
|
<img src="../img/admin/edit.gif" />
|
||||||
</script>
|
</a>
|
||||||
|
|
||||||
<fieldset style="width:400px;float: left">
|
|
||||||
<div style="float: right">
|
|
||||||
<a href="{$current}&addcustomer&id_customer={$customer->id}&token={$token}">
|
|
||||||
<img src="../img/admin/edit.gif" />
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<span style="font-weight: bold; font-size: 14px;">
|
|
||||||
{$customer->firstname} {$customer->lastname}
|
|
||||||
</span>
|
|
||||||
<img src="{$gender_image}" style="margin-bottom: 5px" /><br />
|
|
||||||
<a href="mailto:{$customer->email}" style="text-decoration: underline; color: blue">{$customer->email}</a>
|
|
||||||
<br /><br />
|
|
||||||
{l s='ID:'} {$customer->id|string_format:"%06d"}<br />
|
|
||||||
{l s='Registration date:'} {$registration_date}<br />
|
|
||||||
{l s='Last visit:'} {if $customer_stats['last_visit']}{$last_visit}{else}{l s='never'}{/if}<br />
|
|
||||||
{if $count_better_customers != '-'}{l s='Rank: #'} {$count_better_customers}<br />{/if}
|
|
||||||
{if $shop_is_feature_active}{l s='Shop:'} {$name_shop}<br />{/if}
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<fieldset style="width:300px;float:left;margin-left:50px">
|
|
||||||
<div style="float: right">
|
|
||||||
<a href="{$current}&addcustomer&id_customer={$customer->id}&token={$token}">
|
|
||||||
<img src="../img/admin/edit.gif" />
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
{l s='Newsletter:'} {if $customer->newsletter}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}<br />
|
|
||||||
{l s='Opt-in:'} {if $customer->optin}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}<br />
|
|
||||||
{l s='Age:'} {$customer_stats['age']} {if isset($customer->birthday['age'])}({$customer_birthday}){else}{l s='unknown'}{/if}<br /><br />
|
|
||||||
{l s='Last update:'} {$last_update}<br />
|
|
||||||
{l s='Status:'} {if $customer->active}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}
|
|
||||||
|
|
||||||
{if $customer->isGuest()}
|
|
||||||
<div>
|
|
||||||
{l s='This customer is registered as'} <b>{l s='guest'}</b>
|
|
||||||
{if !$customer_exists}
|
|
||||||
<form method="POST" action="index.php?tab=AdminCustomers&id_customer={$customer->id}&token={getAdminToken tab='AdminCustomers'}">
|
|
||||||
<input type="hidden" name="id_lang" value="{$id_lang}" />
|
|
||||||
<p class="center"><input class="button" type="submit" name="submitGuestToCustomer" value="{l s='Transform to customer'}" /></p>
|
|
||||||
{l s='This feature generates a random password and sends an e-mail to the customer'}
|
|
||||||
</form>
|
|
||||||
{else}
|
|
||||||
</div><div><b style="color:red;">{l s='A registered customer account exists with the same email address'}</b>
|
|
||||||
{/if}
|
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
<span style="font-weight: bold; font-size: 14px;">
|
||||||
</fieldset>
|
{$customer->firstname} {$customer->lastname}
|
||||||
|
</span>
|
||||||
<div class="clear"> </div>
|
<img src="{$gender_image}" style="margin-bottom: 5px" /><br />
|
||||||
|
<a href="mailto:{$customer->email}" style="text-decoration: underline; color: blue">{$customer->email}</a>
|
||||||
<fieldset style="height:190px">
|
<br /><br />
|
||||||
<legend>
|
{l s='ID:'} {$customer->id|string_format:"%06d"}<br />
|
||||||
<img src="../img/admin/cms.gif" /> {l s='Add a private note'}
|
{l s='Registration date:'} {$registration_date}<br />
|
||||||
</legend>
|
{l s='Last visit:'} {if $customer_stats['last_visit']}{$last_visit}{else}{l s='never'}{/if}<br />
|
||||||
<p>{l s='This note will be displayed to all the employees but not to the customer.'}</p>
|
{if $count_better_customers != '-'}{l s='Rank: #'} {$count_better_customers}<br />{/if}
|
||||||
<form action="ajax.php" method="post" onsubmit="saveCustomerNote();return false;" id="customer_note">
|
{if $shop_is_feature_active}{l s='Shop:'} {$name_shop}<br />{/if}
|
||||||
<textarea name="note" id="noteContent" style="width:600px;height:100px" onkeydown="$('#submitCustomerNote').removeAttr('disabled');">{$customer_note}</textarea><br />
|
</fieldset>
|
||||||
<input type="submit" id="submitCustomerNote" class="button" value="{l s=' Save '}" style="float:left;margin-top:5px" disabled="disabled" />
|
|
||||||
<span id="note_feedback" style="float:left;margin:10px 0 0 10px"></span>
|
<fieldset style="width:300px;float:left;margin-left:50px">
|
||||||
</form>
|
<div style="float: right">
|
||||||
</fieldset>
|
<a href="{$current}&addcustomer&id_customer={$customer->id}&token={$token}">
|
||||||
|
<img src="../img/admin/edit.gif" />
|
||||||
<div class="clear"> </div>
|
</a>
|
||||||
|
</div>
|
||||||
|
{l s='Newsletter:'} {if $customer->newsletter}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}<br />
|
||||||
<h2>{l s='Messages'} ({count($messages)})</h2>
|
{l s='Opt-in:'} {if $customer->optin}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}<br />
|
||||||
{if count($messages)}
|
{l s='Age:'} {$customer_stats['age']} {if isset($customer->birthday['age'])}({$customer_birthday}){else}{l s='unknown'}{/if}<br /><br />
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
{l s='Last update:'} {$last_update}<br />
|
||||||
<tr>
|
{l s='Status:'} {if $customer->active}<img src="../img/admin/enabled.gif" />{else}<img src="../img/admin/disabled.gif" />{/if}
|
||||||
<th class="center">{l s='Status'}</th>
|
|
||||||
<th class="center">{l s='Message'}</th>
|
{if $customer->isGuest()}
|
||||||
<th class="center">{l s='Sent on'}</th>
|
<div>
|
||||||
</tr>
|
{l s='This customer is registered as'} <b>{l s='guest'}</b>
|
||||||
{foreach $messages AS $message}
|
{if !$customer_exists}
|
||||||
<tr>
|
<form method="POST" action="index.php?tab=AdminCustomers&id_customer={$customer->id}&token={getAdminToken tab='AdminCustomers'}">
|
||||||
<td>{$message['status']}</td>
|
<input type="hidden" name="id_lang" value="{$id_lang}" />
|
||||||
<td>
|
<p class="center"><input class="button" type="submit" name="submitGuestToCustomer" value="{l s='Transform to customer'}" /></p>
|
||||||
<a href="index.php?tab=AdminCustomerThreads&id_customer_thread='$message['id_customer_thread']}&viewcustomer_thread&token={getAdminToken tab='AdminCustomerThreads'}">
|
{l s='This feature generates a random password and sends an e-mail to the customer'}
|
||||||
{$message['message']}...
|
</form>
|
||||||
</a>
|
{else}
|
||||||
</td>
|
</div><div><b style="color:red;">{l s='A registered customer account exists with the same email address'}</b>
|
||||||
<td>{$message['date_add']}</td>
|
{/if}
|
||||||
</tr>
|
</div>
|
||||||
{/foreach}
|
{/if}
|
||||||
</table>
|
</fieldset>
|
||||||
|
|
||||||
<div class="clear"> </div>
|
<div class="clear"> </div>
|
||||||
{else}
|
|
||||||
{$customer->firstname} {$customer->lastname} {l s='has never contacted you'}
|
<fieldset style="height:190px">
|
||||||
{/if}
|
<legend>
|
||||||
|
<img src="../img/admin/cms.gif" /> {l s='Add a private note'}
|
||||||
{* display hook specified to this page : AdminCustomers *}
|
</legend>
|
||||||
{if $hook !== false}
|
<p>{l s='This note will be displayed to all the employees but not to the customer.'}</p>
|
||||||
<div>{$hook}</div>
|
<form action="ajax.php" method="post" onsubmit="saveCustomerNote();return false;" id="customer_note">
|
||||||
{/if}
|
<textarea name="note" id="noteContent" style="width:600px;height:100px" onkeydown="$('#submitCustomerNote').removeAttr('disabled');">{$customer_note}</textarea><br />
|
||||||
|
<input type="submit" id="submitCustomerNote" class="button" value="{l s=' Save '}" style="float:left;margin-top:5px" disabled="disabled" />
|
||||||
<div class="clear"> </div>
|
<span id="note_feedback" style="float:left;margin:10px 0 0 10px"></span>
|
||||||
|
</form>
|
||||||
<h2>{l s='Groups'} ({count($groups)})</h2>
|
</fieldset>
|
||||||
{if $groups AND count($groups)}
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
<div class="clear"> </div>
|
||||||
<tr>
|
|
||||||
<th class="center">{l s='ID'}</th>
|
|
||||||
<th class="center">{l s='Name'}</th>
|
<h2>{l s='Messages'} ({count($messages)})</h2>
|
||||||
<th class="center">{l s='Actions'}</th>
|
{if count($messages)}
|
||||||
</tr>
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
{foreach $groups AS $key => $group}
|
<tr>
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminGroups&id_group={$group['id_group']}&viewgroup&token={getAdminToken tab='AdminGroups'}'">
|
<th class="center">{l s='Status'}</th>
|
||||||
<td class="center">{$group['id_group']}</td>
|
<th class="center">{l s='Message'}</th>
|
||||||
<td>{$group['name']}</td>
|
<th class="center">{l s='Sent on'}</th>
|
||||||
<td align="center"><a href="?tab=AdminGroups&id_group={$group['id_group']}&viewgroup&token={getAdminToken tab='AdminGroups'}"><img src="../img/admin/details.gif" /></a></td>
|
</tr>
|
||||||
</tr>
|
{foreach $messages AS $message}
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
{/if}
|
|
||||||
<div class="clear"> </div>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>{l s='Orders'} ({count($orders)})</h2>
|
|
||||||
{if $orders AND count($orders)}
|
|
||||||
{assign var=count_ok value=count($orders_ok)}
|
|
||||||
{if $count_ok}
|
|
||||||
<div style="float:left;margin-right:20px">
|
|
||||||
<h3 style="color:green;font-weight:700">
|
|
||||||
{l s='Valid orders:'} {$count_ok} {l s='for'} {$total_ok}
|
|
||||||
</h3>
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table float">
|
|
||||||
<tr>
|
<tr>
|
||||||
<th class="center">{l s='ID'}</th>
|
<td>{$message['status']}</td>
|
||||||
<th class="center">{l s='Date'}</th>
|
<td>
|
||||||
<th class="center">{l s='Products'}</th>
|
<a href="index.php?tab=AdminCustomerThreads&id_customer_thread='$message['id_customer_thread']}&viewcustomer_thread&token={getAdminToken tab='AdminCustomerThreads'}">
|
||||||
<th class="center">{l s='Total paid'}</th>
|
{$message['message']}...
|
||||||
<th class="center">{l s='Payment'}</th>
|
</a>
|
||||||
<th class="center">{l s='State'}</th>
|
</td>
|
||||||
<th class="center">{l s='Actions'}</th>
|
<td>{$message['date_add']}</td>
|
||||||
</tr>
|
</tr>
|
||||||
{foreach $orders_ok AS $key => $order}
|
{/foreach}
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
</table>
|
||||||
<td class="center">{$order['id_order']}</td>
|
|
||||||
<td>{$order['date_add']}</td>
|
|
||||||
<td align="right">{$order['nb_products']}</td>
|
|
||||||
<td align="right">{$order['total_paid_real']}</td>
|
|
||||||
<td>{$order['payment']}</td>
|
|
||||||
<td>{$order['order_state']}</td>
|
|
||||||
<td align="center"><a href="?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
{assign var=count_ko value=count($orders_ko)}
|
|
||||||
{if $count_ko}
|
|
||||||
<div style="float:left;margin-right:20px">
|
|
||||||
<h3 style="color:red;font-weight:700">{l s='Invalid orders:'} {$count_ko}</h3>
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table float">
|
|
||||||
<tr>
|
|
||||||
<th class="center">{l s='ID'}</th>
|
|
||||||
<th class="center">{l s='Date'}</th>
|
|
||||||
<th class="center">{l s='Products'}</th>
|
|
||||||
<th class="center">{l s='Total paid'}</th>
|
|
||||||
<th class="center">{l s='Payment'}</th>
|
|
||||||
<th class="center">{l s='State'}</th>
|
|
||||||
<th class="center">{l s='Actions'}</th>
|
|
||||||
</tr>
|
|
||||||
{foreach $orders_ko AS $key => $order}
|
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
|
||||||
<td class="center">{$order['id_order']}</td>
|
|
||||||
<td>{$order['date_add']}</td>
|
|
||||||
<td align="right">{$order['nb_products']}</td>
|
|
||||||
<td align="right">{$order['total_paid_real']}</td>
|
|
||||||
<td>{$order['payment']}</td>
|
|
||||||
<td>{$order['order_state']}</td>
|
|
||||||
<td align="center"><a href="?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div class="clear"> </div>
|
<div class="clear"> </div>
|
||||||
|
{else}
|
||||||
|
{$customer->firstname} {$customer->lastname} {l s='has never contacted you'}
|
||||||
{/if}
|
{/if}
|
||||||
{else}
|
|
||||||
{$customer->firstname} {$customer->lastname} {l s='has not placed any orders yet'}
|
{* display hook specified to this page : AdminCustomers *}
|
||||||
{/if}
|
{if $hook !== false}
|
||||||
|
<div>{$hook}</div>
|
||||||
{if $products AND count($products)}
|
{/if}
|
||||||
<div class="clear"> </div>
|
|
||||||
<h2>{l s='Products'} ({count($products)})</h2>
|
<div class="clear"> </div>
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
|
||||||
<tr>
|
<h2>{l s='Groups'} ({count($groups)})</h2>
|
||||||
<th class="center">{l s='Date'}</th>
|
{if $groups AND count($groups)}
|
||||||
<th class="center">{l s='Name'}</th>
|
|
||||||
<th class="center">{l s='Quantity'}</th>
|
|
||||||
<th class="center">{l s='Actions'}</th>
|
|
||||||
</tr>
|
|
||||||
{foreach $products AS $key => $product}
|
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$product['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
|
||||||
<td>{$product['date_add']}</td>
|
|
||||||
<td>{$product['product_name']}</td>
|
|
||||||
<td align="right">{$product['product_quantity']}</td>
|
|
||||||
<td align="center"><a href="?tab=AdminOrders&id_order={$product['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
{/if}
|
|
||||||
<div class="clear"> </div>
|
|
||||||
|
|
||||||
<h2>{l s='Addresses'} ({count($addresses)})</h2>
|
|
||||||
{if count($addresses)}
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
|
||||||
<tr>
|
|
||||||
<th>{l s='Company'}</th>
|
|
||||||
<th>{l s='Name'}</th>
|
|
||||||
<th>{l s='Address'}</th>
|
|
||||||
<th>{l s='Country'}</th>
|
|
||||||
<th>{l s='Phone number(s)'}</th>
|
|
||||||
<th>{l s='Actions'}</th>
|
|
||||||
</tr>
|
|
||||||
{foreach $addresses AS $key => $address}
|
|
||||||
<tr {if $key %2}class="alt_row"{/if}>
|
|
||||||
<td>{if $address['company']}{$address['company']}{else}--{/if}</td>
|
|
||||||
<td>{$address['firstname']} {$address['lastname']}</td>
|
|
||||||
<td>{$address['address1']} {if $address['address2']}{$address['address2']}{/if} {$address['postcode']} {$address['city']}</td>
|
|
||||||
<td>{$address['country']}</td>
|
|
||||||
<td>
|
|
||||||
{if $address['phone']}
|
|
||||||
{$address['phone']}
|
|
||||||
{if $address['phone_mobile']}<br />{$address['phone_mobile']}{/if}
|
|
||||||
{else}
|
|
||||||
{if $address['phone_mobile']}<br />{$address['phone_mobile']}{else}--{/if}
|
|
||||||
{/if}
|
|
||||||
</td>
|
|
||||||
<td align="center">
|
|
||||||
<a href="?tab=AdminAddresses&id_address={$address['id_address']}&addaddress&token={getAdminToken tab='AdminAddresses'}"><img src="../img/admin/edit.gif" /></a>
|
|
||||||
<a href="?tab=AdminAddresses&id_address={$address['id_address']}&deleteaddress&token={getAdminToken tab='AdminAddresses'}"><img src="../img/admin/delete.gif" /></a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
{else}
|
|
||||||
{$customer->firstname} {$customer->lastname} {l s='has not registered any addresses yet'}
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
<div class="clear"> </div>
|
|
||||||
<h2>{l s='Discounts'} ({count($discounts)})</h2>
|
|
||||||
{if count($discounts)}
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
|
||||||
<tr>
|
|
||||||
<th>{l s='ID'}</th>
|
|
||||||
<th>{l s='Code'}</th>
|
|
||||||
<th>{l s='Type'}</th>
|
|
||||||
<th>{l s='Value'}</th>
|
|
||||||
<th>{l s='Qty available'}</th>
|
|
||||||
<th>{l s='Status'}</th>
|
|
||||||
<th>{l s='Actions'}</th>
|
|
||||||
</tr>
|
|
||||||
{foreach $discounts AS $key => $discount}
|
|
||||||
<tr {if $key %2}class="alt_row"{/if}>
|
|
||||||
<td align="center">{$discount['id_discount']}</td>
|
|
||||||
<td>{$discount['name']}</td>
|
|
||||||
<td>{$discount['type']}</td>
|
|
||||||
<td align="right">{$discount['value']}</td>
|
|
||||||
<td align="center">{$discount['quantity_for_user']}</td>
|
|
||||||
<td align="center"><img src="../img/admin/{if $discount['active']}enabled.gif{else}disabled.gif{/if}" alt="{l s='Status'}" title="{l s='Status'}" /></td>
|
|
||||||
<td align="center">
|
|
||||||
<a href="?tab=AdminDiscounts&id_discount={$discount['id_discount']}&adddiscount&token={getAdminToken tab='AdminDiscounts'}"><img src="../img/admin/edit.gif" /></a>
|
|
||||||
<a href="?tab=AdminDiscounts&id_discount={$discount['id_discount']}&deletediscount&token={getAdminToken tab='AdminDiscounts'}"><img src="../img/admin/delete.gif" /></a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
{else}
|
|
||||||
{$customer->firstname} {$customer->lastname} {l s='has no discount vouchers'}.
|
|
||||||
{/if}
|
|
||||||
<div class="clear"> </div>
|
|
||||||
|
|
||||||
<div style="float:left">
|
|
||||||
<h2>{l s='Carts'} ({count($carts)})</h2>
|
|
||||||
{if $carts AND count($carts)}
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
<tr>
|
<tr>
|
||||||
<th class="center">{l s='ID'}</th>
|
<th class="center">{l s='ID'}</th>
|
||||||
<th class="center">{l s='Date'}</th>
|
<th class="center">{l s='Name'}</th>
|
||||||
<th class="center">{l s='Total'}</th>
|
|
||||||
<th class="center">{l s='Carrier'}</th>
|
|
||||||
<th class="center">{l s='Actions'}</th>
|
<th class="center">{l s='Actions'}</th>
|
||||||
</tr>
|
</tr>
|
||||||
{foreach $carts AS $key => $cart}
|
{foreach $groups AS $key => $group}
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminCarts&id_cart={$cart['id_cart']}&viewcart&token={getAdminToken tab='AdminCarts'}'">
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminGroups&id_group={$group['id_group']}&viewgroup&token={getAdminToken tab='AdminGroups'}'">
|
||||||
<td class="center">{$cart['id_cart']}</td>
|
<td class="center">{$group['id_group']}</td>
|
||||||
<td>{$cart['date_add']}</td>
|
<td>{$group['name']}</td>
|
||||||
<td align="right">{$cart['total_price']}</td>
|
<td align="center"><a href="?tab=AdminGroups&id_group={$group['id_group']}&viewgroup&token={getAdminToken tab='AdminGroups'}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
<td>{$cart['name']}</td>
|
</tr>
|
||||||
<td align="center"><a href="index.php?tab=AdminCarts&id_cart={$cart['id_cart']}&viewcart&token={getAdminToken tab='AdminCarts'}"><img src="../img/admin/details.gif" /></a></td>
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
{/if}
|
||||||
|
<div class="clear"> </div>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>{l s='Orders'} ({count($orders)})</h2>
|
||||||
|
{if $orders AND count($orders)}
|
||||||
|
{assign var=count_ok value=count($orders_ok)}
|
||||||
|
{if $count_ok}
|
||||||
|
<div style="float:left;margin-right:20px">
|
||||||
|
<h3 style="color:green;font-weight:700">
|
||||||
|
{l s='Valid orders:'} {$count_ok} {l s='for'} {$total_ok}
|
||||||
|
</h3>
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table float">
|
||||||
|
<tr>
|
||||||
|
<th class="center">{l s='ID'}</th>
|
||||||
|
<th class="center">{l s='Date'}</th>
|
||||||
|
<th class="center">{l s='Products'}</th>
|
||||||
|
<th class="center">{l s='Total paid'}</th>
|
||||||
|
<th class="center">{l s='Payment'}</th>
|
||||||
|
<th class="center">{l s='State'}</th>
|
||||||
|
<th class="center">{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $orders_ok AS $key => $order}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
||||||
|
<td class="center">{$order['id_order']}</td>
|
||||||
|
<td>{$order['date_add']}</td>
|
||||||
|
<td align="right">{$order['nb_products']}</td>
|
||||||
|
<td align="right">{$order['total_paid_real']}</td>
|
||||||
|
<td>{$order['payment']}</td>
|
||||||
|
<td>{$order['order_state']}</td>
|
||||||
|
<td align="center"><a href="?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
{assign var=count_ko value=count($orders_ko)}
|
||||||
|
{if $count_ko}
|
||||||
|
<div style="float:left;margin-right:20px">
|
||||||
|
<h3 style="color:red;font-weight:700">{l s='Invalid orders:'} {$count_ko}</h3>
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table float">
|
||||||
|
<tr>
|
||||||
|
<th class="center">{l s='ID'}</th>
|
||||||
|
<th class="center">{l s='Date'}</th>
|
||||||
|
<th class="center">{l s='Products'}</th>
|
||||||
|
<th class="center">{l s='Total paid'}</th>
|
||||||
|
<th class="center">{l s='Payment'}</th>
|
||||||
|
<th class="center">{l s='State'}</th>
|
||||||
|
<th class="center">{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $orders_ko AS $key => $order}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
||||||
|
<td class="center">{$order['id_order']}</td>
|
||||||
|
<td>{$order['date_add']}</td>
|
||||||
|
<td align="right">{$order['nb_products']}</td>
|
||||||
|
<td align="right">{$order['total_paid_real']}</td>
|
||||||
|
<td>{$order['payment']}</td>
|
||||||
|
<td>{$order['order_state']}</td>
|
||||||
|
<td align="center"><a href="?tab=AdminOrders&id_order={$order['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="clear"> </div>
|
||||||
|
{/if}
|
||||||
|
{else}
|
||||||
|
{$customer->firstname} {$customer->lastname} {l s='has not placed any orders yet'}
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
{if $products AND count($products)}
|
||||||
|
<div class="clear"> </div>
|
||||||
|
<h2>{l s='Products'} ({count($products)})</h2>
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
|
<tr>
|
||||||
|
<th class="center">{l s='Date'}</th>
|
||||||
|
<th class="center">{l s='Name'}</th>
|
||||||
|
<th class="center">{l s='Quantity'}</th>
|
||||||
|
<th class="center">{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $products AS $key => $product}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminOrders&id_order={$product['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}'">
|
||||||
|
<td>{$product['date_add']}</td>
|
||||||
|
<td>{$product['product_name']}</td>
|
||||||
|
<td align="right">{$product['product_quantity']}</td>
|
||||||
|
<td align="center"><a href="?tab=AdminOrders&id_order={$product['id_order']}&vieworder&token={getAdminToken tab='AdminOrders'}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
{/if}
|
||||||
|
<div class="clear"> </div>
|
||||||
|
|
||||||
|
<h2>{l s='Addresses'} ({count($addresses)})</h2>
|
||||||
|
{if count($addresses)}
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
|
<tr>
|
||||||
|
<th>{l s='Company'}</th>
|
||||||
|
<th>{l s='Name'}</th>
|
||||||
|
<th>{l s='Address'}</th>
|
||||||
|
<th>{l s='Country'}</th>
|
||||||
|
<th>{l s='Phone number(s)'}</th>
|
||||||
|
<th>{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $addresses AS $key => $address}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if}>
|
||||||
|
<td>{if $address['company']}{$address['company']}{else}--{/if}</td>
|
||||||
|
<td>{$address['firstname']} {$address['lastname']}</td>
|
||||||
|
<td>{$address['address1']} {if $address['address2']}{$address['address2']}{/if} {$address['postcode']} {$address['city']}</td>
|
||||||
|
<td>{$address['country']}</td>
|
||||||
|
<td>
|
||||||
|
{if $address['phone']}
|
||||||
|
{$address['phone']}
|
||||||
|
{if $address['phone_mobile']}<br />{$address['phone_mobile']}{/if}
|
||||||
|
{else}
|
||||||
|
{if $address['phone_mobile']}<br />{$address['phone_mobile']}{else}--{/if}
|
||||||
|
{/if}
|
||||||
|
</td>
|
||||||
|
<td align="center">
|
||||||
|
<a href="?tab=AdminAddresses&id_address={$address['id_address']}&addaddress&token={getAdminToken tab='AdminAddresses'}"><img src="../img/admin/edit.gif" /></a>
|
||||||
|
<a href="?tab=AdminAddresses&id_address={$address['id_address']}&deleteaddress&token={getAdminToken tab='AdminAddresses'}"><img src="../img/admin/delete.gif" /></a>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
</table>
|
</table>
|
||||||
{else}
|
{else}
|
||||||
{l s='No cart available'}.
|
{$customer->firstname} {$customer->lastname} {l s='has not registered any addresses yet'}
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
|
||||||
|
<div class="clear"> </div>
|
||||||
{if count($interested)}
|
<h2>{l s='Discounts'} ({count($discounts)})</h2>
|
||||||
<div style="float:left;margin-left:20px">
|
{if count($discounts)}
|
||||||
<h2>{l s='Products'} ({count($interested)})</h2>
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
{foreach $interested as $key => $p}
|
<tr>
|
||||||
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '{$p['url']}'">
|
<th>{l s='ID'}</th>
|
||||||
<td>{$p['id']}</td>
|
<th>{l s='Code'}</th>
|
||||||
<td>{$p['name']}</td>
|
<th>{l s='Type'}</th>
|
||||||
<td align="center"><a href="{$p['url']}"><img src="../img/admin/details.gif" /></a></td>
|
<th>{l s='Value'}</th>
|
||||||
|
<th>{l s='Qty available'}</th>
|
||||||
|
<th>{l s='Status'}</th>
|
||||||
|
<th>{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $discounts AS $key => $discount}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if}>
|
||||||
|
<td align="center">{$discount['id_discount']}</td>
|
||||||
|
<td>{$discount['name']}</td>
|
||||||
|
<td>{$discount['type']}</td>
|
||||||
|
<td align="right">{$discount['value']}</td>
|
||||||
|
<td align="center">{$discount['quantity_for_user']}</td>
|
||||||
|
<td align="center"><img src="../img/admin/{if $discount['active']}enabled.gif{else}disabled.gif{/if}" alt="{l s='Status'}" title="{l s='Status'}" /></td>
|
||||||
|
<td align="center">
|
||||||
|
<a href="?tab=AdminDiscounts&id_discount={$discount['id_discount']}&adddiscount&token={getAdminToken tab='AdminDiscounts'}"><img src="../img/admin/edit.gif" /></a>
|
||||||
|
<a href="?tab=AdminDiscounts&id_discount={$discount['id_discount']}&deletediscount&token={getAdminToken tab='AdminDiscounts'}"><img src="../img/admin/delete.gif" /></a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
{else}
|
||||||
|
{$customer->firstname} {$customer->lastname} {l s='has no discount vouchers'}.
|
||||||
|
{/if}
|
||||||
|
<div class="clear"> </div>
|
||||||
|
|
||||||
|
<div style="float:left">
|
||||||
|
<h2>{l s='Carts'} ({count($carts)})</h2>
|
||||||
|
{if $carts AND count($carts)}
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
|
<tr>
|
||||||
|
<th class="center">{l s='ID'}</th>
|
||||||
|
<th class="center">{l s='Date'}</th>
|
||||||
|
<th class="center">{l s='Total'}</th>
|
||||||
|
<th class="center">{l s='Carrier'}</th>
|
||||||
|
<th class="center">{l s='Actions'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $carts AS $key => $cart}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '?tab=AdminCarts&id_cart={$cart['id_cart']}&viewcart&token={getAdminToken tab='AdminCarts'}'">
|
||||||
|
<td class="center">{$cart['id_cart']}</td>
|
||||||
|
<td>{$cart['date_add']}</td>
|
||||||
|
<td align="right">{$cart['total_price']}</td>
|
||||||
|
<td>{$cart['name']}</td>
|
||||||
|
<td align="center"><a href="index.php?tab=AdminCarts&id_cart={$cart['id_cart']}&viewcart&token={getAdminToken tab='AdminCarts'}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
{else}
|
||||||
|
{l s='No cart available'}.
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{if count($interested)}
|
||||||
|
<div style="float:left;margin-left:20px">
|
||||||
|
<h2>{l s='Products'} ({count($interested)})</h2>
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
|
{foreach $interested as $key => $p}
|
||||||
|
<tr {if $key %2}class="alt_row"{/if} style="cursor: pointer" onclick="document.location = '{$p['url']}'">
|
||||||
|
<td>{$p['id']}</td>
|
||||||
|
<td>{$p['name']}</td>
|
||||||
|
<td align="center"><a href="{$p['url']}"><img src="../img/admin/details.gif" /></a></td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
<div class="clear"> </div>
|
||||||
|
|
||||||
|
{* Last connections *}
|
||||||
|
{if count($connections)}
|
||||||
|
<h2>{l s='Last connections'}</h2>
|
||||||
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
|
<tr>
|
||||||
|
<th style="width: 200px">{l s='Date'}</th>
|
||||||
|
<th style="width: 100px">{l s='Pages viewed'}</th>
|
||||||
|
<th style="width: 100px">{l s='Total time'}</th>
|
||||||
|
<th style="width: 100px">{l s='Origin'}</th>
|
||||||
|
<th style="width: 100px">{l s='IP Address'}</th>
|
||||||
|
</tr>
|
||||||
|
{foreach $connections as $connection}
|
||||||
|
<tr>
|
||||||
|
<td>{$connection['date_add']}</td>
|
||||||
|
<td>{$connection['pages']}</td>
|
||||||
|
<td>{$connection['time']}</td>
|
||||||
|
<td>{$connection['http_referer']}</td>
|
||||||
|
<td>{$connection['ipaddress']}</td>
|
||||||
</tr>
|
</tr>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
</table>
|
</table>
|
||||||
</div>
|
<div class="clear"> </div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
<div class="clear"> </div>
|
{if count($referrers)}
|
||||||
|
<h2>{l s='Referrers'}</h2>
|
||||||
{* Last connections *}
|
<table cellspacing="0" cellpadding="0" class="table">
|
||||||
{if count($connections)}
|
|
||||||
<h2>{l s='Last connections'}</h2>
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
|
||||||
<tr>
|
|
||||||
<th style="width: 200px">{l s='Date'}</th>
|
|
||||||
<th style="width: 100px">{l s='Pages viewed'}</th>
|
|
||||||
<th style="width: 100px">{l s='Total time'}</th>
|
|
||||||
<th style="width: 100px">{l s='Origin'}</th>
|
|
||||||
<th style="width: 100px">{l s='IP Address'}</th>
|
|
||||||
</tr>
|
|
||||||
{foreach $connections as $connection}
|
|
||||||
<tr>
|
<tr>
|
||||||
<td>{$connection['date_add']}</td>
|
<th style="width: 200px">{l s='Date'}</th>
|
||||||
<td>{$connection['pages']}</td>
|
<th style="width: 200px">{l s='Name'}</th>
|
||||||
<td>{$connection['time']}</td>
|
{if $shop_is_feature_active}<th style="width: 200px">{l s='Shop'}</th>{/if}
|
||||||
<td>{$connection['http_referer']}</td>
|
|
||||||
<td>{$connection['ipaddress']}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
{/foreach}
|
{foreach $referrers as $referrer}
|
||||||
</table>
|
<tr>
|
||||||
<div class="clear"> </div>
|
<td>{$referrer['date_add']}</td>
|
||||||
{/if}
|
<td>{$referrer['name']}</td>
|
||||||
|
{if $shop_is_feature_active}<td>{$referrer['shop_name']}</td>{/if}
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</table>
|
||||||
|
<div class="clear"> </div>
|
||||||
|
{/if}
|
||||||
|
{/block}
|
||||||
|
|
||||||
{if count($referrers)}
|
|
||||||
<h2>{l s='Referrers'}</h2>
|
|
||||||
<table cellspacing="0" cellpadding="0" class="table">
|
|
||||||
<tr>
|
|
||||||
<th style="width: 200px">{l s='Date'}</th>
|
|
||||||
<th style="width: 200px">{l s='Name'}</th>
|
|
||||||
{if $shop_is_feature_active}<th style="width: 200px">{l s='Shop'}</th>{/if}
|
|
||||||
</tr>
|
|
||||||
{foreach $referrers as $referrer}
|
|
||||||
<tr>
|
|
||||||
<td>{$referrer['date_add']}</td>
|
|
||||||
<td>{$referrer['name']}</td>
|
|
||||||
{if $shop_is_feature_active}<td>{$referrer['shop_name']}</td>{/if}
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
</table>
|
|
||||||
<div class="clear"> </div>
|
|
||||||
{/if}
|
|
||||||
<a href="{$current}&token={$token}"><img src="../img/admin/arrow2.gif" /> {l s='Back to customer list'}</a><br />
|
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
{*
|
||||||
|
* 2007-2011 PrestaShop
|
||||||
|
*
|
||||||
|
* NOTICE OF LICENSE
|
||||||
|
*
|
||||||
|
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||||
|
* that is bundled with this package in the file LICENSE.txt.
|
||||||
|
* It is also available through the world-wide-web at this URL:
|
||||||
|
* http://opensource.org/licenses/afl-3.0.php
|
||||||
|
* If you did not receive a copy of the license and are unable to
|
||||||
|
* obtain it through the world-wide-web, please send an email
|
||||||
|
* to license@prestashop.com so we can send you a copy immediately.
|
||||||
|
*
|
||||||
|
* DISCLAIMER
|
||||||
|
*
|
||||||
|
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||||
|
* versions in the future. If you wish to customize PrestaShop for your
|
||||||
|
* needs please refer to http://www.prestashop.com for more information.
|
||||||
|
*
|
||||||
|
* @author PrestaShop SA <contact@prestashop.com>
|
||||||
|
* @copyright 2007-2011 PrestaShop SA
|
||||||
|
* @version Release: $Revision: 8971 $
|
||||||
|
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||||
|
* International Registered Trademark & Property of PrestaShop SA
|
||||||
|
*}
|
||||||
|
|
||||||
|
<div class="toolbar-placeholder">
|
||||||
|
<div class="toolbarBox {if $toolbar_fix}toolbarHead{/if}">
|
||||||
|
{if $show_toolbar}
|
||||||
|
{include file="toolbar.tpl" toolbar_btn=$toolbar_btn}
|
||||||
|
<div class="pageTitle">
|
||||||
|
<h3>
|
||||||
|
{block name=pageTitle}
|
||||||
|
<span id="current_obj" style="font-weight: normal;">{$title|default:' '}</span>
|
||||||
|
{/block}
|
||||||
|
</h3>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
<div class="leadin">{block name="leadin"}{/block}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{block name="override_tpl"}{/block}
|
||||||
@@ -73,6 +73,7 @@ class AdminControllerCore extends Controller
|
|||||||
|
|
||||||
public $tpl_form_vars = array();
|
public $tpl_form_vars = array();
|
||||||
public $tpl_list_vars = array();
|
public $tpl_list_vars = array();
|
||||||
|
public $tpl_view_vars = array();
|
||||||
|
|
||||||
public $fields_value = false;
|
public $fields_value = false;
|
||||||
|
|
||||||
@@ -289,6 +290,10 @@ class AdminControllerCore extends Controller
|
|||||||
array_pop($tabs);
|
array_pop($tabs);
|
||||||
$tabs[] = array('name' => sprintf($this->l('Add %s'), $this->table));
|
$tabs[] = array('name' => sprintf($this->l('Add %s'), $this->table));
|
||||||
break;
|
break;
|
||||||
|
case 'view':
|
||||||
|
array_pop($tabs);
|
||||||
|
$tabs[] = array('name' => sprintf($this->l('View %s'), $this->table));
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
// note : this should use a tpl file
|
// note : this should use a tpl file
|
||||||
foreach ($tabs AS $key => $item)
|
foreach ($tabs AS $key => $item)
|
||||||
@@ -1003,17 +1008,17 @@ class AdminControllerCore extends Controller
|
|||||||
|
|
||||||
// Template override
|
// Template override
|
||||||
$tpl = $this->tpl_folder.'content.tpl';
|
$tpl = $this->tpl_folder.'content.tpl';
|
||||||
$tpl_action = $this->tpl_folder.$this->display.'.tpl';
|
//$tpl_action = $this->tpl_folder.$this->display.'.tpl';
|
||||||
// Check if action template has been override
|
// Check if action template has been override
|
||||||
|
|
||||||
// new smarty : template_dir is an array.
|
// new smarty : template_dir is an array.
|
||||||
// @todo : add override path to the smarty config, and checking all array item
|
// @todo : add override path to the smarty config, and checking all array item
|
||||||
if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl_action))
|
/*if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl_action))
|
||||||
{
|
{
|
||||||
if (method_exists($this, $this->display.Tools::toCamelCase($this->className)))
|
if (method_exists($this, $this->display.Tools::toCamelCase($this->className)))
|
||||||
$this->{$this->display.Tools::toCamelCase($this->className)}();
|
$this->{$this->display.Tools::toCamelCase($this->className)}();
|
||||||
$this->context->smarty->assign('content', $this->context->smarty->fetch($tpl_action));
|
$this->context->smarty->assign('content', $this->context->smarty->fetch($tpl_action));
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// Check if content template has been override
|
// Check if content template has been override
|
||||||
if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl))
|
if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl))
|
||||||
@@ -1332,6 +1337,17 @@ class AdminControllerCore extends Controller
|
|||||||
*/
|
*/
|
||||||
public function initView()
|
public function initView()
|
||||||
{
|
{
|
||||||
|
if (empty($this->toolbar_title))
|
||||||
|
$this->initToolbarTitle();
|
||||||
|
|
||||||
|
$helper = new HelperView($this);
|
||||||
|
$helper->override_folder = $this->tpl_folder;
|
||||||
|
$helper->tpl_vars = $this->tpl_view_vars;
|
||||||
|
$this->setHelperDisplay($helper);
|
||||||
|
$view = $helper->generateView();
|
||||||
|
$this->toolbar_fix = false;
|
||||||
|
|
||||||
|
return $view;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1672,7 +1688,10 @@ class AdminControllerCore extends Controller
|
|||||||
if (isset($_GET['view'.$this->table]))
|
if (isset($_GET['view'.$this->table]))
|
||||||
{
|
{
|
||||||
if ($this->tabAccess['view'] === '1')
|
if ($this->tabAccess['view'] === '1')
|
||||||
|
{
|
||||||
$this->display = 'view';
|
$this->display = 'view';
|
||||||
|
$this->action = 'view';
|
||||||
|
}
|
||||||
else
|
else
|
||||||
$this->_errors[] = Tools::displayError('You do not have permission to view here.');
|
$this->_errors[] = Tools::displayError('You do not have permission to view here.');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ class HelperCore
|
|||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->context = Context::getContext();
|
$this->context = Context::getContext();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*public function setTpl($tpl)
|
/*public function setTpl($tpl)
|
||||||
|
|||||||
@@ -0,0 +1,62 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* 2007-2011 PrestaShop
|
||||||
|
*
|
||||||
|
* NOTICE OF LICENSE
|
||||||
|
*
|
||||||
|
* This source file is subject to the Open Software License (OSL 3.0)
|
||||||
|
* that is bundled with this package in the file LICENSE.txt.
|
||||||
|
* It is also available through the world-wide-web at this URL:
|
||||||
|
* http://opensource.org/licenses/osl-3.0.php
|
||||||
|
* If you did not receive a copy of the license and are unable to
|
||||||
|
* obtain it through the world-wide-web, please send an email
|
||||||
|
* to license@prestashop.com so we can send you a copy immediately.
|
||||||
|
*
|
||||||
|
* DISCLAIMER
|
||||||
|
*
|
||||||
|
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||||
|
* versions in the future. If you wish to customize PrestaShop for your
|
||||||
|
* needs please refer to http://www.prestashop.com for more information.
|
||||||
|
*
|
||||||
|
* @author PrestaShop SA <contact@prestashop.com>
|
||||||
|
* @copyright 2007-2011 PrestaShop SA
|
||||||
|
* @version Release: $Revision: 9194 $
|
||||||
|
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||||
|
* International Registered Trademark & Property of PrestaShop SA
|
||||||
|
*/
|
||||||
|
|
||||||
|
class HelperViewCore extends Helper
|
||||||
|
{
|
||||||
|
public $id;
|
||||||
|
public $toolbar = true;
|
||||||
|
public $table;
|
||||||
|
public $token;
|
||||||
|
|
||||||
|
/** @var if not null, a title will be added on that list */
|
||||||
|
public $title = null;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->base_folder = 'helper/view/';
|
||||||
|
$this->base_tpl = 'view.tpl';
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function generateView()
|
||||||
|
{
|
||||||
|
$this->tpl = $this->createTemplate($this->base_tpl);
|
||||||
|
|
||||||
|
$this->tpl->assign(array(
|
||||||
|
'title' => $this->title,
|
||||||
|
'current' => $this->currentIndex,
|
||||||
|
'title' => $this->title,
|
||||||
|
'token' => $this->token,
|
||||||
|
'table' => $this->table,
|
||||||
|
'show_toolbar' => $this->show_toolbar,
|
||||||
|
'toolbar_fix' => $this->toolbar_fix,
|
||||||
|
'toolbar_btn' => $this->toolbar_btn
|
||||||
|
));
|
||||||
|
|
||||||
|
return parent::generate();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -34,16 +34,8 @@ class AdminCustomersControllerCore extends AdminController
|
|||||||
$this->lang = false;
|
$this->lang = false;
|
||||||
$this->deleted = true;
|
$this->deleted = true;
|
||||||
|
|
||||||
$this->addRowAction('edit');
|
|
||||||
$this->addRowAction('view');
|
|
||||||
$this->addRowAction('delete');
|
|
||||||
|
|
||||||
$this->requiredDatabase = true;
|
|
||||||
|
|
||||||
$this->context = Context::getContext();
|
$this->context = Context::getContext();
|
||||||
|
|
||||||
$this->bulk_actions = array('delete' => array('text' => $this->l('Delete selected'), 'confirm' => $this->l('Delete selected items?')));
|
|
||||||
|
|
||||||
$this->default_form_language = $this->context->language->id;
|
$this->default_form_language = $this->context->language->id;
|
||||||
|
|
||||||
$genders_icon = array('default' => 'unknown.gif');
|
$genders_icon = array('default' => 'unknown.gif');
|
||||||
@@ -152,6 +144,12 @@ class AdminCustomersControllerCore extends AdminController
|
|||||||
|
|
||||||
public function initList()
|
public function initList()
|
||||||
{
|
{
|
||||||
|
$this->addRowAction('edit');
|
||||||
|
$this->addRowAction('view');
|
||||||
|
$this->addRowAction('delete');
|
||||||
|
|
||||||
|
$this->bulk_actions = array('delete' => array('text' => $this->l('Delete selected'), 'confirm' => $this->l('Delete selected items?')));
|
||||||
|
|
||||||
$this->_select = '(YEAR(CURRENT_DATE)-YEAR(`birthday`)) - (RIGHT(CURRENT_DATE, 5) < RIGHT(birthday, 5)) AS `age`, (
|
$this->_select = '(YEAR(CURRENT_DATE)-YEAR(`birthday`)) - (RIGHT(CURRENT_DATE, 5) < RIGHT(birthday, 5)) AS `age`, (
|
||||||
SELECT c.date_add FROM '._DB_PREFIX_.'guest g
|
SELECT c.date_add FROM '._DB_PREFIX_.'guest g
|
||||||
LEFT JOIN '._DB_PREFIX_.'connections c ON c.id_guest = g.id_guest
|
LEFT JOIN '._DB_PREFIX_.'connections c ON c.id_guest = g.id_guest
|
||||||
@@ -366,13 +364,6 @@ class AdminCustomersControllerCore extends AdminController
|
|||||||
return parent::initForm();
|
return parent::initForm();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function initContent()
|
|
||||||
{
|
|
||||||
if ($this->display == 'view')
|
|
||||||
return $this->initView();
|
|
||||||
parent::initContent();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function initView()
|
public function initView()
|
||||||
{
|
{
|
||||||
if (!($customer = $this->loadObject()))
|
if (!($customer = $this->loadObject()))
|
||||||
@@ -492,11 +483,7 @@ class AdminCustomersControllerCore extends AdminController
|
|||||||
for ($i = 0; $i < $total_referrers; $i++)
|
for ($i = 0; $i < $total_referrers; $i++)
|
||||||
$referrers[$i]['date_add'] = Tools::displayDate($referrers[$i]['date_add'], $this->default_form_language, true);
|
$referrers[$i]['date_add'] = Tools::displayDate($referrers[$i]['date_add'], $this->default_form_language, true);
|
||||||
|
|
||||||
$this->context->smarty->assign(array(
|
$this->tpl_view_vars = array(
|
||||||
'table' => $this->table,
|
|
||||||
'current' => self::$currentIndex,
|
|
||||||
'token' => $this->token,
|
|
||||||
'content' => $this->content,
|
|
||||||
'customer' => $customer,
|
'customer' => $customer,
|
||||||
'gender_image' => $gender_image,
|
'gender_image' => $gender_image,
|
||||||
|
|
||||||
@@ -550,7 +537,10 @@ class AdminCustomersControllerCore extends AdminController
|
|||||||
|
|
||||||
// Referrers
|
// Referrers
|
||||||
'referrers' => $referrers,
|
'referrers' => $referrers,
|
||||||
));
|
'show_toolbar' => true
|
||||||
|
);
|
||||||
|
|
||||||
|
return parent::initView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function postProcess()
|
public function postProcess()
|
||||||
|
|||||||
Reference in New Issue
Block a user