resume_exporter 1.0.0 → 1.1.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 +4 -4
- data/bin/resume_exporter +1 -1
- data/lib/exporters/xml.rb +1 -1
- data/lib/extractors/base.rb +2 -2
- data/lib/extractors/html/linkedin.rb +1 -1
- data/lib/extractors/html/xing.rb +1 -1
- data/lib/extractors/json/fresh.rb +2 -2
- data/lib/extractors/json/prtflio.rb +4 -4
- data/lib/templates/default.json.jbuilder +128 -146
- data/lib/templates/default.md.erb +76 -37
- data/lib/templates/default.txt.erb +154 -100
- data/lib/templates/default.xml.builder +211 -149
- data/lib/templates/fresh.json.jbuilder +3 -5
- data/lib/templates/json_resume.json.jbuilder +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a3be5372671e4deb4d801644c61be0ca802e3ce4
|
4
|
+
data.tar.gz: 5e90518987f68bb68bf6819386aef7e2e911e1bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b40e2a8e8d2452d50706128344ec3c56d4b91cdcb35c47f5efb168b80c9bd6a921037074c244880a4e0533ef3db339bf20081b6497683a5ffdc96909e0d19dd3
|
7
|
+
data.tar.gz: ca7258446cdf293519b05738262261871ceb18ae7fb4033c2ed6d7486b8195e212f7c315cb94785c3e466d28fe543a1d8b61d6f5597fb97e02104fe5a1677ed5
|
data/bin/resume_exporter
CHANGED
@@ -4,7 +4,7 @@ require 'rubygems'
|
|
4
4
|
require 'commander/import'
|
5
5
|
require 'resume_exporter'
|
6
6
|
|
7
|
-
program :version, '1.
|
7
|
+
program :version, '1.1.0'
|
8
8
|
program :description, 'ResumeExporter is a tool to export data from public profile html files.
|
9
9
|
Save your profile (e.g. from LinkedIn, Xing, or Stackoverflow) as html and export to json or xml with the help of ResumeExporter.
|
10
10
|
|
data/lib/exporters/xml.rb
CHANGED
@@ -4,7 +4,7 @@ require 'builder'
|
|
4
4
|
module Exporter
|
5
5
|
module Xml
|
6
6
|
def self.export(options = {})
|
7
|
-
template = options[:template] || "
|
7
|
+
template = options[:template] || "default"
|
8
8
|
@data = options[:data]
|
9
9
|
Tilt.new(File.expand_path("../templates/#{template}.xml.builder", __dir__)).render(self)
|
10
10
|
end
|
data/lib/extractors/base.rb
CHANGED
data/lib/extractors/html/xing.rb
CHANGED
@@ -175,7 +175,7 @@ module Extractor
|
|
175
175
|
end
|
176
176
|
end
|
177
177
|
|
178
|
-
def
|
178
|
+
def extracurricular
|
179
179
|
@doc.dig("extracurricular").map do |extracurricular|
|
180
180
|
{
|
181
181
|
"title" => extracurricular["title"],
|
@@ -187,7 +187,7 @@ module Extractor
|
|
187
187
|
end
|
188
188
|
end
|
189
189
|
|
190
|
-
def
|
190
|
+
def affiliation
|
191
191
|
@doc.dig("affiliation", "history").map do |affiliation|
|
192
192
|
{
|
193
193
|
"category" => affiliation["category"],
|
@@ -64,12 +64,12 @@ module Extractor
|
|
64
64
|
@doc.dig("interests")
|
65
65
|
end
|
66
66
|
|
67
|
-
def
|
68
|
-
@doc.dig("
|
67
|
+
def extracurricular
|
68
|
+
@doc.dig("extracurricular")
|
69
69
|
end
|
70
70
|
|
71
|
-
def
|
72
|
-
@doc.dig("
|
71
|
+
def affiliation
|
72
|
+
@doc.dig("affiliation")
|
73
73
|
end
|
74
74
|
|
75
75
|
def governance
|
@@ -1,5 +1,5 @@
|
|
1
1
|
json.meta do
|
2
|
-
json.format "PRTFLIO@
|
2
|
+
json.format "PRTFLIO@1.1.0"
|
3
3
|
json.version "0.0.1"
|
4
4
|
end
|
5
5
|
|
@@ -24,199 +24,181 @@ json.basics do
|
|
24
24
|
end
|
25
25
|
|
26
26
|
json.employment @data.dig("employment") do |job|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
end
|
27
|
+
json.employer job["employer"]
|
28
|
+
json.position job["position"]
|
29
|
+
json.url job["url"]
|
30
|
+
json.startDate job["startDate"]
|
31
|
+
json.endDate job["endDate"]
|
32
|
+
json.summary job["summary"]
|
33
|
+
json.location job["location"]
|
34
|
+
json.keywords job["keywords"]
|
36
35
|
end
|
37
36
|
|
38
37
|
json.education @data.dig("education") do |entry|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
end
|
38
|
+
json.institution entry["institution"]
|
39
|
+
json.fieldOfStudy entry["fieldOfStudy"]
|
40
|
+
json.degree entry["degree"]
|
41
|
+
json.startDate entry["startDate"]
|
42
|
+
json.endDate entry["endDate"]
|
43
|
+
json.grade entry["grade"]
|
44
|
+
json.url entry["url"]
|
45
|
+
json.summary entry["summary"]
|
46
|
+
json.location entry["location"]
|
47
|
+
json.keywords entry["keywords"]
|
50
48
|
end
|
51
49
|
|
52
50
|
json.projects @data.dig("projects") do |project|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
end
|
64
|
-
json.keywords project["keywords"]
|
51
|
+
json.title project["title"]
|
52
|
+
json.summary project["summary"]
|
53
|
+
json.url project["url"]
|
54
|
+
json.repo project["repo"]
|
55
|
+
json.startDate project["startDate"]
|
56
|
+
json.endDate project["endDate"]
|
57
|
+
json.category project["category"]
|
58
|
+
json.images project["images"] do |image|
|
59
|
+
json.thumbnail image["thumbnail"]
|
60
|
+
json.big image["big"]
|
65
61
|
end
|
62
|
+
json.keywords project["keywords"]
|
66
63
|
end
|
67
64
|
|
68
65
|
json.openSource @data.dig("openSource") do |project|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
end
|
66
|
+
json.title project["title"]
|
67
|
+
json.summary project["summary"]
|
68
|
+
json.role project["role"]
|
69
|
+
json.url project["url"]
|
70
|
+
json.repo project["repo"]
|
71
|
+
json.startDate project["startDate"]
|
72
|
+
json.endDate project["endDate"]
|
73
|
+
json.category project["category"]
|
74
|
+
json.keywords project["keywords"]
|
79
75
|
end
|
80
76
|
|
81
77
|
json.skills @data.dig("skills") do |skill|
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
end
|
78
|
+
json.name skill["name"]
|
79
|
+
json.summary skill["summary"]
|
80
|
+
json.keywords skill["keywords"]
|
86
81
|
end
|
87
82
|
|
88
83
|
json.qualifications @data.dig("qualifications") do |qualification|
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
end
|
84
|
+
json.category qualification["category"]
|
85
|
+
json.title qualification["title"]
|
86
|
+
json.startDate qualification["startDate"]
|
87
|
+
json.endDate qualification["endDate"]
|
88
|
+
json.from qualification["from"]
|
89
|
+
json.summary qualification["summary"]
|
90
|
+
json.url qualification["url"]
|
91
|
+
json.keywords qualification["keywords"]
|
98
92
|
end
|
99
93
|
|
100
94
|
json.recognition @data.dig("recognition") do |entry|
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
end
|
95
|
+
json.category entry["category"]
|
96
|
+
json.title entry["title"]
|
97
|
+
json.startDate entry["startDate"]
|
98
|
+
json.endDate entry["endDate"]
|
99
|
+
json.from entry["from"]
|
100
|
+
json.summary entry["summary"]
|
101
|
+
json.url entry["url"]
|
102
|
+
json.keywords entry["keywords"]
|
110
103
|
end
|
111
104
|
|
112
105
|
json.writing @data.dig("writing") do |entry|
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
end
|
106
|
+
json.title entry["title"]
|
107
|
+
json.category entry["category"]
|
108
|
+
json.publisher entry["publisher"]
|
109
|
+
json.date entry["date"]
|
110
|
+
json.url entry["url"]
|
111
|
+
json.summary entry["summary"]
|
112
|
+
json.keywords entry["keywords"]
|
121
113
|
end
|
122
114
|
|
123
115
|
json.reading @data.dig("reading") do |entry|
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
end
|
116
|
+
json.title entry["title"]
|
117
|
+
json.category entry["category"]
|
118
|
+
json.url entry["url"]
|
119
|
+
json.author entry["author"]
|
120
|
+
json.date entry["date"]
|
121
|
+
json.summary entry["summary"]
|
122
|
+
json.keywords entry["keywords"]
|
132
123
|
end
|
133
124
|
|
134
125
|
json.speaking @data.dig("speaking") do |entry|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
end
|
126
|
+
json.title entry["title"]
|
127
|
+
json.event entry["event"]
|
128
|
+
json.location entry["location"]
|
129
|
+
json.url entry["url"]
|
130
|
+
json.date entry["date"]
|
131
|
+
json.summary entry["summary"]
|
132
|
+
json.keywords entry["keywords"]
|
143
133
|
end
|
144
134
|
|
145
135
|
json.patents @data.dig("patents") do |patent|
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
end
|
136
|
+
json.title patent["title"]
|
137
|
+
json.url patent["url"]
|
138
|
+
json.number patent["number"]
|
139
|
+
json.status patent["status"]
|
140
|
+
json.summary patent["summary"]
|
141
|
+
json.date patent["date"]
|
142
|
+
json.keywords patent["keywords"]
|
154
143
|
end
|
155
144
|
|
156
145
|
json.languages @data.dig("languages") do |language|
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
end
|
146
|
+
json.language language["language"]
|
147
|
+
json.level language["level"]
|
148
|
+
json.years language["years"]
|
161
149
|
end
|
162
150
|
|
163
151
|
json.interests @data.dig("interests") do |interest|
|
164
|
-
|
165
|
-
|
166
|
-
end
|
152
|
+
json.name interest["name"]
|
153
|
+
json.summary interest["summary"]
|
167
154
|
end
|
168
155
|
|
169
|
-
json.
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
end
|
156
|
+
json.extracurricular @data.dig("extracurricular") do |entry|
|
157
|
+
json.title entry["title"]
|
158
|
+
json.summary entry["summary"]
|
159
|
+
json.category entry["category"]
|
160
|
+
json.url entry["url"]
|
161
|
+
json.location entry["location"]
|
162
|
+
json.startDate entry["startDate"]
|
163
|
+
json.endDate entry["endDate"]
|
164
|
+
json.keywords entry["keywords"]
|
179
165
|
end
|
180
166
|
|
181
|
-
json.
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
end
|
167
|
+
json.affiliation @data.dig("affiliation") do |entry|
|
168
|
+
json.category entry["category"]
|
169
|
+
json.organization entry["organization"]
|
170
|
+
json.url entry["url"]
|
171
|
+
json.startDate entry["startDate"]
|
172
|
+
json.endDate entry["endDate"]
|
173
|
+
json.summary entry["summary"]
|
174
|
+
json.location entry["location"]
|
175
|
+
json.keywords entry["keywords"]
|
191
176
|
end
|
192
177
|
|
193
178
|
json.governance @data.dig("governance") do |entry|
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
end
|
179
|
+
json.summary entry["summary"]
|
180
|
+
json.category entry["category"]
|
181
|
+
json.url entry["url"]
|
182
|
+
json.organization entry["organization"]
|
183
|
+
json.startDate entry["startDate"]
|
184
|
+
json.endDate entry["endDate"]
|
185
|
+
json.keywords entry["keywords"]
|
202
186
|
end
|
203
187
|
|
204
188
|
json.service @data.dig("service") do |entry|
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
end
|
189
|
+
json.category entry["category"]
|
190
|
+
json.organization entry["organization"]
|
191
|
+
json.url entry["url"]
|
192
|
+
json.startDate entry["startDate"]
|
193
|
+
json.endDate entry["endDate"]
|
194
|
+
json.summary entry["summary"]
|
195
|
+
json.location entry["location"]
|
196
|
+
json.keywords entry["keywords"]
|
214
197
|
end
|
215
198
|
|
216
199
|
json.references @data.dig("references") do |reference|
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
end
|
200
|
+
json.name reference["name"]
|
201
|
+
json.role reference["role"]
|
202
|
+
json.company reference["company"]
|
203
|
+
json.summary reference["summary"]
|
222
204
|
end
|
@@ -9,16 +9,21 @@ Email: <%= @data.dig("basics", "contact", "email") %>
|
|
9
9
|
Phone: <%= @data.dig("basics", "contact", "phone") %>
|
10
10
|
Website: <%= @data.dig("basics", "contact", "website") %>
|
11
11
|
Address: <%= @data.dig("basics", "contact", "location") %>
|
12
|
+
|
13
|
+
<% if @data.dig("basics", "contact", "social") %>
|
12
14
|
<% for social in @data.dig("basics", "contact", "social") %>
|
13
15
|
<%= social["network"] %>: [<%= social["user"] %>](<%= social["url"] %>)
|
14
16
|
<% end %>
|
17
|
+
<% end %>
|
15
18
|
|
16
19
|
|
20
|
+
<% if @data.dig("basics", "disposition") %>
|
17
21
|
# Disposition
|
18
22
|
|
19
|
-
<%= @data.dig("
|
20
|
-
|
23
|
+
<%= @data.dig("basics", "disposition") %>
|
24
|
+
<% end %>
|
21
25
|
|
26
|
+
<% if @data.dig("employment") %>
|
22
27
|
# Work Experience
|
23
28
|
|
24
29
|
<% for job in @data.dig("employment") %>
|
@@ -28,11 +33,13 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
28
33
|
<%= job["location"] %>
|
29
34
|
|
30
35
|
<%= job["summary"] %>
|
31
|
-
|
36
|
+
<% if job["keywords"] %>
|
32
37
|
<%= job["keywords"].join(", ") %>
|
33
|
-
|
38
|
+
<% end %>
|
39
|
+
<% end %>
|
34
40
|
<% end %>
|
35
41
|
|
42
|
+
<% if @data.dig("education") %>
|
36
43
|
# Education
|
37
44
|
|
38
45
|
<% for entry in @data.dig("education") %>
|
@@ -42,12 +49,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
42
49
|
<%= entry["location"] %>
|
43
50
|
|
44
51
|
<%= entry["summary"] %>
|
45
|
-
|
52
|
+
<% if entry["keywords"] %>
|
46
53
|
<%= entry["keywords"].join(", ") %>
|
47
|
-
|
54
|
+
<% end %>
|
55
|
+
<% end %>
|
48
56
|
<% end %>
|
49
57
|
|
50
58
|
|
59
|
+
<% if @data.dig("projects") %>
|
51
60
|
# Projects
|
52
61
|
|
53
62
|
<% for project in @data.dig("projects") %>
|
@@ -56,40 +65,45 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
56
65
|
<%= project["category"] %>, [<%= project["repo"] %>](<%= project["repo"] %>) | <%= project["startDate"] %> - <%= project["endDate"] %>
|
57
66
|
|
58
67
|
<%= project["summary"] %>
|
59
|
-
|
68
|
+
<% if project["keywords"] %>
|
60
69
|
<%= project["keywords"].join(", ") %>
|
61
|
-
|
70
|
+
<% end %>
|
71
|
+
<% end %>
|
62
72
|
<% end %>
|
63
73
|
|
64
74
|
|
65
75
|
|
76
|
+
<% if @data.dig("openSource") %>
|
66
77
|
# Open Source
|
67
78
|
|
68
|
-
|
69
|
-
|
70
|
-
|
79
|
+
<% for project in @data.dig("openSource") %>
|
71
80
|
[<%= project["title"] %>](<%= project["url"] %>)
|
72
81
|
|
73
82
|
<%= project["category"] %>, [<%= project["repo"] %>](<%= project["repo"] %>) | <%= project["startDate"] %> - <%= project["endDate"] %>
|
74
83
|
|
75
84
|
<%= project["summary"] %>
|
76
|
-
|
85
|
+
<% if project["keywords"] %>
|
77
86
|
<%= project["keywords"].join(", ") %>
|
78
|
-
|
87
|
+
<% end %>
|
88
|
+
<% end %>
|
79
89
|
<% end %>
|
80
90
|
|
81
91
|
|
92
|
+
<% if @data.dig("skills") %>
|
82
93
|
# Skills
|
83
94
|
|
84
95
|
<% for skill in @data.dig("skills") %>
|
85
96
|
<%= skill["name"] %>
|
86
|
-
<%= skill["summary"] %>
|
97
|
+
<%= skill["summary"] %>
|
98
|
+
<% if skill["keywords"] %>
|
87
99
|
<%= skill["keywords"].join(", ") %>
|
88
|
-
|
100
|
+
<% end %>
|
101
|
+
<% end %>
|
89
102
|
<% end %>
|
90
103
|
|
91
104
|
|
92
105
|
|
106
|
+
<% if @data.dig("qualifications") %>
|
93
107
|
# Qualifications
|
94
108
|
|
95
109
|
<% for qualification in @data.dig("qualifications") %>
|
@@ -98,12 +112,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
98
112
|
<%= qualification["category"] %>, <%= qualification["from"] %> | <%= qualification["startDate"] %> - <%= qualification["endDate"] %>
|
99
113
|
|
100
114
|
<%= qualification["summary"] %>
|
101
|
-
|
115
|
+
<% if qualification["keywords"] %>
|
102
116
|
<%= qualification["keywords"].join(", ") %>
|
103
|
-
|
117
|
+
<% end %>
|
118
|
+
<% end %>
|
104
119
|
<% end %>
|
105
120
|
|
106
121
|
|
122
|
+
<% if @data.dig("recognition") %>
|
107
123
|
# Recognition
|
108
124
|
|
109
125
|
<% for entry in @data.dig("recognition") %>
|
@@ -112,12 +128,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
112
128
|
<%= entry["category"] %>, <%= entry["from"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
|
113
129
|
|
114
130
|
<%= entry["summary"] %>
|
115
|
-
|
131
|
+
<% if entry["keywords"] %>
|
116
132
|
<%= entry["keywords"].join(", ") %>
|
117
|
-
|
133
|
+
<% end %>
|
134
|
+
<% end %>
|
118
135
|
<% end %>
|
119
136
|
|
120
137
|
|
138
|
+
<% if @data.dig("writing") %>
|
121
139
|
# Writing
|
122
140
|
|
123
141
|
<% for entry in @data.dig("writing") %>
|
@@ -126,12 +144,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
126
144
|
<%= entry["category"] %>, <%= entry["publisher"] %> | <%= entry["date"] %>
|
127
145
|
|
128
146
|
<%= entry["summary"] %>
|
129
|
-
|
147
|
+
<% if entry["keywords"] %>
|
130
148
|
<%= entry["keywords"].join(", ") %>
|
131
|
-
|
149
|
+
<% end %>
|
150
|
+
<% end %>
|
132
151
|
<% end %>
|
133
152
|
|
134
153
|
|
154
|
+
<% if @data.dig("reading") %>
|
135
155
|
# Reading
|
136
156
|
|
137
157
|
<% for entry in @data.dig("reading") %>
|
@@ -140,12 +160,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
140
160
|
<%= entry["category"] %>, <%= entry["author"] %> | <%= entry["date"] %>
|
141
161
|
|
142
162
|
<%= entry["summary"] %>
|
143
|
-
|
163
|
+
<% if entry["keywords"] %>
|
144
164
|
<%= entry["keywords"].join(", ") %>
|
145
|
-
|
165
|
+
<% end %>
|
166
|
+
<% end %>
|
146
167
|
<% end %>
|
147
168
|
|
148
169
|
|
170
|
+
<% if @data.dig("speaking") %>
|
149
171
|
# Speaking
|
150
172
|
|
151
173
|
<% for entry in @data.dig("speaking") %>
|
@@ -154,12 +176,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
154
176
|
<%= entry["event"] %>, <%= entry["location"] %> | <%= entry["date"] %>
|
155
177
|
|
156
178
|
<%= entry["summary"] %>
|
157
|
-
|
179
|
+
<% if entry["keywords"] %>
|
158
180
|
<%= entry["keywords"].join(", ") %>
|
159
|
-
|
181
|
+
<% end %>
|
182
|
+
<% end %>
|
160
183
|
<% end %>
|
161
184
|
|
162
185
|
|
186
|
+
<% if @data.dig("patents") %>
|
163
187
|
# Patents
|
164
188
|
|
165
189
|
<% for patent in @data.dig("patents") %>
|
@@ -168,19 +192,23 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
168
192
|
<%= patent["number"] %>, <%= patent["status"] %> | <%= patent["date"] %>
|
169
193
|
|
170
194
|
<%= patent["summary"] %>
|
171
|
-
|
195
|
+
<% if patent["keywords"] %>
|
172
196
|
<%= patent["keywords"].join(", ") %>
|
173
|
-
|
197
|
+
<% end %>
|
198
|
+
<% end %>
|
174
199
|
<% end %>
|
175
200
|
|
176
201
|
|
202
|
+
<% if @data.dig("languages") %>
|
177
203
|
# Languages
|
178
204
|
|
179
205
|
<% for language in @data.dig("languages") %>
|
180
206
|
- <%= language["language"] %>, <%= language["level"] %> (<%= language["years"] %> years)
|
181
207
|
<% end %>
|
208
|
+
<% end %>
|
182
209
|
|
183
210
|
|
211
|
+
<% if @data.dig("interests") %>
|
184
212
|
# Interest
|
185
213
|
|
186
214
|
<% for interest in @data.dig("interests") %>
|
@@ -188,38 +216,44 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
188
216
|
<%= interest["summary"] %>
|
189
217
|
|
190
218
|
<% end %>
|
219
|
+
<% end %>
|
191
220
|
|
192
221
|
|
222
|
+
<% if @data.dig("extracurricular") %>
|
193
223
|
# Extracurricular
|
194
224
|
|
195
|
-
<% for entry in @data.dig("
|
225
|
+
<% for entry in @data.dig("extracurricular") %>
|
196
226
|
|
197
227
|
## [<%= entry["title"] %>](<%= entry["url"] %>)
|
198
228
|
|
199
229
|
<%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
|
200
230
|
|
201
231
|
<%= entry["summary"] %>
|
202
|
-
|
232
|
+
<% if entry["keywords"] %>
|
203
233
|
<%= entry["keywords"].join(", ") %>
|
204
|
-
|
234
|
+
<% end %>
|
235
|
+
<% end %>
|
205
236
|
<% end %>
|
206
237
|
|
207
238
|
|
239
|
+
<% if @data.dig("affiliation") %>
|
208
240
|
# Affiliation
|
209
241
|
|
210
|
-
<% for entry in @data.dig("
|
242
|
+
<% for entry in @data.dig("affiliation") %>
|
211
243
|
|
212
244
|
## [<%= entry["organization"] %>](<%= entry["url"] %>)
|
213
245
|
|
214
246
|
<%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
|
215
247
|
|
216
248
|
<%= entry["summary"] %>
|
217
|
-
|
249
|
+
<% if entry["keywords"] %>
|
218
250
|
<%= entry["keywords"].join(", ") %>
|
219
|
-
|
251
|
+
<% end %>
|
252
|
+
<% end %>
|
220
253
|
<% end %>
|
221
254
|
|
222
255
|
|
256
|
+
<% if @data.dig("governance") %>
|
223
257
|
# Governance
|
224
258
|
|
225
259
|
<% for entry in @data.dig("governance") %>
|
@@ -229,12 +263,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
229
263
|
<%= entry["summary"] %>
|
230
264
|
|
231
265
|
<%= entry["category"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
|
232
|
-
|
266
|
+
<% if entry["keywords"] %>
|
233
267
|
<%= entry["keywords"].join(", ") %>
|
234
|
-
|
268
|
+
<% end %>
|
269
|
+
<% end %>
|
235
270
|
<% end %>
|
236
271
|
|
237
272
|
|
273
|
+
<% if @data.dig("service") %>
|
238
274
|
# Service
|
239
275
|
|
240
276
|
<% for entry in @data.dig("service") %>
|
@@ -244,12 +280,14 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
244
280
|
<%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
|
245
281
|
|
246
282
|
<%= entry["summary"] %>
|
247
|
-
|
283
|
+
<% if entry["keywords"] %>
|
248
284
|
<%= entry["keywords"].join(", ") %>
|
249
|
-
|
285
|
+
<% end %>
|
286
|
+
<% end %>
|
250
287
|
<% end %>
|
251
288
|
|
252
289
|
|
290
|
+
<% if @data.dig("references") %>
|
253
291
|
# References
|
254
292
|
|
255
293
|
<% for reference in @data.dig("references") %>
|
@@ -260,3 +298,4 @@ Address: <%= @data.dig("basics", "contact", "location") %>
|
|
260
298
|
<%= reference["summary"] %>
|
261
299
|
|
262
300
|
<% end %>
|
301
|
+
<% end %>
|