Event Espresso Lite

Zvolené téma neobsahuje zatím 1žádnou odpověď. Do diskuze (3 účastníci) se naposledy zapojil uživatel  admin a poslední změna je stará 8 let, 9 měsíců.

Aktuálně je na stránce zobrazeno 11 příspěvků - 1. až 11. (z celkem 11)
  • Autor
    Příspěvky
  • #940

    mical
    Participant
    Web

    Dobrý den,

    po instalaci Event Espresso Lite si pridam kategorie udalosti. Pokud chci vsak kategorii smazat, vypise: Fatal error: Call to a member function query() on a non-object in /www/wp-content/plugins/advanced-events-registration/includes/admin_event_categories.php on line 14

    Navic u kategorii nefunguje cestina hacky a carky, u udalosti atd ano.

    Nevite nekdo, co s tim? Popripade lepsi plugin na events popripade i s cestinou?

    Diky za rady, Michal

    #8125

    admin
    Keymaster
    Web

    Máte pravdu, plugin Event Espresso Lite – Event Registration and Management jsem zkoušel a objevil jsem přesně ty samé chyby.

    Trochu jsem se díval na kód pluginu a problém spočívá v následujících bodech:

    1) Problém s mazáním rubriky je patrně způsoben chybějící deklarací globální proměnné $wpdb. V souboru pluginu advanced-events-registration/includes/admin-event-categories.php to můžete opravit tak, že na osmý řádek před kód

    if($_POST){

    vložíte ještě

    global $wpdb;

    2) Problém s českými znaky je zase způsoben použitím funkce htmlentities2(), která asi defaultně nepodporuje kódování UTF-8.

    Ve stejném souboru najděte kód

    $category_desc= htmlentities2($_REQUEST);

    a upravte ho následujícím způsobem

    $category_desc= htmlentities($_REQUEST, ENT_QUOTES, 'UTF-8' );

    Pozor, je to tam dvakrát (jednou pro přidání události a jednou pro úpravu), takže to musíte upravit na dvou místech.

    Po těchto úpravách už by mělo vše v pořádku fungovat. Napsal jsem to i autorům pluginu, takže to třeba časem opraví. I když se asi spíše soustředí na prémiovou (placenou) verzi pluginu (cca 60 USD). Nemám s ní zkušenosti, ale možná by stála za zvážení. I když samotný plugin není asi navržen zrovna ideálně…

    Pluginů pro správu událostí je mnoho, ale dost jich je placených a mnoho již zastaralých. Často také neumí přesně tu funkci, kterou bysme zrovna potřebovali. Zkusíme ale připravit nějaký aktuální přehled nejlepších pluginů…

    #8126

    mical
    Participant
    Web

    Děkuji za reakci, na odstranění problému s hlášenou chybou jsem použil funkci z jiného souboru a také funguje.

    Za tu češtinu děkuji!! Jen je ještě problém při odesílání automatického emailu jako potvrzení o registraci do události. Email přijde také se špatným kódováním. Nejspíš to bude podobný problém?!

    #8127

    admin
    Keymaster
    Web

    Jakou funkci jste pro zajímavost použil?

    Ano, s emaily to bude něco podobného. Nezkoušel jsem to, ale vidím tam funkci html_entity_decode(), takže bych zkusil změnit (v souboru advanced-events-registration/event_regis.php) kód

    html_entity_decode( wpautop($email_body))

    na

    html_entity_decode( wpautop($email_body), ENT_QUOTES, 'UTF-8');

    Vyzkoušejte a dejte vědět. Jak tak ale celý plugin procházím, tak je vidět, že není zcela ideální, neumožňuje ani jednoduchý překlad do češtiny (není gettextován).

    #8128

    Lukenzi
    Participant

    Zdravím, chtěl jsem trošku přispět tak jsem zkoušel najít nějaké podobné pluginy, ale jak koukám tak to s nimi není teda vůbec lehké…

    Našel jsem 3 a všechny jsou reportovány na secunii, kvůli nějaké bezpečnostní chybě, naštěstí tady ten tam není :)

    #8129

    mical
    Participant
    Web

    Tu co je pouzita u registrace udalosti tusim…. $result = mysql_query($sql) or die(mysql_error());

    Ale ted jsem se tim zabyval a i po uprave souborů se mi cestina nevlozi… zkusim si s tim jeste pohrat, ale je to divne…

    Podivam se do databaze, jak se to tam uklada, jake kodovani atd a dam vedet.

    #8130

    mical
    Participant
    Web

    on je problem u categorie_desc ale i categorie_name… ale kdyz to upravim i tam, tak to stejne nejede… popis kategorie s cestinou uz jede

    #8131

    mical
    Participant
    Web

    tak ani ta cestina v odeslanem mailu nejede… ono se generuje do predmetu zpravy nazev kempu, ten se taky zobrazi spatne a zprava je taky ve spatnem formatu.

    Bude to asi na podrobnejsi rozbor.

    #8132

    admin
    Keymaster
    Web

    Raději mysql_query() nepoužívejte, lepší je využít třídu wpdb() a nadefinovat globální proměnnou. Už jenom tato ukázka bohužel něco naznačuje o autorovi pluginu…

    Pro název rubriky je třeba provést stejnou úpravu jako pro její popis. Ve stejném souboru pluginu advanced-events-registration/includes/admin-event-categories.php tedy najděte kód

    $category_name= htmlentities2($_REQUEST);

    a upravte ho následujícím způsobem

    $category_name= htmlentities($_REQUEST, ENT_QUOTES, 'UTF-8' );

    Pozor, opět je to na dvou místech – jednou pro vytvoření nové rubriky a podruhé pro její úpravy.

    A u emailu by mohlo ještě vadit špatné kódování, zkuste změnit (v souboru advanced-events-registration/event_regis.php) kód

    $headers .= "Content-Type: text/html; charset=ISO-8859-1rn";

    na kódování utf-8

    $headers .= "Content-Type: text/html; charset=utf-8rn";

    Uvidíme, třeba se ještě něco objeví. A nerozumím větě “do predmetu zpravy nazev kempu” – co je to kemp? Nic podobného tam nemám, možná vlastní překlad?

    #8133

    Lukenzi
    Participant

    Tak mi to nedalo a mrknul jsem na to a popravdě to vzdávám, v tom pluginu se prostě nevyznám.

    Napadlo mně ještě zkusit použít

    mb_internal_encoding("UTF-8");

    někde na začátku pluginu, tím by se “globálně” nastavilo kodovani i pro ostatní funkce které jsou v tom pluginu a které nejsou binárně bezpečné (substr atd…)

    Popřípadě zrovna u toho mejlu bych asi ty vstupní data zkusil ještě prohnat přes

    mb_convert_encoding($obsah_mejlu, "UTF-8", "ISO-8859-2");

    uvedený kód v předchozím příspěvku totiž (pokud mi nic neuteklo) nastaví do UTF-8 jen hlavičku mejlu, ale skutečná data která se mají vypisovat můžou přijít v jiném kodovani. Ale je to jen nápad, nezkoušel jsem to, možná je chyba úplně někde jinde…

    #8134

    admin
    Keymaster
    Web

    Nakonec to asi zůstává nedořešeno, ale všiml jsem si, že došlo k velké aktualizaci pluginu na verzi 3.x, která už výše uvedenými problémy netrpí. A celkově plugin vypadá docela dobře, doporučuji vyzkoušet…

    Pozor, plugin je v oficiálním adresáři pluginů uveden pod stejným názvem, ale jinou adresou: Event Espresso Lite – Event Registration and Management. Takže si dejte pozor, kterou verzi instalujete…

Aktuálně je na stránce zobrazeno 11 příspěvků - 1. až 11. (z celkem 11)

Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.