Added sidebar
This commit is contained in:
parent
11f82fae11
commit
5bca3307cd
|
@ -6,6 +6,7 @@ from hashlib import md5
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
|
from django.core.urlresolvers import reverse
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
|
||||||
vertex_pattern = re.compile(r'vertex\s+([0-9.e+-]+)\s+([0-9.e+-]+)\s+([0-9.e+-]+)')
|
vertex_pattern = re.compile(r'vertex\s+([0-9.e+-]+)\s+([0-9.e+-]+)\s+([0-9.e+-]+)')
|
||||||
|
@ -60,6 +61,13 @@ class Geometry(models.Model):
|
||||||
file = models.FileField(upload_to=safe_upload_path('models'))
|
file = models.FileField(upload_to=safe_upload_path('models'))
|
||||||
sourcefile = models.FileField(upload_to=safe_upload_path('sources'), blank=True)
|
sourcefile = models.FileField(upload_to=safe_upload_path('sources'), blank=True)
|
||||||
|
|
||||||
|
def get_absolute_url(self):
|
||||||
|
return reverse('geometry_details', kwargs={'id' : self.pk})
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def get_latest(cls):
|
||||||
|
return cls.objects.all().filter(public = True).order_by('date')[:10]
|
||||||
|
|
||||||
def get_expiration_date(self):
|
def get_expiration_date(self):
|
||||||
for expiration in [self.HOUR, self.DAY, self.WEEK, self.MONTH]:
|
for expiration in [self.HOUR, self.DAY, self.WEEK, self.MONTH]:
|
||||||
if self.expiration == expiration:
|
if self.expiration == expiration:
|
||||||
|
|
|
@ -57,8 +57,17 @@ $(document).ready(function() {
|
||||||
</div>
|
</div>
|
||||||
<div class="pure-u-1-3">
|
<div class="pure-u-1-3">
|
||||||
<div class="textcontainer">
|
<div class="textcontainer">
|
||||||
|
<h2><i class="icon-upload-alt"></i> Latest uploads</h2>
|
||||||
</div>
|
<ul class="uploads-list">
|
||||||
|
{% for geometry in latest_geometries %}
|
||||||
|
<li>
|
||||||
|
<i class="icon-file"></i>
|
||||||
|
<a href="{{geometry.get_absolute_url}}">{{geometry.name}}</a>
|
||||||
|
- {{geometry.date}}
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
from django.views.generic.edit import CreateView
|
from django.views.generic.edit import CreateView
|
||||||
from django.views.generic.detail import DetailView
|
from django.views.generic.detail import DetailView
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
|
from django.views.generic.base import ContextMixin
|
||||||
|
|
||||||
from forms import GeometryForm
|
from forms import GeometryForm
|
||||||
from models import Geometry
|
from models import Geometry
|
||||||
|
@ -19,4 +20,9 @@ class GeometryCreate(CreateView):
|
||||||
template_name = 'pastebin/geometry_create.html'
|
template_name = 'pastebin/geometry_create.html'
|
||||||
|
|
||||||
def get_success_url(self):
|
def get_success_url(self):
|
||||||
return reverse('geometry_details', kwargs={'id' :self.object.id})
|
return reverse('geometry_details', kwargs={'id' :self.object.id})
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super(CreateView, self).get_context_data(**kwargs)
|
||||||
|
context['latest_geometries'] = Geometry.get_latest()
|
||||||
|
return context
|
|
@ -41,6 +41,10 @@
|
||||||
border-color: #eeeeee;
|
border-color: #eeeeee;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
background-color: #eee; }
|
background-color: #eee; }
|
||||||
|
.textcontainer .uploads-list {
|
||||||
|
list-style: none; }
|
||||||
|
.textcontainer .uploads-list a {
|
||||||
|
text-decoration: none; }
|
||||||
.textcontainer .pure-form label {
|
.textcontainer .pure-form label {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
border-bottom: 1px solid #ccc; }
|
border-bottom: 1px solid #ccc; }
|
||||||
|
|
|
@ -54,6 +54,14 @@
|
||||||
@include roundconers(#eee,6px);
|
@include roundconers(#eee,6px);
|
||||||
background-color: #eee;
|
background-color: #eee;
|
||||||
|
|
||||||
|
.uploads-list {
|
||||||
|
list-style: none;
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.pure-form {
|
.pure-form {
|
||||||
label {
|
label {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
|
Loading…
Reference in New Issue