Class: Wikipedia::VandalismDetection::Features::AnonymityPrevious

Inherits:
Base
  • Object
show all
Defined in:
lib/wikipedia/vandalism_detection/features/anonymity_previous.rb

Overview

This feature describes whether the contributor of the old revision is an anonymous or registered Wikipedia user.

Instance Method Summary collapse

Methods inherited from Base

#count

Instance Method Details

#calculate(edit) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/wikipedia/vandalism_detection/features/anonymity_previous.rb', line 11

def calculate(edit)
  super

  old_revision = edit.old_revision

  if old_revision.contributor.blank?
    xml = Wikipedia::api_request({ prop: 'revisions', rvprop: 'user',revids: old_revision.id })
    contributor = xml.xpath('//rev/@user').text
    return Features::MISSING_VALUE if contributor.blank?

    old_revision.contributor = contributor
  end

  old_revision.anonymous_contributor? ? 0 : 1
end