[geeklog-devel] Installing Geeklog affects plugins that install blocks
Rouslan Placella
rouslan at placella.com
Fri Sep 23 06:44:39 EDT 2011
On Thu, 2011-09-22 at 21:27 -0400, Tom wrote:
> To answer one of my own questions after looking at PLG_getBlocks more and
> the wiki (http://wiki.geeklog.net/index.php/Dynamic_Blocks) as well the
> search rank plugin I think for most cases plugins can use
> plugin_getBlocks_xxx because you can specify the order as well. This means
> plugins shouldn't really be playing with the blocks table. (unless I am
> missing something here)
The problem with dynamic blocks is that there is zero support for
"group" privileges...
> I will update the polls plugin to use a dynamic block. Looking at the forum
> plugin it's phpblock_forum_newposts block could work as a dynamic but the
> forum menu block will still have problems since it needs to display only
> when the forum is displayed. This information doesn't get passed to the api
> and I am not really sure at the moment the best way to do this (ideas???)
>
> Ben ... Your Paypal plugin uses blocks I believe, if they are not currently
> dynamic would you have any problems converting them to dynamic or have I
> overlooked something?
>
> Tom
>
>
>
> -----Original Message-----
> From: geeklog-devel-bounces at lists.geeklog.net
> [mailto:geeklog-devel-bounces at lists.geeklog.net] On Behalf Of Tom
> Sent: September-22-11 8:50 PM
> To: 'Geeklog Development'
> Subject: Re: [geeklog-devel] Installing Geeklog affects plugins that install
> blocks
>
> >> I don't really have a good idea for that case. I guess we could leave
> >> the
> tid in and call it "deprecated" or unused, but that's a bit messy. The other
> alternative is to accept breakage and >> tell the plugin authors to update
> their plugins.
>
> Those where my thoughts as well. I think it would be best to break the
> plugins. I will give plugin authors as much notice as possible once the api
> and table structure is defined.
>
> >> Do we need plugin API functions or would it be enough to add an entry
> >> in
> the structure that plugin_autoinstall_xxx returns?
>
> It would be safer if we do so just in case of changes to the table in the
> future and then we most likely will not have to break the plugin. We
> already have plugin_getBlocks_xxx which allows plugins to specify a block to
> appear on a side and for a certain topic. I guess the main problem with it
> is you cannot specify an order. Maybe we can just expand this api in some
> way?
>
> I am going to have to create some plugin api for topics anyways so I will
> see what I come up with for blocks and get back to everyone. (unless anyone
> has any other ideas)
>
> >> Do you need to be able to add a block at runtime?
>
> Probably not, I guess it depends if plugins delete blocks not in use or just
> disables them.
>
> >> A naming convention could be one solution (while we're breaking
> compatibility anyway) or an additional entry in the blocks table.
>
> Are you thinking of the naming convention for the Block Name? In regards to
> my other email should the block name be unique or not?
>
> Tom
>
> -----Original Message-----
> From: geeklog-devel-bounces at lists.geeklog.net
> [mailto:geeklog-devel-bounces at lists.geeklog.net] On Behalf Of Dirk Haun
> Sent: September-22-11 2:59 PM
> To: Geeklog Development
> Subject: Re: [geeklog-devel] Installing Geeklog affects plugins that install
> blocks
>
> Tom wrote:
>
> > Currently when a plugin wants to add a block it just goes ahead and
> accesses the block table directly. Well as of 1.9.0 the block table has
> changed since it doesn't need the tid column (for topics) any more. This
> breaks installing plugins that add blocks like polls and the forum.
> >
> > While I can go ahead and fix the polls plugin, 3rd party plugins are
> another matter. What should we do here?
>
> I don't really have a good idea for that case. I guess we could leave the
> tid in and call it "deprecated" or unused, but that's a bit messy. The other
> alternative is to accept breakage and tell the plugin authors to update
> their plugins.
>
>
> > Also to fix this problem in the future (this doesn't help with the
> > issue
> above) I propose adding some functions to the plugins library that will
> handle adding, deleting and updating (enabling, disabling, etc.) blocks.
>
> Do we need plugin API functions or would it be enough to add an entry in the
> structure that plugin_autoinstall_xxx returns? Do you need to be able to add
> a block at runtime?
>
>
> > Should we attempt to tidy this up and what would the best way be?
>
> It would be nice if Geeklog could take care of removing the blocks when a
> plugin is uninstalled. We would need a way to know which block belongs to
> which plugin. A naming convention could be one solution (while we're
> breaking compatibility anyway) or an additional entry in the blocks table.
>
> bye, Dirk
>
> _______________________________________________
> geeklog-devel mailing list
> geeklog-devel at lists.geeklog.net
> http://eight.pairlist.net/mailman/listinfo/geeklog-devel
>
> _______________________________________________
> geeklog-devel mailing list
> geeklog-devel at lists.geeklog.net
> http://eight.pairlist.net/mailman/listinfo/geeklog-devel
>
> _______________________________________________
> geeklog-devel mailing list
> geeklog-devel at lists.geeklog.net
> http://eight.pairlist.net/mailman/listinfo/geeklog-devel
More information about the geeklog-devel
mailing list