Esempio n. 1
0
    def process_preliminary(self):
        """Set an addon to preliminary."""
        if self.addon.is_premium():
            raise AssertionError('Premium add-ons cannot become preliminary.')

        changes = {'status': amo.STATUS_LITE}
        if (self.addon.status in (amo.STATUS_PUBLIC,
                                  amo.STATUS_LITE_AND_NOMINATED)):
            changes['highest_status'] = amo.STATUS_LITE

        template = '%s_to_preliminary' % self.review_type
        if (self.review_type == 'preliminary' and
            self.addon.status == amo.STATUS_LITE_AND_NOMINATED):
            template = 'nominated_to_nominated'

        self.set_addon(**changes)
        self.set_files(amo.STATUS_LITE, self.version.files.all(),
                       copy_to_mirror=True)

        self.log_action(amo.LOG.PRELIMINARY_VERSION)
        self.notify_email(template,
                          u'Mozilla Add-ons: %s %s Preliminary Reviewed')

        log.info(u'Making %s preliminary' % (self.addon))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, 'preliminary')
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 2
0
    def process_preliminary(self):
        """Set an addon to preliminary."""
        if self.addon.is_premium():
            raise AssertionError('Premium add-ons cannot become preliminary.')

        changes = {'status': amo.STATUS_LITE}
        if (self.addon.status in (amo.STATUS_PUBLIC,
                                  amo.STATUS_LITE_AND_NOMINATED)):
            changes['highest_status'] = amo.STATUS_LITE

        template = '%s_to_preliminary' % self.review_type
        if (self.review_type == 'preliminary' and
            self.addon.status == amo.STATUS_LITE_AND_NOMINATED):
            template = 'nominated_to_nominated'

        self.set_addon(**changes)
        self.set_files(amo.STATUS_LITE, self.version.files.all(),
                       copy_to_mirror=True)

        self.log_action(amo.LOG.PRELIMINARY_VERSION)
        self.notify_email(template,
                          u'Mozilla Add-ons: %s %s Preliminary Reviewed')

        log.info(u'Making %s preliminary' % (self.addon))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, 'preliminary')
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 3
0
    def process_public(self):
        if self.addon.make_public == amo.PUBLIC_IMMEDIATELY:
            self.process_public_immediately()
        else:
            self.process_public_waiting()

        if self.in_escalate:
            EscalationQueue.objects.filter(addon=self.addon).delete()

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 4
0
    def process_public(self):
        if self.addon.make_public == amo.PUBLIC_IMMEDIATELY:
            self.process_public_immediately()
        else:
            self.process_public_waiting()

        if self.in_escalate:
            EscalationQueue.objects.filter(addon=self.addon).delete()

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 5
0
    def process_public_waiting(self):
        """Make an app pending."""
        self.set_files(amo.STATUS_PUBLIC_WAITING, self.version.files.all())
        self.set_addon(highest_status=amo.STATUS_PUBLIC_WAITING, status=amo.STATUS_PUBLIC_WAITING)

        self.log_action(amo.LOG.APPROVE_VERSION_WAITING)
        self.notify_email("%s_to_public_waiting" % self.review_type, u"App Approved but waiting: %s")

        log.info(u"Making %s public but pending" % self.addon)
        log.info(u"Sending email for %s" % self.addon)

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 6
0
File: utils.py Progetto: vdt/zamboni
    def process_public_waiting(self):
        """Make an app pending."""
        self.set_files(amo.STATUS_PUBLIC_WAITING, self.version.files.all())
        self.set_addon(highest_status=amo.STATUS_PUBLIC_WAITING,
                       status=amo.STATUS_PUBLIC_WAITING)

        self.log_action(amo.LOG.APPROVE_VERSION_WAITING)
        self.notify_email('%s_to_public_waiting' % self.review_type,
                          u'App Approved but waiting: %s')

        log.info(u'Making %s public but pending' % self.addon)
        log.info(u'Sending email for %s' % self.addon)

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 7
0
    def process_public_immediately(self):
        """Approve an app."""
        # Save files first, because set_addon checks to make sure there
        # is at least one public file or it won't make the addon public.
        self.set_files(amo.STATUS_PUBLIC, self.version.files.all())
        self.set_addon(highest_status=amo.STATUS_PUBLIC, status=amo.STATUS_PUBLIC)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email("%s_to_public" % self.review_type, u"App Approved: %s")

        log.info(u"Making %s public" % self.addon)
        log.info(u"Sending email for %s" % self.addon)

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 8
0
File: utils.py Progetto: vdt/zamboni
    def process_public_immediately(self):
        """Approve an app."""
        # Save files first, because set_addon checks to make sure there
        # is at least one public file or it won't make the addon public.
        self.set_files(amo.STATUS_PUBLIC, self.version.files.all())
        self.set_addon(highest_status=amo.STATUS_PUBLIC,
                       status=amo.STATUS_PUBLIC)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email('%s_to_public' % self.review_type,
                          u'App Approved: %s')

        log.info(u'Making %s public' % self.addon)
        log.info(u'Sending email for %s' % self.addon)

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 9
0
    def process_preliminary(self):
        """Set an addons files to preliminary."""
        if self.addon.is_premium():
            raise AssertionError('Premium add-ons cannot become preliminary.')

        self.set_files(amo.STATUS_LITE, self.data['addon_files'],
                       copy_to_mirror=True)

        self.log_action(amo.LOG.PRELIMINARY_VERSION)
        self.notify_email('%s_to_preliminary' % self.review_type,
                          u'Mozilla Add-ons: %s %s Preliminary Reviewed')

        log.info(u'Making %s files %s preliminary' %
                 (self.addon,
                  ', '.join([f.filename for f in self.data['addon_files']])))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 10
0
    def process_public(self):
        """Set an addons files to public."""
        if self.review_type == 'preliminary':
            raise AssertionError('Preliminary addons cannot be made public.')

        self.set_files(amo.STATUS_PUBLIC, self.data['addon_files'],
                       copy_to_mirror=True)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email('%s_to_public' % self.review_type,
                          u'Mozilla Add-ons: %s %s Fully Reviewed')

        log.info(u'Making %s files %s public' %
                 (self.addon,
                  ', '.join([f.filename for f in self.data['addon_files']])))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 11
0
    def process_preliminary(self):
        """Set an addons files to preliminary."""
        if self.addon.is_premium():
            raise AssertionError('Premium add-ons cannot become preliminary.')

        self.set_files(amo.STATUS_LITE, self.data['addon_files'],
                       copy_to_mirror=True)

        self.log_action(amo.LOG.PRELIMINARY_VERSION)
        self.notify_email('%s_to_preliminary' % self.review_type,
                          u'Mozilla Add-ons: %s %s Preliminary Reviewed')

        log.info(u'Making %s files %s preliminary' %
                 (self.addon,
                  ', '.join([f.filename for f in self.data['addon_files']])))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 12
0
    def process_public(self):
        """Set an addons files to public."""
        if self.review_type == 'preliminary':
            raise AssertionError('Preliminary addons cannot be made public.')

        self.set_files(amo.STATUS_PUBLIC, self.data['addon_files'],
                       copy_to_mirror=True)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email('%s_to_public' % self.review_type,
                          u'Mozilla Add-ons: %s %s Fully Reviewed')

        log.info(u'Making %s files %s public' %
                 (self.addon,
                  ', '.join([f.filename for f in self.data['addon_files']])))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 13
0
    def process_public(self):
        """Set an addon to public."""
        if self.review_type == 'preliminary':
            raise AssertionError('Preliminary addons cannot be made public.')

        # Save files first, because set_addon checks to make sure there
        # is at least one public file or it won't make the addon public.
        self.set_files(amo.STATUS_PUBLIC, self.version.files.all(),
                       copy_to_mirror=True)
        self.set_addon(highest_status=amo.STATUS_PUBLIC,
                       status=amo.STATUS_PUBLIC)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email('%s_to_public' % self.review_type,
                          u'Mozilla Add-ons: %s %s Fully Reviewed')

        log.info(u'Making %s public' % (self.addon))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 14
0
    def process_public(self):
        """Set an addon to public."""
        if self.review_type == 'preliminary':
            raise AssertionError('Preliminary addons cannot be made public.')

        # Save files first, because set_addon checks to make sure there
        # is at least one public file or it won't make the addon public.
        self.set_files(amo.STATUS_PUBLIC, self.version.files.all(),
                       copy_to_mirror=True)
        self.set_addon(highest_status=amo.STATUS_PUBLIC,
                       status=amo.STATUS_PUBLIC)

        self.log_action(amo.LOG.APPROVE_VERSION)
        self.notify_email('%s_to_public' % self.review_type,
                          u'Mozilla Add-ons: %s %s Fully Reviewed')

        log.info(u'Making %s public' % (self.addon))
        log.info(u'Sending email for %s' % (self.addon))

        # Assign reviewer incentive scores.
        event = ReviewerScore.get_event_by_type(self.addon, self.review_type)
        ReviewerScore.award_points(self.request.amo_user, self.addon, event)
Esempio n. 15
0
    def test_get_event_by_type(self):
        self.addon.type = amo.ADDON_EXTENSION
        eq_(ReviewerScore.get_event_by_type(self.addon),
            amo.REVIEWED_ADDON_UPDATED)
        eq_(ReviewerScore.get_event_by_type(self.addon, 'nominated'),
            amo.REVIEWED_ADDON_FULL)
        eq_(ReviewerScore.get_event_by_type(self.addon, 'preliminary'),
            amo.REVIEWED_ADDON_PRELIM)

        self.addon.type = amo.ADDON_THEME
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_THEME)

        self.addon.type = amo.ADDON_DICT
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_DICT)

        self.addon.type = amo.ADDON_SEARCH
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_SEARCH)

        self.addon.type = amo.ADDON_LPAPP
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_LP)

        self.addon.type = amo.ADDON_LPADDON
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_LP)

        self.addon.type = amo.ADDON_PLUGIN
        eq_(ReviewerScore.get_event_by_type(self.addon), None)

        self.addon.type = amo.ADDON_API
        eq_(ReviewerScore.get_event_by_type(self.addon), None)

        self.addon.type = amo.ADDON_PERSONA
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_PERSONA)

        self.addon.type = amo.ADDON_WEBAPP
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_WEBAPP)
Esempio n. 16
0
    def test_get_event_by_type(self):
        self.addon.type = amo.ADDON_EXTENSION
        eq_(ReviewerScore.get_event_by_type(self.addon),
            amo.REVIEWED_ADDON_UPDATED)
        eq_(ReviewerScore.get_event_by_type(self.addon, 'nominated'),
            amo.REVIEWED_ADDON_FULL)
        eq_(ReviewerScore.get_event_by_type(self.addon, 'preliminary'),
            amo.REVIEWED_ADDON_PRELIM)

        self.addon.type = amo.ADDON_THEME
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_THEME)

        self.addon.type = amo.ADDON_DICT
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_DICT)

        self.addon.type = amo.ADDON_SEARCH
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_SEARCH)

        self.addon.type = amo.ADDON_LPAPP
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_LP)

        self.addon.type = amo.ADDON_LPADDON
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_LP)

        self.addon.type = amo.ADDON_PLUGIN
        eq_(ReviewerScore.get_event_by_type(self.addon), None)

        self.addon.type = amo.ADDON_API
        eq_(ReviewerScore.get_event_by_type(self.addon), None)

        self.addon.type = amo.ADDON_PERSONA
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_PERSONA)

        self.addon.type = amo.ADDON_WEBAPP
        eq_(ReviewerScore.get_event_by_type(self.addon), amo.REVIEWED_WEBAPP)