github.com/kotovmak/go-admin@v1.1.1/template/types/display/qrcode.go (about) 1 package display 2 3 import ( 4 "html/template" 5 6 "github.com/kotovmak/go-admin/template/types" 7 ) 8 9 type Qrcode struct { 10 types.BaseDisplayFnGenerator 11 } 12 13 func init() { 14 types.RegisterDisplayFnGenerator("qrcode", new(Qrcode)) 15 } 16 17 func (q *Qrcode) Get(args ...interface{}) types.FieldFilterFn { 18 return func(value types.FieldModel) interface{} { 19 20 src := `https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=` + value.Value 21 22 return template.HTML(` 23 <a href="javascript:void(0);" class="grid-column-qrcode text-muted" 24 data-content="<img src='` + src + `' 25 style='height:150px;width:150px;'/>" data-toggle="popover" tabindex="0" data-original-title="" title=""> 26 <i class="fa fa-qrcode"></i> 27 </a> ` + value.Value + ` 28 `) 29 } 30 } 31 32 func (q *Qrcode) JS() template.HTML { 33 return template.HTML(` 34 $('.grid-column-qrcode').popover({ 35 html: true, 36 container: 'body', 37 trigger: 'focus' 38 }); 39 `) 40 }