32 lines
570 B
Ruby
32 lines
570 B
Ruby
module Iqdb
|
|
class Command
|
|
attr_reader :database
|
|
|
|
def initialize(database)
|
|
@database = database
|
|
end
|
|
|
|
def process(&block)
|
|
IO.popen("iqdb command #{database}", "w+", &block)
|
|
end
|
|
|
|
def add(post)
|
|
hex = post.id.to_s(16)
|
|
process do |io|
|
|
io.puts "add 0 #{hex}:#{post.preview_file_path}"
|
|
io.puts "quit"
|
|
io.read
|
|
end
|
|
end
|
|
|
|
def remove(post_id)
|
|
hex = post_id.to_s(16)
|
|
process do |io|
|
|
io.puts "remove 0 #{hex}"
|
|
io.puts "quit"
|
|
io.read
|
|
end
|
|
end
|
|
end
|
|
end
|