summaryrefslogtreecommitdiffstats
path: root/generation
diff options
context:
space:
mode:
authorSebastian Reichel <sre@ring0.de>2012-10-02 01:05:51 +0200
committerSebastian Reichel <sre@ring0.de>2012-10-02 01:05:51 +0200
commit186049b3ed33f025eeb87eb34c19a28e1d5ba70a (patch)
tree5d892564001404fe979e18eac0e65dfcad65ed5e /generation
parent9713c98dbceb54d8d00c186ba8f41f3a5befcfd1 (diff)
downloadserial-barcode-scanner-186049b3ed33f025eeb87eb34c19a28e1d5ba70a.tar.bz2
restructure code, switch from GTK to Web based UI
- move barcode generation scripts into generation/ - move code to src/ - remove database analysis from invoice/graph - put database creation sql files into sql/ - remove glade builder file - add new templates/ directory, which contains files used by the Web-UI
Diffstat (limited to 'generation')
-rw-r--r--generation/barcodelist.rb58
-rw-r--r--generation/ktt.pdfbin0 -> 199241 bytes
-rw-r--r--generation/passlist.rb71
3 files changed, 129 insertions, 0 deletions
diff --git a/generation/barcodelist.rb b/generation/barcodelist.rb
new file mode 100644
index 0000000..515403f
--- /dev/null
+++ b/generation/barcodelist.rb
@@ -0,0 +1,58 @@
+#!/usr/bin/env ruby -w
+# encoding: UTF-8
+
+require "csv"
+
+#csv input "userid,firstname,lastname"
+
+@template = %q{
+ \documentclass[a4paper,landscape]{article}
+ \usepackage[utf8]{inputenc}
+ \usepackage{graphicx}
+ \usepackage{longtable}
+ \usepackage[top=0.5cm,right=0.5cm,bottom=0.5cm,left=0.5cm,landscape]{geometry}
+ \renewcommand{\familydefault}{\sfdefault}
+ \title{Barcodelist}
+ \author{Kreativitaet trifft Technik}
+ \date{\today}
+ \begin{document}
+ \begin{center}
+ \begin{longtable}{|c|c|c|}
+ %s
+ \end{longtable}
+ \end{center}
+ \end{document}}
+
+@line = %q{
+ \hline
+ %s
+ \hline
+ %s
+ \hline}
+
+@graphics = %q{ \includegraphics{%s} %s}
+@name = %q{ %s %s %s}
+
+@csv = CSV.read(ARGV[0])
+
+#generate barcodes
+@csv.each{|r|
+ system("barcode -n -E -b 'USER %s' -o '%s.eps' -e 39\n" % [r[0], r[0]])
+}
+
+#generate latex
+tmp = ""
+graphics = ""
+name = ""
+1.upto(@csv.length){|i|
+ le = i % 3 == 0 || i >= @csv.length
+ sign = le ? "\\\\" : "&"
+ graphics += @graphics % [@csv[i-1][0], sign]
+ name += @name % [@csv[i-1][1], @csv[i-1][2], sign]
+ if le
+ tmp += @line % [graphics, name]
+ graphics = ""
+ name = ""
+ end
+}
+File.open("barcode.latex", "w+"){|f| f.write(@template % tmp)}
diff --git a/generation/ktt.pdf b/generation/ktt.pdf
new file mode 100644
index 0000000..60222d1
--- /dev/null
+++ b/generation/ktt.pdf
Binary files differ
diff --git a/generation/passlist.rb b/generation/passlist.rb
new file mode 100644
index 0000000..cb02bd1
--- /dev/null
+++ b/generation/passlist.rb
@@ -0,0 +1,71 @@
+#!/usr/bin/env ruby -w
+# encoding: UTF-8
+
+require "csv"
+
+#csv input "userid,firstname,lastname"
+
+@template = %q{
+ \documentclass[a4paper,landscape]{article}
+ \usepackage[utf8]{inputenc}
+ \usepackage{graphicx}
+ \usepackage{longtable}
+ \usepackage{array}
+ \usepackage{rotating}
+ \usepackage[top=0.5cm,right=0.5cm,bottom=0.5cm,left=0.5cm,landscape]{geometry}
+ \renewcommand{\familydefault}{\sfdefault}
+ \renewcommand{\arraystretch}{2}
+ \renewcommand{\tabcolsep}{0cm}
+ \title{Barcodelist}
+ \author{Kreativitaet trifft Technik}
+ \date{\today}
+ \begin{document}
+ \begin{center}
+ \begin{longtable}{| >{\centering\arraybackslash}p{8.5cm}| >{\centering\arraybackslash}p{8.5cm}| >{\centering\arraybackslash}p{8.5cm}|}
+ %s
+ \end{longtable}
+ \end{center}
+ \end{document}}
+
+@line = %q{
+ \hline
+ %s
+ \hline
+ %s
+ \hline}
+
+@graphics = %q{ \includegraphics{%s} \rule{0cm}{3.5cm} %s}
+@name = %q{ %s %s %s}
+@ktt = %q{\includegraphics[width=8cm,angle=180]{ktt} %s }
+
+@csv = CSV.read(ARGV[0])
+
+#generate barcodes
+@csv.each{|r|
+ system("barcode -n -E -b 'USER %s' -o '%s.eps' -e 39\n" % [r[0], r[0]])
+}
+
+#generate latex
+tmp = ""
+graphics = ""
+name = ""
+1.upto(@csv.length){|i|
+ le = i % 3 == 0 || i >= @csv.length
+ sign = le ? "\\\\" : "&"
+ graphics += @graphics % [@csv[i-1][0], sign]
+ name += @name % [@csv[i-1][1], @csv[i-1][2], sign]
+ if le
+ tmp += @line % [graphics, name]
+ graphics = ""
+ name = ""
+ 1.upto(3) {|j|
+ sign = j == 3 ? "\\\\" : "&"
+ graphics += @ktt % sign
+ name += " " + sign
+ }
+ tmp += @line % [name, graphics]
+ graphics = ""
+ name = ""
+ end
+}
+File.open("barcode.latex", "w+"){|f| f.write(@template % tmp)}