From 11065601c9b7dacd3acbf9f9a899e201ecd8306d Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Fri, 11 Oct 2013 09:55:09 +0200 Subject: [PATCH] [CHG] make slugify optional by fp request bzr revid: xmo@openerp.com-20131011075509-q6vzqiyzmfb7tugb --- addons/website/controllers/main.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/addons/website/controllers/main.py b/addons/website/controllers/main.py index 50163902b7a..04967d5726a 100644 --- a/addons/website/controllers/main.py +++ b/addons/website/controllers/main.py @@ -7,17 +7,25 @@ import json import logging import os import datetime +import re from sys import maxint import psycopg2 -import slugify import werkzeug import werkzeug.exceptions import werkzeug.utils import werkzeug.wrappers from PIL import Image +try: + from slugify import slugify +except ImportError: + def slugify(s, max_length=None): + spaceless = re.sub(r'\s+', '-', s) + specialless = re.sub(r'[^-_a-z0-9]', '', spaceless) + return specialless[:max_length] + import openerp from openerp.addons.website.models import website from openerp.addons.web import http @@ -53,7 +61,7 @@ class Website(openerp.addons.web.controllers.main.Home): def pagenew(self, path, noredirect=NOPE): module = 'website' # completely arbitrary max_length - idname = slugify.slugify(path, max_length=50) + idname = slugify(path, max_length=50) request.cr.execute('SAVEPOINT pagenew') imd = request.registry['ir.model.data']