def comment_form(self, request, *args, **kwargs):
     if request.user.is_authenticated == False:
         return redirect(
             reverse('user:login') + '?redirect=' + request.path)
     product = self.get_product(kwargs.get('product_id'))
     if request.method == 'POST':
         data = request.data
         commnent = Comment(
             user=request.user,
             product=product,
             rate=int(data['rate']),
             text=data['text'],
             advantages=data['advantages'],
             disadvantages=data['disadvantages'],
         )
         commnent.save()
         return redirect(
             reverse('shop:product',
                     kwargs={
                         'slug': product.slug,
                         'category': product.category.slug,
                         'product_id': product.pk,
                         'page': 'comments'
                     }))
     return render(request, 'shop/product/pages/page__comment_form.html',
                   self.context)
Example #2
0
def create_comment_for_rejection(version, msg, sender):
    from apps.comments.models import Comment
    comment = Comment(content_object=version.language,
                      user = sender,
                      content = msg,
                      submit_date = datetime.datetime.now()
    )
    comment.save()
    return comment
 def post(self, request, *args, **kwargs):
     article = Article.objects.get(pk=kwargs['pk'])
     form = FormComment(request.POST)
     if form.is_valid():
         text = form.cleaned_data['text']
         comment = Comment(author=request.user, text=text, article=article)
         comment.save()
     return HttpResponseRedirect(
         reverse('home:detail_article', kwargs={'pk': article.pk}))
Example #4
0
def create_comment_for_rejection(version, msg, sender):
    from apps.comments.models import Comment
    comment = Comment(content_object=version.language,
                      user = sender,
                      content = msg,
                      submit_date = datetime.datetime.now()
    )
    comment.save()
    return comment
 def create_commet(self, request):
     data = request.data
     commnent = Comment(
         user=request.user,
         product=product,
         rate=int(data['rate']),
         text=data['text'],
         text_plus=data['text_plus'],
         text_minus=data['text_minus'],
     )
     commnent.save()
     return commnent
Example #6
0
def render_comment_list(self, context):
    '''Render list of comments for given object'''
    obj = self.get_object(context)
    qs = Comment.all().filter("obj =", obj)
    return render_to_string("comments/block/comment_list",
                            {'comment_list': list(qs)},
                            context_instance = context)
Example #7
0
    def test_createComments(self):
        for _ in range(comment_number):
            comment = Comment(author_name=faker.user_name(),
                              author_email=faker.email(),
                              text=faker.text())

            db.session.add(comment)
        db.session.commit()
Example #8
0
def comments(request, product_id):
    product = Product.objects.get(pk=product_id)

    if request.method == "POST":
        data = request.POST
        email, phone = check_phone_email(username=data['username'],
                                         request=request)

        if all(var is None for var in [email, phone]):
            response = {'msg': 'Введите корректный номер Телефона или Email'}
            return JsonResponse(response)

        try:
            if email: user = CustomUser.objects.get(email=email)
            elif phone: user = CustomUser.objects.get(phone=phone)
        except:
            user = CustomUser.objects.create_user(username=data['username'],
                                                  data=data,
                                                  request=request)
            if isinstance(user, CustomUser) == False:
                response = {'msg': user}
                return JsonResponse(response)

        # SAVE REVIEW
        review = Comment(parent=product,
                         stars=int(data['stars']),
                         user=user,
                         text=data['text'])
        review.save()
        # SAVE IMAGES
        images = request.FILES.getlist('image')
        if len(images) > 0:
            for image in images:
                reviewImage = CommentImages(parent=review, image_l=image)
                reviewImage.save()

        # TELEGRAM
        # msg = 'Комментарий: ' + variant.get_absolute_url() + '\n'
        # msg += data['text']
        # msg = urllib.parse.quote(msg)
        # url = "https://api.telegram.org/bot817785032:AAG-Q3s8wRhyZbkoJScSPvE2XDrCVlgZKKA/sendMessage?chat_id=-1001490724377&text=" + msg
        # contents = urllib.request.urlopen(url).read()

    response = {'html': ''}
    return JsonResponse(response)
Example #9
0
    def setUp(self):
        self.user = User.objects.all()[0]
        self.video = Video.objects.all()[0]

        self.auth = dict(username='******', password='******')
        self.logged_user = User.objects.get(username=self.auth['username'])
        l = self.video.subtitle_language()
        l.language_code = "en"
        l.save()
        comment = Comment(content_object=self.video)
        comment.user = self.logged_user
        comment.content = "testme"
        comment.submit_date = datetime.datetime.now()
        comment.save()
        self.comment = comment
Example #10
0
    def setUp(self):
        self.user = User.objects.all()[0]
        self.video = Video.objects.all()[0]

        self.auth = dict(username='******', password='******')
        self.logged_user = User.objects.get(username=self.auth['username'])
        l = self.video.subtitle_language()
        l.language = "en"
        l.save()
        comment = Comment(content_object=self.video)
        comment.user = self.logged_user
        comment.content = "testme"
        comment.submit_date = datetime.datetime.now()
        comment.save()
        self.comment = comment
Example #11
0
def get_comment_count(obj):
    return Comment.get_for_object(obj).count()
Example #12
0
def render_comment_list(context, obj):
    context['qs'] =  Comment.get_for_object(obj)
    context['content_type'] = ContentType.objects.get_for_model(obj)
    context['obj'] = obj
    return context
Example #13
0
def map(request, event_codename=None):
    event = get_event_by_codename(event_codename)
    dt_now = timezone.now()
    if dt_now < event.start:
        return render(request, 'event_not_started.html', {
            'event': event,
        })

    editable_map = request.user.is_authenticated() and dt_now < event.end
    event_running = event.start < dt_now < event.end

    if editable_map:
        if request.method == 'POST':
            # Gère l'ajout de nouveaux messages pour des nouveaux points
            aemform = AddEventMarkForm(request.POST,
                                       event=event,
                                       prefix='event')
            if aemform.is_valid() and 'point' in aemform.cleaned_data:
                em = EventMark()
                em.event = event
                em.point = aemform.cleaned_data['point']
                em.user = request.user
                em.save()
                cm = Comment()
                cm.eventmark = em
                cm.user = request.user
                cm.message = aemform.cleaned_data['message']
                cm.save()

            amform = AddMessageToEventMarkForm(request.POST,
                                               event=event,
                                               prefix='comment')
            if amform.is_valid() and 'eventmarkid' in amform.cleaned_data:
                em = EventMark.objects.get(
                    id=amform.cleaned_data['eventmarkid'])
                cm = Comment()
                cm.eventmark = em
                cm.user = request.user
                cm.message = amform.cleaned_data['message']
                cm.save()

        aemform = AddEventMarkForm(event=event, prefix='event')
        amform = AddMessageToEventMarkForm(event=event, prefix='comment')
    else:
        # TODO: Check what we should do when the users are not authenticated
        aemform = None
        amform = None

    return render(
        request, 'map.html', {
            'event': event,
            'editable_map': editable_map,
            'event_running': event_running,
            'aemform': aemform,
            'amform': amform,
        })
Example #14
0
def render_comment_list(context, obj):
    return {
        'qs': Comment.get_for_object(obj),
        'content_type': ContentType.objects.get_for_model(obj),
        'obj': obj
    }
Example #15
0
def render_comment_list(context, obj):
    context['qs'] =  Comment.get_for_object(obj)
    context['content_type'] = ContentType.objects.get_for_model(obj)
    context['obj'] = obj
    return context
Example #16
0
def get_comment_list(self, context):
    '''Get list of comments for given object'''
    obj = self.get_object(context)
    qs = Comment.all().filter("obj =", obj)
    context[self.varname] = list(qs)
    return ''
Example #17
0
def get_comment_count(self, context):
    '''Get total count of comments for given object'''
    obj = self.get_object(context)
    qs = Comment.all().filter("obj =", obj)
    context[self.varname] = qs.count()
    return ''
Example #18
0
def get_comment_count(obj):
    return Comment.get_for_object(obj).count()