Merge branch 'master' of github.com:Gluejar/regluit into payment
commit
dcf94fd3ff
|
@ -89,7 +89,7 @@ TBA
|
|||
|
||||
There's a <a href="/accounts/password/reset/">forgot your password</a> link at the bottom of the <a href="/accounts/login/">sign in page</a>. Enter the email address you use for your account and we'll send you an email to help you reset your password.
|
||||
|
||||
<dt>I never received a confirmation email after I signed up. What do I do?</dt>
|
||||
<dt>I never received an activation email after I signed up, or my activation email isn't working. What do I do?</dt>
|
||||
|
||||
<dd>Check your spam folder for mail from accounts@gluejar.com. If that doesn't work, contact us at <a href="mailto:support@gluejar.com">support@gluejar.com</a>.</dd>
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
{% block extra_css %}
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/landingpage.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/searchandbrowse.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
|
||||
{% endblock %}
|
||||
|
||||
|
@ -26,23 +27,7 @@
|
|||
<script type="text/javascript" src="/static/js/highlight_signup.js"></script>
|
||||
|
||||
<script src="/static/js/slides.min.jquery.js"></script>
|
||||
<script>
|
||||
var $j = jQuery.noConflict();
|
||||
$j(function(){
|
||||
$j('#js-slideshow').slides({
|
||||
preload: true,
|
||||
preloadImage: '/static/images/landingpage/loading.gif',
|
||||
hoverPause: true,
|
||||
generateNextPrev: true,
|
||||
next: 'next',
|
||||
prev: 'prev',
|
||||
pagination: true,
|
||||
generatePagination: false,
|
||||
slideSpeed: 600,
|
||||
autoHeight: true
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<script src="/static/js/slideshow.js"></script>
|
||||
|
||||
<script type="text/javascript" src="/static/js/watermark_init.js"></script>
|
||||
<script type="text/javascript" src="/static/js/watermark_change.js"></script>
|
||||
|
|
|
@ -29,6 +29,10 @@
|
|||
|
||||
<a name="latest"></a><h2>Latest Press</h2>
|
||||
<div class="pressarticles">
|
||||
<div>
|
||||
<a href="http://pubwest.org/endsheet-2/a-new-approach-for-backlist-titles/">A New Approach for Backlist Titles</a><br />
|
||||
PubWest Endsheet - Spring 2012
|
||||
</div>
|
||||
<div>
|
||||
<a href="http://americanlibrariesmagazine.org/solutions-and-services/unglueit">Solutions and Services: Unglue.It</a><br />
|
||||
American Libraries - February 14, 2012
|
||||
|
@ -38,10 +42,6 @@
|
|||
<a href="http://www.teleread.com/copy-right/web-site-hopes-to-unglue-e-book-versions-of-copyrighted-books-thorugh-crowdfunding/">Web site hopes to ‘unglue’ e-book versions of copyrighted books through crowdfunding</a><br />
|
||||
TeleRead - January 31, 2012
|
||||
</div>
|
||||
<div>
|
||||
<a href="http://paidcontent.org/article/419-the-unglued-model-crowdfunding-to-make-e-books-free/">A Crowdfunded Approach To Setting E-Books Free</a><br />
|
||||
paidContent - January 30, 2012
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<a name="overview"></a><h2>Overview</h2>
|
||||
|
@ -69,11 +69,15 @@ For more background, read our president Eric Hellman's thoughts on <a href="http
|
|||
<dd>Please consult our <a href="/faq/">FAQ</a> (sidebar at left); join the site and explore its features for yourself; or email us, <a href="press@gluejar.com">press@gluejar.com</a>.</dd>
|
||||
|
||||
<a name="press"></a><h2>Press Coverage</h2>
|
||||
<div class="pressarticles">
|
||||
<div>
|
||||
<a href="http://pubwest.org/endsheet-2/a-new-approach-for-backlist-titles/">A New Approach for Backlist Titles</a><br />
|
||||
PubWest Endsheet - Spring 2012
|
||||
</div>
|
||||
<div>
|
||||
<a href="http://americanlibrariesmagazine.org/solutions-and-services/unglueit">Solutions and Services: Unglue.It</a><br />
|
||||
American Libraries - February 14, 2012
|
||||
</div>
|
||||
<div class="pressarticles">
|
||||
<div>
|
||||
<a href="http://www.teleread.com/copy-right/web-site-hopes-to-unglue-e-book-versions-of-copyrighted-books-thorugh-crowdfunding/">Web site hopes to ‘unglue’ e-book versions of copyrighted books through crowdfunding</a><br />
|
||||
TeleRead - January 31, 2012
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
{% include "login_form.html" %}
|
||||
<br />
|
||||
<a href="{% url auth_password_reset %}">Forgot</a> your password? <a href="{% url registration_register %}">Need an account</a>?
|
||||
<a href="{% url auth_password_reset %}">Forgot</a> your password? <a href="/faq/basics/account">Trouble</a> logging in? <a href="{% url registration_register %}">Need an account</a>?
|
||||
|
||||
<br /><br />
|
||||
<div class="google_signup">
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
{% block title %} — {{ supporter.username }}{% endblock %}
|
||||
{% block extra_css %}
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/supporter_layout.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/searchandbrowse.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/book_list.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
|
||||
{% endblock %}
|
||||
|
@ -14,11 +15,40 @@
|
|||
<script type="text/javascript" src={{ jquery_ui_home }}></script>
|
||||
|
||||
<script type="text/javascript" src="/static/js/greenpanel.js"></script>
|
||||
<script type="text/javascript" src="/static/js/import_books.js"></script>
|
||||
<script type="text/javascript" src="/static/js/counter.js"></script>
|
||||
|
||||
{% ifequal supporter request.user %}
|
||||
<!-- we only need to be able to toggle the profile edit area in this case -->
|
||||
<script type="text/javascript">
|
||||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function(){
|
||||
$j('#user-block-hide').hide();
|
||||
$j('#user-block1 span').click(function() {
|
||||
$j(this).toggleClass("active");
|
||||
$j("#user-block-hide").slideToggle(300);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{% endifequal %}
|
||||
|
||||
{% if works %}
|
||||
<!-- when the user's wishlist is empty, views.py gives us works for a slideshow -->
|
||||
<script src="/static/js/slides.min.jquery.js"></script>
|
||||
<script src="/static/js/slideshow.js"></script>
|
||||
|
||||
<!-- toggle to panelview instead of listview default so slideshow will look right -->
|
||||
<script type="text/javascript">
|
||||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function($) {
|
||||
$('.listview').addClass("panelview").removeClass("listview");
|
||||
});
|
||||
</script>
|
||||
{% else %}
|
||||
<!-- we only need these when there's stuff on the user's wishlist -->
|
||||
<script type="text/javascript" src="/static/js/toggle.js"></script>
|
||||
<script type="text/javascript" src="/static/js/tabs.js"></script>
|
||||
<script type="text/javascript" src="/static/js/import_books.js"></script>
|
||||
|
||||
<script type="text/javascript" src="/static/js/counter.js"></script>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block extra_js %}
|
||||
|
@ -56,7 +86,7 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
{% endcomment %}
|
||||
|
||||
{% block topsection %}
|
||||
|
||||
<div id="locationhash">{{ activetab }}</div>
|
||||
<div id="js-topsection">
|
||||
<div class="js-main">
|
||||
<div class="js-topnews">
|
||||
|
@ -236,7 +266,11 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
<li class="tabs2"><a href="#">Active</a></li>
|
||||
<li class="tabs3"><a href="#">Wishlisted</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
{% if not works %}
|
||||
{% comment %}
|
||||
don't let people toggle views if we're doing the slideshow -- it'll look weird
|
||||
{% endcomment %}
|
||||
<ul class="book-list-view">
|
||||
<li>View As:</li>
|
||||
<li class="view-list">
|
||||
|
@ -250,14 +284,54 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div id="content-block-content">
|
||||
{% ifequal wishlist.works.all.count 0 %}
|
||||
{% ifequal request.user supporter %}
|
||||
<div class="empty-wishlist">
|
||||
Your wishlist is currently empty.<br /><br />
|
||||
Why not <span class="bounce-search">find</span> your favorite books, and add them to your Wishlist?<br /><br />
|
||||
We'd also love to hear your <a href="/feedback">feedback</a>.
|
||||
|
||||
<div>You haven't wishlisted anything yet. Can we help?<br /><br /></div>
|
||||
|
||||
<div id="js-slide">
|
||||
<div class="js-main">
|
||||
<div class="jsmodule">
|
||||
<h3><span>{% if is_preview %}Most wishlisted{% else %}Top ungluing campaigns{% endif %}</span></h3>
|
||||
<div class="jsmod-content">
|
||||
<div id="js-slideshow">
|
||||
<div class="slides_container">
|
||||
<div class="slide-page slide-page1">
|
||||
{% for work in works %}
|
||||
<div class="spacer">
|
||||
{% include "book_panel.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="slide-page slide-page2">
|
||||
{% for work in works2 %}
|
||||
<div class="spacer">
|
||||
{% include "book_panel.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="js-maincontainer-bot-block">
|
||||
<div id="js-search">
|
||||
<label>What book would you give to the world? </label>
|
||||
<form action="{% url search %}" method="get">
|
||||
<input type="text" id="watermark" onfocus="imgfocus()" onblur="imgblur(0)" size="25" class="inputbox" name="q" value="{{ q }}">
|
||||
<input type="submit" class="greenbutton" value="Search">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br /><br /><hr />We'd also love to hear your <a href="/feedback">feedback</a>.
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="empty-wishlist">
|
||||
|
@ -275,7 +349,6 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
{% endwith %}{% endwith %}{% endwith %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
<br>
|
||||
<div class="pagination content-block-heading tabs-1">
|
||||
{% get_pages %}
|
||||
{% for page in pages %}
|
||||
|
@ -293,7 +366,6 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
{% endwith %}{% endwith %}{% endwith %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
<br>
|
||||
<div class="pagination content-block-heading tabs-2">
|
||||
{% get_pages %}
|
||||
{% for page in pages %}
|
||||
|
@ -311,7 +383,6 @@ there's no tab for seeing ALL my books, only the filters! huh.
|
|||
{% endwith %}{% endwith %}{% endwith %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
<br>
|
||||
<div class="pagination content-block-heading tabs-3">
|
||||
{% get_pages %}
|
||||
{% for page in pages %}
|
||||
|
|
|
@ -8,9 +8,6 @@
|
|||
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
|
||||
{% endblock %}
|
||||
{% block extra_head %}
|
||||
<script>
|
||||
location.hash = "#1";
|
||||
</script>
|
||||
<script type="text/javascript" src="/static/js/jquery.cookie.js"></script>
|
||||
<script type="text/javascript" src="/static/js/wishlist.js"></script>
|
||||
<script type="text/javascript" src={{ jquery_ui_home }}></script>
|
||||
|
@ -19,7 +16,7 @@ location.hash = "#1";
|
|||
<script type="text/javascript" src="/static/js/tabs.js"></script>
|
||||
{% endblock %}
|
||||
{% block topsection %}
|
||||
|
||||
<div id="locationhash">{{ activetab }}</div>
|
||||
<div id="js-topsection">
|
||||
<div class="js-main">
|
||||
<div class="js-topnews">
|
||||
|
@ -95,7 +92,7 @@ location.hash = "#1";
|
|||
<div class="pagination content-block-heading tabs-1">
|
||||
{% get_pages %}
|
||||
{% for page in pages %}
|
||||
<a href="{{ page.path }}#1">{{ page.number }}</a>
|
||||
<a href="{{ page.path }}#1" class="endless_page_link">{{ page.number }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endifequal %}
|
||||
|
|
|
@ -15,18 +15,29 @@
|
|||
<script type="text/javascript" src="/static/js/counter.js"></script>
|
||||
|
||||
<script>
|
||||
jQuery(document).ready(function(){
|
||||
jQuery('#embed').click(function(){
|
||||
jQuery('div#widgetcode').toggle();
|
||||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function(){
|
||||
$j('#embed').click(function(){
|
||||
$j('div#widgetcode').toggle();
|
||||
});
|
||||
jQuery('.show_more_edition').click(function(){
|
||||
jQuery(this).html('less...');
|
||||
jQuery(this).next().toggle();
|
||||
$j('.show_more_edition').click(function(){
|
||||
$j(this).html('less...');
|
||||
$j(this).next().toggle();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function(){
|
||||
var img = $j('#book-detail-img');
|
||||
var googimg = $j('#find-google img');
|
||||
img.mouseover(function(){
|
||||
googimg.css({"background": "#8dc63f"}).animate(
|
||||
{backgroundColor: "white"}, 1500
|
||||
);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
||||
|
@ -77,8 +88,8 @@ jQuery(document).ready(function(){
|
|||
<div class="js-maincol-inner">
|
||||
<div id="content-block">
|
||||
<div class="book-detail">
|
||||
<div class="book-detail-img"><a href="{% url work_openlibrary work.id %}">
|
||||
<img src="{{ work.cover_image_thumbnail }}" alt="{{ work.title }}" title="{{ work.title }}" width="131" height="192" /></a>
|
||||
<div id="book-detail-img"><a href="{{ work.googlebooks_url }}">
|
||||
<img src="{{ work.cover_image_thumbnail }}" alt="Find {{ work.title }} at Google Books" title="Find {{ work.title }} at Google Books" width="131" height="192" /></a>
|
||||
</div>
|
||||
<div class="book-detail-info">
|
||||
<div class="layout">
|
||||
|
@ -100,7 +111,7 @@ jQuery(document).ready(function(){
|
|||
<div class="find-book">
|
||||
<label>Find it:</label>
|
||||
<div class="find-link">
|
||||
<a class="find-google" href="{{ work.googlebooks_url }}"><img src="/static/images/supporter_icons/googlebooks_square.png" align="" title="Find on Google Books" /></a>
|
||||
<a id="find-google" href="{{ work.googlebooks_url }}"><img src="/static/images/supporter_icons/googlebooks_square.png" align="" title="Find on Google Books" /></a>
|
||||
<a rel="nofollow" class="find-openlibrary" href="{% url work_openlibrary work.id %}"><img src="/static/images/supporter_icons/openlibrary_square.png" title="Find on OpenLibrary"></a>
|
||||
{% if not request.user.is_anonymous %}
|
||||
{% if request.user.profile.goodreads_user_link %}
|
||||
|
@ -197,6 +208,7 @@ jQuery(document).ready(function(){
|
|||
</div>
|
||||
</div>
|
||||
<div id="tabs-2" class="tabs {% if activetab == '2' %}active{% endif %}">
|
||||
<h3>Why unglue this? Have your say.</h3>
|
||||
<div class="tabs-content">
|
||||
{% render_comment_list for work %}
|
||||
{% if user.is_authenticated %}
|
||||
|
@ -298,7 +310,7 @@ jQuery(document).ready(function(){
|
|||
<a href="{{ebook.url}}">{{ ebook.format }}</a> {{ebook.rights}} at {{ebook.provider}}<br />
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
<h5>Add an eBook for this Edition</h5>
|
||||
<h5>Add an eBook for this Edition:</h5>
|
||||
<span>If you know that this edition is available as a public domain or Creative Commons ebook, you can enter the link here and "unglue" it. Right now, we're only accepting URLs that point to Internet Archive, Wikisources, Hathitrust, Project Gutenberg, or Google Books.</span>
|
||||
<form method="POST" action="#edition_{{edition.id}}">
|
||||
{% csrf_token %}{{ edition.ebook_form.edition }}{{ edition.ebook_form.user }}{{ edition.ebook_form.provider }}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<script type="text/javascript" src="/static/js/tabs.js"></script>
|
||||
{% endblock %}
|
||||
{% block topsection %}
|
||||
|
||||
<div id="locationhash">{{ activetab }}</div>
|
||||
<div id="js-topsection">
|
||||
<div class="js-main">
|
||||
<div class="js-topnews">
|
||||
|
|
|
@ -82,7 +82,6 @@ def home(request):
|
|||
if j == count:
|
||||
j = 0
|
||||
events = models.Wishes.objects.order_by('-created')[0:2]
|
||||
activetab = "2"
|
||||
return render(request, 'home.html', {'suppress_search_box': True, 'works': works, 'works2': works2, 'events': events})
|
||||
|
||||
def stub(request):
|
||||
|
@ -240,6 +239,8 @@ class WorkListView(ListView):
|
|||
context['works_active'] = qs.exclude(editions__ebooks__isnull=False).filter(Q(campaigns__status='ACTIVE') | Q(campaigns__status='SUCCESSFUL')).distinct().order_by('-campaigns__status', 'campaigns__deadline')
|
||||
context['works_wished'] = qs.exclude(editions__ebooks__isnull=False).exclude(campaigns__status='ACTIVE').exclude(campaigns__status='SUCCESSFUL').distinct().order_by('-num_wishes')
|
||||
|
||||
context['activetab'] = "#3"
|
||||
|
||||
counts={}
|
||||
counts['unglued'] = context['works_unglued'].count()
|
||||
counts['unglueing'] = context['works_active'].count()
|
||||
|
@ -270,6 +271,7 @@ class UngluedListView(ListView):
|
|||
context['counts'] = self.work_set_counts(qs)
|
||||
context['ungluers'] = userlists.work_list_users(qs,5)
|
||||
context['facet'] =self.kwargs['facet']
|
||||
context['activetab'] = "#1"
|
||||
return context
|
||||
|
||||
|
||||
|
@ -742,23 +744,55 @@ def campaign_admin(request):
|
|||
def supporter(request, supporter_username, template_name):
|
||||
supporter = get_object_or_404(User, username=supporter_username)
|
||||
wishlist = supporter.wishlist
|
||||
works = []
|
||||
works2 = []
|
||||
works_unglued = []
|
||||
works_active = []
|
||||
works_wished = []
|
||||
is_preview = settings.IS_PREVIEW
|
||||
|
||||
# querysets for tabs
|
||||
# unglued tab is anything with an existing ebook
|
||||
## .order_by() may clash with .distinct() and this should be fixed
|
||||
works_unglued = wishlist.works.all().filter(editions__ebooks__isnull=False).distinct().order_by('-num_wishes')
|
||||
if (wishlist.works.all()):
|
||||
# querysets for tabs
|
||||
# unglued tab is anything with an existing ebook
|
||||
## .order_by() may clash with .distinct() and this should be fixed
|
||||
works_unglued = wishlist.works.all().filter(editions__ebooks__isnull=False).distinct().order_by('-num_wishes')
|
||||
|
||||
# take the set complement of the unglued tab and filter it for active works to get middle tab
|
||||
result = wishlist.works.all().exclude(pk__in=works_unglued.values_list('pk', flat=True))
|
||||
works_active = result.filter(Q(campaigns__status='ACTIVE') | Q(campaigns__status='SUCCESSFUL')).order_by('-campaigns__status', 'campaigns__deadline').distinct()
|
||||
|
||||
# everything else goes in tab 3
|
||||
works_wished = result.exclude(pk__in=works_active.values_list('pk', flat=True)).order_by('-num_wishes')
|
||||
|
||||
# badge counts
|
||||
backed = works_unglued.count()
|
||||
backing = works_active.count()
|
||||
wished = works_wished.count()
|
||||
|
||||
# take the set complement of the unglued tab and filter it for active works to get middle tab
|
||||
result = wishlist.works.all().exclude(pk__in=works_unglued.values_list('pk', flat=True))
|
||||
works_active = result.filter(Q(campaigns__status='ACTIVE') | Q(campaigns__status='SUCCESSFUL')).order_by('-campaigns__status', 'campaigns__deadline').distinct()
|
||||
|
||||
# everything else goes in tab 3
|
||||
works_wished = result.exclude(pk__in=works_active.values_list('pk', flat=True)).order_by('-num_wishes')
|
||||
|
||||
# badge counts
|
||||
backed = works_unglued.count()
|
||||
backing = works_active.count()
|
||||
wished = works_wished.count()
|
||||
else:
|
||||
ending = models.Campaign.objects.filter(status='ACTIVE').order_by('deadline')
|
||||
count = ending.count()
|
||||
i = 0
|
||||
j = 0
|
||||
|
||||
if is_preview:
|
||||
worklist = models.Work.objects.order_by('-num_wishes')
|
||||
works = worklist[:4]
|
||||
works2 = worklist[4:8]
|
||||
else:
|
||||
while i<8 and count>0:
|
||||
if i<4:
|
||||
works.append(ending[j].work)
|
||||
else:
|
||||
works2.append(ending[j].work)
|
||||
i += 1
|
||||
j += 1
|
||||
if j == count:
|
||||
j = 0
|
||||
|
||||
backed = 0
|
||||
backing = 0
|
||||
wished = 0
|
||||
|
||||
date = supporter.date_joined.strftime("%B %d, %Y")
|
||||
|
||||
|
@ -812,6 +846,9 @@ def supporter(request, supporter_username, template_name):
|
|||
"works_unglued": works_unglued,
|
||||
"works_active": works_active,
|
||||
"works_wished": works_wished,
|
||||
"works": works,
|
||||
"works2": works2,
|
||||
"is_preview": is_preview,
|
||||
"backed": backed,
|
||||
"backing": backing,
|
||||
"wished": wished,
|
||||
|
@ -821,6 +858,7 @@ def supporter(request, supporter_username, template_name):
|
|||
"goodreads_auth_url": reverse('goodreads_auth'),
|
||||
"goodreads_id": goodreads_id,
|
||||
"librarything_id": librarything_id,
|
||||
"activetab": "#3"
|
||||
}
|
||||
|
||||
return render(request, template_name, context)
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
# requirements.pip does not specify versions of the libraries. Here's a modified version of the output from pip freeze
|
||||
# on March 7, 2012 for which the tests run successfully for https://github.com/Gluejar/regluit/commit/000d78dbd0e377d2b1688a4a1a333df49a0dd11b
|
||||
# If you were to run pip install -r requirements.pip anew, the tests no longer run perfectly because of the use of
|
||||
# some later libraries
|
||||
amqplib==1.0.2
|
||||
anyjson==0.3.1
|
||||
celery==2.4.6
|
||||
certifi==0.0.6
|
||||
django-celery==2.4.2
|
||||
django-debug-toolbar==0.8.5
|
||||
django-endless-pagination==1.1
|
||||
django-extensions==0.7.1
|
||||
django-kombu==0.9.4
|
||||
django-nose-selenium==0.7.3
|
||||
django-picklefield==0.1.9
|
||||
django-profiles==0.2
|
||||
https://bitbucket.org/ubernostrum/django-registration/get/tip.tar.gz
|
||||
#django-registration==0.8-alpha-1
|
||||
django-selectable==0.2
|
||||
django-social-auth==0.6.1
|
||||
#https://github.com/toastdriven/django-tastypie/tarball/master
|
||||
django-tastypie==0.9.11
|
||||
Django==1.3.1
|
||||
feedparser==5.1
|
||||
freebase==1.0.8
|
||||
httplib2==0.7.2
|
||||
kombu==1.5.1
|
||||
# lxml requires special handling to install properly
|
||||
#lxml==2.3.1
|
||||
mechanize==0.2.5
|
||||
mimeparse==0.1.3
|
||||
MySQL-python==1.2.3
|
||||
nose==1.1.2
|
||||
oauth2==1.5.211
|
||||
pyparsing==1.5.6
|
||||
python-dateutil==1.5
|
||||
python-digest==1.7
|
||||
python-openid==2.2.5
|
||||
pytz==2011n
|
||||
Pyzotero==0.9.4
|
||||
rdflib==3.1.0
|
||||
redis==2.4.11
|
||||
requests==0.9.1
|
||||
selenium==2.16.0
|
||||
South==0.7.3
|
||||
wsgiref==0.1.2
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
/* Cross-browser language */
|
||||
/* rows in listview should alternate colors */
|
||||
.row1 .book-list.listview {
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
/* Local variables */
|
||||
.greenpanelstuff {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#js-page-wrap {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
@ -133,12 +150,12 @@
|
|||
clear: both;
|
||||
display: block;
|
||||
}
|
||||
.book-detail-img {
|
||||
#book-detail-img {
|
||||
float: left;
|
||||
margin-right: 10px;
|
||||
width: 151px;
|
||||
}
|
||||
.book-detail-img img {
|
||||
#book-detail-img img {
|
||||
padding: 5px;
|
||||
border: solid 5px #EDF3F4;
|
||||
}
|
||||
|
@ -211,8 +228,11 @@
|
|||
.book-detail-info .find-link {
|
||||
float: right;
|
||||
}
|
||||
.book-detail-info .find-link a {
|
||||
padding: 0 0 0 4px;
|
||||
.book-detail-info .find-link img {
|
||||
padding: 2px;
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.book-detail-info .pledged-info {
|
||||
padding: 0;
|
||||
|
@ -542,3 +562,32 @@ a {
|
|||
.show_more_edition {
|
||||
text-align: right;
|
||||
}
|
||||
.errorlist {
|
||||
list-style-type: none;
|
||||
font-size: 14px;
|
||||
}
|
||||
.errorlist li {
|
||||
margin-bottom: 7px;
|
||||
}
|
||||
.errorlist .errorlist li {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
width: auto;
|
||||
height: auto;
|
||||
padding-left: 32px;
|
||||
padding-right: 32px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.errorlist .errorlist li li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
|
|
|
@ -85,6 +85,28 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
/* variables and mixins used in multiple less files go here */
|
||||
.header-text {
|
||||
height: 36px;
|
||||
|
@ -172,6 +194,28 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#user-block-hide {
|
||||
float: left;
|
||||
width: 100%;
|
||||
|
|
|
@ -85,6 +85,28 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
/* variables and mixins used in multiple less files go here */
|
||||
.header-text {
|
||||
height: 36px;
|
||||
|
@ -172,6 +194,28 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#user-block-hide {
|
||||
float: left;
|
||||
width: 100%;
|
||||
|
@ -521,69 +565,6 @@ h2.page-heading {
|
|||
font-style: italic;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
#js-maincontainer-bot-block {
|
||||
width: 100%;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin-top: 55px;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search {
|
||||
-moz-border-radius: 64px;
|
||||
-webkit-border-radius: 64px;
|
||||
border-radius: 64px;
|
||||
-moz-border-radius: 64px;
|
||||
-webkit-border-radius: 64px;
|
||||
border-radius: 64px;
|
||||
background-color: #8dc63f;
|
||||
width: 628px;
|
||||
height: 80px;
|
||||
overflow: hidden;
|
||||
clear: both;
|
||||
color: #fff;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search label {
|
||||
line-height: 80px;
|
||||
font-size: 18px;
|
||||
float: left;
|
||||
padding: 0;
|
||||
width: auto;
|
||||
padding: 0 15px 0 30px;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search form {
|
||||
float: left;
|
||||
width: 210px;
|
||||
background: url("/static/images/landingpage/search-box-two.png") 0 0 no-repeat;
|
||||
height: 36px;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
margin-top: 22px;
|
||||
}
|
||||
#js-search input.inputbox {
|
||||
border: none;
|
||||
color: #66942e;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
font-size: 13px;
|
||||
float: left;
|
||||
padding: 0;
|
||||
margin: 5px 0 5px 20px;
|
||||
width: 149px;
|
||||
outline: none;
|
||||
}
|
||||
#js-search input.greenbutton {
|
||||
background: url("/static/images/landingpage/search-button-two.png") 0 0 no-repeat;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
border: none;
|
||||
display: block;
|
||||
float: right;
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
}
|
||||
#js-maincontainer-faq {
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
|
@ -601,26 +582,6 @@ h2.page-heading {
|
|||
color: #3d4e53;
|
||||
text-decoration: underline;
|
||||
}
|
||||
#js-slide .jsmodule > h3 {
|
||||
background: url("/static/images/landingpage/bg-slide.png") bottom center no-repeat;
|
||||
padding-bottom: 7px;
|
||||
padding-left: 35px;
|
||||
}
|
||||
#js-slide .jsmodule > h3 span {
|
||||
background: #8ac3d7;
|
||||
color: #fff;
|
||||
padding: 10px 20px;
|
||||
-moz-border-radius: 10px 10px 0 0;
|
||||
-webkit-border-radius: 10px 10px 0 0;
|
||||
border-radius: 10px 10px 0 0;
|
||||
-moz-border-radius: 10px 10px 0 0;
|
||||
-webkit-border-radius: 10px 10px 0 0;
|
||||
border-radius: 10px 10px 0 0;
|
||||
font-size: 18px;
|
||||
overflow: hidden;
|
||||
display: inline-block;
|
||||
font-weight: normal;
|
||||
}
|
||||
h3.module-title {
|
||||
padding: 10px 0 0 0;
|
||||
font-size: 17px;
|
||||
|
@ -656,36 +617,6 @@ h3.module-title {
|
|||
height: 24px;
|
||||
width: 24px;
|
||||
}
|
||||
#js-slideshow {
|
||||
padding: 0 30px;
|
||||
position: relative;
|
||||
}
|
||||
#js-slideshow a.prev {
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
width: 15px;
|
||||
height: 22px;
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
background: url("/static/images/landingpage/arrow-left.png") 0 0 no-repeat;
|
||||
left: 0;
|
||||
}
|
||||
#js-slideshow a.next {
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
width: 15px;
|
||||
height: 22px;
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
background: url("/static/images/landingpage/arrow-right.png") 0 0 no-repeat;
|
||||
right: 0;
|
||||
}
|
||||
.spacer {
|
||||
float: left;
|
||||
margin: 0 4px;
|
||||
}
|
||||
.landingheader {
|
||||
border-bottom: solid 5px #6994a3;
|
||||
float: left;
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#user-block-hide {
|
||||
float: left;
|
||||
width: 100%;
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#content-block .jsmod-content, .book-detail {
|
||||
float: left;
|
||||
width: auto;
|
||||
|
|
|
@ -72,7 +72,25 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
.errorlist {
|
||||
clear: both;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
span.rounded {
|
||||
border: 1px solid #d4d4d4;
|
||||
-moz-border-radius: 7px;
|
||||
|
|
|
@ -0,0 +1,196 @@
|
|||
/* variables and mixins used in multiple less files go here */
|
||||
.header-text {
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
font-size: 13px;
|
||||
letter-spacing: -0.05em;
|
||||
}
|
||||
.panelborders {
|
||||
border-width: 1px 0px;
|
||||
border-style: solid none;
|
||||
border-color: #FFFFFF;
|
||||
}
|
||||
.roundedspan {
|
||||
border: 1px solid #d4d4d4;
|
||||
-moz-border-radius: 7px;
|
||||
-webkit-border-radius: 7px;
|
||||
border-radius: 7px;
|
||||
padding: 1px;
|
||||
color: #fff;
|
||||
margin: 0 8px 0 0;
|
||||
display: inline-block;
|
||||
}
|
||||
.roundedspan > span {
|
||||
padding: 7px 7px;
|
||||
min-width: 15px;
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
display: inline-block;
|
||||
}
|
||||
.roundedspan > span .hovertext {
|
||||
display: none;
|
||||
}
|
||||
.roundedspan > span:hover .hovertext {
|
||||
display: inline;
|
||||
}
|
||||
.mediaborder {
|
||||
padding: 5px;
|
||||
border: solid 5px #EDF3F4;
|
||||
}
|
||||
.google_signup_div {
|
||||
padding: 14px 0;
|
||||
}
|
||||
.google_signup_div div {
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
float: left;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.google_signup_div img {
|
||||
float: left;
|
||||
height: 24px;
|
||||
width: 24px;
|
||||
}
|
||||
.actionbuttons {
|
||||
width: auto;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
background: #8dc63f;
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
color: white;
|
||||
cursor: pointer;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
padding: 0 15px;
|
||||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
#js-maincontainer-bot-block {
|
||||
width: 100%;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin-top: 55px;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search {
|
||||
-moz-border-radius: 64px;
|
||||
-webkit-border-radius: 64px;
|
||||
border-radius: 64px;
|
||||
background-color: #8dc63f;
|
||||
width: 628px;
|
||||
height: 80px;
|
||||
overflow: hidden;
|
||||
clear: both;
|
||||
color: #fff;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search label {
|
||||
line-height: 80px;
|
||||
font-size: 18px;
|
||||
float: left;
|
||||
padding: 0;
|
||||
width: auto;
|
||||
padding: 0 15px 0 30px;
|
||||
}
|
||||
#js-maincontainer-bot-block #js-search form {
|
||||
float: left;
|
||||
width: 210px;
|
||||
background: url("/static/images/landingpage/search-box-two.png") 0 0 no-repeat;
|
||||
height: 36px;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
margin-top: 22px;
|
||||
}
|
||||
#js-slideshow {
|
||||
padding: 0 30px;
|
||||
position: relative;
|
||||
}
|
||||
#js-slideshow a.prev {
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
width: 15px;
|
||||
height: 22px;
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
background: url("/static/images/landingpage/arrow-left.png") 0 0 no-repeat;
|
||||
left: 0;
|
||||
}
|
||||
#js-slideshow a.next {
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
width: 15px;
|
||||
height: 22px;
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
background: url("/static/images/landingpage/arrow-right.png") 0 0 no-repeat;
|
||||
right: 0;
|
||||
}
|
||||
.spacer {
|
||||
float: left;
|
||||
margin: 0 4px;
|
||||
}
|
||||
#js-search input.inputbox {
|
||||
border: none;
|
||||
color: #66942e;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
font-size: 13px;
|
||||
float: left;
|
||||
padding: 0;
|
||||
margin: 5px 0 5px 20px;
|
||||
width: 149px;
|
||||
outline: none;
|
||||
}
|
||||
#js-search input.greenbutton {
|
||||
background: url("/static/images/landingpage/search-button-two.png") 0 0 no-repeat;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
border: none;
|
||||
display: block;
|
||||
float: right;
|
||||
text-indent: -10000px;
|
||||
font-size: 0;
|
||||
}
|
||||
#js-slide .jsmodule > h3 {
|
||||
background: url("/static/images/landingpage/bg-slide.png") bottom center no-repeat;
|
||||
padding-bottom: 7px;
|
||||
padding-left: 35px;
|
||||
}
|
||||
#js-slide .jsmodule > h3 span {
|
||||
background: #8ac3d7;
|
||||
color: #fff;
|
||||
padding: 10px 20px;
|
||||
-moz-border-radius: 10px 10px 0 0;
|
||||
-webkit-border-radius: 10px 10px 0 0;
|
||||
border-radius: 10px 10px 0 0;
|
||||
font-size: 18px;
|
||||
overflow: hidden;
|
||||
display: inline-block;
|
||||
font-weight: normal;
|
||||
}
|
|
@ -73,6 +73,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
/* remove before beta */
|
||||
.preview {
|
||||
border: solid 3px #e35351;
|
||||
|
@ -384,6 +401,11 @@ a#readon span {
|
|||
#welcome {
|
||||
overflow: hidden;
|
||||
}
|
||||
#locationhash {
|
||||
/* used solely to contain template variables for tabs.js; should not display */
|
||||
|
||||
display: none;
|
||||
}
|
||||
/* Explore column */
|
||||
#js-leftcol {
|
||||
float: left;
|
||||
|
|
|
@ -72,6 +72,23 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
.block-inner {
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
@ -296,27 +313,19 @@ span.my-setting.active {
|
|||
margin-left: 10px;
|
||||
margin-top: 10px;
|
||||
width: 100%;
|
||||
border-bottom: 4px solid #d6dde0;
|
||||
}
|
||||
#tabs ul.tabs li a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
#tabs.wantto {
|
||||
border-bottom: 4px solid #d6dde0;
|
||||
}
|
||||
#tabs.wantto ul.tabs li.tabs3.active a {
|
||||
background: #d6dde0;
|
||||
color: #3d4e53;
|
||||
}
|
||||
#tabs.ungluing {
|
||||
border-bottom: 4px solid #eabc7c;
|
||||
}
|
||||
#tabs.ungluing ul.tabs li.tabs2.active a {
|
||||
background: #eabc7c;
|
||||
color: #fff;
|
||||
}
|
||||
#tabs.unglued {
|
||||
border-bottom: 4px solid #8dc63f;
|
||||
}
|
||||
#tabs.unglued ul.tabs li.tabs1.active a {
|
||||
background: #8dc63f;
|
||||
color: #fff;
|
||||
|
@ -355,15 +364,15 @@ ul.tabs li a {
|
|||
background: #6994a3;
|
||||
color: #fff;
|
||||
}
|
||||
ul.tabs li.tabs1 a:hover, ul.tabs li.active a {
|
||||
ul.tabs li.tabs1 a:hover, ul.tabs li.tabs1.active a {
|
||||
background: #8dc63f;
|
||||
color: #ffffff;
|
||||
}
|
||||
ul.tabs li.tabs2 a:hover, ul.tabs li.active a {
|
||||
ul.tabs li.tabs2 a:hover, ul.tabs li.tabs2.active a {
|
||||
background: #eabc7c;
|
||||
color: #fff;
|
||||
}
|
||||
ul.tabs li.tabs3 a:hover, ul.tabs li.active a {
|
||||
ul.tabs li.tabs3 a:hover, ul.tabs li.tabs3.active a {
|
||||
background: #d6dde0;
|
||||
color: #3d4e53;
|
||||
}
|
||||
|
@ -441,3 +450,12 @@ div#content-block-content {
|
|||
height: 25px;
|
||||
display: block;
|
||||
}
|
||||
#js-slide .jsmodule {
|
||||
width: 660px !important;
|
||||
}
|
||||
#js-slide .jsmodule .slides_control {
|
||||
height: 325px !important;
|
||||
}
|
||||
#js-maincontainer-bot-block {
|
||||
padding-left: 16px;
|
||||
}
|
||||
|
|
|
@ -72,3 +72,20 @@
|
|||
border: none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.errors {
|
||||
-moz-border-radius: 32px;
|
||||
-webkit-border-radius: 32px;
|
||||
border-radius: 32px;
|
||||
border: solid #e35351 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
.errors li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
var $j = jQuery.noConflict();
|
||||
$j(function(){
|
||||
$j('#js-slideshow').slides({
|
||||
preload: true,
|
||||
preloadImage: '/static/images/landingpage/loading.gif',
|
||||
hoverPause: true,
|
||||
generateNextPrev: true,
|
||||
next: 'next',
|
||||
prev: 'prev',
|
||||
pagination: true,
|
||||
generatePagination: false,
|
||||
slideSpeed: 600,
|
||||
autoHeight: true
|
||||
});
|
||||
});
|
|
@ -1,13 +1,5 @@
|
|||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function(){
|
||||
$j('#user-block-hide').hide();
|
||||
$j('#user-block1 span').click(
|
||||
function() {
|
||||
$j(this).toggleClass("active");
|
||||
$j("#user-block-hide").slideToggle(300);
|
||||
}
|
||||
);
|
||||
|
||||
// caching selections to speed up response
|
||||
var tabs = $j('ul.tabs');
|
||||
var tabsId = $j('#tabs');
|
||||
|
@ -22,17 +14,23 @@
|
|||
var tabsLink3 = $j('li.tabs3');
|
||||
var contentBlockContent = $j('#content-block-content');
|
||||
|
||||
// on pageload we are showing only the Wishlisted tab, not Unglued or Active, by default
|
||||
if(location.hash == "#1") {
|
||||
tabsDash2.hide();
|
||||
// on pageload we are showing only the Active tab, not Unglued or Wishlisted
|
||||
if (location.hash == "#1" || location.hash == "#2" || location.hash == "#3") {
|
||||
tab = location.hash;
|
||||
} else {
|
||||
tab = $j('#locationhash').html();
|
||||
}
|
||||
|
||||
if(tab == "#1") {
|
||||
tabsDash2.hide();
|
||||
tabsDash3.hide();
|
||||
tabsLink1.addClass('active');
|
||||
} else if(location.hash =="#2") {
|
||||
tabsDash1.hide();
|
||||
} else if(tab =="#2") {
|
||||
tabsDash1.hide();
|
||||
tabsDash3.hide();
|
||||
tabsLink2.addClass('active');
|
||||
} else {
|
||||
tabsDash1.hide();
|
||||
tabsDash1.hide();
|
||||
tabsDash2.hide();
|
||||
tabsLink3.addClass('active');
|
||||
}
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
display:block;
|
||||
}
|
||||
|
||||
.book-detail-img {
|
||||
#book-detail-img {
|
||||
float: left;
|
||||
margin-right:10px;
|
||||
width:151px;
|
||||
|
@ -179,8 +179,9 @@
|
|||
.find-link {
|
||||
float:right;
|
||||
|
||||
a {
|
||||
padding: 0 0 0 4px;
|
||||
img {
|
||||
padding: 2px;
|
||||
.one-border-radius(5px);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -484,11 +485,32 @@ a{ color:#3d4e53; font-size:12px;}
|
|||
display:none;
|
||||
clear: both;
|
||||
padding-bottom: 10px;
|
||||
padding-left: 60px;
|
||||
padding-left: 60px;
|
||||
}
|
||||
|
||||
.show_more_edition:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.show_more_edition {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.errorlist {
|
||||
list-style-type: none;
|
||||
font-size: 14px;
|
||||
|
||||
li {
|
||||
margin-bottom: 7px;
|
||||
}
|
||||
|
||||
.errorlist {
|
||||
li {
|
||||
.errors;
|
||||
width: auto;
|
||||
height: auto;
|
||||
padding-left: 32px;
|
||||
padding-right: 32px;
|
||||
font-size: 12px;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,15 +1,6 @@
|
|||
@import "variables.less";
|
||||
@import "learnmore.less";
|
||||
|
||||
.clickyarrows() {
|
||||
text-indent:-10000px;
|
||||
font-size:0;
|
||||
width:15px;
|
||||
height:22px;
|
||||
display:block;
|
||||
position:absolute;
|
||||
top:45%;
|
||||
}
|
||||
#expandable {
|
||||
display: none;
|
||||
}
|
||||
|
@ -300,70 +291,6 @@ h2.page-heading {
|
|||
font-weight:normal !important;
|
||||
}
|
||||
|
||||
#js-maincontainer-bot-block {
|
||||
width:100%;
|
||||
clear:both;
|
||||
overflow:hidden;
|
||||
margin-top:55px;
|
||||
|
||||
#js-search {
|
||||
.one-border-radius(64px);
|
||||
background-color: @call-to-action;
|
||||
width:628px;
|
||||
height:80px;
|
||||
overflow:hidden;
|
||||
clear:both;
|
||||
color:#fff;
|
||||
|
||||
label {
|
||||
line-height:80px;
|
||||
font-size:18px;
|
||||
float:left;
|
||||
padding:0;
|
||||
width:auto;
|
||||
padding:0 15px 0 30px;
|
||||
}
|
||||
|
||||
form {
|
||||
float:left;
|
||||
width:210px;
|
||||
background:url("@{image-base}landingpage/search-box-two.png") 0 0 no-repeat;
|
||||
height:36px;
|
||||
display:block;
|
||||
overflow:hidden;
|
||||
margin-top:22px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#js-search input {
|
||||
&.inputbox {
|
||||
border:none;
|
||||
color:#66942e;
|
||||
.height(26px);
|
||||
font-size:13px;
|
||||
float:left;
|
||||
padding:0;
|
||||
margin:5px 0 5px 20px;
|
||||
width: 149px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
&.greenbutton {
|
||||
background:url("@{image-base}landingpage/search-button-two.png") 0 0 no-repeat;
|
||||
width:40px;
|
||||
height:40px;
|
||||
padding:0;
|
||||
margin:0;
|
||||
border:none;
|
||||
display:block;
|
||||
float: right;
|
||||
text-indent:-10000px;
|
||||
font-size:0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#js-maincontainer-faq {
|
||||
clear: both;
|
||||
overflow:hidden;
|
||||
|
@ -384,23 +311,6 @@ h2.page-heading {
|
|||
}
|
||||
}
|
||||
|
||||
#js-slide .jsmodule > h3 {
|
||||
background:url("@{image-base}landingpage/bg-slide.png") bottom center no-repeat;
|
||||
padding-bottom:7px;
|
||||
padding-left:35px;
|
||||
|
||||
span {
|
||||
background:@bright-blue;
|
||||
color:#fff;
|
||||
padding:10px 20px;
|
||||
.border-radius(10px, 10px, 0, 0);
|
||||
font-size:18px;
|
||||
overflow:hidden;
|
||||
display:inline-block;
|
||||
font-weight:normal;
|
||||
}
|
||||
}
|
||||
|
||||
h3.module-title {
|
||||
padding: 10px 0 0 0;
|
||||
font-size:17px;
|
||||
|
@ -411,29 +321,6 @@ h3.module-title {
|
|||
.google_signup_div;
|
||||
}
|
||||
|
||||
#js-slideshow {
|
||||
padding:0 30px;
|
||||
position:relative;
|
||||
|
||||
a.prev {
|
||||
.clickyarrows();
|
||||
background:url("@{image-base}landingpage/arrow-left.png") 0 0 no-repeat;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
a.next {
|
||||
.clickyarrows(rt);
|
||||
background:url("@{image-base}landingpage/arrow-right.png") 0 0 no-repeat;
|
||||
right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.spacer {
|
||||
float: left;
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
|
||||
.landingheader {
|
||||
border-bottom: solid 5px @medium-blue;
|
||||
float: left;
|
||||
|
|
|
@ -1,19 +1,8 @@
|
|||
@import "variables.less";
|
||||
|
||||
.errorlist {
|
||||
.one-border-radius(32px);
|
||||
border: solid @alert 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
.height(16px);
|
||||
text-align: center;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
clear: both;
|
||||
.errors;
|
||||
}
|
||||
|
||||
#login_centerer {
|
||||
|
|
|
@ -0,0 +1,104 @@
|
|||
@import "variables.less";
|
||||
|
||||
#js-maincontainer-bot-block {
|
||||
width:100%;
|
||||
clear:both;
|
||||
overflow:hidden;
|
||||
margin-top:55px;
|
||||
|
||||
#js-search {
|
||||
.one-border-radius(64px);
|
||||
background-color: @call-to-action;
|
||||
width:628px;
|
||||
height:80px;
|
||||
overflow:hidden;
|
||||
clear:both;
|
||||
color:#fff;
|
||||
|
||||
label {
|
||||
line-height:80px;
|
||||
font-size:18px;
|
||||
float:left;
|
||||
padding:0;
|
||||
width:auto;
|
||||
padding:0 15px 0 30px;
|
||||
}
|
||||
|
||||
form {
|
||||
float:left;
|
||||
width:210px;
|
||||
background:url("@{image-base}landingpage/search-box-two.png") 0 0 no-repeat;
|
||||
height:36px;
|
||||
display:block;
|
||||
overflow:hidden;
|
||||
margin-top:22px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#js-slideshow {
|
||||
padding:0 30px;
|
||||
position:relative;
|
||||
|
||||
a.prev {
|
||||
.clickyarrows();
|
||||
background:url("@{image-base}landingpage/arrow-left.png") 0 0 no-repeat;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
a.next {
|
||||
.clickyarrows(rt);
|
||||
background:url("@{image-base}landingpage/arrow-right.png") 0 0 no-repeat;
|
||||
right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.spacer {
|
||||
float: left;
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
|
||||
#js-search input {
|
||||
&.inputbox {
|
||||
border:none;
|
||||
color:#66942e;
|
||||
.height(26px);
|
||||
font-size:13px;
|
||||
float:left;
|
||||
padding:0;
|
||||
margin:5px 0 5px 20px;
|
||||
width: 149px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
&.greenbutton {
|
||||
background:url("@{image-base}landingpage/search-button-two.png") 0 0 no-repeat;
|
||||
width:40px;
|
||||
height:40px;
|
||||
padding:0;
|
||||
margin:0;
|
||||
border:none;
|
||||
display:block;
|
||||
float: right;
|
||||
text-indent:-10000px;
|
||||
font-size:0;
|
||||
}
|
||||
}
|
||||
|
||||
#js-slide .jsmodule > h3 {
|
||||
background:url("@{image-base}landingpage/bg-slide.png") bottom center no-repeat;
|
||||
padding-bottom:7px;
|
||||
padding-left:35px;
|
||||
|
||||
span {
|
||||
background:@bright-blue;
|
||||
color:#fff;
|
||||
padding:10px 20px;
|
||||
.border-radius(10px, 10px, 0, 0);
|
||||
font-size:18px;
|
||||
overflow:hidden;
|
||||
display:inline-block;
|
||||
font-weight:normal;
|
||||
}
|
||||
}
|
|
@ -322,6 +322,12 @@ a#readon {
|
|||
#welcome {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#locationhash {
|
||||
/* used solely to contain template variables for tabs.js; should not display */
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Explore column */
|
||||
#js-leftcol {
|
||||
float:left;
|
||||
|
|
|
@ -244,14 +244,13 @@ span.my-setting.active {
|
|||
margin-left: 10px;
|
||||
margin-top: 10px;
|
||||
width: 100%;
|
||||
border-bottom: 4px solid @blue-grey;
|
||||
|
||||
ul.tabs li a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.wantto {
|
||||
border-bottom: 4px solid @blue-grey;
|
||||
|
||||
ul.tabs li.tabs3.active a {
|
||||
background: @blue-grey;
|
||||
color: @text-blue;
|
||||
|
@ -259,8 +258,6 @@ span.my-setting.active {
|
|||
}
|
||||
|
||||
&.ungluing {
|
||||
border-bottom: 4px solid #eabc7c;
|
||||
|
||||
ul.tabs li.tabs2.active a {
|
||||
background: #eabc7c;
|
||||
color: #fff;
|
||||
|
@ -268,8 +265,6 @@ span.my-setting.active {
|
|||
}
|
||||
|
||||
&.unglued {
|
||||
border-bottom: 4px solid @green;
|
||||
|
||||
ul.tabs li.tabs1.active a {
|
||||
background: @green;
|
||||
color: #fff;
|
||||
|
@ -313,17 +308,17 @@ ul.tabs {
|
|||
color:#fff;
|
||||
}
|
||||
|
||||
&.tabs1 a:hover, &.active a {
|
||||
&.tabs1 a:hover, &.tabs1.active a {
|
||||
background:@green;
|
||||
color:#fff
|
||||
}
|
||||
|
||||
&.tabs2 a:hover, &.active a {
|
||||
&.tabs2 a:hover, &.tabs2.active a {
|
||||
background:#eabc7c;
|
||||
color:#fff;
|
||||
}
|
||||
|
||||
&.tabs3 a:hover, &.active a {
|
||||
&.tabs3 a:hover, &.tabs3.active a {
|
||||
background:@blue-grey;
|
||||
color:@text-blue;
|
||||
}
|
||||
|
@ -421,4 +416,16 @@ div#content-block-content {
|
|||
display:block;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#js-slide .jsmodule {
|
||||
width: 660px !important;
|
||||
|
||||
.slides_control {
|
||||
height: 325px !important;
|
||||
}
|
||||
}
|
||||
|
||||
#js-maincontainer-bot-block {
|
||||
padding-left: 16px;
|
||||
}
|
|
@ -119,4 +119,30 @@
|
|||
padding: 0 15px;
|
||||
border:none;
|
||||
margin: 5px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.errors {
|
||||
.one-border-radius(32px);
|
||||
border: solid @alert 4px;
|
||||
width: 90%;
|
||||
padding: 5px;
|
||||
font-weight: bold;
|
||||
padding: 7px 0;
|
||||
.height(16px);
|
||||
text-align: center;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
|
||||
.clickyarrows() {
|
||||
text-indent:-10000px;
|
||||
font-size:0;
|
||||
width:15px;
|
||||
height:22px;
|
||||
display:block;
|
||||
position:absolute;
|
||||
top:45%;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue