From e4c2da59f8f6f848ad1713c5b039bc251ab63fc9 Mon Sep 17 00:00:00 2001
From: Jeremy Kersten <jke@odoo.com>
Date: Mon, 4 Aug 2014 12:25:59 +0200
Subject: [PATCH] [FIX] website: use internal route for SEO suggest keyword,
 old server is down

---
 addons/website/controllers/main.py          | 11 +++++++++++
 addons/website/static/src/js/website.seo.js |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/addons/website/controllers/main.py b/addons/website/controllers/main.py
index 4f2a2a3da4a2..2ab001317ba0 100644
--- a/addons/website/controllers/main.py
+++ b/addons/website/controllers/main.py
@@ -3,6 +3,8 @@ import cStringIO
 import contextlib
 import hashlib
 import json
+import xml.etree.ElementTree as ET
+
 import logging
 import os
 import datetime
@@ -13,6 +15,7 @@ import psycopg2
 import werkzeug
 import werkzeug.exceptions
 import werkzeug.utils
+import urllib2
 import werkzeug.wrappers
 from PIL import Image
 
@@ -301,6 +304,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
     #------------------------------------------------------
diff --git a/addons/website/static/src/js/website.seo.js b/addons/website/static/src/js/website.seo.js
index 8588b7a37655..4a285409bdf8 100644
--- a/addons/website/static/src/js/website.seo.js
+++ b/addons/website/static/src/js/website.seo.js
@@ -95,7 +95,7 @@
                     }
                 });
             }
-            $.getJSON("http://suggest.hp.af.cm/suggest/"+encodeURIComponent(this.root + " "), addSuggestions);
+            $.getJSON("/website/seo_suggest/" + encodeURIComponent(this.root + " "), addSuggestions);
         },
     });
 
-- 
GitLab