merge from master

pull/1/head
eric 2013-03-22 16:45:41 -04:00
commit d905f288d7
81 changed files with 683 additions and 289 deletions

View File

@ -10,7 +10,7 @@
{% if user.is_authenticated %}
<p> Welcome {{user.username}}. Your API key is <span style="font-weight:bold">{{api_key}}</span>.</p>
{% else %}
<p> Please <a href="{% url auth_login %}?next={% firstof request.path '/' %}"><span>sign in</span></a> first.</p>
<p> Please <a href="{% url superlogin %}?next={% firstof request.get_full_path|urlencode '/' %}"><span>sign in</span></a> first.</p>
{% endif %}
<h3>Basic API info</h3>

View File

@ -3,7 +3,7 @@
<head>
<title>unglue.it: {{work.title}}</title>
<link type="text/css" rel="stylesheet" href="/static/css/sitewide.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<style type="text/css">
body {
@ -35,10 +35,8 @@
<span id="content-block">
{% if work %}
{% with work.googlebooks_id as googlebooks_id %}
{% with work.last_campaign.status as status %}
{% include "book_panel.html" %}
{% endwith %}
{% endwith %}
{% else %}
<p class="classname">No work corresponding to ISBN {{isbn}} available</p>
{% endif %}

View File

@ -1199,6 +1199,14 @@ class UserProfile(models.Model):
elif self.avatar_source == FACEBOOK and self.facebook_id != None:
return 'https://graph.facebook.com/' + str(self.facebook_id) + '/picture'
@property
def social_auths(self):
socials= self.user.social_auth.all()
auths={}
for social in socials:
auths[social.provider]=True
return auths
# this was causing a circular import problem and we do not seem to be using
# anything from regluit.core.signals after this line
# from regluit.core import signals

View File

@ -2,6 +2,7 @@ from datetime import timedelta
from django import forms
from django.db import models
from django.contrib.auth.models import User
from django.contrib.auth.forms import AuthenticationForm
from django.conf import settings
from django.conf.global_settings import LANGUAGES
from django.core.validators import validate_email
@ -469,6 +470,14 @@ class FeedbackForm(forms.Form):
return cleaned_data
class AuthForm(AuthenticationForm):
def __init__(self, request=None, *args, **kwargs):
if request and request.method == 'GET':
saved_un= request.COOKIES.get('un', None)
super(AuthForm, self).__init__(initial={"username":saved_un},*args, **kwargs)
else:
super(AuthForm, self).__init__(*args, **kwargs)
class MsgForm(forms.Form):
msg = forms.CharField(widget=forms.Textarea(), error_messages={'required': 'Please specify a message.'})
@ -488,3 +497,4 @@ class MsgForm(forms.Form):
raise ValidationError("Work does not exist")
else:
raise ValidationError("Work is not specified")

View File

@ -0,0 +1,95 @@
base.html extra_css(empty) extra_js(empty) extra_head(empty)
404.html
500.html
503.html
about_active.html
about_active_empty.html
about_main.html
about_unglued.html
about_unglued_empty.html
about_wishlist.html
about_wishlist_empty.html
campaign_list.html extra_css extra_head
comments.html extra_css extra_head
download.html extra_js
goodreads_display.html extra_head
home.html extra_css extra_js
librarything.html
lockss.html
lockss_manifest.html
profiles/create_profile.html
profiles/edit_profile.html
profiles/profile_detail.html
profiles/profile_list.html
registration/registration_base.html extra_js extra_head extra_extra_head
basedocumentation.html extra_js extra_extra_head(empty)
api_help.html
about.html
about_smashwords.html
admins_only.html
campaign_admin.html extra_extra_head
claim.html
comments/base.html
comments/preview.html extra_css
donation.html extra_extra_head
emailshare.html extra_css
faq.html
feedback.html
front_matter.html extra_extra_head
languages.html
libraries.html extra_css extra_js
manage_account.html extra_extra_head
manage_campaign.html extra_extra_head
merge.html extra_extra_head
metrics.html
new_edition.html extra_extra_head
notification/base.html
notification/notice_settings.html extra_css extra_js
notification/notices.html extra_css
press.html
privacy.html
rh_tools.html extra_extra_head
rights_holders.html extra_extra_head
terms.html extra_css
thanks.html
basepledge.html extra_css extra_js extra_extra_head(empty)
donation_credit.html
donation_user_error.html
fund_the_pledge.html extra_extra_head
donation_credit.html extra_extra_head
pledge.html extra_extra_head
pledge_cancel.html extra_css
pledge_card_error.html
pledge_complete.html extra_extra_head
pledge_nevermind.html extra_css
pledge_recharge.html extra_css
pledge_user_error.html extra_extra_head
stripe.html extra_extra_head
registration/activation_complete.html
registration/activate.html
registration/login.html
registration/logout.html
registration/password_change_done.html
registration/password_change_form.html
registration/password_reset_complete.html
registration/password_reset_confirm.html
registration/password_reset_done.html
registration/password_reset_form.html
registration/registration_complete.html
registration/registration_form.html
registration/user_change_form.html
registration/welcome.html
search.html extra_css extra_head
stub.html
subjects.html
supporter.html extra_css extra_js extra_head
textpages.html extra_head
unglued_list.html extra_css extra_head
work.html extra_css extra_js
work_list.html extra_css extra_head
bypub_list.html
nonprofit_base.html extra_extra_head
nonprofit.html extra_extra_head

View File

@ -2,7 +2,7 @@
<div class="right_border"><a href="{% url faq_location 'rightsholders' %}">Read the FAQ for authors and publishers</a></div>
<div class="right_border"><a href="{% url press %}">Our press coverage</a></div>
{% if not user.is_authenticated %}
<div class="signuptoday"><a href="{% url registration_register %}">Sign up today</a></div>
<div class="signuptoday"><a href="{% url registration_register %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}">Sign up today</a></div>
{% else %}
<div class="signuptoday"><a href="{% url campaign_list 'ending' %}">Our campaigns</a></div>
{% endif %}

View File

@ -21,14 +21,13 @@
<link type="text/css" rel="stylesheet" href="/static/css/sitewide2.css" />
<link REL="SHORTCUT ICON" HREF="/static/images/favicon.ico">
{% block extra_css %}{% endblock %}
{% block base_js %}
<script type="text/javascript" src="{{ jquery_home }}"></script>
{% endblock %}
<script type="text/javascript" src="/static/js/hijax.js?v=2"></script>
{% block extra_js %}
{% endblock %}
<script type="text/javascript" src="/static/js/jquery.cookie.js"></script>
<script type="text/javascript" src="/static/js/sitewide.js"></script>
<script type="text/javascript" src="/static/js/watermark_init.js"></script>
<script type="text/javascript" src="/static/js/watermark_change.js"></script>
{% block extra_js %}
{% endblock %}
{% if show_langs %}
<script>
var $j = jQuery.noConflict();
@ -39,26 +38,11 @@
});
</script>
{% endif %}
<script>
var $j = jQuery.noConflict();
$j(document).ready(function(){
// make drop-down menu happen when they click on their name
$j('#authenticated').click(function(){
$j('#user_menu').toggle();
$j(this).toggleClass('highlight');
});
// but suppress it if they're clicking on the badge link to the notifications page
$j('#i_haz_notifications_badge').click(function() {
event.stopPropagation();
});
});
</script>
{% block extra_head %}
{% endblock %}
</head>
<body>
<div id="feedback">
<p><a href="/feedback/?page={{request.build_absolute_uri|urlencode:""}}" class="nounderline">Feedback</a></p>
</div>
@ -120,13 +104,13 @@
{% else %}
<div class="js-topmenu">
<ul class="menu">
<li><a href="{% url auth_login %}?next={% firstof request.path '/' %}" class="hijax"><span>Sign In</span></a></li>
<li><a href="{% url superlogin %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}" class="hijax"><span>Sign In</span></a></li>
{% if not suppress_search_box %}
{% ifnotequal request.get_full_path "/accounts/register/" %}
{% comment %}
don't display this on landing page where it's superseded by big signup box in splash area
{% endcomment %}
<li id="expander" class="last"><a href="{% url registration_register %}"><span>Sign Up</span></a></li>
<li id="expander" class="last"><a href="{% url registration_register %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}"><span>Sign Up</span></a></li>
{% endifnotequal %}
{% endif %}
</ul>

View File

@ -1,4 +1,10 @@
{% extends "registration/registration_base.html" %}
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% endblock %}
{% block extra_js %}
<script type="text/javascript" src="/static/js/definitions.js"></script>

View File

@ -14,102 +14,129 @@
<div class="listview panelback side2">
{% comment %} hover state of panel {% endcomment %}
<div class="greenpanel2">
<div class="greenpanel_top">
<div class="unglued_white">
{% if last_campaign %}
{% comment %}top section: campaign info + optional action button. Varies by campaign status.{% endcomment %}
{% if status == 'SUCCESSFUL' %}
<b>UNGLUED!</b>
<p><b>On:</b> {{ deadline|date:"M d, Y" }}</p>
<p><b>Raised:</b> {{ work.last_campaign.current_total|floatformat:0|intcomma }}</p>
{% if first_ebook %}
<a href="{% url download workid %}" class="hijax"><span class="read_itbutton"><span>Read it Now</span></span></a>
{% else %}
<span class="read_itbutton"><span>Coming Soon</span></span>
{% endif %}
{% else %}{% if status == 'ACTIVE' %}
<b>UNGLUE IT!</b>
<p><b>${{ work.last_campaign.current_total|floatformat:0|intcomma }}</b> raised</p>
<p><b>${{ work.last_campaign.target|floatformat:0|intcomma }}</b> needed</p>
<p>by {{ deadline|naturalday:"M d, Y" }}</p>
{% if request.user.id in supporters %}
<span class="read_itbutton"><span>Pledged!</span></span>
{% else %}
<a href="{% url pledge work_id=workid %}"><span class="read_itbutton pledge"><span>Pledge</span></span></a>
{% endif %}
{% else %}{% if status == 'INITIALIZED' %}
<p>Campaign coming soon!</p>
{% else %}{% if status == 'SUSPENDED' %}
<p>This campaign has been suspended.</p><br /><p>See the <a href="{{faqurl}}">FAQ</a> for details.</p>
{% else %}{% if status == 'WITHDRAWN' %}
<p>This campaign has been withdrawn.</p><br /><p>See the <a href="{{faqurl}}">FAQ</a> for details.</p>
{% else %}{% if status == 'UNSUCCESSFUL' %}
<p>{{ deadline }}</p>
<p>Watch for a new campaign.</p>
{% else %}
{% if first_ebook %}
<b>AVAILABLE!</b>
<a href="{{ work.ebooks.0.url }}"><span class="read_itbutton"><span>Read it Now</span></span></a>
{% else %}
<p>No campaign yet.</p><br /><p>But if lots of ungluers wishlist this book, maybe there will be!</p>
{% endif %}
{% endif %}{% endif %}{% endif %}{% endif %}{% endif %}{% endif %}
</div>
</div>
{% comment %}link to work page{% endcomment %}
<div class="moreinfo">
<a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}" target="_top">More Info</a>
</div>
<div class="greenpanel_top">
{% comment %}bibliographic data{% endcomment %}
<div class="white_text">
<p><a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">{{ title }}</a></p>
<p>{{ author }}</p>
</div>
{% comment %}
status of book vis-a-vis user's wishlist.
Non-logged-in users should see login to add option.
Logged-in users, book on wishlist:
If they've pledged, that should be displayed, with no removal option.
If they're on their supporter page, they should have the option to remove it (except when pledged).
Elsewhere, they should see that it's on their wishlist.
Everyone else should have add-to-wishlist option.
(Needed ID for wishlist.js varies on search & supporter page.)
{% endcomment %}
{% if request.user.is_anonymous %}
<div class="moreinfo create-account">
<span title="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">Login to Add</span>
{% comment %}link to work page{% endcomment %}
<div class="moreinfo">
<a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}" target="_top">More Info</a>
</div>
{% else %}{% if request.user.id in supporters %}
<div class="moreinfo on-wishlist">
<span>Pledged!</span>
<div class="unglued_white">
<b>UNGLUED!</b>
<p><b>On:</b> {{ deadline|date:"M d, Y" }}</p>
<p><b>Raised:</b> {{ work.last_campaign.current_total|floatformat:0|intcomma }}</p>
</div>
{% else %}{% ifequal supporter request.user %}
<div class="moreinfo remove-wishlist">
<span id="p{{ workid }}">Un-wishlist</span>
</div>
{% else %}{% if work in wishlist %}
<div class="moreinfo on-wishlist">
<a href="#">On Wishlist!</a>
<div class="add_button">
{% include "book_panel_addbutton.html" %}
</div>
<div class="white_text bottom_button" >
{% if first_ebook %}
<a href="{% url download workid %}" class="hijax"><span class="read_itbutton button_text"><span>Read it Now</span></span></a>
{% else %}
<div class="moreinfo add-wishlist">
{% if on_search_page %}
<span class="gb_id" id="p{{ googlebooks_id }}">Add&nbsp;to&nbsp;Wishlist</span>
{% else %}
<span class="work_id" id="p{{ workid }}">Add&nbsp;to&nbsp;Wishlist</span>
<a href="{% url work workid %}"><span class="read_itbutton button_text"><span>Coming Soon</span></span></a>
{% endif %}
</div>
{% endif %}{% endifequal %}{% endif %}{% endif %}
{% else %}{% if status == 'ACTIVE' %}
<div class="greenpanel_top">
{% comment %}bibliographic data{% endcomment %}
<div class="white_text">
<p><a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">{{ title }}</a></p>
<p>{{ author }}</p>
</div>
{% comment %}link to work page{% endcomment %}
<div class="moreinfo">
<a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}" target="_top">More Info</a>
</div>
<div class="unglued_white">
<b>UNGLUE IT!</b>
<p><b>${{ work.last_campaign.current_total|floatformat:0|intcomma }}</b> raised</p>
<p><b>${{ work.last_campaign.target|floatformat:0|intcomma }}</b> needed</p>
<p>by {{ deadline|naturalday:"M d, Y" }}</p>
</div>
</div>
{% if request.user.id in supporters %}
<div class="white_text bottom_button">
{% include "book_panel_addbutton.html" %}
</div>
{% else %}
<div class="add_button">
{% include "book_panel_addbutton.html" %}
</div>
<div class="white_text bottom_button" >
<a href="{% url pledge work_id=workid %}"><span class="read_itbutton pledge button_text"><span>Pledge</span></span></a>
</div>
{% endif %}
{% else %}
<div class="greenpanel_top">
{% comment %}bibliographic data{% endcomment %}
<div class="white_text">
<p><a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">{{ title }}</a></p>
<p>{{ author }}</p>
</div>
{% comment %}link to work page{% endcomment %}
<div class="moreinfo">
<a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}" target="_top">More Info</a>
</div>
<div class="unglued_white">
{% if status == 'INITIALIZED' %}
<p>Campaign coming soon!</p>
{% else %}{% if status == 'SUSPENDED' %}
<p>This campaign has been suspended.</p><br /><p>See the <a href="{{faqurl}}">FAQ</a> for details.</p>
{% else %}{% if status == 'WITHDRAWN' %}
<p>This campaign has been withdrawn.</p><br /><p>See the <a href="{{faqurl}}">FAQ</a> for details.</p>
{% else %}{% if status == 'UNSUCCESSFUL' %}
<p>{{ deadline }}</p>
<p>Watch for a new campaign.</p>
{% endif %}{% endif %}{% endif %}{% endif %}
</div>
</div>
<div class="white_text bottom_button">
{% include "book_panel_addbutton.html" %}
</div>
{% endif %}{% endif %}
{% else %}
<div class="greenpanel_top">
{% comment %}bibliographic data{% endcomment %}
<div class="white_text">
<p><a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">{{ title }}</a></p>
<p>{{ author }}</p>
</div>
{% comment %}link to work page{% endcomment %}
<div class="moreinfo">
<a href="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}" target="_top">More Info</a>
</div>
<div class="unglued_white">
{% if first_ebook %}
<b>AVAILABLE!</b>
<div class="add_button">
{% include "book_panel_addbutton.html" %}
</div>
{% else %}
<p>No campaign yet.</p><br /><p>But if lots of ungluers wishlist this book, maybe there will be!</p>
{% endif %}
</div>
</div>
<div class="white_text bottom_button">
{% if first_ebook %}
<a href="{% url download workid %}" class="hijax"><span class="read_itbutton button_text"><span>Read it Now</span></span></a>
{% else %}
{% include "book_panel_addbutton.html" %}
{% endif %}
</div>
{% endif %}
</div>
</div>

View File

@ -0,0 +1,42 @@
{% comment %}
status of book vis-a-vis user's wishlist.
Non-logged-in users should see login to add option.
Logged-in users, book on wishlist:
If they've pledged, that should be displayed, with no removal option.
If they're on their supporter page, they should have the option to remove it (except when pledged).
Elsewhere, they should see that it's on their wishlist.
Everyone else should have add-to-wishlist option.
(Needed ID for wishlist.js varies on search & supporter page.)
{% endcomment %}
{% if request.user.is_anonymous %}
<div class="moreinfo create-account">
<span title="{% if workid %}{% url work workid %}{% else %}{% url googlebooks googlebooks_id %}{% endif %}">Login to Add</span>
</div>
{% else %}{% if request.user.id in supporters %}
<div class="moreinfo on-wishlist">
<a href="{% url work workid %}">Pledged!</a>
</div>
{% else %}{% ifequal supporter request.user %}
{% if wishlist %}
<div class="moreinfo remove-wishlist">
<span id="p{{ workid }}">Un-wishlist</span>
</div>
{% else %}
{% comment %} on the empty-wishlist slideshow {% endcomment %}
<div class="moreinfo add-wishlist">
<span class="work_id" id="p{{ workid }}">Add&nbsp;to&nbsp;Wishlist</span>
</div>
{% endif %}
{% else %}{% if work in wishlist %}
<div class="moreinfo on-wishlist">
<a href="/#">On Wishlist!</a>
</div>
{% else %}
<div class="moreinfo add-wishlist">
{% if on_search_page %}
<span class="gb_id" id="p{{ googlebooks_id }}">Add&nbsp;to&nbsp;Wishlist</span>
{% else %}
<span class="work_id" id="p{{ workid }}">Add&nbsp;to&nbsp;Wishlist</span>
{% endif %}
</div>
{% endif %}{% endifequal %}{% endif %}{% endif %}

View File

@ -3,7 +3,6 @@
{% block extra_extra_head %}
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
{{ form.media.css }}
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}"></script>
{{ form.media.js }}
{% endblock %}

View File

@ -6,14 +6,13 @@
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/supporter_layout.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" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/lists.css">
{% endblock %}
{% block extra_head %}
<script>
location.hash = "#2";
</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>
<script type="text/javascript" src="/static/js/greenpanel.js"></script>
@ -83,12 +82,10 @@ location.hash = "#2";
{% for campaign in campaign_list %}
<div class="{% cycle 'row1' 'row2' %}">
{% with campaign.status as status %}
{% with campaign.deadline as deadline %}
{% with campaign.work.googlebooks_id as googlebooks_id %}
{% with campaign.work as work %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}{% endwith %}
{% endwith %}{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-1">

View File

@ -11,7 +11,7 @@
<div class="tabs-content" id="js-maincol">
{% if request.user.is_anonymous %}
<p>You must be <a href="{% url auth_login %}?next={{ request.path }}">logged in</a> to comment.</p>
<p>You must be <a href="{% url superlogin %}?next={{ request.get_full_path|urlencode }}">logged in</a> to comment.</p>
{% else %}
<form action="{% comment_form_target %}" method="post">{% csrf_token %}
{% if next %}<div><input type="hidden" name="next" value="{{ next }}" /></div>{% endif %}

View File

@ -7,7 +7,6 @@
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{{ transfer_form.media.css }}
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}" ></script>
{{ transfer_form.media.js }}
{% endblock %}

View File

@ -3,12 +3,6 @@
{% block title %}You Have Donation Credits{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% endblock %}
{% block doccontent %}
<div style="height:15px"></div>

View File

@ -3,12 +3,6 @@
{% block title %}Please Log in as...{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% endblock %}
{% block doccontent %}
<div style="height:15px"></div>
@ -17,7 +11,7 @@
<div><h2>Wrong user for donation credit</h2>
<div>
<p>Unglue.it would like to process your donation credit, but you are currently logged in as <code>{{request.user.username}}</code>. Your donation credit from {{nonprofit.name}} for ${{ envelope.amount }}.{{ envelope.cents }} is designated for <code>{{ envelope.username }}</code>. To record your credit, you need to <a href='{% url auth_logout %}?next={{ request.get_full_path|urlencode }}'>log out</a>, and then <a href='{% url auth_login %}?next={{ request.get_full_path|urlencode }}'>log in</a> as <code>{{ envelope.username }}</code>. If you have any problem, don't hesitate to contact <a href="mailto:support@gluejar.com?subject={{ request.get_full_path|urlencode }}">unglue.it support</a>.
<p>Unglue.it would like to process your donation credit, but you are currently logged in as <code>{{request.user.username}}</code>. Your donation credit from {{nonprofit.name}} for ${{ envelope.amount }}.{{ envelope.cents }} is designated for <code>{{ envelope.username }}</code>. To record your credit, you need to <a href='{% url auth_logout %}?next={{ request.get_full_path|urlencode }}'>log out</a>, and then <a href='{% url superlogin %}?next={{ request.get_full_path|urlencode }}'>log in</a> as <code>{{ envelope.username }}</code>. If you have any problem, don't hesitate to contact <a href="mailto:support@gluejar.com?subject={{ request.get_full_path|urlencode }}">unglue.it support</a>.
</p>
</div>
</div>

View File

@ -22,7 +22,7 @@
<a href="https://www.facebook.com/sharer.php?u=https://{{ site.domain }}{% url work work.id|urlencode:"" %}"><li class="facebook first"><span>Facebook</span></li></a>
<a href="https://twitter.com/intent/tweet?url={{request.build_absolute_uri|urlencode:"" }}&amp;text=I%27m%20enjoying%20{{ work.title|urlencode }}%2C%20a%20free%2C%20non%2DDRM%20ebook%2E%20You%20can%20too%21"><li class="twitter"><span>Twitter</span></li></a>
{% endwith %}
<a href="{% url emailshare '' %}?next={% url work work.id|urlencode:"" %}"><li class="email"><span>Email</span></li></a>
<a href="{% url emailshare '' %}?next={% url work work.id %}"><li class="email"><span>Email</span></li></a>
<a href="#" id="embed2"><li class="embed"><span>Embed</span></li></a>
<div id="widgetcode2">Copy/paste this into your site:<br /><textarea rows="7" cols="22">&lt;iframe src="https://{{ request.META.HTTP_HOST }}/api/widget/{{ work.first_isbn_13 }}/" width="152" height="325" frameborder="0"&gt;&lt;/iframe&gt;</textarea></div>
</ul>

View File

@ -25,7 +25,6 @@
<ul class="menu level3">
<li class="first"><a href="{% url bypub_list 'popular' pubname %}"><span>Most popular</span></a></li>
<li><a href="{% url bypub_list pubname %}"><span>By Title</span></a></li>
<li><a href="{% url bypub_list 'pubdate' pubname %}"><span>By Date Published</span></a></li>
</ul>
</li>
{% endif %}

View File

@ -101,7 +101,7 @@ If you believe you are a rights holder and would like to discuss ungluing your w
<dl>
<dt>I forgot my password. What do I do?</dt>
<dd>
Click on this <a href="/accounts/password/reset/">forgot your password</a> link (you can also find it 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.
Click on this <a href="{% url django.contrib.auth.views.password_reset %}">forgot your password</a> link (you can also find it at the bottom of the <a href="{% url superlogin %}">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.
</dd>
<dt>I never received an activation email after I signed up, or my activation email isn't working. What do I do?</dt>
@ -121,7 +121,7 @@ Click on this <a href="/accounts/password/reset/">forgot your password</a> link
<dt>How can I change my profile name or password, or the email address associated with my account?</dt>
<dd>At the bottom of every page there's a link to an <a href="/accounts/edit/">account editing page</a> where you can change your profile name, password, and email.</dd>
<dd>At the bottom of every page there's a link to an <a href="{% url regluit.frontend.views.edit_user %}">account editing page</a> where you can change your profile name, password, and email.</dd>
{% comment %}
We have no functionality for this at this time. Should we?

View File

@ -4,8 +4,6 @@
{% block title %}Fund Your Pledge{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% include "stripe_stuff.html" %}
<script type="text/javascript" src="/static/js/loader-gif.js"></script>
<script type="application/x-javascript">
@ -119,7 +117,7 @@ $j(document).ready(function() {
</form>
</div>
<br />
<p>Want to use a different card? You can change your credit card info on your <a href="{% url manage_account %}?next={{ request.path }}#your_payment_info">Account &amp; Pledges page</a>.
<p>Want to use a different card? You can change your credit card info on your <a href="{% url manage_account %}?next={{ request.get_full_path|urlencode }}#your_payment_info">Account &amp; Pledges page</a>.
</p>
{% else %}
<div id="authorize" {% if nonprofit.is_on %}class="off clearfix"{% else %}class="clearfix"{% endif %}>

View File

@ -1,26 +1,31 @@
{% extends "base.html" %}
{% load truncatechars %}
{% block title %}&#151; Support Free eBooks{% endblock %}
{% block extra_js %}
<script type="text/javascript" src="{{ jquery_ui_home }}"></script>
{% endblock %}
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/landingpage2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/searchandbrowse.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/learnmore.css" />
{% endblock %}
{% block extra_js %}
{% block base_js %}
<script src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}"></script>
<!-- toggle to panelview state instead of listview default -->
<script type="text/javascript">
jQuery(document).ready(function($) {
$('.listview').addClass("panelview").removeClass("listview");
});
var $j = jQuery.noConflict();
function put_un_in_cookie(){
$j.cookie('un', $j('#id_username_pop').val(), {path: '/', expires: 90 });
return true;
}
function put_un_in_cookie2(){
$j.cookie('un', $j('#id_username_main').val(), {path: '/', expires: 90 });
return true;
}
</script>
<script type="text/javascript" src="/static/js/definitions.js"></script>
@ -46,7 +51,7 @@
<h3 class="module-title">Start Ungluing Now!</h3>
<div class="jsmod-content">
{% if not request.user.is_authenticated %}
<form action='/accounts/register/' method='post'>{% csrf_token %}
<form action="{% url registration_register %}" method="post" onsubmit="return put_un_in_cookie();" >{% csrf_token %}
<div class="user-name">
<label>Username</label>
<input id="id_username_pop" type="text" class="required" name="username" maxlength="30" size="30" />
@ -68,7 +73,7 @@
</div>
</form>
<div class="google_signup">
<a href="/socialauth/login/google?next={{request.build_absolute_uri}}"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a><div>Or: <a href="/socialauth/login/google?next={{request.build_absolute_uri}}">Sign Up With Google</a></div>
<a href="/socialauth/login/google?next=/next/"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a><div>Or: <a href="/socialauth/login/google?next=/next/">Sign Up With Google</a></div>
</div>
{% else %}
<div>
@ -122,7 +127,7 @@
<h3 class="module-title">Start Ungluing Now!</h3>
{% if not request.user.is_authenticated %}
<div class="jsmod-content">
<form action='/accounts/register/' method='post'>{% csrf_token %}
<form action='{% url registration_register %}' method='post' onsubmit="return put_un_in_cookie2();">{% csrf_token %}
<div class="user-name">
<label>Username</label>
<input id="id_username_main" type="text" class="required" name="username" maxlength="30" size="30" />
@ -143,7 +148,7 @@
<input type="submit" class="signup" value="sign up" />
</div>
<div class="google_signup">
<a href="/socialauth/login/google?next={{request.build_absolute_uri}}"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a><div><a href="/socialauth/login/google?next={{request.build_absolute_uri}}">Sign Up With Google</a></div>
<a href="/socialauth/login/google?next=/next/"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a><div><a href="/socialauth/login/google?next=/next/">Sign Up With Google</a></div>
</div>
</form>
</div>

View File

@ -27,8 +27,8 @@
<p><strong>We need your help, though.</strong> We can't unglue ebooks all by ourselves; we need lots of people to pitch in. If you'd like to share free, unlimited, no-DRM, privacy-respecting ebooks with your patrons, here are some ways you can help:</p>
<dl>
<dt><a href="{% url registration_register %}">Sign up.</a></dt>
<dd>Starting an account, for yourself or your library, is free, and lets you add books to your wishlist, comment on them, and support campaigns. <a href="{% url registration_register %}">Sign up here.</a></dd>
<dt><a href="{% url registration_register %}?next={% request.get_full_path|urlencode }}">Sign up.</a></dt>
<dd>Starting an account, for yourself or your library, is free, and lets you add books to your wishlist, comment on them, and support campaigns. <a href="{{ request.get_full_path|urlencode}}">Sign up here.</a></dd>
<dt>Stay in touch.</dt>
<dd>You can follow us on Twitter (<a href="http://twitter.com/unglueit">@unglueit</a>), <a href="http://facebook/com/unglueit">Facebook</a>, and our <a href="http://blog.unglue.it">blog</a>, and <a href="http://eepurl.com/fKLfI">subscribe to our newsletter</a> (1-2 emails per month).</dd>
<dt>Add unglued ebooks to your collection.</dt>

View File

@ -107,7 +107,7 @@ $j(document).ready(function(){
<h2> Other Account Management Tools </h2>
<ul>
<li>Want to <a href="{% url auth_password_change %}">change your password</a>?</li>
<li>Want to <a href="/accounts/edit/">change your username or email address</a>?</li>
<li>Want to <a href="{% url regluit.frontend.views.edit_user %}">change your username or email address</a>?</li>
<li>Want to <a href="{% url notification_notice_settings %}">manage your contact preferences</a>?</li>
</ul>
{% endblock %}

View File

@ -3,7 +3,6 @@
{% block extra_extra_head %}
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
{{ form.media.css }}
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}" ></script>
{{ form.media.js }}
{% endblock %}

View File

@ -3,7 +3,6 @@
{% block extra_extra_head %}
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
{{ form.media.css }}
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}" ></script>
{{ form.media.js }}
{% endblock %}

View File

@ -10,7 +10,7 @@
{% block extra_js %}
<script type="text/javascript" src="/static/js/definitions.js"></script>
{% block.super %}
<script>
$j(document).ready(function() {
jQuery.post("/ml/status/", function(data){

View File

@ -4,9 +4,6 @@
{% block title %}Pledge{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
<script type="text/javascript" src="/static/js/reconcile_pledge.js"></script>
<script type="text/javascript" src="/static/js/loader-gif.js"></script>
{% endblock %}

View File

@ -3,7 +3,7 @@
{% block title %}Pledge Cancelled{% endblock %}
{% block extra_extra_head %}
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
{% endblock %}

View File

@ -3,12 +3,6 @@
{% block title %}Credit card processing Error{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% endblock %}
{% block doccontent %}
<div style="height:15px"></div>

View File

@ -4,12 +4,10 @@
{% block title %}Pledge Completed{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/searchandbrowse.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel.css" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
<script src="/static/js/slides.min.jquery.js"></script>
<script src="/static/js/slideshow.js"></script>
<script src="/static/js/greenpanel.js"></script>

View File

@ -3,7 +3,7 @@
{% block title %}Pledge Cancelled{% endblock %}
{% block extra_extra_head %}
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
{% endblock %}

View File

@ -3,7 +3,7 @@
{% block title %}Pledge Recharge{% endblock %}
{% block extra_extra_head %}
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
{% endblock %}

View File

@ -3,12 +3,6 @@
{% block title %}Please Log in as...{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
{% endblock %}
{% block doccontent %}
<div style="height:15px"></div>
@ -17,7 +11,7 @@
<div><h2>Error: Wrong user for a pledge transaction</h2>
<div>
<p>Unglue.it would like to process your pledge, but you are currently logged in as <code>{{request.user.username}}</code>. To complete your pledge, you need to <a href='{% url auth_logout %}?next={{ request.get_full_path|urlencode }}'>log out</a>, and then <a href='{% url auth_login %}?next={{ request.get_full_path|urlencode }}'>log in</a> as <code>{{ transaction.user.username }}</code>. If you have any problem, don't hesitate to contact <a href="mailto:support@gluejar.com?subject={{ request.get_full_path|urlencode }}">unglue.it support</a>.
<p>Unglue.it would like to process your pledge, but you are currently logged in as <code>{{request.user.username}}</code>. To complete your pledge, you need to <a href='{% url auth_logout %}?next={{ request.get_full_path|urlencode }}'>log out</a>, and then <a href='{% url superlogin %}?next={{ request.get_full_path|urlencode }}'>log in</a> as <code>{{ transaction.user.username }}</code>. If you have any problem, don't hesitate to contact <a href="mailto:support@gluejar.com?subject={{ request.get_full_path|urlencode }}">unglue.it support</a>.
</p>
</div>
</div>

View File

@ -3,7 +3,7 @@
{% block doccontent %}
{% if not user.is_authenticated %}
{% if account %}
Thanks {{ account }}, activation complete! You may now <a href='{% url auth_login %}'>sign in</a> using the username and password you set at registration.
Thanks {{ account }}, activation complete! You may now <a href='{% url superlogin %}'>sign in</a> using the username and password you set at registration.
{% else %}
Oops &ndash; it seems that your activation key is invalid. Please check the url again.
{% endif %}

View File

@ -0,0 +1,78 @@
{% extends "registration/registration_base.html" %}
{% load humanize %}
{% block title %}Pledge Step 1: Login or Create an Account{% endblock %}
{% block news %}
{% endblock %}
{% block extra_css %}
<style>
.widecolumn {
width: 80%;
margin: 0 auto;
}
.halfcolumn1 {
float: left;
clear: left;
}
.halfcolumn2 {
float: right;
clear: right;
}
</style>
{% endblock %}
{% block extra_js %}
{{ block.super }}
<script type="text/javascript">
function put_un_in_cookie(){
$j.cookie('un', $j('#id_username_main').val(), {path: '/', expires: 90 });
return true;
}
</script>
{% endblock %}
{% block content %}
<div class="jsmodule rounded clearfix widecolumn">
<h3>You'll need an account, since we won't charge your card unless the campaign succeeds!</h3>
<div class="halfcolumn2 login_box">
<h3>Get an Unglue.it account:</h3>
<p>... we just have to confirm your email address.</p>
<form class="login" action='{% url registration_register %}' method='post' onsubmit="return put_un_in_cookie();">{% csrf_token %}
<div class="user-name">
<label>Username</label>
<input id="id_username_main" type="text" class="required" name="username" maxlength="30" size="30" />
</div>
<div class="email">
<label>Email</label>
<input id="id_email_main" type="text" class="required" name="email" maxlength="75" size="30" />
</div>
<div class="password">
<label>Password</label>
<input id="id_password1_main" type="password" class="required" name="password1" size="30" />
</div>
<div class="password">
<label>Password (again):</label>
<input id="id_password2_main" type="password" class="required" name="password2" size="30" />
</div>
<div class="button">
<input type="submit" class="signup" value="Sign Up" />
</div>
</form>
</div>
<div class="halfcolumn1 login_box">
<h3>Use Google to Sign In:</h3>
<div class="google_signup{% if socials.google %} errorlist{% endif %}">
<div><a href="/socialauth/login/google?next={{ next }}"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /> Sign In with Google</a></div>
</div>
</div>
<div class="halfcolumn1 login_box">
<h3>Already Have an Unglue.it Account?</h3>
<a href="{% url auth_password_reset %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}">Forgot</a> your password? </li>
{% include "login_form.html" %}
</div>
</div>
{% endblock %}

View File

@ -3,7 +3,9 @@
{% block doccontent %}
<div id="lightbox_content">
{% if form.errors %}
<p class="errorlist">Your username and password didn't match. Please try again.</p>
{% for error in form.non_field_errors %}
<p class="errorlist">{{ error }}</p>
{% endfor %}
Make sure the username box has your <b>username, not your email</b> -- some browsers automatically fill in your email. We're working on fixing this bug.
{% endif %}
{% if not user.is_authenticated %}
@ -13,12 +15,15 @@ Make sure the username box has your <b>username, not your email</b> -- some brow
<br />
<a href="{% url auth_password_reset %}">Forgot</a> your password? <a href="{% url registration_register %}">Need an account</a>? <a href="/faq/basics/account">Other questions</a>?
<a href="{% url auth_password_reset %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}">Forgot</a> your password? <a href="{% url registration_register %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}{{ request.get_full_path|urlencode}}{% endif %}">Need an account</a>? <a href="/faq/basics/account">Other questions</a>?
<br /><br />
<div class="google_signup">
<a href="/socialauth/login/google?next=/next/"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a><div>Or: <a href="/socialauth/login/google?next=/next/">Sign in with Google</a></div>
<div {% if socials.google %}class="errorlist"{% endif %}>
<div><a href="/socialauth/login/google?next=/next/"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png" alt="google" /></a></div>
<div>Or: <a href="/socialauth/login/google?next=/next/">Sign in with Google</a></div>
</div>
</div>
{% else %}
<div>

View File

@ -1,5 +1,5 @@
<!-- login_form.html -->
<form method="post" action="{% url django.contrib.auth.views.login %}" class="login">{% csrf_token %}
<form method="post" action="{% url superlogin %}" class="login">{% csrf_token %}
{{ form.username.label_tag }}
{{ form.username }}
{{ form.password.label_tag }}

View File

@ -18,8 +18,8 @@
{% endifequal %}
{% else %}
<div>You must be logged in to change your password.</div>
<a href="{% url auth_login %}?next={% firstof request.path '/' %}" class="nounderline"><div class="actionbutton">Log in</div></a>
<a href="{% url superlogin %}?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}/next/{% endif %}" class="nounderline"><div class="actionbutton">Log in</div></a>
{% endif %}
<p>Want to <a href="/accounts/edit/">change your username</a> instead?</p>
<p>Want to <a href="{% url regluit.frontend.views.edit_user %}">change your username</a> instead?</p>
{% endblock %}

View File

@ -1,6 +1,5 @@
{% extends "base.html" %}
{% block extra_js %}
<script type="text/javascript" src="/static/js/jquery.cookie.js"></script>
<script type="text/javascript">
var $j = jQuery.noConflict();
function getQueryVariable(variable) {

View File

@ -1,9 +1,18 @@
{% extends "registration/registration_base.html" %}
{% load urldecode %}
{% block title %}Activation email sent{% endblock %}
{% block doccontent %}
{% if not user.is_authenticated %}
<p>
An account activation email has been sent. Please check your email and click on the link to activate your account. We're also sending you an invitation to our email newsletter. It comes out about twice a month. Put "gluenews@gluejar.com" in your contact list to make sure you get it.
</p>
{% if request.COOKIES.next %}
<p>
You can also go back to <a href="{{ request.COOKIES.next|urldecode }}">the page where you were</a>.
</p>
{% endif %}
{% else %}
<div>
You are logged in as <a href="{% url supporter request.user %}">{{ request.user.username }}</a>.

View File

@ -1,13 +1,21 @@
{% extends "registration/registration_base.html" %}
{% block title %}Register for an account{% endblock %}
{% block extra_js %}
{{ block.super }}
<script type="text/javascript">
function put_un_in_cookie(){
$j.cookie('un', $j('#id_username').val(), {path: '/', expires: 90 });
return true;
}
</script>
{% endblock %}
{% block doccontent %}
{% if not user.is_authenticated %}
<h3>Sign up for a Unglue.it account:</h3>
<form method='post' action=''>{% csrf_token %}
<form method='post' action='' onsubmit="return put_un_in_cookie();">{% csrf_token %}
{{ form }}
<input type="submit" value="Send activation email" />
</form>
@ -15,7 +23,7 @@
<div>
<div class="google_signup">
<h3>Or use an account you already have:</h3>
<a href="/socialauth/login/google?next=/"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png"><div>Sign in with Google</div></a>
<a href="/socialauth/login/google?next={% if request.GET.next %}{{ request.GET.next|urlencode }}{% else %}/next/{% endif %}"><img src="{{ STATIC_URL }}images/auth/google_32_noborder.png"><div>Sign in with Google</div></a>
</div>
{% else %}
<div>

View File

@ -23,7 +23,7 @@
</div>
<div>
<h2>Other Account Tools</h2>
<p>Want to <a href="/accounts/password/change/">change your password</a>?</p>
<p>Want to <a href="{% url auth_password_change %}">change your password</a>?</p>
<p>... or <a href="{% url manage_account %}">manage your pledges and payment info</a>?</div>
{% endblock %}

View File

@ -3,7 +3,6 @@
{% block extra_extra_head %}
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
<link href="/static/selectable/css/dj.selectable.css" type="text/css" media="all" rel="stylesheet" />
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}"></script>
<script type="text/javascript" src="/static/selectable/js/jquery.dj.selectable.js"></script>
@ -156,7 +155,7 @@ Any questions not covered here? Please email us at <a href="mailto:rights@gluej
<li>Use the Claim option on the Rights tab of each book's page.</li>
<li>Agree to our <a href="{{ termsurl }}">Terms</a> on the following page. This includes agreeing that you are making the claim in good faith and can substantiate that you have legal control over worldwide electronic rights to the work.</li>
<li>If you have any questions or you claim a work by mistake, email us.</li>
<li>We will review your claim. We may contact you at {{ request.user.email }} if we have any questions. If this is the wrong email address, please <a href="/accounts/edit">change the email address</a> for your account.</li>
<li>We will review your claim. We may contact you at {{ request.user.email }} if we have any questions. If this is the wrong email address, please <a href="{% url regluit.frontend.views.edit_user %}">change the email address</a> for your account.</li>
</ul>
<li>Once your claim is approved, you can set up a campaign for it. All the campaigns you can manage will be listed on this page.</li>
<li>You may optionally add other Unglue.it users as campaign managers, if you'd like them to be able to edit your campaign. That option will also appear on this page.</li>

View File

@ -3,7 +3,6 @@
{% block extra_extra_head %}
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/ui-lightness/jquery-ui.css" type="text/css" media="screen">
{{ form.media.css }}
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="{{ jquery_ui_home }}" ></script>
{{ form.media.js }}
{% endblock %}

View File

@ -1,11 +1,10 @@
{% extends "base.html" %}
{% block extra_css %}
<link rel="stylesheet" href="/static/css/book_list.css">
<link rel="stylesheet" href="/static/css/book_panel.css">
<link rel="stylesheet" href="/static/css/book_panel2.css">
<link rel="stylesheet" href="/static/css/search.css">
{% endblock %}
{% block extra_head %}
<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="/static/js/greenpanel.js"></script>
<script type="text/javascript" src="/static/js/toggle.js"></script>
@ -49,8 +48,9 @@ $j(document).ready(function() {
<div id="js-maincol-fr">
<div class="js-maincol-inner">
<div id="content-block">
{% if campaign_works %}
<div class="content-block-heading">
<h2 class="content-heading">Google Books search results</span></h2>
<h2 class="content-heading">Unglue.it Campaigns</span></h2>
<ul class="book-list-view">
<li>View As:</li>
<li class="view-list">
@ -65,16 +65,46 @@ $j(document).ready(function() {
</li>
</ul>
</div>
<div id="content-block-content"><div id="results">
{% for work in results %}
<div id="content-block-content-1"><div id="unglueit-results">
{% for work in campaign_works %}
<div class="{% cycle 'row1' 'row2' %} book">
{% with work.googlebooks_id as googlebooks_id %}
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
</div>
{% endfor %}
</div></div>
{% endif %}
<div class="content-block-heading">
<h2 class="content-heading"><a href="https://www.google.com/search?q={{q }}&amp;tbm=bks">Google Books</a> search results</span></h2>
{% if not campaign_works %}
<ul class="book-list-view">
<li>View As:</li>
<li class="view-list">
<a href="#" id="toggle-list">
<img src="/static/images/booklist/view-list.png" align="view list" title="view list" height="21" width="24" alt="use list view" />
</a>
</li>
<li class="view-list">
<a href="#" id="toggle-panel">
<img src="/static/images/booklist/view-icon.png" align="view icon" title="view icon" height="22" width="22" alt="use panel view" />
</a>
</li>
</ul>
{% endif %}
</div>
<div id="content-block-content"><div id="results">
{% for work in results %}
{% if not work.campaigns %}
<div class="{% cycle 'row1' 'row2' %} book">
{% with work.googlebooks_id as googlebooks_id %}
{% with 'yes' as on_search_page %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}{% endwith %}
{% endwith %}{% endwith %}
</div>
{% endif %}
{% empty %}
<h2>Sorry, couldn't find that!</h2>
<div class="js-search">

View File

@ -6,10 +6,9 @@
<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" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
{% endblock %}
{% block extra_js %}
<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>
<script type="text/javascript" src="/static/js/greenpanel.js"></script>
@ -355,11 +354,9 @@ there's no tab for seeing ALL my books, only the filters! huh.
{% lazy_paginate 20 works_unglued using "works_unglued" %}
{% for work in works_unglued %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-1">
@ -372,11 +369,9 @@ there's no tab for seeing ALL my books, only the filters! huh.
{% lazy_paginate 20 works_active using "works_active" %}
{% for work in works_active %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-2">
@ -389,11 +384,9 @@ there's no tab for seeing ALL my books, only the filters! huh.
{% lazy_paginate 20 works_wished using "works_wished" %}
{% for work in works_wished %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-3">

View File

@ -6,11 +6,10 @@
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/supporter_layout.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" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/lists.css" />
{% endblock %}
{% block extra_head %}
<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>
<script type="text/javascript" src="/static/js/greenpanel.js"></script>
@ -91,11 +90,9 @@
{% lazy_paginate 20 work_list using "work_list" %}
{% for work in work_list %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-1">

View File

@ -204,7 +204,7 @@
{% if user.is_authenticated %}
{% render_comment_form for work %}
{% else %}
<p>You must be <a href="{% url auth_login %}?next={{ request.path }}">logged in</a> to comment.</p>
<p>You must be <a href="{% url superlogin %}?next={{ request.get_full_path|urlencode }}">logged in</a> to comment.</p>
{% endif %}
</div>
</div>

View File

@ -6,13 +6,11 @@
{% block extra_css %}
<link type="text/css" rel="stylesheet" href="/static/css/supporter_layout.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" />
<link type="text/css" rel="stylesheet" href="/static/css/book_panel2.css" />
<link type="text/css" rel="stylesheet" href="/static/css/lists.css" />
{% endblock %}
{% block extra_head %}
<script type="text/javascript" src="/static/js/wishlist.js"></script>
<script type="text/javascript" src="{{ jquery_home }}"></script>
<script type="text/javascript" src="/static/js/jquery.cookie.js"></script>
<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/toggle.js"></script>
@ -89,11 +87,9 @@
{% lazy_paginate 20 works_unglued using "works_unglued" %}
{% for work in works_unglued %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-1">
@ -105,11 +101,9 @@
{% lazy_paginate 20 works_active using "works_active" %}
{% for work in works_active %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-2">
@ -122,11 +116,9 @@
{% lazy_paginate 20 works_wished using "works_wished" %}
{% for work in works_wished %}
<div class="{% cycle 'row1' 'row2' %}">
{% with work.last_campaign_status as status %}
{% with work.last_campaign.deadline as deadline %}
{% with work.googlebooks_id as googlebooks_id %}
{% include "book_panel.html" %}
{% endwith %}{% endwith %}{% endwith %}
{% endwith %}
</div>
{% endfor %}
<div class="pagination content-block-heading tabs-3">

View File

@ -0,0 +1,14 @@
"""
{{ raw|urldecode }}
"""
from django.template.defaultfilters import stringfilter
from django.template.base import Library
from urllib import unquote
register = Library()
@register.filter()
@stringfilter
def urldecode(value):
return unquote(value)

View File

@ -20,6 +20,7 @@ urlpatterns = patterns(
url(r"^next/$", "next", name="next"),
url(r"^supporter/(?P<supporter_username>[^/]+)/$", "supporter", {'template_name': 'supporter.html'}, name="supporter"),
url(r"^accounts/manage/$", login_required(ManageAccount.as_view()), name="manage_account"),
url(r'^accounts/superlogin/$', 'superlogin', name='superlogin'),
url(r"^search/$", "search", name="search"),
url(r"^privacy/$", TemplateView.as_view(template_name="privacy.html"),
name="privacy"),
@ -63,7 +64,7 @@ urlpatterns = patterns(
url(r"^googlebooks/(?P<googlebooks_id>.+)/$", "googlebooks", name="googlebooks"),
url(r"^donation/$", login_required(DonationView.as_view()), name="donation"),
url(r"^donation/credit/(?P<token>.+)/$", login_required(DonationCredit.as_view()), name="donation_credit"),
url(r"^pledge/(?P<work_id>\d+)/$", login_required(PledgeView.as_view()), name="pledge"),
url(r"^pledge/(?P<work_id>\d+)/$", login_required(PledgeView.as_view(),login_url='/accounts/login/pledge/'), name="pledge"),
url(r"^pledge/cancel/(?P<campaign_id>\d+)$", login_required(PledgeCancelView.as_view()), name="pledge_cancel"),
url(r"^pledge/complete/$", login_required(PledgeCompleteView.as_view()), name="pledge_complete"),
url(r"^pledge/modified/$", login_required(PledgeModifiedView.as_view()), name="pledge_modified"),

View File

@ -22,6 +22,7 @@ from django.core.urlresolvers import reverse
from django.core.exceptions import ObjectDoesNotExist
from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.contrib.auth.views import login
from django.contrib.comments import Comment
from django.contrib.sites.models import Site
from django.db.models import Q, Count, Sum
@ -52,7 +53,7 @@ from regluit.frontend.forms import RightsHolderForm, UserClaimForm, LibraryThin
from regluit.frontend.forms import getManageCampaignForm, DonateForm, CampaignAdminForm, EmailShareForm, FeedbackForm
from regluit.frontend.forms import EbookForm, CustomPremiumForm, EditManagersForm, EditionForm, PledgeCancelForm
from regluit.frontend.forms import getTransferCreditForm, CCForm, CloneCampaignForm, PlainCCForm, WorkForm, OtherWorkForm
from regluit.frontend.forms import MsgForm
from regluit.frontend.forms import MsgForm, AuthForm
from regluit.payment.manager import PaymentManager
from regluit.payment.models import Transaction, Account
from regluit.payment import baseprocessor
@ -143,6 +144,17 @@ def stub(request):
def acks(request, work):
return render(request,'front_matter.html', {'campaign': work.last_campaign()})
def superlogin(request, **kwargs):
extra_context = None
if request.method == 'POST' and request.user.is_anonymous():
username=request.POST.get("username", "")
try:
user=models.User.objects.get(username=username)
extra_context={"socials":user.profile.social_auths}
except:
pass
return login(request, extra_context=extra_context, authentication_form=AuthForm, **kwargs)
def work(request, work_id, action='display'):
work = safe_get_work(work_id)
if action == "acks":
@ -1503,7 +1515,7 @@ def supporter(request, supporter_username, template_name):
def edit_user(request):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('auth_login'))
return HttpResponseRedirect(reverse('superlogin'))
form=UserData()
emailform = UserEmail()
if request.method == 'POST':
@ -1560,6 +1572,12 @@ def search(request):
page = int(request.GET.get('page', 1))
results = gluejar_search(q, user_ip=request.META['REMOTE_ADDR'], page=page)
if page==1:
work_query = Q(title__icontains=q) | Q(editions__authors__name__icontains=q) | Q(subjects__name__iexact=q)
campaign_works = models.Work.objects.exclude(campaigns = None).filter(work_query).distinct()
else:
campaign_works = None
# flag search result as on wishlist as appropriate
if not request.user.is_anonymous():
ungluers = userlists.other_users(request.user, 5)
@ -1576,7 +1594,8 @@ def search(request):
context = {
"q": q,
"results": works,
"ungluers": ungluers
"ungluers": ungluers,
"campaign_works": campaign_works
}
return render(request, 'search.html', context)

View File

@ -4,8 +4,6 @@
{% block title %}Stripe{% endblock %}
{% block extra_extra_head %}
<link type="text/css" rel="stylesheet" href="/static/css/campaign.css" />
<link type="text/css" rel="stylesheet" href="/static/css/pledge.css" />
<link href="/static/stripe/tag.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="https://js.stripe.com/v1/"></script>

View File

@ -193,6 +193,7 @@ EMAIL_HOST = 'smtp.gluejar.com'
DEFAULT_FROM_EMAIL = 'notices@gluejar.com'
SERVER_EMAIL = 'notices@gluejar.com'
ACCOUNT_ACTIVATION_DAYS = 30
SESSION_COOKIE_AGE = 3628800 # 6 weeks
# django-socialauth
AUTHENTICATION_BACKENDS = (
@ -231,7 +232,7 @@ SOCIAL_AUTH_PIPELINE = (
TWITTER_EXTRA_DATA = [('profile_image_url_https', 'profile_image_url_https'),('screen_name','screen_name')]
LOGIN_URL = "/accounts/login/"
LOGIN_URL = "/accounts/superlogin/"
LOGIN_REDIRECT_URL = "/"
LOGOUT_URL = "/accounts/logout/"

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.comments{clear:both;padding:5px;margin:0 5px 8px 0;width:95%}.comments.row1{background:#f6f9f9}.comments.row2{background:#fff}.comments div{float:left}.comments div img{margin:0 5px}.comments .image img{height:100px}.comments:after{content:".";display:block;height:0;clear:both;visibility:hidden}.comments .nonavatar{width:620px}.comments .nonavatar span{padding-right:5px}.comments .nonavatar span.text:before{content:"\201C";font-size:15px;font-weight:bold}.comments .nonavatar span.text:after{content:"\201D";font-size:15px;font-weight:bold}.comments .avatar{float:right;margin:0 auto;padding-top:5px}.official{border:3px #b8dde0 solid;margin-top:3px;margin-bottom:5px;padding-left:2px}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.comments{clear:both;padding:5px;margin:0 5px 8px 0;width:95%}.comments.row1{background:#f6f9f9}.comments.row2{background:#fff}.comments div{float:left}.comments div img{margin:0 5px}.comments .image img{height:100px}.comments:after{content:".";display:block;height:0;clear:both;visibility:hidden}.comments .nonavatar{width:620px}.comments .nonavatar span{padding-right:5px}.comments .nonavatar span.text:before{content:"\201C";font-size:15px;font-weight:bold}.comments .nonavatar span.text:after{content:"\201D";font-size:15px;font-weight:bold}.comments .avatar{float:right;margin:0 auto;padding-top:5px}.official{border:3px #b8dde0 solid;margin-top:3px;margin-bottom:5px;padding-left:2px}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}ul.social a:hover{text-decoration:none}ul.social li{padding:5px 0 5px 30px!important;height:28px;line-height:28px!important;margin:0!important;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}ul.social li.facebook{background:url("/static/images/icons/facebook.png") 10px center no-repeat;cursor:pointer}ul.social li.facebook span{padding-left:10px}ul.social li.facebook:hover{background:#8dc63f url("/static/images/icons/facebook-hover.png") 10px center no-repeat}ul.social li.facebook:hover span{color:#fff}ul.social li.twitter{background:url("/static/images/icons/twitter.png") 10px center no-repeat;cursor:pointer}ul.social li.twitter span{padding-left:10px}ul.social li.twitter:hover{background:#8dc63f url("/static/images/icons/twitter-hover.png") 10px center no-repeat}ul.social li.twitter:hover span{color:#fff}ul.social li.email{background:url("/static/images/icons/email.png") 10px center no-repeat;cursor:pointer}ul.social li.email span{padding-left:10px}ul.social li.email:hover{background:#8dc63f url("/static/images/icons/email-hover.png") 10px center no-repeat}ul.social li.email:hover span{color:#fff}ul.social li.embed{background:url("/static/images/icons/embed.png") 10px center no-repeat;cursor:pointer}ul.social li.embed span{padding-left:10px}ul.social li.embed:hover{background:#8dc63f url("/static/images/icons/embed-hover.png") 10px center no-repeat}ul.social li.embed:hover span{color:#fff}.download_container{width:75%;margin:auto}#lightbox_content a{color:#6994a3}#lightbox_content .signuptoday a{color:white}#lightbox_content h2,#lightbox_content h3,#lightbox_content h4{margin-top:15px}#lightbox_content h2 a{font-size:18.75px}#lightbox_content .ebook_download a{margin:auto 5px auto 0;font-size:15px}#lightbox_content .ebook_download img{vertical-align:middle}#lightbox_content .logo{font-size:15px}#lightbox_content .logo img{-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px;height:50px;width:50px;margin-right:5px}#lightbox_content .unglued,#lightbox_content .not_unglued{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;margin-left:-0.25%;padding:.5%;padding-bottom:15px;margin-bottom:5px;width:74%}#lightbox_content .unglued h3,#lightbox_content .not_unglued h3{margin-top:5px}#lightbox_content .unglued{border:solid 2px #8dc63f}#lightbox_content .not_unglued{border:solid 2px #d6dde0}#lightbox_content a.add-wishlist .on-wishlist,#lightbox_content a.success,a.success:hover{text-decoration:none;color:#3d4e53}#lightbox_content a.success,a.success:hover{cursor:default}#lightbox_content ul{padding-left:50px}#lightbox_content ul li{margin-bottom:4px}.border{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;border:solid 2px #d6dde0;margin:5px auto;padding-right:5px;padding-left:5px}.sharing{float:right;padding:.5%!important;width:23%!important;min-width:105px}.sharing ul{padding:.5%!important}.sharing .jsmod-title{-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;height:auto}.sharing .jsmod-title span{padding:5%!important;color:white!important;font-style:normal}#widgetcode2{display:none;border:1px solid #d6dde0;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;padding:10px}#widgetcode2 textarea{max-width:90%}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}ul.social a:hover{text-decoration:none}ul.social li{padding:5px 0 5px 30px!important;height:28px;line-height:28px!important;margin:0!important;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}ul.social li.facebook{background:url("/static/images/icons/facebook.png") 10px center no-repeat;cursor:pointer}ul.social li.facebook span{padding-left:10px}ul.social li.facebook:hover{background:#8dc63f url("/static/images/icons/facebook-hover.png") 10px center no-repeat}ul.social li.facebook:hover span{color:#fff}ul.social li.twitter{background:url("/static/images/icons/twitter.png") 10px center no-repeat;cursor:pointer}ul.social li.twitter span{padding-left:10px}ul.social li.twitter:hover{background:#8dc63f url("/static/images/icons/twitter-hover.png") 10px center no-repeat}ul.social li.twitter:hover span{color:#fff}ul.social li.email{background:url("/static/images/icons/email.png") 10px center no-repeat;cursor:pointer}ul.social li.email span{padding-left:10px}ul.social li.email:hover{background:#8dc63f url("/static/images/icons/email-hover.png") 10px center no-repeat}ul.social li.email:hover span{color:#fff}ul.social li.embed{background:url("/static/images/icons/embed.png") 10px center no-repeat;cursor:pointer}ul.social li.embed span{padding-left:10px}ul.social li.embed:hover{background:#8dc63f url("/static/images/icons/embed-hover.png") 10px center no-repeat}ul.social li.embed:hover span{color:#fff}.download_container{width:75%;margin:auto}#lightbox_content a{color:#6994a3}#lightbox_content .signuptoday a{color:white}#lightbox_content h2,#lightbox_content h3,#lightbox_content h4{margin-top:15px}#lightbox_content h2 a{font-size:18.75px}#lightbox_content .ebook_download a{margin:auto 5px auto 0;font-size:15px}#lightbox_content .ebook_download img{vertical-align:middle}#lightbox_content .logo{font-size:15px}#lightbox_content .logo img{-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px;height:50px;width:50px;margin-right:5px}#lightbox_content .unglued,#lightbox_content .not_unglued{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;margin-left:-0.25%;padding:.5%;padding-bottom:15px;margin-bottom:5px;width:74%}#lightbox_content .unglued h3,#lightbox_content .not_unglued h3{margin-top:5px}#lightbox_content .unglued{border:solid 2px #8dc63f}#lightbox_content .not_unglued{border:solid 2px #d6dde0}#lightbox_content a.add-wishlist .on-wishlist,#lightbox_content a.success,a.success:hover{text-decoration:none;color:#3d4e53}#lightbox_content a.success,a.success:hover{cursor:default}#lightbox_content ul{padding-left:50px}#lightbox_content ul li{margin-bottom:4px}.border{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;border:solid 2px #d6dde0;margin:5px auto;padding-right:5px;padding-left:5px}.sharing{float:right;padding:.5%!important;width:23%!important;min-width:105px}.sharing ul{padding:.5%!important}.sharing .jsmod-title{-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;height:auto}.sharing .jsmod-title span{padding:5%!important;color:white!important;font-style:normal}#widgetcode2{display:none;border:1px solid #d6dde0;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;padding:10px}#widgetcode2 textarea{max-width:90%}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.learnmore_block{float:left;width:100%;clear:both;border-top:solid 1px #8ac3d7;margin-top:20px}.learnmore_block .quicktour{width:270px;float:left;font-style:italic;line-height:20px;font-size:13px;margin-top:20px}.learnmore_block .quicktour .highlight{font-weight:bold}.learnmore_block .quicktour.last{padding-right:0;width:270px}.learnmore_block .quicktour.last .signup{color:#8dc63f;font-weight:bold;margin-top:10px}.learnmore_block .quicktour.last .signup img{margin-left:5px;vertical-align:middle;margin-bottom:3px}.learnmore_block .movingrightalong{background:url("/static/images/landingpage/quicktour-arrow.png") no-repeat center;height:100px;width:75px;float:left;margin-top:20px}#block-intro-text div{display:none;line-height:25px;padding-bottom:10px}#block-intro-text div#active{display:inherit}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.learnmore_block{float:left;width:100%;clear:both;border-top:solid 1px #8ac3d7;margin-top:20px}.learnmore_block .quicktour{width:270px;float:left;font-style:italic;line-height:20px;font-size:13px;margin-top:20px}.learnmore_block .quicktour .highlight{font-weight:bold}.learnmore_block .quicktour.last{padding-right:0;width:270px}.learnmore_block .quicktour.last .signup{color:#8dc63f;font-weight:bold;margin-top:10px}.learnmore_block .quicktour.last .signup img{margin-left:5px;vertical-align:middle;margin-bottom:3px}.learnmore_block .movingrightalong{background:url("/static/images/landingpage/quicktour-arrow.png") no-repeat center;height:100px;width:75px;float:left;margin-top:20px}#block-intro-text div{display:none;line-height:25px;padding-bottom:10px}#block-intro-text div#active{display:inherit}

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.doc h2.unglueit_loves_libraries{font-size:110px;text-align:center}.doc h3{text-align:center;font-style:italic;margin-bottom:37.5px}#widgetcode{display:none}ul.social.pledge{margin:0!important}ul.social.pledge li{margin-top:7px!important}.clearfix{margin-bottom:14px}a,dt a{color:#6994a3}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.doc h2.unglueit_loves_libraries{font-size:110px;text-align:center}.doc h3{text-align:center;font-style:italic;margin-bottom:37.5px}#widgetcode{display:none}ul.social.pledge{margin:0!important}ul.social.pledge li{margin-top:7px!important}.clearfix{margin-bottom:14px}a,dt a{color:#6994a3}

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.user-block2{width:48%;font-size:14px;padding-right:2%}#js-leftcol li.active_lang a{font-weight:bold}.show_langs:hover{text-decoration:underline}#lang_list{display:none}#tabs-1,#tabs-2,#tabs-3{margin-left:0}ul.tabs li a{height:41px;line-height:18px;padding-top:5px}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.user-block2{width:48%;font-size:14px;padding-right:2%}#js-leftcol li.active_lang a{font-weight:bold}.show_langs:hover{text-decoration:underline}#lang_list{display:none}#tabs-1,#tabs-2,#tabs-3{margin-left:0}ul.tabs li a{height:41px;line-height:18px;padding-top:5px}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.notices_menu{float:right;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#edf3f4;padding:10px 20px;margin:-15px auto 7px 7px}.notices_menu a{font-size:13px;font-weight:bold}#js-main-container{float:none!important;padding-right:15px}th{text-align:left}tr{line-height:24px}tr.row1{background:#edf3f4}td{padding-left:7px;padding-right:7px}td#last{padding:0}table input[type="submit"]{float:right;margin-right:0}.comments{border:solid 3px #d6dde0;margin:3px auto}.comments hr{margin:10px auto 5px;color:#d6dde0;background-color:#d6dde0;height:2px;border:0}.comments .comments_book{padding:5px;border:solid 5px #edf3f4;margin-right:10px;margin-bottom:10px;max-width:80px}.comments .comments_book img{max-width:80px}.comments .comments_textual{padding:10px 5px 5px}.comments .comments_textual div{margin-bottom:5px}.comments .comments_info{border-bottom:solid 1px #d6dde0;padding:5px}.comments .comments_info div{float:left}.comments .comments_info .comments_graphical{padding:5px auto}.comments .comments_info span{text-indent:0}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}.notices_menu{float:right;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#edf3f4;padding:10px 20px;margin:-15px auto 7px 7px}.notices_menu a{font-size:13px;font-weight:bold}#js-main-container{float:none!important;padding-right:15px}th{text-align:left}tr{line-height:24px}tr.row1{background:#edf3f4}td{padding-left:7px;padding-right:7px}td#last{padding:0}table input[type="submit"]{float:right;margin-right:0}.comments{border:solid 3px #d6dde0;margin:3px auto}.comments hr{margin:10px auto 5px;color:#d6dde0;background-color:#d6dde0;height:2px;border:0}.comments .comments_book{padding:5px;border:solid 5px #edf3f4;margin-right:10px;margin-bottom:10px;max-width:80px}.comments .comments_book img{max-width:80px}.comments .comments_textual{padding:10px 5px 5px}.comments .comments_textual div{margin-bottom:5px}.comments .comments_info{border-bottom:solid 1px #d6dde0;padding:5px}.comments .comments_info div{float:left}.comments .comments_info .comments_graphical{padding:5px auto}.comments .comments_info span{text-indent:0}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}#login_centerer{padding:10px 25%;width:960px}#registration{width:960px;padding:10px;margin:0 auto;padding:10px 0;font-size:13px;line-height:19.5px}#registration .helptext{font-style:italic}#registration .helptext:before{white-space:pre;content:"\A"}#login{border:solid 3px #d6dde0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;margin:10px auto;float:left;padding:10px;width:50%}#login .google_signup{padding:14px 0}#login .google_signup div{height:32px;line-height:32px;float:left;padding-left:5px;font-size:15px}#login .google_signup img{float:left;height:32px;width:32px}#login input[type="text"],#login input[type="password"]{width:90%}.actionbutton{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:0;margin:5px 0;float:left}#welcomesearch label{display:block;margin:0 auto;font-size:19px;padding-bottom:10px}#welcomesearch p{margin-bottom:5px}#welcomesearch form{margin:0 auto;width:210px;background:url("/static/images/landingpage/search-box-two.png") 0 0 no-repeat;height:36px;display:block;overflow:hidden}#welcomesearch input.inputbox{border:0;color:#66942e;height:26px;line-height:26px;font-size:13px;float:left;padding:0;margin:5px 0 5px 20px;width:149px;outline:0}#welcomesearch input.inputbox:focus{border:0}#welcomesearch input.greenbutton[type="submit"]{background:url("/static/images/landingpage/search-button-two.png") 0 0 no-repeat;width:40px;height:40px;padding:0;margin:0;border:0;display:block;float:right;text-indent:-10000px;font-size:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.welcomealternatives{border-top:1px solid #d6dde0;margin-top:10px;padding-top:5px}label:before{content:"\A";white-space:pre}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}#login_centerer{padding:10px 25%;width:960px}#registration{width:960px;padding:10px;margin:0 auto;padding:10px 0;font-size:13px;line-height:19.5px}#registration .helptext{font-style:italic}#registration .helptext:before{white-space:pre;content:"\A"}.login_box{border:solid 3px #d6dde0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;margin:10px auto;padding:10px;width:45%}.login_box .google_signup{padding:14px 0}.login_box .google_signup div{height:48px;line-height:48px;float:left;padding-left:5px;font-size:15px;display:inline-block}.login_box .google_signup img{float:left;height:48px;width:48px}.login_box .google_signup img{margin-right:15px}.login_box .google_signup a{font-size:20px}.login_box input[type="text"],.login_box input[type="password"]{width:90%}#login{border:solid 3px #d6dde0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;margin:10px auto;float:left;padding:10px;width:50%}#login .google_signup{padding:14px 0}#login .google_signup div{height:32px;line-height:32px;float:left;padding-left:5px;font-size:15px;display:inline-block}#login .google_signup img{float:left;height:32px;width:32px}#login input[type="text"],#login input[type="password"]{width:90%}.actionbutton{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:0;margin:5px 0;float:left}#welcomesearch label{display:block;margin:0 auto;font-size:19px;padding-bottom:10px}#welcomesearch p{margin-bottom:5px}#welcomesearch form{margin:0 auto;width:210px;background:url("/static/images/landingpage/search-box-two.png") 0 0 no-repeat;height:36px;display:block;overflow:hidden}#welcomesearch input.inputbox{border:0;color:#66942e;height:26px;line-height:26px;font-size:13px;float:left;padding:0;margin:5px 0 5px 20px;width:149px;outline:0}#welcomesearch input.inputbox:focus{border:0}#welcomesearch input.greenbutton[type="submit"]{background:url("/static/images/landingpage/search-button-two.png") 0 0 no-repeat;width:40px;height:40px;padding:0;margin:0;border:0;display:block;float:right;text-indent:-10000px;font-size:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.welcomealternatives{border-top:1px solid #d6dde0;margin-top:10px;padding-top:5px}label:before{content:"\A";white-space:pre}

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}span.rounded{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}span.rounded>span{padding:7px 7px;min-width:15px;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;text-align:center;display:inline-block}span.rounded>span .hovertext{display:none}span.rounded>span:hover .hovertext{display:inline}span.grey{background:#bacfd6 url("/static/images/header-button-undefined.png") left bottom repeat-x}.listview .rounded{line-height:normal;margin-right:0}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}span.rounded{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}span.rounded>span{padding:7px 7px;min-width:15px;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;text-align:center;display:inline-block}span.rounded>span .hovertext{display:none}span.rounded>span:hover .hovertext{display:inline}span.grey{background:#bacfd6 url("/static/images/header-button-undefined.png") left bottom repeat-x}.listview .rounded{line-height:normal;margin-right:0}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px 16px 0 0;-webkit-border-radius:16px 16px 0 0;border-radius:16px 16px 0 0;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}
.header-text{height:36px;line-height:36px;display:block;text-decoration:none;font-weight:bold;letter-spacing:-0.05em}.panelborders{border-width:1px 0;border-style:solid none;border-color:#fff}.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}.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:0;margin:5px 0}.errors{-moz-border-radius:16px;-webkit-border-radius:16px;border-radius:16px;border:solid #e35351 3px;clear:both;width:90%;height:auto;line-height:16px;padding:7px 0;font-weight:bold;font-size:13px;text-align:center}.errors li{list-style:none;border:0}

View File

@ -23,6 +23,16 @@ $j(document).ready(function() {
jQuery.getScript('https://platform.readmill.com/send.js');
}
//need to push next cookie for sign-in links
var vars = $j(this).attr("href").split("next=");
if (vars.length>1){
next=vars[1];
if(next!='') {
next = next.replace(/[\x22\x27\x3c\x3e]/g,'');
$j.cookie('next', next, {path: '/'});
}
}
// fade-out rest of page elements on expand
$j('#feedback, #js-page-wrap, #footer').css({"opacity": "0.07"});
$j('#about_expandable').css({'position': 'absolute'});

73
static/js/sitewide.js Normal file
View File

@ -0,0 +1,73 @@
var $j = jQuery.noConflict();
$j(document).ready(function() {
// hijack a link with class "hijax" to show its content in a lightbox instead
// allows for ajaxy presentation of things like download links in a way that
// degrades gracefully for non-js users
$j("#js-page-wrap, #footer").on("click", "a.hijax", function(event) {
event.preventDefault();
$j("#lightbox").load($j(this).attr("href") + " #lightbox_content", function() {
// centering divs of dynamic width: shockingly hard. make sure lightbox is centered on load.
var hijaxWidth = $j('#about_expandable').width() + 28;
var windowWidth = $j(document).width();
var marginWidth = (windowWidth - hijaxWidth)/2;
$j('#about_expandable').css({'margin-left': marginWidth});
// position div vertically relative to top of viewport, to ensure visibility
// regardless of where on the page the user clicked to activate it
var marginTop = window.pageYOffset;
$j('#about_expandable').css({'margin-top': marginTop});
});
if ($j(this).attr("href").substr(-9,8) == "download") {
jQuery.getScript('https://platform.readmill.com/send.js');
}
//need to push next cookie for sign-in links
var vars = $j(this).attr("href").split("next=");
if (vars.length>1){
next=vars[1];
if(next!='') {
next = next.replace(/[\x22\x27\x3c\x3e]/g,'');
$j.cookie('next', next, {path: '/'});
}
}
// fade-out rest of page elements on expand
$j('#feedback, #js-page-wrap, #footer').css({"opacity": "0.07"});
$j('#about_expandable').css({'position': 'absolute'});
$j('#about_expandable').fadeTo("slow", 1);
// if we're on a supporter page, personalize our about box
// by writing the supporter's name in
if ($j(location).attr('pathname').slice(0,11) == '/supporter/') {
var ungluer = $j(location).attr('pathname').slice(11, -1);
if (ungluer != null) {
// span.ungluer doesn't exist until the ajax call so we
// can't bind to the DOM on document ready; need to use
// the ajaxComplete event
$j('#lightbox').ajaxComplete(function() {
$j('#lightbox span.ungluer').replaceWith(ungluer);
});
}
}
});
// fade-in normal page elements on collapse
$j('#about_collapser').on("click", function(){
$j('#js-topsection, .launch_top, .preview, #main-container, #js-rightcol, #js-header, #js-page-wrap, #footer, #feedback').fadeTo("slow", 1);
$j('#js-header a').css({"cursor": "pointer"});
$j('#about_expandable').css({"display": "none"});
});
// make drop-down menu happen when they click on their name
$j('#authenticated').click(function(){
$j('#user_menu').toggle();
$j(this).toggleClass('highlight');
});
// but suppress it if they're clicking on the badge link to the notifications page
$j('#i_haz_notifications_badge').click(function() {
event.stopPropagation();
});
});

View File

@ -45,7 +45,7 @@ $j().ready(function() {
contentblock.on("click", "div.create-account", function () {
var span = $j(this).find("span");
var work_url = span.attr('title')
top.location = "/accounts/login/?next=" + work_url;
top.location = "/accounts/superlogin/?next=" + work_url;
});
// in panel view on the supporter page we want to remove the entire book listing from view upon wishlist-remove

View File

@ -55,7 +55,7 @@
width:120px;
height:30px;
padding:0px;
margin:10px 0 0 0;
margin:0 0 0 0;
.greenpanelactionborders;
a, span {
@ -211,6 +211,20 @@ div.panelview.side2 {
.greenpanel_top {
height: 135px;
}
.greenpanel2 .button_text {
height: 30px;
line-height: 30px
}
.greenpanel2 .bottom_button {
position: absolute;
bottom: 0px;
height: 26px;
}
.greenpanel2 .add_button {
position: absolute;
bottom: 60px;
height: 26px;
}
/* Campaign status text at top of hover state */
.unglued_white {
@ -287,7 +301,7 @@ div.panelview.side2 {
/* title, author */
.white_text {
width:120px;
height:45px;
height:60px;
padding:15px 0px;
margin:0px;
@ -303,6 +317,7 @@ div.panelview.side2 {
line-height:16px;
max-height:32px;
overflow: hidden;
margin: 0 0 5px 0;
}
}

View File

@ -23,6 +23,28 @@
}
}
.login_box {
border: solid 3px @blue-grey;
.one-border-radius(5px);
margin: 10px auto;
padding: 10px;
width: 45%;
.google_signup {
.google_signup_div(48px);
img {
margin-right: 15px;
}
a {
font-size: 20px;
}
}
input[type="text"], input[type="password"] {
width: 90%;
}
}
#login {
border: solid 3px @blue-grey;
.one-border-radius(5px);

View File

@ -656,7 +656,7 @@ div#content-block {
font-weight:normal;
}
div#content-block-content {
div#content-block-content, div#content-block-content-1 {
width:100%;
overflow:hidden;
padding-left: 10px;

View File

@ -105,6 +105,7 @@
float: left;
padding-left: 5px;
font-size: 15px;
display:inline-block;
}
img {
@ -129,7 +130,7 @@
}
.errors {
.border-radius(16px, 16px, 0, 0);
.one-border-radius(16px);
border: solid @alert 3px;
clear: both;
width: 90%;

View File

@ -582,19 +582,6 @@ INSERT INTO `core_identifier` VALUES (1,'goog','wtPxGztYx-UC',1,1),(2,'isbn','97
/*!40000 ALTER TABLE `core_identifier` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Create empty core_key
--
DROP TABLE IF EXISTS `core_key`;
CREATE TABLE `core_key` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`encrypted_value` longtext,
PRIMARY KEY (`id`),
UNIQUE KEY `core_key_name_2fdc7c2d_uniq` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Table structure for table `core_premium`
--
@ -1680,7 +1667,7 @@ CREATE TABLE `south_migrationhistory` (
`migration` varchar(255) NOT NULL,
`applied` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@ -1689,7 +1676,7 @@ CREATE TABLE `south_migrationhistory` (
LOCK TABLES `south_migrationhistory` WRITE;
/*!40000 ALTER TABLE `south_migrationhistory` DISABLE KEYS */;
INSERT INTO `south_migrationhistory` VALUES (1,'core','0001_initial','2012-03-02 17:50:54'),(2,'core','0002_add_goodreads_id','2012-03-02 17:50:55'),(3,'core','0003_add_librarything_ids','2012-03-02 17:50:55'),(4,'core','0004_auto__add_field_campaign_status','2012-03-02 17:50:56'),(5,'core','0005_set_status','2012-03-02 17:50:56'),(6,'core','0006_wishes','2012-03-02 17:50:56'),(7,'core','0007_auto__add_field_wishes_created__add_field_wishes_source','2012-03-02 17:50:57'),(8,'core','0008_add_work_language_col','2012-03-02 17:50:58'),(9,'core','0009_add_work_language_data','2012-03-02 17:50:58'),(10,'core','0010_remove_edition_language','2012-03-02 17:50:58'),(11,'core','0011_auto__add_campaignaction__del_field_campaign_suspended_reason__del_fie','2012-03-02 17:50:59'),(12,'core','0012_auto__add_field_campaign_left','2012-03-02 17:51:00'),(13,'core','0013_move_subject_to_work','2012-03-02 17:51:01'),(14,'core','0015_auto__chg_field_subject_name__add_unique_subject_name','2012-03-02 17:51:01'),(15,'core','0016_auto__add_field_work_openlibrary_lookup','2012-03-02 17:51:02'),(16,'core','0017_isbn_to_13','2012-03-02 17:51:02'),(17,'core','0018_auto__del_field_edition_isbn_10','2012-03-02 17:51:02'),(18,'core','0019_googlebooks_id_must_be_unique','2012-03-02 17:51:02'),(19,'core','0020_auto__add_identifier__add_unique_identifier_type_value','2012-03-02 17:51:03'),(20,'core','0021_auto__del_field_work_librarything_id__del_field_work_openlibrary_id__d','2012-03-02 17:51:04'),(21,'core','0022_auto__chg_field_edition_publisher__chg_field_edition_publication_date','2012-03-02 17:51:05'),(22,'core','0023_auto__add_waswork','2012-03-02 17:51:05'),(23,'core','0024_auto__add_field_work_num_wishes','2012-03-02 17:51:06'),(24,'core','0025_count_wishes','2012-03-02 17:51:06'),(25,'core','0026_auto__add_field_ebook_user__add_field_waswork_moved__add_field_waswork','2012-03-02 17:51:08'),(26,'payment','0001_initial','2012-03-02 17:51:10'),(27,'payment','0002_auto__add_paymentresponse__del_field_transaction_reference__add_field_','2012-03-02 17:51:13'),(28,'payment','0003_auto__add_field_transaction_max_amount','2012-03-02 17:51:13'),(29,'payment','0004_auto__add_field_transaction_approved','2012-03-02 17:51:14'),(30,'tastypie','0001_initial','2012-03-02 17:51:14'),(31,'djcelery','0001_initial','2012-03-02 17:51:18'),(32,'payment','0005_auto__add_field_transaction_premium','2012-03-21 22:17:45'),(33,'core','0027_auto__add_field_campaign_license__chg_field_ebook_url','2012-03-28 15:24:25'),(34,'core','0028_auto__add_field_premium_limit','2012-03-28 15:24:25'),(35,'core','0029_https_facebook_avatars','2012-05-03 18:11:34'),(36,'core','0030_twitter_rewrite','2012-05-03 18:11:34'),(37,'core','0031_auto__add_field_campaign_edition','2012-05-03 18:11:35'),(38,'payment','0006_auto__add_field_transaction_local_status__add_field_paymentresponse_st','2012-05-03 18:11:36'),(39,'core','0032_auto__add_field_work_description','2012-05-07 23:51:10'),(40,'core','0033_move_descriptions','2012-05-07 23:51:10'),(41,'core','0034_auto__del_field_edition_description','2012-05-07 23:51:10'),(42,'core','0035_auto__add_key','2012-05-09 17:59:56'),(43,'core','0036_auto__add_unique_key_name','2012-05-09 17:59:56');
INSERT INTO `south_migrationhistory` VALUES (1,'core','0001_initial','2012-03-02 17:50:54'),(2,'core','0002_add_goodreads_id','2012-03-02 17:50:55'),(3,'core','0003_add_librarything_ids','2012-03-02 17:50:55'),(4,'core','0004_auto__add_field_campaign_status','2012-03-02 17:50:56'),(5,'core','0005_set_status','2012-03-02 17:50:56'),(6,'core','0006_wishes','2012-03-02 17:50:56'),(7,'core','0007_auto__add_field_wishes_created__add_field_wishes_source','2012-03-02 17:50:57'),(8,'core','0008_add_work_language_col','2012-03-02 17:50:58'),(9,'core','0009_add_work_language_data','2012-03-02 17:50:58'),(10,'core','0010_remove_edition_language','2012-03-02 17:50:58'),(11,'core','0011_auto__add_campaignaction__del_field_campaign_suspended_reason__del_fie','2012-03-02 17:50:59'),(12,'core','0012_auto__add_field_campaign_left','2012-03-02 17:51:00'),(13,'core','0013_move_subject_to_work','2012-03-02 17:51:01'),(14,'core','0015_auto__chg_field_subject_name__add_unique_subject_name','2012-03-02 17:51:01'),(15,'core','0016_auto__add_field_work_openlibrary_lookup','2012-03-02 17:51:02'),(16,'core','0017_isbn_to_13','2012-03-02 17:51:02'),(17,'core','0018_auto__del_field_edition_isbn_10','2012-03-02 17:51:02'),(18,'core','0019_googlebooks_id_must_be_unique','2012-03-02 17:51:02'),(19,'core','0020_auto__add_identifier__add_unique_identifier_type_value','2012-03-02 17:51:03'),(20,'core','0021_auto__del_field_work_librarything_id__del_field_work_openlibrary_id__d','2012-03-02 17:51:04'),(21,'core','0022_auto__chg_field_edition_publisher__chg_field_edition_publication_date','2012-03-02 17:51:05'),(22,'core','0023_auto__add_waswork','2012-03-02 17:51:05'),(23,'core','0024_auto__add_field_work_num_wishes','2012-03-02 17:51:06'),(24,'core','0025_count_wishes','2012-03-02 17:51:06'),(25,'core','0026_auto__add_field_ebook_user__add_field_waswork_moved__add_field_waswork','2012-03-02 17:51:08'),(26,'payment','0001_initial','2012-03-02 17:51:10'),(27,'payment','0002_auto__add_paymentresponse__del_field_transaction_reference__add_field_','2012-03-02 17:51:13'),(28,'payment','0003_auto__add_field_transaction_max_amount','2012-03-02 17:51:13'),(29,'payment','0004_auto__add_field_transaction_approved','2012-03-02 17:51:14'),(30,'tastypie','0001_initial','2012-03-02 17:51:14'),(31,'djcelery','0001_initial','2012-03-02 17:51:18'),(32,'payment','0005_auto__add_field_transaction_premium','2012-03-21 22:17:45'),(33,'core','0027_auto__add_field_campaign_license__chg_field_ebook_url','2012-03-28 15:24:25'),(34,'core','0028_auto__add_field_premium_limit','2012-03-28 15:24:25'),(35,'core','0029_https_facebook_avatars','2012-05-03 18:11:34'),(36,'core','0030_twitter_rewrite','2012-05-03 18:11:34'),(37,'core','0031_auto__add_field_campaign_edition','2012-05-03 18:11:35'),(38,'payment','0006_auto__add_field_transaction_local_status__add_field_paymentresponse_st','2012-05-03 18:11:36'),(39,'core','0032_auto__add_field_work_description','2012-05-07 23:51:10'),(40,'core','0033_move_descriptions','2012-05-07 23:51:10'),(41,'core','0034_auto__del_field_edition_description','2012-05-07 23:51:10'),(42,'core','0035_auto__add_key','2012-05-09 17:59:56'),(43,'core','0036_auto__add_unique_key_name','2012-05-09 17:59:56'),(44,'social_auth','0001_initial','2013-03-19 22:22:28');
/*!40000 ALTER TABLE `south_migrationhistory` ENABLE KEYS */;
UNLOCK TABLES;
@ -1756,4 +1743,4 @@ UNLOCK TABLES;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2012-05-09 11:35:52
-- Dump completed on 2013-03-19 19:28:33

View File

@ -1,5 +1,6 @@
from django.conf.urls.defaults import *
from frontend.forms import ProfileForm
from frontend.views import superlogin
from django.views.generic.simple import direct_to_template
from regluit.admin import admin_site
import notification.urls
@ -11,8 +12,10 @@ sitemaps = {
}
urlpatterns = patterns('',
url(r'^accounts/activate/complete/$','django.contrib.auth.views.login',
url(r'^accounts/activate/complete/$',superlogin,
{'template_name': 'registration/activation_complete.html'}),
url(r'^accounts/login/pledge/$',superlogin,
{'template_name': 'registration/from_pledge.html'}),
(r'^accounts/edit/$', 'regluit.frontend.views.edit_user'),
(r'^accounts/', include('registration.backends.default.urls')),
(r'^socialauth/', include('social_auth.urls')),
@ -20,6 +23,10 @@ urlpatterns = patterns('',
{'template': 'registration/welcome.html',
'extra_context': {'suppress_search_box': True,}
}),
url(r"^accounts/superlogin/welcome/$", direct_to_template,
{'template': 'registration/welcome.html',
'extra_context': {'suppress_search_box': True,}
}),
(r'^api/', include('regluit.api.urls')),
(r'', include('regluit.frontend.urls')),
(r'', include('regluit.payment.urls')),