Skip to content

Commit 0e66add

Browse files
committed
Fix merge conflict
1 parent 8c8217d commit 0e66add

File tree

5 files changed

+44
-15
lines changed

5 files changed

+44
-15
lines changed

app/controllers/Extractors.scala

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,8 @@ class Extractors @Inject() (extractions: ExtractionService,
6363
}
6464
val selectedExtractors: List[String] = extractorService.getEnabledExtractors()
6565
val groups = extractions.groupByType(extractions.findAll())
66-
Ok(views.html.updateExtractors(runningExtractors, selectedExtractors, groups))
66+
val labels = extractorService.listExtractorsLabels()
67+
Ok(views.html.updateExtractors(runningExtractors, selectedExtractors, groups, labels))
6768
}
6869

6970
def manageLabels = ServerAdminAction { implicit request =>
@@ -116,7 +117,10 @@ class Extractors @Inject() (extractions: ExtractionService,
116117
implicit val user = request.user
117118
val targetExtractor = extractorService.listExtractorsInfo(List.empty).find(p => p.name == extractorName)
118119
targetExtractor match {
119-
case Some(extractor) => Ok(views.html.extractorDetails(extractor))
120+
case Some(extractor) => {
121+
val labels = extractorService.getLabelsForExtractor(extractor.name)
122+
Ok(views.html.extractorDetails(extractor, labels))
123+
}
120124
case None => InternalServerError("Extractor not found: " + extractorName)
121125
}
122126
}

app/services/ExtractorService.scala

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,6 @@ trait ExtractorService {
4848
def createExtractorsLabel(name: String, category: Option[String], extractors: List[String]): Option[ExtractorsLabel]
4949

5050
def updateExtractorsLabel(label: ExtractorsLabel): Option[ExtractorsLabel]
51+
52+
def getLabelsForExtractor(extractorName: String): List[ExtractorsLabel]
5153
}

app/services/mongodb/MongoDBExtractorService.scala

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ import play.api.libs.json.{JsArray, JsNumber, JsObject, JsString, JsValue, Json}
1313
import services._
1414
import services.mongodb.MongoContext.context
1515

16+
import scala.collection.mutable
17+
import scala.collection.mutable.ListBuffer
18+
1619
@Singleton
1720
class MongoDBExtractorService extends ExtractorService {
1821

@@ -229,6 +232,10 @@ class MongoDBExtractorService extends ExtractorService {
229232
ExtractorsLabelDAO.save(updated, WriteConcern.Safe)
230233
Some(updated)
231234
}
235+
236+
def getLabelsForExtractor(extractorName: String): List[ExtractorsLabel] = {
237+
ExtractorsLabelDAO.findAll().filter(_.extractors.contains(extractorName)).toList
238+
}
232239
}
233240

234241
object ExtractorServer extends ModelCompanion[ExtractorServer, ObjectId] {

app/views/extractorDetails.scala.html

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
@(extractor: ExtractorInfo)(implicit user: Option[models.User])
1+
@(extractor: ExtractorInfo, labels: List[ExtractorsLabel])(implicit user: Option[models.User])
22
@import api.Permission
33

44
@main("Extractor Details") {
@@ -165,6 +165,26 @@
165165
}
166166
</div>
167167
}
168+
169+
@if(!labels.isEmpty) {
170+
<div class="row">
171+
<div class="col-sm-6">
172+
<fieldset>
173+
<legend>Labels</legend>
174+
@if(Permission.checkServerAdmin(user)) {
175+
<a href="@routes.Extractors.manageLabels" style="margin-top:-3.0em;" class="btn btn-default btn-xs pull-right">
176+
<span class="glyphicon glyphicon-wrench"></span> Manage
177+
</a>
178+
}
179+
<ul>
180+
@for(label <- labels) {
181+
<li>@label.name</li>
182+
}
183+
</ul>
184+
</fieldset>
185+
</div>
186+
</div>
187+
}
168188
</form>
169189
</div>
170190

app/views/updateExtractors.scala.html

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
@(runningExtractors: List[ExtractorInfo], selectedExtractors: List[String], groups: Map[String, ExtractionGroup],
2-
showOptional: Map[String,Boolean] = Map("additionalInfo"->false, "processTriggers"->false, "labelSection"->false, "filterSection"->false, "ratings"->false))(implicit user: Option[models.User])
1+
@(runningExtractors: List[ExtractorInfo], selectedExtractors: List[String], groups: Map[String, ExtractionGroup], labels: List[ExtractorsLabel],
2+
showOptional: Map[String,Boolean] = Map("additionalInfo"->false, "processTriggers"->false, "labelSection"->false, "filterSection"->true, "ratings"->false))(implicit user: Option[models.User])
33
@import _root_.util.Formatters._
44
@import helper._
55
@import api.Permission
@@ -42,15 +42,11 @@ <h1>Extractor Catalog</h1>
4242
<div class="btn-group" data-toggle="buttons">
4343

4444
<!-- Disguised checkboxes as buttons -->
45-
<label class="btn btn-primary active">
46-
<input type="checkbox" autocomplete="off" checked> Image
47-
</label>
48-
<label class="btn btn-primary active">
49-
<input type="checkbox" autocomplete="off" checked> Video
50-
</label>
51-
<label class="btn btn-primary active">
52-
<input type="checkbox" autocomplete="off" checked> Audio
53-
</label>
45+
@for(label <- labels) {
46+
<label class="btn btn-primary active">
47+
<input type="checkbox" autocomplete="off" checked> @label.name
48+
</label>
49+
}
5450
</div>
5551
</div>
5652
</fieldset>
@@ -355,4 +351,4 @@ <h1>Extractor Catalog</h1>
355351
});
356352
</script>
357353
}
358-
}
354+
}

0 commit comments

Comments
 (0)