simo 2.5.14__py3-none-any.whl → 2.5.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of simo might be problematic. Click here for more details.
- simo/core/__pycache__/serializers.cpython-38.pyc +0 -0
- simo/core/serializers.py +4 -1
- simo/fleet/__pycache__/forms.cpython-38.pyc +0 -0
- simo/fleet/forms.py +1 -1
- simo/users/__pycache__/models.cpython-38.pyc +0 -0
- simo/users/models.py +3 -2
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/METADATA +1 -1
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/RECORD +12 -12
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/LICENSE.md +0 -0
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/WHEEL +0 -0
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/entry_points.txt +0 -0
- {simo-2.5.14.dist-info → simo-2.5.15.dist-info}/top_level.txt +0 -0
|
Binary file
|
simo/core/serializers.py
CHANGED
|
@@ -528,8 +528,11 @@ class ComponentSerializer(FormSerializer):
|
|
|
528
528
|
if user.is_superuser:
|
|
529
529
|
return False
|
|
530
530
|
instance = self.context.get('instance')
|
|
531
|
+
role = user.get_role(instance)
|
|
532
|
+
if not role:
|
|
533
|
+
return True
|
|
531
534
|
return not bool(
|
|
532
|
-
|
|
535
|
+
role.component_permissions.filter(
|
|
533
536
|
component=obj, write=True
|
|
534
537
|
)
|
|
535
538
|
)
|
|
Binary file
|
simo/fleet/forms.py
CHANGED
|
Binary file
|
simo/users/models.py
CHANGED
|
@@ -238,13 +238,14 @@ class User(AbstractBaseUser, SimoAdminMixin):
|
|
|
238
238
|
def get_role(self, instance):
|
|
239
239
|
cache_key = f'user-{self.id}_instance-{instance.id}_role'
|
|
240
240
|
role = cache.get(cache_key, 'expired')
|
|
241
|
-
if role
|
|
241
|
+
if role in ('expired', None):
|
|
242
242
|
role = self.roles.filter(
|
|
243
243
|
instance=instance
|
|
244
244
|
).prefetch_related(
|
|
245
245
|
'component_permissions', 'component_permissions__component'
|
|
246
246
|
).first()
|
|
247
|
-
|
|
247
|
+
if role:
|
|
248
|
+
cache.set(cache_key, role, 20)
|
|
248
249
|
return role
|
|
249
250
|
|
|
250
251
|
@property
|
|
@@ -55,7 +55,7 @@ simo/core/middleware.py,sha256=hExD7Vmw7eitk0vAjOwKzkwrtuw8YxpflF92j_CA2YY,3193
|
|
|
55
55
|
simo/core/models.py,sha256=DXJXTtNdpn9yC4VArHp0yrhpRb7vGpwH2c-JvqLE56M,22784
|
|
56
56
|
simo/core/permissions.py,sha256=v0iJM4LOeYoEfMiw3OLPYio272G1aUEAg_z9Wd1q5m0,2993
|
|
57
57
|
simo/core/routing.py,sha256=X1_IHxyA-_Q7hw1udDoviVP4_FSBDl8GYETTC2zWTbY,499
|
|
58
|
-
simo/core/serializers.py,sha256=
|
|
58
|
+
simo/core/serializers.py,sha256=WgksN1Ombv240nfQR_UtmKslTWM9vz9Y0yTdN5usiHU,21892
|
|
59
59
|
simo/core/signal_receivers.py,sha256=-Lw2Jzvgiznw3wj44ntL9nv3DtT8RCEpz6Tap9ZHEQk,9266
|
|
60
60
|
simo/core/socket_consumers.py,sha256=trRZvBGTJ7xIbfdmVvn7zoiWp_qssSkMZykDrI5YQyE,9783
|
|
61
61
|
simo/core/storage.py,sha256=_5igjaoWZAiExGWFEJMElxUw55DzJG1jqFty33xe8BE,342
|
|
@@ -88,7 +88,7 @@ simo/core/__pycache__/middleware.cpython-38.pyc,sha256=iOSTXSQl3sEsa-9kx_6w5zbEB
|
|
|
88
88
|
simo/core/__pycache__/models.cpython-38.pyc,sha256=HGL3TiaMy-0oobgCGGxH2nvDhh4RnOBeD00rwQsuklU,18591
|
|
89
89
|
simo/core/__pycache__/permissions.cpython-38.pyc,sha256=fH4iyqd9DdzRLEu2b621-FeM-napR0M7hzBUTHo9Q3g,2972
|
|
90
90
|
simo/core/__pycache__/routing.cpython-38.pyc,sha256=3T3FPJ8Cn99xZCGvMyg2xjl7al-Shm9CelbSpkJtNP8,599
|
|
91
|
-
simo/core/__pycache__/serializers.cpython-38.pyc,sha256=
|
|
91
|
+
simo/core/__pycache__/serializers.cpython-38.pyc,sha256=d4wpUjFuo8GxaNWbin9GdHKik06IZN32uZL1SnXiL_s,19616
|
|
92
92
|
simo/core/__pycache__/signal_receivers.cpython-38.pyc,sha256=h6MWIU7U2tNCIp0NiKSEDuFeaxLHYz1OXehzBxAYrYA,7048
|
|
93
93
|
simo/core/__pycache__/socket_consumers.cpython-38.pyc,sha256=KqbO1cOewodVPcy0-htVefyUjCuELKV0o7fOfYqfgPc,8490
|
|
94
94
|
simo/core/__pycache__/storage.cpython-38.pyc,sha256=9R1Xu0FJDflfRXUPsqEgt0SpwiP7FGk7HaR8s8XRyI8,721
|
|
@@ -10224,7 +10224,7 @@ simo/fleet/auto_urls.py,sha256=UX66eR2ykMqFgfIllW-RTdjup5-FieCWl_BVm3CcXKg,702
|
|
|
10224
10224
|
simo/fleet/base_types.py,sha256=wL9RVkHr0gA7HI1wZq0pruGEIgvQqpfnCL4cC3ywsvw,102
|
|
10225
10225
|
simo/fleet/ble.py,sha256=eHA_9ABjbmH1vUVCv9hiPXQL2GZZSEVwfO0xyI1S0nI,1081
|
|
10226
10226
|
simo/fleet/controllers.py,sha256=fjri1GtCnflkkDpNqhTwy6i9CK6RDEB0Q_BtADzcG8E,29156
|
|
10227
|
-
simo/fleet/forms.py,sha256=
|
|
10227
|
+
simo/fleet/forms.py,sha256=LbYphCtfpSxK3GwzSrcbMkB_spcspsf5FzYQFE9n-Q4,62614
|
|
10228
10228
|
simo/fleet/gateways.py,sha256=lKEJW0MgaOEiNnijH50DNSVChvaUT3TA3UurcI57P8k,5677
|
|
10229
10229
|
simo/fleet/managers.py,sha256=XOpDOA9L-f_550TNSyXnJbun2EmtGz1TenVTMlUSb8E,807
|
|
10230
10230
|
simo/fleet/models.py,sha256=xAffeAh5hf8NC94B66ZqmYoF7qDN53wEQ1xE2E9D8Xc,17524
|
|
@@ -10241,7 +10241,7 @@ simo/fleet/__pycache__/auto_urls.cpython-38.pyc,sha256=Tc6a6BCXHjijP8U2jE2ghlJwn
|
|
|
10241
10241
|
simo/fleet/__pycache__/base_types.cpython-38.pyc,sha256=deyPwjpT6xZiFxBGFnj5b7R-lbdOTh2krgpJhrcGVhc,274
|
|
10242
10242
|
simo/fleet/__pycache__/ble.cpython-38.pyc,sha256=Nrof9w7cm4OlpFWHeVnmvvanh2_oF9oQ3TknJiV93-0,1267
|
|
10243
10243
|
simo/fleet/__pycache__/controllers.cpython-38.pyc,sha256=jtFHr_uyjCCeuidL-o-hGaf21u0fnxK_O6hTRdY6lpc,24906
|
|
10244
|
-
simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=
|
|
10244
|
+
simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=tvoi9np3Empg1GYBFTChznEy09M0v6UBRaGz9FZCJxc,42300
|
|
10245
10245
|
simo/fleet/__pycache__/gateways.cpython-38.pyc,sha256=0RKVn0ndreVKhsrukqeLPSdMnRrsQ_W7yeVeBkRLfIk,5058
|
|
10246
10246
|
simo/fleet/__pycache__/managers.cpython-38.pyc,sha256=8uz-xpUiqbGDgXIZ_XRZtFb-Tju6NGxflGg-Ee4Yo6k,1310
|
|
10247
10247
|
simo/fleet/__pycache__/models.cpython-38.pyc,sha256=TH2J-7xC1TE9AzOJ2lRhVGxUUYqnoYGWTzH9GktuVV0,14138
|
|
@@ -10450,7 +10450,7 @@ simo/users/auto_urls.py,sha256=lcJvteBsbHQMJieZpDz-63tDYejLApqsW3CUnDakd7k,272
|
|
|
10450
10450
|
simo/users/dynamic_settings.py,sha256=sEIsi4yJw3kH46Jq_aOkSuK7QTfQACGUE-lkyBogCaM,570
|
|
10451
10451
|
simo/users/managers.py,sha256=Fajwpm3wdMES73iPqoa_66J8g13bvUhjUtrexLKIcIU,312
|
|
10452
10452
|
simo/users/middleware.py,sha256=GMCrnWSc_2qCleyQIkfQGdL-pU-UTEcSg1wPvIKZ9uk,1210
|
|
10453
|
-
simo/users/models.py,sha256=
|
|
10453
|
+
simo/users/models.py,sha256=YXermRuV6LFndyUMiaYcTxC1kpgG0GLeJCczGJuCy10,19251
|
|
10454
10454
|
simo/users/permissions.py,sha256=IwtYS8yQdupWbYKR9VimSRDV3qCJ2jXP57Lyjpb2EQM,242
|
|
10455
10455
|
simo/users/serializers.py,sha256=zzw1KONTnaTNBaU0r4rNVxJ827KzD6Z5LuQt27ZsQ98,2516
|
|
10456
10456
|
simo/users/sso_urls.py,sha256=gQOaPvGMYFD0NCVSwyoWO-mTEHe5j9sbzV_RK7kdvp0,251
|
|
@@ -10467,7 +10467,7 @@ simo/users/__pycache__/auto_urls.cpython-38.pyc,sha256=K-3sz2h-cEitoflSmZk1t0eUg
|
|
|
10467
10467
|
simo/users/__pycache__/dynamic_settings.cpython-38.pyc,sha256=6F8JBjZkHykySnmZjNEzjS0ijbmPdcp9yUAZ5kqq_Fo,864
|
|
10468
10468
|
simo/users/__pycache__/managers.cpython-38.pyc,sha256=8NvEXbI795f-BXs6CvE_Kp0PpWfYmEJIZ8Bh8H6S2PQ,705
|
|
10469
10469
|
simo/users/__pycache__/middleware.cpython-38.pyc,sha256=Tj4nVEAvxEW3xA63fBRiJWRJpz_M848ZOqbHioc_IPE,1149
|
|
10470
|
-
simo/users/__pycache__/models.cpython-38.pyc,sha256=
|
|
10470
|
+
simo/users/__pycache__/models.cpython-38.pyc,sha256=oQnLCmCFOJ_L_NzkjokSFKmGO-RZWkOsWEQpwS7k_AA,17873
|
|
10471
10471
|
simo/users/__pycache__/permissions.cpython-38.pyc,sha256=ez5NxoL_JUeeH6GsKhvFreuA3FCBgGf9floSypdXUtM,633
|
|
10472
10472
|
simo/users/__pycache__/serializers.cpython-38.pyc,sha256=Dy8RAcwNkNSXoJHvLp8fozURyHCtucqpSPyqZtbnMZc,3732
|
|
10473
10473
|
simo/users/__pycache__/sso_urls.cpython-38.pyc,sha256=uAwDozpOmrhUald-8tOHANILXkH7-TI8fNYXOtPkSY8,402
|
|
@@ -10561,9 +10561,9 @@ simo/users/templates/invitations/expired_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
|
10561
10561
|
simo/users/templates/invitations/expired_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10562
10562
|
simo/users/templates/invitations/taken_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10563
10563
|
simo/users/templates/invitations/taken_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10564
|
-
simo-2.5.
|
|
10565
|
-
simo-2.5.
|
|
10566
|
-
simo-2.5.
|
|
10567
|
-
simo-2.5.
|
|
10568
|
-
simo-2.5.
|
|
10569
|
-
simo-2.5.
|
|
10564
|
+
simo-2.5.15.dist-info/LICENSE.md,sha256=M7wm1EmMGDtwPRdg7kW4d00h1uAXjKOT3HFScYQMeiE,34916
|
|
10565
|
+
simo-2.5.15.dist-info/METADATA,sha256=6szMyu5HN5deBkqFoKtgRTTOd8Gyelj1sMscLIToS-A,1924
|
|
10566
|
+
simo-2.5.15.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
|
10567
|
+
simo-2.5.15.dist-info/entry_points.txt,sha256=S9PwnUYmTSW7681GKDCxUbL0leRJIaRk6fDQIKgbZBA,135
|
|
10568
|
+
simo-2.5.15.dist-info/top_level.txt,sha256=GmS1hrAbpVqn9OWZh6UX82eIOdRLgYA82RG9fe8v4Rs,5
|
|
10569
|
+
simo-2.5.15.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|