Ejemplo n.º 1
0
 def __init__(self, dbconn=None, colls=None, **kwargs):
     if not dbconn:
         dbconn = connect.init_connection(**kwargs)
     self.dbconn = dbconn
     self.gplus_keys = gplus.get_keys()
     self.twitter_keys = twitter.read_keyfile()
     self.reload_views(colls)
Ejemplo n.º 2
0
def get_collections(templateDir='_templates'):
    gplusClientID = gplus.get_keys()['client_ID'] # most templates need this
    templateEnv = view.get_template_env(templateDir)
    view.report_error.bind_template(templateEnv, 'error.html') # error page

    # access Papers using our object ID
    papers = PaperCollection('paper', core.Paper, templateEnv, templateDir,
                             gplusClientID=gplusClientID)
    # using arxivID
    arxivPapers = ArxivCollection('paper', core.ArxivPaperData, templateEnv,
                                   templateDir, gplusClientID=gplusClientID,
                             collectionArgs=dict(uri='/arxiv'))
    # using shortDOI
    doiPapers = ParentCollection('paper', core.DoiPaperData, templateEnv,
                                 templateDir, gplusClientID=gplusClientID,
                          collectionArgs=dict(uri='/shortDOI'))
    # using pubmedID
    pubmedPapers = PubmedCollection('paper', core.PubmedPaperData,
                                    templateEnv, templateDir,
                                    gplusClientID=gplusClientID,
                             collectionArgs=dict(uri='/pubmed'))

    recs = ArrayDocCollection('rec', core.Recommendation,
                              templateEnv, templateDir,
                              gplusClientID=gplusClientID)
    papers.recs = recs # bind as subcollection

    likes = InterestCollection('like', core.PaperInterest, templateEnv,
                               templateDir, gplusClientID=gplusClientID)
    papers.likes = likes # bind as subcollection

    people = PersonCollection('person', core.Person, templateEnv, templateDir,
                              gplusClientID=gplusClientID)
    readingList = ReadingList('reading', core.Paper, templateEnv, templateDir,
                              gplusClientID=gplusClientID)
    people.reading = readingList
    topics = rest.Collection('topic', core.SIG, templateEnv, templateDir,
                             gplusClientID=gplusClientID)

    # load homepage template
    homePage = view.TemplateView(templateEnv.get_template('index.html'))

    # what collections to bind on the server root
    return dict(papers=papers,
                arxiv=arxivPapers,
                shortDOI=doiPapers,
                pubmed=pubmedPapers,
                people=people,
                topics=topics,
                index=homePage)
Ejemplo n.º 3
0
 def __init__(self, dbconn=None, colls=None, **kwargs):
     if not dbconn:
         dbconn = connect.init_connection(**kwargs)
     self.dbconn = dbconn
     self.gplus_keys = gplus.get_keys()
     self.reload_views(colls)
Ejemplo n.º 4
0
def get_collections(templateDir='_templates'):
    gplusClientID = gplus.get_keys()['client_id']  # most templates need this
    templateEnv = view.get_template_env(templateDir)
    view.report_error.bind_template(templateEnv, 'error.html')  # error page

    # access Papers using our object ID
    papers = PaperCollection('paper',
                             core.Paper,
                             templateEnv,
                             templateDir,
                             gplusClientID=gplusClientID)
    # using arxivID
    arxivPapers = ArxivCollection('paper',
                                  core.ArxivPaperData,
                                  templateEnv,
                                  templateDir,
                                  gplusClientID=gplusClientID,
                                  collectionArgs=dict(uri='/arxiv'))
    # using shortDOI
    doiPapers = ParentCollection('paper',
                                 core.DoiPaperData,
                                 templateEnv,
                                 templateDir,
                                 gplusClientID=gplusClientID,
                                 collectionArgs=dict(uri='/shortDOI'))
    # using pubmedID
    pubmedPapers = PubmedCollection('paper',
                                    core.PubmedPaperData,
                                    templateEnv,
                                    templateDir,
                                    gplusClientID=gplusClientID,
                                    collectionArgs=dict(uri='/pubmed'))

    recs = ArrayDocCollection('rec',
                              core.Recommendation,
                              templateEnv,
                              templateDir,
                              gplusClientID=gplusClientID)
    papers.recs = recs  # bind as subcollection

    likes = InterestCollection('like',
                               core.PaperInterest,
                               templateEnv,
                               templateDir,
                               gplusClientID=gplusClientID)
    papers.likes = likes  # bind as subcollection

    people = PersonCollection('person',
                              core.Person,
                              templateEnv,
                              templateDir,
                              gplusClientID=gplusClientID)
    readingList = ReadingList('reading',
                              core.Paper,
                              templateEnv,
                              templateDir,
                              gplusClientID=gplusClientID)
    people.reading = readingList
    personTopics = PersonTopics('topics',
                                core.SIG,
                                templateEnv,
                                templateDir,
                                gplusClientID=gplusClientID)
    people.topics = personTopics
    personSubs = PersonSubscriptions('subscriptions',
                                     core.Subscription,
                                     templateEnv,
                                     templateDir,
                                     gplusClientID=gplusClientID)
    people.subscriptions = personSubs
    topics = rest.Collection('topic',
                             core.SIG,
                             templateEnv,
                             templateDir,
                             gplusClientID=gplusClientID)

    # load homepage template
    homePage = view.TemplateView(templateEnv.get_template('index.html'),
                                 gplusClientID=gplusClientID)

    # what collections to bind on the server root
    return dict(papers=papers,
                arxiv=arxivPapers,
                shortDOI=doiPapers,
                pubmed=pubmedPapers,
                people=people,
                topics=topics,
                index=homePage)