0 value filtering issue at admin page
This is has been fixed in PrestaShop 1.6x
If you you aneter an issue related to 0 value filtering at PrestaShop back offcei admin list page, please read here to see how to fix this. This issue happens when the colun of list is a list of vlaues, such as status, type, category and so on. In this case, usually the filtering input at list header is a drop down list.
Value empty will be used represent for all record - no filtering
If you use value "0" as one of the vlaue in the column and use "0" to filtering records with "0", then the issue will appears.
How to fix this prodblem.
File:
/YourStoreAdminFolder/themes/default/template/helpers/list/list_header.tpl
Look for following section,.
{elseif $params.type == 'select'}
{if isset($params.filter_key)}
<select onchange="$('#submitFilterButton{$list_id}').focus();$('#submitFilterButton{$list_id}').click();" name="{$list_id}Filter_{$params.filter_key}" {if isset($params.width)} style="width:{$params.width}px"{/if}>
<option value="" {if $params.value == ''} selected="selected" {/if}>--</option>
{if isset($params.list) && is_array($params.list)}
{foreach $params.list AS $option_value => $option_display}
<option value="{$option_value}" {if $option_display == $params.value || $option_value == $params.value } selected="selected"{/if}>{$option_display}</option>
{/foreach}
{/if}
</select>
{/if}
{else}
Replace the line highlighted by red with line in bkue
<option value="{$option_value}" {if $option_display == $params.value || ($option_value == $params.value && strlen($option_value) == strlen($params.value)) } selected="selected"{/if}>{$option_display}</option>
Note:
Please make a back of original file before you make any changes.