Weird checkout display - navigation drops to bottom, checkout to top

  • Posts: 332
  • Thank you received: 6
5 years 5 months ago #307437

-- url of the page with the problem -- : divorcetoolbox.com/program-products
-- HikaShop version -- : 4.1.0
-- Joomla version -- : 3.9.6
-- PHP version -- : 7.3.6
-- Browser(s) name and version -- : Chrome / Edge / FireFox - all updated
-- Error-message(debug-mod must be tuned on) -- : Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; plgHikashopAddBcc_status_email has a deprecated constructor in /home/divotlbx/public_html/plugins/hikashop/addBcc_status_email/addBcc_status_email.php on line 12

I don't think the error displayed is pertinent.

For some reason and out of the blue, when an item is added 'before login', the checkout page is messed up with the checkout going to the top of the page and the rest of the page. As you can see in the code below, the HikaShop ID "hikashop_checkout_login_left_part" section now has the header and body content (less the Hikashop code), embedded inside that "hikashop_checkout_login_left_part" DIV. Honestly, this blew me away as to how this could happen.

If you can give me some guidance on what has caused this, I desperately need to get this site working as it is live!!!



In the developer tools, it has this code:
<div id="hikashop_checkout_login_left_part" class="hikashop_checkout_login_left_part span4">
			<fieldset class="input">
				<h2>Login</h2>
				

        
    
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        

        
            
    <meta charset="utf-8">
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <title>0 Cannot pass parameter 3 by reference</title>
    <link rel="stylesheet" href="/templates/g5_hydrogen/custom/uikit/css/uikit.min.css" type="text/css">
    <link rel="stylesheet" href="/media/gantry5/assets/css/font-awesome.min.css" type="text/css">
    <link rel="stylesheet" href="/media/gantry5/engines/nucleus/css-compiled/nucleus.css" type="text/css">
    <link rel="stylesheet" href="/templates/g5_hydrogen/custom/css-compiled/hydrogen__error.css" type="text/css">
    <link rel="stylesheet" href="/templates/g5_hydrogen/custom/css-compiled/hydrogen-joomla__error.css" type="text/css">
    <link rel="stylesheet" href="/templates/g5_hydrogen/custom/css-compiled/custom__error.css" type="text/css">
    <script async="" src="//www.google-analytics.com/analytics.js"></script><script type="text/javascript" src="/media/jui/js/jquery.min.js"></script>
    <script type="text/javascript" src="/media/jui/js/jquery-noconflict.js"></script>
    <script type="text/javascript" src="/media/jui/js/jquery-migrate.min.js"></script>
    <script type="text/javascript" src="/templates/g5_hydrogen/custom/uikit/js/uikit.min.js"></script>
    <script type="text/javascript">    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','//www.google-analytics.com/analytics.js','ga');    ga('create', 'UA-92975095-1', 'auto');
            ga('send', 'pageview');
    </script>
    <!--[if (gte IE 8)&(lte IE 9)]>
        <script type="text/javascript" src="/media/gantry5/assets/js/html5shiv-printshiv.min.js"></script>
        <link rel="stylesheet" href="/media/gantry5/engines/nucleus/css/nucleus-ie9.css" type="text/css"/>
        <script type="text/javascript" src="/media/gantry5/assets/js/matchmedia.polyfill.js"></script>
        <![endif]-->
                        


    
        
                    

        <div id="g-offcanvas" data-g-offcanvas-swipe="1" data-g-offcanvas-css3="1" style="">
                        <div class="g-grid">                        

        <div class="g-block hidden size-100">
             <div id="mobile-menu-2319-particle" class="g-content g-particle">            <div id="g-mobilemenu-container" data-g-menu-breakpoint="48rem"></div>
            </div>
        </div>
            </div>
    </div>
        <div id="g-page-surround"><div class="g-menu-overlay"></div>
            <div class="g-offcanvas-hide g-offcanvas-toggle" data-offcanvas-toggle="" aria-controls="g-offcanvas" aria-expanded="false"><i class="fa fa-fw fa-bars"></i></div>                        

                                            
                <header id="g-header">
                <div class="g-container">                                <div class="g-grid">                        

        <div class="g-block size-30">
             <div id="logo-7059-particle" class="g-content g-particle">            <a href="/" target="_self" title="Divorce Toolbox" rel="home" class="gantry-logo">
                        <img src="/images/logos/logo-dtb.png" alt="Divorce Toolbox">
            </a>
            </div>
        </div>
                    

        <div class="g-block size-70">
             <div class="spacer"></div>
        </div>
            </div>
            </div>
        
    </header>
                                
                <section id="g-navigation">
                <div class="g-container">                                <div class="g-grid">                        

        <div class="g-block size-100">
             <div id="menu-6731-particle" class="g-content g-particle">            <nav class="g-main-nav" role="navigation" data-g-hover-expand="true">
    <ul class="g-toplevel">
                                                                                                    
        <li class="g-menu-item g-menu-item-type-component g-menu-item-124 g-standard  ">
            <a class="g-menu-item-container" href="/">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Home</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-separator g-menu-item-156 g-parent g-standard  ">
            <div class="g-menu-item-container" data-g-menuparent="">                                                                            <span class="g-separator g-menu-item-content">            <span class="g-menu-item-title">How Does It Work?</span>
            </span>
                                            <span class="g-menu-parent-indicator"></span>                            </div>                                            <ul class="g-dropdown g-inactive g-fade g-dropdown-right">
            <li class="g-dropdown-column">
                        <div class="g-grid">
                        <div class="g-block size-100">
            <ul class="g-sublevel">
                <li class="g-level-1 g-go-back">
                    <a class="g-menu-item-container" href="#" data-g-menuparent=""><span>Back</span></a>
                </li>
                                                                                                            
        <li class="g-menu-item g-menu-item-type-component g-menu-item-191  ">
            <a class="g-menu-item-container" href="/how-does-it-work/what-is-divorce-tool-box">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">What is Divorce Tool Box?</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-179  ">
            <a class="g-menu-item-container" href="/how-does-it-work/how-does-divorce-tool-box-work">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">How Does Divorce Tool Box Work?</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-180  ">
            <a class="g-menu-item-container" href="/how-does-it-work/do-i-need-divorce-tool-box">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Do I Need Divorce Tool Box?</span>
            
                    </span>
                                                </a>
                                </li>
    
    
            </ul>
        </div>
            </div>

            </li>
        </ul>
            </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-separator g-menu-item-190 g-parent g-standard  ">
            <div class="g-menu-item-container" data-g-menuparent="">                                                                            <span class="g-separator g-menu-item-content">            <span class="g-menu-item-title">Programs</span>
            </span>
                                            <span class="g-menu-parent-indicator"></span>                            </div>                                            <ul class="g-dropdown g-inactive g-fade g-dropdown-right">
            <li class="g-dropdown-column">
                        <div class="g-grid">
                        <div class="g-block size-100">
            <ul class="g-sublevel">
                <li class="g-level-1 g-go-back">
                    <a class="g-menu-item-container" href="#" data-g-menuparent=""><span>Back</span></a>
                </li>
                                                                                                            
        <li class="g-menu-item g-menu-item-type-component g-menu-item-196  ">
            <a class="g-menu-item-container" href="/programs/divorcing-with-children">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Divorcing With Children</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-197  ">
            <a class="g-menu-item-container" href="/programs/divorcing-without-children">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Divorcing Without Children</span>
            
                    </span>
                                                </a>
                                </li>
    
    
            </ul>
        </div>
            </div>

            </li>
        </ul>
            </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-439 g-menu-item-type-separator g-parent g-standard">
            <div class="g-menu-item-container" data-g-menuparent="">                                                                            <span class="g-separator g-menu-item-content">            <span class="g-menu-item-title">Professionals</span>
            </span>
                                            <span class="g-menu-parent-indicator"></span>                            </div>                                            <ul class="g-dropdown g-dropdown-right g-fade g-inactive">
            <li class="g-dropdown-column">
                        <div class="g-grid">
                        <div class="g-block size-100">
            <ul class="g-sublevel">
                <li class="g-level-1 g-go-back">
                    <a class="g-menu-item-container" href="#" data-g-menuparent=""><span>Back</span></a>
                </li>
                                                                                                            
        <li class="g-menu-item g-menu-item-type-component g-menu-item-144  ">
            <a class="g-menu-item-container" href="/professionals/divorce-tool-box-for-professionals">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Divorce Tool Box for Professionals</span>
            
                    </span>
                                                </a>
                                </li>
    
    
            </ul>
        </div>
            </div>

            </li>
        </ul>
            </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-separator g-menu-item-154 g-parent g-standard  ">
            <div class="g-menu-item-container" data-g-menuparent="">                                                                            <span class="g-separator g-menu-item-content">            <span class="g-menu-item-title">About</span>
            </span>
                                            <span class="g-menu-parent-indicator"></span>                            </div>                                            <ul class="g-dropdown g-inactive g-fade g-dropdown-right">
            <li class="g-dropdown-column">
                        <div class="g-grid">
                        <div class="g-block size-100">
            <ul class="g-sublevel">
                <li class="g-level-1 g-go-back">
                    <a class="g-menu-item-container" href="#" data-g-menuparent=""><span>Back</span></a>
                </li>
                                                                                                            
        <li class="g-menu-item g-menu-item-type-component g-menu-item-619  ">
            <a class="g-menu-item-container" href="/about/about-audrey">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">About Audrey</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-618  ">
            <a class="g-menu-item-container" href="/about/testimonials">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Testimonials</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-872  ">
            <a class="g-menu-item-container" href="/about/media-reviews">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Media &amp; Reviews</span>
            
                    </span>
                                                </a>
                                </li>
    
    
            </ul>
        </div>
            </div>

            </li>
        </ul>
            </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-158 g-standard  ">
            <a class="g-menu-item-container" href="/blog">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Blog</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-alias g-menu-item-258 g-standard  ">
            <a class="g-menu-item-container g-no-social" href="/divorce-toolbox-product-categories">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Shop</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-820 g-standard  ">
            <a class="g-menu-item-container" href="/contact-divorce-toolbox">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Contact Us</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-476 g-parent g-standard g-menu-item-link-parent ">
            <a class="g-menu-item-container" href="/login-divorce-toolbox">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Login</span>
            
                    </span>
                    <span class="g-menu-parent-indicator" data-g-menuparent=""></span>                            </a>
                                                        <ul class="g-dropdown g-inactive g-fade g-dropdown-right">
            <li class="g-dropdown-column">
                        <div class="g-grid">
                        <div class="g-block size-100">
            <ul class="g-sublevel">
                <li class="g-level-1 g-go-back">
                    <a class="g-menu-item-container" href="#" data-g-menuparent=""><span>Back</span></a>
                </li>
                                                                                                            
        <li class="g-menu-item g-menu-item-type-component g-menu-item-985  ">
            <a class="g-menu-item-container" href="/login-divorce-toolbox/control-panel">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Control Panel</span>
            
                    </span>
                                                </a>
                                </li>
    
                                                                                        
        <li class="g-menu-item g-menu-item-type-component g-menu-item-878  ">
            <a class="g-menu-item-container" href="/login-divorce-toolbox/affiliate-area">
                                                                <span class="g-menu-item-content">
                                    <span class="g-menu-item-title">Affiliate Area</span>
            
                    </span>
                                                </a>
                                </li>
    
    
            </ul>
        </div>
            </div>

            </li>
        </ul>
            </li>
    
    
    </ul>
</nav>
            </div>
        </div>
            </div>
            </div>
        
    </section>
                                
                <main id="g-main">
                <div class="g-container">                                <div class="g-grid">                        

        <div class="g-block size-100">
             <div class="g-content">
                                                            <h1>0 Cannot pass parameter 3 by reference</h1>
    
    
            
    </div>
        </div>
            </div>
            </div>
        
    </main>
                                
                <footer id="g-footer">
                <div class="g-container">                                <div class="g-grid">                        

        <div class="g-block size-40">
             <div id="copyright-9887-particle" class="g-content g-particle">            ©
    2010 -     2019
    Sildrey, LLC dba. Divorce Tool Box.
            </div>
        </div>
                    

        <div class="g-block size-30">
             <div class="spacer"></div>
        </div>
                    

        <div class="g-block size-30">
             <div id="branding-9481-particle" class="g-content g-particle">            <div class="g-branding branding">
    <small>Website by <a target="_blank" href="http://webbering.com/" title="Webbering Website Design, Development, Hosting and Services" class="g-powered-by">Webbering Website Services</a></small>
</div>
            </div>
        </div>
            </div>
            </div>
        
    </footer>
            
                        

        </div>
                    

                        <script type="text/javascript" src="/media/gantry5/assets/js/main.js"></script>
    <jdoc:include type="modules" name="debug">

    

        
    

</jdoc:include></fieldset></div>

Please Log in or Create an account to join the conversation.

  • Posts: 82864
  • Thank you received: 13372
  • MODERATOR
5 years 5 months ago #307446

Hi,

There are 2 things in your message:
1. The error message "Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; plgHikashopAddBcc_status_email has a deprecated constructor in /home/divotlbx/public_html/plugins/hikashop/addBcc_status_email/addBcc_status_email.php on line 12" comes for a plugin which isn't updated to support PHP 7. It's not really important for now. You can turn off the "error reporting" of the Joomla configuration and you won't see that error message on your website, only in the logs, and it will work properly. But I would recommend updating the plugin when you can.

2. The issue with the login area. This happens because of the page processing stops in the middle because of a fatal error. You can see the error message in the middle of the HTML you added in your message:

0 Cannot pass parameter 3 by reference

This also probably comes from a plugin not up to date. In fact, it might actually be the same plugin.
The best would be to activate the "error reporting" and "debug mode" settings of the Joomla configuration and try again. In the same HTML that you posted in your message, below that "0 Cannot pass parameter 3 by reference" error, you should get a callstack with the file path and line number from which this error message originated. That will allow you to know which extension is creating the error so that you can disable/update it.

Please Log in or Create an account to join the conversation.

  • Posts: 332
  • Thank you received: 6
5 years 5 months ago #307476

Nicolas,

I did extensive testing including disabling 3 different plug-in's, disabling caching, updating template (no actual change - just overwriting files) and even tried another template. Nothing seemed to work. So I fell back from PHP version from 7.3 back to 7.2 and it's working properly now.

I can only assume it was the plgHikashopAddBcc_status_email that is 'somehow' causing this issue with PHP 7.3. I looked on the HikaShop website can could not find anyplace for downloading updated plugins. If there is a page, please link it here. If not, if you can attached the most current version of the plugin, I'll unpack and upload.

Thanks.

Please Log in or Create an account to join the conversation.

  • Posts: 82864
  • Thank you received: 13372
  • MODERATOR
5 years 5 months ago #307484

Hi,

I don't have such plugin on my end. Where did you get it from ?

Please Log in or Create an account to join the conversation.

  • Posts: 332
  • Thank you received: 6
5 years 5 months ago #307487

Nicolas,

I'm clueless.

There is a 'addBcc_status_email' sub-folder in the 'plugins/hikashop' folder. I've displayed the contents of the two files in that folder.

Here is the code for the addBcc_status_email.php file:

<?php
/**
 * @package		HikaShop for Joomla!
 * @version		1.0.0
 * @author		hikashop.com
 * @copyright	(C) 2010 HIKARI SOFTWARE. All rights reserved.
 * @license		http://www.hikashop.com/commercial_license.php
 */
defined('_JEXEC') or die('Restricted access');
?>
<?php
class plgHikashopAddBcc_status_email extends JPlugin
{
	function plgHikashopAddBcc_status_email(&$subject, $config){
		parent::__construct($subject, $config);
	}

	function onBeforeMailSend(&$mail, &$mailer){
		$pluginsClass = hikashop_get('class.plugins');
		$plugin = $pluginsClass->getByName('hikashop','addBcc_status_email');
		if(!empty($plugin->params['address']) && $mail->mail_name == 'order_status_notification'){
			$newRecipient = explode(',',$plugin->params['address']);
			foreach($newRecipient as $newOne){
				$mailer->addRecipient($newOne);
			}
		}
	}
}

Here is the code for the addBcc_status_email.xml file:
<?xml version="1.0" encoding="utf-8"?>

<extension type="plugin" version="2.5" method="upgrade" group="hikashop">

	<name>Hikashop - Add bcc in order status notification email</name>

	<creationDate>18/06/14</creationDate>

	<version>1.0.0</version>

	<author>HikaShop Team</author>

	<authorEmail>team@hikashop.com</authorEmail>

	<authorUrl>http://www.hikashop.com</authorUrl>

	<copyright>(C) 2010-{__YEAR__} HIKARI SOFTWARE. All rights reserved.</copyright>

	<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>

	<description>This plugin enables you to attach a bcc address in the order status notification email.</description>

	<files>

		<filename plugin="addBcc_status_email">addBcc_status_email.php</filename>

	</files>

		<params addpath="/components/com_hikashop/params">

		<param name="address" type="text" size="50" default="" label="Address" description="Email address to add" />

	</params>

	<config>

		<fields name="params" addfieldpath="/components/com_hikashop/fields">

			<fieldset name="basic">

				<field

					name="address"

					type="text"

					label="file"

					size="50"

					default=""

					description="Email address to add" />

			</fieldset>

		</fields>

	</config>

</extension>

Please Log in or Create an account to join the conversation.

  • Posts: 82864
  • Thank you received: 13372
  • MODERATOR
5 years 5 months ago #307488

Hi,

You should uninstall that plugin. It's been years that you can directly enter BCC email addresses when editing the emails via the System>Emails menu in HikaShop, rendering this plugin completely redundant. I suppose that's why we don't have it on our end as we must have removed it a while back and thus it's not updated for new versions of Joomla / PHP.

Please Log in or Create an account to join the conversation.

Time to create page: 0.067 seconds
Powered by Kunena Forum