13

i am trying to reset my test customer account password for my store, when i click on forgot password link it is asking me for a email address when i enter a valid email address it says the password reset link is sent to your mail & it is forwarding me a link in email when i click on the link it is displaying an error Fatal error: Call to a member function setCustomerId() on a non-object in /var/www/websites/jivity/app/code/core/Mage/Customer/controllers/AccountController.php on line 587 , How can i fix this error?? & Thanx in advance.

Imran Pasha
  • 137
  • 1
  • 1
  • 7

6 Answers6

20

Just fixed the same problem on an upgraded 1.6.1.0 site - You are using an out of date customers.xml, diff your copy and app/design/frontend/base/default/layout/customer.xml to find the changes that need doing

Mukesh
  • 7,630
  • 21
  • 105
  • 159
Pickling Jar
  • 216
  • 2
  • 2
14

If anyone is wondering, in the new version (1.6++) of the customer.xml file the following bit has been added:

<customer_account_resetpassword translate="label">
    <label>Reset a Password</label>
    <remove name="right"/>
    <remove name="left"/>

    <reference name="head">
        <action method="setTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="root">
        <action method="setTemplate">
            <template>page/1column.phtml</template>
        </action>
        <action method="setHeaderTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="content">
        <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
    </reference>
</customer_account_resetpassword>
Greg
  • 748
  • 8
  • 19
3

If you are in Magento 1.9.1 Here is a solution which worked for me.

If your theme doesn’t include any specific custom config or layout settings you can safely delete your customer.xml (or just rename to customer1.xml) file located at /app/design/frontend/default/<your_theme_package>/<your_theme_name>/layout/customer.xml

If you delete this file magento will load the default config options (with the updates) from the factory default magento theme. /app/design/frontend/base/default/layout/customer.xml

Remember to flush / refresh your magento config via administration area, this will force the customer.xml file to be reloaded.

Suman KC
  • 3,478
  • 4
  • 30
  • 42
  • The same is valid for Magento 1.7 after a critic patch update (6788) started giving this problem in certain installations. – versvs Nov 13 '15 at 10:27
1

please add below code in your costomer.xml[app/design/frontend///layout/customer.xml] file.

<customer_account_resetpassword translate="label">
        <label>Reset a Password</label>
        <remove name="right"/>
        <remove name="left"/>

        <reference name="head">
            <action method="setTitle" translate="title" module="customer">
                <title>Reset a Password</title>
            </action>
        </reference>
        <reference name="root">
            <action method="setTemplate">
                <template>page/1column.phtml</template>
            </action>
            <action method="setHeaderTitle" translate="title" module="customer">
                <title>Reset a Password</title>
            </action>
        </reference>
        <reference name="content">
            <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
        </reference>
    </customer_account_resetpassword>

It's Working

Bhavesh Godhani
  • 378
  • 7
  • 15
0

I tried the above, but didn't work. From another tip I saw, I added the same code above to the 'mageb2bextensionscustomer.xml' in the same layout folder, cleared all the cache and it works now. :-)

0

Always back up your files!

I found a fast way to solve the issue: I replaced the custom customer.xml used by my theme in app/design/frontend/your_theme_package/your_theme_name/layout/ with the file in app/design/frontend/base/default/layout/customer.xml.

Now it works just fine.

user3071284
  • 6,955
  • 6
  • 43
  • 57
Omar Ayala
  • 154
  • 3
  • 11