2013-08-02 04:35:26 +00:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
|
|
from openerp.addons.web import http
|
|
|
|
from openerp.addons.web.http import request
|
|
|
|
from openerp.addons.website import website
|
2013-08-02 10:11:22 +00:00
|
|
|
from openerp.tools.translate import _
|
|
|
|
|
|
|
|
from datetime import datetime
|
|
|
|
from dateutil.relativedelta import relativedelta
|
|
|
|
from openerp import tools
|
2013-08-02 04:35:26 +00:00
|
|
|
|
|
|
|
class website_hr(http.Controller):
|
|
|
|
|
2013-08-02 10:11:22 +00:00
|
|
|
@http.route(['/event', '/event/search/<path:path>'], type='http', auth="public")
|
|
|
|
def blog(self, path=None, **post):
|
2013-08-02 04:35:26 +00:00
|
|
|
data_obj = request.registry['event.event']
|
|
|
|
|
2013-08-02 10:11:22 +00:00
|
|
|
def sd(date):
|
|
|
|
return date.strftime(tools.DEFAULT_SERVER_DATE_FORMAT)
|
|
|
|
today = datetime.today()
|
|
|
|
dates = [
|
|
|
|
[None, _('All Dates'), [(1, "=", 1)]],
|
|
|
|
['today', _('Today'), [
|
|
|
|
("date_begin", ">=", sd(today)),
|
|
|
|
("date_begin", "<", sd(today + relativedelta(days=1)))],
|
|
|
|
0],
|
|
|
|
['tomorrow', _('Tomorrow'), [
|
|
|
|
("date_begin", ">=", sd(today + relativedelta(days=1))),
|
|
|
|
("date_begin", "<", sd(today + relativedelta(days=2)))],
|
|
|
|
0],
|
|
|
|
['week', _('This Week'), [
|
|
|
|
("date_begin", ">=", sd(today + relativedelta(days=-today.weekday()))),
|
|
|
|
("date_begin", "<", sd(today + relativedelta(days=6-today.weekday())))],
|
|
|
|
0],
|
|
|
|
['nextweek', _('Next Week'), [
|
|
|
|
("date_begin", ">=", sd(today + relativedelta(days=7-today.weekday()))),
|
|
|
|
("date_begin", "<", sd(today + relativedelta(days=13-today.weekday())))],
|
|
|
|
0],
|
|
|
|
['month', _('This month'), [
|
|
|
|
("date_begin", ">=", sd(today.replace(day=1) + relativedelta(months=1))),
|
|
|
|
("date_begin", "<", sd(today.replace(day=1) + relativedelta(months=1)))],
|
|
|
|
0],
|
|
|
|
]
|
|
|
|
|
2013-08-02 04:35:26 +00:00
|
|
|
obj_ids = data_obj.search(request.cr, request.uid, [(1, "=", 1)])
|
|
|
|
values = {
|
|
|
|
'event_ids': data_obj.browse(request.cr, request.uid, obj_ids),
|
2013-08-02 10:11:22 +00:00
|
|
|
'dates': dates,
|
|
|
|
'date_active': None,
|
2013-08-02 04:35:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
html = website.render("website_event.index", values)
|
|
|
|
return html
|
|
|
|
|
2013-08-02 04:49:15 +00:00
|
|
|
@http.route(['/event/publish'], type='http', auth="public")
|
2013-08-02 04:35:26 +00:00
|
|
|
def publish(self, **post):
|
|
|
|
obj_id = int(post['id'])
|
|
|
|
data_obj = request.registry['event.event']
|
|
|
|
|
|
|
|
obj = data_obj.browse(request.cr, request.uid, obj_id)
|
|
|
|
data_obj.write(request.cr, request.uid, [obj_id], {'website_published': not obj.website_published})
|
|
|
|
obj = data_obj.browse(request.cr, request.uid, obj_id)
|
|
|
|
|
|
|
|
return obj.website_published and "1" or "0"
|