@@ -79,8 +79,6 @@ func (c *CLI) ItemsGet(params *ItemsGetParameters) error {
79
79
}
80
80
81
81
type ItemsCreateParameters struct {
82
- FlagFile * flags.String // --file
83
- FlagWrite * flags.Bool // --write
84
82
FlagTitle * flags.String // --title
85
83
FlagTags * flags.StringSlice // --tags
86
84
FlagBody * flags.String // --body
@@ -90,54 +88,21 @@ type ItemsCreateParameters struct {
90
88
91
89
// $ qiita items create
92
90
func (c * CLI ) ItemsCreate (params * ItemsCreateParameters ) error {
93
- if params .FlagWrite .Changed (c .command ) && ! params .FlagFile .Changed (c .command ) {
94
- return ErrWriteWithoutFile
95
- }
96
- file := params .FlagFile .Get (c .command , false )
97
-
98
- p := & qiita.CreateItemParameters {}
99
-
100
- if file != nil {
101
- md , fm , err := c .readMarkdown (* file )
102
- if err != nil {
103
- return err
104
- }
105
- if fm .ID != nil {
106
- return ErrCreateWithID
107
- }
108
- p .Title = fm .Title
109
- p .Tags = fm .QiitaTags ()
110
- p .Body = & md
111
- p .Private = fm .Private
112
- }
113
-
114
- if params .FlagTitle .Changed (c .command ) {
115
- p .Title = params .FlagTitle .Get (c .command , true )
91
+ p := & qiita.CreateItemParameters {
92
+ Title : params .FlagTitle .Get (c .command , false ),
93
+ Body : params .FlagBody .Get (c .command , false ),
94
+ Private : params .FlagPrivate .Get (c .command , false ),
95
+ Tweet : params .FlagTweet .Get (c .command , false ),
116
96
}
117
97
if params .FlagTags .Changed (c .command ) {
118
98
p .Tags = util .Ptr (qiita .TagsFromStrings (* params .FlagTags .Get (c .command , true )))
119
99
}
120
- if params .FlagBody .Changed (c .command ) {
121
- p .Body = params .FlagBody .Get (c .command , true )
122
- }
123
- if params .FlagPrivate .Changed (c .command ) {
124
- p .Private = params .FlagPrivate .Get (c .command , true )
125
- }
126
- if params .FlagTweet .Changed (c .command ) {
127
- p .Tweet = params .FlagTweet .Get (c .command , true )
128
- }
129
100
130
101
item , err := c .client .CreateItem (p )
131
102
if err != nil {
132
103
return err
133
104
}
134
105
135
- if * params .FlagWrite .Get (c .command , true ) {
136
- if err := c .writeMarkdown (* file , item ); err != nil {
137
- return err
138
- }
139
- }
140
-
141
106
if err := c .printer .Print (c .writer , item ); err != nil {
142
107
return err
143
108
}
@@ -147,68 +112,28 @@ func (c *CLI) ItemsCreate(params *ItemsCreateParameters) error {
147
112
148
113
type ItemsUpdateParameters struct {
149
114
Args []string
150
- FlagFile * flags.String // --file
151
- FlagWrite * flags.Bool // --write
152
115
FlagTitle * flags.String // --title
153
116
FlagTags * flags.StringSlice // --tags
154
117
FlagBody * flags.String // --body
155
118
FlagPrivate * flags.Bool // --private
156
119
}
157
120
158
121
func (c * CLI ) ItemsUpdate (params * ItemsUpdateParameters ) error {
159
- if params .FlagWrite .Changed (c .command ) && ! params .FlagFile .Changed (c .command ) {
160
- return ErrWriteWithoutFile
161
- }
162
- file := params .FlagFile .Get (c .command , false )
163
-
164
- var id string
165
- p := & qiita.UpdateItemParameters {}
166
-
167
- if file != nil {
168
- md , fm , err := c .readMarkdown (* file )
169
- if err != nil {
170
- return err
171
- }
172
- if fm .ID != nil {
173
- id = * fm .ID
174
- }
175
- p .Title = fm .Title
176
- p .Tags = fm .QiitaTags ()
177
- p .Body = & md
178
- p .Private = fm .Private
179
- }
180
-
181
- if len (params .Args ) > 0 {
182
- id = params .Args [0 ]
183
- }
184
- if id == "" {
185
- return ErrIDRequired
186
- }
187
-
188
- if params .FlagTitle .Changed (c .command ) {
189
- p .Title = params .FlagTitle .Get (c .command , true )
122
+ id := params .Args [0 ]
123
+ p := & qiita.UpdateItemParameters {
124
+ Title : params .FlagTitle .Get (c .command , false ),
125
+ Body : params .FlagBody .Get (c .command , false ),
126
+ Private : params .FlagPrivate .Get (c .command , false ),
190
127
}
191
128
if params .FlagTags .Changed (c .command ) {
192
129
p .Tags = util .Ptr (qiita .TagsFromStrings (* params .FlagTags .Get (c .command , true )))
193
130
}
194
- if params .FlagBody .Changed (c .command ) {
195
- p .Body = params .FlagBody .Get (c .command , true )
196
- }
197
- if params .FlagPrivate .Changed (c .command ) {
198
- p .Private = params .FlagPrivate .Get (c .command , true )
199
- }
200
131
201
132
item , err := c .client .UpdateItem (id , p )
202
133
if err != nil {
203
134
return err
204
135
}
205
136
206
- if * params .FlagWrite .Get (c .command , true ) {
207
- if err := c .writeMarkdown (* file , item ); err != nil {
208
- return err
209
- }
210
- }
211
-
212
137
if err := c .printer .Print (c .writer , item ); err != nil {
213
138
return err
214
139
}
0 commit comments