Skip to content

Commit 26d6214

Browse files
iNecasares
authored andcommitted
Support for specifying tags for new cards
1 parent f9545a1 commit 26d6214

File tree

4 files changed

+28
-7
lines changed

4 files changed

+28
-7
lines changed

kanboard_category.rb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,4 @@ def self.get_all(project_id)
2020
new(data)
2121
end
2222
end
23-
24-
def move_to_position(index)
25-
connection.request('changeSwimlanePosition', [project_id, @id, index])
26-
end
2723
end

kanboard_tag.rb

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
require 'kanboard_resource'
2+
3+
class KanboardTag < KanboardResource
4+
def self.create(project_id, name)
5+
new(connection.request('createTag', [project_id, name]))
6+
end
7+
8+
def self.find_by_name(project_id, name)
9+
all = get_all(project_id)
10+
all.find { |tag| tag.name.downcase == name.downcase }
11+
end
12+
13+
def self.find_or_create(project_id, name)
14+
find_by_name(project_id, name) || create(project_id, name)
15+
end
16+
17+
def self.get_all(project_id)
18+
connection.request('getTagsByProject', [project_id]).map do |data|
19+
new(data)
20+
end
21+
end
22+
end

kansync.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
require 'kanboard_external_link'
2525
require 'kanboard_user'
2626
require 'kanboard_category'
27+
require 'kanboard_tag'
2728
require 'kanboard_mapper'
2829

2930
require 'redmine_issue'
@@ -87,9 +88,10 @@ def execute
8788
subcommand 'redmine_to_kanboard', 'Clone Redmine ticket to Kanboard' do
8889
profile_options
8990
option ['-r', '--redmine-id'], 'REDMINE_ID', 'Redmine id', required: true
91+
option ['-t', '--tag'], 'TAG', 'tag', multivalued: true
9092

9193
def execute
92-
task = RedmineToKanboard.new(profile: profile_object, redmine_id: redmine_id).run
94+
task = RedmineToKanboard.new(profile: profile_object, redmine_id: redmine_id, tags: tag_list).run
9395
puts "Kanboard task #{task.id} created"
9496
end
9597
end

redmine_to_kanboard.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
class RedmineToKanboard
2-
def initialize(profile:, redmine_id: nil, kanboard_task: nil)
2+
def initialize(profile:, redmine_id: nil, kanboard_task: nil, tags: nil)
33
@profile = profile
44
@redmine_id = redmine_id
55
@kanboard_task = kanboard_task
6+
@tags = tags || []
67
end
78

89
def run
@@ -83,7 +84,7 @@ def task_description
8384
end
8485

8586
def task_tags
86-
[]
87+
@tags
8788
end
8889

8990
def category_id

0 commit comments

Comments
 (0)