[REM] Removed @website.route() decorator
Need trunk-website-al Rev#5151 bzr revid: fme@openerp.com-20140120153733-ve3dn2kwvha7n3yl
This commit is contained in:
parent
46e7638d81
commit
14bb6060d7
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import simplejson as json
|
import simplejson as json
|
||||||
|
@ -17,9 +16,9 @@ _logger = logging.getLogger(__name__)
|
||||||
class AdyenController(http.Controller):
|
class AdyenController(http.Controller):
|
||||||
_return_url = '/payment/adyen/return/'
|
_return_url = '/payment/adyen/return/'
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/adyen/return/',
|
'/payment/adyen/return/',
|
||||||
], type='http', auth='public')
|
], type='http', auth='public', website=True)
|
||||||
def adyen_return(self, pspReference, **post):
|
def adyen_return(self, pspReference, **post):
|
||||||
""" Paypal IPN."""
|
""" Paypal IPN."""
|
||||||
post["pspReference"] = pspReference
|
post["pspReference"] = pspReference
|
||||||
|
|
|
@ -4,7 +4,6 @@ import pprint
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
_logger = logging.getLogger(__name__)
|
_logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -15,12 +14,12 @@ class OgoneController(http.Controller):
|
||||||
_exception_url = '/payment/ogone/test/exception'
|
_exception_url = '/payment/ogone/test/exception'
|
||||||
_cancel_url = '/payment/ogone/test/cancel'
|
_cancel_url = '/payment/ogone/test/cancel'
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/ogone/accept', '/payment/ogone/test/accept',
|
'/payment/ogone/accept', '/payment/ogone/test/accept',
|
||||||
'/payment/ogone/decline', '/payment/ogone/test/decline',
|
'/payment/ogone/decline', '/payment/ogone/test/decline',
|
||||||
'/payment/ogone/exception', '/payment/ogone/test/exception',
|
'/payment/ogone/exception', '/payment/ogone/test/exception',
|
||||||
'/payment/ogone/cancel', '/payment/ogone/test/cancel',
|
'/payment/ogone/cancel', '/payment/ogone/test/cancel',
|
||||||
], type='http', auth='admin')
|
], type='http', auth='admin', website=True)
|
||||||
def ogone_form_feedback(self, **post):
|
def ogone_form_feedback(self, **post):
|
||||||
""" Ogone contacts using GET, at least for accept """
|
""" Ogone contacts using GET, at least for accept """
|
||||||
_logger.info('Ogone: entering form_feedback with post data %s', pprint.pformat(post)) # debug
|
_logger.info('Ogone: entering form_feedback with post data %s', pprint.pformat(post)) # debug
|
||||||
|
|
|
@ -11,7 +11,6 @@ import urllib2
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
_logger = logging.getLogger(__name__)
|
_logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -54,18 +53,18 @@ class PaypalController(http.Controller):
|
||||||
_logger.warning('Paypal: unrecognized paypal answer, received %s instead of VERIFIED or INVALID' % resp.text)
|
_logger.warning('Paypal: unrecognized paypal answer, received %s instead of VERIFIED or INVALID' % resp.text)
|
||||||
return res
|
return res
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/paypal/ipn/',
|
'/payment/paypal/ipn/',
|
||||||
], type='http', auth='public', methods=['POST'])
|
], type='http', auth='public', methods=['POST'], website=True)
|
||||||
def paypal_ipn(self, **post):
|
def paypal_ipn(self, **post):
|
||||||
""" Paypal IPN. """
|
""" Paypal IPN. """
|
||||||
_logger.info('Beginning Paypal IPN form_feedback with post data %s', pprint.pformat(post)) # debug
|
_logger.info('Beginning Paypal IPN form_feedback with post data %s', pprint.pformat(post)) # debug
|
||||||
self.paypal_validate_data(**post)
|
self.paypal_validate_data(**post)
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/paypal/dpn',
|
'/payment/paypal/dpn',
|
||||||
], type='http', auth="public", methods=['POST'])
|
], type='http', auth="public", methods=['POST'], website=True)
|
||||||
def paypal_dpn(self, **post):
|
def paypal_dpn(self, **post):
|
||||||
""" Paypal DPN """
|
""" Paypal DPN """
|
||||||
_logger.info('Beginning Paypal DPN form_feedback with post data %s', pprint.pformat(post)) # debug
|
_logger.info('Beginning Paypal DPN form_feedback with post data %s', pprint.pformat(post)) # debug
|
||||||
|
@ -73,9 +72,9 @@ class PaypalController(http.Controller):
|
||||||
self.paypal_validate_data(**post)
|
self.paypal_validate_data(**post)
|
||||||
return request.redirect(return_url)
|
return request.redirect(return_url)
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/paypal/cancel',
|
'/payment/paypal/cancel',
|
||||||
], type='http', auth="public")
|
], type='http', auth="public", website=True)
|
||||||
def paypal_cancel(self, **post):
|
def paypal_cancel(self, **post):
|
||||||
""" When the user cancels its Paypal payment: GET on this route """
|
""" When the user cancels its Paypal payment: GET on this route """
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
|
|
|
@ -4,7 +4,6 @@ import pprint
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
_logger = logging.getLogger(__name__)
|
_logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -12,9 +11,9 @@ _logger = logging.getLogger(__name__)
|
||||||
class OgoneController(http.Controller):
|
class OgoneController(http.Controller):
|
||||||
_accept_url = '/payment/transfer/feedback'
|
_accept_url = '/payment/transfer/feedback'
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/payment/transfer/feedback',
|
'/payment/transfer/feedback',
|
||||||
], type='http', auth='admin')
|
], type='http', auth='admin', website=True)
|
||||||
def transfer_form_feedback(self, **post):
|
def transfer_form_feedback(self, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
_logger.info('Beginning form_feedback with post data %s', pprint.pformat(post)) # debug
|
_logger.info('Beginning form_feedback with post data %s', pprint.pformat(post)) # debug
|
||||||
|
|
|
@ -31,7 +31,7 @@ NOPE = object()
|
||||||
MAX_IMAGE_WIDTH, MAX_IMAGE_HEIGHT = IMAGE_LIMITS = (1024, 768)
|
MAX_IMAGE_WIDTH, MAX_IMAGE_HEIGHT = IMAGE_LIMITS = (1024, 768)
|
||||||
|
|
||||||
class Website(openerp.addons.web.controllers.main.Home):
|
class Website(openerp.addons.web.controllers.main.Home):
|
||||||
@website.route('/', type='http', auth="public", multilang=True)
|
@http.route(['/', '/2'], type='http', auth="public", website=True, multilang=True)
|
||||||
def index(self, **kw):
|
def index(self, **kw):
|
||||||
try:
|
try:
|
||||||
main_menu = request.registry['ir.model.data'].get_object(request.cr, request.uid, 'website', 'main_menu')
|
main_menu = request.registry['ir.model.data'].get_object(request.cr, request.uid, 'website', 'main_menu')
|
||||||
|
@ -42,7 +42,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
pass
|
pass
|
||||||
return self.page("website.homepage")
|
return self.page("website.homepage")
|
||||||
|
|
||||||
@website.route('/pagenew/<path:path>', type='http', auth="user")
|
@http.route('/pagenew/<path:path>', type='http', auth="user")
|
||||||
def pagenew(self, path, noredirect=NOPE):
|
def pagenew(self, path, noredirect=NOPE):
|
||||||
web = request.registry['website']
|
web = request.registry['website']
|
||||||
try:
|
try:
|
||||||
|
@ -60,7 +60,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
return werkzeug.wrappers.Response(url, mimetype='text/plain')
|
return werkzeug.wrappers.Response(url, mimetype='text/plain')
|
||||||
return werkzeug.utils.redirect(url)
|
return werkzeug.utils.redirect(url)
|
||||||
|
|
||||||
@website.route('/website/theme_change', type='http', auth="admin")
|
@http.route('/website/theme_change', type='http', auth="admin", website=True)
|
||||||
def theme_change(self, theme_id=False, **kwargs):
|
def theme_change(self, theme_id=False, **kwargs):
|
||||||
imd = request.registry['ir.model.data']
|
imd = request.registry['ir.model.data']
|
||||||
view = request.registry['ir.ui.view']
|
view = request.registry['ir.ui.view']
|
||||||
|
@ -82,11 +82,11 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
|
|
||||||
return request.website.render('website.themes', {'theme_changed': True})
|
return request.website.render('website.themes', {'theme_changed': True})
|
||||||
|
|
||||||
@website.route(['/website/snippets'], type='json', auth="public")
|
@http.route(['/website/snippets'], type='json', auth="public", website=True)
|
||||||
def snippets(self):
|
def snippets(self):
|
||||||
return request.website._render('website.snippets')
|
return request.website._render('website.snippets')
|
||||||
|
|
||||||
@website.route('/page/<page:page>', type='http', auth="public", multilang=True)
|
@http.route('/page/<page:page>', type='http', auth="public", website=True, multilang=True)
|
||||||
def page(self, page, **opt):
|
def page(self, page, **opt):
|
||||||
values = {
|
values = {
|
||||||
'path': page,
|
'path': page,
|
||||||
|
@ -108,7 +108,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
|
|
||||||
return request.website.render(page, values)
|
return request.website.render(page, values)
|
||||||
|
|
||||||
@website.route('/website/reset_templates', type='http', auth='user', methods=['POST'])
|
@http.route('/website/reset_templates', type='http', auth='user', methods=['POST'], website=True)
|
||||||
def reset_template(self, templates, redirect='/'):
|
def reset_template(self, templates, redirect='/'):
|
||||||
templates = request.httprequest.form.getlist('templates')
|
templates = request.httprequest.form.getlist('templates')
|
||||||
modules_to_update = []
|
modules_to_update = []
|
||||||
|
@ -124,7 +124,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
module_obj.button_immediate_upgrade(request.cr, request.uid, module_ids, context=request.context)
|
module_obj.button_immediate_upgrade(request.cr, request.uid, module_ids, context=request.context)
|
||||||
return request.redirect(redirect)
|
return request.redirect(redirect)
|
||||||
|
|
||||||
@website.route('/website/customize_template_toggle', type='json', auth='user')
|
@http.route('/website/customize_template_toggle', type='json', auth='user', website=True)
|
||||||
def customize_template_set(self, view_id):
|
def customize_template_set(self, view_id):
|
||||||
view_obj = request.registry.get("ir.ui.view")
|
view_obj = request.registry.get("ir.ui.view")
|
||||||
view = view_obj.browse(request.cr, request.uid, int(view_id),
|
view = view_obj.browse(request.cr, request.uid, int(view_id),
|
||||||
|
@ -138,7 +138,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
}, context=request.context)
|
}, context=request.context)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
@website.route('/website/customize_template_get', type='json', auth='user')
|
@http.route('/website/customize_template_get', type='json', auth='user', website=True)
|
||||||
def customize_template_get(self, xml_id, optional=True):
|
def customize_template_get(self, xml_id, optional=True):
|
||||||
imd = request.registry['ir.model.data']
|
imd = request.registry['ir.model.data']
|
||||||
view_model, view_theme_id = imd.get_object_reference(
|
view_model, view_theme_id = imd.get_object_reference(
|
||||||
|
@ -173,7 +173,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
})
|
})
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@website.route('/website/get_view_translations', type='json', auth='admin')
|
@http.route('/website/get_view_translations', type='json', auth='admin', website=True)
|
||||||
def get_view_translations(self, xml_id, lang=None):
|
def get_view_translations(self, xml_id, lang=None):
|
||||||
lang = lang or request.context.get('lang')
|
lang = lang or request.context.get('lang')
|
||||||
views = self.customize_template_get(xml_id, optional=False)
|
views = self.customize_template_get(xml_id, optional=False)
|
||||||
|
@ -182,7 +182,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
irt = request.registry.get('ir.translation')
|
irt = request.registry.get('ir.translation')
|
||||||
return irt.search_read(request.cr, request.uid, domain, ['id', 'res_id', 'value'], context=request.context)
|
return irt.search_read(request.cr, request.uid, domain, ['id', 'res_id', 'value'], context=request.context)
|
||||||
|
|
||||||
@website.route('/website/set_translations', type='json', auth='admin')
|
@http.route('/website/set_translations', type='json', auth='admin', website=True)
|
||||||
def set_translations(self, data, lang):
|
def set_translations(self, data, lang):
|
||||||
irt = request.registry.get('ir.translation')
|
irt = request.registry.get('ir.translation')
|
||||||
for view_id, trans in data.items():
|
for view_id, trans in data.items():
|
||||||
|
@ -217,7 +217,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
irt.create(request.cr, request.uid, new_trans)
|
irt.create(request.cr, request.uid, new_trans)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
@website.route('/website/attach', type='http', auth='user')
|
@http.route('/website/attach', type='http', auth='user', website=True)
|
||||||
def attach(self, func, upload):
|
def attach(self, func, upload):
|
||||||
req = request.httprequest
|
req = request.httprequest
|
||||||
if req.method != 'POST':
|
if req.method != 'POST':
|
||||||
|
@ -247,7 +247,7 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
window.parent['%s'](%s, %s);
|
window.parent['%s'](%s, %s);
|
||||||
</script>""" % (func, json.dumps(url), json.dumps(message))
|
</script>""" % (func, json.dumps(url), json.dumps(message))
|
||||||
|
|
||||||
@website.route(['/website/publish'], type='json', auth="public")
|
@http.route(['/website/publish'], type='json', auth="public", website=True)
|
||||||
def publish(self, id, object):
|
def publish(self, id, object):
|
||||||
_id = int(id)
|
_id = int(id)
|
||||||
_object = request.registry[object]
|
_object = request.registry[object]
|
||||||
|
@ -264,23 +264,23 @@ class Website(openerp.addons.web.controllers.main.Home):
|
||||||
obj = _object.browse(request.cr, request.uid, _id)
|
obj = _object.browse(request.cr, request.uid, _id)
|
||||||
return bool(obj.website_published)
|
return bool(obj.website_published)
|
||||||
|
|
||||||
@website.route(['/website/kanban/'], type='http', auth="public", methods=['POST'])
|
@http.route(['/website/kanban/'], type='http', auth="public", methods=['POST'], website=True)
|
||||||
def kanban(self, **post):
|
def kanban(self, **post):
|
||||||
return request.website.kanban_col(**post)
|
return request.website.kanban_col(**post)
|
||||||
|
|
||||||
@website.route(['/robots.txt'], type='http', auth="public")
|
@http.route(['/robots.txt'], type='http', auth="public", website=True)
|
||||||
def robots(self):
|
def robots(self):
|
||||||
response = request.website.render('website.robots', {'url_root': request.httprequest.url_root})
|
response = request.website.render('website.robots', {'url_root': request.httprequest.url_root})
|
||||||
response.mimetype = 'text/plain'
|
response.mimetype = 'text/plain'
|
||||||
return response
|
return response
|
||||||
|
|
||||||
@website.route('/sitemap', type='http', auth='public', multilang=True)
|
@http.route('/sitemap', type='http', auth='public', website=True, multilang=True)
|
||||||
def sitemap(self):
|
def sitemap(self):
|
||||||
return request.website.render('website.sitemap', {
|
return request.website.render('website.sitemap', {
|
||||||
'pages': request.website.enumerate_pages()
|
'pages': request.website.enumerate_pages()
|
||||||
})
|
})
|
||||||
|
|
||||||
@website.route('/sitemap.xml', type='http', auth="public")
|
@http.route('/sitemap.xml', type='http', auth="public", website=True)
|
||||||
def sitemap_xml(self):
|
def sitemap_xml(self):
|
||||||
response = request.website.render('website.sitemap_xml', {
|
response = request.website.render('website.sitemap_xml', {
|
||||||
'pages': request.website.enumerate_pages()
|
'pages': request.website.enumerate_pages()
|
||||||
|
@ -298,7 +298,7 @@ class Images(http.Controller):
|
||||||
response.set_data(f.read())
|
response.set_data(f.read())
|
||||||
return response.make_conditional(request.httprequest)
|
return response.make_conditional(request.httprequest)
|
||||||
|
|
||||||
@website.route('/website/image', auth="public")
|
@http.route('/website/image', auth="public", website=True)
|
||||||
def image(self, model, id, field, max_width=maxint, max_height=maxint):
|
def image(self, model, id, field, max_width=maxint, max_height=maxint):
|
||||||
Model = request.registry[model]
|
Model = request.registry[model]
|
||||||
|
|
||||||
|
@ -363,5 +363,4 @@ class Images(http.Controller):
|
||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4:
|
# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||||
|
|
|
@ -38,15 +38,15 @@ class ir_http(orm.AbstractModel):
|
||||||
func = None
|
func = None
|
||||||
try:
|
try:
|
||||||
func, arguments = self._find_handler()
|
func, arguments = self._find_handler()
|
||||||
request.cms = getattr(func, 'cms', False)
|
request.website_enabled = func.routing.get('website', False)
|
||||||
except werkzeug.exceptions.NotFound:
|
except werkzeug.exceptions.NotFound:
|
||||||
# either we have a language prefixed route, either a real 404
|
# either we have a language prefixed route, either a real 404
|
||||||
# in all cases, website processes them
|
# in all cases, website processes them
|
||||||
request.cms = True
|
request.website_enabled = True
|
||||||
|
|
||||||
if request.cms:
|
if request.website_enabled:
|
||||||
if func:
|
if func:
|
||||||
self._authenticate(getattr(func, 'auth', None))
|
self._authenticate(func.routing['auth'])
|
||||||
else:
|
else:
|
||||||
self._auth_method_public()
|
self._auth_method_public()
|
||||||
request.website = request.registry['website'].get_current_website(request.cr, request.uid, context=request.context)
|
request.website = request.registry['website'].get_current_website(request.cr, request.uid, context=request.context)
|
||||||
|
@ -82,7 +82,7 @@ class ir_http(orm.AbstractModel):
|
||||||
def _handle_exception(self, exception=None, code=500):
|
def _handle_exception(self, exception=None, code=500):
|
||||||
if isinstance(exception, werkzeug.exceptions.HTTPException) and exception.response:
|
if isinstance(exception, werkzeug.exceptions.HTTPException) and exception.response:
|
||||||
return exception.response
|
return exception.response
|
||||||
if getattr(request, 'cms', False) and request.website:
|
if getattr(request, 'website_enabled', False) and request.website:
|
||||||
values = dict(
|
values = dict(
|
||||||
exception=exception,
|
exception=exception,
|
||||||
traceback=traceback.format_exc(exception),
|
traceback=traceback.format_exc(exception),
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import fnmatch
|
import fnmatch
|
||||||
import functools
|
|
||||||
import inspect
|
import inspect
|
||||||
import logging
|
import logging
|
||||||
import math
|
import math
|
||||||
|
@ -17,19 +16,11 @@ import openerp
|
||||||
from openerp.osv import orm, osv, fields
|
from openerp.osv import orm, osv, fields
|
||||||
from openerp.tools.safe_eval import safe_eval
|
from openerp.tools.safe_eval import safe_eval
|
||||||
|
|
||||||
from openerp.addons.web import http
|
|
||||||
from openerp.addons.web.http import request, LazyResponse
|
from openerp.addons.web.http import request, LazyResponse
|
||||||
from ..utils import slugify
|
from ..utils import slugify
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
def route(routes, *route_args, **route_kwargs):
|
|
||||||
def decorator(f):
|
|
||||||
f.cms = True
|
|
||||||
f.multilang = route_kwargs.pop('multilang', False)
|
|
||||||
return http.route(routes, *route_args, **route_kwargs)(f)
|
|
||||||
return decorator
|
|
||||||
|
|
||||||
def url_for(path_or_uri, lang=None, keep_query=None):
|
def url_for(path_or_uri, lang=None, keep_query=None):
|
||||||
location = path_or_uri.strip()
|
location = path_or_uri.strip()
|
||||||
url = urlparse.urlparse(location)
|
url = urlparse.urlparse(location)
|
||||||
|
@ -313,10 +304,10 @@ class website(osv.osv):
|
||||||
converters = rule._converters.values()
|
converters = rule._converters.values()
|
||||||
|
|
||||||
return (
|
return (
|
||||||
'GET' in methods
|
'GET' in methods
|
||||||
and endpoint.exposed == 'http'
|
and endpoint.routing['type'] == 'http'
|
||||||
and endpoint.auth in ('none', 'public')
|
and endpoint.routing['auth'] in ('none', 'public')
|
||||||
and getattr(endpoint, 'cms', False)
|
and endpoint.routing.get('website', False)
|
||||||
# preclude combinatorial explosion by only allowing a single converter
|
# preclude combinatorial explosion by only allowing a single converter
|
||||||
and len(converters) <= 1
|
and len(converters) <= 1
|
||||||
# ensure all converters on the rule are able to generate values for
|
# ensure all converters on the rule are able to generate values for
|
||||||
|
|
|
@ -45,10 +45,10 @@ class WebsiteBlog(http.Controller):
|
||||||
group['date'] = "%s_%s" % (group['__domain'][0][2], group['__domain'][1][2])
|
group['date'] = "%s_%s" % (group['__domain'][0][2], group['__domain'][1][2])
|
||||||
return groups
|
return groups
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/blog',
|
'/blog',
|
||||||
'/blog/page/<int:page>/',
|
'/blog/page/<int:page>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def blogs(self, page=1):
|
def blogs(self, page=1):
|
||||||
BYPAGE = 60
|
BYPAGE = 60
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
|
@ -67,7 +67,7 @@ class WebsiteBlog(http.Controller):
|
||||||
'pager': pager
|
'pager': pager
|
||||||
})
|
})
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/blog/<model("blog.category"):category>/',
|
'/blog/<model("blog.category"):category>/',
|
||||||
'/blog/<model("blog.category"):category>/page/<int:page>/',
|
'/blog/<model("blog.category"):category>/page/<int:page>/',
|
||||||
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/',
|
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/',
|
||||||
|
@ -76,7 +76,7 @@ class WebsiteBlog(http.Controller):
|
||||||
'/blog/<model("blog.category"):category>/date/<string(length=21):date>/page/<int:page>/',
|
'/blog/<model("blog.category"):category>/date/<string(length=21):date>/page/<int:page>/',
|
||||||
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/date/<string(length=21):date>/',
|
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/date/<string(length=21):date>/',
|
||||||
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/date/<string(length=21):date>/page/<int:page>/',
|
'/blog/<model("blog.category"):category>/tag/<model("blog.tag"):tag>/date/<string(length=21):date>/page/<int:page>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def blog(self, category=None, tag=None, date=None, page=1, **opt):
|
def blog(self, category=None, tag=None, date=None, page=1, **opt):
|
||||||
""" Prepare all values to display the blog.
|
""" Prepare all values to display the blog.
|
||||||
|
|
||||||
|
@ -152,9 +152,9 @@ class WebsiteBlog(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_blog.blog_post_short", values)
|
return request.website.render("website_blog.blog_post_short", values)
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/blogpost/<model("blog.post"):blog_post>/',
|
'/blogpost/<model("blog.post"):blog_post>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def blog_post(self, blog_post, tag=None, date=None, page=1, enable_editor=None, **post):
|
def blog_post(self, blog_post, tag=None, date=None, page=1, enable_editor=None, **post):
|
||||||
""" Prepare all values to display the blog.
|
""" Prepare all values to display the blog.
|
||||||
|
|
||||||
|
@ -219,7 +219,7 @@ class WebsiteBlog(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_blog.blog_post_complete", values)
|
return request.website.render("website_blog.blog_post_complete", values)
|
||||||
|
|
||||||
@website.route(['/blogpost/comment'], type='http', auth="public", methods=['POST'])
|
@http.route(['/blogpost/comment'], type='http', auth="public", methods=['POST'], website=True)
|
||||||
def blog_post_comment(self, blog_post_id=0, **post):
|
def blog_post_comment(self, blog_post_id=0, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
if post.get('comment'):
|
if post.get('comment'):
|
||||||
|
@ -238,7 +238,7 @@ class WebsiteBlog(http.Controller):
|
||||||
context=dict(context, mail_create_nosubcribe=True))
|
context=dict(context, mail_create_nosubcribe=True))
|
||||||
return werkzeug.utils.redirect(request.httprequest.referrer + "#comments")
|
return werkzeug.utils.redirect(request.httprequest.referrer + "#comments")
|
||||||
|
|
||||||
@website.route('/blogpost/new', type='http', auth="public", multilang=True)
|
@http.route('/blogpost/new', type='http', auth="public", website=True, multilang=True)
|
||||||
def blog_post_create(self, category_id, **post):
|
def blog_post_create(self, category_id, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
create_context = dict(context, mail_create_nosubscribe=True)
|
create_context = dict(context, mail_create_nosubscribe=True)
|
||||||
|
@ -251,7 +251,7 @@ class WebsiteBlog(http.Controller):
|
||||||
}, context=create_context)
|
}, context=create_context)
|
||||||
return werkzeug.utils.redirect("/blogpost/%s/?enable_editor=1" % new_blog_post_id)
|
return werkzeug.utils.redirect("/blogpost/%s/?enable_editor=1" % new_blog_post_id)
|
||||||
|
|
||||||
@website.route('/blogpost/duplicate', type='http', auth="public")
|
@http.route('/blogpost/duplicate', type='http', auth="public", website=True)
|
||||||
def blog_post_copy(self, blog_post_id, **post):
|
def blog_post_copy(self, blog_post_id, **post):
|
||||||
""" Duplicate a blog.
|
""" Duplicate a blog.
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
from openerp import SUPERUSER_ID
|
from openerp import SUPERUSER_ID
|
||||||
|
|
||||||
from urllib import quote_plus
|
from urllib import quote_plus
|
||||||
|
@ -16,7 +15,7 @@ class contactus(http.Controller):
|
||||||
)
|
)
|
||||||
return url
|
return url
|
||||||
|
|
||||||
@website.route(['/crm/contactus'], type='http', auth="public", multilang=True)
|
@http.route(['/crm/contactus'], type='http', auth="public", website=True, multilang=True)
|
||||||
def contactus(self, *arg, **post):
|
def contactus(self, *arg, **post):
|
||||||
required_fields = ['contact_name', 'email_from', 'description']
|
required_fields = ['contact_name', 'email_from', 'description']
|
||||||
post['user_id'] = False
|
post['user_id'] = False
|
||||||
|
|
|
@ -9,20 +9,19 @@ from openerp.tools.translate import _
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
from openerp.addons.website.models import website
|
||||||
from openerp.addons.website_partner.controllers import main as website_partner
|
from openerp.addons.website_partner.controllers import main as website_partner
|
||||||
import werkzeug
|
|
||||||
|
|
||||||
|
|
||||||
class WebsiteCrmPartnerAssign(http.Controller):
|
class WebsiteCrmPartnerAssign(http.Controller):
|
||||||
_references_per_page = 20
|
_references_per_page = 20
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/partners/',
|
'/partners/',
|
||||||
'/partners/page/<int:page>/',
|
'/partners/page/<int:page>/',
|
||||||
'/partners/country/<int:country_id>',
|
'/partners/country/<int:country_id>',
|
||||||
'/partners/country/<country_name>-<int:country_id>',
|
'/partners/country/<country_name>-<int:country_id>',
|
||||||
'/partners/country/<int:country_id>/page/<int:page>/',
|
'/partners/country/<int:country_id>/page/<int:page>/',
|
||||||
'/partners/country/<country_name>-<int:country_id>/page/<int:page>/',
|
'/partners/country/<country_name>-<int:country_id>/page/<int:page>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def partners(self, country_id=0, page=0, **post):
|
def partners(self, country_id=0, page=0, **post):
|
||||||
country_obj = request.registry['res.country']
|
country_obj = request.registry['res.country']
|
||||||
partner_obj = request.registry['res.partner']
|
partner_obj = request.registry['res.partner']
|
||||||
|
@ -95,7 +94,7 @@ class WebsiteCrmPartnerAssign(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_crm_partner_assign.index", values)
|
return request.website.render("website_crm_partner_assign.index", values)
|
||||||
|
|
||||||
@website.route(['/partners/<int:partner_id>/', '/partners/<partner_name>-<int:partner_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/partners/<int:partner_id>/', '/partners/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def partners_ref(self, partner_id, **post):
|
def partners_ref(self, partner_id, **post):
|
||||||
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
||||||
website.preload_records(partner)
|
website.preload_records(partner)
|
||||||
|
|
|
@ -13,14 +13,14 @@ import urllib
|
||||||
class WebsiteCustomer(http.Controller):
|
class WebsiteCustomer(http.Controller):
|
||||||
_references_per_page = 20
|
_references_per_page = 20
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/customers/',
|
'/customers/',
|
||||||
'/customers/page/<int:page>/',
|
'/customers/page/<int:page>/',
|
||||||
'/customers/country/<int:country_id>',
|
'/customers/country/<int:country_id>',
|
||||||
'/customers/country/<country_name>-<int:country_id>',
|
'/customers/country/<country_name>-<int:country_id>',
|
||||||
'/customers/country/<int:country_id>/page/<int:page>/',
|
'/customers/country/<int:country_id>/page/<int:page>/',
|
||||||
'/customers/country/<country_name>-<int:country_id>/page/<int:page>/',
|
'/customers/country/<country_name>-<int:country_id>/page/<int:page>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def customers(self, country_id=0, page=0, **post):
|
def customers(self, country_id=0, page=0, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
partner_obj = request.registry['res.partner']
|
partner_obj = request.registry['res.partner']
|
||||||
|
@ -76,7 +76,7 @@ class WebsiteCustomer(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_customer.index", values)
|
return request.website.render("website_customer.index", values)
|
||||||
|
|
||||||
@website.route(['/customers/<int:partner_id>/', '/customers/<partner_name>-<int:partner_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/customers/<int:partner_id>/', '/customers/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def customer(self, partner_id, **post):
|
def customer(self, partner_id, **post):
|
||||||
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
||||||
website.preload_records(partner)
|
website.preload_records(partner)
|
||||||
|
|
|
@ -34,7 +34,7 @@ from openerp import tools
|
||||||
import urllib
|
import urllib
|
||||||
|
|
||||||
class website_event(http.Controller):
|
class website_event(http.Controller):
|
||||||
@website.route(['/event/', '/event/page/<int:page>'], type='http', auth="public", multilang=True)
|
@http.route(['/event/', '/event/page/<int:page>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def events(self, page=1, **searches):
|
def events(self, page=1, **searches):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
event_obj = request.registry['event.event']
|
event_obj = request.registry['event.event']
|
||||||
|
@ -161,7 +161,7 @@ class website_event(http.Controller):
|
||||||
|
|
||||||
return request.website.render("website_event.index", values)
|
return request.website.render("website_event.index", values)
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>/page/<page:page>'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>/page/<page:page>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_page(self, event, page, **post):
|
def event_page(self, event, page, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
values = {
|
values = {
|
||||||
|
@ -170,7 +170,7 @@ class website_event(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render(page, values)
|
return request.website.render(page, values)
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event(self, event, **post):
|
def event(self, event, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
if event.menu_id and event.menu_id.child_id:
|
if event.menu_id and event.menu_id.child_id:
|
||||||
|
@ -181,7 +181,7 @@ class website_event(http.Controller):
|
||||||
target_url += '?enable_editor=1'
|
target_url += '?enable_editor=1'
|
||||||
return request.redirect(target_url);
|
return request.redirect(target_url);
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>/register'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>/register'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_register(self, event, **post):
|
def event_register(self, event, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
values = {
|
values = {
|
||||||
|
@ -192,7 +192,7 @@ class website_event(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_event.event_description_full", values)
|
return request.website.render("website_event.event_description_full", values)
|
||||||
|
|
||||||
@website.route(['/event/add_cart'], type='http', auth="public", multilang=True)
|
@http.route(['/event/add_cart'], type='http', auth="public", website=True, multilang=True)
|
||||||
def add_cart(self, event_id, **post):
|
def add_cart(self, event_id, **post):
|
||||||
user_obj = request.registry['res.users']
|
user_obj = request.registry['res.users']
|
||||||
order_line_obj = request.registry.get('sale.order.line')
|
order_line_obj = request.registry.get('sale.order.line')
|
||||||
|
@ -247,7 +247,7 @@ class website_event(http.Controller):
|
||||||
return request.redirect("/event/%s/" % event_id)
|
return request.redirect("/event/%s/" % event_id)
|
||||||
return request.redirect("/shop/checkout")
|
return request.redirect("/shop/checkout")
|
||||||
|
|
||||||
@website.route(['/event/publish'], type='json', auth="public")
|
@http.route(['/event/publish'], type='json', auth="public", website=True)
|
||||||
def publish(self, id, object):
|
def publish(self, id, object):
|
||||||
# if a user publish an event, he publish all linked res.partner
|
# if a user publish an event, he publish all linked res.partner
|
||||||
event = request.registry[object].browse(request.cr, request.uid, int(id))
|
event = request.registry[object].browse(request.cr, request.uid, int(id))
|
||||||
|
@ -259,7 +259,7 @@ class website_event(http.Controller):
|
||||||
|
|
||||||
return controllers.publish(id, object)
|
return controllers.publish(id, object)
|
||||||
|
|
||||||
@website.route('/event/add_event/', type='http', auth="user", multilang=True, methods=['POST'])
|
@http.route('/event/add_event/', type='http', auth="user", multilang=True, methods=['POST'], website=True)
|
||||||
def add_event(self, event_name="New Event", **kwargs):
|
def add_event(self, event_name="New Event", **kwargs):
|
||||||
Event = request.registry.get('event.event')
|
Event = request.registry.get('event.event')
|
||||||
date_begin = datetime.today() + timedelta(days=(15)) # FIXME: better defaults
|
date_begin = datetime.today() + timedelta(days=(15)) # FIXME: better defaults
|
||||||
|
|
|
@ -30,7 +30,7 @@ import werkzeug.utils
|
||||||
controllers = controllers()
|
controllers = controllers()
|
||||||
|
|
||||||
class website_event(http.Controller):
|
class website_event(http.Controller):
|
||||||
@website.route(['/event/<model("event.event"):event>/track/<model("event.track"):track>'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>/track/<model("event.track"):track>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_track_view(self, event, track, **post):
|
def event_track_view(self, event, track, **post):
|
||||||
# TODO: not implemented
|
# TODO: not implemented
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
|
@ -38,7 +38,7 @@ class website_event(http.Controller):
|
||||||
values = { 'track': track, 'event': track.event_id, 'main_object': track }
|
values = { 'track': track, 'event': track.event_id, 'main_object': track }
|
||||||
return request.website.render("website_event_track.track_view", values)
|
return request.website.render("website_event_track.track_view", values)
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>/agenda/'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>/agenda/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_agenda(self, event, tag=None, **post):
|
def event_agenda(self, event, tag=None, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
values = {
|
values = {
|
||||||
|
@ -47,10 +47,10 @@ class website_event(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_event_track.agenda", values)
|
return request.website.render("website_event_track.agenda", values)
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/event/<model("event.event"):event>/track/',
|
'/event/<model("event.event"):event>/track/',
|
||||||
'/event/<model("event.event"):event>/track/tag/<model("event.track.tag"):tag>'
|
'/event/<model("event.event"):event>/track/tag/<model("event.track.tag"):tag>'
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_tracks(self, event, tag=None, **post):
|
def event_tracks(self, event, tag=None, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
website.preload_records(tag)
|
website.preload_records(tag)
|
||||||
|
@ -80,13 +80,13 @@ class website_event(http.Controller):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>/track_proposal/'], type='http', auth="public", multilang=True)
|
@http.route(['/event/<model("event.event"):event>/track_proposal/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def event_track_proposal(self, event, **post):
|
def event_track_proposal(self, event, **post):
|
||||||
website.preload_records(event, on_error="website_event.404")
|
website.preload_records(event, on_error="website_event.404")
|
||||||
values = { 'event': event }
|
values = { 'event': event }
|
||||||
return request.website.render("website_event_track.event_track_proposal", values)
|
return request.website.render("website_event_track.event_track_proposal", values)
|
||||||
|
|
||||||
@website.route(['/event/<model("event.event"):event>/track_proposal/post'], type='http', auth="public", methods=['POST'], multilang=True)
|
@http.route(['/event/<model("event.event"):event>/track_proposal/post'], type='http', auth="public", methods=['POST'], website=True, multilang=True)
|
||||||
def event_track_proposal_post(self, event, **post):
|
def event_track_proposal_post(self, event, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,11 @@
|
||||||
import openerp
|
import openerp
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
class google_map(http.Controller):
|
class google_map(http.Controller):
|
||||||
|
|
||||||
@website.route(['/google_map/'], type='http', auth="admin")
|
@http.route(['/google_map/'], type='http', auth="admin", website=True)
|
||||||
def google_map(self, *arg, **post):
|
def google_map(self, *arg, **post):
|
||||||
values = {
|
values = {
|
||||||
'partner_ids': post.get('partner_ids', ""),
|
'partner_ids': post.get('partner_ids', ""),
|
||||||
|
@ -18,7 +17,7 @@ class google_map(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_google_map.google_map", values)
|
return request.website.render("website_google_map.google_map", values)
|
||||||
|
|
||||||
@website.route(['/google_map/partners.json'], type='http', auth="admin")
|
@http.route(['/google_map/partners.json'], type='http', auth="admin", website=True)
|
||||||
def google_map_data(self, *arg, **post):
|
def google_map_data(self, *arg, **post):
|
||||||
partner_obj = request.registry['res.partner']
|
partner_obj = request.registry['res.partner']
|
||||||
|
|
||||||
|
@ -29,7 +28,7 @@ class google_map(http.Controller):
|
||||||
return partner_obj.google_map_json(request.cr, openerp.SUPERUSER_ID,
|
return partner_obj.google_map_json(request.cr, openerp.SUPERUSER_ID,
|
||||||
partner_ids, request.context)
|
partner_ids, request.context)
|
||||||
|
|
||||||
@website.route(['/google_map/set_partner_position/'], type='http', auth="admin")
|
@http.route(['/google_map/set_partner_position/'], type='http', auth="admin", website=True)
|
||||||
def google_map_set_partner_position(self, *arg, **post):
|
def google_map_set_partner_position(self, *arg, **post):
|
||||||
partner_obj = request.registry['res.partner']
|
partner_obj = request.registry['res.partner']
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,10 @@
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
class website_hr(http.Controller):
|
class website_hr(http.Controller):
|
||||||
|
|
||||||
@website.route(['/page/website.aboutus'], type='http', auth="public", multilang=True)
|
@http.route(['/page/website.aboutus'], type='http', auth="public", website=True, multilang=True)
|
||||||
def blog(self, **post):
|
def blog(self, **post):
|
||||||
hr_obj = request.registry['hr.employee']
|
hr_obj = request.registry['hr.employee']
|
||||||
employee_ids = hr_obj.search(request.cr, request.uid, [('website_published', '=', True)],
|
employee_ids = hr_obj.search(request.cr, request.uid, [('website_published', '=', True)],
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.tools.translate import _
|
from openerp.tools.translate import _
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
from openerp.addons.website.controllers.main import Website as controllers
|
from openerp.addons.website.controllers.main import Website as controllers
|
||||||
controllers = controllers()
|
controllers = controllers()
|
||||||
|
|
||||||
|
@ -10,12 +9,12 @@ import base64
|
||||||
|
|
||||||
|
|
||||||
class website_hr_recruitment(http.Controller):
|
class website_hr_recruitment(http.Controller):
|
||||||
@website.route([
|
@http.route([
|
||||||
'/jobs',
|
'/jobs',
|
||||||
'/jobs/department/<model("hr.department"):department>/office/<model("res.partner"):office>',
|
'/jobs/department/<model("hr.department"):department>/office/<model("res.partner"):office>',
|
||||||
'/jobs/department/<model("hr.department"):department>',
|
'/jobs/department/<model("hr.department"):department>',
|
||||||
'/jobs/office/<model("res.partner"):office>'
|
'/jobs/office/<model("res.partner"):office>'
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def jobs(self, department=None, office=None):
|
def jobs(self, department=None, office=None):
|
||||||
JobsObj = request.registry['hr.job']
|
JobsObj = request.registry['hr.job']
|
||||||
jobpost_ids = JobsObj.search(request.cr, request.uid, [],
|
jobpost_ids = JobsObj.search(request.cr, request.uid, [],
|
||||||
|
@ -47,11 +46,11 @@ class website_hr_recruitment(http.Controller):
|
||||||
'office': office and office.id or None
|
'office': office and office.id or None
|
||||||
})
|
})
|
||||||
|
|
||||||
@website.route(['/job/detail/<model("hr.job"):job>'], type='http', auth="public", multilang=True)
|
@http.route(['/job/detail/<model("hr.job"):job>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def detail(self, job, **kwargs):
|
def detail(self, job, **kwargs):
|
||||||
return request.website.render("website_hr_recruitment.detail", { 'job': job, 'main_object': job })
|
return request.website.render("website_hr_recruitment.detail", { 'job': job, 'main_object': job })
|
||||||
|
|
||||||
@website.route(['/job/success'], methods=['POST'], type='http', auth="admin", multilang=True)
|
@http.route(['/job/success'], methods=['POST'], type='http', auth="admin", website=True, multilang=True)
|
||||||
def success(self, **post):
|
def success(self, **post):
|
||||||
data = {
|
data = {
|
||||||
'name': _('Online Form'),
|
'name': _('Online Form'),
|
||||||
|
@ -84,7 +83,7 @@ class website_hr_recruitment(http.Controller):
|
||||||
request.registry['ir.attachment'].create(request.cr, request.uid, attachment_values, context=request.context)
|
request.registry['ir.attachment'].create(request.cr, request.uid, attachment_values, context=request.context)
|
||||||
return request.website.render("website_hr_recruitment.thankyou", {})
|
return request.website.render("website_hr_recruitment.thankyou", {})
|
||||||
|
|
||||||
@website.route(['/job/apply'], type='http', auth="public", multilang=True)
|
@http.route(['/job/apply'], type='http', auth="public", website=True, multilang=True)
|
||||||
def applyjobpost(self, job):
|
def applyjobpost(self, job):
|
||||||
[job_object] = request.registry['hr.job'].browse(
|
[job_object] = request.registry['hr.job'].browse(
|
||||||
request.cr, request.uid, [int(job)], context=request.context)
|
request.cr, request.uid, [int(job)], context=request.context)
|
||||||
|
@ -93,7 +92,7 @@ class website_hr_recruitment(http.Controller):
|
||||||
'job': job_object
|
'job': job_object
|
||||||
})
|
})
|
||||||
|
|
||||||
@website.route('/job/add_job_offer/', type='http', auth="user", multilang=True, methods=['POST'])
|
@http.route('/job/add_job_offer/', type='http', auth="user", methods=['POST'], website=True, multilang=True)
|
||||||
def add_job_offer(self, **kwargs):
|
def add_job_offer(self, **kwargs):
|
||||||
Job = request.registry.get('hr.job')
|
Job = request.registry.get('hr.job')
|
||||||
job_id = Job.create(request.cr, request.uid, {
|
job_id = Job.create(request.cr, request.uid, {
|
||||||
|
|
|
@ -3,12 +3,11 @@
|
||||||
# from openerp import SUPERUSER_ID
|
# from openerp import SUPERUSER_ID
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
|
|
||||||
class WebsiteEmailDesigner(http.Controller):
|
class WebsiteEmailDesigner(http.Controller):
|
||||||
|
|
||||||
@website.route('/website_mail/email_designer/<model("email.template"):template>/', type='http', auth="public", multilang=True)
|
@http.route('/website_mail/email_designer/<model("email.template"):template>/', type='http', auth="public", website=True, multilang=True)
|
||||||
def index(self, template, **kw):
|
def index(self, template, **kw):
|
||||||
values = {
|
values = {
|
||||||
'template': template,
|
'template': template,
|
||||||
|
@ -16,6 +15,6 @@ class WebsiteEmailDesigner(http.Controller):
|
||||||
print template
|
print template
|
||||||
return request.website.render("website_mail.designer_index", values)
|
return request.website.render("website_mail.designer_index", values)
|
||||||
|
|
||||||
@website.route(['/website_mail/snippets'], type='json', auth="public")
|
@http.route(['/website_mail/snippets'], type='json', auth="public", website=True)
|
||||||
def snippets(self):
|
def snippets(self):
|
||||||
return request.website._render('website_mail.email_designer_snippets')
|
return request.website._render('website_mail.email_designer_snippets')
|
||||||
|
|
|
@ -22,7 +22,6 @@
|
||||||
from openerp import SUPERUSER_ID
|
from openerp import SUPERUSER_ID
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
|
|
||||||
|
|
||||||
class WebsiteMail(http.Controller):
|
class WebsiteMail(http.Controller):
|
||||||
|
@ -40,7 +39,7 @@ class WebsiteMail(http.Controller):
|
||||||
partner_ids = [user_obj.browse(request.cr, request.uid, request.uid, request.context).partner_id.id]
|
partner_ids = [user_obj.browse(request.cr, request.uid, request.uid, request.context).partner_id.id]
|
||||||
return partner_ids
|
return partner_ids
|
||||||
|
|
||||||
@website.route(['/website_mail/follow/'], type='json', auth="public")
|
@http.route(['/website_mail/follow/'], type='json', auth="public", website=True)
|
||||||
def website_message_subscribe(self, id=0, object=None, message_is_follower="on", email=False, **post):
|
def website_message_subscribe(self, id=0, object=None, message_is_follower="on", email=False, **post):
|
||||||
_id = int(id)
|
_id = int(id)
|
||||||
_message_is_follower = message_is_follower == 'on'
|
_message_is_follower = message_is_follower == 'on'
|
||||||
|
|
|
@ -14,7 +14,7 @@ import urllib
|
||||||
class WebsiteMembership(http.Controller):
|
class WebsiteMembership(http.Controller):
|
||||||
_references_per_page = 20
|
_references_per_page = 20
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/members/',
|
'/members/',
|
||||||
'/members/page/<int:page>/',
|
'/members/page/<int:page>/',
|
||||||
'/members/association/<int:membership_id>/',
|
'/members/association/<int:membership_id>/',
|
||||||
|
@ -29,7 +29,7 @@ class WebsiteMembership(http.Controller):
|
||||||
'/members/association/<int:membership_id>/country/<int:country_id>',
|
'/members/association/<int:membership_id>/country/<int:country_id>',
|
||||||
'/members/association/<int:membership_id>/country/<country_name>-<int:country_id>/page/<int:page>/',
|
'/members/association/<int:membership_id>/country/<country_name>-<int:country_id>/page/<int:page>/',
|
||||||
'/members/association/<int:membership_id>/country/<int:country_id>/page/<int:page>/',
|
'/members/association/<int:membership_id>/country/<int:country_id>/page/<int:page>/',
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def members(self, membership_id=None, country_name=None, country_id=0, page=0, **post):
|
def members(self, membership_id=None, country_name=None, country_id=0, page=0, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
product_obj = request.registry['product.product']
|
product_obj = request.registry['product.product']
|
||||||
|
@ -92,7 +92,7 @@ class WebsiteMembership(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_membership.index", values)
|
return request.website.render("website_membership.index", values)
|
||||||
|
|
||||||
@website.route(['/members/<int:partner_id>/', '/members/<partner_name>-<int:partner_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/members/<int:partner_id>/', '/members/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def partners_ref(self, partner_id, **post):
|
def partners_ref(self, partner_id, **post):
|
||||||
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
||||||
website.preload_records(partner)
|
website.preload_records(partner)
|
||||||
|
|
|
@ -34,7 +34,7 @@ def get_partner_template_value(partner):
|
||||||
return values
|
return values
|
||||||
|
|
||||||
class WebsitePartner(http.Controller):
|
class WebsitePartner(http.Controller):
|
||||||
@website.route(['/partners/<int:partner_id>/', '/partners/<partner_name>-<int:partner_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/partners/<int:partner_id>/', '/partners/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def partner(self, partner_id, **post):
|
def partner(self, partner_id, **post):
|
||||||
""" Route for displaying a single partner / customer. """
|
""" Route for displaying a single partner / customer. """
|
||||||
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
|
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
from openerp.osv import osv
|
from openerp.osv import osv
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,7 +38,7 @@ class Website(osv.Model):
|
||||||
|
|
||||||
class website_project(http.Controller):
|
class website_project(http.Controller):
|
||||||
|
|
||||||
@website.route(['/project/<int:project_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/project/<int:project_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def project(self, project_id=None, **post):
|
def project(self, project_id=None, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
project_obj = request.registry['project.project']
|
project_obj = request.registry['project.project']
|
||||||
|
@ -52,7 +51,7 @@ class website_project(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_project.index", render_values)
|
return request.website.render("website_project.index", render_values)
|
||||||
|
|
||||||
@website.route(['/project/task/<int:task_id>'], type='http', auth="public", multilang=True)
|
@http.route(['/project/task/<int:task_id>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def task(self, task_id=None, **post):
|
def task(self, task_id=None, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
task_obj = request.registry['project.task']
|
task_obj = request.registry['project.task']
|
||||||
|
|
|
@ -144,7 +144,7 @@ class Ecommerce(http.Controller):
|
||||||
return key_val
|
return key_val
|
||||||
return False
|
return False
|
||||||
|
|
||||||
@website.route(['/shop/filters/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/filters/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def filters(self, **post):
|
def filters(self, **post):
|
||||||
index = []
|
index = []
|
||||||
filters = []
|
filters = []
|
||||||
|
@ -190,18 +190,18 @@ class Ecommerce(http.Controller):
|
||||||
att = obj.read(request.cr, request.uid, att_ids, ["product_tmpl_id"], context=request.context)
|
att = obj.read(request.cr, request.uid, att_ids, ["product_tmpl_id"], context=request.context)
|
||||||
return [r["product_tmpl_id"][0] for r in att]
|
return [r["product_tmpl_id"][0] for r in att]
|
||||||
|
|
||||||
@website.route(['/shop/pricelist'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/pricelist'], type='http', auth="public", website=True, multilang=True)
|
||||||
def shop_promo(self, code, **post):
|
def shop_promo(self, code, **post):
|
||||||
assert code, 'No pricelist code provided'
|
assert code, 'No pricelist code provided'
|
||||||
request.registry['website']._ecommerce_change_pricelist(request.cr, request.uid, code=code, context=request.context)
|
request.registry['website']._ecommerce_change_pricelist(request.cr, request.uid, code=code, context=request.context)
|
||||||
return request.redirect("/shop")
|
return request.redirect("/shop")
|
||||||
|
|
||||||
@website.route([
|
@http.route([
|
||||||
'/shop/',
|
'/shop/',
|
||||||
'/shop/page/<int:page>/',
|
'/shop/page/<int:page>/',
|
||||||
'/shop/category/<model("product.public.category"):category>/',
|
'/shop/category/<model("product.public.category"):category>/',
|
||||||
'/shop/category/<model("product.public.category"):category>/page/<int:page>/'
|
'/shop/category/<model("product.public.category"):category>/page/<int:page>/'
|
||||||
], type='http', auth="public", multilang=True)
|
], type='http', auth="public", website=True, multilang=True)
|
||||||
def shop(self, category=None, page=0, filters='', search='', **post):
|
def shop(self, category=None, page=0, filters='', search='', **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
product_obj = request.registry.get('product.template')
|
product_obj = request.registry.get('product.template')
|
||||||
|
@ -257,7 +257,7 @@ class Ecommerce(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_sale.products", values)
|
return request.website.render("website_sale.products", values)
|
||||||
|
|
||||||
@website.route(['/shop/product/<model("product.template"):product>/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/product/<model("product.template"):product>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def product(self, product, search='', category='', filters='', **kwargs):
|
def product(self, product, search='', category='', filters='', **kwargs):
|
||||||
website.preload_records(product, on_error="website_sale.404")
|
website.preload_records(product, on_error="website_sale.404")
|
||||||
|
|
||||||
|
@ -286,7 +286,7 @@ class Ecommerce(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_sale.product", values)
|
return request.website.render("website_sale.product", values)
|
||||||
|
|
||||||
@website.route(['/shop/product/comment'], type='http', auth="public", methods=['POST'])
|
@http.route(['/shop/product/comment'], type='http', auth="public", methods=['POST'], website=True)
|
||||||
def product_comment(self, product_template_id, **post):
|
def product_comment(self, product_template_id, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
if post.get('comment'):
|
if post.get('comment'):
|
||||||
|
@ -298,7 +298,7 @@ class Ecommerce(http.Controller):
|
||||||
context=dict(context, mail_create_nosubcribe=True))
|
context=dict(context, mail_create_nosubcribe=True))
|
||||||
return werkzeug.utils.redirect(request.httprequest.referrer + "#comments")
|
return werkzeug.utils.redirect(request.httprequest.referrer + "#comments")
|
||||||
|
|
||||||
@website.route(['/shop/add_product/'], type='http', auth="user", multilang=True, methods=['POST'])
|
@http.route(['/shop/add_product/'], type='http', auth="user", methods=['POST'], website=True, multilang=True)
|
||||||
def add_product(self, name="New Product", category=0, **post):
|
def add_product(self, name="New Product", category=0, **post):
|
||||||
Product = request.registry.get('product.product')
|
Product = request.registry.get('product.product')
|
||||||
product_id = Product.create(request.cr, request.uid, {
|
product_id = Product.create(request.cr, request.uid, {
|
||||||
|
@ -308,7 +308,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.redirect("/shop/product/%s/?enable_editor=1" % product.product_tmpl_id.id)
|
return request.redirect("/shop/product/%s/?enable_editor=1" % product.product_tmpl_id.id)
|
||||||
|
|
||||||
@website.route(['/shop/mycart/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/mycart/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def mycart(self, **post):
|
def mycart(self, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
prod_obj = request.registry.get('product.product')
|
prod_obj = request.registry.get('product.product')
|
||||||
|
@ -343,21 +343,21 @@ class Ecommerce(http.Controller):
|
||||||
}
|
}
|
||||||
return request.website.render("website_sale.mycart", values)
|
return request.website.render("website_sale.mycart", values)
|
||||||
|
|
||||||
@website.route(['/shop/add_cart/'], type='http', auth="public", multilang=True, methods=['POST'])
|
@http.route(['/shop/add_cart/'], type='http', auth="public", methods=['POST'], website=True, multilang=True)
|
||||||
def add_cart(self, product_id, remove=None, **kw):
|
def add_cart(self, product_id, remove=None, **kw):
|
||||||
request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
||||||
product_id=int(product_id),
|
product_id=int(product_id),
|
||||||
context=request.context)
|
context=request.context)
|
||||||
return request.redirect("/shop/mycart/")
|
return request.redirect("/shop/mycart/")
|
||||||
|
|
||||||
@website.route(['/shop/change_cart/<int:order_line_id>/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/change_cart/<int:order_line_id>/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def add_cart_order_line(self, order_line_id=None, remove=None, **kw):
|
def add_cart_order_line(self, order_line_id=None, remove=None, **kw):
|
||||||
request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
||||||
order_line_id=order_line_id, number=(remove and -1 or 1),
|
order_line_id=order_line_id, number=(remove and -1 or 1),
|
||||||
context=request.context)
|
context=request.context)
|
||||||
return request.redirect("/shop/mycart/")
|
return request.redirect("/shop/mycart/")
|
||||||
|
|
||||||
@website.route(['/shop/add_cart_json/'], type='json', auth="public")
|
@http.route(['/shop/add_cart_json/'], type='json', auth="public", website=True)
|
||||||
def add_cart_json(self, product_id=None, order_line_id=None, remove=None):
|
def add_cart_json(self, product_id=None, order_line_id=None, remove=None):
|
||||||
quantity = request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
quantity = request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
||||||
product_id=product_id, order_line_id=order_line_id, number=(remove and -1 or 1),
|
product_id=product_id, order_line_id=order_line_id, number=(remove and -1 or 1),
|
||||||
|
@ -368,13 +368,13 @@ class Ecommerce(http.Controller):
|
||||||
order.amount_total,
|
order.amount_total,
|
||||||
request.website._render("website_sale.total", {'website_sale_order': order})]
|
request.website._render("website_sale.total", {'website_sale_order': order})]
|
||||||
|
|
||||||
@website.route(['/shop/set_cart_json/'], type='json', auth="public")
|
@http.route(['/shop/set_cart_json/'], type='json', auth="public", website=True)
|
||||||
def set_cart_json(self, path=None, product_id=None, order_line_id=None, set_number=0, json=None):
|
def set_cart_json(self, path=None, product_id=None, order_line_id=None, set_number=0, json=None):
|
||||||
return request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
return request.registry['website']._ecommerce_add_product_to_cart(request.cr, request.uid,
|
||||||
product_id=product_id, order_line_id=order_line_id, set_number=set_number,
|
product_id=product_id, order_line_id=order_line_id, set_number=set_number,
|
||||||
context=request.context)
|
context=request.context)
|
||||||
|
|
||||||
@website.route(['/shop/checkout/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/checkout/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def checkout(self, **post):
|
def checkout(self, **post):
|
||||||
cr, uid, context, registry = request.cr, request.uid, request.context, request.registry
|
cr, uid, context, registry = request.cr, request.uid, request.context, request.registry
|
||||||
|
|
||||||
|
@ -428,7 +428,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.website.render("website_sale.checkout", values)
|
return request.website.render("website_sale.checkout", values)
|
||||||
|
|
||||||
@website.route(['/shop/confirm_order/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/confirm_order/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def confirm_order(self, **post):
|
def confirm_order(self, **post):
|
||||||
cr, uid, context, registry = request.cr, request.uid, request.context, request.registry
|
cr, uid, context, registry = request.cr, request.uid, request.context, request.registry
|
||||||
order_line_obj = request.registry.get('sale.order')
|
order_line_obj = request.registry.get('sale.order')
|
||||||
|
@ -527,7 +527,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.redirect("/shop/payment/")
|
return request.redirect("/shop/payment/")
|
||||||
|
|
||||||
@website.route(['/shop/payment/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/payment/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def payment(self, **post):
|
def payment(self, **post):
|
||||||
""" Payment step. This page proposes several payment means based on available
|
""" Payment step. This page proposes several payment means based on available
|
||||||
payment.acquirer. State at this point :
|
payment.acquirer. State at this point :
|
||||||
|
@ -585,8 +585,8 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.website.render("website_sale.payment", values)
|
return request.website.render("website_sale.payment", values)
|
||||||
|
|
||||||
@website.route(['/shop/payment/transaction/<int:acquirer_id>'],
|
@http.route(['/shop/payment/transaction/<int:acquirer_id>'],
|
||||||
type='http', methods=['POST'], auth="public")
|
type='http', methods=['POST'], auth="public", website=True)
|
||||||
def payment_transaction(self, acquirer_id, **post):
|
def payment_transaction(self, acquirer_id, **post):
|
||||||
""" Hook method that creates a payment.transaction and redirect to the
|
""" Hook method that creates a payment.transaction and redirect to the
|
||||||
acquirer, using post values to re-create the post action.
|
acquirer, using post values to re-create the post action.
|
||||||
|
@ -628,7 +628,7 @@ class Ecommerce(http.Controller):
|
||||||
acquirer_total_url = '%s?%s' % (acquirer_form_post_url, urllib.urlencode(post))
|
acquirer_total_url = '%s?%s' % (acquirer_form_post_url, urllib.urlencode(post))
|
||||||
return request.redirect(acquirer_total_url)
|
return request.redirect(acquirer_total_url)
|
||||||
|
|
||||||
@website.route('/shop/payment/get_status/<int:sale_order_id>', type='json', auth="public", multilang=True)
|
@http.route('/shop/payment/get_status/<int:sale_order_id>', type='json', auth="public", website=True, multilang=True)
|
||||||
def payment_get_status(self, sale_order_id, **post):
|
def payment_get_status(self, sale_order_id, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
|
|
||||||
|
@ -653,7 +653,7 @@ class Ecommerce(http.Controller):
|
||||||
'state': tx.state,
|
'state': tx.state,
|
||||||
}
|
}
|
||||||
|
|
||||||
@website.route('/shop/payment/validate/', type='http', auth="public", multilang=True)
|
@http.route('/shop/payment/validate/', type='http', auth="public", website=True, multilang=True)
|
||||||
def payment_validate(self, transaction_id=None, sale_order_id=None, **post):
|
def payment_validate(self, transaction_id=None, sale_order_id=None, **post):
|
||||||
""" Method that should be called by the server when receiving an update
|
""" Method that should be called by the server when receiving an update
|
||||||
for a transaction. State at this point :
|
for a transaction. State at this point :
|
||||||
|
@ -694,7 +694,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.redirect('/shop/confirmation/%s' % order.id)
|
return request.redirect('/shop/confirmation/%s' % order.id)
|
||||||
|
|
||||||
@website.route(['/shop/confirmation/<int:sale_order_id>'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/confirmation/<int:sale_order_id>'], type='http', auth="public", website=True, multilang=True)
|
||||||
def payment_confirmation(self, sale_order_id, **post):
|
def payment_confirmation(self, sale_order_id, **post):
|
||||||
""" End of checkout process controller. Confirmation is basically seing
|
""" End of checkout process controller. Confirmation is basically seing
|
||||||
the status of a sale.order. State at this point :
|
the status of a sale.order. State at this point :
|
||||||
|
@ -710,7 +710,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return request.website.render("website_sale.confirmation", {'order': order})
|
return request.website.render("website_sale.confirmation", {'order': order})
|
||||||
|
|
||||||
@website.route(['/shop/change_sequence/'], type='json', auth="public")
|
@http.route(['/shop/change_sequence/'], type='json', auth="public", website=True)
|
||||||
def change_sequence(self, id, sequence):
|
def change_sequence(self, id, sequence):
|
||||||
product_obj = request.registry.get('product.template')
|
product_obj = request.registry.get('product.template')
|
||||||
if sequence == "top":
|
if sequence == "top":
|
||||||
|
@ -722,7 +722,7 @@ class Ecommerce(http.Controller):
|
||||||
elif sequence == "down":
|
elif sequence == "down":
|
||||||
product_obj.set_sequence_down(request.cr, request.uid, [id], context=request.context)
|
product_obj.set_sequence_down(request.cr, request.uid, [id], context=request.context)
|
||||||
|
|
||||||
@website.route(['/shop/change_styles/'], type='json', auth="public")
|
@http.route(['/shop/change_styles/'], type='json', auth="public", website=True)
|
||||||
def change_styles(self, id, style_id):
|
def change_styles(self, id, style_id):
|
||||||
product_obj = request.registry.get('product.template')
|
product_obj = request.registry.get('product.template')
|
||||||
product = product_obj.browse(request.cr, request.uid, id, context=request.context)
|
product = product_obj.browse(request.cr, request.uid, id, context=request.context)
|
||||||
|
@ -744,7 +744,7 @@ class Ecommerce(http.Controller):
|
||||||
|
|
||||||
return not active
|
return not active
|
||||||
|
|
||||||
@website.route(['/shop/change_size/'], type='json', auth="public")
|
@http.route(['/shop/change_size/'], type='json', auth="public", website=True)
|
||||||
def change_size(self, id, x, y):
|
def change_size(self, id, x, y):
|
||||||
product_obj = request.registry.get('product.template')
|
product_obj = request.registry.get('product.template')
|
||||||
product = product_obj.browse(request.cr, request.uid, id, context=request.context)
|
product = product_obj.browse(request.cr, request.uid, id, context=request.context)
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
from openerp.addons.website_sale.controllers.main import Ecommerce
|
from openerp.addons.website_sale.controllers.main import Ecommerce
|
||||||
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
from openerp.addons.website.models import website
|
|
||||||
from openerp import SUPERUSER_ID
|
from openerp import SUPERUSER_ID
|
||||||
|
|
||||||
|
|
||||||
class Ecommerce(Ecommerce):
|
class Ecommerce(Ecommerce):
|
||||||
|
|
||||||
@website.route(['/shop/payment/'], type='http', auth="public", multilang=True)
|
@http.route(['/shop/payment/'], type='http', auth="public", website=True, multilang=True)
|
||||||
def payment(self, **post):
|
def payment(self, **post):
|
||||||
cr, uid, context = request.cr, request.uid, request.context
|
cr, uid, context = request.cr, request.uid, request.context
|
||||||
order = self.get_order()
|
order = self.get_order()
|
||||||
|
|
Loading…
Reference in New Issue