Beispiel #1
0
    def save(self):
        for form in self.forms:
            if form.cleaned_data:
                action = int(form.cleaned_data['action'])
                if action == ABUSE_REPORT_SKIP:
                    continue

                inst = form.instance

                app = None
                site = None
                user = None
                texts = []
                for report in inst.abuse_reports.all().filter(read=False):
                    report.read = True
                    report.save()
                    app = report.addon
                    site = report.website
                    user = report.user
                    if report.message:
                        texts.append(report.message)
                    if app:
                        mkt.log(mkt.LOG.APP_ABUSE_MARKREAD,
                                app,
                                report,
                                details=dict(body=unicode(report.message),
                                             addon_id=app.id,
                                             addon_title=unicode(app.name)))
                    elif user:
                        # Not possible on Marketplace currently.
                        pass
                    elif site:
                        mkt.log(mkt.LOG.WEBSITE_ABUSE_MARKREAD,
                                site,
                                report,
                                details=dict(body=unicode(report.message),
                                             website_id=site.id,
                                             website_title=unicode(site.name)))
                if app or site:
                    ReviewerScore.award_mark_abuse_points(self.request.user,
                                                          addon=app,
                                                          website=site)
                if app and action == ABUSE_REPORT_FLAG:
                    message = _('Abuse reports needing investigation: %s' %
                                (', '.join(texts)))
                    RereviewQueue.flag(app,
                                       mkt.LOG.REREVIEW_ABUSE_APP,
                                       message=message)
Beispiel #2
0
    def save(self):
        for form in self.forms:
            if form.cleaned_data:
                action = int(form.cleaned_data['action'])
                if action == ABUSE_REPORT_SKIP:
                    continue

                inst = form.instance

                app = None
                site = None
                user = None
                texts = []
                for report in inst.abuse_reports.all().filter(read=False):
                    report.read = True
                    report.save()
                    app = report.addon
                    site = report.website
                    user = report.user
                    if report.message:
                        texts.append(report.message)
                    if app:
                        mkt.log(mkt.LOG.APP_ABUSE_MARKREAD, app, report,
                                details=dict(
                                    body=unicode(report.message),
                                    addon_id=app.id,
                                    addon_title=unicode(app.name)
                                ))
                    elif user:
                        # Not possible on Marketplace currently.
                        pass
                    elif site:
                        mkt.log(mkt.LOG.WEBSITE_ABUSE_MARKREAD, site,
                                report,
                                details=dict(
                                    body=unicode(report.message),
                                    website_id=site.id,
                                    website_title=unicode(site.name)
                                ))
                if app or site:
                    ReviewerScore.award_mark_abuse_points(
                        self.request.user, addon=app, website=site)
                if app and action == ABUSE_REPORT_FLAG:
                    message = _('Abuse reports needing investigation: %s' %
                                (', '.join(texts)))
                    RereviewQueue.flag(
                        app, mkt.LOG.REREVIEW_ABUSE_APP, message=message)
Beispiel #3
0
 def test_award_mark_abuse_points_website(self):
     ReviewerScore.award_mark_abuse_points(self.user, website=self.website)
     score = ReviewerScore.objects.all()[0]
     eq_(score.score, mkt.REVIEWED_SCORES.get(
         mkt.REVIEWED_WEBSITE_ABUSE_REPORT))
     eq_(score.note_key, mkt.REVIEWED_WEBSITE_ABUSE_REPORT)
Beispiel #4
0
 def test_award_mark_abuse_points_app(self):
     ReviewerScore.award_mark_abuse_points(self.user, addon=self.app)
     score = ReviewerScore.objects.all()[0]
     eq_(score.score, mkt.REVIEWED_SCORES.get(
         mkt.REVIEWED_APP_ABUSE_REPORT))
     eq_(score.note_key, mkt.REVIEWED_APP_ABUSE_REPORT)
Beispiel #5
0
 def test_award_mark_abuse_points_website(self):
     ReviewerScore.award_mark_abuse_points(self.user, website=self.website)
     score = ReviewerScore.objects.all()[0]
     eq_(score.score,
         mkt.REVIEWED_SCORES.get(mkt.REVIEWED_WEBSITE_ABUSE_REPORT))
     eq_(score.note_key, mkt.REVIEWED_WEBSITE_ABUSE_REPORT)
Beispiel #6
0
 def test_award_mark_abuse_points_app(self):
     ReviewerScore.award_mark_abuse_points(self.user, addon=self.app)
     score = ReviewerScore.objects.all()[0]
     eq_(score.score,
         mkt.REVIEWED_SCORES.get(mkt.REVIEWED_APP_ABUSE_REPORT))
     eq_(score.note_key, mkt.REVIEWED_APP_ABUSE_REPORT)