Making a More More More module. This is ugly as shit.

This commit is contained in:
Samuel Clay 2011-04-01 15:10:30 -04:00
parent 281afe6e17
commit 61f750e4b8
3 changed files with 267 additions and 146 deletions

View file

@ -3420,6 +3420,7 @@ background: transparent;
.NB-account .NB-module .NB-module-account-trainer.NB-hidden {
display: none;
}
/* ============ */
/* = Features = */
/* ============ */
@ -3428,7 +3429,6 @@ background: transparent;
list-style: none;
padding: 0;
margin: 0 6px;
width: 466px;
}
.NB-module-features .NB-features-add {
@ -3505,6 +3505,78 @@ background: transparent;
display: none;
}
/* ========================= */
/* = More More More Module = */
/* ========================= */
/* ============ */
/* = Features = */
/* ============ */
.NB-module-more table {
list-style: none;
padding: 0;
margin: 0 6px;
}
.NB-module-more .NB-module-more-item td {
margin: 0 0 0;
}
.NB-module-more .NB-module-more-item.last td {
margin-bottom: 0;
}
.NB-module-more .NB-module-more-item:hover td {
background-color: #FCFFB4;
}
.NB-module-more .NB-module-more-item .NB-module-more-link {
float: left;
text-transform: uppercase;
padding: 4px 8px;
margin: 0;
color: #134160;
text-shadow: 1px 1px 0 #E0E0E0;
font-size: 12px;
font-weight: bold;
line-height: 20px;
white-space: nowrap;
min-width: 130px;
}
.NB-module-more .NB-module-more-item.last .NB-module-more-link {
margin-bottom: 0;
}
.NB-module-more .NB-module-more-item .NB-module-more-link a {
display: block;
}
.NB-module-more .NB-module-more-item .NB-module-more-link .raquo {
font-size: 16px;
line-height: 16px;
}
.NB-module-more .NB-module-more-item .NB-module-more-description {
line-height: 20px;
font-size: 12px;
color: #404040;
padding: 4px 8px;
margin: 0;
width: 100%;
}
.NB-module-more .NB-module-more-item.last .NB-module-more-description {
margin-bottom: 0;
}
.NB-module-more .NB-module-more-item .NB-module-more-link a {
color: #405BA8;
}
.NB-module-more .NB-module-more-item .NB-module-more-link a:hover {
color: #A85B40;
}
/* ======================= */
/* = How it Works Module = */
/* ======================= */
@ -3565,6 +3637,10 @@ background: transparent;
padding: 24px;
}
.NB-modules-center .NB-module {
margin: 0 0 24px;
}
/* ============================ */
/* = Module: Recommended Feed = */
/* ============================ */

View file

@ -27,115 +27,51 @@ $(document).ready(function() {
</div>
<div class="NB-modules-center" style="margin-left: {{ user_profile.feed_pane_size }}px">
{% if not user.is_authenticated %}
<div class="NB-module NB-module-howitworks">
<h5 class="NB-module-header">
<div class="NB-module-header-left">
How It Works
</div>
<div class="NB-module-header-right">
<a href="#" class="NB-module-direction NB-module-next-page {% if howitworks_page == 5 %}NB-disabled{% endif %}"></a>
<a href="#" class="NB-module-direction NB-module-previous-page {% if howitworks_page == 0 %}NB-disabled{% endif %}"></a>
</div>
</h5>
<div class="NB-howitworks-page-indicators">
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 0 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 1 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 2 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 3 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 4 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 5 %}NB-active{% endif %}"></a>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 0 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_original.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Read the original site.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 1 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_intelligence_like.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Intelligently find good stories you will like.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 2 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_intelligence_dislike.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Intelligently filter out stories which you may dislike.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 3 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_import.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Import your feeds from Google Reader.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 4 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_iphone.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Use the iPhone app, available in Summer 2011.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 5 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_github.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Open source, regularly improved, attention to detail.{% endfilter %}
</td>
</tr>
</table>
</div>
</div>
{% endif %}
{% if recommended_feeds %}
{% render_recommended_feed recommended_feeds %}
{% endif %}
<div class="NB-module NB-module-features">
<h5 class="NB-module-header">
New Features
<div class="NB-module-header-right">
{% if user.is_staff %}
<div class="NB-features-add">
<a href="#" id="add-feature-button" class="NB-splash-link">Add</a>
</div>
<script>
$(document).ready(function() {
$('#add-feature-button').click(function(e) {
e.preventDefault();
$('#add-feature-form').fadeIn(500);
});
});
</script>
{% endif %}
<a href="#" class="NB-module-direction NB-module-next-page NB-javascript"></a>
<a href="#" class="NB-module-direction NB-module-previous-page NB-disabled"></a>
<div class="NB-spinner NB-left"></div>
</div>
</h5>
<table class="" cellpadding="0" cellspacing="0">
{% for feature in features %}
<tr class="NB-module-feature {% if forloop.last %}last{% endif %} {% if feature.date > user.profile.last_seen_on %}NB-module-feature-new{% endif %}">
<td class="NB-module-feature-date">{{ feature.date|date:"M d, Y" }}</td>
<td class="NB-module-feature-description">{{ feature.description|typogrify }}</td>
</tr>
{% endfor %}
</table>
{% if user.is_staff %}
<form action="{% url add-feature %}" id="add-feature-form" method="post">
{{ feature_form.description }}
<input type="submit" value="Add feature" />
</form>
{% endif %}
</div>
</div>
<div class="NB-account">
@ -209,6 +145,106 @@ $(document).ready(function() {
<a href="{% url google-reader-authorize %}" class="NB-splash-link NB-signup-google">Import from<br /><img src="{{ MEDIA_URL }}img/reader/google-reader-logo.png" width="112" height="24" /></a>
</div>
</div>
<div class="NB-module NB-module-howitworks">
<h5 class="NB-module-header">
<div class="NB-module-header-left">
How It Works
</div>
<div class="NB-module-header-right">
<a href="#" class="NB-module-direction NB-module-next-page {% if howitworks_page == 5 %}NB-disabled{% endif %}"></a>
<a href="#" class="NB-module-direction NB-module-previous-page {% if howitworks_page == 0 %}NB-disabled{% endif %}"></a>
</div>
</h5>
<div class="NB-howitworks-page-indicators">
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 0 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 1 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 2 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 3 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 4 %}NB-active{% endif %}"></a>
<a href="#" class="NB-module-page-indicator {% if howitworks_page == 5 %}NB-active{% endif %}"></a>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 0 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_original.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Read the original site.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 1 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_intelligence_like.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Easily train NewsBlur to highlight stories you like.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 2 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_intelligence_dislike.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}NewsBlur will filter out stories which you don't like.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 3 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_import.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Quickly import your feeds from Google Reader.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 4 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_iphone.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Use the iPhone app, available in Summer 2011.{% endfilter %}
</td>
</tr>
</table>
</div>
<div class="NB-howitworks-page {% if howitworks_page == 5 %}NB-active{% endif %}">
<div class="NB-howitworks-page-image">
<img src="{{ MEDIA_URL }}img/reader/howitworks_github.png" />
</div>
<table class="NB-howitworks-page-description">
<tr>
<td>
{% filter typogrify %}Open source, regularly improved, attention to detail.{% endfilter %}
</td>
</tr>
</table>
</div>
</div>
{% else %}
@ -276,44 +312,46 @@ $(document).ready(function() {
{% endif %}
<div class="NB-module NB-module-features">
<div class="NB-module NB-module-more">
<h5 class="NB-module-header">
New Features
<div class="NB-module-header-right">
{% if user.is_staff %}
<div class="NB-features-add">
<a href="#" id="add-feature-button" class="NB-splash-link">Add</a>
</div>
<script>
$(document).ready(function() {
$('#add-feature-button').click(function(e) {
e.preventDefault();
$('#add-feature-form').fadeIn(500);
});
});
</script>
{% endif %}
<a href="#" class="NB-module-direction NB-module-next-page NB-javascript"></a>
<a href="#" class="NB-module-direction NB-module-previous-page NB-disabled"></a>
<div class="NB-spinner NB-left"></div>
<div class="NB-module-header-left">
More More More
</div>
</h5>
<table class="" cellpadding="0" cellspacing="0">
{% for feature in features %}
<tr class="NB-module-feature {% if forloop.last %}last{% endif %} {% if feature.date > user.profile.last_seen_on %}NB-module-feature-new{% endif %}">
<td class="NB-module-feature-date">{{ feature.date|date:"M d, Y" }}</td>
<td class="NB-module-feature-description">{{ feature.description|typogrify }}</td>
</tr>
{% endfor %}
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url about %}"><span class="raquo">&raquo;</span> About NewsBlur</a></td>
<td class="NB-module-more-description">Who built this and why</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url faq %}"><span class="raquo">&raquo;</span> F.A.Q.</a></td>
<td class="NB-module-more-description">Questions you might have</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url api %}"><span class="raquo">&raquo;</span> API</a></td>
<td class="NB-module-more-description">Developers can build on top of NewsBlur</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url press %}"><span class="raquo">&raquo;</span> Press</a></td>
<td class="NB-module-more-description">Reviews and tweets about NewsBlur</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url privacy %}"><span class="raquo">&raquo;</span> Privacy Policy</a></td>
<td class="NB-module-more-description">...</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="{% url tos %}"><span class="raquo">&raquo;</span> Terms of Service</a></td>
<td class="NB-module-more-description">...</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="http://blog.newsblur.com"><span class="raquo">&raquo;</span> The Blog</a></td>
<td class="NB-module-more-description">Stay abreast of developments</td>
</tr>
<tr class="NB-module-more-item">
<td class="NB-module-more-link"><a href="http://github.com/samuelclay/"><span class="raquo">&raquo;</span> GitHub</a></td>
<td class="NB-module-more-description">Open-source = transparency and accountability</td>
</tr>
</table>
{% if user.is_staff %}
<form action="{% url add-feature %}" id="add-feature-form" method="post">
{{ feature_form.description }}
<input type="submit" value="Add feature" />
</form>
{% endif %}
</div>
</div>

23
urls.py
View file

@ -1,16 +1,23 @@
from django.conf.urls.defaults import *
from django.conf import settings
from apps.reader import views as reader_views
from apps.static import views as static_views
urlpatterns = patterns('',
url(r'^$', reader_views.index, name='index'),
(r'^reader/', include('apps.reader.urls')),
(r'^rss_feeds/', include('apps.rss_feeds.urls')),
(r'^classifier/', include('apps.analyzer.urls')),
(r'^profile/', include('apps.profile.urls')),
(r'^import/', include('apps.feed_import.urls')),
(r'^api/', include('apps.api.urls')),
(r'^recommendations/', include('apps.recommendations.urls')),
url(r'^$', reader_views.index, name='index'),
(r'^reader/', include('apps.reader.urls')),
(r'^rss_feeds/', include('apps.rss_feeds.urls')),
(r'^classifier/', include('apps.analyzer.urls')),
(r'^profile/', include('apps.profile.urls')),
(r'^import/', include('apps.feed_import.urls')),
(r'^api/', include('apps.api.urls')),
(r'^recommendations/', include('apps.recommendations.urls')),
url(r'^about/?', static_views.about, name='about'),
url(r'^faq/?', static_views.faq, name='faq'),
url(r'^api/?', static_views.api, name='api'),
url(r'^press/?', static_views.press, name='press'),
url(r'^privacy/?', static_views.privacy, name='privacy'),
url(r'^tos/?', static_views.tos, name='tos'),
)
if settings.DEVELOPMENT: