예제 #1
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_linkedin(bibcode):
    """Creates an url for linkedin"""
    solrdoc = solr.get_document(bibcode)
    if not solrdoc:
        abort(404)
    if solrdoc.author:
        message = "%s: " % solrdoc.author[0]
    else:
        message = ""
    if solrdoc.title:
        message = "%s%s" % (message, solrdoc.title[0])
    params = "mini=true&url=%s&title=%s&source=The SAO/NASA Astrophysics Data System" % (
        quote_url("%s%s" % (config.MAIL_CONTENT_REDIRECT_BASE_URL, url_for("abs.abstract", bibcode=bibcode))),
        quote_url(message),
    )
    return "http://www.linkedin.com/shareArticle?%s" % params
 def test_quote_url(self):
     self.assertEqual(tf.quote_url('foobar'), 'foobar')
     self.assertEqual(tf.quote_url('foo bar'), 'foo+bar')
     self.assertEqual(tf.quote_url('foo&bar'), 'foo%26bar')
     self.assertEqual(tf.quote_url('foo:bar%'), 'foo%3Abar%25')
     self.assertEqual(tf.quote_url('0/foobar'), '0/foobar')
     self.assertEqual(tf.quote_url('0/foo:bar%'), '0/foo%3Abar%25')
     self.assertEqual(tf.quote_url('1/foo:/bar%'), '1/foo%3A/bar%25')
예제 #3
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_sciencewise(bibcode):
    """Creates an url for sciencewise"""
    solrdoc = solr.get_document(bibcode)
    if not solrdoc:
        abort(404)
    ids = solrdoc.getattr_func("ids_data", field_to_json)
    arxiv_id = []
    if ids:
        for id_ in ids:
            if id_.get("description") == "arXiv":
                arxiv_id.append(id_.get("identifier"))
    if arxiv_id:
        return "http://sciencewise.info/bookmarks/%s/add" % quote_url(arxiv_id[0].strip("arXiv:"))
    else:
        abort(404)
예제 #4
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_twitter(bibcode):
    """Creates an url for twitter"""
    solrdoc = solr.get_document(bibcode)
    if not solrdoc:
        abort(404)
    if solrdoc.author:
        status = "%s: " % solrdoc.author[0]
    else:
        status = ""
    if solrdoc.title:
        status = "%s%s %s via @adsabs" % (
            status,
            solrdoc.title[0],
            "%s%s" % (config.MAIL_CONTENT_REDIRECT_BASE_URL, url_for("abs.abstract", bibcode=bibcode)),
        )
    return "http://twitter.com/home/?status=%s" % quote_url(status)
예제 #5
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_mendeley(bibcode):
    """Creates an url for mendeley"""
    return "http://www.mendeley.com/import/?url=%s" % quote_url(
        "%s%s" % (config.MAIL_CONTENT_REDIRECT_BASE_URL, url_for("abs.abstract", bibcode=bibcode))
    )
예제 #6
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_facebook(bibcode):
    """Creates an url for facebook"""
    return "http://www.facebook.com/share.php?u=%s" % quote_url(
        "%s%s" % (config.MAIL_CONTENT_REDIRECT_BASE_URL, url_for("abs.abstract", bibcode=bibcode))
    )
예제 #7
0
파일: views.py 프로젝트: adsabs/adsabs
def url_for_privateLibaryClassic(bibcode):
    """Creates an url for the private libraries"""
    return "%s/cgi-bin/nph-abs_connect?bibcode=%s&library=Add" % (config.ADS_CLASSIC_BASEURL, quote_url(bibcode))