Class: Aniview::Interface::AnimeSeries

Inherits:
Item
  • Object
show all
Includes:
Util
Defined in:
lib/aniview/interface/animeio/animeseries.rb

Instance Method Summary collapse

Methods included from Util

decode_object, encode_object, format_duration, format_progress, format_size, parse_format, readline

Methods inherited from Item

#cereal

Constructor Details

#initialize(_dir, children) ⇒ AnimeSeries

Returns a new instance of AnimeSeries.



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/aniview/interface/animeio/animeseries.rb', line 10

def initialize(_dir, children)
  @path     = _dir
  @children = children
    
  dur = getDuration
  size = getSize
    
  @attr = {
    "t" => String(@path),
    "c" => String(@children.length),
    "d" => dur,
    "D" => Util.format_duration(dur),
    "s" => size,
    "S" => Util.format_size(size),
  }
end

Instance Method Details

#attributesObject



53
54
55
# File 'lib/aniview/interface/animeio/animeseries.rb', line 53

def attributes
  return @attr
end

#getDurationObject



26
27
28
29
30
31
32
# File 'lib/aniview/interface/animeio/animeseries.rb', line 26

def getDuration
  dur = 0
  @children.each{ |child| 
    dur += child.attributes["d"]
  }
  return dur
end

#getSizeObject



34
35
36
37
38
39
40
# File 'lib/aniview/interface/animeio/animeseries.rb', line 34

def getSize
  size = 0
  @children.each{ |child| 
    size += child.attributes["s"]
  }
  return size
end

#oldestChildObject



42
43
44
45
46
47
# File 'lib/aniview/interface/animeio/animeseries.rb', line 42

def oldestChild
  oldest = DateTime.now.strftime('%Q')
  @children.each{ |child|
    
  }
end

#titleObject



49
50
51
# File 'lib/aniview/interface/animeio/animeseries.rb', line 49

def title
  return @path
end