Skip to content

Commit 7788e4c

Browse files
author
Max Burnette
committed
add name and email to index
1 parent b41a2a1 commit 7788e4c

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

app/models/ElasticSearchObject.scala

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ case class ElasticsearchObject (
1111
resource: ResourceRef,
1212
name: String,
1313
creator: String,
14+
/*
15+
TODO
16+
Do we still need the creator_id?
17+
Do we need these in separate fields, or just include name & email under creator?
18+
Should email addresses be handled in a separate way?
19+
*/
20+
creator_name: String,
21+
creator_email: String,
1422
created: Date,
1523
created_as: String = "",
1624
parent_of: List[String] = List.empty,
@@ -39,6 +47,8 @@ object ElasticsearchObject {
3947
"resource" -> JsString(eso.resource.toString),
4048
"name" -> JsString(eso.name),
4149
"creator" -> JsString(eso.creator),
50+
"creator_name" -> JsString(eso.creator_name),
51+
"creator_email" -> JsString(eso.creator_email),
4252
"created" -> JsString(eso.created.toString),
4353
"created_as" -> JsString(eso.created_as.toString),
4454
"parent_of" -> JsArray(eso.parent_of.toSeq.map( (p:String) => Json.toJson(p)): Seq[JsValue]),
@@ -60,6 +70,8 @@ object ElasticsearchObject {
6070
(json \ "resource").as[ResourceRef],
6171
(json \ "name").as[String],
6272
(json \ "creator").as[String],
73+
(json \ "creator_name").as[String],
74+
(json \ "creator_email").as[String],
6375
(json \ "created").as[Date],
6476
(json \ "created_as").as[String],
6577
(json \ "parent_of").as[List[String]],

app/services/ElasticsearchPlugin.scala

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -457,6 +457,8 @@ class ElasticsearchPlugin(application: Application) extends Plugin {
457457
.startObject()
458458
// BASIC INFO
459459
.field("creator", eso.creator)
460+
.field("creator_name", eso.creator_name)
461+
.field("creator_email", eso.creator_email)
460462
.field("created", eso.created)
461463
.field("created_as", eso.created_as)
462464
.field("resource_type", eso.resource.resourceType.name)
@@ -707,6 +709,8 @@ class ElasticsearchPlugin(application: Application) extends Plugin {
707709
|"child_of": {"type": "string", "include_in_all": false},
708710
|"parent_of": {"type": "string", "include_in_all": false},
709711
|"creator": {"type": "string", "include_in_all": false},
712+
|"creator_name": {"type": "string"},
713+
|"creator_email": {"type": "string"},
710714
|"created_as": {"type": "string"},
711715
|"created": {"type": "date", "format": "dateOptionalTime", "include_in_all": false},
712716
|"metadata": {"type": "object"},

app/util/SearchUtils.scala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ object SearchUtils {
9797
ResourceRef(ResourceRef.file, id),
9898
f.filename,
9999
f.author.id.toString,
100+
f.author.fullName.toString,
101+
f.author.email.getOrElse("").toString,
100102
f.uploadDate,
101103
f.originalname,
102104
List.empty,
@@ -168,6 +170,8 @@ object SearchUtils {
168170
ResourceRef(ResourceRef.dataset, id),
169171
ds.name,
170172
ds.author.id.toString,
173+
ds.author.fullName.toString,
174+
ds.author.email.getOrElse("").toString,
171175
ds.created,
172176
"",
173177
parent_of_distinct,
@@ -196,6 +200,8 @@ object SearchUtils {
196200
ResourceRef(ResourceRef.collection, c.id),
197201
c.name,
198202
c.author.id.toString,
203+
c.author.fullName.toString,
204+
c.author.email.getOrElse("").toString,
199205
c.created,
200206
"",
201207
parent_of,
@@ -252,6 +258,8 @@ object SearchUtils {
252258
ResourceRef(ResourceRef.section, id),
253259
"section-"+id.toString,
254260
"",
261+
"",
262+
"",
255263
new Date,
256264
"",
257265
List.empty,
@@ -269,6 +277,8 @@ object SearchUtils {
269277
ResourceRef(ResourceRef.file, file.id),
270278
file.filename,
271279
"",
280+
"",
281+
"",
272282
file.uploadDate,
273283
"",
274284
List.empty,

0 commit comments

Comments
 (0)