Re: new 2.0 release

I just installed Madfish's News module to test based on this thread and found another spot in the core to adjust. I've committed the fix and it's in my pull request.

Topic | Forum


Re: new 2.0 release

There are quite a few more occurrences of $icmsModule throughout the core. In some cases, it is also being assigned, so it is a  valid use. Rather than go though all 240 instances, I'm focusing on the results I get with some key functions and modules.

As of this point, I have tested these modules with the upcoming New 2.0 release

  • imBlogging - minor updates necessary. Already committed to my repo
  • imTagging - minor updates necessary. Already committed to my repo
  • Content - working, once core data types handing was addressed
  • iForum - not working. Needs a bit of an overhaul to deal with $icmsModule changes
  • Profile - not working. Needs a bit of an overhaul to deal with $icmsModule changes
  • Simplywiki - 2.0.0 RC does work (I just need to finish up the release - it's been out for a long time)

Most of what remains is going to have to be done in the modules.

PHPMailer is going to need an update, which I've got staged locally and doing  a basic test before committing. I'll put that in another PR.

Here is the main pull request - https://github.com/ImpressCMS/impresscms/pull/1430 - and my working branch - https://github.com/skenow/impresscms/tree/1.5.x-PHP7-strict

 

Topic | Forum


Re: Core rating feature?

Well, something to add to another release - finish this feature. For now, I'm not going to worry if it works in the new release, as it has nothing. Maybe we should add something to the page that it is under development and provide a landing page for feature discussion and development.

BTW - the Preview function does not work here. The page reloads, the editor area is empty, and there is no preview.



Re: Core rating feature?

That is correct, it never got finished and as a result has never been used. I proposed a few years ago to remove it from the core until we had a working solution, but I got some resistance to that idea.

The description from Tom is more or less what I would expect it to do in its basic form : you have a calculated value that is updated each time someone votes, and that value is the one that is retrieved at display time. Each user should have a list in his user profile with all the votes that he cast. Perhaps it would be a useful feature to let admins determine if votes can be changed once cast, or even removed. A rating type would be interesting to have : for example when rating a module, you can define that there are multiple ratings that you want to capture : ease of installation, feature set, compatibility with existing modules, ... That means that you need to be able to link the vote to an object, and also define for this type of object which categories of votes can be cast.

A good place to integrate this would be the downloads module (which has other issues), there the voting



Re: Core rating feature?

Going through the upcoming release and making sure everything still works - it looks like we never finished this. The wiki page has moved - it's now at https://www.impresscms.org/modules/simplywiki/index.php?page=Ratings

If anyone has an example of this and how it was intended to be used, that would be great! It came from SmartObject



Re: new 2.0 release

the removal of the $icmsModule variable was part of the cleanups that were marked as 'to remove in 1.4' I remember. The fix for the modules should be to use icms::$module if I'm not mistaken.



Re: new 2.0 release

The global variable that was coming up empty was $impresscms (and sometime $icmsModule). I'm not sure where the disconnect occurred. It may have been assigned an old variable somewhere. Better to figure it out now.



Re: new 2.0 release

It is true that I did some major cleaning up of supposedly no-longer used attributes and functions in the core. Normally tests should have shown regressions, but no manual test is faultless I'm afraid.

The missing global is strange, I didn't change anything concerning that, as far as I know the content module did work during my latest tests.



Re: new 2.0 release

Found the sorting issue - a global was no longer available and needed to be replaced with icms:: static object. Discovered it as I was testing with the Content module - the admin page for it would not load after installing.



Re: new 2.0 release

Some additional findings that are not add-in library specific: sorting tables by clicking on the header link in a column is not working for custom tags, ratings, symlinks (pages), block positions, blocks, mimetypes, autotasks, and userranks. I verified these are working in 1.4.4. Trying to track it down now. I'm suspecting something with the IPF table class or filtering in the admin panel. What's missing in all of the links is "fct=" and the object name.



Re: new 2.0 release

Currently working through some of the PHP7+ errors and requirements and removing some things that aren't used, at least in a new install (msyql support during install, for example). I've been testing with PHP7.0 to start with.

Just navigating through the administration panel, the version checker does not work on PHP7.0. The version of SimplePie (1.8) now in this release requires PHP7.2. SimplePie 1.7 will run on PHP7.0 and will also run on PHP8





Re: Moving on from Google Universal Analytics

That's certainly a viable solution. I'll take care of that this evening.



Re: Moving on from Google Universal Analytics

I was thinking along the lines of using the existing UA field and having it do some double duty. Do nothing and we assume, based on the format of the tag, that it's for UA. If you have switched to GA4, include the G- at the beginning of the tag and we'll load the proper snippet.

Using the preloads is a good idea - I think we should go that route for this round. The next phase will be to find a better way to insert and manage them from the control panel.



Re: Moving on from Google Universal Analytics

Short term : can't we simply add an extra field to the ACP where users can put their GA4 number? That would allow both Universal Analytics and GA4 to coexist for the time being.

The idea of custom tags it not bad, but configuration of these features should always be kept limited to the ACP, so even if you define a custom tag to include GA4 or Fathom or any other service, we will need to figure out a way to define these identifiers freely in the ACP as well.



Re: Moving on from Google Universal Analytics

I was thinking - Custom Tags already provides a lot of the flexibility to add other snippets anywhere. What it still requires is a way to insert your tag without having to manually edit a template, if you want something to be in the header of your pages. If it can go in the body, you're set.



Re: Moving on from Google Universal Analytics

I think turning this into module would be a great idea.

Yes, many use Google but not everyone. Sometimes other analytics tools are better.



Re: Moving on from Google Universal Analytics

As I mentioned in another thread, this is something we need to address sooner rather than later. This is a bit tricky for us, because we have no way of determining if a site has gone through the migration from UA to GA4. All we store is the site code and if it is enabled, we pass the code to the core and it inserts the javascript on every page.

This could turn into a whole lot of different scenarios and options to handle through the core admin UI. Or, we can add documentation on how to add preloads that each admin would need to customize before deploying on their sites. Even now, I think of a preload generator that would allow an admin to paste in the code snippet from the other provider, select where it loads, and be able to manage it that way. That's for a later release.

For immediate consideration is what do we put into the new 2.0 release? My first reaction is to keep it simple - provide a GA4 preload template that admins can customize with their tag and include on their sites. The UA portion would remain and not interact with the GA4 plugin. Admins would need to determine the impact of having both active on a site. We deprecate the UA code with this release and move towards a more easily customized solution, removing the UA portions in a later release this year.



Moving on from Google Universal Analytics

Universal Analytics will be deactivated in a few months. If your site uses it, you will have received already quite a few reminders about moving to Google Analytics 4. But keep in mind that the data cannot be transferred.

Sunsetting a product is always a risk to retain users, as at that moment you force them to think about their needs, and perhaps they arrive at the conclusion that their needs are better met elsewhere.

ImpressCMS has been solely supporting UA in the past (we even come from the predecessor, but that's a long time ago). Perhaps in the future we should look into opening up this interface and making it possible to easily add new analytics products, and to have multiple analytics options simultaneously active.

I've played with a first version of a GA4 preload and it works more or less how it should : activating the plugin adds the GA4 javascript on the right location in the page. Future improvements will be:

  • make it possible to have multiple Analytics products active simultaneously on your page
  • Make it possible to customize the functionality with preload-specific configuration items

But for now, let's make it so that users are supported in migration from UA to GA4



Re: new 2.0 release

I agree with the Google UA towards Google Analytics 4 migration need. In the current stage, we can easily work with preloads. The issue should be discussed further though.