очистил core от лишнего кода

remotes/origin/HEAD
Slava Kyrachevsky 9 years ago
parent d30fbf36b5
commit 601b9f3169
  1. 42
      apps/core/forms.py
  2. 21
      apps/core/simple_index_view.py
  3. 27
      apps/core/utils.py
  4. 130
      apps/core/views.py

@ -10,48 +10,6 @@ from haystack.query import SearchQuerySet, EmptySearchQuerySet
from hvad.forms import TranslatableModelForm
from models import Page
class PlaceSearchForm(forms.Form):
q = forms.CharField(label=_(u'Поиск'), required=False)
w = forms.CharField(label=_(u'Где'), required=False)
def search(self):
q = self.cleaned_data.get('q')
w = self.cleaned_data.get('w')
if not q and not w:
return EmptySearchQuerySet()
sqs = SearchQuerySet().models(PlaceExposition, PlaceConference)
if q:
sqs = sqs.auto_query(q)
if w:
sqs = sqs.filter(where__contains=w)
return sqs
class CallbackForm(forms.Form):
callback_phone = forms.CharField()
def clean_callback_phone(self):
phone = self.cleaned_data['callback_phone']
phone_str = self.cleaned_data['callback_phone']
deduct = ('-','(',')','.',' ')
for elem in deduct:
phone = phone.replace(elem, '')
if phone.isdigit():
return phone_str
else:
raise forms.ValidationError(_(u'Введите правильный телефон'))
def send(self):
phone = self.cleaned_data['callback_phone']
send_mail(phone, phone, None, [settings.CALLBACK_EMAIL])
# ------------------ Page Form -----------------------
from django.conf import settings
from django.forms import Textarea
from ckeditor.widgets import CKEditorWidget

@ -13,11 +13,11 @@ from settings.models import LandingComment, ParticipationComment
class AdvertisingView(MetadataMixin, TemplateView):
template_name = 'simple_pages/advertising.html'
template_name = 'client/simple_pages/advertising.html'
class AdvertisingViewLanding(JitterCacheMixin, AdvertisingView):
template_name = 'simple_pages/advertising_landing.html'
template_name = 'client/simple_pages/advertising_landing.html'
def get_context_data(self, **kwargs):
context = super(AdvertisingViewLanding, self).get_context_data(**kwargs)
@ -26,7 +26,7 @@ class AdvertisingViewLanding(JitterCacheMixin, AdvertisingView):
class ParticipationViewLanding(JitterCacheMixin, MetadataMixin, FormView):
template_name = 'simple_pages/participation_landing.html'
template_name = 'client/simple_pages/participation_landing.html'
form_class = ParticipationLandingForm
def get_initial(self):
@ -61,17 +61,4 @@ class ParticipationViewLanding(JitterCacheMixin, MetadataMixin, FormView):
class AboutView(MetadataMixin, TemplateView):
template_name = 'simple_pages/about.html'
def callback(request):
response = {'success': False}
if request.GET:
form = CallBackForm(request.GET)
if form.is_valid():
form.save()
response['success'] = True
else:
response['errors'] = form.errors
return HttpResponse(json.dumps(response), content_type='application/json')
template_name = 'client/simple_pages/about.html'

@ -33,33 +33,6 @@ CELL_STYLE_MAP = (
)
def multi_getattr(obj, attr, default=None):
attributes = attr.split(".")
for i in attributes:
try:
obj = getattr(obj, i)
except AttributeError:
if default:
return default
else:
return '-'
return obj
def get_column_cell(obj, name):
try:
attr = multi_getattr(obj, name)
except ObjectDoesNotExist:
return ''
if hasattr(attr, '_meta'):
# A Django Model (related object)
return unicode(attr).strip()
elif hasattr(attr, 'all'):
# A Django queryset (ManyRelatedManager)
return ', '.join(unicode(x).strip() for x in attr.all())
return attr
def queryset_to_workbook(queryset, columns, report_date = None):
# localization

@ -9,136 +9,6 @@ from django.core.urlresolvers import reverse_lazy
from functions.views_help import split_params
from django.utils.translation import ugettext as _
class PlaceListView(ListView):
paginate_by = 10
params = None
single_page = False
template_name = 'place_catalog_test.html'
model = 'places'
order = 'data_begin'
def get_params(self):
model_names = {'places': _(u'Места')}
model_alternative_name = {'places': 'place'}
params = [{'type':'model', 'url':self.model, 'name': model_names.get(self.model),
'alternative_name': model_alternative_name.get(self.model)}]
st = self.kwargs.get('params')
if st:
params = params + split_params(st)
return params
def get_queryset(self):
pl_ex = PlaceExposition.objects.all()
pl_conf = PlaceConference.objects.all()
params = self.get_params()
for param in params:
if param.get('type') == 'country':
country = Country.objects.safe_get(url=param.get('url'))
if country:
param['name'] = country.name
pl_ex = pl_ex.filter(country=country)
pl_conf = pl_conf.filter(country=country)
if param.get('type') == 'city':
city = City.objects.safe_get(url=param.get('url'))
if city:
param['name'] = city.name
pl_ex = pl_ex.filter(city=city)
pl_conf = pl_conf.filter(city=city)
if param.get('type') == 'place':
pl_ex = pl_ex.filter(url=param.get('url'))
if pl_ex:
query = pl_ex
else:
query = pl_conf.filter(url=param.get('url'))
self.single_page = True
if query:
param['name'] = query[0].name
#if self.request:
# views = query[0].views
# query.update(views=views+1)
self.params = params
return query
self.params = params
return list(pl_ex) + list(pl_conf)
def get_context_data(self, **kwargs):
context = super(PlaceListView, self).get_context_data(**kwargs)
context['filter'] = self.params
context['single_page'] = self.single_page
context['search_form'] = self.search_form
context['search_action'] = '/places/search/'
context['type'] = 'places search'
return context
class PlacePhotoView(PlaceListView):
paginate_by = 12
template_name = 'place/place_photo.html'
obj = None
def get_queryset(self):
pl_ex = PlaceExposition.objects.all()
pl_conf = PlaceConference.objects.all()
params = self.get_params()
for param in params:
if param.get('type') == 'country':
country = Country.objects.safe_get(url=param.get('url'))
if country:
param['name'] = country.name
pl_ex = pl_ex.filter(country=country)
pl_conf = pl_conf.filter(country=country)
if param.get('type') == 'city':
city = City.objects.safe_get(url=param.get('url'))
if city:
param['name'] = city.name
pl_ex = pl_ex.filter(city=city)
pl_conf = pl_conf.filter(city=city)
if param.get('type') == 'place':
pl_ex = pl_ex.filter(url=param.get('url'))
if pl_ex:
query = pl_ex
else:
query = pl_conf.filter(url=param.get('url'))
self.single_page = True
if query:
param['name'] = query[0].name
#if self.request:
# views = query[0].views
# query.update(views=views+1)
params.append({'type':'photo', 'name':_(u'Фото')})
self.params = params
self.obj = query[0]
return query[0].photogallery.photos.all()
self.params = params
return list(pl_ex) + list(pl_conf)
def get_context_data(self, **kwargs):
context = super(PlacePhotoView, self).get_context_data(**kwargs)
context['object'] = self.obj
return context
# --------------------- Page views ------------------------
from forms import PageForm
from models import Page

Loading…
Cancel
Save