printr 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/.gitignore +2 -0
  2. data/lib/printr.rb +24 -13
  3. data/printr.gemspec +1 -1
  4. metadata +3 -3
data/.gitignore CHANGED
@@ -2,3 +2,5 @@
2
2
  db/*.sqlite3
3
3
  log/*.log
4
4
  tmp/
5
+ *~
6
+ *.gem
data/lib/printr.rb CHANGED
@@ -45,7 +45,7 @@ module Printr
45
45
  def self.open_printers
46
46
  @@conf.each do |key,value|
47
47
  key = key.to_sym
48
- puts "[Printr] Trying to open #{key}..."
48
+ puts "[Printr] Trying to open #{key} at path: #{value}..."
49
49
  begin
50
50
  @@printrs[key] = SerialPort.new(value,9600)
51
51
  puts "[Printr] Success for SerialPort: #{ @printrs[key].inspect }"
@@ -56,14 +56,10 @@ module Printr
56
56
  next if @@printrs[key]
57
57
  # Try to open it as USB
58
58
  begin
59
- @@printrs[key] = File.open(value,'w:ISO8859-15')
59
+ @@printrs[key] = "ECHO"
60
+ puts "[Printr] opened as usb"
60
61
  rescue Errno::EBUSY
61
- @@conf.each do |k,v|
62
- if @@printrs[k] and @@printrs[k].class == File then
63
- @@printrs[key] = @@printrs[k]
64
- puts "[Printr] Reused."
65
- end
66
- end
62
+ @@printrs[key] = "ECHO"
67
63
  rescue Exception => e
68
64
  @@printrs[key] = File.open("#{RAILS_ROOT}/tmp/dummy-#{key}.txt","a")
69
65
  puts "[Printr] Failed to open as either SerialPort or USB File. Created Dummy #{ @printrs[key].inspect } instead."
@@ -119,12 +115,21 @@ module Printr
119
115
  text = sanitize(text)
120
116
  if text.nil? then
121
117
  puts "[Printr] Sanitize nillified the text..."
118
+ end
119
+ puts "[Printr] Going ahead with printing of: " + text.to_s
122
120
  t = Printr.printrs[key].class
123
121
  if Printr.printrs[key].class == File then
124
122
  Printr.printrs[key].write text
125
123
  Printr.printrs[key].flush
126
- elsif Printr.printrs[key].class == SerialPort
124
+ elsif Printr.printrs[key].class == SerialPort then
127
125
  Printr.printrs[key].write text
126
+ elsif Printr.printrs[key] == 'ECHO' then
127
+ puts "[Printr] Printing to device..." + Printr.conf[key]
128
+ File.open(Printr.conf[key],'w:ISO8859-15') do |f|
129
+ f.write Printr.codes[:header]
130
+ f.write text
131
+ f.write Printr.codes[:footer]
132
+ end
128
133
  else
129
134
  puts "Could not find #{key} #{Printr.printrs[key].class}"
130
135
  end
@@ -144,11 +149,17 @@ module Printr
144
149
  end
145
150
  end
146
151
  def sanitize(text)
147
- i = 0
148
152
  begin
149
- text.gsub!(Printr.sanitize_tokens[i],Printr.sanitize_tokens[i+1])
150
- i += 2
151
- end while i < Printr.sanitize_tokens.length
153
+ i = 0
154
+ if Printr.sanitize_tokens.length > 1 then
155
+ begin
156
+ text.gsub!(Printr.sanitize_tokens[i],Printr.sanitize_tokens[i+1])
157
+ i += 2
158
+ end while i < Printr.sanitize_tokens.length
159
+ end
160
+ rescue Exception => e
161
+ puts "[Printr] Error in sanittize"
162
+ end
152
163
  return text
153
164
  end
154
165
  def template(name,bndng)
data/printr.gemspec CHANGED
@@ -4,7 +4,7 @@ require "printr/version"
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "printr"
7
- s.version = '0.1.4'
7
+ s.version = '0.1.5'
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Michael Franzl","Jason Martin"]
10
10
  s.email = ["jason@jason-knight-martin.com"]
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 4
9
- version: 0.1.4
8
+ - 5
9
+ version: 0.1.5
10
10
  platform: ruby
11
11
  authors:
12
12
  - Michael Franzl
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-18 00:00:00 +02:00
18
+ date: 2011-05-19 00:00:00 +02:00
19
19
  default_executable:
20
20
  dependencies: []
21
21