VirtuaMart i symbol waluty
Wyniki 1 do 10 z 10

Temat: VirtuaMart i symbol waluty

  1. #1
    Nowicjusz
    Dołączył
    12-04-2006
    Wpisy
    11
    Punkty
    12

    Domyślny VirtuaMart i symbol waluty

    O ile wyświetlanie polskich liter w menu administratora "załatwia" usunięcie linii w administrator/components/com_virtuemart/header.php

    $menu_code = htmlentities( $menu_code, ENT_NOQUOTES );
    lub
    //$menu_code = htmlentities( $menu_code, ENT_NOQUOTES );
    (to znalazłem na forum)

    to w opcji Sklep -> Edytuj sklep jest pole symbol waluty (Currency symbol), w którym po wpisaniu "zł" i zapisaniu zmian, w bazie zamienia to na "z³"
    i od strony frontowej wyświetla jako "z3" (3 w indeksie górnym ofkors )
    Tabelą przechowującą symbol waluty jest "vm_vendor" i znalazłem, że funkcja odpowiedzialna za zmianę znajduje się w pliku:
    administrator/components/com_virtuemart/classes/ps_vendor.php

    function checkCurrencySymbol( $symbol, $convertToEntity=true ) {

    $symbol = str_replace('&', '&', $symbol );

    if( substr( $symbol, 0, 1) == '&' && substr( $symbol, strlen($symbol)-1, 1 ) == ';') {
    return $symbol;
    }
    else {
    if( $convertToEntity ) {
    $symbol = htmlentities( $symbol, ENT_QUOTES, 'utf-8' );

    if( substr( $symbol, 0, 1) == '&' && substr( $symbol, strlen($symbol)-1, 1 ) == ';') {
    return $symbol;
    }
    // Sometimes htmlentities() doesn't return a valid HTML Entity
    switch( ord( $symbol ) ) {
    case 128:
    case 63:
    $symbol = '€';
    break;
    }

    }
    }

    return $symbol;
    }
    Wykasowanie (lub "skomentowanie") linii:
    //$symbol = htmlentities( $symbol, ENT_QUOTES, 'utf-8' );
    daje pożądany efekt. W bazie zapisuje prawidłowo "zł" i wyświetla również prawidłowo od strony frontowej.
    Pytanie do mądrzejszych: czy taka zmiana w tej funkcji nie spowoduje błędów w innym miejscu? Nie jestem biegły w PHP ale domyślam się, że taka konwersja miała czemuś służyć. Względy bezpieczeństwa? Coś innego?
    Jeżeli nie wolno zmieniać tej funkcji to jak spowodować prawidłowe wyświetlanie symbolu "zł"?

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #2
    Senior zwiastun awatar
    Dołączył
    20-09-2005
    Wpisy
    27 315
    Punkty
    1142

    Domyślny

    ciekaw, jak Ci się euro wyświetla, jak się wyświetlają funty

    I na marginesie... Jaką masz wersję joomla i skąd?
    Korzystaj i ciesz się!
    ===============
    Zwiastun
    Biblioteka Elektronicznej Dokumentacji Joomla!

  4. #3
    Nowicjusz
    Dołączył
    12-04-2006
    Wpisy
    11
    Punkty
    12

    Domyślny

    ciekawe... symbol "€" i "£" zamienia nadal na "&#8364" i "£". Od strony frontowej symbole wyświetla poprawnie.
    Tylko "zł" zapisuje w tabeli bez zmian. A o to mi chodziło.

    Joomla 1.08 PL - z tej strony
    VM 1.04 - ze strony VM

    Nadal nie wiem czy czegoś nie skopałem (pomimo tego, że zamierzony efekt osiągnąłem) zmieniając tą funkcję.

  5. #4
    Debiutant
    Dołączył
    19-04-2006
    Wpisy
    2
    Punkty
    10

    Domyślny

    wpisz zamiast zł
    PLN i po klopocie

  6. #5
    Nowicjusz
    Dołączył
    12-04-2006
    Wpisy
    11
    Punkty
    12

    Domyślny

    Nie wiem czy zauważyłeś, że po wpisaniu "PLN" nadal będzie wyświetlać "zł" nieprawidłowo. Wogóle nie będzie wyświetlać "zł".
    Pytałem o prawidłowość rozwiązania problemu z "zł", a nie co wpisać zamiast.

  7. #6
    Bywalec
    Dołączył
    21-03-2006
    Wpisy
    141
    Punkty
    22

    Domyślny

    Panowie wystarczyło wpisać w edycji sklepu/ sklep w miejsce waluty zł w kodzie utf (niestety jak wpisze na forum to sie dekoduje na polskie znaki wiec moge komus na maila przesłać lub w pliku txt, jaki ma byc kod Taka zmiana wyświetla poprawnie na stronie Polskie Złote , juz jakis czas temu to zmieniłem u siebie.
    Ostanio edytowane przez bruno : 25-04-2006 22:27

  8. #7
    Nowicjusz
    Dołączył
    12-04-2006
    Wpisy
    11
    Punkty
    12

    Domyślny

    No niby tak. Tyle, że ja próbuję to wszystko postawić na kodowaniu 8859-2.
    Mój błąd. Zapomniałem to napisać w pierwszym poście.

  9. #8
    Bywalec
    Dołączył
    21-03-2006
    Wpisy
    141
    Punkty
    22

    Domyślny

    po co gmatwac, jak wejdzie wersja 1.05 i poprawi to soren

    Ja mam wiekszy problem i nie wiem jak go rozwiac. Dodałem towar metoda csv i nie da sie go za chiny umiescic na sklepie zeby byl widoczny jak biore lista produktow wysweitla sie 14 sztuk ktore sa aktualnie na sklepie, dopiero po kliknieciu "with proce modyfied" pokazuja sie dalsze 3 ktore to nawte jak dodam do kategori ktora jest aktywna nie da sie ich wyswietlic, patrzylem w bazie maja wpisane wszystko, cene, kod, zdjecie, czas. Nie wiem co za piorun. Najsmieszniejsze jest to że mialem część towaru tzn. testowa baze te młotki, grabki widoczne i teraz wyswietla sie tylko czes asortymentu bez np. drabinek Druga sprawa na sklepie w kategorii w nawiasie wysweitla sie ilosc np 3 a widoczne sa tylko 2 towary . help me

  10. #9
    Debiutant
    Dołączył
    13-06-2006
    Wpisy
    2
    Punkty
    10

    Domyślny

    A wiecie może co zrobić, żeby symbol waluty pokazywał się po cenie?
    Tzn. żeby było np. "10.00 zł", a nie "zł10.00"? Mam VM 1.05.

    Z polskimi literami sobie poradziłem, wielkie dzięki za wskazówki

  11. #10
    Bywalec
    Dołączył
    21-03-2006
    Wpisy
    141
    Punkty
    22

    Domyślny

    Prościzna wejdz w edycja sklepu i na 1 stronie masz negative symbol i positiv symbol tam masz zdefiniowane rozne ustawienia wyswietlania cen

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •