Total Complexity | 3 |
Total Lines | 27 |
Duplicated Lines | 0 % |
Changes | 0 |
1 | # -*- coding: utf-8 -*- |
||
2 | |||
3 | import collections |
||
4 | |||
5 | import six |
||
6 | from bika.lims import api |
||
7 | from Products.Five.browser import BrowserView |
||
8 | |||
9 | |||
10 | class Modal(BrowserView): |
||
11 | """Base Class for Modals |
||
12 | """ |
||
13 | |||
14 | def __init__(self, context, request): |
||
15 | self.context = context |
||
16 | self.request = request |
||
17 | self.uids = self.get_uids_from_request() |
||
18 | |||
19 | def get_uids_from_request(self): |
||
20 | """Returns a list of uids from the request |
||
21 | """ |
||
22 | uids = self.request.get("uids", "") |
||
23 | if isinstance(uids, six.string_types): |
||
24 | uids = uids.split(",") |
||
25 | unique_uids = collections.OrderedDict().fromkeys(uids).keys() |
||
26 | return filter(api.is_uid, unique_uids) |
||
27 |