Class: Redd::Object::Submission

Inherits:
Thing show all
Includes:
Thing::Editable, Thing::Hideable, Thing::Moderatable, Thing::Saveable, Thing::Voteable
Defined in:
lib/redd/object/submission.rb

Overview

A submission made in a subreddit.

Instance Attribute Summary collapse

Attributes inherited from Thing

#id, #kind

Attributes inherited from Base

#attributes, #client

Instance Method Summary collapse

Methods included from Thing::Voteable

#downvote, #unvote, #upvote

Methods included from Thing::Saveable

#save, #unsave

Methods included from Thing::Moderatable

#approve, #distinguish, #ignore_reports, #remove, #undistinguish, #unignore_reports

Methods included from Thing::Hideable

#hide, #unhide

Methods included from Thing::Editable

#delete, #edit

Methods inherited from Thing

#==, #fullname

Methods inherited from Base

#[], attr_reader, define_attribute_method, define_predicate_method, #initialize

Constructor Details

This class inherits a constructor from Redd::Base

Instance Attribute Details

#approved_byObject (readonly)

Returns the value of attribute approved_by.



36
37
38
# File 'lib/redd/object/submission.rb', line 36

def approved_by
  @approved_by
end

#authorObject (readonly)

Returns the value of attribute author.



20
21
22
# File 'lib/redd/object/submission.rb', line 20

def author
  @author
end

#author_flair_css_classObject (readonly)

Returns the value of attribute author_flair_css_class.



42
43
44
# File 'lib/redd/object/submission.rb', line 42

def author_flair_css_class
  @author_flair_css_class
end

#author_flair_textObject (readonly)

Returns the value of attribute author_flair_text.



43
44
45
# File 'lib/redd/object/submission.rb', line 43

def author_flair_text
  @author_flair_text
end

#banned_byObject (readonly)

Returns the value of attribute banned_by.



35
36
37
# File 'lib/redd/object/submission.rb', line 35

def banned_by
  @banned_by
end

#clickedObject (readonly)

Returns the value of attribute clicked.



25
26
27
# File 'lib/redd/object/submission.rb', line 25

def clicked
  @clicked
end

#distinguishedObject (readonly)

Returns the value of attribute distinguished.



37
38
39
# File 'lib/redd/object/submission.rb', line 37

def distinguished
  @distinguished
end

#domainObject (readonly)

Returns the value of attribute domain.



45
46
47
# File 'lib/redd/object/submission.rb', line 45

def domain
  @domain
end

#downsObject (readonly)

Returns the value of attribute downs.



31
32
33
# File 'lib/redd/object/submission.rb', line 31

def downs
  @downs
end

#editedObject (readonly)

Returns the value of attribute edited.



22
23
24
# File 'lib/redd/object/submission.rb', line 22

def edited
  @edited
end

#gildedObject (readonly)

Returns the value of attribute gilded.



24
25
26
# File 'lib/redd/object/submission.rb', line 24

def gilded
  @gilded
end

#hiddenObject (readonly)

Returns the value of attribute hidden.



28
29
30
# File 'lib/redd/object/submission.rb', line 28

def hidden
  @hidden
end

#is_selfObject (readonly) Also known as: self?

Returns the value of attribute is_self.



54
55
56
# File 'lib/redd/object/submission.rb', line 54

def is_self
  @is_self
end

#likesObject (readonly)

Returns the value of attribute likes.



33
34
35
# File 'lib/redd/object/submission.rb', line 33

def likes
  @likes
end

Returns the value of attribute link_flair_css_class.



41
42
43
# File 'lib/redd/object/submission.rb', line 41

def link_flair_css_class
  @link_flair_css_class
end

Returns the value of attribute link_flair_text.



40
41
42
# File 'lib/redd/object/submission.rb', line 40

def link_flair_text
  @link_flair_text
end

#mediaObject (readonly)

Returns the value of attribute media.



46
47
48
# File 'lib/redd/object/submission.rb', line 46

def media
  @media
end

#media_embedObject (readonly)

Returns the value of attribute media_embed.



47
48
49
# File 'lib/redd/object/submission.rb', line 47

def media_embed
  @media_embed
end

#num_commentsObject (readonly) Also known as: comments_count

Returns the value of attribute num_comments.



57
58
59
# File 'lib/redd/object/submission.rb', line 57

def num_comments
  @num_comments
end

#num_reportsObject (readonly)

Returns the value of attribute num_reports.



38
39
40
# File 'lib/redd/object/submission.rb', line 38

def num_reports
  @num_reports
end

#over_18Object (readonly) Also known as: nsfw?

Returns the value of attribute over_18.



52
53
54
# File 'lib/redd/object/submission.rb', line 52

def over_18
  @over_18
end

#savedObject (readonly)

Returns the value of attribute saved.



23
24
25
# File 'lib/redd/object/submission.rb', line 23

def saved
  @saved
end

#scoreObject (readonly)

Returns the value of attribute score.



32
33
34
# File 'lib/redd/object/submission.rb', line 32

def score
  @score
end

#secure_mediaObject (readonly)

Returns the value of attribute secure_media.



50
51
52
# File 'lib/redd/object/submission.rb', line 50

def secure_media
  @secure_media
end

#secure_media_embedObject (readonly)

Returns the value of attribute secure_media_embed.



51
52
53
# File 'lib/redd/object/submission.rb', line 51

def secure_media_embed
  @secure_media_embed
end

#selftextObject (readonly)

Returns the value of attribute selftext.



48
49
50
# File 'lib/redd/object/submission.rb', line 48

def selftext
  @selftext
end

#selftext_htmlObject (readonly)

Returns the value of attribute selftext_html.



49
50
51
# File 'lib/redd/object/submission.rb', line 49

def selftext_html
  @selftext_html
end

#stickiedObject (readonly)

Returns the value of attribute stickied.



27
28
29
# File 'lib/redd/object/submission.rb', line 27

def stickied
  @stickied
end

#thumbnailObject (readonly)

Returns the value of attribute thumbnail.



53
54
55
# File 'lib/redd/object/submission.rb', line 53

def thumbnail
  @thumbnail
end

#titleObject (readonly)

Returns the value of attribute title.



56
57
58
# File 'lib/redd/object/submission.rb', line 56

def title
  @title
end

#upsObject (readonly)

Returns the value of attribute ups.



30
31
32
# File 'lib/redd/object/submission.rb', line 30

def ups
  @ups
end

#urlObject (readonly)

Returns the value of attribute url.



55
56
57
# File 'lib/redd/object/submission.rb', line 55

def url
  @url
end

#visitedObject (readonly)

Returns the value of attribute visited.



26
27
28
# File 'lib/redd/object/submission.rb', line 26

def visited
  @visited
end

Instance Method Details

#commentsObject



67
68
69
# File 'lib/redd/object/submission.rb', line 67

def comments
  @comments ||= client.submission_comments(id)
end

#createdObject



71
72
73
# File 'lib/redd/object/submission.rb', line 71

def created
  @created ||= Time.at(@attributes[:created_utc])
end

#gilded?Boolean

Returns:

  • (Boolean)


83
84
85
# File 'lib/redd/object/submission.rb', line 83

def gilded?
  gilded > 0
end


75
76
77
# File 'lib/redd/object/submission.rb', line 75

def permalink
  "http://www.reddit.com" + attributes[:permalink]
end

#short_urlObject



79
80
81
# File 'lib/redd/object/submission.rb', line 79

def short_url
  "http://redd.it/" + id
end

#subredditObject



63
64
65
# File 'lib/redd/object/submission.rb', line 63

def subreddit
  @subreddit ||= client.subreddit(@attributes[:subreddit])
end