Forums / General / How to remove from search result duplicated entries?

How to remove from search result duplicated entries?

Author Message

Łukasz Serwatka

Tuesday 07 December 2004 1:25:21 am

Hi,

I`m looking for content

{let SearchType=fetch( content, search, 
               hash( text, $view_parameters.lang,
               class_attribute_id, 230 ) )}

{section loop=$SearchType['SearchResult']}
         {attribute_view_gui 
attribute=$:item.object.data_map.attr_name} <br />
    {/section}

The result is:

AAA
BBB
AAA
CCC
AAA
BBB

How to remove duplicated entries? Something like DISTINCT in SQL language.

AAA
BBB
CCC

I try with unique() funtion, but the result is strange. It displays only first entry.

AAA

{section loop=$SearchType['SearchResult']|unique}
    .
    .
    .
{/section}

I`ve idea to create one dimension array with strings form search results and use unique() function on it.

Probably it will not work at all

{ array( }
    { section loop=$SearchType['SearchResult'] }
        '{ attribute_view_gui attribute=$:item.object.data_map.attr_name }'
        
        {delimiter}
        ,
        {/delimiter}

    {/section}
{ ) }

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Silke Fox

Tuesday 07 December 2004 3:16:36 am

Hi Luke,

what do you want to do? Show all possible values of the selection attribute?

If yes, you can do something like this:

{let result=fetch('content','class_attribute',hash('attribute_id',230))}

If no, please tell us more...

Łukasz Serwatka

Tuesday 07 December 2004 3:28:38 am

Hi,

Show all possible values of the selection attribute?

I need to view "type" (attribute value) only for creted objects where lang=value

The class have attributes

1. lang - string
2. type - ezselection (no multiple)

So i looking for objects where attribute "lang" have value "english" and next i need to view "type" of this objects

1. object Lang=english Type=A
2. object Lang=english Type=A
3. object Lang=english Type=B
4. object Lang=english Type=A

Result of this for lang=english

{let SearchType=fetch( content, search, 
               hash( text, $view_parameters.lang,
               class_attribute_id, 230 ) )}

{section loop=$SearchType['SearchResult']}
         {attribute_view_gui 
attribute=$:item.object.data_map.attr_name} <br />
    {/section}

is

A
A
B
A

I need to view unique values

A
B

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Silke Fox

Tuesday 07 December 2004 5:32:45 am

Okay, I think you're on the right way. Use "append" to build an array with the attribute values and then "unique".

Try something like this (not sure if it will work exactly like this):

{let attrArray=array()}
{section var=Attributes loop=$SearchType['SearchResult']}
{set attrArray=$attrArray|append($Attributes.item.object.data_map.attr_name.content)}
{/section}
{$attrArray|count}
{set attrArray=$attrArray|unique}
{$attrArray|count}
{/let}

Good luck.
silke

eZ debug

Timing: Jan 18 2025 18:22:28
Script start
Timing: Jan 18 2025 18:22:28
Module start 'content'
Timing: Jan 18 2025 18:22:29
Module end 'content'
Timing: Jan 18 2025 18:22:29
Script end

Main resources:

Total runtime0.8296 sec
Peak memory usage4,096.0000 KB
Database Queries197

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0073 589.7500180.8203
Module start 'content' 0.00730.6738 770.5703572.9297
Module end 'content' 0.68110.1485 1,343.5000336.7500
Script end 0.8296  1,680.2500 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00470.5649210.0002
Check MTime0.00180.2198210.0001
Mysql Total
Database connection0.00090.102710.0009
Mysqli_queries0.728387.78261970.0037
Looping result0.00210.25481950.0000
Template Total0.794095.720.3970
Template load0.00230.275120.0011
Template processing0.791795.430720.3959
Template load and register function0.00010.017110.0001
states
state_id_array0.00080.099210.0008
state_identifier_array0.00100.120320.0005
Override
Cache load0.00200.2434590.0000
Sytem overhead
Fetch class attribute can translate value0.00180.217830.0006
Fetch class attribute name0.00160.190850.0003
XML
Image XML parsing0.00120.146830.0004
class_abstraction
Instantiating content class attribute0.00000.001460.0000
General
dbfile0.00450.5479290.0002
String conversion0.00000.000630.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
4content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
16content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
7content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
7content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 38
 Number of unique templates used: 7

Time used to render debug report: 0.0001 secs