-#!/usr/bin/python
-from django.core.management import execute_manager
-try:
- import settings # Assumed to be in the same directory.
-except ImportError:
- import sys
- sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
- sys.exit(1)
+#!/usr/bin/env python
+import os, sys
if __name__ == "__main__":
- execute_manager(settings)
+ os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
+
+ from django.core.management import execute_from_command_line
+
+ execute_from_command_line(sys.argv)
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
-STATIC_ROOT = '/var/www/static/'
+STATIC_ROOT = ''
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.locale.LocaleMiddleware',
+ # 'pagination.middleware.PaginationMiddleware',
)
-ROOT_URLCONF = 'sandbox.urls'
+ROOT_URLCONF = 'urls'
TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
'sorl.thumbnail',
'timezones',
'jqchat',
+ 'extra_views',
+ # 'pagination',
+ # 'breadcrumbs',
+ 'debug_toolbar',
+ 'bootstrap3',
+ 'pure_pagination',
)
TEMPLATE_CONTEXT_PROCESSORS = (
"django.core.context_processors.i18n",
"django.core.context_processors.media",
'django.core.context_processors.static',
+ 'django.contrib.messages.context_processors.messages',
)
TELEMETA_ORGANIZATION = 'Parisson'
TIMESIDE_DEFAULT_GRAPHER_ID = 'waveform_centroid'
TIMESIDE_AUTO_ZOOM = True
+
+# Settings for django-bootstrap3
+BOOTSTRAP3 = {
+ 'set_required': False,
+ 'error_css_class': 'bootstrap3-error',
+ 'required_css_class': 'bootstrap3-required',
+ 'javascript_in_head': True,
+}
+
+SESSION_EXPIRE_AT_BROWSER_CLOSE = False
+
+PAGINATION_SETTINGS = {
+ 'PAGE_RANGE_DISPLAYED': 10,
+ 'MARGIN_PAGES_DISPLAYED': 2,
+}
# -*- coding: utf-8 -*-
-from django.conf.urls.defaults import *
+from django.conf.urls import patterns, url, include
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
# Uncomment the next line to enable the admin:
(r'^admin/django/', include(admin.site.urls)),
-
+
# Telemeta
(r'^', include('telemeta.urls')),
-
+
# Languages
- (r'^i18n/', include('django.conf.urls.i18n')),
+ (r'^i18n/', include('django.conf.urls.i18n')),
(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
)
'django-extra-views',
'django-ajax-selects',
'django-breadcrumbs',
+ 'django-pagination',
],
dependency_links = ['https://github.com/yomguy/django-json-rpc/tarball/0.6.2',
'https://github.com/elo80ka/django-dynamic-formset/tarball/master',
import django.forms as forms
from django.forms import ModelForm
+from django.contrib.admin.widgets import FilteredSelectMultiple
from telemeta.models import *
from extra_views import CreateWithInlinesView, UpdateWithInlinesView, InlineFormSet
from extra_views.generic import GenericInlineFormSet
class MediaFondsForm(ModelForm):
- children = forms.ModelMultipleChoiceField(widget=forms.CheckboxSelectMultiple, queryset=MediaCorpus.objects.all())
+ widget = FilteredSelectMultiple("Verbose name", is_stacked=False)
+ field = forms.ModelMultipleChoiceField(queryset=MediaCorpus.objects.all())
+ children = forms.ModelMultipleChoiceField(widget=widget, queryset=field)
class Meta:
model = MediaFonds
+ exclude = ['description',]
class MediaFondsRelatedForm(ModelForm):
class MediaCorpusForm(ModelForm):
- children = forms.ModelMultipleChoiceField(widget=forms.CheckboxSelectMultiple,
- queryset=MediaCollection.objects.all())
+ # queryset = MediaCollection.objects.all()
+ # widget = FilteredSelectMultiple('children', False)
+ # # # field = forms.ModelMultipleChoiceField(queryset=MediaCorpus.objects.all())
+ # children = forms.ModelMultipleChoiceField(widget=widget, queryset=queryset, required=True)
+
class Meta:
model = MediaCorpus
+ exclude = ['description',]
+
+ class Media:
+ css = {'all': ('/static/admin/css/widgets.css',),}
+ js = ('/admin/django/jsi18n/',)
class MediaCorpusRelatedForm(ModelForm):
body {margin: 0; padding: 0;}
-
a {text-decoration: none; color: #969696;}
a img {border: none;}
body {
- font: 0.8125em/1em verdana, sans-serif;
+ font: 0.9em/1em verdana, sans-serif;
line-height: 1.3em;
color: #333;
background: #FFF;
font-weight: bold;
color: #353535;
}
+
+.rst-content p {
+ font-size: 0.9em;
+ text-align: justify;
+}
+
.nett {
clear: both;
height: 5px;
#content {
/*margin-top: 1em;*/
margin-bottom: 0em;
-}
-
-#content {
position: relative;
margin-left: 2em;
margin-right: 2em;
-}
+ /*font-size: 1.3em;*/
+}
-#content ul, #content ul ul, #content ol {
+/*#content ul, #content ul ul, #content ol {
list-style: square;
padding: .7em;
padding-left: 2em;
#content li a {
padding: .1em 0;
}
+
+*/
+
#content h1 {
color: #6a0307;
font-weight: bold;
display: inline;
font-size: 120%;
}
+
+#content h2 {
+ color: #6a0307;
+}
+
#content h3 {
color: #6a0307;
font-weight: bold;
display: inline;
+ font-size: 1.2em;
}
-#content h2 {
- color: #6a0307;
-}
#logo a, #logo a:hover { border: none; background: transparent; }
}
#quick_search_pattern {
- background: #FFF url(search_bg.png) no-repeat;
+ background-color: white;
padding: .4em .1em;
width: 180px;
color: #555;
float: left;
}
+#quick-search-button{
+ float: right;
+}
+
/* Authentication */
#auth_info {
color: #FFF;
}
dl.listing dd {
margin-left: 19.4em;
- font-weight: bold;
+ /*font-weight: bold;*/
}
/* dublin core display */
.infos dl, .infos table {
position: relative;
- font-size: 105%;
}
.extraInfos dl, .extraInfos table {
position: relative;
- font-size: 105%;
+
}
.extraInfos div {
color:#444;
text-decoration: none;
margin:0;
- font: 0.9em/1.2em sans-serif;
+ font: 0.8em/1.2em sans-serif;
}
.component + .component, .component + .component_icon, .component_icon + .component ,
.component_icon + .component_icon{
width: 66%;
float: left;
}
+
<!DOCTYPE html>
{% load i18n %}
-{% load telemeta_utils %}
+{% load telemeta_utils %}{# Load the tag library #}
+{% load bootstrap3 %}
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
<html xmlns="http://www.w3.org/1999/xhtml" lang="{{ LANGUAGE_CODE }}" xml:lang="{{ LANGUAGE_CODE }}" {% if LANGUAGE_BIDI %}dir="rtl"{% endif %}>
<title>{%block head_title %}{% description %} - Telemeta{% endblock %}</title>
{% block stylesheets %}
-<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}telemeta/css/app.css" />
<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}telemeta/css/telemeta.css" />
-
+<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}telemeta/lib/bootstrap/dist/css/bootstrap.css" />
<!--[if IE]>
<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}telemeta/css/telemeta_ie.css" />
{% block javascript %}
<script src="{% url "django.views.i18n.javascript_catalog" %}" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/bower_components/jquery/dist/jquery.min.js" type="text/javascript"></script>
+<script src="{{ STATIC_URL }}telemeta/lib/jquery/dist/jquery.min.js" type="text/javascript"></script>
<script src="{{ STATIC_URL }}telemeta/js/locale.js" type="text/javascript"></script>
<script src="{{ STATIC_URL }}telemeta/js/application.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/bower_components/modernizr/modernizr.js"></script>
+<script src="{{ STATIC_URL }}telemeta/lib/bootstrap/dist/js/bootstrap.min.js" type="text/javascript"></script>
+
+
{% if user.is_authenticated %}
<script type='text/javascript'>var CURRENT_USER_NAME="{{ user.username }}";</script>
{% else %}
<div id="quick_search">
<form action="{% url "telemeta-search" %}" id="_quickSearchForm" method="get">
-<input type="text" id="quick_search_pattern" name="pattern" />
-<a href="#" class="component button" onclick="document.getElementById('_quickSearchForm').submit();">{% trans "Search" %}</a>
+<div class="row">
+ <div class="col-md-6">
+ <input type="text" id="quick_search_pattern" name="pattern" />
+ </div>
+ <div class="col-md-6"><a href="#" id="quick-search-button" class="component button" onclick="document.getElementById('_quickSearchForm').submit();">{% trans "Search" %}</a></div>
</form>
</div>
+</div>
<div id="menu">
{% block menu %}
<div id="footer">
<hr />
<div class="row">
- <div class="small-2 columns">
+ <div class="col-md-2">
<a id="telemeta_powered" href="{% telemeta_url %}" target="_blank"><img src="{{ STATIC_URL }}telemeta/images/logo_mini_2.png"
alt="Telemeta Powered"/></a>
<span style="font-weight: bold;"><br /> v{% telemeta_version %}</span>
</div>
- <div class="small-8 columns">
+ <div class="col-md-8">
<center>
{% trans "Usage of the archives in the respect of cultural heritage of the original communities." %}
</center>
</div>
- <div class="small-2 columns">
+ <div class="col-md-2">
Copyright © {% current_year %} {% organization %}<br />
<a href="{% url "telemeta-flatpage" "legal_notices" %}">{% trans "Legal notices" %}</a>
</div>
{% block analytics %}
{% endblock analytics %}
-<script src="{{ STATIC_URL }}telemeta/bower_components/jquery/dist/jquery.min.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/bower_components/fastclick/lib/fastclick.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/bower_components/foundation/js/foundation.min.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/js/app.js" type="text/javascript"></script>
</body>
</html>
{% load telemeta_utils %}
{% load i18n %}
-{% load pagination_tags %}
{% if resources %}
-{% paginate %}
+{% include "pure_pagination/pagination.html" %}
<table class="listing">
<tr>
from django.utils.translation import ugettext_lazy as _
from django.forms.models import model_to_dict
from django.views.generic.edit import DeletionMixin, BaseDeleteView
+from pure_pagination.mixins import PaginationMixin
class ResourceView(object):
return context
-class ResourceListView(ResourceMixin, ListView):
+class ResourceListView(ResourceMixin, PaginationMixin, ListView):
template_name = "telemeta/resource_list.html"
paginate_by = 20