rresume 0.1.3 → 0.2.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.
Files changed (138) hide show
  1. data/lib/RRESUME_VERSION.rb +1 -1
  2. data/lib/doc/classes/Duration.html +146 -0
  3. data/lib/doc/classes/Duration.src/M000032.html +26 -0
  4. data/lib/doc/classes/Duration.src/M000033.html +18 -0
  5. data/lib/doc/classes/Duration.src/M000043.html +26 -0
  6. data/lib/doc/classes/Duration.src/M000044.html +18 -0
  7. data/lib/doc/classes/Duration.src/M000045.html +18 -0
  8. data/lib/doc/classes/Duration.src/M000053.html +26 -0
  9. data/lib/doc/classes/Duration.src/M000054.html +18 -0
  10. data/lib/doc/classes/OutputPersonal.html +131 -0
  11. data/lib/doc/classes/OutputPersonal.src/M000031.html +18 -0
  12. data/lib/doc/classes/OutputPersonal.src/M000042.html +18 -0
  13. data/lib/doc/classes/OutputPersonal.src/M000043.html +18 -0
  14. data/lib/doc/classes/OutputPersonal.src/M000052.html +18 -0
  15. data/lib/doc/classes/Person.html +266 -0
  16. data/lib/doc/classes/Person.src/M000007.html +29 -0
  17. data/lib/doc/classes/Person.src/M000008.html +22 -0
  18. data/lib/doc/classes/Person.src/M000009.html +51 -0
  19. data/lib/doc/classes/Person.src/M000010.html +25 -0
  20. data/lib/doc/classes/Person.src/M000011.html +18 -0
  21. data/lib/doc/classes/Person.src/M000012.html +25 -0
  22. data/lib/doc/classes/Person.src/M000013.html +41 -0
  23. data/lib/doc/classes/Person.src/M000014.html +64 -0
  24. data/lib/doc/classes/Person.src/M000015.html +44 -0
  25. data/lib/doc/classes/Person.src/M000016.html +37 -0
  26. data/lib/doc/classes/Person.src/M000017.html +39 -0
  27. data/lib/doc/classes/Person.src/M000018.html +57 -0
  28. data/lib/doc/classes/Person.src/M000019.html +49 -0
  29. data/lib/doc/classes/Project.html +327 -0
  30. data/lib/doc/classes/Project.src/M000020.html +21 -0
  31. data/lib/doc/classes/Project.src/M000021.html +22 -0
  32. data/lib/doc/classes/Project.src/M000022.html +48 -0
  33. data/lib/doc/classes/Project.src/M000023.html +18 -0
  34. data/lib/doc/classes/Project.src/M000024.html +19 -0
  35. data/lib/doc/classes/Project.src/M000025.html +19 -0
  36. data/lib/doc/classes/Project.src/M000026.html +21 -0
  37. data/lib/doc/classes/Project.src/M000027.html +18 -0
  38. data/lib/doc/classes/Project.src/M000028.html +22 -0
  39. data/lib/doc/classes/Project.src/M000029.html +18 -0
  40. data/lib/doc/classes/Project.src/M000030.html +30 -0
  41. data/lib/doc/classes/Project.src/M000031.html +22 -0
  42. data/lib/doc/classes/Project.src/M000032.html +48 -0
  43. data/lib/doc/classes/Project.src/M000033.html +18 -0
  44. data/lib/doc/classes/Project.src/M000034.html +19 -0
  45. data/lib/doc/classes/Project.src/M000035.html +19 -0
  46. data/lib/doc/classes/Project.src/M000036.html +21 -0
  47. data/lib/doc/classes/Project.src/M000037.html +18 -0
  48. data/lib/doc/classes/Project.src/M000038.html +22 -0
  49. data/lib/doc/classes/Project.src/M000039.html +18 -0
  50. data/lib/doc/classes/Project.src/M000040.html +18 -0
  51. data/lib/doc/classes/Project.src/M000041.html +22 -0
  52. data/lib/doc/classes/Project.src/M000042.html +48 -0
  53. data/lib/doc/classes/Project.src/M000043.html +18 -0
  54. data/lib/doc/classes/Project.src/M000044.html +19 -0
  55. data/lib/doc/classes/Project.src/M000045.html +19 -0
  56. data/lib/doc/classes/Project.src/M000046.html +21 -0
  57. data/lib/doc/classes/Project.src/M000047.html +18 -0
  58. data/lib/doc/classes/Project.src/M000048.html +22 -0
  59. data/lib/doc/classes/Project.src/M000049.html +18 -0
  60. data/lib/doc/classes/ProjectList.html +280 -0
  61. data/lib/doc/classes/ProjectList.src/M000010.html +18 -0
  62. data/lib/doc/classes/ProjectList.src/M000011.html +18 -0
  63. data/lib/doc/classes/ProjectList.src/M000012.html +41 -0
  64. data/lib/doc/classes/ProjectList.src/M000013.html +18 -0
  65. data/lib/doc/classes/ProjectList.src/M000014.html +20 -0
  66. data/lib/doc/classes/ProjectList.src/M000015.html +42 -0
  67. data/lib/doc/classes/ProjectList.src/M000016.html +38 -0
  68. data/lib/doc/classes/ProjectList.src/M000017.html +18 -0
  69. data/lib/doc/classes/ProjectList.src/M000018.html +33 -0
  70. data/lib/doc/classes/ProjectList.src/M000019.html +30 -0
  71. data/lib/doc/classes/ProjectList.src/M000020.html +19 -0
  72. data/lib/doc/classes/ProjectList.src/M000021.html +18 -0
  73. data/lib/doc/classes/ProjectList.src/M000022.html +20 -0
  74. data/lib/doc/classes/ProjectList.src/M000023.html +41 -0
  75. data/lib/doc/classes/ProjectList.src/M000024.html +41 -0
  76. data/lib/doc/classes/ProjectList.src/M000025.html +37 -0
  77. data/lib/doc/classes/ProjectList.src/M000026.html +18 -0
  78. data/lib/doc/classes/ProjectList.src/M000027.html +33 -0
  79. data/lib/doc/classes/ProjectList.src/M000028.html +30 -0
  80. data/lib/doc/classes/ProjectList.src/M000029.html +30 -0
  81. data/lib/doc/classes/ProjectList.src/M000030.html +19 -0
  82. data/lib/doc/classes/ProjectList.src/M000031.html +18 -0
  83. data/lib/doc/classes/ProjectList.src/M000032.html +20 -0
  84. data/lib/doc/classes/ProjectList.src/M000033.html +41 -0
  85. data/lib/doc/classes/ProjectList.src/M000034.html +41 -0
  86. data/lib/doc/classes/ProjectList.src/M000035.html +37 -0
  87. data/lib/doc/classes/ProjectList.src/M000036.html +18 -0
  88. data/lib/doc/classes/ProjectList.src/M000037.html +33 -0
  89. data/lib/doc/classes/ProjectList.src/M000038.html +30 -0
  90. data/lib/doc/classes/String.html +144 -0
  91. data/lib/doc/classes/String.src/M000030.html +27 -0
  92. data/lib/doc/classes/String.src/M000040.html +27 -0
  93. data/lib/doc/classes/String.src/M000041.html +27 -0
  94. data/lib/doc/classes/String.src/M000042.html +27 -0
  95. data/lib/doc/classes/String.src/M000050.html +27 -0
  96. data/lib/doc/classes/String.src/M000051.html +27 -0
  97. data/lib/doc/classes/Tool.html +222 -0
  98. data/lib/doc/classes/Tool.src/M000002.html +20 -0
  99. data/lib/doc/classes/Tool.src/M000003.html +18 -0
  100. data/lib/doc/classes/Tool.src/M000004.html +18 -0
  101. data/lib/doc/classes/Tool.src/M000005.html +19 -0
  102. data/lib/doc/classes/Tool.src/M000006.html +21 -0
  103. data/lib/doc/created.rid +1 -0
  104. data/lib/doc/files/RRESUME_VERSION_rb.html +114 -0
  105. data/lib/doc/files/pdf-test2_rb.html +110 -0
  106. data/lib/doc/files/pdf-test_rb.html +114 -0
  107. data/lib/doc/files/rresume/duration_rb.html +101 -0
  108. data/lib/doc/files/rresume/output_rb.html +101 -0
  109. data/lib/doc/files/rresume/person_rb.html +110 -0
  110. data/lib/doc/files/rresume/project_rb.html +110 -0
  111. data/lib/doc/files/rresume/projectlist_rb.html +108 -0
  112. data/lib/doc/files/rresume/sav_output_rb.html +136 -0
  113. data/lib/doc/files/rresume/sav_output_rb.src/M000001.html +41 -0
  114. data/lib/doc/files/rresume/sav_projectlist_rb.html +107 -0
  115. data/lib/doc/files/rresume/tool_rb.html +101 -0
  116. data/lib/doc/files/rresume_rb.html +113 -0
  117. data/lib/doc/files/tables_rb.html +101 -0
  118. data/lib/doc/files/ttt_rb.html +115 -0
  119. data/lib/doc/fr_class_index.html +33 -0
  120. data/lib/doc/fr_file_index.html +39 -0
  121. data/lib/doc/fr_method_index.html +59 -0
  122. data/lib/doc/index.html +24 -0
  123. data/lib/rresume.rb +1 -0
  124. data/lib/rresume/company.rb +12 -0
  125. data/lib/rresume/person.rb +281 -428
  126. data/lib/rresume/project.rb +17 -16
  127. data/lib/svn-commit.tmp +4 -0
  128. data/test/example_thomas.rb +39 -7
  129. data/test/profil.html +35 -28
  130. data/test/profil_2006-08-25.pdf +923 -0
  131. data/test/tc_thomas_neue_methode.rb +4 -0
  132. data/test/thomas.css +4 -0
  133. data/test/vorlage_profil.html +44 -18
  134. metadata +139 -6
  135. data/lib/rresume/sav_projectlist.rb +0 -365
  136. data/test/beispeil1.rb +0 -13
  137. data/test/example_sigrid.rb +0 -599
  138. data/test/profil.pdf +0 -737
@@ -0,0 +1,115 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>File: ttt.rb</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="fileHeader">
50
+ <h1>ttt.rb</h1>
51
+ <table class="header-table">
52
+ <tr class="top-aligned-row">
53
+ <td><strong>Path:</strong></td>
54
+ <td>ttt.rb
55
+ </td>
56
+ </tr>
57
+ <tr class="top-aligned-row">
58
+ <td><strong>Last Update:</strong></td>
59
+ <td>Wed Aug 09 08:22:46 CEST 2006</td>
60
+ </tr>
61
+ </table>
62
+ </div>
63
+ <!-- banner header -->
64
+
65
+ <div id="bodyContent">
66
+
67
+
68
+
69
+ <div id="contextContent">
70
+
71
+
72
+ <div id="requires-list">
73
+ <h3 class="section-bar">Required files</h3>
74
+
75
+ <div class="name-list">
76
+ amrita/template&nbsp;&nbsp;
77
+ </div>
78
+ </div>
79
+
80
+ </div>
81
+
82
+
83
+ </div>
84
+
85
+
86
+ <!-- if includes -->
87
+ <div id="includes">
88
+ <h3 class="section-bar">Included Modules</h3>
89
+
90
+ <div id="includes-list">
91
+ <span class="include-name">Amrita</span>
92
+ </div>
93
+ </div>
94
+
95
+ <div id="section">
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+ <!-- if method_list -->
105
+
106
+
107
+ </div>
108
+
109
+
110
+ <div id="validator-badges">
111
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
112
+ </div>
113
+
114
+ </body>
115
+ </html>
@@ -0,0 +1,33 @@
1
+
2
+ <?xml version="1.0" encoding="iso-8859-1"?>
3
+ <!DOCTYPE html
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
5
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6
+
7
+ <!--
8
+
9
+ Classes
10
+
11
+ -->
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
13
+ <head>
14
+ <title>Classes</title>
15
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
16
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
17
+ <base target="docwin" />
18
+ </head>
19
+ <body>
20
+ <div id="index">
21
+ <h1 class="section-bar">Classes</h1>
22
+ <div id="index-entries">
23
+ <a href="classes/Duration.html">Duration</a><br />
24
+ <a href="classes/OutputPersonal.html">OutputPersonal</a><br />
25
+ <a href="classes/Person.html">Person</a><br />
26
+ <a href="classes/Project.html">Project</a><br />
27
+ <a href="classes/ProjectList.html">ProjectList</a><br />
28
+ <a href="classes/String.html">String</a><br />
29
+ <a href="classes/Tool.html">Tool</a><br />
30
+ </div>
31
+ </div>
32
+ </body>
33
+ </html>
@@ -0,0 +1,39 @@
1
+
2
+ <?xml version="1.0" encoding="iso-8859-1"?>
3
+ <!DOCTYPE html
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
5
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6
+
7
+ <!--
8
+
9
+ Files
10
+
11
+ -->
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
13
+ <head>
14
+ <title>Files</title>
15
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
16
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
17
+ <base target="docwin" />
18
+ </head>
19
+ <body>
20
+ <div id="index">
21
+ <h1 class="section-bar">Files</h1>
22
+ <div id="index-entries">
23
+ <a href="files/RRESUME_VERSION_rb.html">RRESUME_VERSION.rb</a><br />
24
+ <a href="files/pdf-test_rb.html">pdf-test.rb</a><br />
25
+ <a href="files/pdf-test2_rb.html">pdf-test2.rb</a><br />
26
+ <a href="files/rresume_rb.html">rresume.rb</a><br />
27
+ <a href="files/rresume/duration_rb.html">rresume/duration.rb</a><br />
28
+ <a href="files/rresume/output_rb.html">rresume/output.rb</a><br />
29
+ <a href="files/rresume/person_rb.html">rresume/person.rb</a><br />
30
+ <a href="files/rresume/project_rb.html">rresume/project.rb</a><br />
31
+ <a href="files/rresume/projectlist_rb.html">rresume/projectlist.rb</a><br />
32
+ <a href="files/rresume/sav_output_rb.html">rresume/sav_output.rb</a><br />
33
+ <a href="files/rresume/tool_rb.html">rresume/tool.rb</a><br />
34
+ <a href="files/tables_rb.html">tables.rb</a><br />
35
+ <a href="files/ttt_rb.html">ttt.rb</a><br />
36
+ </div>
37
+ </div>
38
+ </body>
39
+ </html>
@@ -0,0 +1,59 @@
1
+
2
+ <?xml version="1.0" encoding="iso-8859-1"?>
3
+ <!DOCTYPE html
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
5
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6
+
7
+ <!--
8
+
9
+ Methods
10
+
11
+ -->
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
13
+ <head>
14
+ <title>Methods</title>
15
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
16
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
17
+ <base target="docwin" />
18
+ </head>
19
+ <body>
20
+ <div id="index">
21
+ <h1 class="section-bar">Methods</h1>
22
+ <div id="index-entries">
23
+ <a href="classes/ProjectList.html#M000013"><< (ProjectList)</a><br />
24
+ <a href="classes/Person.html#M000008"><< (Person)</a><br />
25
+ <a href="classes/Tool.html#M000003"><=> (Tool)</a><br />
26
+ <a href="classes/Project.html#M000025">bis (Project)</a><br />
27
+ <a href="classes/Project.html#M000027">dauer (Project)</a><br />
28
+ <a href="classes/Duration.html#M000032">human_months (Duration)</a><br />
29
+ <a href="classes/Duration.html#M000033">jahre (Duration)</a><br />
30
+ <a href="classes/ProjectList.html#M000019">last_used (ProjectList)</a><br />
31
+ <a href="classes/Tool.html#M000005">last_used (Tool)</a><br />
32
+ <a href="classes/ProjectList.html#M000014">list (ProjectList)</a><br />
33
+ <a href="classes/Project.html#M000026">monate (Project)</a><br />
34
+ <a href="classes/Project.html#M000020">new (Project)</a><br />
35
+ <a href="classes/ProjectList.html#M000010">new (ProjectList)</a><br />
36
+ <a href="classes/Person.html#M000007">new (Person)</a><br />
37
+ <a href="classes/Tool.html#M000002">new (Tool)</a><br />
38
+ <a href="classes/ProjectList.html#M000015">output (ProjectList)</a><br />
39
+ <a href="classes/Project.html#M000022">output (Project)</a><br />
40
+ <a href="classes/ProjectList.html#M000016">output_category (ProjectList)</a><br />
41
+ <a href="classes/Project.html#M000023">output_pdf (Project)</a><br />
42
+ <a href="classes/OutputPersonal.html#M000031">output_personal (OutputPersonal)</a><br />
43
+ <a href="classes/ProjectList.html#M000012">output_personal (ProjectList)</a><br />
44
+ <a href="files/rresume/sav_output_rb.html#M000001">output_personal (rresume/sav_output.rb)</a><br />
45
+ <a href="classes/ProjectList.html#M000017">output_werbung (ProjectList)</a><br />
46
+ <a href="classes/ProjectList.html#M000011">sort (ProjectList)</a><br />
47
+ <a href="classes/String.html#M000030">to_html (String)</a><br />
48
+ <a href="classes/Project.html#M000021">to_s (Project)</a><br />
49
+ <a href="classes/Project.html#M000029">tools (Project)</a><br />
50
+ <a href="classes/ProjectList.html#M000018">total_for (ProjectList)</a><br />
51
+ <a href="classes/Tool.html#M000004">total_for (Tool)</a><br />
52
+ <a href="classes/Tool.html#M000006">update (Tool)</a><br />
53
+ <a href="classes/Project.html#M000028">used_tool (Project)</a><br />
54
+ <a href="classes/Project.html#M000024">von (Project)</a><br />
55
+ <a href="classes/Person.html#M000009">write (Person)</a><br />
56
+ </div>
57
+ </div>
58
+ </body>
59
+ </html>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
5
+
6
+ <!--
7
+
8
+ RDoc Documentation
9
+
10
+ -->
11
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
12
+ <head>
13
+ <title>RDoc Documentation</title>
14
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
15
+ </head>
16
+ <frameset rows="20%, 80%">
17
+ <frameset cols="25%,35%,45%">
18
+ <frame src="fr_file_index.html" title="Files" name="Files" />
19
+ <frame src="fr_class_index.html" name="Classes" />
20
+ <frame src="fr_method_index.html" name="Methods" />
21
+ </frameset>
22
+ <frame src="files/RRESUME_VERSION_rb.html" name="docwin" />
23
+ </frameset>
24
+ </html>
@@ -1,4 +1,5 @@
1
1
  require 'rresume/person'
2
+ require 'rresume/company'
2
3
  require 'rresume/project'
3
4
  require 'rresume/projectlist'
4
5
  require 'rresume/tool'
@@ -0,0 +1,12 @@
1
+ class Company
2
+
3
+ attr_reader :name
4
+ attr_accessor :adresse, :plz, :ort, :telefon, :telefax, :email, :homepage, :rest, :logo
5
+
6
+ def initialize(name)
7
+ @name = name
8
+ end
9
+
10
+
11
+
12
+ end
@@ -1,28 +1,19 @@
1
- #begin
2
- # require 'pdf/writer'
3
- #rescue LoadError => le
4
- # if le.message =~ %r{pdf/writer$}
5
- # $LOAD_PATH.unshift("../lib")
6
- # require 'pdf/writer'
7
- # else
8
- # raise
9
- # end
10
- #end
11
-
12
1
  require 'rubygems'
13
2
  require 'pdf/writer'
14
3
  require 'pdf/simpletable' # das musste man noch extra requirieren
15
4
 
16
5
  class Person
17
6
 
18
- attr_reader :firstname, :lastname
7
+ attr_reader :firstname, :lastname, :firma
19
8
  attr_accessor :adresse, :plz, :ort, :telefon, :mobil, :email, :education_list,
20
9
  :weiterbildungen, :fremdsprachen, :sonstiges, :stylesheet_text,
21
- :einsatzort, :stundensatz, :geburtsdatum
10
+ :einsatzort, :stundensatz, :verfuegbar_ab, :geburtsdatum, :stand
22
11
 
23
- def initialize(firstname="",lastname="")
12
+ def initialize(firstname="",lastname="", firma=nil)
24
13
  @firstname = firstname
25
14
  @lastname = lastname
15
+ @stand = "#{DateTime.now.to_s[0,10]}"
16
+ @firma = firma
26
17
  # @projectlist = Array.new
27
18
  @projectlist = ProjectList.new
28
19
  @categories = Hash.new
@@ -34,6 +25,7 @@ class Person
34
25
  @pdf_h4 = 12
35
26
  end
36
27
 
28
+ # weist entweder ein ProjectList- oder ein Categories-Objekt zu
37
29
  def <<(what)
38
30
  if what.class == ProjectList
39
31
  @projectlist = what
@@ -42,39 +34,12 @@ class Person
42
34
  end
43
35
  end
44
36
 
45
- ### def output_category_links(mode)
46
- ### if mode == :text
47
- ### # Links in Text-Ausgabe nicht sinnfoll
48
- ### return
49
- ### end
50
- ### puts "<ol>" if mode == :html
51
- ### @categories.each {|category|
52
- ### name = category[0]
53
- ### puts "<li><a href=\"#anchor_#{name}\">#{name}</a></li>" if mode == :html
54
- ### }
55
- ### puts "<li><a href=\"#anchor_Sonstige_Kenntnisse\">Sonstige Kenntnisse</a></li>" if mode == :html
56
- ### puts "<li><a href=\"#anchor_Projekte\">Projekte</a></li>" if mode == :html
57
- ### puts "</ol>" if mode == :html
58
- ### end
59
-
60
- def links_as_string
61
- str=""
62
- str = str+"<ol>"
63
- @categories.each {|category|
64
- name = category[0].gsub(/ /,'_')
65
- str = str+"<li><a href=\"#anchor_#{name}\">#{name}</a></li>"
66
- }
67
- str = str+"<li><a href=\"#anchor_Sonstige_Kenntnisse\">Sonstige Kenntnisse</a></li>"
68
- str = str+"<li><a href=\"#anchor_Projekte\">Projekte</a></li>"
69
- str = str+"</ol>"
70
- str
71
- end
72
37
 
73
- def write(mode=:html, order=:newest_first, verfuegbarkeit=nil)
38
+ def write(mode=:html, order=:newest_first, verfuegbarkeit=nil, outputfile="profil")
74
39
  if mode == :pdf
75
40
  pdf = PDF::Writer.new
76
- pdf.select_font "Times-Roman"
77
- pdf.text "Hello Ruby", :font_size => 12, :justification => :left
41
+ #pdf.select_font "Times-Roman"
42
+ pdf.select_font "Helvetica"
78
43
  end
79
44
  output_oben if mode==:html
80
45
  ### output_category_links(mode)
@@ -95,13 +60,69 @@ class Person
95
60
  output_category(output_category, mode)
96
61
  end
97
62
  }
98
- output_sonstiges(mode)
99
- output_werbung(mode)
100
63
  if mode == :pdf
101
- pdf.save_as("profil.pdf")
64
+ output_sonstiges(mode,pdf)
65
+ output_werbung(mode,pdf)
66
+ else
67
+ output_sonstiges(mode)
68
+ output_werbung(mode)
69
+ end
70
+ if mode == :pdf
71
+ pdf.save_as(outputfile+".pdf")
102
72
  end
103
73
  end
104
74
 
75
+
76
+
77
+
78
+
79
+ private
80
+
81
+ def human_months(months)
82
+ if months > 12
83
+ mehrzahl=""
84
+ mehrzahl="e" if months > 24-1
85
+ "> "+jahre(months).to_s+" Jahr"+mehrzahl
86
+ else
87
+ mehrzahl=""
88
+ mehrzahl="e" if months > 1
89
+ months.to_s+" Monat"+mehrzahl
90
+ end
91
+ end
92
+
93
+ def jahre(monate)
94
+ monate/12.0.round
95
+ end
96
+
97
+ def links_as_string
98
+ str=""
99
+ str = str+"<ol>"
100
+ @categories.each {|category|
101
+ name = category[0].gsub(/ /,'_')
102
+ str = str+"<li><a href=\"#anchor_#{name}\">#{name}</a></li>"
103
+ }
104
+ str = str+"<li><a href=\"#anchor_Sonstige_Kenntnisse\">Sonstige Kenntnisse</a></li>"
105
+ str = str+"<li><a href=\"#anchor_Projekte\">Projekte</a></li>"
106
+ str = str+"</ol>"
107
+ str
108
+ end
109
+
110
+ ### def output_category_links(mode)
111
+ ### if mode == :text
112
+ ### # Links in Text-Ausgabe nicht sinnfoll
113
+ ### return
114
+ ### end
115
+ ### puts "<ol>" if mode == :html
116
+ ### @categories.each {|category|
117
+ ### name = category[0]
118
+ ### puts "<li><a href=\"#anchor_#{name}\">#{name}</a></li>" if mode == :html
119
+ ### }
120
+ ### puts "<li><a href=\"#anchor_Sonstige_Kenntnisse\">Sonstige Kenntnisse</a></li>" if mode == :html
121
+ ### puts "<li><a href=\"#anchor_Projekte\">Projekte</a></li>" if mode == :html
122
+ ### puts "</ol>" if mode == :html
123
+ ### end
124
+
125
+
105
126
  ###TODO: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
106
127
 
107
128
  def output_oben
@@ -117,29 +138,6 @@ class Person
117
138
  END
118
139
  end # output_oben
119
140
 
120
- #TODO: <http://validator.w3.org/check?uri=http%3A%2F%2Fwww.thopre.de%2Fprofil.html>
121
- # http://validator.w3.org/check/referer
122
- # http://www.w3.org/Icons/valid-xhtml10
123
- # valid-xhtml10.png
124
- # valid-html401.png
125
-
126
- # <br><a href="http://validator.w3.org/check/referer">
127
- # <img src="valid-html401.png" alt="valid html 4.01 logo">
128
- # </a>
129
-
130
- def output_werbung(mode)
131
- if mode == :html
132
- puts <<END
133
- <br>created with <a href="http://www.thopre.de/rresume/">rresume</a> (V. #{RRESUME_VERSION})
134
- END
135
- else
136
- puts <<END
137
- \ncreated with rresume (see: http://www.thopre.de/rresume/)
138
- END
139
- end
140
- end
141
-
142
-
143
141
  # output personal data like schools, universities, diplomas, etc.
144
142
  def output_personal(mode=:html,p_verfuegbarkeit=nil)
145
143
  verfuegbarkeit=<<END
@@ -212,246 +210,65 @@ __END__
212
210
  dokument_source=<<__END__
213
211
  __END__
214
212
 
215
- tmpl = TemplateText.new <<END
216
-
217
-
218
- #{dokument_source}
219
-
220
- <p>
221
- <TABLE BORDER="1" WIDTH="100%" cellpadding="5">
222
- <TR>
223
- <TD valign="top">
224
- <B>Profil</B> von<BR>
225
- #{@firstname} #{@lastname}<br>
226
- Stand: #{DateTime.now.to_s[0,10]}<br>
227
- </TD>
228
- <TD>
229
- #{@adresse}<br>
230
- #{@plz} #{@ort}<br>
231
- Tel.: #{@telefon}<BR>
232
- </TD>
233
- <TD valign="top">
234
- mobile: #{@mobil}<BR>
235
- email: <a href="mailto:#{@email}">#{@email}</a><BR>
236
-
237
- </TD>
238
- </TR>
239
- </TABLE>
240
-
241
- #{links_as_string}
242
- <hr>
243
-
244
- <H1>Aktuelles</H1>
245
-
246
- #{verfuegbarkeit}
247
-
248
- <p>
249
-
250
- <TABLE border="1" cellspacing="0" cellpadding="4">
251
- <TR>
252
- <TD >
253
- <B>
254
- bevorzugter Einsatzort:
255
- </B>
256
- </TD>
257
- <TD >
258
- #{@einsatzort}
259
- </TD>
260
- </TR>
261
- <TR>
262
- <TD >
263
- <B>
264
- Stundensatz:
265
- </B>
266
- </TD>
267
- <TD >
268
- #{stundensatz}
269
- </TD>
270
-
271
- </TR>
272
- </TABLE>
273
-
274
- <h1><a name="link">Pers&ouml;nliche Daten</a></h1>
275
- <TABLE width="95%" border="0" cellspacing="0" cellpadding="4">
276
- <TR>
277
- <!-- Row 1 Column 1 -->
278
- <TD >
279
- <B>
280
- Geburtsdatum:
281
- </B>
282
- </TD>
283
- <!-- Row 1 Column 2 -->
284
- <TD >
285
- #{@geburtsdatum}
286
- </TD>
287
- </TR>
288
- <TR>
289
- <!-- Row 2 Column 1 -->
290
- <TD valign="top">
291
- <B>
292
- Ausbildung:
293
- </B>
294
- </TD>
295
- <!-- Row 2 Column 2 -->
296
- <TD >
297
- <div id="educations"></div>
298
- </TD>
299
- </TR>
300
- <TR>
301
- <TD >
302
- <B>
303
- Fortbildung:
304
- </B>
305
- </TD>
306
- <TD >
307
- <div id="weiterbildungen"></div>
308
- </TD>
309
- </TR>
310
- <TR>
311
- <TD valign="top">
312
- <B>
313
- Fremdsprachen:
314
- </B>
315
- </TD>
316
- <TD >
317
- <div id="fremdsprachen"></div>
318
- </TD>
319
- </TR>
320
- </TABLE>
321
-
322
- END
323
- #TODO: puts "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">"
324
- array1 = @education_list
325
- array2 = @weiterbildungen
326
- array3 = @fremdsprachen
327
- data = {
328
- :educations => array1,
329
- :weiterbildungen => array2,
330
- :fremdsprachen => array3,
331
- }
332
-
333
- tmpl.prettyprint = true
334
- #tmpl.expand(STDOUT, data)
335
- tmpl.expand($stdout, data)
336
- end # output_personal
337
-
338
- def output_personal_pdf(pdf,p_verfuegbarkeit=nil)
339
- verfuegbarkeit=<<END
340
- Verf&uuml;gbarkeit: In den als frei gekennzeichneten Monaten bin ich aktuell
341
- noch verf&uuml;gbar. In den anderen bin ich ganz oder teilweise
342
- gebucht. Ggf. gibt es aber auch da M&ouml;glichkeiten einer Zusammenarbeit,
343
- falls es sich um kleinere Aufgaben handelt.
344
- <p>
345
- <table border="1" width="100%">
346
- <tr>
347
- <td><b>Verf&uuml;gbarkeit</b> </td>
348
- <td>01 </td>
349
- <td>02 </td>
350
- <td>03 </td>
351
- <td>04 </td>
352
- <td>05 </td>
353
- <td>06 </td>
354
- <td>07 </td>
355
- <td>08 </td>
356
- <td>09 </td>
357
- <td>10 </td>
358
- <td>11 </td>
359
- <td>12 </td>
360
- </tr>
213
+ if @firma
214
+ company_header=<<__END__
215
+ <h1>Mitarbeiterprofil</h1>
216
+ <img src="#{firma.logo}" align="right">
217
+ #{@firma.name}<br/>
218
+ #{@firma.adresse}<br/>
219
+ #{@firma.plz} #{firma.ort}<br/>
220
+ #{@firma.telefon}<br/>
221
+ #{@firma.telefax}<br/>
222
+ <a href="mailto:#{@firma.email}">#{@firma.email}</a><br/>
223
+ <a href="#{@firma.homepage}">#{@firma.homepage}</a><br/>
224
+ #{@firma.rest}<br/>
225
+
226
+ <table border="1" width="100%" cellpadding="5">
361
227
  <tr>
362
- <td>2006</td>
363
- <!-- 01 --> <td bgcolor="lightgreen">frei </td>
364
- <!-- 02 --> <td bgcolor="lightgreen">frei </td>
365
- <!-- 03 --> <td bgcolor="lightgreen">frei </td>
366
- <!-- 04 --> <td bgcolor="lightgreen">frei </td>
367
- <!-- 05 --> <td bgcolor="lightgreen">frei </td>
368
- <!-- 06 --> <td bgcolor="black"><font color="white">gebucht</font></td>
369
- <!-- 07 --> <td bgcolor="black"><font color="white">gebucht</font></td>
370
- <!-- 08 --> <td bgcolor="black"><font color="white">gebucht</font></td>
371
- <!-- 09 --> <td bgcolor="lightgreen">frei </td>
372
- <!-- 10 --> <td bgcolor="lightgreen">frei </td>
373
- <!-- 11 --> <td bgcolor="lightgreen">frei </td>
374
- <!-- 12 --> <td bgcolor="lightgreen">frei </td>
228
+ <td valign="top">
229
+ <b>Profil</b> von<br>
230
+ #{@firstname} #{@lastname}<br>
231
+ Stand: #{@stand}<br>
232
+ </td>
375
233
  </tr>
234
+ </table>
235
+ __END__
236
+ end
237
+
238
+ personal_header=<<__END__
239
+ <table border="1" width="100%" cellpadding="5">
376
240
  <tr>
377
- <td>2007</td>
378
- <!-- 01 --> <td bgcolor="lightgreen">frei </td>
379
- <!-- 02 --> <td bgcolor="lightgreen">frei </td>
380
- <!-- 03 --> <td bgcolor="lightgreen">frei </td>
381
- <!-- 04 --> <td bgcolor="lightgreen">frei </td>
382
- <!-- 05 --> <td bgcolor="lightgreen">frei </td>
383
- <!-- 06 --> <td bgcolor="lightgreen">frei </td>
384
- <!-- 07 --> <td bgcolor="lightgreen">frei </td>
385
- <!-- 08 --> <td bgcolor="lightgreen">frei </td>
386
- <!-- 09 --> <td bgcolor="lightgreen">frei </td>
387
- <!-- 10 --> <td bgcolor="lightgreen">frei </td>
388
- <!-- 11 --> <td bgcolor="lightgreen">frei </td>
389
- <!-- 12 --> <td bgcolor="lightgreen">frei </td>
241
+ <td valign="top">
242
+ <b>Profil</b> von<br>
243
+ #{@firstname} #{@lastname}<br>
244
+ Stand: #{@stand}<br>
245
+ </td>
246
+ <td>
247
+ #{@adresse}<br>
248
+ #{@plz} #{@ort}<br>
249
+ Tel.: #{@telefon}<BR>
250
+ </td>
251
+ <td valign="top">
252
+ mobile: #{@mobil}<br>
253
+ email: <a href="mailto:#{@email}">#{@email}</a><br>
254
+ </td>
390
255
  </tr>
391
- </table>
392
- END
393
-
394
- if p_verfuegbarkeit!=:mit_verfuegbarkeit
395
- verfuegbarkeit=""
396
- end
397
-
398
- dokument_source=<<__END__
399
- Dokument: <code>
400
- <a href="http://www.thopre.de/profil.html">
401
- http://www.thopre.de/profil.html
402
- </a>
403
- </code>
404
- __END__
405
- #!!!
406
- dokument_source=<<__END__
256
+ </table>
407
257
  __END__
408
258
 
409
- table = PDF::SimpleTable.new
410
- table.data = [
411
- { "c1" => "Profil von", "c2" => "#{adresse}", "c3" => "mobil: #{@mobil}" },
412
- { "c1" => "#{firstname} #{lastname}", "c2" => "#{@plz} #{ort}", "c3" => "eMail:. #{@email}" },
413
- { "c1" => "Stand: #{DateTime.now.to_s[0,10]}", "c2" => "Tel.: #{@telefon}", "c3" => "" },
414
- ]
415
- table.column_order = ["c1", "c2", "c3"]
416
- table.width = @pdf_table_width
417
- table.shade_rows = :none
418
- table.show_headings = false
419
- table.row_gap = 1
420
- table.render_on(pdf)
421
-
422
- pdf.text "Aktuelles", :font_size => @pdf_h1
423
-
424
- table2 = PDF::SimpleTable.new
425
- table2.data = [
426
- { "c1" => "bevorzugter Einsatzort", "c2" => "#{@einsatzort}" },
427
- { "c1" => "Stundensatz", "c2" => "#{@stundensatz}" },
428
- { "c1" => "Stand: #{DateTime.now.to_s[0,10]}", "c2" => "Tel.: #{@telefon}", "c3" => "" },
429
- ]
259
+ if @firma
260
+ header = company_header
261
+ else
262
+ header = personal_header
263
+ end
264
+
430
265
  tmpl = TemplateText.new <<END
431
266
 
432
267
 
433
268
  #{dokument_source}
434
269
 
435
270
  <p>
436
- <TABLE BORDER="1" WIDTH="100%" cellpadding="5">
437
- <TR>
438
- <TD valign="top">
439
- <B>Profil</B> von<BR>
440
- #{@firstname} #{@lastname}<br>
441
- Stand: #{DateTime.now.to_s[0,10]}<br>
442
- </TD>
443
- <TD>
444
- #{@adresse}<br>
445
- #{@plz} #{@ort}<br>
446
- Tel.: #{@telefon}<BR>
447
- </TD>
448
- <TD valign="top">
449
- mobile: #{@mobil}<BR>
450
- email: <a href="mailto:#{@email}">#{@email}</a><BR>
451
-
452
- </TD>
453
- </TR>
454
- </TABLE>
271
+ #{header}
455
272
 
456
273
  #{links_as_string}
457
274
  <hr>
@@ -462,77 +279,84 @@ email: <a href="mailto:#{@email}">#{@email}</a><BR>
462
279
 
463
280
  <p>
464
281
 
465
- <TABLE border="1" cellspacing="0" cellpadding="4">
466
- <TR>
467
- <TD >
468
- <B>
282
+ <table border="1" cellspacing="0" cellpadding="4">
283
+ <tr>
284
+ <td >
285
+ <b>
469
286
  bevorzugter Einsatzort:
470
- </B>
471
- </TD>
472
- <TD >
287
+ </b>
288
+ </td>
289
+ <td >
473
290
  #{@einsatzort}
474
- </TD>
475
- </TR>
476
- <TR>
477
- <TD >
478
- <B>
291
+ </td>
292
+ </tr>
293
+ <tr>
294
+ <td >
295
+ <b>
479
296
  Stundensatz:
480
- </B>
481
- </TD>
482
- <TD >
483
- #{@stundensatz}
484
- </TD>
485
-
486
- </TR>
487
- </TABLE>
297
+ </b>
298
+ </td>
299
+ <td >
300
+ #{stundensatz}
301
+ </td>
302
+
303
+ </tr>
304
+ <tr>
305
+ <td >
306
+ <b>
307
+ verf&uuml;gbar ab:
308
+ </b>
309
+ </td>
310
+ <td >
311
+ #{verfuegbar_ab}
312
+ </td>
313
+
314
+ </tr>
315
+ </table>
488
316
 
489
317
  <h1><a name="link">Pers&ouml;nliche Daten</a></h1>
490
- <TABLE width="95%" border="0" cellspacing="0" cellpadding="4">
491
- <TR>
492
- <!-- Row 1 Column 1 -->
493
- <TD >
494
- <B>
318
+ <table width="95%" border="0" cellspacing="0" cellpadding="4">
319
+ <tr>
320
+ <td >
321
+ <b>
495
322
  Geburtsdatum:
496
- </B>
497
- </TD>
498
- <!-- Row 1 Column 2 -->
499
- <TD >
323
+ </b>
324
+ </td>
325
+ <td >
500
326
  #{@geburtsdatum}
501
- </TD>
502
- </TR>
503
- <TR>
504
- <!-- Row 2 Column 1 -->
505
- <TD valign="top">
506
- <B>
327
+ </td>
328
+ </tr>
329
+ <tr>
330
+ <td valign="top">
331
+ <b>
507
332
  Ausbildung:
508
- </B>
509
- </TD>
510
- <!-- Row 2 Column 2 -->
511
- <TD >
333
+ </b>
334
+ </td>
335
+ <td >
512
336
  <div id="educations"></div>
513
- </TD>
514
- </TR>
515
- <TR>
516
- <TD >
517
- <B>
337
+ </td>
338
+ </tr>
339
+ <tr>
340
+ <td >
341
+ <b>
518
342
  Fortbildung:
519
- </B>
520
- </TD>
521
- <TD >
343
+ </b>
344
+ </td>
345
+ <td >
522
346
  <div id="weiterbildungen"></div>
523
- </TD>
524
- </TR>
525
- <TR>
526
- <TD valign="top">
527
- <B>
347
+ </td>
348
+ </tr>
349
+ <tr>
350
+ <td valign="top">
351
+ <b>
528
352
  Fremdsprachen:
529
- </B>
530
- </TD>
531
- <TD >
353
+ </b>
354
+ </td>
355
+ <td >
532
356
  <div id="fremdsprachen"></div>
533
- </TD>
534
- </TR>
535
- </TABLE>
357
+ </td>
358
+ </tr>
359
+ </table>
536
360
 
537
361
  END
538
362
  #TODO: puts "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">"
@@ -548,6 +372,56 @@ END
548
372
  tmpl.prettyprint = true
549
373
  #tmpl.expand(STDOUT, data)
550
374
  tmpl.expand($stdout, data)
375
+ end # output_personal
376
+
377
+ def output_personal_pdf(pdf,p_verfuegbarkeit=nil)
378
+ table = PDF::SimpleTable.new
379
+ table.data = [
380
+ { "c1" => "Profil von", "c2" => "#{adresse}", "c3" => "mobil: #{@mobil}" },
381
+ { "c1" => "#{firstname} #{lastname}", "c2" => "#{@plz} #{ort}", "c3" => "eMail:. #{@email}" },
382
+ { "c1" => "Stand: #{@stand}", "c2" => "Tel.: #{@telefon}", "c3" => "" },
383
+ ]
384
+ table.column_order = ["c1", "c2", "c3"]
385
+ table.width = @pdf_table_width
386
+ table.shade_rows = :none
387
+ table.show_headings = false
388
+ table.row_gap = 1
389
+ table.render_on(pdf)
390
+
391
+ pdf.text "Aktuelles", :font_size => @pdf_h1
392
+
393
+ table2 = PDF::SimpleTable.new
394
+ table2.data = [
395
+ { "c1" => "bevorzugter Einsatzort:", "c2" => "#{@einsatzort}" },
396
+ { "c1" => "Stundensatz:", "c2" => "#{@stundensatz}" },
397
+ ]
398
+ table2.column_order = ["c1", "c2"]
399
+ table2.width = @pdf_table_width
400
+ table2.shade_rows = :none
401
+ table2.show_headings = false
402
+ #table2.row_gap = 1
403
+ table2.render_on(pdf)
404
+
405
+ pdf.text "Pers�nliche Daten", :font_size => @pdf_h1
406
+ table3 = PDF::SimpleTable.new
407
+ table3.data = [
408
+ { "c1" => "Geburtsdatum:", "c2" => "#{@geburtsdatum}" },
409
+ { "c1" => "Ausbildung", "c2" => "#{@education_list.each {|e|
410
+ e+"\n"
411
+ }
412
+ }" },
413
+ { "c1" => "Fortbildung", "c2" => "#{@weiterbildungen.each {|w|
414
+ w+"\n"
415
+ }
416
+ }" },
417
+ { "c1" => "Fremdsprachen", "c2" => "#{@fremdsprachen}" },
418
+ ]
419
+ table3.column_order = ["c1", "c2"]
420
+ table3.width = @pdf_table_width
421
+ #table3.shade_rows = :none
422
+ table3.show_headings = false
423
+ #table3.row_gap = 1
424
+ table3.render_on(pdf)
551
425
  end
552
426
 
553
427
 
@@ -646,64 +520,23 @@ END
646
520
  end # output_category
647
521
 
648
522
  def output_category_pdf (pdf, category)
649
- #array1 = []
650
523
  table = PDF::SimpleTable.new
651
524
  table.data = []
652
525
  category[1].sort.each {|tool|
653
- #monate = total_for(tool)
654
526
  monate = tool.total_for
655
- #print "ingesamt #{tool.name}: "+monate.to_s+" Monate"
656
- #if monate > 12
657
- #print "\t(> "+jahre(monate).to_s+" Jahre)"
658
- #end
659
- #puts " zuletzt "+projectlist.last_used(tool)
660
- #array1 << { :name=>tool.name, :dauer=>human_months(monate), :zuletzt=>last_used(tool) }
661
- #array1 << { :name=>tool.name, :dauer=>human_months(monate), :zuletzt=>tool.last_used }
662
527
  table.data.push({ "Name" => tool.name, "Dauer" => human_months(monate), "zuletzt" => tool.last_used })
663
528
  }
664
- #######################################
665
529
  pdf.text "#{category[0]}", :font_size => @pdf_h1
666
530
  pdf.text "", :font_size => @pdf_h1
667
- tmpl = TemplateText.new <<END
668
- <a name="anchor_#{category[0].gsub(/ /,'_')}">
669
- <h1>#{category[0]}</h1>
670
- <table border="1" width="100%" cellpadding="5">
671
- <tr>
672
- <th>Name</th>
673
- <th>Dauer</th>
674
- <th>zuletzt</th>
675
- </tr>
676
- <tr id=table1>
677
- <td id="name">
678
- <td id="dauer">
679
- <td id="zuletzt" align="right">
680
- </tr>
681
- </table>
682
- END
683
-
684
- #data = {
685
- #:table1=>array1
686
- #}
687
- tmpl.prettyprint = true
688
- #tmpl.expand(STDOUT, data)
689
- #tmpl.expand($stdout, data)
690
- #f = File.open("hula#{cate[0]}.html","w")
691
- #######################################################
692
- #table.data = [
693
- #{ "c1" => "Profil von", "c2" => "#{adresse}", "c3" => "mobil: #{@mobil}" },
694
- #{ "c1" => "#{firstname} #{lastname}", "c2" => "#{@plz} #{ort}", "c3" => "eMail:. #{@email}" },
695
- #{ "c1" => "Stand: #{DateTime.now.to_s[0,10]}", "c2" => "Tel.: #{@telefon}", "c3" => "" },
696
- #]
697
- table.column_order = ["Name", "Dauer", "zuletzt"]
698
- table.width = @pdf_table_width
699
- table.shade_rows = :none
700
- #table.show_headings = false
701
- table.row_gap = 1
702
- table.render_on(pdf)
703
- #######################################################
531
+ table.column_order = ["Name", "Dauer", "zuletzt"]
532
+ table.width = @pdf_table_width
533
+ table.shade_rows = :none
534
+ #table.show_headings = false
535
+ table.row_gap = 1
536
+ table.render_on(pdf)
704
537
  end # output_category_pdf
705
538
 
706
- def output_sonstiges(mode)
539
+ def output_sonstiges(mode,pdf=nil)
707
540
  # array1 = []
708
541
  # array1 << { :text=>@sonstiges }
709
542
  ########################################
@@ -721,34 +554,54 @@ table.render_on(pdf)
721
554
  # tmpl.prettyprint = true
722
555
  # tmpl.expand($stdout, data)
723
556
 
724
- #erstmal nur die einfache L�sung ohne Template
725
- puts <<_END_
726
- <a name="anchor_Sonstige_Kenntnisse">
727
- <h1>Sonstige Kenntnisse</h1>
728
- <table border="1" width="100%" cellpadding="5">
729
- <tr>
730
- <td>#{@sonstiges}</td>
731
- </tr>
732
- </table>
557
+ if mode == :pdf
558
+ table = PDF::SimpleTable.new
559
+ pdf.text "Sonstige Kenntnisse", :font_size => @pdf_h1
560
+ table.data = []
561
+ table.data.push({ "Text" => @sonstiges })
562
+ table.column_order = ["Text"]
563
+ table.width = @pdf_table_width
564
+ table.shade_rows = :none
565
+ table.show_headings = false
566
+ table.row_gap = 1
567
+ table.render_on(pdf)
568
+ else
569
+ #erstmal nur die einfache Lösung ohne Template
570
+ puts <<_END_
571
+ <a name="anchor_Sonstige_Kenntnisse">
572
+ <h1>Sonstige Kenntnisse</h1>
573
+ <table border="1" width="100%" cellpadding="5">
574
+ <tr>
575
+ <td>#{@sonstiges}</td>
576
+ </tr>
577
+ </table>
733
578
  _END_
734
- end
579
+ end
580
+ end # output_sonstiges
735
581
 
736
- private
582
+ #TODO: <http://validator.w3.org/check?uri=http%3A%2F%2Fwww.thopre.de%2Fprofil.html>
583
+ # http://validator.w3.org/check/referer
584
+ # http://www.w3.org/Icons/valid-xhtml10
585
+ # valid-xhtml10.png
586
+ # valid-html401.png
737
587
 
738
- def human_months(months)
739
- if months > 12
740
- mehrzahl=""
741
- mehrzahl="e" if months > 24-1
742
- "> "+jahre(months).to_s+" Jahr"+mehrzahl
588
+ # <br><a href="http://validator.w3.org/check/referer">
589
+ # <img src="valid-html401.png" alt="valid html 4.01 logo">
590
+ # </a>
591
+
592
+ def output_werbung(mode,pdf=nil)
593
+ rresume_link = "http://www.thopre.de/rresume/"
594
+ if mode == :html
595
+ puts <<END
596
+ <br>created with <a href="#{rresume_link}">rresume</a> V. #{RRESUME_VERSION}
597
+ END
598
+ elsif mode == :pdf
599
+ pdf.text("created with <c:alink uri='#{rresume_link}'>rresume</c:alink>, V. #{RRESUME_VERSION}")
743
600
  else
744
- mehrzahl=""
745
- mehrzahl="e" if months > 1
746
- months.to_s+" Monat"+mehrzahl
601
+ puts <<END
602
+ \ncreated with rresume (see: #{rresume_link}) V. #{RRESUME_VERSION}
603
+ END
747
604
  end
748
605
  end
749
-
750
- def jahre(monate)
751
- monate/12.0.round
752
- end
753
-
606
+
754
607
  end