rock_books 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce2a320fd7ced495ee7c8ab111413b0b368928c5da80dcb0885d6d1b4bbb22a3
4
- data.tar.gz: 607db6692e994e1a4f3a3400cb56a6827e176c707f917e81cb065cf6655cfc8f
3
+ metadata.gz: e7462246cd8ae62e943c75905486e1732586bd2d9c746c5ea145bd3c751cf637
4
+ data.tar.gz: 78fa22e6f1186a552d453340d2ac052e342f959ea1fb58c9a8ed6fc0ea4ed37b
5
5
  SHA512:
6
- metadata.gz: d29c0671a29843c0dbaeb4521e0d4b1fd61427476cd96ae726a651693975bedd129e82ddd51c1486318878b22fac199733cd2d7fc984d602a9abd682dc652c04
7
- data.tar.gz: 6cb2feaf8126241c2211f8188a500cadc6e88302b0671c495060a408075dadf34a3820370348417a5bc2c9d72537c9a0301a77b05f89c392af51b35ad1661bea
6
+ metadata.gz: b24be35a05935f8ae333f656d6400523a43a8f118b54cb0d42ecdc64bc405ac1ee5543d4292deef13676f898597ff6548142beb5089dc041fddd3e06bdceb6a0
7
+ data.tar.gz: 458d376cbad3a5d420c3908c6eb8a33037539b6d43d28f50ca5f55327d76edcd85b4d243a975fe72efdda40e0ea96b64570d3e3e551ef8678e354be0d05e4232
@@ -1,3 +1,8 @@
1
+ ### v0.5.0
2
+
3
+ * Add receipt hyperlinks to HTML output.
4
+
5
+
1
6
  ## v0.4.0
2
7
 
3
8
  * Sort unused receipts alphanumerically.
@@ -3,6 +3,7 @@ require 'awesome_print'
3
3
  require_relative 'chart_of_accounts'
4
4
  require_relative 'journal'
5
5
  require_relative '../filters/journal_entry_filters' # for shell mode
6
+ require_relative '../helpers/html_helper'
6
7
  require_relative '../helpers/parse_helper'
7
8
  require_relative '../reports/balance_sheet'
8
9
  require_relative '../reports/income_statement'
@@ -113,6 +114,12 @@ module RockBooks
113
114
  run_command("textutil -convert html -font 'Courier New Bold' -fontsize 11 #{txt_filespec} -output #{html_filespec}")
114
115
  run_command("cupsfilter #{html_filespec} > #{pdf_filespec}")
115
116
  run_command("textutil -convert html -font 'Courier New Bold' -fontsize 14 #{txt_filespec} -output #{html_filespec}")
117
+
118
+ hyperlinkized_text, replacements_made = HtmlHelper.convert_receipts_to_hyperlinks(File.read(html_filespec))
119
+ if replacements_made
120
+ File.write(html_filespec, hyperlinkized_text)
121
+ end
122
+
116
123
  puts "Created reports in txt, html, and pdf for #{"%-20s" % short_name} at #{File.dirname(txt_filespec)}.\n\n\n"
117
124
  end
118
125
  end
@@ -0,0 +1,29 @@
1
+ module RockBooks
2
+ module HtmlHelper
3
+
4
+ module_function
5
+
6
+ def self.convert_receipts_to_hyperlinks(html_text)
7
+ html_lines = html_text.split("\n")
8
+ replacements_made = false
9
+
10
+ html_lines.each_with_index do |line, index|
11
+ matches = /Receipt:\s*(.*?)</.match(line)
12
+ if matches
13
+ receipt_filespec = matches[1]
14
+ line_with_hyperlink = line.gsub( \
15
+ /Receipt:\s*#{receipt_filespec}/, \
16
+ %Q{Receipt: <a href="../../../receipts/#{receipt_filespec}">#{receipt_filespec}</a>})
17
+ html_lines[index] = line_with_hyperlink
18
+ replacements_made = true
19
+ end
20
+ end
21
+
22
+ if replacements_made
23
+ html_text = html_lines.join("\n")
24
+ end
25
+
26
+ [html_text, replacements_made]
27
+ end
28
+ end
29
+ end
@@ -1,3 +1,3 @@
1
1
  module RockBooks
2
- VERSION = "0.4.0"
2
+ VERSION = "0.5.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rock_books
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Keith Bennett
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-30 00:00:00.000000000 Z
11
+ date: 2020-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -118,6 +118,7 @@ files:
118
118
  - lib/rock_books/filters/acct_amount_filters.rb
119
119
  - lib/rock_books/filters/journal_entry_filters.rb
120
120
  - lib/rock_books/helpers/book_set_loader.rb
121
+ - lib/rock_books/helpers/html_helper.rb
121
122
  - lib/rock_books/helpers/parse_helper.rb
122
123
  - lib/rock_books/reports/balance_sheet.rb
123
124
  - lib/rock_books/reports/income_statement.rb