Fork me on GitHub



Make donations with PayPal!
Goal: $100.00
Due Date: Oct 31
Gross Amount: $25.00
Net Balance: $23.72
Left to go: $76.28

kakos  ($25)Oct-25

GitHub Twitter

Learn XOOPS Core

Local Support


XOOPS Code hosted on SourceForge

Cumulus Tag Cloud

- 2 2.5 2.6 4 6 admin adslight Android AntiHarvesting AntiSpam API Apple Battlefield billige Blocks Bootstrap Captcha cell cent chronolabs Clicks Cloud content CĂN demo download Dresses facebook Fat floor Gateway giải Google Guide herre Home Honeypot html5 Human HỘ IP iPhone jQuery Language Law Legal List Loss module modules Monster new newbb news nhiệt NHÀ online PARK Payment phone PHP Prevention profile project Protector publisher RESIDENCE responsive review Rights Room security Sentry Signatures Signed site Smartphone Smarty Smoking Solution Spam stem Studio support tag tdmcreate The Theme themes tháp User userlog weight xoops Xortify XPayment ZendFramework

New Users

Registering user

# 139447


Welcome to XOOPS!


News archives

Userlog 1.01 Final released

Posted by irmtfan on 2013/4/26 0:04:50 (6321 reads) | Posted on Modules
We are happy to announce the first final version of userlog module Userlog 1.01 Final in less that 2 months of its first Alpha release.


Userlog is a node logger which can log your user/visitor activities in your site from a preferred node.
This is a very useful tool for webmasters in busy sites. For example, you can log your other Admins navigation.

- Log user activities and navigations.
1- The possibility to list all the IPs used from a certain user, and conversely to list all the users logged from a defined IP to find duplicate users.
2- Find deleted items from your database.
3- Find admin user activities(webmasters, moderators, ...)
4- Find users who come to your site from Google.

- Can log users by getting User ID, User group or visitor IP.
- Logs can be stored in file, database or both.
- Any below user information and/or page data can be selected to be logged.

User ID,Username,Is Admin?(y/n),Groups,User Last Visit,User IP,User agent,URL (Request URI),Script name,Referer URI,Page title,Is Page admin?(y/n),Module dirname,Module name,Item name,Item ID,Request method (GET, POST, ...),$_GET,$_POST,$_REQUEST,$_FILES,$_ENV,$_SESSION,$_COOKIE,Headers list,Logger

- Any active module in your installation can be selected and userlog will log users activities only in those modules.
- You can navigate/delete/purge/export to CSV user logs in admin/logs.
- You can render logs from database or file source engine in admin/logs.php.
- To search for logs based on a criteria you have an advance form in admin/logs.php
- You can see/delete/rename/copy/merge/compress(zip)/export to CSV log files in admin/file.php.
- You can see total module views, total user views, total group views in admin/stats.php
- you have an advance form to see any item views using some criteria like what is the module/link/log time/viewer uid/viewer group id of the item in admin/stats.php
- by activating the views block you can set a most viewed items in a module or in the whole website in a specific period of time. e.g.: today most viewed (hot) news
- You can set the module as Active or Idle in preferences.
- If you need to store logs in a file, you can set the working path, working file size, working file name, ... in preferences.
- If you need to store logs in database, you can set the maximum logs thresholds (maximum number of logs and maximum time that logs are stored in the database) in preferences.
- Can be used as a backup/restore tool.
- Used JSON format to store arrays to database for better performance (instead of xoops core serialize).

Minimum Requirements:
XOOPS 2.5.5
PHP 5.3
MySQL 5.0

To Install
1- upload the userlog to /modules/userlog (upload the compressed file and decompressed via Cpanel is the best way to insure all files are correctly uploaded)
2- go to your admin -> system -> modules -> install
3- change the default settings to your desired in the module preferences.

Important notice: There is a new "ADDITIONAL permission in file for webmasters" addon introduced in userlog module.
if you want other webmasters dont have access to userlog module this addon is for you.
for more information go to userlog/admin/addon/perm.php
If you dont need this addon you just need to remove addon/perm.php

report bugs and request features.

1.01 release (Final version): ... les/userlog/releases/1.01

Final version 1.01: XOOPS File Repository


The development continues in the new Alpha version, that you can download from the SVN Trunk:

There are some features added to the recent version (1.12 ALPHA1) which you can test and see: (warning: ALPHA versions are just for your test)

changelog from 1.01 Final to 1.12 ALPHA1:

- improve: check if all values are empty and do not log if all values are empty in class/setting.php and include/log.php (2013/04/26)
- change version to 1.12 ALPHA 1 (2013/04/24)
- add language and config for elapsed times in xoops_version.php and language/english/admin.php and admin/stats.php and blocks/login_reg_history.php(2013/04/24)
- add stats_type block (referral, browser, OS) (2013/04/24)

- change version to 1.11 ALPHA 1 (2013/04/24)
- add languages for failed and successful in language/english/admin.php and admin/stats.php (2013/04/24)
- add: login / register history block in xoops_version.php and blocks/login_reg_history.php and templates/blocks/userlog_login_reg_history.html (2013/04/24)

- improve performance: patch login/register $_POST before store to database in class/userlog.php and class/setting.php and class/log.php and admin/stats.php and class/patch/patch_login_history.php (2013/04/24)
- add: login / register history in admin/stats.php(2013/04/23)
- improve performance: only get needed stats from getAll($type) function in class/stats.php and admin/stats.php and admin/index.php (2013/04/23)
- improve performance: dont need to getAll($type) before update($type) (2013/04/23)
- add: add browser and OS to stats table to show browsers and Operating system in class/stats.php and class/log.php and admin/stats.php(2013/04/23)
- change version to 1.1 ALPHA 1 (2013/04/21)
- fix: prevent to select if no module with item is installed in blocks/views.php and templates/js/userlog.js (2013/04/21)
- add: check $_POST before load log module in preloads/core.php and xoops_version.php and include/postlog.php and language/english/modinfo.php and class/userlog.php(2013/04/21)
- add: show time update in admin/index.php and admin/stats.php (2013/04/22)
- add: add referral to stats table to show outside referer websites in class/stats.php and admin/stats.php(2013/04/22)
- improve: update referral in stats table when the log contain it (2013/04/22)

Printer friendly page Send this story to a friend Create a PDF from the article
Bookmark Me
Bookmark to Google Plus
The comments are owned by the author. We aren't responsible for their content.

Great job, Irtmfan! This is one of the most advanced new XOOPS modules in a long time!

Published: 2013/4/26 0:21 • Updated: 2013/4/26 0:21
a must have module for all xoopsers

congrats imrtfan
Published: 2013/4/26 0:53 • Updated: 2013/4/26 0:53
Just to let you know, the version in xoops_version.php wasn't changed to reflect the FINAL version.
Published: 2013/4/26 9:59 • Updated: 2013/4/26 9:59
Transifex: Userlog 1.01 Final
Published: 2013/4/26 16:10 • Updated: 2013/4/26 16:10
Thank you for your feedback.
really the main cause of not having important bugs in writing this module was using the core API in any possible section.
where ever i had to use my codes (because of core bugs or limits) I had more troubles in fixing or make it work in future versions.

@ chefry: the version is Final in release 1.01 svn and download. in trunk it is 1.12 ALPHA 1

yesterday i just submited this news in hurry. thank you for your modifications.
I think we should add these lines in red:

This module is not for newbies. you can easily down/damage/make vulnerable your website by setting bad configurations.
- If you store logs in a file inside wwwroot and for example set to log all $_POST data (include very important data like user and passwords) and did not set a .htaccess or some other restrictions methods, everybody can read them.
- If you dont set ADDITIONAL permissions in file for other webmasters, they can access to any log and can read (and they can add a setting to be able to log and read) any data (include very important data like user and passwords) of you or any other user.


a must have module for all xoopsers

but in a live website they need to be sure about what important data this module will log and where as i mentioned above.


I add a todo list contain some of the wishes i have for this module. ... unk/userlog/docs/todo.txt
an y wish may be added based on our times and skills. Also we should make sure that we really need those features
Published: 2013/4/26 22:22 • Updated: 2013/4/26 22:29
really the main cause of not having important bugs in writing this module was using the core API in any possible section.

This is exactly the reason why we need to standardize our modules and re-use tested and proven solution and code

I hope, you'll be able to summarize your experiences in some kind of a tutorial, so we could incorporate it into our Module Standardization efforts
Published: 2013/4/27 5:29 • Updated: 2013/4/27 5:30