--- a/web/views/actions.py Fri Sep 25 11:57:06 2009 +0200
+++ b/web/views/actions.py Fri Sep 25 11:57:31 2009 +0200
@@ -15,8 +15,7 @@
authenticated_user, match_user_groups, match_search_state,
has_permission, has_add_permission,
)
-from cubicweb.web import uicfg, controller
-from cubicweb.web.action import Action
+from cubicweb.web import uicfg, controller, action
from cubicweb.web.views import linksearch_select_url, vid_from_rset
@@ -74,13 +73,14 @@
# generic 'main' actions #######################################################
-class SelectAction(Action):
+class SelectAction(action.Action):
"""base class for link search actions. By default apply on
any size entity result search it the current state is 'linksearch'
if accept match.
"""
__regid__ = 'select'
- __select__ = match_search_state('linksearch') & nonempty_rset() & match_searched_etype()
+ __select__ = (match_search_state('linksearch') & nonempty_rset()
+ & match_searched_etype())
title = _('select')
category = 'mainactions'
@@ -90,7 +90,7 @@
return linksearch_select_url(self._cw, self.cw_rset)
-class CancelSelectAction(Action):
+class CancelSelectAction(action.Action):
__regid__ = 'cancel'
__select__ = match_search_state('linksearch')
@@ -104,9 +104,9 @@
vid='edition', __mode='normal')
-class ViewAction(Action):
+class ViewAction(action.Action):
__regid__ = 'view'
- __select__ = (match_search_state('normal') &
+ __select__ = (action.Action.__select__ &
match_user_groups('users', 'managers') &
view_is_not_default_view() &
non_final_entity())
@@ -123,10 +123,9 @@
**params)
-class ModifyAction(Action):
+class ModifyAction(action.Action):
__regid__ = 'edit'
- __select__ = (match_search_state('normal') &
- one_line_rset() &
+ __select__ = (action.Action.__select__ & one_line_rset() &
(has_permission('update') | has_editable_relation('add')))
title = _('modify')
@@ -138,11 +137,10 @@
return entity.absolute_url(vid='edition')
-class MultipleEditAction(Action):
+class MultipleEditAction(action.Action):
__regid__ = 'muledit' # XXX get strange conflicts if id='edit'
- __select__ = (match_search_state('normal') &
- two_lines_rset() & one_etype_rset() &
- has_permission('update'))
+ __select__ = (action.Action.__select__ & two_lines_rset() &
+ one_etype_rset() & has_permission('update'))
title = _('modify')
category = 'mainactions'
@@ -154,9 +152,10 @@
# generic "more" actions #######################################################
-class ManagePermissionsAction(Action):
+class ManagePermissionsAction(action.Action):
__regid__ = 'managepermission'
- __select__ = one_line_rset() & non_final_entity() & match_user_groups('managers')
+ __select__ = (action.Action.__select__ & one_line_rset() &
+ non_final_entity() & match_user_groups('managers'))
title = _('manage permissions')
category = 'moreactions'
@@ -175,9 +174,9 @@
return self.cw_rset.get_entity(self.cw_row or 0, self.cw_col or 0).absolute_url(vid='security')
-class DeleteAction(Action):
+class DeleteAction(action.Action):
__regid__ = 'delete'
- __select__ = has_permission('delete')
+ __select__ = action.Action.__select__ & has_permission('delete')
title = _('delete')
category = 'moreactions'
@@ -190,9 +189,10 @@
return self._cw.build_url(rql=self.cw_rset.printable_rql(), vid='deleteconf')
-class CopyAction(Action):
+class CopyAction(action.Action):
__regid__ = 'copy'
- __select__ = one_line_rset() & has_permission('add')
+ __select__ = (action.Action.__select__ & one_line_rset()
+ & has_permission('add'))
title = _('copy')
category = 'moreactions'
@@ -208,7 +208,7 @@
add a new one
"""
__regid__ = 'addentity'
- __select__ = (match_search_state('normal') &
+ __select__ = (action.Action.__select__ &
(addable_etype_empty_rset()
| (two_lines_rset() & one_etype_rset & has_add_permission()))
)
@@ -230,7 +230,7 @@
return self._cw.build_url('add/%s' % self.rsettype)
-class AddRelatedActions(Action):
+class AddRelatedActions(action.Action):
"""fill 'addrelated' sub-menu of the actions box"""
__regid__ = 'addrelated'
__select__ = Action.__select__ & one_line_rset() & non_final_entity()