web/views/calendar.py
changeset 3451 6b46d73823f5
parent 3377 dd9d292b6a6d
child 3457 0924d0d08d60
--- a/web/views/calendar.py	Wed Sep 23 19:26:38 2009 +0200
+++ b/web/views/calendar.py	Wed Sep 23 19:40:19 2009 +0200
@@ -48,7 +48,7 @@
 
         def call(self):
             ical = iCalendar()
-            for i in range(len(self.rset.rows)):
+            for i in range(len(self.cw_rset.rows)):
                 task = self.complete_entity(i)
                 event = ical.add('vevent')
                 event.add('summary').value = task.dc_title()
@@ -60,7 +60,7 @@
 
             buff = ical.serialize()
             if not isinstance(buff, unicode):
-                buff = unicode(buff, self.req.encoding)
+                buff = unicode(buff, self._cw.encoding)
             self.w(buff)
 
 except ImportError:
@@ -79,7 +79,7 @@
 
     def call(self):
         self.w(u'<div class="hcalendar">')
-        for i in range(len(self.rset.rows)):
+        for i in range(len(self.cw_rset.rows)):
             task = self.complete_entity(i)
             self.w(u'<div class="vevent">')
             self.w(u'<h3 class="summary">%s</h3>' % xml_escape(task.dc_title()))
@@ -101,8 +101,8 @@
         task.view('oneline', w=self.w)
         if dates:
             if task.start and task.stop:
-                self.w('<br/>' % self.req._('from %(date)s' % {'date': self.format_date(task.start)}))
-                self.w('<br/>' % self.req._('to %(date)s' % {'date': self.format_date(task.stop)}))
+                self.w('<br/>' % self._cw._('from %(date)s' % {'date': self.format_date(task.start)}))
+                self.w('<br/>' % self._cw._('to %(date)s' % {'date': self.format_date(task.stop)}))
                 self.w('<br/>to %s'%self.format_date(task.stop))
 
 class CalendarLargeItemView(CalendarItemView):
@@ -135,17 +135,17 @@
     title = _('one month')
 
     def call(self):
-        self.req.add_js('cubicweb.ajax.js')
-        self.req.add_css('cubicweb.calendar.css')
+        self._cw.add_js('cubicweb.ajax.js')
+        self._cw.add_css('cubicweb.calendar.css')
         # XXX: restrict courses directy with RQL
         _today =  datetime.today()
 
-        if 'year' in self.req.form:
-            year = int(self.req.form['year'])
+        if 'year' in self._cw.form:
+            year = int(self._cw.form['year'])
         else:
             year = _today.year
-        if 'month' in self.req.form:
-            month = int(self.req.form['month'])
+        if 'month' in self._cw.form:
+            month = int(self._cw.form['month'])
         else:
             month = _today.month
 
@@ -159,10 +159,10 @@
         month_dates = list(date_range(firstday, lastday))
         dates = {}
         task_max = 0
-        for row in xrange(self.rset.rowcount):
-            task = self.rset.get_entity(row, 0)
-            if len(self.rset[row]) > 1 and self.rset.description[row][1] == 'CWUser':
-                user = self.rset.get_entity(row, 1)
+        for row in xrange(self.cw_rset.rowcount):
+            task = self.cw_rset.get_entity(row, 0)
+            if len(self.cw_rset[row]) > 1 and self.cw_rset.description[row][1] == 'CWUser':
+                user = self.cw_rset.get_entity(row, 1)
             else:
                 user = None
             the_dates = []
@@ -244,12 +244,12 @@
         prevlink, nextlink = self._prevnext_links(curdate)  # XXX
         self.w(u'<tr><th><a href="%s">&lt;&lt;</a></th><th colspan="5">%s %s</th>'
                u'<th><a href="%s">&gt;&gt;</a></th></tr>' %
-               (xml_escape(prevlink), self.req._(curdate.strftime('%B').lower()),
+               (xml_escape(prevlink), self._cw._(curdate.strftime('%B').lower()),
                 curdate.year, xml_escape(nextlink)))
 
         # output header
         self.w(u'<tr><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th></tr>' %
-               tuple(self.req._(day) for day in WEEKDAYS))
+               tuple(self._cw._(day) for day in WEEKDAYS))
 
         # build calendar
         for mdate, task_rows in zip(month_dates, days):
@@ -263,11 +263,11 @@
     def _prevnext_links(self, curdate):
         prevdate = curdate - timedelta(31)
         nextdate = curdate + timedelta(31)
-        rql = self.rset.printable_rql()
-        prevlink = self.req.build_ajax_replace_url('onemonthcalid', rql, 'onemonthcal',
+        rql = self.cw_rset.printable_rql()
+        prevlink = self._cw.build_ajax_replace_url('onemonthcalid', rql, 'onemonthcal',
                                                    year=prevdate.year,
                                                    month=prevdate.month)
-        nextlink = self.req.build_ajax_replace_url('onemonthcalid', rql, 'onemonthcal',
+        nextlink = self._cw.build_ajax_replace_url('onemonthcalid', rql, 'onemonthcal',
                                                    year=nextdate.year,
                                                    month=nextdate.month)
         return prevlink, nextlink
@@ -283,16 +283,16 @@
         self.w(u'<div class="calCellTitle%s">' % classes)
         self.w(u'<div class="day">%s</div>' % celldate.day)
 
-        if len(self.rset.column_types(0)) == 1:
-            etype = list(self.rset.column_types(0))[0]
+        if len(self.cw_rset.column_types(0)) == 1:
+            etype = list(self.cw_rset.column_types(0))[0]
             url = self.build_url(vid='creation', etype=etype,
                                  schedule=True,
                                  start=self.format_date(celldate), stop=self.format_date(celldate),
-                                 __redirectrql=self.rset.printable_rql(),
-                                 __redirectparams=self.req.build_url_params(year=curdate.year, month=curmonth),
-                                 __redirectvid=self.id
+                                 __redirectrql=self.cw_rset.printable_rql(),
+                                 __redirectparams=self._cw.build_url_params(year=curdate.year, month=curmonth),
+                                 __redirectvid=self.__regid__
                                  )
-            self.w(u'<div class="cmd"><a href="%s">%s</a></div>' % (xml_escape(url), self.req._(u'add')))
+            self.w(u'<div class="cmd"><a href="%s">%s</a></div>' % (xml_escape(url), self._cw._(u'add')))
             self.w(u'&#160;')
         self.w(u'</div>')
         self.w(u'<div class="cellContent">')
@@ -302,9 +302,9 @@
                 self.w(u'<div class="task %s">' % task_descr.color)
                 task.view('calendaritem', w=self.w )
                 url = task.absolute_url(vid='edition',
-                                        __redirectrql=self.rset.printable_rql(),
-                                        __redirectparams=self.req.build_url_params(year=curdate.year, month=curmonth),
-                                        __redirectvid=self.id
+                                        __redirectrql=self.cw_rset.printable_rql(),
+                                        __redirectparams=self._cw.build_url_params(year=curdate.year, month=curmonth),
+                                        __redirectvid=self.__regid__
                                         )
 
                 self.w(u'<div class="tooltip" ondblclick="stopPropagation(event); window.location.assign(\'%s\'); return false;">' % xml_escape(url))
@@ -326,16 +326,16 @@
     title = _('one week')
 
     def call(self):
-        self.req.add_js( ('cubicweb.ajax.js', 'cubicweb.calendar.js') )
-        self.req.add_css('cubicweb.calendar.css')
+        self._cw.add_js( ('cubicweb.ajax.js', 'cubicweb.calendar.js') )
+        self._cw.add_css('cubicweb.calendar.css')
         # XXX: restrict directly with RQL
         _today =  datetime.today()
-        if 'year' in self.req.form:
-            year = int(self.req.form['year'])
+        if 'year' in self._cw.form:
+            year = int(self._cw.form['year'])
         else:
             year = _today.year
-        if 'week' in self.req.form:
-            week = int(self.req.form['week'])
+        if 'week' in self._cw.form:
+            week = int(self._cw.form['week'])
         else:
             week = _today.isocalendar()[1]
         # week - 1 since we get week number > 0 while we want it to start from 0
@@ -348,8 +348,8 @@
         colors = [ "col%x" % i for i in range(12) ]
         next_color_index = 0
         done_tasks = []
-        for row in xrange(self.rset.rowcount):
-            task = self.rset.get_entity(row, 0)
+        for row in xrange(self.cw_rset.rowcount):
+            task = self.cw_rset.get_entity(row, 0)
             if task in done_tasks:
                 continue
             done_tasks.append(task)
@@ -389,7 +389,7 @@
         self.w(u'<th><a href="%s">&lt;&lt;</a></th><th colspan="5">%s %s %s</th>'
                u'<th><a href="%s">&gt;&gt;</a></th></tr>' %
                (xml_escape(prevlink), first_day_of_week.year,
-                self.req._(u'week'), first_day_of_week.isocalendar()[1],
+                self._cw._(u'week'), first_day_of_week.isocalendar()[1],
                 xml_escape(nextlink)))
 
         # output header
@@ -399,9 +399,9 @@
         for i, day in enumerate(WEEKDAYS):
             wdate = first_day_of_week + timedelta(i)
             if wdate.isocalendar() == _today.isocalendar():
-                self.w(u'<th class="today">%s<br/>%s</th>' % (self.req._(day), self.format_date(wdate)))
+                self.w(u'<th class="today">%s<br/>%s</th>' % (self._cw._(day), self.format_date(wdate)))
             else:
-                self.w(u'<th>%s<br/>%s</th>' % (self.req._(day), self.format_date(wdate)))
+                self.w(u'<th>%s<br/>%s</th>' % (self._cw._(day), self.format_date(wdate)))
         self.w(u'</tr>')
 
         # build week calendar
@@ -420,13 +420,13 @@
             if wdate.isocalendar() == _today.isocalendar():
                 classes = " today"
             self.w(u'<td class="column %s" id="%s">' % (classes, day))
-            if len(self.rset.column_types(0)) == 1:
-                etype = list(self.rset.column_types(0))[0]
+            if len(self.cw_rset.column_types(0)) == 1:
+                etype = list(self.cw_rset.column_types(0))[0]
                 url = self.build_url(vid='creation', etype=etype,
                                      schedule=True,
-                                     __redirectrql=self.rset.printable_rql(),
-                                     __redirectparams=self.req.build_url_params(year=year, week=week),
-                                     __redirectvid=self.id
+                                     __redirectrql=self.cw_rset.printable_rql(),
+                                     __redirectparams=self._cw.build_url_params(year=year, week=week),
+                                     __redirectvid=self.__regid__
                                      )
                 extra = ' ondblclick="addCalendarItem(event, hmin=8, hmax=20, year=%s, month=%s, day=%s, duration=2, baseurl=\'%s\')"' % (
                     wdate.year, wdate.month, wdate.day, xml_escape(url))
@@ -496,9 +496,9 @@
                        (task_desc.color, style))
             task.view('calendaritem', dates=False, w=self.w)
             url = task.absolute_url(vid='edition',
-                                    __redirectrql=self.rset.printable_rql(),
-                                    __redirectparams=self.req.build_url_params(year=date.year, week=date.isocalendar()[1]),
-                                    __redirectvid=self.id
+                                    __redirectrql=self.cw_rset.printable_rql(),
+                                    __redirectparams=self._cw.build_url_params(year=date.year, week=date.isocalendar()[1]),
+                                    __redirectvid=self.__regid__
                                  )
 
             self.w(u'<div class="tooltip" ondblclick="stopPropagation(event); window.location.assign(\'%s\'); return false;">' % xml_escape(url))
@@ -520,11 +520,11 @@
     def _prevnext_links(self, curdate):
         prevdate = curdate - timedelta(7)
         nextdate = curdate + timedelta(7)
-        rql = self.rset.printable_rql()
-        prevlink = self.req.build_ajax_replace_url('oneweekcalid', rql, 'oneweekcal',
+        rql = self.cw_rset.printable_rql()
+        prevlink = self._cw.build_ajax_replace_url('oneweekcalid', rql, 'oneweekcal',
                                                    year=prevdate.year,
                                                    week=prevdate.isocalendar()[1])
-        nextlink = self.req.build_ajax_replace_url('oneweekcalid', rql, 'oneweekcal',
+        nextlink = self._cw.build_ajax_replace_url('oneweekcalid', rql, 'oneweekcal',
                                                    year=nextdate.year,
                                                    week=nextdate.isocalendar()[1])
         return prevlink, nextlink