def concordance(environ, start_response): db, dbname, path_components, q = wsgi_response(environ, start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['format'] == "json": hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) start, end, n = f.link.page_interval(q['results_per_page'], hits, q["start"], q["end"]) formatted_results = [] for i in hits[start - 1:end]: text = fetch_concordance(i, path, config.concordance_length) full_metadata = {} for metadata in config.metadata: full_metadata[metadata] = i[metadata] result = { "citation": f.cite.make_abs_doc_cite_mobile(db, i), "shrtcit": f.cite.make_abs_doc_shrtcit_mobile(db, i), "text": text, "hit_count": len(hits), "philo_id": i.philo_id, "start": start, "offsets": i.bytes } formatted_results.append(result) return json.dumps(formatted_results) if q['q'] == '': return bibliography(f, path, db, dbname, q, environ) else: hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) return render_concordance(hits, db, dbname, q, path, config)
def collocation(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) ## the default should be an error message hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_collocation(hits, db, dbname, q, path, config)
def kwic(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_template(results=hits,db=db,dbname=dbname,q=q,fetch_kwic=fetch_kwic,f=f, path=path, results_per_page=q['results_per_page'], template_name='kwic.mako')
def collocation(environ, start_response): db, dbname, path_components, q = wsgi_response(environ, start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['q'] == '': return bibliography(f, path, db, dbname, q, environ) ## the default should be an error message hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) return render_collocation(hits, db, dbname, q, path, config)
def relevance(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: results = retrieve_hits(q, db) return render_template(results=results,db=db,dbname=dbname,q=q,fetch_relevance=fetch_relevance,f=f,format=format, path=path, results_per_page=q['results_per_page'], template_name='relevance.mako')
def concordance(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_template(results=hits,db=db,dbname=dbname,q=q,fetch_concordance=fetch_concordance,f=f, path=path, results_per_page=q['results_per_page'], template_name="concordance.mako")
def concordance_from_collocation(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_template(results=hits,db=db,dbname=dbname,q=q,fetch_colloc_concordance=fetch_colloc_concordance, fetch_concordance=fetch_concordance,f=f,path=path, results_per_page=q['results_per_page'], template_name="concordance_from_collocation.mako")
def time_series(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: q = handle_dates(q, db) hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_time_series(hits, db, dbname, q, path, config)
def theme_rheme(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) new_hits, full_report = adjust_results(hits, path, q) return render_template(results=new_hits,full_report=full_report,db=db,dbname=dbname,q=q,f=f,path=path, results_per_page=q['results_per_page'], template_name="theme_rheme.mako")
def collocation(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) ## the default should be an error message hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) all_colloc, left_colloc, right_colloc = fetch_collocation(hits, path, q, db) hit_len = len(hits) return render_template(all_colloc=all_colloc, left_colloc=left_colloc, right_colloc=right_colloc, db=db,dbname=dbname,q=q,link=link_to_concordance,f=f,path=path, results_per_page=q['results_per_page'],hit_len=hit_len, order=sort_to_display,dumps=json.dumps,template_name='collocation.mako')
def kwic(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['format'] == "json": hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) start, end, n = f.link.page_interval(q['results_per_page'], hits, q["start"], q["end"]) kwic_results = fetch_kwic(hits, path, q, f.link.byte_query, db, start-1, end, length=250) formatted_results = [{"citation": i[0], "text": i[1], "philo_id": i[2], "start":start, "hit_count": len(hits)} for i in kwic_results] return json.dumps(formatted_results) if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_kwic(hits, db, dbname, q, path, config)
def theme_rheme(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f, path, db, dbname, q, environ) else: hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) new_hits, full_report = adjust_results(hits, path, q) return render_template(results=new_hits, full_report=full_report, db=db, dbname=dbname, q=q, f=f, path=path, results_per_page=q['results_per_page'], template_name="theme_rheme.mako")
def collocation(start_response, environ): db, dbname, path_components, q = wsgi_response(start_response, environ) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f, path, db, dbname, q, environ) ## the default should be an error message else: hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) return render_template(results=hits, db=db, dbname=dbname, q=q, fetch_collocation=fetch_collocation, link=link_to_concordance, f=f, path=path, results_per_page=q['results_per_page'], template_name='collocation.mako')
def concordance_from_collocation(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) colloc_results = fetch_colloc_concordance(hits, path, q, db, config) biblio_criteria = [] for k,v in q["metadata"].iteritems(): if v: if k in config.metadata_aliases: k = config.metadata_aliases[k] biblio_criteria.append('<span class="biblio_criteria">%s: <b>%s</b></span>' % (k.title(), v.decode('utf-8', 'ignore'), )) biblio_criteria = ' '.join(biblio_criteria) concatenate_files(path, "concordance_from_collocation", debug=db.locals["debug"]) return render_template(results=colloc_results,db=db,dbname=dbname,q=q,colloc_concordance=colloc_concordance, f=f,path=path, results_per_page=q['results_per_page'], config=config,report="concordance_from_collocation", biblio_criteria=biblio_criteria, template_name="concordance_from_collocation.mako", ressources=f.concatenate.report_files)
def concordance(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['format'] == "json": hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) start, end, n = f.link.page_interval(q['results_per_page'], hits, q["start"], q["end"]) formatted_results = [] for i in hits[start-1:end]: text = fetch_concordance(i, path, config.concordance_length) full_metadata = {} for metadata in config.metadata: full_metadata[metadata] = i[metadata] result = {"citation": f.cite.make_abs_doc_cite_mobile(db,i), "shrtcit": f.cite.make_abs_doc_shrtcit_mobile(db,i), "text": text, "hit_count": len(hits), "philo_id": i.philo_id, "start":start, "offsets": i.bytes} formatted_results.append(result) return json.dumps(formatted_results) if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_concordance(hits, db, dbname, q, path, config)
def concordance_from_collocation(environ, start_response): db, dbname, path_components, q = wsgi_response(environ, start_response) path = os.getcwd().replace('functions/', '') config = f.WebConfig() if q['q'] == '': return bibliography(f, path, db, dbname, q, environ) else: hits = db.query(q["q"], q["method"], q["arg"], **q["metadata"]) colloc_results = fetch_colloc_concordance(hits, path, q, db, config) biblio_criteria = [] for k, v in q["metadata"].iteritems(): if v: if k in config.metadata_aliases: k = config.metadata_aliases[k] biblio_criteria.append( '<span class="biblio_criteria">%s: <b>%s</b></span>' % ( k.title(), v.decode('utf-8', 'ignore'), )) biblio_criteria = ' '.join(biblio_criteria) concatenate_files(path, "concordance_from_collocation", debug=db.locals["debug"]) return render_template( results=colloc_results, db=db, dbname=dbname, q=q, colloc_concordance=colloc_concordance, f=f, path=path, results_per_page=q['results_per_page'], config=config, report="concordance_from_collocation", biblio_criteria=biblio_criteria, template_name="concordance_from_collocation.mako", ressources=f.concatenate.report_files)
def collocation(environ,start_response): db, dbname, path_components, q = wsgi_response(environ,start_response) path = os.getcwd().replace('functions/', '') if q['q'] == '': return bibliography(f,path, db, dbname,q,environ) ## the default should be an error message else: hits = db.query(q["q"],q["method"],q["arg"],**q["metadata"]) return render_template(results=hits,db=db,dbname=dbname,q=q,fetch_collocation=fetch_collocation,link=link_to_concordance, f=f,path=path, results_per_page=q['results_per_page'], template_name='collocation.mako')