Class: GdocTransWriter

Inherits:
Object
  • Object
show all
Defined in:
lib/transync/gdoc_trans/gdoc_trans_writer.rb

Instance Method Summary collapse

Constructor Details

#initialize(worksheet) ⇒ GdocTransWriter

Returns a new instance of GdocTransWriter.



6
7
8
# File 'lib/transync/gdoc_trans/gdoc_trans_writer.rb', line 6

def initialize(worksheet)
  @worksheet = worksheet
end

Instance Method Details

#get_language_column_index(language) ⇒ Object



27
28
29
30
31
32
# File 'lib/transync/gdoc_trans/gdoc_trans_writer.rb', line 27

def get_language_column_index(language)
  (2..@worksheet.num_cols).each do |column|
    return column if @worksheet[1, column].downcase == language.downcase
  end
  0
end

#write(trans_hash) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/transync/gdoc_trans/gdoc_trans_writer.rb', line 10

def write(trans_hash)
  language    = trans_hash[:language]
  lang_column = get_language_column_index(language)
  abort("\u{2717} Language (#{language}) not found in worksheet '#{@worksheet.title}'!".colorize(:red)) if lang_column == 0

  row = 2

  trans_hash[:translations].keys.each do |trans_key|
    trans_value = trans_hash[:translations][trans_key]
    @worksheet[row, 1]           = trans_key
    @worksheet[row, lang_column] = trans_value
    row += 1
  end

  @worksheet.save
end