A Place for User Points

3 Containers

User points management for Joomla 4.x/5.x (also 3.10.x).

Please note that this is software under development

A huge amount of work has been done to bring this software up to date, as well as make it compatible with Joomla 4/5. Development has now reached a stage where it seemed reasonable to launch it on the Joomla Extension Directory and to make a small charge for the software and its support. For the moment, the charge is a modest 14.99 USD for one year. To access UserPoints, please take out a "UserPoints Support and Upgrade" subscription.

The software is now looking pretty robust, but with extensive changes to the code, there is still a possibility of bugs. If you find a problem, please raise a ticket. Usually these are turned round quickly and a solution provided.

When forking, I first named the software Beta User Points, but some people thought this made it sound like a beta release. So I've changed to the simpler User Points.

Folder icon

Integrations with Joomdonation Products

1 folders / 4 files
Integrations for products such as Membership Pro and eShop.
Folder icon

Payage

0 folders / 7 files

Payage manages payments and payment gateways, seamlessly integrating Joomla e-commerce applications with any number of payment gateways.

Payage is a free Joomla component dedicated to the management of payments and payment gateways. Payage only deals with payments. It is not a shopping cart or a booking system. Payage is simply the best way for Joomla e‑commerce applications to integrate with payment gateways.

Folder icon

Various Integrations

0 folders / 1 files
Integrations with Joomla Extensions

Files in A Place for User Points

Order by
File icon

User Points 4.2.16

Submitted by admin on 20 Feb 2025 and has been downloaded 221 times

Descended from Alpha User points via Alta User Points, this is a Joomla 3.10.x/4.x/5.x component. It manages user points that can be earned through...

 

on 11 votes
Martin Brampton

Offline

Sorry, but we're currently offline. Please fill out the form below, and we will get back to you as soon as possible.

We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

3.95MBMemory Usage196msRequest Duration
Joomla! Version5.2.5
PHP Version8.2.28
Identityguest
Response200
Templatecassiopeia
Database
Server
mysql
Version
10.11.11-MariaDB-0+deb12u1-log
Collation
utf8mb4_unicode_ci
Conn Collation
utf8mb4_general_ci
$_GET
array:2 [ "view" => "" "id" => 123 ]
$_POST
[]
$_SESSION
array:2 [ "aliro_auth" => array:5 [ "subj_found" => & [] "permissions" => & [] "access...
$_COOKIE
[]
$_SERVER
array:54 [ "USER" => "remos" "HOME" => "/var/www/remos" "SCRIPT_NAME" => "" "REQUEST_URI" =>...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1742069151 "last" => 1742069151...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
gtag
false
  • afterLoad (73.79KB) (1.08ms)
  • afterInitialise (1.02MB) (30.49ms)
  • afterRoute (327.01KB) (16.35ms)
  • beforeRenderComponent com_remository (46.16KB) (4.77ms)
  • afterRenderComponent com_remository (1.32MB) (70.97ms)
  • afterDispatch (2.27KB) (330μs)
  • beforeRenderRawModule mod_menu (Main Menu) (238.49KB) (5.47ms)
  • afterRenderRawModule mod_menu (Main Menu) (124.33KB) (5.66ms)
  • beforeRenderRawModule mod_login (Login Form) (976B) (53μs)
  • afterRenderRawModule mod_login (Login Form) (38.06KB) (1.96ms)
  • beforeRenderRawModule mod_remositorytree (Explore Repository) (704B) (47μs)
  • afterRenderRawModule mod_remositorytree (Explore Repository) (11.53KB) (12.61ms)
  • beforeRenderRawModule mod_whatsapp_agent (WhatsApp Multi Agent) (4.79KB) (531μs)
  • afterRenderRawModule mod_whatsapp_agent (WhatsApp Multi Agent) (43.97KB) (2.62ms)
  • beforeRenderModule mod_whatsapp_agent (WhatsApp Multi Agent) (736B) (18μs)
  • Before Access::preloadComponents (all components) (12.5KB) (1.98ms)
  • After Access::preloadComponents (all components) (114.68KB) (21.19ms)
  • Before Access::getAssetRules (id:1 name:root.1) (536B) (77μs)
  • After Access::getAssetRules (id:1 name:root.1) (7.05KB) (103μs)
  • afterRenderModule mod_whatsapp_agent (WhatsApp Multi Agent) (520B) (9.77ms)
  • beforeRenderModule mod_menu (Main Menu) (12.26KB) (208μs)
  • afterRenderModule mod_menu (Main Menu) (4.19KB) (238μs)
  • beforeRenderModule mod_login (Login Form) (640B) (33μs)
  • afterRenderModule mod_login (Login Form) (6.47KB) (211μs)
  • beforeRenderModule mod_remositorytree (Explore Repository) (5.86KB) (32μs)
  • afterRenderModule mod_remositorytree (Explore Repository) (4.48KB) (144μs)
  • beforeRenderRawModule mod_breadcrumbs (Breadcrumbs) (7.02KB) (199μs)
  • afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (8.84KB) (1.11ms)
  • beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (10μs)
  • afterRenderModule mod_breadcrumbs (Breadcrumbs) (3.31KB) (166μs)
  • afterRender (86.98KB) (6.21ms)
  • 1 x afterRenderComponent com_remository (1.32MB) (36.3%)
    70.97ms
    1 x afterInitialise (1.02MB) (15.6%)
    30.49ms
    1 x After Access::preloadComponents (all components) (114.68KB) (10.84%)
    21.19ms
    1 x afterRoute (327.01KB) (8.36%)
    16.35ms
    1 x afterRenderRawModule mod_remositorytree (Explore Repository) (11.53KB) (6.45%)
    12.61ms
    1 x afterRenderModule mod_whatsapp_agent (WhatsApp Multi Agent) (520B) (5%)
    9.77ms
    1 x afterRender (86.98KB) (3.17%)
    6.21ms
    1 x afterRenderRawModule mod_menu (Main Menu) (124.33KB) (2.9%)
    5.66ms
    1 x beforeRenderRawModule mod_menu (Main Menu) (238.49KB) (2.8%)
    5.47ms
    1 x beforeRenderComponent com_remository (46.16KB) (2.44%)
    4.77ms
    1 x afterRenderRawModule mod_whatsapp_agent (WhatsApp Multi Agent) (43.97KB) (1.34%)
    2.62ms
    1 x Before Access::preloadComponents (all components) (12.5KB) (1.01%)
    1.98ms
    1 x afterRenderRawModule mod_login (Login Form) (38.06KB) (1%)
    1.96ms
    1 x afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (8.84KB) (0.57%)
    1.11ms
    1 x afterLoad (73.79KB) (0.55%)
    1.08ms
    1 x beforeRenderRawModule mod_whatsapp_agent (WhatsApp Multi Agent) (4.79KB) (0.27%)
    531μs
    1 x afterDispatch (2.27KB) (0.17%)
    330μs
    1 x afterRenderModule mod_menu (Main Menu) (4.19KB) (0.12%)
    238μs
    1 x afterRenderModule mod_login (Login Form) (6.47KB) (0.11%)
    211μs
    1 x beforeRenderModule mod_menu (Main Menu) (12.26KB) (0.11%)
    208μs
    1 x beforeRenderRawModule mod_breadcrumbs (Breadcrumbs) (7.02KB) (0.1%)
    199μs
    1 x afterRenderModule mod_breadcrumbs (Breadcrumbs) (3.31KB) (0.08%)
    166μs
    1 x afterRenderModule mod_remositorytree (Explore Repository) (4.48KB) (0.07%)
    144μs
    1 x After Access::getAssetRules (id:1 name:root.1) (7.05KB) (0.05%)
    103μs
    1 x Before Access::getAssetRules (id:1 name:root.1) (536B) (0.04%)
    77μs
    1 x beforeRenderRawModule mod_login (Login Form) (976B) (0.03%)
    53μs
    1 x beforeRenderRawModule mod_remositorytree (Explore Repository) (704B) (0.02%)
    47μs
    1 x beforeRenderModule mod_login (Login Form) (640B) (0.02%)
    33μs
    1 x beforeRenderModule mod_remositorytree (Explore Repository) (5.86KB) (0.02%)
    32μs
    1 x beforeRenderModule mod_whatsapp_agent (WhatsApp Multi Agent) (736B) (0.01%)
    18μs
    1 x beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (0.01%)
    10μs
33 statements were executed, 2 of which were duplicates, 31 unique38.4ms93.77KB
  • SELECT @@SESSION.sql_mode;173μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:308Copy
  • SELECT `data` FROM `jos_session` WHERE `session_id` = ?256μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:250Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = :session_id LIMIT 1363μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `jos_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)2.15ms944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `jos_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 11.14ms17.73KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `jos_viewlevels`331μs656B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `jos_usergroups` AS `a` LEFT JOIN `jos_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest1.2ms1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `jos_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`4.09ms4.48KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • SET sql_mode=(SELECT REPLACE(@@sql_mode,'STRICT_TRANS_TABLES',''));227μs640B/administrator/components/com_osmembership/loader.php:95Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `jos_menu` AS `m` LEFT JOIN `jos_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`1.03ms19.8KBParams/libraries/src/Menu/SiteMenu.php:166Copy
  • SHOW TABLES LIKE 'jos_downloads_repository'689μs520B/libraries/BlackSheepResearch/aliro/database/ExtendedDatabase.php:143Copy
  • SELECT `config_key`,`config_value` FROM jos_osmembership_configs470μs3.06KB/administrator/components/com_osmembership/libraries/mpf/config/config.php:42Copy
  • SELECT * FROM `jos_languages` WHERE `published` = 1 ORDER BY `ordering` ASC434μs1.59KB/libraries/src/Language/LanguageHelper.php:177Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `jos_template_styles` AS `s` LEFT JOIN `jos_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1583μs832B/administrator/components/com_templates/src/Model/StyleModel.php:775Copy
  • SELECT role, subject_id, action FROM jos_permissions WHERE subject_type = 'remosFolder' AND action IN('download','edit')1.73ms1.13KBsameCopy
  • SELECT NOW()147μs536B/components/com_userpoints/src/Problems/SQL.php:31Copy
  • SELECT UNIX_TIMESTAMP(NOW())163μs1.77KB/components/com_userpoints/src/Problems/SQL.php:74Copy
  • SELECT COUNT(`id`) FROM `jos_usergroups`340μs536B/libraries/src/Helper/UserGroupsHelper.php:207Copy
  • SELECT * FROM `jos_usergroups` ORDER BY `lft` ASC290μs976B/libraries/src/Helper/UserGroupsHelper.php:266Copy
  • SELECT count(*) FROM jos_downloads_files AS f WHERE f.containerid = 123 AND f.published=1 AND NOW() >= f.publish_from AND f.publish_to >= NOW()1.95ms536BsameCopy
  • SELECT f.*, AVG(l.value) AS vote_value, COUNT(l.value) AS vote_count, 0 AS active_feature, CASE WHEN fv.user_id IS NULL THEN 0 WHEN fv.user_id = 0 THEN 0 ELSE 1 END AS favourite FROM jos_downloads_files AS f LEFT JOIN jos_downloads_favour AS fv ON fv.file_id = f.id AND fv.user_id = 0 LEFT JOIN jos_downloads_log AS l ON l.type=3 AND l.fileid=f.id AND l.value != 0 WHERE f.containerid = 123 AND f.published=1 AND NOW() >= f.publish_from AND f.publish_to >= NOW() GROUP BY f.id ORDER BY filetitle LIMIT 0,505.66ms9.75KB/libraries/BlackSheepResearch/aliro/database/ExtendedDatabase.php:173Copy
  • SELECT NOW()4.46ms536BsameCopy
  • SELECT f.id, f.containerid, f.filetitle, f.realname FROM jos_downloads_files AS f INNER JOIN jos_downloads_files AS f2 ON f.containerid = f2.containerid WHERE f2.id = 7341.07ms944BsameCopy
  • SHOW FULL COLUMNS FROM `jos_users`791μs1.58KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • SELECT * FROM `jos_users` WHERE `id` = :userid287μs3.16KBParams/libraries/src/Table/User.php:106Copy
  • SELECT `g`.`id`,`g`.`title` FROM `jos_usergroups` AS `g` INNER JOIN `jos_user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid1.03ms1.4KBParams/libraries/src/Table/User.php:134Copy
  • SELECT avatar FROM jos_osmembership_subscribers WHERE user_id = 188 AND avatar != ''817μs536BsameCopy
  • SELECT g.title AS role, u.id AS access_id FROM jos_usergroups AS g INNER JOIN jos_user_usergroup_map AS ug ON g.id = ug.group_id INNER JOIN jos_users AS u ON u.id = ug.user_id WHERE u.id = '188'486μs624BsameCopy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `jos_modules` AS `m` LEFT JOIN `jos_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `jos_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`988μs1.89KBParams/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jos_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41,:preparedArray42,:preparedArray43,:preparedArray44)1.97ms7.81KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `jos_scheduler_tasks` AS `a` WHERE `a`.`state` = 1471μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = ?292μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:277Copy
  • UPDATE `jos_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?2.33ms3.08KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:301Copy