355 |
355 |
356 def get_url(self, item): |
356 def get_url(self, item): |
357 return '#' |
357 return '#' |
358 |
358 |
359 |
359 |
360 class VisibilitySwitcherColumn(JsActionColumn): |
360 class AttributeSwitcherColumn(JsActionColumn): |
361 """Visibility switcher column""" |
361 """Switcher column""" |
362 |
362 |
363 cssClasses = {'th': 'action', |
363 cssClasses = {'th': 'action', |
364 'td': 'action switcher'} |
364 'td': 'action switcher'} |
365 |
365 |
366 switch_attribute = 'visible' |
366 icon_hint = _("Switch element attribute") |
367 visible_icon_class = 'fa fa-fw fa-eye' |
367 |
368 hidden_icon_class = 'fa fa-fw fa-eye-slash text-danger' |
368 switch_attribute = None |
369 |
369 |
370 icon_hint = _("Switch element visibility") |
370 on_icon_class = 'fa fa-fw fa-eye' |
371 |
371 off_icon_class = 'fa fa-fw fa-eye-slash text-danger' |
372 url = 'MyAMS.container.switchElementVisibility' |
372 |
|
373 url = 'MyAMS.container.switchElementAttribute' |
373 weight = 5 |
374 weight = 5 |
374 |
375 |
375 def get_icon(self, item): |
376 def get_icon(self, item): |
376 if getattr(item, self.switch_attribute): |
377 if getattr(item, self.switch_attribute): |
377 icon_class = self.visible_icon_class |
378 icon_class = self.on_icon_class |
378 else: |
379 else: |
379 icon_class = self.hidden_icon_class |
380 icon_class = self.off_icon_class |
380 return '<i class="{0}"></i>'.format(icon_class) |
381 return '<i class="{0}"></i>'.format(icon_class) |
381 |
382 |
382 def renderCell(self, item): |
383 def renderCell(self, item): |
383 permission = self.permission |
384 permission = self.permission |
384 if permission and not self.request.has_permission(permission, context=item): |
385 if permission and not self.request.has_permission(permission, context=item): |
385 return self.get_icon(item) |
386 return self.get_icon(item) |
386 else: |
387 else: |
387 return super(VisibilitySwitcherColumn, self).renderCell(item) |
388 return super(AttributeSwitcherColumn, self).renderCell(item) |
|
389 |
|
390 |
|
391 class VisibilitySwitcherColumn(AttributeSwitcherColumn): |
|
392 """Visibility switcher column""" |
|
393 |
|
394 switch_attribute = 'visible' |
|
395 |
|
396 icon_hint = _("Switch element visibility") |
|
397 |
|
398 url = 'MyAMS.container.switchElementVisibility' |
388 |
399 |
389 |
400 |
390 @adapter_config(name='actions', context=(Interface, IPyAMSLayer, ITableWithActions), provides=IColumn) |
401 @adapter_config(name='actions', context=(Interface, IPyAMSLayer, ITableWithActions), provides=IColumn) |
391 class MenuActionsColumn(I18nColumn, Column): |
402 class MenuActionsColumn(I18nColumn, Column): |
392 """Menu actions column""" |
403 """Menu actions column""" |