subscribe button in search tab

This commit is contained in:
Zlatin Balevsky
2020-03-10 12:16:18 +00:00
parent fd75d8229b
commit e9f00c2995
3 changed files with 23 additions and 1 deletions

View File

@@ -107,6 +107,11 @@ class SearchTabController {
mvcGroup.createMVCGroup("browse", groupId, params)
}
@ControllerAction
void subscribe() {
}
@ControllerAction
void chat() {
def sender = view.selectedSender()

View File

@@ -25,6 +25,7 @@ class SearchTabModel {
@Observable boolean viewCommentActionEnabled
@Observable boolean viewCertificatesActionEnabled
@Observable boolean chatActionEnabled
@Observable boolean subscribeActionEnabled
@Observable boolean groupedByFile
Core core

View File

@@ -74,6 +74,7 @@ class SearchTabView {
closureColumn(header : "Sender", preferredWidth : 500, type: String, read : {row -> row.getHumanReadableName()})
closureColumn(header : "Results", preferredWidth : 20, type: Integer, read : {row -> model.sendersBucket[row].size()})
closureColumn(header : "Browse", preferredWidth : 20, type: Boolean, read : {row -> model.sendersBucket[row].first().browse})
closureColumn(header : "Feed", preferredWidth : 20, type : Boolean, read : {row -> model.sendersBucket[row].first().feed})
closureColumn(header : "Chat", preferredWidth : 20, type : Boolean, read : {row -> model.sendersBucket[row].first().chat})
closureColumn(header : "Trust", preferredWidth : 50, type: String, read : { row ->
model.core.trustService.getLevel(row.destination).toString()
@@ -85,6 +86,7 @@ class SearchTabView {
gridLayout(rows: 1, cols : 2)
panel (border : etchedBorder()){
button(text : "Browse Host", enabled : bind {model.browseActionEnabled}, browseAction)
button(text : "Subscribe", enabled : bind {model.subscribeActionEnabled}, subscribeAction)
button(text : "Chat", enabled : bind{model.chatActionEnabled}, chatAction)
}
panel (border : etchedBorder()){
@@ -156,6 +158,14 @@ class SearchTabView {
}
count
})
closureColumn(header : "Feeds", preferredWidth : 20, type : Integer, read : {
int count = 0
model.hashBucket[it].each {
if (it.feed)
count++
}
count
})
closureColumn(header : "Chat Hosts", preferredWidth : 20, type : Integer, read : {
int count = 0
model.hashBucket[it].each {
@@ -187,6 +197,7 @@ class SearchTabView {
tableModel(list : model.senders2) {
closureColumn(header : "Sender", preferredWidth : 350, type : String, read : {it.sender.getHumanReadableName()})
closureColumn(header : "Browse", preferredWidth : 20, type : Boolean, read : {it.browse})
closureColumn(header : "Feed", preferredWidth : 20, type: Boolean, read : {it.feed})
closureColumn(header : "Chat", preferredWidth : 20, type : Boolean, read : {it.chat})
closureColumn(header : "Comment", preferredWidth : 20, type : Boolean, read : {it.comment != null})
closureColumn(header : "Certificates", preferredWidth : 20, type: Integer, read : {it.certificates})
@@ -200,6 +211,7 @@ class SearchTabView {
gridLayout(rows : 1, cols : 2)
panel (border : etchedBorder()) {
button(text : "Browse Host", enabled : bind {model.browseActionEnabled}, browseAction)
button(text : "Subscribe", enabled : bind {model.subscribeActionEnabled}, subscribeAction)
button(text : "Chat", enabled : bind{model.chatActionEnabled}, chatAction)
button(text : "View Comment", enabled : bind {model.viewCommentActionEnabled}, showCommentAction)
button(text : "View Certificates", enabled : bind {model.viewCertificatesActionEnabled}, viewCertificatesAction)
@@ -308,6 +320,7 @@ class SearchTabView {
if (result == null) {
model.viewCommentActionEnabled = false
model.viewCertificatesActionEnabled = false
model.subscribeActionEnabled = false
return
} else {
model.viewCommentActionEnabled = result.comment != null
@@ -326,12 +339,13 @@ class SearchTabView {
if (row < 0) {
model.trustButtonsEnabled = false
model.browseActionEnabled = false
model.chatActionEnabled = false
model.subscribeActionEnabled = false
return
} else {
Persona sender = model.senders[row]
model.browseActionEnabled = model.sendersBucket[sender].first().browse
model.chatActionEnabled = model.sendersBucket[sender].first().chat
model.subscribeActionEnabled = model.sendersBucket[sender].first().feed
model.trustButtonsEnabled = true
model.results.clear()
model.results.addAll(model.sendersBucket[sender])
@@ -386,6 +400,7 @@ class SearchTabView {
if (row < 0 || model.senders2[row] == null) {
model.browseActionEnabled = false
model.chatActionEnabled = false
model.subscribeActionEnabled = false
model.viewCertificatesActionEnabled = false
model.trustButtonsEnabled = false
model.viewCommentActionEnabled = false
@@ -393,6 +408,7 @@ class SearchTabView {
}
model.browseActionEnabled = model.senders2[row].browse
model.chatActionEnabled = model.senders2[row].chat
model.subscribeActionEnabled = model.senders2[row].feed
model.trustButtonsEnabled = true
model.viewCommentActionEnabled = model.senders2[row].comment != null
model.viewCertificatesActionEnabled = model.senders2[row].certificates > 0