make iconolab a django app and not a full blown django project. The project has bedd transfered to iconolab-mcc
from django import forms
from django.utils.translation import ugettext_lazy as _
from django_comments_xtd.forms import XtdCommentForm
from django_comments_xtd.models import TmpXtdComment
from django_comments_xtd import get_model as get_comment_model
from django.contrib.contenttypes.models import ContentType
from django.conf import settings
from django.utils.encoding import force_text
from django.utils import timezone
from iconolab.models import MetaCategory
import logging
logger = logging.getLogger(__name__)
class MetaCategoryMultipleChoiceFields(forms.ModelMultipleChoiceField):
def label_from_instance(self, obj):
return obj.label
class IconolabCommentForm(XtdCommentForm):
email = forms.EmailField(required=False)
metacategories = MetaCategoryMultipleChoiceFields(widget=forms.CheckboxSelectMultiple, queryset=None, required=False)
def __init__(self, *args, **kwargs):
super(IconolabCommentForm, self).__init__(*args, **kwargs)
self.collection = self.target_object.image.item.collection
self.fields["metacategories"].queryset = self.collection.metacategories.all()
self.fields.pop('email')
def get_comment_create_data(self, site_id=None):
self.cleaned_data['email'] = ''
data = super(IconolabCommentForm, self).get_comment_create_data(site_id=site_id)
data.update({'user_email': ''})
return data