@@ -22,13 +22,14 @@ package php
22
22
import (
23
23
"bytes"
24
24
"fmt"
25
- "io"
26
- "io/ioutil"
27
- "regexp"
28
-
29
25
"github.com/pkg/errors"
30
26
"github.com/symfony-cli/symfony-cli/envs"
31
27
"github.com/symfony-cli/terminal"
28
+ "golang.org/x/text/cases"
29
+ "golang.org/x/text/language"
30
+ "io"
31
+ "io/ioutil"
32
+ "regexp"
32
33
)
33
34
34
35
func (p * Server ) tweakToolbar (body io.ReadCloser , env map [string ]string ) (io.ReadCloser , error ) {
@@ -81,23 +82,32 @@ func (p *Server) tweakToolbar(body io.ReadCloser, env map[string]string) (io.Rea
81
82
}
82
83
}
83
84
84
- webmail := `<span class="sf-toolbar-status sf-toolbar-status-red">Down</span>`
85
- rabbitmqui := `<span class="sf-toolbar-status sf-toolbar-status-red">Down</span>`
85
+ webmail := `<b>Webmail</b> < span class="sf-toolbar-status sf-toolbar-status-red">Down</span>`
86
+ rabbitmqui := `<b>RabbitMQ UI</b> < span class="sf-toolbar-status sf-toolbar-status-red">Down</span>`
86
87
blackfire := `<span class="sf-toolbar-status sf-toolbar-status-red">Down</span>`
88
+ extraLinks := ``
87
89
if env , err := envs .NewLocal (p .projectDir , terminal .IsDebug ()); err == nil {
88
- values := envs .AsMap (env )
89
- if prefix := env .FindRelationshipPrefix ("mailer" , "http" ); prefix != "" {
90
- if url , exists := values [prefix + "URL" ]; exists {
91
- webmail = fmt .Sprintf (`<span class="sf-toolbar-status sf-toolbar-status-green">Up</span> <a class="sf-cli-webmail" href="%s" target="_blank">Open</a>` , url )
92
- }
90
+ if url , exists := env .FindServiceUrl ("mailer" ); exists {
91
+ webmail = fmt .Sprintf (`<b><a class="sf-cli-webmail" href="%s" target="_blank">Webmail</a></b> <span class="sf-toolbar-status sf-toolbar-status-green">Up</span></a>` , url )
93
92
}
94
- if prefix := env .FindRelationshipPrefix ("amqp" , "http" ); prefix != "" {
95
- if url , exists := values [prefix + "URL" ]; exists {
96
- rabbitmqui = fmt .Sprintf (`<span class="sf-toolbar-status sf-toolbar-status-green">Up</span> <a class="sf-cli-rabbitmq" href="%s" target="_blank">Open</a>` , url )
97
- }
93
+ if url , exists := env .FindServiceUrl ("amqp" ); exists {
94
+ rabbitmqui = fmt .Sprintf (`<b><a class="sf-cli-rabbitmq" href="%s" target="_blank">RabbitMQ UI</a></b> <span class="sf-toolbar-status sf-toolbar-status-green">Up</span></a>` , url )
98
95
}
99
96
if prefix := env .FindRelationshipPrefix ("blackfire" , "tcp" ); prefix != "" {
100
- blackfire = `<span class="sf-toolbar-status sf-toolbar-status-green">Up</span> <a class="sf-cli-blackfire" href="https://blackfire.io/" target="_blank">Open</a>`
97
+ blackfire = `<span class="sf-toolbar-status sf-toolbar-status-green">Up</span>`
98
+ }
99
+ for _ , service := range env .FindHttpServices () {
100
+ if service == "mailer-web" || service == "amqp" {
101
+ continue
102
+ }
103
+
104
+ if url , exists := env .FindServiceUrl (service ); exists {
105
+ extraLinks += fmt .Sprintf (`<div class="sf-toolbar-info-piece"><b><a class="sf-cli-service-link" href="%s" target="_blank">%s</a></b></div>` , url , cases .Title (language .Und ).String (service ))
106
+ }
107
+ }
108
+
109
+ if len (extraLinks ) > 0 {
110
+ extraLinks = `<hr/>` + extraLinks
101
111
}
102
112
}
103
113
@@ -129,15 +139,11 @@ func (p *Server) tweakToolbar(body io.ReadCloser, env map[string]string) (io.Rea
129
139
<div class="sf-toolbar-info-piece">
130
140
<b>Env Vars</b>` + envVars + `
131
141
</div>
142
+ <div class="sf-toolbar-info-piece">` + rabbitmqui + `</div>
143
+ <div class="sf-toolbar-info-piece">` + webmail + `</div>
132
144
<div class="sf-toolbar-info-piece">
133
- <b>RabbitMQ UI</b>` + rabbitmqui + `
134
- </div>
135
- <div class="sf-toolbar-info-piece">
136
- <b>Webmail</b>` + webmail + `
137
- </div>
138
- <div class="sf-toolbar-info-piece">
139
- <b>Blackfire.io Agent</b>` + blackfire + `
140
- </div>
145
+ <b><a class="sf-cli-blackfire" href="https://blackfire.io/" target="_blank">Blackfire.io Agent</a></b>` + blackfire + `</div>
146
+ ` + extraLinks + `
141
147
</div>
142
148
<div></div>
143
149
</div>
0 commit comments