moodwall 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e8a87e2546ffca4136d0c4a9b8a4981ae58e6121d1c28c80e8ea50f016f355d9
4
- data.tar.gz: e449ab812e1043ffb4f428d90380572307314873cac98614ecdb5c4d4b39c87a
3
+ metadata.gz: f9054fee489308683737f0cbeb2b2276598c7b3bed2b7067a90b7de4d0700782
4
+ data.tar.gz: 62c291f465fd0578bcfbba613228a5486966815b235e8a7af541e61aa5f80b15
5
5
  SHA512:
6
- metadata.gz: 9450dc43b2600adb20beed01a31734853aa02e200799152b67790329fc43ca051493cd7a091414ac24dee210105273c11e7aa676377013ffea57378c9cb73699
7
- data.tar.gz: eb934e44f1f1a8f1cf4babc2af41a1f871a524026a7c01398e36ea2a4d427b964f1540e6cad3aa6a304b1ad1463d16b2c9ca7d019c007c19dcc901510bce6df7
6
+ metadata.gz: 546cecc934bcb6cd962224a9ca2348c1c83793a004cec91f876352efb805000bf17279bbbdd8ca41fcb941822caf75c34fdb0bb3eed8cebb9860893a81cd7302
7
+ data.tar.gz: 5c7a710ca05a40cbd2154321ebfda7916fe21cba972cff503384da5e6fc5f385357d3288b2f76dcf00d97dff4c92a6615c81741e2ceff375faf61fe26b9d6e24
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- moodwall (0.1.3)
4
+ moodwall (0.1.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -8,108 +8,13 @@ rescue LoadError
8
8
  require "moodwall"
9
9
  end
10
10
 
11
- require "optparse"
12
- require 'ostruct'
13
- require 'pp'
14
-
15
- class Moodwall::Optparse
16
- class ScriptOptions
17
- attr_accessor :change, :add, :list,
18
- :mood, :wallpaper,
19
- :path, :mood_name
20
-
21
- def initialize
22
- self.change = true
23
- self.add = false
24
- self.list = false
25
- self.mood = false
26
- self.wallpaper = true
27
- end
28
-
29
- def define_options(parser)
30
- parser.banner = "Usage: moodwall [options]\nDefaults: moodwall -c -w"
31
- parser.separator ""
32
- parser.separator "Specific options:"
33
-
34
- # additional commands
35
- change_option(parser)
36
- add_option(parser)
37
- list_option(parser)
38
-
39
- wallpaper_option(parser)
40
- mood_option(parser)
41
-
42
- parser.separator ""
43
- parser.separator "Common options:"
44
-
45
- parser.on_tail("-h", "--help", "Show this message") do
46
- puts parser
47
- exit
48
- end
49
-
50
- parser.on_tail("-v", "--version", "Show version") do
51
- puts Moodwall::VERSION
52
- exit
53
- end
54
- end
55
-
56
- def change_option(parser)
57
- parser.on("-c", "--change", "Change [target]") do
58
- self.change = true
59
- self.add = false
60
- end
61
- end
62
-
63
- def add_option(parser)
64
- parser.on("-a", "--add", "Add [target]") do
65
- self.add = true
66
- self.change = false
67
- end
68
- end
69
-
70
- def list_option(parser)
71
- parser.on("-l", "--list", "List [targets]") do
72
- self.list = true
73
- self.add = false
74
- self.change = false
75
- end
76
- end
77
-
78
- def wallpaper_option(parser)
79
- parser.on("-w", "--wallpaper [PATH]", "Specifies wallpaper path") do |path, mood_name|
80
- self.wallpaper = true
81
- self.path = path
82
- self.mood_name = mood_name
83
- end
84
- end
85
-
86
- def mood_option(parser)
87
- parser.on("-m", "--mood [NAME]", "Specifies mood name") do |mood_name|
88
- self.mood = true
89
- self.mood_name = mood_name
90
- end
91
- end
92
- end
93
-
94
- def parse(args)
95
- @options = ScriptOptions.new
96
- @args = OptionParser.new do |parser|
97
- @options.define_options(parser)
98
- parser.parse!(args)
99
- end
100
- @options
101
- end
102
-
103
- attr_reader :parser, :options
104
- end
105
-
106
11
  options = Moodwall::Optparse.new.parse(ARGV)
107
12
 
108
13
  case
109
14
  when options.add && options.mood && !options.mood_name.nil? && options.path.nil?
110
15
  Moodwall::Mood.new({name: options.mood_name}).save
111
16
  when options.change && options.mood && !options.mood_name.nil?
112
- Moodwall::Mood.change_current(name: options.mood_name)
17
+ Moodwall::Mood.choose_current(name: options.mood_name)
113
18
  when options.add && options.wallpaper && !options.path.nil? && !options.mood_name.nil?
114
19
  mood = Moodwall::Mood.find_by_name(options.mood_name)
115
20
  Moodwall::Wallpaper.new({path: options.path, mood_id: mood.id}).save
@@ -4,6 +4,7 @@ require "moodwall/repository"
4
4
  require "moodwall/record"
5
5
  require "moodwall/mood"
6
6
  require "moodwall/wallpaper"
7
+ require "moodwall/optparse"
7
8
 
8
9
  module Moodwall
9
10
  # Your code goes here...
@@ -0,0 +1,94 @@
1
+ require "optparse"
2
+
3
+ module Moodwall
4
+ class Optparse
5
+ attr_reader :parser, :options
6
+
7
+ def initialize(options = ScriptOptions.new)
8
+ @options = options
9
+ end
10
+
11
+ def parse(args)
12
+ @args = OptionParser.new do |parser|
13
+ options.define_options(parser)
14
+ parser.parse!(args)
15
+ end
16
+ options
17
+ end
18
+
19
+ class ScriptOptions
20
+ attr_accessor :change, :add, :list, :mood,
21
+ :wallpaper, :path, :mood_name
22
+
23
+ def initialize
24
+ self.change = true
25
+ self.add = false
26
+ self.list = false
27
+ self.mood = false
28
+ self.wallpaper = true
29
+ end
30
+
31
+ def define_options(parser)
32
+ parser.banner = "Usage: moodwall [options]\nDefaults: moodwall -c -w"
33
+ parser.separator ""
34
+ parser.separator "Specific options"
35
+
36
+ change_option(parser)
37
+ add_option(parser)
38
+ list_option(parser)
39
+
40
+ wallpaper_option(parser)
41
+ mood_option(parser)
42
+
43
+ parser.separator ""
44
+ parser.separator "Common options:"
45
+
46
+ parser.on_tail("-h", "--help", "Show this message") do
47
+ puts parser
48
+ exit
49
+ end
50
+
51
+ parser.on_tail("-v", "--version", "Show version") do
52
+ puts Moodwall::VERSION
53
+ exit
54
+ end
55
+ end
56
+
57
+ def change_option(parser)
58
+ parser.on("-c", "--change", "Change [target]") do
59
+ self.change = true
60
+ self.add = false
61
+ end
62
+ end
63
+
64
+ def add_option(parser)
65
+ parser.on("-a", "--add", "Add [target]") do
66
+ self.add = true
67
+ self.change = false
68
+ end
69
+ end
70
+
71
+ def list_option(parser)
72
+ parser.on("-l", "--list", "List [targets]") do
73
+ self.list = true
74
+ self.add = false
75
+ self.change = false
76
+ end
77
+ end
78
+
79
+ def wallpaper_option(parser)
80
+ parser.on("-w", "--wallpaper [PATH]", "Specifies wallpaper path") do |path|
81
+ self.wallpaper = true
82
+ self.path = path
83
+ end
84
+ end
85
+
86
+ def mood_option(parser)
87
+ parser.on("-m", "--mood [NAME]", "Specifies mood name") do |mood_name|
88
+ self.mood = true
89
+ self.mood_name = mood_name
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
@@ -1,3 +1,3 @@
1
1
  module Moodwall
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moodwall
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Valiantsin Mikhaliuk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-06 00:00:00.000000000 Z
11
+ date: 2018-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -132,6 +132,7 @@ files:
132
132
  - lib/moodwall.rb
133
133
  - lib/moodwall/executable.rb
134
134
  - lib/moodwall/mood.rb
135
+ - lib/moodwall/optparse.rb
135
136
  - lib/moodwall/record.rb
136
137
  - lib/moodwall/repository.rb
137
138
  - lib/moodwall/version.rb