106 if stop is not None: |
106 if stop is not None: |
107 params[self.stop_param] = stop |
107 params[self.stop_param] = stop |
108 view = self.cw_extra_kwargs.get('view') |
108 view = self.cw_extra_kwargs.get('view') |
109 if view is not None and hasattr(view, 'page_navigation_url'): |
109 if view is not None and hasattr(view, 'page_navigation_url'): |
110 url = view.page_navigation_url(self, path, params) |
110 url = view.page_navigation_url(self, path, params) |
111 elif path in ('json', 'ajax'): |
111 else: |
112 # 'ajax' is the new correct controller, but the old 'json' |
|
113 # controller should still be supported |
|
114 url = self.ajax_page_url(**params) |
112 url = self.ajax_page_url(**params) |
115 else: |
|
116 url = self._cw.build_url(path, **params) |
|
117 # XXX hack to avoid opening a new page containing the evaluation of the |
113 # XXX hack to avoid opening a new page containing the evaluation of the |
118 # js expression on ajax call |
114 # js expression on ajax call |
119 if url.startswith('javascript:'): |
115 if url.startswith('javascript:'): |
120 url += '; $.noop();' |
116 url += '; $.noop();' |
121 return url |
117 return url |
122 |
118 |
123 def ajax_page_url(self, **params): |
119 def ajax_page_url(self, **params): |
124 divid = params.setdefault('divid', 'pageContent') |
120 divid = params.setdefault('divid', 'pageContent') |
|
121 params['fname'] = 'view' |
125 params['rql'] = self.cw_rset.printable_rql() |
122 params['rql'] = self.cw_rset.printable_rql() |
126 return js_href("$(%s).loadxhtml(AJAX_PREFIX_URL, %s, 'get', 'swap')" % ( |
123 return self._cw.build_url('ajax', **params) |
127 json_dumps('#'+divid), js.ajaxFuncArgs('view', params))) |
|
128 |
124 |
129 def page_link(self, path, params, start, stop, content): |
125 def page_link(self, path, params, start, stop, content): |
130 url = xml_escape(self.page_url(path, params, start, stop)) |
126 url = xml_escape(self.page_url(path, params, start, stop)) |
131 if start == self.starting_from: |
127 if start == self.starting_from: |
132 return self.selected_page_link_templ % (url, content, content) |
128 return self.selected_page_link_templ % (url, content, content) |