Exemple #1
0
    def change_title_video(self, video_pk, title, user):
        title = title.strip()
        if not user.is_authenticated():
            return Error(self.authentication_error_msg)

        if not title:
            return Error(_(u'Title can\'t be empty'))

        try:
            video = Video.objects.get(pk=video_pk)
            if title and not video.title or video.is_html5(
            ) or user.is_superuser:
                if title != video.title:
                    old_title = video.title_display()
                    video.title = title
                    video.slug = slugify(video.title)
                    video.save()
                    send_change_title_email.delay(video.id, user and user.id,
                                                  old_title.encode('utf8'),
                                                  video.title.encode('utf8'))
            else:
                return Error(_(u'Title can\'t be changed for this video'))
        except Video.DoesNotExist:
            return Error(_(u'Video does not exist'))

        return Msg(_(u'Title was changed success'))
Exemple #2
0
 def change_title_video(self, video_pk, title, user):
     title = title.strip()
     if not user.is_authenticated():
         return Error(self.authentication_error_msg)
     
     if not title:
         return Error(_(u'Title can\'t be empty'))
             
     try:
         video = Video.objects.get(pk=video_pk)
         if title and not video.title or video.is_html5() or user.is_superuser:
             if title != video.title:
                 old_title = video.title_display()
                 video.title = title
                 video.slug = slugify(video.title)
                 video.save()
                 update_search_index.delay(Video, video.pk)
                 Action.change_title_handler(video, user)
                 send_change_title_email.delay(video.id, user and user.id, old_title.encode('utf8'), video.title.encode('utf8'))
         else:
             return Error(_(u'Title can\'t be changed for this video'))          
     except Video.DoesNotExist:
         return Error(_(u'Video does not exist'))
     
     return Msg(_(u'Title was changed success'))
Exemple #3
0
def ajax_change_video_title(request):
    from videos.tasks import send_change_title_email
    
    video_id = request.POST.get('video_id')
    title = request.POST.get('title')
    user = request.user
    
    try:
        video = Video.objects.get(video_id=video_id)
        if title and not video.title or video.is_html5() or user.is_superuser:
            old_title = video.title_display()
            video.title = title
            video.slug = slugify(video.title)
            video.save()
            action = Action(new_video_title=video.title, video=video)
            action.user = user.is_authenticated() and user or None
            action.created = datetime.now()
            action.action_type = Action.CHANGE_TITLE
            action.save()
            
            send_change_title_email.delay(video.id, user and user.id, old_title, video.title)          
    except Video.DoesNotExist:
        pass
    
    return HttpResponse('')
Exemple #4
0
    def test_send_change_title_email(self):
        from videos.tasks import send_change_title_email

        user = User.objects.all()[:1].get()

        self.assertFalse(self.video.followers.count() == 1 \
                         and self.video.followers.all()[:1].get() == user)

        old_title = self.video.title
        new_title = u'New title'
        self.video.title = new_title
        self.video.save()

        result = send_change_title_email.delay(self.video.id, user.id,
                                               old_title, new_title)
        if result.failed():
            self.fail(result.traceback)
        self.assertEqual(len(mail.outbox), 1)

        #test anonymous editing
        mail.outbox = []
        result = send_change_title_email.delay(self.video.id, None, old_title,
                                               new_title)
        if result.failed():
            self.fail(result.traceback)
        self.assertEqual(len(mail.outbox), 1)
Exemple #5
0
def ajax_change_video_title(request):
    from videos.tasks import send_change_title_email

    video_id = request.POST.get('video_id')
    title = request.POST.get('title')
    user = request.user

    try:
        video = Video.objects.get(video_id=video_id)
        if title and not video.title or video.is_html5() or user.is_superuser:
            old_title = video.title_display()
            video.title = title
            video.slug = slugify(video.title)
            video.save()
            action = Action(new_video_title=video.title, video=video)
            action.user = user.is_authenticated() and user or None
            action.created = datetime.now()
            action.action_type = Action.CHANGE_TITLE
            action.save()

            send_change_title_email.delay(video.id, user and user.id,
                                          old_title, video.title)
    except Video.DoesNotExist:
        pass

    return HttpResponse('')
Exemple #6
0
def ajax_change_video_title(request):
    from videos.tasks import send_change_title_email
    
    video_id = request.POST.get('video_id')
    title = request.POST.get('title')
    user = request.user

    try:
        video = Video.objects.get(video_id=video_id)
        if title and not video.title or video.is_html5() or user.is_superuser:
            old_title = video.title_display()
            video.title = title
            video.slug = slugify(video.title)
            video.save()
            update_search_index.delay(Video, video.pk)
            Action.change_title_handler(video, user)
            send_change_title_email.delay(video.id, user and user.id, old_title.encode('utf8'), video.title.encode('utf8'))          
    except Video.DoesNotExist:
        pass
    
    return HttpResponse('')
Exemple #7
0
 def test_send_change_title_email(self):
     from videos.tasks import send_change_title_email
     
     user = User.objects.all()[:1].get()
     
     self.assertFalse(self.video.followers.count() == 1 \
                      and self.video.followers.all()[:1].get() == user)
     
     old_title = self.video.title
     new_title = u'New title'
     self.video.title = new_title
     self.video.save()
     
     result = send_change_title_email.delay(self.video.id, user.id, old_title, new_title)
     if result.failed():
         self.fail(result.traceback)
     self.assertEqual(len(mail.outbox), 1)
     
     #test anonymous editing
     mail.outbox = []
     result = send_change_title_email.delay(self.video.id, None, old_title, new_title)
     if result.failed():
         self.fail(result.traceback)
     self.assertEqual(len(mail.outbox), 1)