Skip to content

Commit 1e61146

Browse files
author
Neil Brandt
committed
Merge pull request #69 from shotgunsoftware/25648-adjust-update-project-last-accessed-by-current-user
For #25648 pull out work now done server-side
2 parents 8252cc9 + 8d6dd37 commit 1e61146

File tree

2 files changed

+11
-18
lines changed

2 files changed

+11
-18
lines changed

shotgun_api3/shotgun.py

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1446,31 +1446,24 @@ def update_project_last_accessed(self, project, user=None):
14461446
:param user - A human user entity hash. Optional if either login or sudo_as are used.
14471447
14481448
"""
1449-
if self.server_caps.version and self.server_caps.version < (5, 3, 17):
1450-
raise ShotgunError("update_project_last_accessed requires server version 5.3.17 or "\
1449+
if self.server_caps.version and self.server_caps.version < (5, 3, 20):
1450+
raise ShotgunError("update_project_last_accessed requires server version 5.3.20 or "\
14511451
"higher, server is %s" % (self.server_caps.version,))
14521452

1453-
# Find a page from the project
1454-
page = self.find_one('Page', [['project','is',project], ['ui_category','is','project_overview']])
1455-
if not page:
1456-
# There should be a project overview page page for a live project, but if there is not,
1457-
# another page from the project will work.
1458-
page = self.find_one('Page', [['project','is',project]])
1459-
1460-
if not page:
1461-
raise RuntimeError("Unable to find page for project %s" % str(project))
1462-
14631453
if not user:
14641454
# Try to use sudo as user if present
14651455
if self.config.sudo_as_login:
14661456
user = self.find_one('HumanUser', [['login', 'is', self.config.sudo_as_login]])
14671457
# Try to use login if present
14681458
if self.config.user_login:
14691459
user = self.find_one('HumanUser', [['login', 'is', self.config.user_login]])
1470-
if not user:
1471-
raise RuntimeError("No user supplied and unable to determine user from login or sudo_as")
14721460

1473-
self.create( 'PageHit', { 'page': page, 'user': user } )
1461+
params = { "project_id": project['id'], }
1462+
if user:
1463+
params['user_id'] = user['id']
1464+
1465+
record = self._call_rpc("update_project_last_accessed_by_current_user", params)
1466+
result = self._parse_records(record)[0]
14741467

14751468

14761469
def _get_session_token(self):

tests/test_api.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1562,7 +1562,7 @@ def test_humanuser_upload_thumbnail_for_version(self):
15621562
class TestProjectLastAccessedByCurrentUser(base.LiveTestBase):
15631563
# Ticket #24681
15641564
def test_logged_in_user(self):
1565-
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 17):
1565+
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 20):
15661566
return
15671567

15681568
sg = shotgun_api3.Shotgun(self.config.server_url,
@@ -1582,7 +1582,7 @@ def test_logged_in_user(self):
15821582

15831583

15841584
def test_pass_in_user(self):
1585-
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 17):
1585+
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 20):
15861586
return
15871587

15881588
sg = shotgun_api3.Shotgun( self.config.server_url,
@@ -1603,7 +1603,7 @@ def test_pass_in_user(self):
16031603
assert(initial['last_accessed_by_current_user'] < current['last_accessed_by_current_user'])
16041604

16051605
def test_sudo_as_user(self):
1606-
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 17):
1606+
if self.sg.server_caps.version and self.sg.server_caps.version < (5, 3, 20):
16071607
return
16081608

16091609
sg = shotgun_api3.Shotgun( self.config.server_url,

0 commit comments

Comments
 (0)