@James: I'll take a look at it. It sounds promising the fact of using a Doctrine model to hold which plugins are enabled, and use that data to enable them from the controller.
I'll give it a try and then I'll post back the results. Thanks guys! On Fri, Aug 13, 2010 at 4:29 PM, James Cauwelier <james.cauwel...@gmail.com>wrote: > I did some research and found that determining whether a module is > enabled or not is the work of the controller classes. Here are the > step if you want to implement some complex logic that you don 't want > to put in your project configuration class. The more simpler method > of Johannes is preferred if that works for you and that 's for you to > determine. > > 1. edit the factories.yml to use your own controller class > 2. implement this controller class that extends the > sfFrontWebController class by overriding the 'controllerExists' of one > of it 's parent classes sfController > 3. override the 'controllerExists' protected method of the parent > sfController class. Just copying the content of the method and adding > another method that adds enabled modules using a database should be > enough > > > On Aug 13, 5:04 pm, Johannes <johannes.schmitt...@googlemail.com> > wrote: > > No explicit method as far as I know, but this works: > > > > sfConfig::set('sf_enabled_modules', > > array_unique(array_merge(sfConfig::get('sf_enabled_modules'), > > array('my_first_module_name_to_enable', 'my_second_module', 'etc')))); > > > > Kind regards, > > Johannes > > > > On 13 Aug., 14:57, Gustavo Adrian <comfortablynum...@gmail.com> wrote: > > > > > Hi James. I was thinking and something like that too. What I don't know > is > > > how to enable the modules of the plugin programmatically. Is there > available > > > a method for this purpose? > > > > > Thanks! > > > > > On Fri, Aug 13, 2010 at 3:37 AM, James Cauwelier > > > <james.cauwel...@gmail.com>wrote: > > > > > > It is possible to enable a plugin from the projectConfiguration > > > > methods, but nobody dictates that the plugin names should be > hardcoded > > > > there, you could use a configuration XML for instance... > > > > > > The code below does not work, but illustrates the principle. There > is > > > > also more than one way to do this. You don 't have to use XML and > > > > could use a database or any other kind of storage. Doctrine is also > > > > packaged as a plugin, so it probably is not possible to use doctrine > > > > for this. > > > > > > public function setup() > > > > { > > > > if (file_exists('enablePlugins.xml')) { > > > > $xml = simplexml_load_file('enablePlugins.xml'); > > > > $enabledPluginsXml = $xml->xpath(...); > > > > $this->enablePlugins($enabledPluginsXml); > > > > } > > > > } > > > > > > On 12 aug, 22:12, Gustavo Adrian <comfortablynum...@gmail.com> > wrote: > > > > > Hi, first of all, thank you both guys for your answers. > > > > > > > @Damon: I couldn't try that yet but, as you said, the only problem > I see > > > > is > > > > > that I have no way (that I know) of enable the plugin on > > > > > ProjectConfiguration class. And this class is used on the very > first part > > > > of > > > > > the framework initialization. I need this because I need a way to > install > > > > (a > > > > > kind of) plugins from my backend to extend a CMS I'm developing > and, if I > > > > > could use the plugin functionality that Symfony already has, it > would be > > > > > great. If I can't, then I'd need to create my own plugin system > (which, > > > > as > > > > > you would guess, it can take a long time). > > > > > > > @Stéphane: Could you point me to a place where Symfony use this to > look > > > > for > > > > > examples of code? In which way would you use this class for my > need? > > > > > > > Thank you both again! > > > > > > > On Thu, Aug 12, 2010 at 4:33 AM, Stéphane < > stephane.er...@gmail.com> > > > > wrote: > > > > > > There is a class which helps you "wrapping" methods. Search for > > > > > > sfClassManipulator. > > > > > > > > Cheers, > > > > > > > > Before Printing, Think about Your Environmental Responsibility! > > > > > > Avant d'Imprimer, Pensez à Votre Responsabilitée > Environnementale! > > > > > > > > On Thu, Aug 12, 2010 at 8:07 AM, Damon Jones < > damonljo...@gmail.com > > > > >wrote: > > > > > > > >> You can certainly run these tasks from within a task, as > described > > > > > >> here: > > > > > > > >> > http://www.symfony-project.org/more-with-symfony/1_4/en/13-Leveraging. > > > > .. > > > > > > > >> So, maybe you can create instance of these tasks and run them > from > > > > > >> elsewhere in your code. > > > > > > > >> I think the issue would be how you enable them in your > > > > > >> ProjectConfiguration. > > > > > > > >> On Aug 11, 8:49 pm, Gustavo Adrian <comfortablynum...@gmail.com > > > > > > > >> wrote: > > > > > >> > Hi! > > > > > > > >> > Quick question: Is there a way to install and enable a plugin > from > > > > PHP? > > > > > > > >> > Thanks! > > > > > > > >> -- > > > > > >> If you want to report a vulnerability issue on symfony, please > send it > > > > to > > > > > >> security at symfony-project.com > > > > > > > >> You received this message because you are subscribed to the > Google > > > > > >> Groups "symfony users" group. > > > > > >> To post to this group, send email to > symfony-users@googlegroups.com > > > > > >> To unsubscribe from this group, send email to > > > > > >> symfony-users+unsubscr...@googlegroups.com<symfony-users%2bunsubscr...@googlegroups.com> > <symfony-users%2bunsubscr...@googlegroups.com<symfony-users%252bunsubscr...@googlegroups.com> > > > > > > <symfony-users%2bunsubscr...@googlegroups.com<symfony-users%252bunsubscr...@googlegroups.com> > <symfony-users%252bunsubscr...@googlegroups.com<symfony-users%25252bunsubscr...@googlegroups.com> > > > > > > > > > >> For more options, visit this group at > > > > > >>http://groups.google.com/group/symfony-users?hl=en > > > > > > > > -- > > > > > > If you want to report a vulnerability issue on symfony, please > send it > > > > to > > > > > > security at symfony-project.com > > > > > > > > You received this message because you are subscribed to the > Google > > > > > > Groups "symfony users" group. > > > > > > To post to this group, send email to > symfony-users@googlegroups.com > > > > > > To unsubscribe from this group, send email to > > > > > > symfony-users+unsubscr...@googlegroups.com<symfony-users%2bunsubscr...@googlegroups.com> > <symfony-users%2bunsubscr...@googlegroups.com<symfony-users%252bunsubscr...@googlegroups.com> > > > > > > <symfony-users%2bunsubscr...@googlegroups.com<symfony-users%252bunsubscr...@googlegroups.com> > <symfony-users%252bunsubscr...@googlegroups.com<symfony-users%25252bunsubscr...@googlegroups.com> > > > > > > > > > > For more options, visit this group at > > > > > >http://groups.google.com/group/symfony-users?hl=en > > > > > > -- > > > > If you want to report a vulnerability issue on symfony, please send > it to > > > > security at symfony-project.com > > > > > > You received this message because you are subscribed to the Google > > > > Groups "symfony users" group. > > > > To post to this group, send email to symfony-users@googlegroups.com > > > > To unsubscribe from this group, send email to > > > > symfony-users+unsubscr...@googlegroups.com<symfony-users%2bunsubscr...@googlegroups.com> > <symfony-users%2bunsubscr...@googlegroups.com<symfony-users%252bunsubscr...@googlegroups.com> > > > > > > For more options, visit this group at > > > >http://groups.google.com/group/symfony-users?hl=en > > -- > If you want to report a vulnerability issue on symfony, please send it to > security at symfony-project.com > > You received this message because you are subscribed to the Google > Groups "symfony users" group. > To post to this group, send email to symfony-users@googlegroups.com > To unsubscribe from this group, send email to > symfony-users+unsubscr...@googlegroups.com<symfony-users%2bunsubscr...@googlegroups.com> > For more options, visit this group at > http://groups.google.com/group/symfony-users?hl=en > -- If you want to report a vulnerability issue on symfony, please send it to security at symfony-project.com You received this message because you are subscribed to the Google Groups "symfony users" group. To post to this group, send email to symfony-users@googlegroups.com To unsubscribe from this group, send email to symfony-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/symfony-users?hl=en