Jump to content

Heisenberg

Members
  • Posts

    16
  • Joined

  • Last visited

Profile Information

  • Activity
    Web development agency

Heisenberg's Achievements

Newbie

Newbie (1/14)

1

Reputation

  1. Hi Leute, ich hab das Sofortüberweisung Modul von gemaNext für PS 1.5.4 gefixt. Hier der Download: http://ul.to/ejinsk7t Wenn ihr 1.5.4 benutzt müsst ihr diesen Fix noch unbedingt einbauen damit alles flüssig läuft. https://github.com/PrestaShop/PrestaShop/commit/96ee6386c1c45ae788ab5e658583ac0495cbe04e Es ist einfach unglaublich wie viel Bugs in es in dieser Software gibt... naja ich verbleibe mit... ...besten Gruß, Heisenberg sofortueberweisung_PS-1.5.4-Fixed-by-SelfMadeMedia.zip
  2. Ich Poste es mal hier mit rein, hab das Sofortüberweisung Modul für PS 1.5.4 gefixt. Download: http://ul.to/ejinsk7t Gruß, Heisenberg
  3. Hi rumata, ja ich sprach von eurem Modul. Hab ein Ticket angelegt: http://silbersaiten.de/redmine/issues/52 Gruß
  4. Nimm das ding: https://github.com/silbersaiten/prestashop-partnermodules/tree/master/sofortueberweisung Hier gibts paar infos: http://www.prestashop.com/forums/index.php?/topic/235509-modul-sofortuberweisung-wirft-deprecated-warnungen-aus/page__view__findpost__p__1184406
  5. Dein Modul funktioniert in PS 1.5.4 nur gibt da paar 2 Sachen die man fixen müsste, das eine ist der Javascript auf der "tpl-frontend-redirect.tpl" <script type="text/javascript"> // <![CDATA[ function sendform() { document.getElementById('sofortueberweisungForm').submit();} window.setTimeout("sendform()",5); //]]> </script> Sonnst schickt der das Formular nicht ab. Am zweiten Bug sitze ich gerade verzweifel... die Order bekommt den Fehler "Fehler bei der Bezahlung" -> Vorsicht € 20,00 bezahlt statt € 15,25 Ich hab zwei Währung im Shop, Dollar ist die Hauptwährung und Euro Zweitwährung bei der Order wird in Euro bezahlt und die Bestellung verläuft perfekt, auch von SÜ kommt eine richtige Mail. Irgendwas bringt Prestashop da durcheinander, 20€ statt 15,25€. Das Produkt kostet 20$ und in Euro 15,25€. Irgendwo ist da eine Währungswurm drin. Wenn du Rat hast würde ich mich freuen!
  6. Hast eine PN. Bei deinem Fix wird über die Browser Sprache die richtige Sprache im Shop eingestellt, du kannst es testen in dem du bei Firefox unter "Einstellungen -> Inhalte -> Sprache" die beiden englsichen Sprachen nach oben schiebst. (natürlich Cookies löschen danach). Bei meinem Fix wird dann zu der Sprache die richtige Währung eingestellt.
  7. Ich hab jetzt einen hard fix geschrieben, der über die id_lang aus dem Cookie für die passende Währung beim ersten Seitenaufruf einstellt. Ist halt nicht die beste lösung aber vorrübergehen funktioiert es. Ich glaube es ist jedem klar, dass der erste Aufruf einer Webseite entscheidet ob der Kunde bleibt und kauft oder weitersucht. Um den Fix zu verstehen, meine Shop stellungen: Standard Sprache Deutsch = ID-> 1 Zweite Sprache Englsich = ID-> 2 Standard Währung € = ID-> 1 Zweite Währung $ = ID-> 2 FIX: Tools.php - line 439 bis 449 $currency = Currency::getCurrencyInstance(Configuration::get('PS_CURRENCY_DEFAULT')); if ((int)$cookie->id_lang) { $currency = (int)$cookie->id_lang; $currency = Currency::getCurrencyInstance($currency); } if (is_object($currency) && $currency->id) $cookie->id_currency = (int)$currency->id; return $currency; Wenn der Shop über /de/ aufgerufen wird wird € benutzt. (id 1) Wenn der Shop über /en/ aufgerufen wird wird $ benutzt. (id 2) Alternative: Wer will kann das ganze auch nach dem alten fix aufbauen und selbst defenieren was für Währungen bei welcher sprache angezeigt werden. $currency = Currency::getCurrencyInstance(Configuration::get('PS_CURRENCY_DEFAULT')); if ((int)$cookie->id_lang) { if ((int)$cookie->id_lang = 1) $currency = Currency::getCurrencyInstance(1); if ((int)$cookie->id_lang = 2) $currency = Currency::getCurrencyInstance(1); if ((int)$cookie->id_lang = 3) $currency = Currency::getCurrencyInstance(2); if ((int)$cookie->id_lang = 4) $currency = Currency::getCurrencyInstance(1); } if (is_object($currency) && $currency->id) $cookie->id_currency = (int)$currency->id; return $currency; Wenn der Benutzer mit einer deutschen IP raufkommt über /en/ wird ihm $ angeziegt und wenn man im Shop einstellte hat das deutsche IP's € angezeigt bekommen sollen wir beim zweiten Seitenaufruf € einstellte. Deswegen ist dieser Fix nicht die Optimale lösung aber besser als nichts. Das ganze würde sogar perfekt funktionieren wenn der Shop nach den IP's die richtige Sprache einstellen würde wenn man den shop ohne /de/ sprich /en/ aufrufen würde. Beste Grüße, Der Koch EDIT: Sorry hab was falsch verstanden/übersehen. Wenn man den Fix von eleazar einbaut und meinen Fix, solle alles so laufen wie gewünscht! eleazar's Fix: http://www.prestashop.com/forums/index.php?/topic/238885-geo-ip-geotargeting-bug-wahrung-sprache/page__view__findpost__p__1182788
  8. Ne klappt absolut nicht... ( mit cookie/cache lösen kenne ich mich extrem gut aus ) Wie gesagt an dieser stelle ist lang_id im cookie schon vorhanden. Das Problem ist diese function "Tools::setCurrency($this->context->cookie);" zu früh aufgerufen wird. An dieser stelle ist noch kein currency von geoip aus gesetzt worden. Mir ist aber was aufgefallen das im "Block currencies module" beim ersten Seitenaufruf die richtigen Variablen gesetzt sind aber nur in dem Ausklapp eumel. (Bild im Anhang, wie Währung in weißer Schrift läuftet ist selected) <p> <input type="hidden" name="id_currency" id="id_currency" value=""/> <input type="hidden" name="SubmitCurrency" value="" /> {l s='Currency' mod='blockcurrencies'} : {$blockcurrencies_sign} </p> <ul id="first-currencies" class="currencies_ul"> {foreach from=$currencies key=k item=f_currency} <li {if $cookie->id_currency == $f_currency.id_currency}class="selected"{/if}> <a href="javascript:setCurrency({$f_currency.id_currency});" title="{$f_currency.name}">{$f_currency.sign}</a> </li> {/foreach} </ul> Wobei die Zeile " <li {if $cookie->id_currency == $f_currency.id_currency}class="selected"{/if}>" sehr instessant ist. Das Sagt uns eigentlich das die "setCurrency" Function an der falschen stelle aufgerufen wir und der Fix sehr einfach ist. Kann das jemand mal an die Programmierer Weiterleiten? Für mich ist es sehr schwer jetzt die richtige stelle im code zu finden, dafür muss ich den ganzen Code lesen :S
  9. Was soll das den bringen? an dieser stelle haben wir ja im cookie die id_lang...
  10. Ne leider nicht, hab den cookie an diese stelle mit print_r ausgegeben an der stelle ist nur die [id_lang] im cookie und das ist das problem... oder sogar der bug...
  11. Hab den fehler gefunden. Tools.php -> Line 437: $currency = Currency::getCurrencyInstance(Configuration::get('PS_CURRENCY_DEFAULT')); Diese Zeile sorg dafür das beim ersten aufrufen der der Seite die standard Währung des Shop benutzt wir und nicht die, die für das Land eingestellt wurde. Da ich erst seit paar Tagen mit PS arbeite kenne ich den Code noch nicht so gut aber irgendwo in der Currency.php liegt die lösung... kann jemand helfen? Achja das man beim Sprachwechsel die Währung automatsch mitwechselt ist eigentlich unnötig geworden da man die Währung für jedes Land festlegt und der Kunde hat schon seine richtige Währung. Wenn er jetzt eine andere Währung will kann er das auch selbst ändern.
  12. Danke eleazar! Das war der entscheidende Hinweis nach dem ich gesucht habe mit den zusätzlichen infos von Trip könnte es was werden. Ich werde mich mal dran versuchen und berichte ob es erfolg gab. Noch mal für Protokoll, ich hatte doch recht es ist ein Bug. P.S. bin auf der PS 1.5.4, ist das erste mal das ich mit diesem CMS arbeite.
  13. Ich bin übrigens Webdeveloper Hab auch ganz genau eine Ahnung was ich da mache und habe auch langsam die Logik des System verstanden. So um jetzt nochmal das hier richtig darzustellen, Geotargeting ist vielleicht nicht die funktion die dafür sorgt, aber durch die eingeladene GeoIP Datei für Geotargeting wird dafür gesorgt das per IP die richtige Währung für das richtige Land eingestellt wird. (Welche ich natürlich vorher vorgegeben habe in "Lokalisierung > Länder") Hab das gerade über Proxies und verschiedene Browser Spracheinstellungen auf Herz und Nieren getestet. Es wird 100% über Geo-IP die richtige Währung ermittelt. Naja ich versuche es mal im englischen Forum vielleicht lesen da andere Programmierer mit.
  14. Auch egal darum gehts auch nicht wie er es im endeffect macht... den er macht es. Das Problem liegt darin das er es nicht beim ersten Seitenaufruf macht sondern erst beim 2ten und da muss ein Bug sein...
  15. Danke für die Antwort. Wieso wird dan trotzdem automatisch die Währung geändert wenn man mit einer deutschen IP den Shop besucht? Ich hab das mal gecheckt und Webproxy aus verschieden ländern den Shop aufgerufen, nur bei den deutschen Proxies ist die Währung umgesprungen. Wenn das nicht über Geotargeting läuft dann muss es ja über Browser daten laufen (was das mit den Proxies nicht erklärt). Wo findet man im Code diese stelle?
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More