I'm using the method "UsersManager.getUserPreference" via API to request a user's "defaultReport" preference. Depending on this I'll either display the "All Websites Dashboard" or the selected Website when a user opens the mobile app. Same behavior as in Piwik.
After a fresh Piwik installation the API returns:
but should be:
Because Piwik behavior is to open first website after a fresh install and the value "Dashboard for a specific website -> FIRST WEBSITE" is selected by default in "User settings". Once I press "save" in "User settings" the API returns the correct value:
Is it possible to return the ID of the first website by default? Otherwise I'd have to implement a lot of stuff to workaround this and I'd have to do a lot of requests to make sure a website will be loaded.
API should always return either 'MultiSites' or an ID of a website.
In 0e35cd6d9e667fcf9b79ca9437c93f83f9d176d2: Fixes #3781, make sure getUserPreference returns valid default value when option is not set in the DB.
In 95dc8d9834bf72d1838e0e6143fb67b51fe0e295: Refs #3781, fixing build.
In 5879fbd3746e142f36351d5392b584c6f5ac8fdb: Refs #3781, fixing build, revert last change and add getSuperUserLogin to Piwik_Access (so FakeAccess can mock it). Modified PDFReports to use Piwik::getSuperUserLogin instead of accessing config directly.
In 24c2aa796cfd7101926be5de5d6d7dafcb9e4145: Refs #3781, revert change to unrelated integration test.
Is this really fixed? I just did a fresh install of Piwik and I'm still getting the response:
At least when using the Superuser. We also had such an issue in the current Piwik Mobile 2 beta test.
In 99a5f06b249c5f1f033af093ee497c7fafeaadfa: refs #3781 fix superuser default preference is not returned by default, probably also fixes some login issues in Piwik Mobile as it is requesting the getSitesIdWithAtLeastViewAccess to verify whether someone has access to at least one website
In 43fd0f06a7f2e4149db805b990c55e119e88ba83: refs #3781 fix test, defaultReport cannot return the website in case there is no website