latex_curriculum_vitae 1.2.2 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +35 -28
  4. data/History.rdoc +14 -0
  5. data/LICENSE.rdoc +1 -1
  6. data/Manifest.txt +0 -8
  7. data/README.rdoc +10 -8
  8. data/Rakefile +5 -4
  9. data/bin/latexcv.rb +7 -4
  10. data/data/latex_curriculum_vitae/Appendix/Bibliography/bibliography1.bib +0 -4
  11. data/data/latex_curriculum_vitae/Cover/Cover.tex +6 -25
  12. data/data/latex_curriculum_vitae/Motivational_Letter/bwanschreiben.tex +11 -18
  13. data/data/latex_curriculum_vitae/Resume/cv_10.tex +71 -77
  14. data/data/latex_curriculum_vitae/Resume/friggeri-cv.cls +26 -11
  15. data/etc/latex_curriculum_vitae.cfg +5 -1
  16. data/etc/personal_data.tex +1 -1
  17. data/lib/latex_curriculum_vitae/cover.rb +1 -2
  18. data/lib/latex_curriculum_vitae/cv.rb +2 -1
  19. data/lib/latex_curriculum_vitae/email.rb +26 -18
  20. data/lib/latex_curriculum_vitae/entityfile.rb +26 -5
  21. data/lib/latex_curriculum_vitae/get-config.rb +11 -5
  22. data/lib/latex_curriculum_vitae/letter.rb +3 -1
  23. data/lib/latex_curriculum_vitae/notifier.rb +2 -1
  24. data/lib/latex_curriculum_vitae/outfile.rb +11 -5
  25. data/lib/latex_curriculum_vitae.rb +18 -7
  26. metadata +19 -13
  27. data/data/latex_curriculum_vitae/Resume/cv_10.aux +0 -43
  28. data/data/latex_curriculum_vitae/Resume/cv_10.bbl +0 -1238
  29. data/data/latex_curriculum_vitae/Resume/cv_10.bcf +0 -2273
  30. data/data/latex_curriculum_vitae/Resume/cv_10.blg +0 -82
  31. data/data/latex_curriculum_vitae/Resume/cv_10.out +0 -0
  32. data/data/latex_curriculum_vitae/Resume/cv_10.pdf +0 -0
  33. data/data/latex_curriculum_vitae/Resume/cv_10.run.xml +0 -86
  34. data/lib/latex_curriculum_vitae/glade/latexcv.glade +0 -249
@@ -9,6 +9,8 @@
9
9
  % Original author:
10
10
  % Adrien Friggeri (adrien@friggeri.net)
11
11
  % https://github.com/afriggeri/CV
12
+ % Modfied by: Sascha Manns (Sascha.Manns@mailbox.org)
13
+ % https://github.com/saigkill/latex_curriculum_vitae
12
14
  %
13
15
  % License:
14
16
  % CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/)
@@ -19,16 +21,15 @@
19
21
  %
20
22
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
21
23
 
22
- \documentclass[a4paper,latin]{friggeri-cv} % Add 'print' as an option into the square bracket to remove colors from this template for printing
24
+ \documentclass[a4paper]{friggeri-cv} % Add 'print' as an option into the square bracket to remove colors from this template for printing
23
25
  \hypersetup{
24
26
  pdftitle={Bewerbungsunterlagen von Sascha Manns}, %%
25
27
  pdfauthor={Sascha Manns}, %%
26
28
  pdfsubject={Bewerbungsunterlagen}, %%
27
29
  pdfcreator={XeLaTEX and Biber with hyperref-package.},
28
30
  pdfproducer={Sascha Manns, Mayen}, %%
29
- pdfkeywords={Manns, Mayen, Bewerbung, IT, Community, Linux, Programmierer, Dispatcher, Buchautor, Schriftsteller, Geschäftsprozess} %%
31
+ pdfkeywords={Manns, Mayen, Bewerbung, IT-Support, Community, Linux, Programmierer, Dispatcher, Buchautor, Schriftsteller, Geschäftsprozess} %%
30
32
  }
31
- \usepackage{pdfpages}
32
33
  \usepackage{graphicx}
33
34
  \usepackage{xltxtra}
34
35
  \usepackage{progressbar}
@@ -36,7 +37,6 @@ pdfkeywords={Manns, Mayen, Bewerbung, IT, Community, Linux, Programmierer, Dispa
36
37
  \addbibresource{../Appendix/Bibliography/bibliography1.bib} % Specify the bibliography file to include publications
37
38
 
38
39
  \begin{document}
39
- %\includepdf{../Cover/Cover}
40
40
 
41
41
  \header{Sascha}{Manns}{Supporter/Documentation Specialist} % Your name and current job title/field
42
42
 
@@ -53,7 +53,7 @@ Germany
53
53
  +49 (1573) 924 2730
54
54
  +49 (2651) 40 14 045
55
55
  ~
56
- \href{mailto:Sascha.Manns@directbox.com}{Sascha.Manns@directbox.com}\includegraphics[width=0.3cm]{../Pictures/email.png}
56
+ \href{mailto:Sascha.Manns@mailbox.org}{Sascha.Manns@mailbox.org}\includegraphics[width=0.3cm]{../Pictures/email.png}
57
57
  \href{http://saigkill.github.io}{saigkill.github.io}\includegraphics[width=0.3cm]{../Pictures/aboutme.png}
58
58
  Geburtsdatum: 01.10.1979
59
59
  \section{Social Media}
@@ -107,18 +107,18 @@ Russisch \progressbar[linecolor=blue,tickscolor=orange,emptycolor=white,filledco
107
107
  {Hays Temp GmbH / More Holding}
108
108
  {Mannheim}
109
109
  {\emph{IT-Supporter/Dispatcher/Controller} \\
110
- Detailierte Aufgaben bei ITSCare Neuwied (ZBV):
111
- \begin{itemize}
112
- \item Kundenpflege via Telefon und Email
113
- \item Dispatching und Teamcontroling
114
- \item AmSys/IDM (AOK Krankenkassen)
115
- \item Eröffnung, Entsperrung oder Löschung von Benutzerkonten
116
- \item Passwort- und Rechtevergaben
117
- \item SLA-konforme Bearbeitung von eingehenden Störungen (betreffend Benutzerverwaltung) im Rahmen des Incident-Managements
118
- \item Pflege von Logon-Prozeduren
119
- \item Annahme, Erfassung und Bearbeitung eingehender Benutzeranträge
120
- \item Benutzerkontenverwaltung im Active Directory
121
- \end{itemize}
110
+ Detailierte Aufgaben bei ITSCare Neuwied (ZBV):
111
+ \begin{itemize}
112
+ \item Kundenpflege via Telefon und Email
113
+ \item Dispatching und Teamcontroling
114
+ \item AmSys/IDM (AOK Krankenkassen)
115
+ \item Eröffnung, Entsperrung oder Löschung von Benutzerkonten
116
+ \item Passwort- und Rechtevergaben
117
+ \item SLA-konforme Bearbeitung von eingehenden Störungen (betreffend Benutzerverwaltung) im Rahmen des Incident-Managements
118
+ \item Pflege von Logon-Prozeduren
119
+ \item Annahme, Erfassung und Bearbeitung eingehender Benutzeranträge
120
+ \item Benutzerkontenverwaltung im Active Directory
121
+ \end{itemize}
122
122
  }
123
123
  %------------------------------------------------
124
124
  \entry
@@ -126,14 +126,14 @@ Detailierte Aufgaben bei ITSCare Neuwied (ZBV):
126
126
  {Lulu Press Inc.}
127
127
  {Homeoffice}
128
128
  {\emph{Buchautor \& Herausgeber}\\
129
- Detailierte Aufgaben:
130
- \begin{itemize}
131
- \item Recherche
132
- \item Schreiben des Handbuchs
133
- \item Einführung des Lektorenteams in das Projekt
134
- \item Einführung einer Google Code-In Studentin in den Textsatz (Teilnahme als Mentor)
135
- \item Satz \& Layout (\LaTeX{} und DocBook/XSL-FO)
136
- \end{itemize}
129
+ Detailierte Aufgaben:
130
+ \begin{itemize}
131
+ \item Recherche
132
+ \item Schreiben des Handbuchs
133
+ \item Einführung des Lektorenteams in das Projekt
134
+ \item Einführung einer Google Code-In Studentin in den Textsatz (Teilnahme als Mentor)
135
+ \item Satz \& Layout (\LaTeX{} und DocBook/XSL-FO)
136
+ \end{itemize}
137
137
  }
138
138
  %------------------------------------------------
139
139
  \entry
@@ -141,18 +141,18 @@ Detailierte Aufgaben:
141
141
  {open-slx GmbH}
142
142
  {Homeoffice}
143
143
  {\emph{Community \& Support Agent} \\
144
- Detailierte Aufgaben:
145
- \begin{itemize}
146
- \item Level 1 \& 2 Support via Telefon und Email
147
- \item Testen von Software
148
- \item Webseitenbetreuung \& Social Media
149
- \item Dokumentation
150
- \item Community Management
151
- \item Projektleitung deutsches openSUSE Wiki. Migration des Wikis zu neuer Struktur
152
- \item openSUSE Weekly News
153
- \item Paketverwaltung einiger RPM-Pakete
154
- \item openSUSE Membership Application Team
155
- \end{itemize}
144
+ Detailierte Aufgaben:
145
+ \begin{itemize}
146
+ \item Level 1 \& 2 Support via Telefon und Email
147
+ \item Testen von Software
148
+ \item Webseitenbetreuung \& Social Media
149
+ \item Dokumentation
150
+ \item Community Management
151
+ \item Projektleitung deutsches openSUSE Wiki. Migration des Wikis zu neuer Struktur
152
+ \item openSUSE Weekly News
153
+ \item Paketverwaltung einiger RPM-Pakete
154
+ \item openSUSE Membership Application Team
155
+ \end{itemize}
156
156
  Auflösung der Stelle durch mangelnde Absatzzahlen des Boxproduktes.
157
157
  }
158
158
  \end{entrylist}
@@ -163,17 +163,17 @@ Auflösung der Stelle durch mangelnde Absatzzahlen des Boxproduktes.
163
163
  {openSUSE Linux Projekt}
164
164
  {Homeoffice}
165
165
  {\emph{Paketbetreuer/Teamleiter}\\
166
- Detailierte Aufgaben:
167
- \begin{itemize}
168
- \item Beschaffung, Aktualisierung des Sourcecodes im Buildservice
169
- \item Compiling und Packaging neuer Binärpakete
170
- \item Verteilung via Buildservice
171
- \item Leiter des openSUSE Newsletters und Publikationen in bis zu 12 Sprachen
172
- \item Erfinder eines neuen Podcastformates (Vertonte Weekly News)
173
- \item openSUSE Medical Project (Subprojektgründer)
174
- \item Mitglied des openSUSE Marketing Teams
175
- \item Mitglied des openSUSE Feature Screening Teams
176
- \end{itemize}
166
+ Detailierte Aufgaben:
167
+ \begin{itemize}
168
+ \item Beschaffung, Aktualisierung des Sourcecodes im Buildservice
169
+ \item Compiling und Packaging neuer Binärpakete
170
+ \item Verteilung via Buildservice
171
+ \item Leiter des openSUSE Newsletters und publikation in bis zu 12 Sprachen
172
+ \item Erfinder eines neuen Podcastformates (Vertonte Weekly News)
173
+ \item openSUSE Medical Project (Subprojektgründer)
174
+ \item Mitglied des openSUSE Marketing Teams
175
+ \item Mitglied des openSUSE Feature Screening Teams
176
+ \end{itemize}
177
177
  }
178
178
  %-----------------------------------------------
179
179
  \entry
@@ -189,14 +189,14 @@ Detailierte Aufgaben:
189
189
  {Auto Deschner GmbH}
190
190
  {Mendig}
191
191
  {\emph{Kaufmann im Einzelhandel}\\
192
- Detailierte Aufgaben:
193
- \begin{itemize}
194
- \item Einkauf \& Warenannahme \& Kontrolle
195
- \item Bestandsbuchungen der Waren
196
- \item Kundenbetreuung
197
- \item Rechnungserstellung
198
- \item Projektplanung
199
- \end{itemize}
192
+ Detailierte Aufgaben:
193
+ \begin{itemize}
194
+ \item Einkauf \& Warenannahme \& Kontrolle
195
+ \item Bestandsbuchungen der Waren
196
+ \item Kundenbetreuung
197
+ \item Rechnungserstellung
198
+ \item Projektplanung
199
+ \end{itemize}
200
200
  }
201
201
  \end{entrylist}
202
202
 
@@ -233,12 +233,6 @@ Allgemeine kaufm. Tätigkeiten.
233
233
  {Technische Hochschule Mittelhessen}
234
234
  {\emph{MOOC}}
235
235
  %------------------------------------------------
236
- %\entry
237
- %{06/2013}
238
- %{Kompetenzpass für Ökonomen}
239
- %{BV Deutscher Volks- und Betriebswirte}
240
- %{Düsseldorf}
241
- %------------------------------------------------
242
236
  \entry
243
237
  {04/2013}
244
238
  {Onlinequalifizierung: Schlüsselkompetenzen kompakt}
@@ -258,18 +252,12 @@ Allgemeine kaufm. Tätigkeiten.
258
252
  {mUXCamp}
259
253
  {mUXCamp, Worms}
260
254
  {Planungsteam für nächstes Camp. (Mitveranstalter: \\FG Wirtschaftsinformatik des BDVB)}
261
- %--------------------------------------------
262
- %\entry
263
- %{2013--jetzt}
264
- %{BV Deutscher Volks- und Betriebswirte}
265
- %{FG Wirtschaftsinformatik}
266
- %{Mitarbeit in verschiedenen Projekten}
267
255
  %---------------------------------------------
268
256
  \entry
269
257
  {2010--2011}
270
258
  {Piratenpartei Deutschland}
271
259
  {Bundespressestelle}
272
- {}
260
+ {Gründungsmitglied SG-Presse}
273
261
  %--------------------------------------------
274
262
  \entry
275
263
  {2008--2015}
@@ -370,6 +358,12 @@ Allgemeine kaufm. Tätigkeiten.
370
358
  %------------------------------------------------
371
359
  \entry
372
360
  {2010}
361
+ {Radiotux Podcast}
362
+ {Produzent}
363
+ {Erfinder des Weekly-News Podcast-Formats}
364
+ %------------------------------------------------
365
+ \entry
366
+ {2010}
373
367
  {openSUSE Conference}
374
368
  {Vortrag}
375
369
  {Vortrag über den aktuellen Stand der Weekly News und die Planungen der Zukunft}
@@ -399,15 +393,15 @@ Allgemeine kaufm. Tätigkeiten.
399
393
 
400
394
  \printbibsection{book}{Bücher} % Print all books from the bibliography
401
395
 
402
- \begin{refsection} % This is a custom heading for those references marked as "inproceedings" but not containing "keyword=france"
403
- \nocite{*}
404
- \printbibliography[sorting=chronological, type=inproceedings, title={international peer-reviewed conferences/proceedings}, notkeyword={france}, heading=subbibliography]
405
- \end{refsection}
396
+ %\begin{refsection} % This is a custom heading for those references marked as "inproceedings" but not containing "keyword=france"
397
+ %\nocite{*}
398
+ %\printbibliography[sorting=chronological, type=inproceedings, title={international peer-reviewed conferences/proceedings}, notkeyword={france}, heading=subbibliography]
399
+ %\end{refsection}
406
400
 
407
- \begin{refsection} % This is a custom heading for those references marked as "inproceedings" and containing "keyword=france"
408
- \nocite{*}
409
- \printbibliography[sorting=chronological, type=inproceedings, title={local peer-reviewed conferences/proceedings}, keyword={france}, heading=subbibliography]
410
- \end{refsection}
401
+ %\begin{refsection} % This is a custom heading for those references marked as "inproceedings" and containing "keyword=france"
402
+ %\nocite{*}
403
+ %\printbibliography[sorting=chronological, type=inproceedings, title={local peer-reviewed conferences/proceedings}, keyword={france}, heading=subbibliography]
404
+ %\end{refsection}
411
405
 
412
406
  \printbibsection{misc}{other publications} % Print all miscellaneous entries from the bibliography
413
407
 
@@ -1,3 +1,25 @@
1
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2
+ % Friggeri Resume/CV
3
+ % XeLaTeX Template
4
+ % Version 1.0 (5/5/13)
5
+ %
6
+ % This template has been downloaded from:
7
+ % http://www.LaTeXTemplates.com
8
+ %
9
+ % Original author:
10
+ % Adrien Friggeri (adrien@friggeri.net)
11
+ % https://github.com/afriggeri/CV
12
+ % Modfied by: Sascha Manns (Sascha.Manns@mailbox.org)
13
+ % https://github.com/saigkill/latex_curriculum_vitae
14
+ %
15
+ % License:
16
+ % CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/)
17
+ %
18
+ % Important notes:
19
+ % This template needs to be compiled with XeLaTeX and the bibliography, if used,
20
+ % needs to be compiled with biber rather than bibtex.
21
+ %
22
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1
23
  \ProvidesClass{friggeri-cv}[2012/04/30 CV class]
2
24
  \NeedsTeXFormat{LaTeX2e}
3
25
 
@@ -51,10 +73,10 @@
51
73
 
52
74
  \newfontfamily\bodyfont[]{Koblenz Serial}
53
75
  \newfontfamily\thinfont[]{Koblenz Serial Light}
54
- \newfontfamily\headingfont[]{Koblenz Serial Bold} % Koblenz Serial Bold
76
+ \newfontfamily\headingfont[]{Koblenz Serial Bold}
55
77
 
56
78
  \defaultfontfeatures{Mapping=tex-text}
57
- \setmainfont[Mapping=tex-text, Color=textcolor]{Isonorm Pro} % Newcastle Pro Light
79
+ \setmainfont[Mapping=tex-text, Color=textcolor]{Isonorm Pro}
58
80
 
59
81
  %\setmathfont{XITS Math}
60
82
 
@@ -295,14 +317,6 @@
295
317
  \par\vspace{0.3\baselineskip}
296
318
  }
297
319
 
298
- %\DeclareNameFormat{author}{%
299
- % \small\addfontfeature{Color=lightgray}%
300
- % \ifblank{#3}{}{#3\space}#1%
301
- % \ifthenelse{\value{listcount}<\value{liststop}}
302
- % {\addcomma\space}
303
- % {}%
304
- %}
305
-
306
320
  \DeclareNameFormat{author}{%
307
321
  \nameparts{#1}%
308
322
  \small\addfontfeature{Color=lightgray}%
@@ -314,8 +328,9 @@
314
328
 
315
329
  \newcommand{\printbibsection}[2]{
316
330
  \begin{refsection}
331
+ \newrefcontext[sorting=chronological]
317
332
  \nocite{*}
318
- \printbibliography[sorting=chronological, type={#1}, title={#2}, heading=subbibliography]
333
+ \printbibliography[type={#1}, title={#2}, heading=subbibliography]
319
334
  \end{refsection}
320
335
  }
321
336
 
@@ -6,6 +6,10 @@ name_of_letter = "bwanschreiben"
6
6
  own_name = "Sascha Manns"
7
7
  own_email_address = "Sascha.Manns@directbox.com"
8
8
  own_smtp = "smtp.my.com"
9
+ own_port = "587"
9
10
  own_username = "myusername"
10
11
  own_password = "mypassword"
11
- pdf_reader = "/home/sascha/FoxitSoftware/FoxitReader/FoxitReader.sh"
12
+ pdf_reader = "/home/sascha/FoxitSoftware/FoxitReader/FoxitReader.sh"
13
+ shorten_url = "yes"
14
+ bitly_user = "test"
15
+ bitly_apikey = "0815"
@@ -3,7 +3,7 @@
3
3
  \def\mystreet{Maifeldstraße 10}
4
4
  \def\mycity{56727 Mayen}
5
5
  \def\myphone{+49-1573-924~27~30}
6
- \def\myemail{Sascha.Manns@directbox.com}
6
+ \def\myemail{Sascha.Manns@mailbox.org}
7
7
  \def\myblog{http://saigkill.github.io}
8
8
  \def\mybank{Kto. DE88\ 5765\ 0010\ 0198\ 2426\ 20 \\
9
9
  BIC: MALADE51MYN \\
@@ -1,9 +1,8 @@
1
- # encoding: UTF-8
2
1
  # encoding: utf-8
3
2
  # @author Sascha Manns
4
3
  # @abstract A module for creating the latex cover
5
4
  #
6
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
5
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
7
6
  # License: MIT
8
7
 
9
8
  # Dependencies
@@ -2,12 +2,13 @@
2
2
  # @author Sascha Manns
3
3
  # @abstract CV Module for creating the curriculum vitae
4
4
  #
5
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
5
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
6
6
  # License: MIT
7
7
 
8
8
  # Dependencies
9
9
  require 'rainbow/ext/string'
10
10
  require 'combine_pdf'
11
+ require 'fileutils'
11
12
 
12
13
  # main Module
13
14
  module LatexCurriculumVitae
@@ -3,12 +3,13 @@
3
3
  # @author Sascha Manns
4
4
  # @abstract module for preparing a email and send it out
5
5
  #
6
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
6
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
7
7
  # License: MIT
8
8
 
9
9
  # Dependencies
10
10
  require 'rainbow/ext/string'
11
11
  require 'pony'
12
+ require 'resolv-replace.rb'
12
13
  require File.expand_path(File.join(File.dirname(__FILE__), 'get-config'))
13
14
 
14
15
  # rubocop:disable Metrics/LineLength
@@ -22,8 +23,10 @@ module LatexCurriculumVitae
22
23
  # @param [String] jobtitle Title of the target job
23
24
  # @param [String] contact_sex Can be male, female or unknown
24
25
  # @param [String] proactive Can be yes or no
26
+ # @param [String] letter For preparing the letter
27
+ # @param [String] name_of_pdf Name of the output pdf
25
28
  def self.create_email(contact, emailaddress, jobtitle, contact_sex, proactive, letter, name_of_pdf)
26
- own_email_address, own_smtp, own_username, own_password = LatexCurriculumVitae::GetConfig.get_smtp
29
+ own_email_address, own_smtp, own_username, own_password, own_port, own_tls = LatexCurriculumVitae::GetConfig.get_smtp
27
30
  introduction = LatexCurriculumVitae::Email.introduction(contact, contact_sex)
28
31
  subject = LatexCurriculumVitae::Email.subject(proactive, jobtitle)
29
32
  body = LatexCurriculumVitae::Email.get_body(introduction, letter)
@@ -40,7 +43,8 @@ module LatexCurriculumVitae
40
43
  :via => :smtp,
41
44
  :via_options => {
42
45
  :address => own_smtp,
43
- :port => '25',
46
+ :port => own_port,
47
+ :enable_starttls_auto => true,
44
48
  :user_name => own_username,
45
49
  :password => own_password,
46
50
  :authentication => :plain, # :plain, :login, :cram_md5, no auth by default
@@ -52,6 +56,7 @@ module LatexCurriculumVitae
52
56
  # Method for building the introduction
53
57
  # @param [String] contact Name of the contact
54
58
  # @param [String] contact_sex Can be male, female or unknown
59
+ # @return [String] Returns introductiion
55
60
  def self.introduction(contact, contact_sex)
56
61
  if contact == ''
57
62
  introduction = 'Sehr geehrte Damen und Herren,'
@@ -68,6 +73,7 @@ module LatexCurriculumVitae
68
73
  # Method for building the subject
69
74
  # @param [String] proactive Can be yes or no
70
75
  # @param [String] jobtitle Title of the target job
76
+ # @return [String] subject Set the subject
71
77
  def self.subject(proactive, jobtitle)
72
78
  if proactive == 'yes'
73
79
  subject = "Initiativbewerbung um einen Arbeitsplatz als #{jobtitle}"
@@ -80,6 +86,7 @@ module LatexCurriculumVitae
80
86
  # Method for building the email body
81
87
  # @param [String] introduction EMail introduction
82
88
  # @param [String] letter With motivational letter? Can be yes or no
89
+ # @return [String] body Returns the messagebody for the email
83
90
  def self.get_body(introduction, letter)
84
91
  # rubocop:disable Style/MultilineOperationIndentation
85
92
  if letter == 'no'
@@ -99,41 +106,42 @@ Persönlich runde ich das Profil mit den Eigenschaften: Teamfähigkeit, Kommunik
99
106
  stärke und Leistungsbereitschaft ab.
100
107
  Ich bin mir sicher, die von Ihnen gewünschten Kenntnisse und Fähigkeiten mitzubringen,
101
108
  und würde mich sehr über ein Vorstellungsgespräch freuen.
102
-
103
109
  --
104
- Yours sincerly
110
+ Sincerly yours
105
111
 
106
112
  Sascha Manns
107
113
  Maifeldstraße 10
108
114
  56727 Mayen
109
- Phone: +49-2651-4014045 (home)
110
115
  Phone: +49-1573-9242730 (mobile)
111
- Email: Sascha.Manns@directbox.com
112
- Web: http://saigkill.github.io
116
+ Phone: +49-2651-4014045 (home)
117
+ Email: Sascha.Manns@mailbox.org
113
118
  Jabber: saigkill@jabber.org
114
- GPG: FA19BD01 @ hkp://keyserver.ubuntu.com
115
- S/MIME: 084E5A5C @ cacert.org
119
+ Web: http://saigkill.github.io
120
+ Linkedin/Twitter: saigkill
121
+ Facebook: sascha.manns / Xing: Sascha_Manns2
122
+ GPG: 645A18FC6B573A7BE6E95150752763E8BFA83A2C @ hkp://keys.gnupg.net
123
+ S/MIME: C57921ED8F7535B08DC6D14BF11CD19BF9E8ED5C @ cacert.org
116
124
  EOF
117
125
  else
118
126
  body =<<EOF
119
127
  #{introduction}
120
128
  gerne möchte ich mich bei Ihnen für die obige Stelle bewerben.
121
129
  Meine Bewerbungsunterlagen samt des offiziellen Anschreibens sind der Mail als Anhang beigefügt.
122
-
123
130
  --
124
- Yours sincerly
131
+ Sincerly yours
125
132
 
126
133
  Sascha Manns
127
134
  Maifeldstraße 10
128
135
  56727 Mayen
129
- Phone: +49-2651-4014045 (home)
130
136
  Phone: +49-1573-9242730 (mobile)
131
- Email: Sascha.Manns@directbox.com
132
- Web: http://saigkill.github.io
137
+ Phone: +49-2651-4014045 (home)
138
+ Email: Sascha.Manns@mailbox.org
133
139
  Jabber: saigkill@jabber.org
134
- GPG: FA19BD01 @ hkp://keyserver.ubuntu.com
135
- S/MIME: 084E5A5C @ cacert.org
136
-
140
+ Web: http://saigkill.github.io
141
+ Linkedin/Twitter: saigkill
142
+ Facebook: sascha.manns / Xing: Sascha_Manns2
143
+ GPG: 645A18FC6B573A7BE6E95150752763E8BFA83A2C @ hkp://keys.gnupg.net
144
+ S/MIME: C57921ED8F7535B08DC6D14BF11CD19BF9E8ED5C @ cacert.org
137
145
  EOF
138
146
  end
139
147
  return body
@@ -3,12 +3,13 @@
3
3
  # @author Sascha Manns
4
4
  # @abstract module for creating the entity file for latex
5
5
  #
6
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
6
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
7
7
  # License: MIT
8
8
 
9
9
  # Dependencies
10
10
  require 'fileutils'
11
11
  require 'rainbow/ext/string'
12
+ require 'url_shortener'
12
13
 
13
14
  # main module
14
15
  module LatexCurriculumVitae
@@ -17,7 +18,7 @@ module LatexCurriculumVitae
17
18
  # rubocop:disable Metrics/LineLength
18
19
  # Method for getting information
19
20
  # @param [String] entitytex Path to the entity.tex
20
- # @return [Array] contact, emailaddress, jobtitle, contact_sex, company, proactive
21
+ # @return [Array] contact, emailaddress, jobtitle, contact_sex, company, proactive, job_url
21
22
  def self.get_information(entitytex)
22
23
  resume = `yad --title="Create application" --center --on-top --form --item-separator=, --separator="|" \
23
24
  --field="What is the jobtitle of your application? Escape amp with backslash:TEXT" \
@@ -30,14 +31,32 @@ module LatexCurriculumVitae
30
31
  --field="If you have a contact so give me the name of him/her. Leave blank if unknown contact:TEXT" \
31
32
  --field="Tell me the email address for sending the application:TEXT" \
32
33
  --field="What kind of target:CBE" \
34
+ --field="Tell me the URL of the job offer:TEXT" \
33
35
  --button="Go!" "" "no,yes" "yes,no" "" "" "" "male,female,unknown" "" "" "doku,support,kaufm"`
34
- jobtitle, proactive, letter, company, street, city, contact_sex, contact, emailaddress, target = resume.chomp.split('|')
35
- [jobtitle, proactive, letter, company, street, city, contact_sex, contact, emailaddress, target].each do |s|
36
+ jobtitle, proactive, letter, company, street, city, contact_sex, contact, emailaddress, target, job_url = resume.chomp.split('|')
37
+ [jobtitle, proactive, letter, company, street, city, contact_sex, contact, emailaddress, target, job_url].each do |s|
36
38
  puts s
37
39
  end
38
40
 
39
41
  create_file(jobtitle, company, street, city, contact, entitytex, contact_sex, proactive, target)
40
- [contact, emailaddress, jobtitle, contact_sex, company, letter, proactive, target]
42
+ [contact, emailaddress, jobtitle, contact_sex, company, letter, proactive, job_url]
43
+ end
44
+
45
+ # Method for shorten the URL
46
+ # @param [String] job_url The Url to the job offer
47
+ # @param [String] bitly_user The Username in Bit.ly
48
+ # @param [String] bitly_apikey The Apikey from your Bit.ly User
49
+ # @return [String] joburl Returns the shortened Bit.ly URL
50
+ def self.shorten_url(job_url, bitly_user, bitly_apikey)
51
+ authorize = UrlShortener::Authorize.new "#{bitly_user}", "#{bitly_apikey}"
52
+ client = UrlShortener::Client.new authorize
53
+
54
+ shorten = client.shorten("#{job_url}") # => UrlShortener::Response::Shorten object
55
+ shorten.result # => returns a hash of all data returned from bitly
56
+ shorten.urls # => Only returns the short urls look for more convenience methods in the UrlShortener::Response::Shorten class
57
+ puts shorten.urls
58
+ joburl = shorten.urls
59
+ return joburl
41
60
  end
42
61
 
43
62
  # # Method for getting information through a real gui
@@ -136,6 +155,8 @@ EOF
136
155
  end
137
156
 
138
157
  # Method for getting the target code block
158
+ # @param [String] target The choosed target
159
+ # @returns [String] targetblock Returns a Block with the choosed Information
139
160
  def self.get_target_block(target)
140
161
  if target == 'doku'
141
162
  targetblock = 'Neben der Beschreibungssprache DocBook samt XSL-FO lernte ich die Satzsprache \\LaTeX. \\\\ Selbstständig erarbeitete ich mir Kenntnisse in der Programmiersprache Ruby, sowie der Web-App-Entwicklung (Technische Hochschule Mittelrhein).\\\\'
@@ -3,7 +3,7 @@
3
3
  # @author Sascha Manns
4
4
  # @abstract module for getting information from a config file
5
5
  #
6
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
6
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
7
7
  # License: MIT
8
8
 
9
9
  # Dependencies
@@ -14,7 +14,7 @@ module LatexCurriculumVitae
14
14
  # Module for creating the GetConfig
15
15
  module GetConfig
16
16
  # This method gets the configs from the config file
17
- # @return [Array] name_of_pdf, name_of_cover, name_of_resume, name_of_letter
17
+ # @return [Array] name_of_pdf, name_of_cover, name_of_resume, name_of_letter, pdf_reader, shorten_url, bitly_user, bitly_apikey
18
18
  def self.get
19
19
  home = Dir.home
20
20
  config = ParseConfig.new("#{home}/.latex_curriculum_vitae/latex_curriculum_vitae.cfg")
@@ -23,11 +23,15 @@ module LatexCurriculumVitae
23
23
  name_of_resume = config['name_of_resume']
24
24
  name_of_letter = config['name_of_letter']
25
25
  pdf_reader = config['pdf_reader']
26
- [name_of_pdf, name_of_cover, name_of_resume, name_of_letter, pdf_reader]
26
+ shorten_url = config['shorten_url']
27
+ bitly_user = config['bitly_user']
28
+ bitly_apikey = config['bitly_apikey']
29
+
30
+ [name_of_pdf, name_of_cover, name_of_resume, name_of_letter, pdf_reader, shorten_url, bitly_user, bitly_apikey]
27
31
  end
28
32
 
29
33
  # Method for getting smtp configuration
30
- # @return [Array] own_name, own_email_address, own_smtp, own_username, own_password
34
+ # @return [Array] own_name, own_email_address, own_smtp, own_username, own_password, own_port, own_domain, own_tls
31
35
  def self.get_smtp
32
36
  home = Dir.home
33
37
  config = ParseConfig.new("#{home}/.latex_curriculum_vitae/latex_curriculum_vitae.cfg")
@@ -36,8 +40,10 @@ module LatexCurriculumVitae
36
40
  own_smtp = config['own_smtp']
37
41
  own_username = config['own_username']
38
42
  own_password = config['own_password']
43
+ own_port = config['own_port'].to_i
44
+ own_tls = config['own_tls']
39
45
 
40
- [own_email_address, own_smtp, own_username, own_password]
46
+ [own_email_address, own_smtp, own_username, own_password, own_port, own_tls]
41
47
  end
42
48
 
43
49
  end
@@ -3,7 +3,7 @@
3
3
  # @author Sascha Manns
4
4
  # @abstract module for creating a motivational letter
5
5
  #
6
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
6
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
7
7
  # License: MIT
8
8
 
9
9
  # Dependencies
@@ -15,6 +15,8 @@ module LatexCurriculumVitae
15
15
  # Module for creating the motivational letter
16
16
  module Letter
17
17
  # Method for creating a pdf from tex
18
+ # @param [String] tmpdir Name of the Tempdir
19
+ # @param [String] name_of_letter Filename of the Letter
18
20
  def self.create_letter(tmpdir, name_of_letter)
19
21
  puts 'Compiling motivational letter'.colour(:yellow)
20
22
  system("pdflatex #{name_of_letter}.tex")
@@ -4,7 +4,7 @@
4
4
  # @abstract module for notify the user about finishing the email send
5
5
  # process
6
6
  #
7
- # Copyright (C) 2015-2016 Sascha Manns <samannsml@directbox.com>
7
+ # Copyright (C) 2015-2017 Sascha Manns <Sascha.Manns@mailbox.org>
8
8
  # License: MIT
9
9
 
10
10
  # Dependencies
@@ -16,6 +16,7 @@ require 'notifier'
16
16
  module LatexCurriculumVitae
17
17
  # Method for notifying the user
18
18
  module Notify
19
+ # @param [String] jobtitle The Title of your job application
19
20
  def self.run(jobtitle)
20
21
  home = Dir.home
21
22
  prefix = "#{home}/.rvm/rubies/default"