Ejemplo n.º 1
0
Archivo: views.py Proyecto: stef/le-n-x
def getOverview():
    stats=[]
    stats.append({'title': 'Total documents',
                  'value': Docs.count(),
                  'text': "%s Documents" % Docs.count()})
    stats.append({'title':
                  'Total Pippies',
                  'value': Pippies.count(),
                  'text': "with %s Pippies" % Pippies.count()})
    stats.append({'title': 'Locations',
                  'value': Frags.count(),
                  'text': "in %s Locations" % Frags.count()})
    return stats
Ejemplo n.º 2
0
def getOverview():
    stats = []
    stats.append({
        'title': 'Total documents',
        'value': Docs.count(),
        'text': "%s Documents" % Docs.count()
    })
    stats.append({
        'title': 'Total Pippies',
        'value': Pippies.count(),
        'text': "with %s Pippies" % Pippies.count()
    })
    stats.append({
        'title': 'Locations',
        'value': Frags.count(),
        'text': "in %s Locations" % Frags.count()
    })
    return stats
Ejemplo n.º 3
0
 def __init__(self, oid=None, frag=None):
     if oid:
         # get by mongo oid
         frag=Frags.find_one({"_id": oid})
     if(frag):
         self.__dict__=frag
     else:
         self.__dict__={'pos':frag['p'],
                        'txt':frag['txt'],
                        'l':frag['l'],
                        'pippi':frag['pippi']._id,
                        'doc':frag['doc']._id}
         self.save()
Ejemplo n.º 4
0
def frags(request):
    filtr={}
    template_vars={}
    docfilter=None
    cutoff=None
    pippifilter=None
    try:
        docfilter = ObjectId(cgi.escape(request.GET.get('doc','')))
    except:
        pass
    if docfilter:
        filtr['doc']=docfilter
    try:
        pippifilter = ObjectId(cgi.escape(request.GET.get('pippi','')))
    except:
        pass
    if pippifilter:
        filtr['pippi']=pippifilter
    else:
        try:
            cutoff = int(cgi.escape(request.GET.get('cutoff','7')))
        except:
            pass
    if cutoff: filtr['l']={ '$gte': cutoff }
    orderBy = 'l'
    orderDesc = True
    template_vars=pager(request,Frags.find(filtr),orderBy,orderDesc)
    prevDoc=None
    template_vars['frags']=[]
    for frag in template_vars['data']:
        p=Pippi('',oid=frag['pippi'])
        d=Doc(oid=frag['doc'])
        if pippifilter:
            frag['txt']=diffFrag(prevDoc,frag['txt'])
            prevDoc=frag['txt']
        template_vars['frags'].append({'_id': frag['_id'],
                                       'pos': frag['pos'],
                                       'txt': " ".join(frag['txt']),
                                       'len': frag['l'],
                                       'score': sum([d.tfidf.get(t,0) for t in p.pippi]),
                                       'pippi': p,
                                       'doc': d,
                                       })

    template_vars['pippi']=pippifilter
    template_vars['doc']=docfilter
    if docfilter: template_vars['docTitle']=Docs.find_one({'_id': docfilter},['docid'])['docid']
    if pippifilter: template_vars['pippiFilter']=1 #" ".join(Pippies.find_one({'_id': pippifilter},['pippi'])['pippi'])
    return render_to_response('frags.html', template_vars, context_instance=RequestContext(request))
Ejemplo n.º 5
0
 def save(self,d1,d2,pkt):
     # todo new code to directly addtoset mongo-style
     if not pkt: return
     pippi=Pippi(pkt['pippi'])
     Docs.update({'_id': d1._id},
                 { '$addToSet' : { 'pippies' : pippi._id } })
     Docs.update({'_id': d2._id},
                 { '$addToSet' : { 'pippies' : pippi._id } })
     Pippies.update({'_id' : pippi._id},
                    {'$addToSet': { 'docs' : { '$each' : [d for d in [d1._id, d2._id]]}},
                     '$inc' : { 'docslen' : 2 }})
     [Frags.save({'pos': p['pos'], 'txt': p['txt'], 'l': pkt['l'], 'doc': d, 'pippi': pippi._id})
                 for (d,p) in
                 [(d1._id, p) for p in pkt['d1ps']]+[(d2._id, p) for p in pkt['d2ps']]]
     return pkt
Ejemplo n.º 6
0
 def __init__(self, oid=None, frag=None):
     if oid:
         # get by mongo oid
         frag = Frags.find_one({"_id": oid})
     if (frag):
         self.__dict__ = frag
     else:
         self.__dict__ = {
             'pos': frag['p'],
             'txt': frag['txt'],
             'l': frag['l'],
             'pippi': frag['pippi']._id,
             'doc': frag['doc']._id
         }
         self.save()
Ejemplo n.º 7
0
 def getFrags(self, cutoff=7):
     return Frags.find({'l': { '$gte': int(cutoff)},
                        'doc': self._id,
                        }).sort([('l', pymongo.DESCENDING)])
Ejemplo n.º 8
0
def frags(request):
    filtr = {}
    template_vars = {}
    docfilter = None
    cutoff = None
    pippifilter = None
    try:
        docfilter = ObjectId(cgi.escape(request.GET.get('doc', '')))
    except:
        pass
    if docfilter:
        filtr['doc'] = docfilter
    try:
        pippifilter = ObjectId(cgi.escape(request.GET.get('pippi', '')))
    except:
        pass
    if pippifilter:
        filtr['pippi'] = pippifilter
    else:
        try:
            cutoff = int(cgi.escape(request.GET.get('cutoff', '7')))
        except:
            pass
    if cutoff: filtr['l'] = {'$gte': cutoff}
    orderBy = 'l'
    orderDesc = True
    template_vars = pager(request, Frags.find(filtr), orderBy, orderDesc)
    prevDoc = None
    template_vars['frags'] = []
    for frag in template_vars['data']:
        p = Pippi('', oid=frag['pippi'])
        d = Doc(oid=frag['doc'])
        if pippifilter:
            frag['txt'] = diffFrag(prevDoc, frag['txt'])
            prevDoc = frag['txt']
        template_vars['frags'].append({
            '_id':
            frag['_id'],
            'pos':
            frag['pos'],
            'txt':
            " ".join(frag['txt']),
            'len':
            frag['l'],
            'score':
            sum([d.tfidf.get(t, 0) for t in p.pippi]),
            'pippi':
            p,
            'doc':
            d,
        })

    template_vars['pippi'] = pippifilter
    template_vars['doc'] = docfilter
    if docfilter:
        template_vars['docTitle'] = Docs.find_one({'_id': docfilter},
                                                  ['docid'])['docid']
    if pippifilter:
        template_vars[
            'pippiFilter'] = 1  #" ".join(Pippies.find_one({'_id': pippifilter},['pippi'])['pippi'])
    return render_to_response('frags.html',
                              template_vars,
                              context_instance=RequestContext(request))
Ejemplo n.º 9
0
 def save(self):
     self.__dict__['_id']=Frags.save(self.__dict__)
Ejemplo n.º 10
0
 def getFrags(self, cutoff=7):
     return Frags.find({'l': { '$gte': int(cutoff)},
                        'doc': self._id,
                        }).sort([('l', pymongo.DESCENDING)])
Ejemplo n.º 11
0
 def save(self):
     self.__dict__['_id'] = Frags.save(self.__dict__)