-
Notifications
You must be signed in to change notification settings - Fork 0
/
global_vars.py
112 lines (85 loc) · 3.03 KB
/
global_vars.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# -*- coding: Cp1250 -*-
"""
This script contains global variables, that are accessed throughout the whole GUI.
To set their initial values use the vnos_zacetnih_podatkov.py script.
"""
vacations, titles, turnus_types, roles, turnuses, workplaces, scheduling_units, employment_types, nurses = \
(None, None, None, None, None, None, None, None, None)
def set_vacations (data_container):
global vacations
vacations = data_container
def set_titles (data_container):
global titles
titles = data_container
def set_turnus_types (data_container):
global turnus_types
turnus_types = data_container
def set_roles (data_container):
global roles
roles = data_container
def set_turnuses (data_container):
global turnuses
turnuses = data_container
def set_workplaces (data_container):
global workplaces
workplaces = data_container
def set_scheduling_units (data_container):
global scheduling_units
scheduling_units = data_container
def set_employment_types (data_container):
global employment_types
employment_types = data_container
def set_nurses (data_container):
global nurses
nurses = data_container
def get_vacations ( ):
return vacations
def get_titles ( ):
return titles
def get_turnus_types ( ):
return turnus_types
def get_roles ( ):
return roles
def get_turnuses ( ):
return turnuses
def get_workplaces ( ):
return workplaces
def get_scheduling_units ( ):
return scheduling_units
def get_employment_types ( ):
return employment_types
def get_nurses ( ):
return nurses
def check_occurence (data_object):
"""
Checks all the occurrences of the specified object.
@param data_object: a data object
@return: a set of all the elements, in which the object occured
"""
import utils
occuernces = set ( )
occuernces |= __check_container (get_vacations ( ), data_object)
occuernces |= __check_container (get_titles ( ), data_object)
occuernces |= __check_container (get_turnus_types ( ), data_object)
occuernces |= __check_container (get_roles ( ), data_object)
occuernces |= __check_container (get_turnuses ( ), data_object)
occuernces |= __check_container (get_workplaces ( ), data_object)
occuernces |= __check_container (get_employment_types ( ), data_object)
occuernces |= __check_container (get_scheduling_units ( ), data_object)
occuernces |= __check_container (get_nurses ( ), data_object)
to_sort = []
for o in occuernces:
to_sort.append ((utils.translate (type (o).__name__), o))
to_sort.sort ( )
return [str(el[0]) + ': ' + str (el[1]) for el in to_sort]
def __check_container (container, data_object):
"""
Checks in which objects does the data object occur.
@param container: a data container object
@param data_object: a data object
@return: set of objects, in which all the data_object's parents are listed
"""
occurences = set ( )
if container:
occurences |= container.synchronize_data (data_object)
return occurences