I'm currently in the process of testing the various permissions, and I discovered one logic issue that I feel like I should talk about.
As you may or may not remember from the video, there's currently three tiers of permissions; global (usergroup / user), per-category and per-product. Only certain permissions can be overridden per-product:
- View products
- View product images
- Purchase products
- Download products
- Like products
- Review products
What I wanted to do was set up a permissions hierarchy where permissions could "trickle down" from global to category to product. Sadly, that has proved to be impossible with my current knowledge of XF2 content permissions.
The way content permission checking works is; if there is no per-content permission setting, it inherits from the global scope. There is no functionality for inheriting from another content permission first, which in turn inherits from the global scope.
Therefore, for the permissions listed above, there will be a small logical inconsistency in certain scenarios. For instance, if "view products" is no
(category) and inherit
(product), when viewing products the resulting permission will be no
, even though you may expect it to be "yes".
When viewing the category, the resulting permission will be yes
although it will not be possible to view any products unless they are also set to "yes".
This shouldn't affect the majority of potential users of this mod, but I know there's some power users watching this thread
Beyond that, I've also experimented a little with a design update for the product info page:
You might immediately ask yourself "why is the pricing info not underneath the short description like in other stores", and my answer would be stop asking so many questions I'm trying to finish this mod!
No but seriously though; I wasn't able to figure out the CSS for it, bearing in mind I have to account for mobile browsers as well. I can't go too fancy, after all
Lastly, the overlay showing the change log has gotten an action bar with some new features:
When opening the change log overlay via the "Your Licenses" page (or via the product info page with a valid license key parameter), the link to downloading this update is shown. If the product has a demo version and no license key parameter is found, the link lets you download the "lite" / demo version.
That's everything I have for you right now, now back to testing... yay... so much fun... send help