Added support for OpenSearch.
This commit is contained in:
parent
09aa0558ab
commit
af9d60cc1a
|
@ -179,6 +179,7 @@ func main() {
|
||||||
mapIt("routes.StaticFile")
|
mapIt("routes.StaticFile")
|
||||||
mapIt("routes.RobotsTxt")
|
mapIt("routes.RobotsTxt")
|
||||||
mapIt("routes.SitemapXml")
|
mapIt("routes.SitemapXml")
|
||||||
|
mapIt("routes.OpenSearchXml")
|
||||||
mapIt("routes.BadRoute")
|
mapIt("routes.BadRoute")
|
||||||
mapIt("routes.HTTPSRedirect")
|
mapIt("routes.HTTPSRedirect")
|
||||||
tmplVars.AllRouteNames = allRouteNames
|
tmplVars.AllRouteNames = allRouteNames
|
||||||
|
@ -832,6 +833,9 @@ func (r *GenRouter) routeSwitch(w http.ResponseWriter, req *http.Request, user c
|
||||||
//log.Print("req.URL.Path: ",req.URL.Path)
|
//log.Print("req.URL.Path: ",req.URL.Path)
|
||||||
routes.StaticFile(w,req)
|
routes.StaticFile(w,req)
|
||||||
return nil
|
return nil
|
||||||
|
case "opensearch.xml":
|
||||||
|
counters.RouteViewCounter.Bump({{index .AllRouteMap "routes.OpenSearchXml"}})
|
||||||
|
return routes.OpenSearchXml(w,req)
|
||||||
/*case "sitemap.xml":
|
/*case "sitemap.xml":
|
||||||
counters.RouteViewCounter.Bump({{index .AllRouteMap "routes.SitemapXml"}})
|
counters.RouteViewCounter.Bump({{index .AllRouteMap "routes.SitemapXml"}})
|
||||||
return routes.SitemapXml(w,req)*/
|
return routes.SitemapXml(w,req)*/
|
||||||
|
|
|
@ -252,3 +252,19 @@ func APIMe(w http.ResponseWriter, r *http.Request, user c.User) c.RouteError {
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func OpenSearchXml(w http.ResponseWriter, r *http.Request) c.RouteError {
|
||||||
|
furl := "http"
|
||||||
|
if c.Site.EnableSsl {
|
||||||
|
furl += "s"
|
||||||
|
}
|
||||||
|
furl += "://"+c.Site.URL
|
||||||
|
w.Write([]byte(`<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
|
||||||
|
<ShortName>`+c.Site.Name+`</ShortName>
|
||||||
|
<InputEncoding>UTF-8</InputEncoding>
|
||||||
|
<Url type="text/html" template="`+furl+`/topics/?q={searchTerms}" />
|
||||||
|
<Url type="application/opensearchdescription+xml" rel="self" template="`+furl+`/opensearch.xml" />
|
||||||
|
<moz:SearchForm>`+furl+`</moz:SearchForm>
|
||||||
|
</OpenSearchDescription>`))
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue