Topic-icon Problems with modal popup after update new version

Active Subscriptions:

None
1 year 11 months ago - 1 year 11 months ago #67992 by Jap orakel
Hi,

The two step authorisation stopped working probally after an update in the past. So when users had the 2 step enabled, the modal popup showed, but it was not possible to press the login button. For users without the authorisation the modal popup did show, and also the login button is working.  It was version 8.04. When checking element its giving an error that showed: 

Request URL:https://www.testsite.nl/modules/mod_sclogin/ajax/otpcheck.php
Status Code: 500 Internal Server Error
Referrer Policy: strict-origin-when-cross-origin

So I decided to update the SC login to the newest version. 9.0.198. I had to do it manually because the update was not showing in the update list of joomla. So, after updating, the login button is showing on the website. Unfortunately nothing happens when I click on the log in button. Only the url gets changed and #login-modal is addes after the url.
I did check element but there is no error message in the console. 

Now, I really need the login button since it is a production website. I really hope you can help me solve this issue. I need the popup to show ofcourse, and I need the 2 steps authentication to work.

the url is orakel.egocentralis.nl

Can you give me an advice how to solve this?
Last edit: 1 year 11 months ago by Jap orakel.
The topic has been locked.
Active Subscriptions:

None
1 year 11 months ago - 1 year 11 months ago #67993 by Jap orakel
Hi Again,

So, i have investigated myself a littlebit what was happening. First we had version 8.0.3 but some way some how the two step authentication stopped working. 

Then I decided to update to the newest version. 9.0.198. Then I noticed that the modal popup was not showing. But the url got changed in this: 
https://orakel.egocentralis.nl/#login-modal

By investigating with Check element I noticed a few differences with the older version. The class names were different and the code was different. After reading a lot on the forum, I noticed something about an override. So I changed the folder in my template/html to 'mod_sclogin_old' 

 

After clicking the login button, the only change was an gray overlay over the website but no popup. 

 

I noticed the elements looked different with the older version. Since in the older version it was something like : <div id="login-modal" class="sourcecoast modal fade" tabindex="-1" role="dialog" aria-hidden="true" style="display:none">' and now it is looking like: <div id="login-modal-150" tabindex="-1" class="modal hide sourcecoast in" aria-hidden="false" style="display: block;">

In this new setting, i noticed the class hide in the check element section. After removing the hide part, the modal popup became visible. Normally the color was yellow, but since i removed the override i think its because of that.

 

When the hide part is removed, the login button is working, and the modal popup is showing me the 2 steps authentication part. The dutch translation is working and the 's% is showing my username:

 

I tried everything to get rid of that .hide part in the code but i couldnt find a way how to do this. So, in an older threath in this forum, i noticed you advising someone to go back to version 8.4.7.

Thats what I also tried and luckily somethings did work again. I noticed in the check element part that the code was back to like it was 
<div id="login-modal" class="sourcecoast modal fade" tabindex="-1" role="dialog" aria-hidden="true" style="display:none">'
and the popup was showing. Also the two steps authenticator part was showing. 

 

Translated some strings and username is showing.

 

As you can see, the css of the background is back since the color is yellow. Other css is gone. So I decided to rename the mod_sclogin_old folder back to normal in my template/html directory. 

The css is back, the popup is working. However in the two step authenticate part, the translation is not working with the %s. 

   
    

So, Now I have a few questions and sorry for the long topic.

Newest version:
1) How can i get the newest verstion to work in a good way? 
2) With the newest version, how can I use the template override since the total class and id structure is changed?
3) How can i get rid off the hide class?

Version 8.4.7. if newest version is not possible:

1) How can I get the translation to be working okay, when using my template override part? Like the %s will show my name?

Other question:

1) Did you know, that after updating the plugin, the language files are overwritten to newer ones? I have them in my joomlainstall/language folder. 
2) Why is the update of this plugin not visible in the updates list of Joomla, and do I have to do it manually?

So, sorry for any bad English because I am Dutch. I tried to explain my problem as good as possible. I really hope you can help me or guide me to the best sollution.

Last but not least, i have now version 8.4.7 activated, with the malfunction in the translation because I need the login at the moment. I can change it when I know you have the time to look into this, or I have to made a testsite or something. Let me know.

Warm regards

Jap
Attachments:
Last edit: 1 year 11 months ago by Jap orakel.
The topic has been locked.
Support Specialist
1 year 11 months ago #67996 by alzander
Jap,
I'm sorry to hear you've run into some issues with the SCLogin module. Your English is just fine :)

I just went to your page and see the modal popup looks to be working correctly. From your message, I believe you reverted to v8 of the module.

Whenever we make a major release (v8 to v9, v9 to v10), that implies there are some big changes in the release and not all of them are backward-compatible. For v9, we updated the code to support Joomla 4 and a wider range of Bootstrap templates. That caused changes to the class names and other elements in our template files.

Whenever upgrading a major release, you need to verify your template overrides will still work. In many cases, this means starting with the template file in the SCLogin module and re-applying any changes you need. Your old template override may not 'as is' due to changes in the new release. Please copy the file from /modules/mod_sclogin/tmpl/ to your override directory, verify that functionality works properly *before* editing, and then slowly make whatever changes you need to integrate with your site.

For the 'hide' class, that's likely due to the version of JQuery being loaded on your page. I'd make sure to use the "Include jQuery/Bootstrap" setting in the module, which should improve compatibility. There are many possible conflicts that could cause the 'hide' class to not toggle properly, but we'd need to see the module live on the site to determine the cause.

The 500 error for 2 factor authentication is caused by restrictions on loading files directly instead of going through Joomla. In v8, a call was made to modules/mod_sclogin/ajax/otpcheck.php. However, security tools or access restrictions within .htaccess files can prevent that file from being accessed directly.

In v9, we use Joomla to perform the same check, which avoids many server/firewall/security restrictions that may have caused issues.

1) Did you know, that after updating the plugin, the language files are overwritten to newer ones? I have them in my joomlainstall/language folder.

The language files are overwritten when you upgrade. I'd recommend using the Extensions -> Languages -> Overrides feature in Joomla to create permanent overrides which will not be overwritten when you upgrade.

2) Why is the update of this plugin not visible in the updates list of Joomla, and do I have to do it manually?

I'm unsure of this. Please try the "Refresh Cache" option to see if that works. If not, we can investigate further.

Thank you,
Alex

The topic has been locked.