Coder Social home page Coder Social logo

joubertredrat / matomo-protecttrackid Goto Github PK

View Code? Open in Web Editor NEW
20.0 0.0 7.0 1012 KB

A Matomo plugin that protect track ID

Home Page: https://plugins.matomo.org/ProtectTrackID

License: MIT License

PHP 100.00%
matomo matomo-plugin hash piwik-plugin matomo-ui matomo-web-analytics matomo-tracking plugin

matomo-protecttrackid's Introduction

Hi guys, welcome!

package about

name := "Joubert RedRat"
role := "Software Engineer"
otherskills := "DevOps, Cosplayer, Speaker, Open source evangelist"

fmt.sprintf("I'm %s, a %s and %s.", name, role, otherskills)
// I'm Joubert RedRat, a Software Engineer and DevOps, Cosplayer, Speaker, Open source evangelist.

I'm eternal trainee of life that works over 10 years ago in technology area, with focus in engineering and architecture of software and with specialization in financial systems and DevOps, moreover speaker around the world, always receiving and sharing the knowledge with wisdom.

Today I’m heavy user of PHP and Golang, but, I’m open to all technologies, because is as I speak, “Senior IT professionals solves the problems using technology”.

More information about me in my site, https://redrat.com.br/.

Main tech stack

My Skills

Other techs with experience

My Skills

matomo-protecttrackid's People

Contributors

joubertredrat avatar kzeni avatar weblate avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

matomo-protecttrackid's Issues

Typed properties and nullable properties not supported on the Matomo-supported PHP version

According to the docs https://matomo.org/faq/on-premise/matomo-requirements/ Matomo 4.x supports PHP version 7.2.5 or greater, but ProtectTrackerID version 2.3.0 contains some code not compatible with this PHP version at

https://github.com/joubertredrat/Matomo-ProtectTrackID/blob/master/PluginSettings.php#L29

URL:
/index.php?module=CoreAdminHome&action=generalSettings&idSite=1&period=day&date=yesterday

Log message:
PHP Parse error: syntax error, unexpected '?', expecting function (T_FUNCTION) or const (T_CONST) in /home1l/urchin/www/plugins/ProtectTrackID/PluginSettings.php on line 29

This causes the app to die, so a fix would be much appreciated! We can't upgrade PHP bc our enterprise is dependent on RedHat Software Collections' PHP, which is sticking to old PHP.

Typed properties and nullable properties were not introduced until PHP 7.4 (ref https://php.watch/versions/7.4/typed-properties).

Not displaying the tracking code

With version 3.2.0 tracking code area is empty same as tracking image.
Installed via downloading and activating via UI enabling.
Also there are too poorly described back-end. I'm not aware if there should be new site column or new table with foreign keys.

see: https://i.imgur.com/HWNkobp.jpg

check if salt and lenght is defined

Hi,

Salt and length is necessary for ProtectTrackID works, but user can enable plugin and not define this values, then, in this case, plugin can't hash idSite.

Protect ID Bug

Bug report received from e-mail.

Hi,

I'm at PHP version 8.0.9 and your latest version of Protect Track ID gives an error when Matomo build the reports, it puts this in matomo-archive.log en exits

Uncaught exception in /home/httpd/html/dmp.imcreatives.com/public_html/matomo/plugins/ProtectTrackID/ProtectTrackID.php line 101:
syntax error, unexpected ')'

I have no idea what to do, I can't downgrade as Matomo requires this new version of your plugin

Thanks,

Marcel

Site domain instead hash

Hi!
Is it possible to add into the plugin ability to use site domain instead of a hash?
Ready to fund this feature:)

vendor/hashids v1.0 does not support php8

Bundled version of hashids (v1.0) thrown an error when using php8
[02-Dec-2021 02:34:24 UTC] PHP Deprecated: Implicit conversion from float 21.5 to int loses precision in /var/www/matomo/plugins/ProtectTrackID/vendor/hashids/hashids/lib/Hashids/Hashids.php on line 225

Latest version of hashids already support php8

Disable Int siteid Matomo

Hi,

I've been using this plugin for user tracking. using hash works for me well, but i want only the hash to work not the int siteid.

presently both work. Is there anyway by which i can configure only the trackid provided by your plugin is accepted?

Piwik 3.0.1 compatibility

Here is the message I get
Thanks for your help

The following plugins are not compatible with Piwik 3.0.1 and could not be loaded: ProtectTrackID

Lenght should be Length

The word is spelled wrong consistently. I'm worried a future update could break this. So fixing it sooner rather than later would be great!

BC Math/GMP not compatible with Matomo 4.x requirements

ProtectTrackID 2.5.0 on PHP 7.3.x throws this error on our server:

Uncaught exception in API: plugins/ProtectTrackID/vendor/hashids/hashids/src/Hashids.php(408): Missing BC Math or GMP extension. [Query: ?module=CoreHome&action=index&idSite=2&period=day&date=yesterday, CLI mode: 0]

access: "GET /index.php?module=CoreHome&action=index&idSite=2&period=day&date=yesterday HTTP/1.1" 500 1671 "-"

Matomo 4.14.1
PHP 7.3.20

The BC Math or GMP extensions are not part of the PHP extension requirements at
https://matomo.org/faq/on-premise/matomo-requirements/

I suggest you
EITHER
Re-jig this plugin code to remove the dependency on these extensions
OR

  • Improve the documentation for this module to make the PHP extension requirements clear and obvious
  • Add a check for these extensions on install and execution and fail gracefully so it does not throw a 500 HTTP error

New contributors or organization for this project

Hi guys,

Thanks for use this plugin, I'm glad that you like it.

Since some years I'm very busy with my job and other things in my life, then isn't good that I continue as only manager for this project, I can help as I can, but is good to have others to manage this project too.

With this in mind, we have 2 solutions for this, I add other contributors with permission for manage project with me or create organization and transfer this project for that.

What you think guys? Let's discuss

Matomo 5 compatibility

Dear Matomo Plugin Author,
We are excited that Matomo 5.0.0 is on the horizon, and we would greatly appreciate your assistance in ensuring that your plugin remains compatible with this upcoming release. Maintaining compatibility will enable Matomo users to seamlessly use your plugin after they upgrade to Matomo 5. (If the plugin is not updated to be compatible with Matomo 5, then whenever a user will upgrade to Matomo 5, the plugin would be automatically disabled to prevent issues.)

Updating your plugin to be Matomo 5 compatible is a straightforward process and should not require a significant time investment. You can find more information about updating your plugin at: https://developer.matomo.org/guides/migrate-matomo-4-to-5

Thank you for your ongoing support and commitment to the Matomo community.
Your contribution is really appreciated!

The Matomo Team

PS: we’re also available to help if you have any question about making the plugin compatible.

I took the liberty of forking this project and making the necessary changes. If you create a 5.x-dev branch, merge my changes into that branch, and create a new release, you should be good to go.

Translations using Weblate

Hello,

Lukas from Matomo team here. We are currently in the process of moving our translations from Transifex to Weblate (matomo-org/matomo#17907).
As Weblate makes it easier to add a git repository as a component and merge back updated translations via pull requests, I thought it would be great if more plugins in Matomo were available in the users languages if someone is interested in translating them.

If you are interested in adding your plugin, simply comment here, and I'll help you with the setup.

Piwik break when no hit yet

If you activate this plugin and there is yet no hit in the database, and try to login with non-global-admin login, the piwik breaks and throws
An error occurred
You cannot read value of baseSetting setting of "ProtectTrackID" plugin
(or slightly different, i got it in my language).
It is not critical as it is very unlikely situation

protect Widgets integrations

Would be cool if this also provides protection on the widget embedded code
Platform => Widgets
https://github.com/joubertredrat/Piwik-ProtectTrackID

<iframe src="http://www.xxxxx.com/piwik/index.php?module=Widgetize&action=iframe&moduleToWidgetize=Dashboard&actionToWidgetize=index&idSite=XXXXXXXXXXXXXXXXX&period=week&date=yesterday" frameborder="0" marginheight="0" marginwidth="0" width="100%" height="100%"></iframe>

fatal type error in Hasher

PHP Fatal error: Uncaught TypeError: Piwik\Plugins\ProtectTrackID\Hasher::decode(): Return value must be of type int, null returned in /plugins/ProtectTrackID/Hasher.php:44

Accidental drop of PHP7.4 support due to ramsey/uuid update

Hey there,

your latest released dropped support for PHP7.4 by defining PHP8 a requirement in your composer.json.
Yes PHP7.4 is EOL but as Matomo still supports it you cannot assume there are no more PHP7 installations out in the wild.

Updating your plugin to 2.1 on PHP7.4 would break the Matomo installation and prevents tracking at all.

Please roll back this requirement and only introduce breaking changes like this in a major version update (2.0 => 3.0).

Thank you very much.

Broken with Matomo 4.x

The plugin is no longer available to activate on Matomo 4, but even editing the plugin.json to have require => piwik set to >=4.0.0-b1,<5.0.0-b1 (making the plugin able to be activated on Matomo 4.x) still has the normal numeric IDs being used for tracking.

As such, any property using this plugin previously no longer resolves properly and data isn't being recorded properly.

I had this being used for numerous sites so it's important to have this working as it did previously to avoid needing to update the tracking code for all of the sites to go back to unprotected site IDs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.