Ignore:
Timestamp:
Dec 15, 2016, 10:55:10 AM (3 years ago)
Author:
Juanma
Message:

wip on lliurex_apps.xml

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-store/trunk/fuentes/lliurex-appstore.install/usr/bin/plugins/searchManager.py

    r3060 r3078  
    44        def __init__(self):
    55                self.locale=locale.getlocale()[0]
    6                 self.dbg=0
     6                self.dbg=1
    77                self.store=''
    88                self.pluginInfo=['search','*','list','*','list_sections','*']
     
    4444        def _search_app(self,tokens):
    4545                self._debug("Searching app "+str(tokens))
    46                 self.applist=[]
     46                applist=[]
    4747                app=None
    4848                if len(tokens)==1:
     
    5050
    5151                if app:
    52                         self.applist.append(app)
     52                        applist.append(app)
    5353                        self._debug("App direct match found: "+app.get_id())
    5454                else:
    55                         applist=self._get_apps_by_match(tokens)
    56                         for app in applist:
    57                                 self.applist.append(app)
    58                 return(self.applist)
     55                        for app in self._get_apps_by_match(tokens):
     56                                applist.append(app)
     57                self.applist=applist
     58                return(applist)
    5959
    6060        def _list_sections(self):
     
    113113        def _get_apps_by_match(self,tokens):
    114114                        #Add items witch match >= self.precision
     115                        applist=[]
    115116                        apps_in_store=self.store.get_apps()
    116                         auxDict={}
    117                         count_apps=len(apps_in_store)
    118                         self.progress=0
    119                         inc=100.0/count_apps
    120                         applist=[]
    121                         for app in apps_in_store:
    122                                 self.progress=self.progress+inc
    123                                 if app not in self.applist:
    124                                         for token in tokens:
    125                                                 score=app.search_matches(token)
    126                                                 if score>=self.precision:
    127                                                         if score in auxDict:
    128                                                                 auxDict[score].append(app)
    129                                                         else:
    130                                                                 auxDict[score]=[app]
    131                         for match in sorted(auxDict):
    132                                 for app in auxDict[match]:
    133                                         self._debug("Adding app "+app.get_id() + " with score: "+str(match))
    134                                         self.applist.insert(0,app)
     117                        if apps_in_store:
     118                                auxDict={}
     119                                count_apps=len(apps_in_store)
     120                                self.progress=0
     121                                inc=100.0/count_apps
     122                                for app in apps_in_store:
     123                                        self.progress=self.progress+inc
     124                                        if app not in self.applist:
     125                                                for token in tokens:
     126                                                        score=app.search_matches(token)
     127                                                        if score>=self.precision:
     128                                                                if score in auxDict:
     129                                                                        auxDict[score].append(app)
     130                                                                else:
     131                                                                        auxDict[score]=[app]
     132                                for match in sorted(auxDict):
     133                                        for app in auxDict[match]:
     134                                                self._debug("Adding app "+app.get_id() + " with score: "+str(match))
     135                                                applist.insert(0,app)
    135136                        return(applist)
Note: See TracChangeset for help on using the changeset viewer.