Ejemplo n.º 1
0
    def check_verdict(self):
        from r2.lib.utils.trial_utils import end_trial

        verdict, koshers, spams = self.verdict()
        if verdict is None:
            return  # no verdict yet

        if verdict in ("jury timeout", "hung jury"):
            self.mistrial()
        else:
            details = ", %d-%d" % (spams, koshers)

            if verdict == "guilty":
                self.convict(details)
            elif verdict == "innocent":
                self.acquit(details)
            else:
                raise ValueError("Invalid verdict [%s]" % verdict)

        end_trial(self.defendant, verdict)

        return verdict
Ejemplo n.º 2
0
    def check_verdict(self):
        from r2.lib.utils.trial_utils import end_trial

        verdict, koshers, spams = self.verdict()
        if verdict is None:
            return # no verdict yet

        if verdict in ("jury timeout", "hung jury"):
            self.mistrial()
        else:
            details=", %d-%d" % (spams, koshers)

            if verdict == "guilty":
                self.convict(details)
            elif verdict == "innocent":
                self.acquit(details)
            else:
                raise ValueError("Invalid verdict [%s]" % verdict)

        end_trial(self.defendant, verdict)

        return verdict
Ejemplo n.º 3
0
def insert(title, sr_name, url, description, date, author='ArxivBot', cross_srs=[]):
    a = Account._by_name(author)
    sr = subreddit_or_create(sr_name, a)
    srs = [subreddit_or_create(sr_name, a) for sr_name in cross_srs]
    ups = 0
    if author=='AnnalsBot':
        ups = 1
    downs = 0
    if False:
        try:
            ls = Link._by_url(url, None)
            print 'Found %d links' % len(ls)
            for l in ls:
                if l.author_id == a._id and l.sr_id != sr._id:
                    ups = ups + l._ups - 1
                    downs = downs + l._downs
                    l._deleted=True
                    l._commit()
                    changed(l)
                    x = l.subreddit_slow
                    queries.delete_links(l)
                    print 'Deleting ' + str(l)
                else:
                    print 'Not deleting ' + str(l)
            print 'Seed votes %s %s' % (ups, downs)
        except NotFound:
            pass


    try:
        l = Link._by_url(url, sr)
        print "!! Link already exists"
        return l
    except NotFound:
        print "Submitting link"



    user = a
    l = Link(_ups = ups,
            _downs = downs,
            title = title,
            url = url,
            _spam = False,
            author_id = user._id,
            sr_id = sr._id,
            lang = sr.lang,
            ip = '127.0.0.1',
            multi_sr_id = [sr._id]+[sr._id for sr in srs],
            selftext = description)
    l.verdict = 'admin-approved'
    l.approval_checkmark = _("auto-approved")
    l._date = datetime(date.year,date.month,date.day,tzinfo=g.tz)
    l.selftext = description
    l._commit()
    #for cross_sr in cross_srs:
    #  LinkSR(l, subreddit_or_create(cross_sr, a), 'crosspost')._commit()
    l.set_url_cache()
    vote = None
    if author == 'AnnalsBot':
      vote = True
    queries.queue_vote(user, l, vote, '127.0.0.1')
    queries.new_savehide(l._save(user))

    queries.new_link(l)
    changed(l)

    queries.worker.join()
    
    end_trial(l, "admin-approved")
    admintools.unspam(l, user.name)
    ModAction.create(sr, user, 'approvelink', target=l)