Jump to content

Never_give_up

Members
  • Posts

    31
  • Joined

  • Last visited

Never_give_up's Achievements

Newbie

Newbie (1/14)

12

Reputation

1

Community Answers

  1. That store link is just showing the layout of the notes area which is under the “stores" column but it is with a custom theme. I moved the columns code around and re-named column title. put the <br> directly in the database and it will stick there but don’t edit it again in the back office because it will just strip them out again. Or you can change prestashop code to allow html in the stores page which is a simple fix but I don’t remember which page that is to edit....you would have to research it. I am sorry I don’t remember which way I made it stick put it was one of of 2 ways that finally worked. I think I just forced it to stick in the database because it was quicker but someone may know of a better way to make the <br> stick in the back office.
  2. Hi akafester, did you add retrun <br> breaks in notes? the example http://dlite.com/stores
  3. I was able to figure out how to get this to work as a private store with login page before entering store. Here's what to do.... The code above does work I just did'nt know where to place it to hide and lock up the whole store plus it had a missing slant in the <if> instead of </if> at the end. First I must say any private store using "only" CSS to hide it it and lock it up is not a secure way to do it. That being said from what I researched I believe this simple code "if logged" is more secure with ssl other then changing core Php code to do it. What finally worked well was to lock-up and hide the entire wholesale store and make it a private store until the customer signs-in. Every .tpl page will be locked up and private except the header.tpl will only be half private until login and the other half will have a login box which will only show up if the customer is not logged in. Doing it this way you can customize the whole login page to what ever you want and not have it affect the original store register/login page. You are basically going to add your own html or css code for the layout and add a sign-in/login box in this area that only shows before logged-in. First step backup all the .tpl files from the theme folder to your computer using FTP. 2nd step lock up and hide all .tpl pages by adding the below code at the top of each page before ALL original code. Don't add it to the header.tpl yet. {if $logged} /* All code below this will be locked-up and hidden if not logged-in */ At the very bottom of each .tpl page add this (except the header.tpl): {else} {/if} In header.tpl add {if $logged} right after </head> {if $logged} /* All code below this will be locked-up and hidden if not logged-in */ Now you're going to sandwich some code on how you what the page to look with a sign-in box. Basically I copied some sign-in code from authentication.tpl to the header.tpl At the very bottom of header.tpl add: {else} /* All code sandwiched between the {else} and the {/if} will show up when not logged-in. This is where to put your custom html and sign-in code */ {/if} in-between {else} and the {/if} I added this code: <div style="background: #000000 url(https://yourdomainname.com/themes/yourtheme/css/wloginbackground.jpg) no-repeat center top;height: 100%; width: 100%; -webkit-background-size: cover; -moz-background-size: cover; background-size: cover; "> <div><strong><span background="/wlogin.jpg"style="color: #ff0000; font-size: 16px;"></span></strong></div> {if !isset($dlv_all_fields)} {$dlv_all_fields.0 = 'company'} {$dlv_all_fields.1 = 'firstname'} {$dlv_all_fields.2 = 'lastname'} {$dlv_all_fields.3 = 'address1'} {$dlv_all_fields.4 = 'address2'} {$dlv_all_fields.5 = 'postcode'} {$dlv_all_fields.6 = 'city'} {$dlv_all_fields.7 = 'country'} {$dlv_all_fields.8 = 'state'} {/if} {capture name=path}{l s='Login'}{/capture} {include file="$tpl_dir./breadcrumb.tpl"} <script type="text/javascript"> // <![CDATA[ idSelectedCountry = {if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{else}false{/if}; countries = new Array(); countriesNeedIDNumber = new Array(); countriesNeedZipCode = new Array(); {if isset($countries)} {foreach from=$countries item='country'} {if isset($country.states) && $country.contains_states} countries[{$country.id_country|intval}] = new Array(); {foreach from=$country.states item='state' name='states'} countries[{$country.id_country|intval}].push({ldelim}'id' : '{$state.id_state}', 'name' : '{$state.name|escape:'htmlall':'UTF-8'}'{rdelim}); {/foreach} {/if} {if $country.need_identification_number} countriesNeedIDNumber.push({$country.id_country|intval}); {/if} {if isset($country.need_zip_code)} countriesNeedZipCode[{$country.id_country|intval}] = {$country.need_zip_code}; {/if} {/foreach} {/if} $(function(){ldelim} $('.id_state option[value={if isset($smarty.post.id_state)}{$smarty.post.id_state}{else}{if isset($address)}{$address->id_state|escape:'htmlall':'UTF-8'}{/if}{/if}]').attr('selected', 'selected'); {rdelim}); //]]> {if $vat_management} {literal} $(document).ready(function() { $('#company').blur(function(){ vat_number(); }); vat_number(); function vat_number() { if ($('#company').val() != '') $('#vat_number').show(); else $('#vat_number').hide(); } }); {/literal} {/if} </script> <h1>{if !isset($email_create)}{l s=''}{/if}</h1> {assign var='current_step' value='login'} {include file="$tpl_dir./order-steps.tpl"} {include file="$tpl_dir./errors.tpl"} {assign var='stateExist' value=false} {if !isset($email_create)} <form action="{$link->getPageLink('authentication.php', true)}" method="post" id="login_form" class="std"> <fieldset> <div style="padding: 100px 0 0 250px;"> <img class="logo" src="/img/your-logo.png" height="55" width="200" alt=""> <div id="login-box"> <H2a>Login</H2a> For register wholesale users only. If you're not registered please go to the <a href="https://yourdomain.com/wholesale-inquiries" style="color: #E80202">wholesale registration form</a>. <br /> <br /> <div id="login-box-name" style="margin-top:20px;">Email:</div><div id="login-box-field" style="margin-top:20px;"> <input type="text" id="email" name="email" class="form-login" title="Username" value="{if isset($smarty.post.email)}{$smarty.post.email|escape:'htmlall':'UTF-8'|stripslashes}{/if}" size="30" maxlength="2048" /></div> <div id="login-box-name">Password:</div> <div id="login-box-field"> <input type="password" id="passwd" name="passwd" class="form-login" title="Password" value="{if isset($smarty.post.passwd)}{$smarty.post.passwd|escape:'htmlall':'UTF-8'|stripslashes}{/if}" size="30" maxlength="2048" /></div> <br /> <span class="login-box-options"><a href="https://your-retail-domain.com.com/contact-us" style="margin-left:30px;">Forgot password? please contact us</a></span> <br /> <br /> <p class="submit"> <input type="hidden" class="hidden" name="back" value="{$smarty.server.HTTP_REFERER}" /> <input type="submit" id="SubmitLogin" name="SubmitLogin" class="button_large" value="{l s='Log in'}" /> </p> <br /> <br /> <span class="login-box-options"><a href="http://your-retail-domain.com" style=";">Back to Retail Store</a></span> </div> </div> </fieldset> </form> {/if} </div> Download these files:blue-login-box.zip Ok one last thing you have to do… Change the above code anywhere it states "yourdomain.com" or "your-retail-domain.com" to your domain addresses. The free sign in box I used was called "blue-login-box". You have to download the files above to get the sign in box looking good with css and images. I attached them above. After you download the files copy the login-box.css to the css theme folder, also copy the images to the CSS folder. I don't know why but coping the images to the img folder did not show up no matter if I changed the address to img folder. The images only showed up from the css folder, strange! I changed the Blue background sign-in box image to black. if you change the name of the background image be sure to change the name in the background link in login-box.css …. You can also play with the css color and layout to fit your style for the login page. One of the things I didn't get to work out yet was the "forgot your password" code, it was going in a loop so I must of missed some "forgot your password" code. For now I just put a link to the "contact us" form from the retail store. If the customer forgets the password that was set up for them they can just contact us. How to make a wholesale registration form... I have also made a wholesale registration form on the retail store so wholesale buyers can register for the wholesale site. I made it by duping all the contact form files to contact2 files including Contact2Controller.php and mail files then replacing all code that states contact to cantact2 in those files, then so it shows up on the front end I added the page in Admin under Preferences>>SEO>>Add New >> select the new contact2 page. Now just edit contact2.tpl and add extra input fields to what you want. in contact2.tpl replace everything below the {include file="$tpl_dir./errors.tpl"} with this: {include file="$tpl_dir./errors.tpl"} <form action="{$request_uri|escape:'htmlall':'UTF-8'}" method="post" class="std" enctype="multipart/form-data"> <fieldset> <br><br> {*ADDED START*} {if isset($customerThread.id_contact)} <input type="hidden" name="id_contact" value="{$customerThread.id_contact}" /> {else} <input type="hidden" name="id_contact" value="1" /> {*ADDED END*} {/if} <p><center>{l s='All information is sent encrypted and securely.'}</center></p> <p class="text"> <label for="email">{l s='E-mail address'}</label> {if isset($customerThread.email)} <input type="text" id="email" name="from" value="{$customerThread.email}" readonly="readonly"/> {else} <input type="text" id="email" name="from" value="{$email}" style="width:280px;height:18px"/> {/if} </p> <p> <label for="contactperson">{l s='Contact Name'}</label> <input type="text" id="contactperson" name="contactperson" style="width:280px;height:18px"value="{if isset($contactperson)}{$contactperson|escape:'htmlall':'UTF-8'|stripslashes}{/if}" /> </p> <p> <label for="phonenumber">{l s='Phone Number'}</label> <input type="text" id="phonenumber" name="phonenumber" style="width:280px;height:18px" value="{if isset($phonenumber)}{$phonenumber|escape:'htmlall':'UTF-8'|stripslashes}{/if}" /> </p> <p> <label for="companyname">{l s='Business Name'}</label> <input type="text" id="companyname" name="companyname" style="width:280px;height:18px"value="{if isset($companyname)}{$companyname|escape:'htmlall':'UTF-8'|stripslashes}{/if}" /> </p> <p class="textarea"> <label for="businessaddress">{l s='Business Address'}</label> <textarea id="businessaddress" name="businessaddress" rows="15" cols="20" style="width:280px;height:80px">{if isset($businessaddress)}{$businessaddress|escape:'htmlall':'UTF-8'|stripslashes}{/if}</textarea> </p> <p> <label for="country">{l s='Country'}</label> <input type="text" id="country" name="country" style="width:280px;height:18px" value="{if isset($country)}{$country|escape:'htmlall':'UTF-8'|stripslashes}{/if}" /> </p> <p class="textarea"> <label for="message">{l s='Message or questions'}</label> <textarea id="message" name="message" rows="15" cols="20" style="width:280px;height:120px">{if isset($message)}{$message|escape:'htmlall':'UTF-8'|stripslashes}{/if}</textarea> </p> <p class="submit"> <input type="submit" name="submitMessage" id="submitMessage" value="{l s='Send'}" class="button_large" onclick="$(this).hide();" /> </p> </fieldset> </form> {/if} Add a link to the page somewhere on your retail store according to what you specified in the add to SEO from Admin. Last thing to do is edit the contact2.html and contact2.txt mail files to match your input boxes from contact2.tpl page. Mail contact2.html to match input boxes from contact2.tpl : <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Message from {shop_name}</title> </head> <body> <table style="font-family: Verdana,sans-serif; font-size: 11px; color: #374953; width: 550px;"> <tbody> <tr> <td align="left"><a title="{shop_name}" href="{shop_url}"><img style="border: none;" src="{shop_logo}" width="221" height="60" alt="{shop_name}" /></a></td> </tr> <tr> <td> </td> </tr> <tr> <td style="background-color: {color}; color: #fff; font-size: 12px; font-weight: bold; padding: 0.5em 1em;" align="left">Message from a {shop_name} Wholesale Inquiry customer</td> </tr> <tr> <td> </td> </tr> <tr> <td align="left">Customer e-mail address: <a href="mailto:{email}"><strong>{email}</strong></a> <br /><br /> <p><strong>Contact Name:</strong><br> {contactperson}<br /> {phonenumber}<br /> <br /> <strong>Business Name:<br> </strong>{companyname}<br /> {businessaddress}<br> {country}</p> <p><strong>Message:</strong><br> {message}</p></td> </tr> <tr> <td> </td> </tr> <tr> <td style="font-size: 10px; border-top: 1px solid #D9DADE;" align="center"><a style="color: {color}; font-weight: bold; text-decoration: none;" href="{shop_url}">www.yoururl.com</a></td> </tr> </tbody> </table> </body> </html> These emails will not save to the database but you will get an email with all the information from the customer to follow through with the lead by calling them for more information to approve them for wholesale. Then you can manually set them up in the wholesale site Admin with a password. I now have a working wholesale site that only registered users can enter. YAY!
  4. I found this older post.... Rocky posted code on how to hide the whole shop here until user logs in but it's an older version of Perstashop and won't work with 1.5.4. I am hoping someone can help.
  5. Hello everyone, I would like to hide the store or the index page until the customer logs in. I am using 1.5.4 with mulistore on and two separate themes for 2 stores (the wholesale store is within the default retail store), I just need the wholesale shop index page or full wholesale store to be hidden until sign in. I found this code to add to index.tpl, but it's not working… {if $logged} /* Your private page to show when the user is logged in */ <div>Welcome</div> {else} /* You elements to show message when the user is not logged in */ <div>You must sign-in to view this page</div> {if} Does anyone know what code I need to update or change to do this? I am not looking for a module to do it. I prefer to just change or add code. Thank you so much!
  6. I am using version PrestaShop™ 1.5.4.1 Ok I got it figured out.... I added fax and notes to stores on the Map view of store locations. I wanted to add the website url of the stores too. I am using Map view to show all different retail stores that carry the manufactures products. I just put the url's in the notes section and it works great now. Anything can be put in the notes for customizing what you want to show for each store. (after you edit add a copy of the StoresController.php file to the override folder with the same directory folder layout so when you update your store you will not lose the edits.) in Controllers >> front >> StoresController.php find this: { $other = ''; $node = $dom->createElement('marker'); $newnode = $parnode->appendChild($node); $newnode->setAttribute('name', $store['name']); $address = $this->processStoreAddress($store); $other .= $this->renderStoreWorkingHours($store); $newnode->setAttribute('addressNoHtml', strip_tags(str_replace('<br />', ' ', $address))); $newnode->setAttribute('address', $address); $newnode->setAttribute('other', $other); $newnode->setAttribute('phone', $store['phone']); $newnode->setAttribute('id_store', (int)($store['id_store'])); $newnode->setAttribute('has_store_picture', file_exists(_PS_STORE_IMG_DIR_.(int)($store['id_store']).'.jpg')); $newnode->setAttribute('lat', (float)($store['latitude'])); $newnode->setAttribute('lng', (float)($store['longitude'])); if (isset($store['distance'])) $newnode->setAttribute('distance', (int)($store['distance'])); } and replace with this: { $other = ''; $node = $dom->createElement('marker'); $newnode = $parnode->appendChild($node); $newnode->setAttribute('name', $store['name']); $address = $this->processStoreAddress($store); $other .= $this->renderStoreWorkingHours($store); $newnode->setAttribute('addressNoHtml', strip_tags(str_replace('<br />', ' ', $address))); $newnode->setAttribute('address', $address); $newnode->setAttribute('other', $other); $newnode->setAttribute('phone', $store['phone']); $newnode->setAttribute('fax', $store['fax']); $newnode->setAttribute('note', $store['note']); $newnode->setAttribute('id_store', (int)($store['id_store'])); $newnode->setAttribute('has_store_picture', file_exists(_PS_STORE_IMG_DIR_.(int)($store['id_store']).'.jpg')); $newnode->setAttribute('lat', (float)($store['latitude'])); $newnode->setAttribute('lng', (float)($store['longitude'])); if (isset($store['distance'])) $newnode->setAttribute('distance', (int)($store['distance'])); } in themes >> your theme>> stores.tpl find <p align="center"> <b>{$store.name|escape:'htmlall':'UTF-8'}</b><br /> {$store.address1|escape:'htmlall':'UTF-8'}<br /> {if $store.address2}{$store.address2|escape:'htmlall':'UTF-8'}{/if}<br /> {$store.city|escape:'htmlall':'UTF-8'}{if $store.state}, {$store.state} {$store.postcode}{/if}<br /> {$store.country|escape:'htmlall':'UTF-8'}<br /> {if $store.phone}{l s='Phone:' js=0} {$store.phone}{/if} </p> and replace with: <p align="center"> <b>{$store.name|escape:'htmlall':'UTF-8'}</b><br /> {$store.address1|escape:'htmlall':'UTF-8'}<br /> {if $store.address2}{$store.address2|escape:'htmlall':'UTF-8'}{/if}<br /> {$store.city|escape:'htmlall':'UTF-8'}{if $store.state}, {$store.state} {$store.postcode}{/if}<br /> {$store.country|escape:'htmlall':'UTF-8'}<br /> {if $store.phone}{l s='Phone:' js=0} {$store.phone}{/if} {if $store.fax}{l s='Fax:' js=0} {$store.fax}{/if} {if $store.note}{l s='Note:' js=0} {$store.note}{/if} </p> Find: <script type="text/javascript"> // <![CDATA[ var map; var markers = []; var infoWindow; var locationSelect; var defaultLat = '{$defaultLat}'; var defaultLong = '{$defaultLong}'; var translation_1 = '{l s='No store found, try to select a wider radius' js=1}'; var translation_2 = '{l s='store found - see details:' js=1}'; var translation_3 = '{l s='stores found - see all results:' js=1}'; var translation_4 = '{l s='Phone:' js=1}'; var translation_5 = '{l s='Get Directions' js=1}'; var translation_6 = '{l s='Not found' js=1}'; var hasStoreIcon = '{$hasStoreIcon}'; var distance_unit = '{$distance_unit}'; var img_store_dir = '{$img_store_dir}'; var img_ps_dir = '{$img_ps_dir}'; var searchUrl = '{$searchUrl}'; //]]> </script> Replace with: <script type="text/javascript"> // <![CDATA[ var map; var markers = []; var infoWindow; var locationSelect; var defaultLat = '{$defaultLat}'; var defaultLong = '{$defaultLong}'; var translation_1 = '{l s='No store found, try to select a wider radius' js=1}'; var translation_2 = '{l s='store found - see details:' js=1}'; var translation_3 = '{l s='stores found - see all results:' js=1}'; var translation_4 = '{l s='Phone:' js=1}'; var translation_5 = '{l s='Get Directions' js=1}'; var translation_6 = '{l s='Not found' js=1}'; var translation_7 = '{l s='Fax:' js=1}'; var translation_8 = '{l s='Note:' js=1}'; var hasStoreIcon = '{$hasStoreIcon}'; var distance_unit = '{$distance_unit}'; var img_store_dir = '{$img_store_dir}'; var img_ps_dir = '{$img_ps_dir}'; var searchUrl = '{$searchUrl}'; //]]> </script> In themes >> your theme >> js >> stores.js find: { var name = markerNodes[i].getAttribute('name'); var address = markerNodes[i].getAttribute('address'); var addressNoHtml = markerNodes[i].getAttribute('addressNoHtml'); var other = markerNodes[i].getAttribute('other'); var distance = parseFloat(markerNodes[i].getAttribute('distance')); var id_store = parseFloat(markerNodes[i].getAttribute('id_store')); var phone = markerNodes[i].getAttribute('phone'); var has_store_picture = markerNodes[i].getAttribute('has_store_picture'); var latlng = new google.maps.LatLng( parseFloat(markerNodes[i].getAttribute('lat')), parseFloat(markerNodes[i].getAttribute('lng'))); createOption(name, distance, i); createMarker(latlng, name, address, addressNoHtml, other, id_store, has_store_picture); bounds.extend(latlng); $('#stores-table tr:last').after('<tr class="node"><td class="num">'+parseInt(i + 1)+'</td><td><b>'+name+'</b>'+(has_store_picture == 1 ? '<br /><img src="'+img_store_dir+parseInt(id_store)+'-medium.jpg" alt="" />' : '')+'</td><td>'+address+(phone != '' ? '<br /><br />'+translation_4+' '+phone : '')+'</td><td class="distance">'+distance+' '+distance_unit+'</td></tr>'); $('#stores-table').show(); } replace with: { var name = markerNodes[i].getAttribute('name'); var address = markerNodes[i].getAttribute('address'); var addressNoHtml = markerNodes[i].getAttribute('addressNoHtml'); var other = markerNodes[i].getAttribute('other'); var distance = parseFloat(markerNodes[i].getAttribute('distance')); var id_store = parseFloat(markerNodes[i].getAttribute('id_store')); var phone = markerNodes[i].getAttribute('phone'); var fax = markerNodes[i].getAttribute('fax'); var note = markerNodes[i].getAttribute('note'); var has_store_picture = markerNodes[i].getAttribute('has_store_picture'); var latlng = new google.maps.LatLng( parseFloat(markerNodes[i].getAttribute('lat')), parseFloat(markerNodes[i].getAttribute('lng'))); createOption(name, distance, i); createMarker(latlng, name, address, addressNoHtml, other, id_store, has_store_picture); bounds.extend(latlng); $('#stores-table tr:last').after('<tr class="node"><td class="num">'+parseInt(i + 1)+'</td><td width="185">'+(has_store_picture == 1 ? '<img src="'+img_store_dir+parseInt(id_store)+'-medium.jpg" height="65" width="150" alt="" />' : '')+'</td><td><b>'+name+'</b><br>'+(note != '' ? ''+note : '')+'<br></td><td>'+address+'<br />'+(fax != '' ? ''+translation_7+' '+fax : '')+'</td><td class="distance"style="text-align: left">'+distance+' '+distance_unit+'</td></tr>'); $('#stores-table').show(); } for layout purposes in themes>>your theme>>stores.tpl find <tr> <th >{l s=''}</th> <th >{l s='Store'}</th> <th >{l s='Address'}</th> <th >{l s='Distance'}</th> </tr> and replace with <tr> <th >{l s=''}</th> <th >{l s=''}</th> <th >{l s='Store'}</th> <th >{l s='Address'}</th> <th >{l s='Distance'}</th> </tr> I moved my js code around for a better layout so it may be slightly different from yours but the Fax and Notes code works now. YAY! Hope this helps
  7. If you want it in Satellite mode WITH default street names and road marks... change to this: from: mapTypeId: 'roadmap', to: mapTypeId: 'hybrid',
  8. Hey Thanks Ayeom, Your code changes worked for me. I also wanted customers to view all stores on the 1st loaded page with the Map, then they can search their area if they want too. Thanks a lot I also figured out how to hide my 6000 mi radius search and hide the start zipcode at default. now it sets automatically onload. I am using version 1.5.4.1 in stores.tpl replace your code with this code below but change the zipcode 67481 (or use the start city, state, country name) and radius value 6000 to your settings. This setting gets entire USA area. It's nice because first it gives the whole USA view (centered) then goes to show a closeup view of all pinned stores listed in USA. <p>{l s='Your location:'} <input type="hidden" type="text" name="location" id="addressInput" value="{l s='67481'}" onclick="this.value='';" /><input type="text" name="location" id="addressInput" value="{l s='Enter a zipcode, an address, a city or a country'}" onclick="this.value='';" /></p> <input type="hidden" name="radius" id="radiusSelect" value="6000" /> <p style="margin-top: 15px;"> {l s='Radius area:'} <select name="radius" id="radiusSelect"> <option value="25">25</option> <option value="50">50</option> <option value="100">100</option> </select> {$distance_unit} <input type="button" class="button" onclick="searchLocations();" value="{l s='Search'}" style="display: inline;" /> <img src="{$img_ps_dir}loader.gif" onload="searchLocations();" class="middle" alt="" id="stores_loader" /> </p>
  9. incase anyone has the below error.... Paypal was working fine then stopped for no reason. I haven't done anything to my shop. error is as follows at the end of checkout: Authorisation to Paypal failed Please refer to logs: 01. Paypal response: 02.-> 03. Paypal returned error I called up Paypal and they said: it could be 1of 2 things... 1st if your hosting service uses a 3rd party service called Rack Space - they may be blocking Paypal ip because they were having problems with hacks. 2nd if your hosting service uses a server or service called ATT... it could be the reason why... some kind of conflict or bug or blockage. It's a hosting service problem.... put in a support ticket to your hosting service to fix. EDIT: it turned out to be ATT fault and my hosting tech support fixed it. Make sure you give your hosting service tech support the above information so they know where to start looking for the problem.
  10. incase anyone has the below error.... Paypal was working fine then stopped for no reason. I haven't done anything to my shop. error is as follows at the end of checkout: Authorisation to Paypal failed Please refer to logs: 01. Paypal response: 02.-> 03. Paypal returned error I called up Paypal and they said: it could be 1of 2 things... 1st if your hosting service uses a 3rd party service called Rack Space - they may be blocking Paypal ip because they were having problems with hacks. 2nd if your hosting service uses a server or service called ATT... it could be the reason why... some kind of conflict or bug or blockage. It's a hosting service problem.... put in a support ticket to your hosting service to fix. EDIT: it turned out to be ATT fault and my hosting tech support fixed it. Make sure you give your hosting service tech support the above information so they know where to start looking for the problem.
  11. I thought product sort in admin was broken but actually it's not. After rearranging products in "Home" category in admin it didn't show the products rearrange in the front office. It only sorted home feature products accordingly to what I rearranged. It turns out "EACH" category/subcategory in admin has to be rearranged separately to what you want not just Home category. For this to work in ALL categories you have created... you have to open "EACH" category/subcategory that you created in Admin and rearrange products with-in each. Hope this helps. Make sure in Admin you have "Default order by:" set to "Position inside category" under Preference tab and in "Products" link.
  12. Go to file /override/classes/tools.php replace: <?php class Tools extends ToolsCore { } with this: <?php class Tools extends ToolsCore { public static function apacheModExists($name) { return true; } } go back to admin, select SEO & URLs from preferences, click on the save button. Finish
  13. Same thing is happing to my store too. Right after upgrading to 1.4.9 and after the customer hits Paypal payment. it's strange because not all paypal customers have the problem only some have the problem. It states an address error 1. Since it is not all customers having the problem then I assume it may be something the customer is inputing and trigging it. Too many characters or something. Maybe Paypal changed something on their side that is conflicting with the new Paypal module. Don't know. I will try and downgrade paypal to the version before. Thanks Edit: I just installed Paypal 2.8.7 it seems to be working now.
  14. Yah, this happened to one of my customers. It was a bug according to what the customer did. The address was duplicated in the database because the customer did not enter a different alias name with the second address or they submitted the same address twice with the same alias name. Go into the database manually and either edit the alias cell under that address row to something else or delete the second address row casing the problem. The bad address entry may show in Admin or it may not, but check the database to compare. In the database It's under the ps_address table go to Browse tab, click on the blue bold lastname text to organize the column by last name and look for the customers last name, you will see all address rows for that same customer, compare them and delete the offending row or edit the alias name so that all addresses do not have the same alias name under that customer. if so it causes a conflict. It's rare but some customers submit their same address twice and it causes problems if they don't make a different alias name. Hope this helps
×
×
  • Create New...