Időzóna: (GMT +1 óra) RSS - hozzászólások

Mykee fejlesztési naplója

Szerző
Üzenet
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 08:53    Hozzászólás témája:
Hozzászólás az előzmény idézésével

Mykee írta:

Viszont valami összefüggés lehet ezek között, mert volt, hogy csak hozzáadtam a usert (a services.yml fájlban is), erre egyszerűen megállt az egész, hibára futott.
Ahogy írtam, a services.yml fájlban szerepelni-e kell amiket használsz különben behal, de csak azoknak amiket használsz, tehát se több se kevesebb.

Mykee írta:

- az új tábla azért lett hozzáadva, mert az eredeti modban is önálló táblába kerültek a névnapok. Azért követtem a régi utat, hogy a kompatibilitás is megmaradjon, tehát akinek már van ilyen táblája, az megtarthassa, könnyebb legyen a frissítés 3.0.x-ről.
1. Nem számít, hogy ki és, hogy írta meg, ha valami rossz nem kell követni.
2. Semmi köze nincs a frissítéshez illetve a kompatibilitáshoz, egyszerűen hozzáadtál volna egy tábla eldobást azt kész
3. Képzeld el, ha minden kiterjesztés saját táblát hozna létre, feltelepítek 300 kiterjesztést és kreál nekem 300 új lehívást kicsit gáz.
4. Az az egy tábla nem teszi lehetővé, hogy akár több nyelvet felvegyünk.

Én úgy vélem még mindig a legjobb megoldás itt a nyelvi fájl használata.

ui: Ne azt nézd, hogy úgy is csak magyarok fogják ezt a kiterjesztést használni, úgy állj hozzá hogy minden körülmény közt megállja a helyét.

Biztonság semmi más

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 09:19    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Igazad van. :) Végülis dropolhatom a táblát, ezen tényleg nem múlik. :) Valójában pont a másik megoldásban hittem, hogy az a tiszta, ha az egy bővítmény saját táblákat használ. Viszont ha nyelvi fájl, akkor tömbbe kell konvertálni, és az alapján lekérni a napi dátumhoz tartozó napot. Viszont egy oldalbetöltésnél állandóan tömböt kérni nem ugyanakkora erőforrás, mintha a táblából kérném? (Vannak még fehér foltok a tudásomban).

A services.yml-ről: tényleg benne volt mindaz, amit átis adtam, mégsem ment. Egyszerűen beírtam pl. a helpert is a protected mode-ba, a construct argumentumba és a deklarációba, majd ezután a servicesbe, mégsem indult el. Háromszor ellenőriztem és semmi. Ha azt kivettem, akkor máris ment.De a userrel is ez volt, szóval ezért is gondolkodtam azon, hogy valamelyik összefügghet egy másikkal. Viszont végzek egy pucolást a napokban, és megnézem, hogy akkor mi történik, és legfeljebb kiadom 1.0.1-ként. A névnapost pedig újraírom úgy, hogy ne csak magyar sablonon jelenjen meg és persze nyelvi tömbből, ha az a jobb megoldás. :)

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 12:03    Hozzászólás témája:
Hozzászólás az előzmény idézésével

Mykee írta:

Viszont egy oldalbetöltésnél állandóan tömböt kérni nem ugyanakkora erőforrás, mintha a táblából kérném? (Vannak még fehér foltok a tudásomban).
Bizony, hogy nem.
A phpBB alap gyorsítótára is fájlokba gyűjti az adatokat és ebből hozza vissza.
Amennyiben lekapcsolod a phpBB gyorsítótárat igen is észrevehető a különbség, a nagy kiterjedésű weboldalaknál ez akár több másodperccel is lassíthatja az oldal betöltésének idejét.

Tehát a szerver a fájlokból jelentősen gyorsabban dolgoznak mint adatbázisból, továbbá így nem növelem az adatbázis méretét.

Figyelembe kell azt is venni, hogy sokan használnak ingyenes tárhelyeket, és az igen is limitálja az adatbázisok méretét, de még számos hátrányt tudnék írni miért is felesleges ennél a kiterjesztésnél az adatbázis használat.

Na most van időm átnézem tüzetesen a kiterjesztéseid :)

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 13:34    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Értem, akkor a Névnapot átdolgozom majd tömbös verzióba. Egy csavar lesz benne, a szökőnap, amit majd megpróbálok megfelelő módon átültetni, bár ha azt nézem, az a rész maradhat benne, max a forrást kell módosítani, a feldolgozót már kevésbé :) Köszönöm, hogy átnézed az extensionjeim! :)

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 14:58    Hozzászólás témája:
Hozzászólás az előzmény idézésével

Mykee írta:

Értem, akkor a Névnapot átdolgozom majd tömbös verzióba.
Nem sok melo csak át kell helyettesíteni a nyelvi fájlba.
Beírom a következő értékeket példaként:

Idézet:

(1, 1, 'Fruzsina, Bazil'),
(1, 2, 'Ábel, Alpár'),
(1, 3, 'Genovéva, Benjámin, Dzsenifer'),
(1, 4, 'Titusz, Leona'),
(1, 5, 'Simon'),
(1, 6, 'Boldizsár'),

Kód:


$lang = array_merge($lang, array(
   'MYKEE_NN_12' => array(
      0 => 'Ábel',
      1 => 'Alpár'
   ),
   'MYKEE_NN_13' => array(
      0 => 'Genovéva',
      1 => 'Benjámin',
      2 => 'Dzsenifer'
   ),
   'MYKEE_NN_14' => array(
      0 => 'Titusz',
      1 => 'Leona'
   ),
   'MYKEE_NN_15' => array(
      0 => 'Simon'
   ),
   'MYKEE_NN_16' => array(
      0 => 'Boldizsár'
   ),
));


Vedd figyelembe, hogy a névnap generálásnál a nyelvi érték használhat további új értékeket!

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 15:53    Hozzászólás témája:
Hozzászólás az előzmény idézésével
:D Köszönöm a mintát, viszont a könnyebb névnapbeillesztés miatt először arra gondoltam, hogy első tömbként a hónapot, második dimenziónak a napot tenném bele, a névnapokat pedig egyszerű szövegként, nem több dimenzióra bontva (már ha így engedi a nyelvi állományban), pl.

Kód:


$lang = array_merge($lang, array(
    'mykeenn_1' => array (
          1 => 'Fruzsina, Bazil',
          2 => 'Ábel, Alpár',
          3 => 'Genovéva, Benjámin, Dzsenifer',
          4 => 'Titusz, Leona',
          5 => 'Simon',
          6 => 'Boldizsár'
      ),
   ),
));


De így belegondolva igazad lehet az összevont tömbbel, tehát a kétjegyű megoldással. Hmmm... Tehát erre gondoltam, így talán az egyszerűbb:

Kód:


$lang = array_merge($lang, array(
   'MYKEE_NN_11' =>  'Fruzsina, Bazil',
   'MYKEE_NN_12' = 'Ábel, Alpár',
   'MYKEE_NN_13' =>  'Genovéva, Benjámin, Dzsenifer',
   'MYKEE_NN_14' =>'Titusz, Leona',
   'MYKEE_NN_15' => 'Simon',
   'MYKEE_NN_16' => 'Boldizsár',
));


No majd kiderül, mert a szökőnap a sarkalatos pont, ahol másképp kell megoldani a napokat, tolva lesznek.

Az utolsó mondatod viszont sajnos nem értem. Milyen további értéke lenne egy nyelvi értéknek?

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 16:48    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Azért írtam al-tömbe a neveket, hogy ha valaki játszani akar a formázással akkor lehetséges legyen, mivel már több oldalon láttam, hogy a különálló neveket más színnel emelték ki.

Ha úgy gondolod, hogy számodra bonyolult a tömb kezelése akkor használd azt amit másodjára írtál be.
Megjegyzés: A nyelvi kulcs mindig nagybetű :wink:

A szökőévnek a nyelvi fájlhoz nincs köze az csupán a php-hoz, de szerintem erre van funkció a phpBB-be ha minden igaz.

Az utolsó megjegyzésem amit nem értettél az az hogy pl

Kód:

   'MYKEE_NN_15' => array(
      0 => 'Simon'
   ),


Ha ez egyszer módosul erre

Kód:

   'MYKEE_NN_15' => array(
      0 => 'Simon',
      1 => 'kispista'
   ),


akkor a kispistát is kitudja jelezni amúgy a tömb lekezelése egyszerű
elsőnek megnézed, hogy mennyi sorból áll és ez alapján tekered le for ciklussal.

pl:

Kód:

$kiiras = '';
$nevek = count($user->lang['MYKEE_NN_15']);

for ($i=0; $i<$nevek;$i++)
{
   $kiirás .= (($kiiras == '') ? '' : ', ') . $user->lang['MYKEE_NN_15'][$i];
}


A hónap és a nap szintén nem nagy cucc a nyelvi kulcsot úgy adod meg pl:

Kód:

$user->lang['MYKEE_NN_15']

módosul erre például

Kód:

$user->lang["MYKEE_NN_{$honap}{$nap}"]

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 17:05    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Köszönöm ismét! :) A Disqus kódját átrágva ezen is próbálok majd egyszerűsíteni, illetve átírni. Aztán kiteszem a következőt előbb ide, mint a véglegesbe. De a Disqus kódodon sokat tanultam.

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 17:30    Hozzászólás témája:
Hozzászólás az előzmény idézésével

Mykee írta:

Köszönöm ismét! :) A Disqus kódját átrágva ezen is próbálok majd egyszerűsíteni, illetve átírni. Aztán kiteszem a következőt előbb ide, mint a véglegesbe. De a Disqus kódodon sokat tanultam.
Akkor majd meglesem az új névnap kiterjesztésed és kiderül :lol:

Ha fejlődsz az csak jó :wink:

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 17:55    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Mindjárt megvagyok a Disqus-szal, ide kiteszem a linket és ha azt mondod, oké, akkor kerül ki a topikjába. :) Igazából a módosításaidhoz nem nyúltam, de amit beszéltünk, azt kiegészítettem.

Hmmm.. közben egy izgalmasabb dologba ütköztem: ha alapból tiltom a pipát a felületen, akkor a felületváltás jQueryvel lett megoldva, szóval még ezt is le kell kezelnem. :) No egy kör és megvagyok, már ha a jQueryt meg tudom címezni a kód közepén, mert az Includejs szerintem nem illeszthető be eventbe... Legalábbis próbáltam egy másik extensionnél, de akkor ott hibát dobott.

Felhasználó profiljának megtekintése Privát üzenet küldése
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 18:55    Hozzászólás témája:
Hozzászólás az előzmény idézésével
No kitettem ide az 1.0.1 verziót, kissé több leírással, plusz az admin oldalon a pipa elrejtésével, ha épp nem fórum van kiválasztva, illetve az adatbázis sem települ már úgy, hogy a kategóriáknál és linkeknél bekapcsolva legyen. Plusz verzióellenőrzés. :)

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 20:22    Hozzászólás témája:
Hozzászólás az előzmény idézésével

Mykee írta:

No kitettem ide az 1.0.1 verziót, kissé több leírással, plusz az admin oldalon a pipa elrejtésével, ha épp nem fórum van kiválasztva, illetve az adatbázis sem települ már úgy, hogy a kategóriáknál és linkeknél bekapcsolva legyen. Plusz verzióellenőrzés. :)
Na pont erre gondoltam szépen megoldottad :lol:

Viszont így is találtam egy hibát :lol:

Kód:

            $sql = "UPDATE ".$this->table_prefix."forums SET disqus_enable = 1 WHERE forum_type = 1";
            $this->db->sql_query($sql);


cseréld le erre

Kód:

      $sql = 'UPDATE ' . $this->table_prefix . 'forums
            SET disqus_enable = 1
            WHERE forum_type = ' . FORUM_POST;

      $this->db->sql_query($sql);

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 20:53    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Köszönöm, javítottam és kitettem újra :) Pl. ilyen dolog az, ami még fehér folt, hogy ne az 1-es típust hívjam be, hanem a rendszerváltozót...

Viszont a névnapos is elvileg működik, de a migration cuccal nem jutok zöldágra. Készítettem egy nevnap_1_0_1.php állományt, aminek ez a tartalma:

Kód:


namespace mykee\nevnap\migrations;

class nevnap_1_0_1 extends \phpbb\db\migration\migration
{
    public function effectively_installed()
    {
        return $this->db_tools->sql_table_exists($this->table_prefix . 'nevnapok');
    }
   
    static public function depends_on()
     {
        return array('\mykee\nevnap\migrations\nevnap_1_0_0');
     }

    public function update_schema()
        {
           return array(
                'drop_tables'        => array(
                            $this->table_prefix . 'nevnapok',
                ),
            );
   }
}


Viszont nem akarja törölni a névnapos táblát, pedig a schema részt használom, nem a datát. Másrészt a revert_schema funkcióra már ne lesz szükségem, hiszen az 1.0.1 után nem használok táblát, tehát nekem elég, ha telepítéskor törli, ha van ilyen tábla. Vagy írjak rá külön függvényt?

Előre jelzem: végül maradtam az egyszerűbb tömbös megoldásnál, nem dimenzionáltam ketté. Egyrészt mert egy napon lévő neveket valahogy nem látom értelme agyonszínezni, mert lassan betűnként is megtehetné :) Másrészt a szökőévet Marcee nagyon jól megoldotta és egyszerűen, a feltételben ezt is vizsgálja. Viszont gondoltam a többnyelvűségre: ahol nincs névnap tömb a nyelvi fájlban, ott nem jelenik meg :) Feleslegesnek láttam az angol fájlt feltölteni magyar névnapokkal.
Mondjuk a korábbi beírásod alapján az effectively_installed() sem kell...

Próbálkozom ezzel a migrations fájllal, már úgy is, hogy letöröltem az 1.0.0-ást és kivettem a rá utaló sort, de semmi. update_data és update_schema sem segített, pedig úgy szeretném telepíteni a cuccot, hogy az Adatok törlésére ne kelljen kattintani (tehát amikor inaktív a mod), hiszen ha addon adatokat kell betenni, akkor (a régi adatok megtartásával) hogyan lehetne feltenni? :? Szóval nem fut rá a cucc a táblatörlésre...

Felhasználó profiljának megtekintése Privát üzenet küldése
KillBill
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2007.03.26. Hétfő 5:42
Hozzászólások: 2258
Hozzászólás Elküldve: 2014.11.28. 21:30    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Tehát mivel ezt a MOD-ot valószínüleg többen is használhatják ezért amit kiadtál 1.0.0 kiterjesztést abban ez kell

Kód:

   public function effectively_installed()
   {
      return $this->db_tools->sql_table_exists($this->table_prefix . 'nevnapok');
   }

   static public function depends_on()
   {
      return array('\phpbb\db\migration\data\v310\extensions');
   }


az új verzió pl nevnap_1_0_1 telepítő fájljába meg ez

Kód:

   static public function depends_on()
   {
      return array('\mykee\nevnap\migrations\nevnap_1_0_0');
   }


tehát meg kell adni az első telepítő fájl elérési útját utána felvenni mit is szeretnél

pl:

Kód:

    public function update_schema()
        {
      return array(
         'drop_tables' => array(
            $this->table_prefix . 'nevnapok'
         )
      );
   }


vagy már átírod az 1.0.0 verziót, hogy ott dobja el a táblát és nem adsz ki újabb verziót, hisz egy kiterjesztést igen egyszerű eltávolítani azt újra telepíteni, főleg egy ilyen kicsi kiterjesztésnél.
A döntés a te kezedben van :)

Felhasználó profiljának megtekintése Privát üzenet küldése Felhasználó weblapjának megtekintése MSN Messenger
Mykee
Gyakorlott phpBB-s
Gyakorlott phpBB-s
Avatar

Csatlakozott: 2005.08.29. Hétfő 1:00
Hozzászólások: 814
Hozzászólás Elküldve: 2014.11.28. 21:51    Hozzászólás témája:
Hozzászólás az előzmény idézésével
Végül maradtam az 1.0.1-nél, mert beletettem ebbe is a verzióellenőrzést és persze átírtam a belső részét. Viszont majd kiírom, hogy kell az adattörlés is a telepítés előtt, mert máskülönben ott marad a tábla, ha csak a fájl cserét végzi el valaki és úgy telepíti. Ilyenkor úgy látom, nem fut rá a migrations cuccokra a telepítő. :( Ez azért gubancos lehet, ha valakinél mondjuk egy ilyen tábladobás vagy csere lesz és újra állíthat be mindent... :roll:

Kitettem ide a Névnap 1.0.1-et, úgy láttam, hogy ezen talán már nem kell sokat optimalizálni. :)

Felhasználó profiljának megtekintése Privát üzenet küldése
Hozzászólások megtekintése:  

Időzóna: (GMT +1 óra) RSS - hozzászólások
Nem készíthetsz új témákat ebben a fórumban.
Nem válaszolhatsz egy témára ebben a fórumban.
Nem módosíthatod a hozzászólásaidat a fórumban.
Nem törölheted a hozzászólásaidat a fórumban.
Nem szavazhatsz ebben fórumban.

Hirdetés
Hirdetés