[FIX] website: use internal route for SEO suggest keyword, old server is down
authorJeremy Kersten <jke@odoo.com>
Mon, 4 Aug 2014 10:25:59 +0000 (12:25 +0200)
committerJeremy Kersten <jke@odoo.com>
Mon, 4 Aug 2014 10:25:59 +0000 (12:25 +0200)
addons/website/controllers/main.py
addons/website/static/src/js/website.seo.js

index 092da52..650fcae 100644 (file)
@@ -3,12 +3,15 @@ import cStringIO
 import datetime
 from itertools import islice
 import json
+import xml.etree.ElementTree as ET
+
 import logging
 import re
 
 from sys import maxint
 
 import werkzeug.utils
+import urllib2
 import werkzeug.wrappers
 from PIL import Image
 
@@ -355,6 +358,14 @@ class Website(openerp.addons.web.controllers.main.Home):
         obj = _object.browse(request.cr, request.uid, _id)
         return bool(obj.website_published)
 
+    @http.route(['/website/seo_suggest/<keywords>'], type='http', auth="public", website=True)
+    def seo_suggest(self, keywords):
+        url = "http://google.com/complete/search?ie=utf8&oe=utf8&output=toolbar&q="
+        req = urllib2.Request("%s?%s" % (url, keywords))
+        request = urllib2.urlopen(req)
+        xmlroot = ET.fromstring(request.read())
+        return json.dumps([sugg[0].attrib['data'] for sugg in xmlroot if len(sugg) and sugg[0].attrib['data']])
+
     #------------------------------------------------------
     # Helpers
     #------------------------------------------------------
index 1c4bad9..7714f7e 100644 (file)
@@ -95,7 +95,7 @@
                     }
                 });
             }
-            $.getJSON("http://suggest.hp.af.cm/suggest/"+encodeURIComponent(this.root + " "), addSuggestions);
+            $.getJSON("/website/seo_suggest/" + encodeURIComponent(this.root + " "), addSuggestions);
         },
     });