Forum FAQForum FAQSearchSearch MemberlistMemberlist Forum ignore listForum ignore list RegisterRegister ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in
cms i pluginovi

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Server-side
View previous topic :: View next topic  
Author Message
tic984



Joined: 07 Sep 2003
Posts: 189
Location: Delnice

PostPosted: 11.12.2005 21:24    Post subject: cms i pluginovi Add user to your forum ignore list Reply with quote

kako napravit pugin funkcionalnost u nekj php aplikaciji?

bo, nemam bas ideje kak to izvest a volio bi se malo pograt s time....



pa ako neko ima neke knjige linkove tekstove savjete kaj god zamolio bih za pomoc i savjete Smile))


pozdrav

_________________
ah..
Back to top
View user's profile Send private message Visit poster's website
Sulien



Joined: 04 Jan 2004
Posts: 2905
Location: Zagreb

PostPosted: 11.12.2005 22:35    Post subject: Add user to your forum ignore list Reply with quote

vidiš, i mene to zanima Surprised

razmišljao sam da imam direktorij kojeg app skenira za fajlove (ili dirove) koji definiraju plugin, proparsa fajlove i onda učita plugin code na temelju informacija u fajlu

u svakom slučaju trebaš dok pišeš app istovremeno razvijati dobar plugin API, da ga code u pluginu može konzumirat Confused
Back to top
View user's profile Send private message Send e-mail Visit poster's website
carr



Joined: 13 Nov 2003
Posts: 1397
Location: Karlovac

PostPosted: 12.12.2005 01:53    Post subject: Add user to your forum ignore list Reply with quote

iz mog osobnog iskustva:
prije razvoja samog sustava i pluginova za njega moras dobro definirati ulazno-izlazne parametre sustava.
dakle zapravo podatke koje dobiva od same aplikacije koji mu trebaju, i ono sto na neki nacin vraca u aplikaciju.

kojim kanalima ce to vracati - tj.kako je potpuno svejedno, os array, os globalne varijable, os da direktno nesto radi...

takodjer mozes te pluginove sve trpati u folder "plugins", pa kao sto suljo kaze - skenirati taj folder..
druga solucija da ih stavis sve u bazu, pa negdje zapisujes path do njih i naziv...to ti daje vecu fleksibilnost managementa, ali opet imas vise koda za pisati (za samu administraciju).
takodjer mozes ih potrpati u neki "plugins.php" fajl u neki array, pa onda browsas po array-u tom....

ja sam bio koristio ovu drugu soluciju, do mjere kad mi je nije bila dovoljno fleksibilna, pa sam sve prebacio u bazu.

zapravo stvar implementacije je kako tebi pase...ono sto je bitno da dobro-debelo mislis unaprijed, da ti se ne dogodi da razvijes sustav, 5-6 pluginova za njega i onda se sjetis mijenjati nesto u nacinu kako aplikacija komunicira s pluginovima pa ti se razjebe i ovo sve prije. dakle ostavi su lufta i za buducnost.

ako ti treba pomoc oko nekog konkretno problema, mislim da je dobro da njega izlozis pa ti sigurno moze netko tu pomoc...

_________________
Bolje biti malo lud, nego malo pametan.
Back to top
View user's profile Send private message Visit poster's website
retro_one



Joined: 16 Sep 2003
Posts: 880
Location: DUBRAVA.

PostPosted: 12.12.2005 10:06    Post subject: Add user to your forum ignore list Reply with quote

hm...ja sam isto o tome razmisljao pa sam dosao do ovog zakljucka:

1. prvi tip pluginova je onaj koji recimo zamjenjuje neki 'widget', pa ako imas classu za form elemente, onda mozes napraviti da ti prilikom pozivanja metode za neki element provjerava da li postoji neki plugin koji zamjenjuje taj element... to je ok za pizdarije tipa rich text editori i slicno

2. event driven moduli...napravis nekakav event registry kroz koji trigeras razlicite evente...tipa onUpdate, ili onInsert...to je ok za pluginove tipa smartypants i slicne tako da ih ne moras rucno pozivati...s tim da onda moras i definirati prioritet po kojem ce ti se trigerati pluginovi

mislim da uz ova dva tipa pluginova mozes pokriti skoro sve potrebe...

edit: sad sam shvatio Idea Very Happy da i prvi tip mozes napraviti kao event tip pluginove...samo trebas trigerat event kad kreiras neki element...

Last edited by retro_one on 12.12.2005 10:45; edited 2 times in total

_________________
Just your average eccentric programmer.
Back to top
View user's profile Send private message
retro_one



Joined: 16 Sep 2003
Posts: 880
Location: DUBRAVA.

PostPosted: 12.12.2005 10:08    Post subject: Add user to your forum ignore list Reply with quote

carr wrote:
iz mog osobnog iskustva:
prije razvoja samog sustava i pluginova za njega moras dobro definirati ulazno-izlazne parametre sustava.
dakle zapravo podatke koje dobiva od same aplikacije koji mu trebaju, i ono sto na neki nacin vraca u aplikaciju.


mislim da je tu najpametnije napraviti da plugin prima array sa parametrima...onda mozes imati isti poziv za sve pluginove

_________________
Just your average eccentric programmer.
Back to top
View user's profile Send private message
/dev/null



Joined: 22 Dec 2004
Posts: 144

PostPosted: 12.12.2005 12:06    Post subject: Add user to your forum ignore list Reply with quote

Bok super drugari...

ja sam radio jedan sistem sa pluginovima (CMS je u pitanju), doduše radi nedostatka finansija nikada nije završen ali mogu sa vama da podjelim malo iskustva.

Pravljenje plugin sistema u nekoj PHP aplikaciji (kao i u drugim aplikacijama) jako lako može da bude rupa bez dna. Kao prvo morate sebi da postavite granice dokle plugin može da se "urije " ili vam integriše u aplikacju. To je uglavnom i osnovno.
Drugo, morate da definišete neke osnovne parametere vezane za plugin, da aplikacija može da pročita neke informacije o svemu tome. Ja sam naprimjer koristio tri niza u kojima sam čuvao informacije o fajlovima koji plugin koristi, informacijama o samom pluginu i treći kao pomoćini (za sve i svašta npr: SQL dump koji plugin zahtjeva u radu...). To znači izgleda ovako:

Code:

$plug_info = array (
"name" => "simple pool system",
"version" => "0.1",
"author" => " "
);


Same pluginove sam čuvao u posebnom folderu namjenjen samo za pluginove. U njemu su se nalazili podfolderi sa imenom plugina, a opet u njemu svi fajlovi sa mogućnošću kreiranja neograničenog broja drugih fajlova i foldera koji plugin može da koristi.

Da skratim, pošto sam na poslu...
U zavisnosti od aplikacije koju radite i potencijalnih pisača pluginova morate dobro da provjerite integritet plugina, njegovu ispravnost itd. Inače može se desiti da vam tehničku podršku zatrpaju potencijalni pisači pluginova kojima je plugin sjebao ostatak aplikacije, podatke u bazi itd.

Ja nisam baš previše razrađivao svoj model pluginova ali kako PHP aplikacije nisu baš obdarene nekim ekstra plugin sistemima. Ja sam pisao par komada za smary, i rade Smile a njihov sistem radi preko imena fajlova u kojem se nalaze funkcije tačno određenog imena (nije baš inspirativno).

Ako ima potencijala i ljudi s vremenom možemo zajedno teorijski da razvijemo jedan model pluginova evo u ovoj temi... nadam se da sam nekom pomogao.

(ak ima grešaka u kucanju, jbg)
Back to top
View user's profile Send private message
retro_one



Joined: 16 Sep 2003
Posts: 880
Location: DUBRAVA.

PostPosted: 12.12.2005 12:10    Post subject: Add user to your forum ignore list Reply with quote

@dev:

hm...cini mi se da ti pricas o modulima....plugin bi u ovomn kontekstu bio komad koda koji se moze pozivati iz modula. Tj. plugin vidim u smislu prosirivanja/dodavanja featura

_________________
Just your average eccentric programmer.
Back to top
View user's profile Send private message
/dev/null



Joined: 22 Dec 2004
Posts: 144

PostPosted: 12.12.2005 14:00    Post subject: Add user to your forum ignore list Reply with quote

Quote:

From Wikipedia, the free encyclopedia.
Jump to: navigation, search

A plugin (or plug-in) is a computer program that can, or must, interact with another program to provide a certain, usually very specific, function. Typical examples are plugins to display specific graphic formats (e.g., SVG if the browser doesn't support this format natively), to play multimedia files, to encrypt/decrypt email (e.g., PGP), or to filter images in graphic programs. The main program (a web browser or an email client, for example) provides a way for plugins to register themselves with the program, and a protocol by which data is exchanged with plugins.

more


jbg, plugin jednostavno prosiruje opcije aplikacije, e sada može nadograđivati već postojeće ili dodati potpuno nove.
Back to top
View user's profile Send private message
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Server-side All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group