Author: Jonathan.Wage
Date: 2010-02-12 20:48:35 +0100 (Fri, 12 Feb 2010)
New Revision: 27971
Modified:
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/model/doctrine/PluginsfSympalMenuItemTable.class.php
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/manager/sfSympalPluginManager.class.php
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginInstallTask.class.php
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginUninstallTask.class.php
Log:
[1.4][sfSympalPlugin][1.0] Fixing issue with plugin install
Modified:
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/model/doctrine/PluginsfSympalMenuItemTable.class.php
===================================================================
---
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/model/doctrine/PluginsfSympalMenuItemTable.class.php
2010-02-12 19:44:00 UTC (rev 27970)
+++
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/model/doctrine/PluginsfSympalMenuItemTable.class.php
2010-02-12 19:48:35 UTC (rev 27971)
@@ -1,9 +1,34 @@
<?php
+
/**
* This class has been auto-generated by the Doctrine ORM Framework
*/
class PluginsfSympalMenuItemTable extends sfSympalDoctrineTable
{
+ public function findFirstMenu()
+ {
+ return $this->createQuery('m')
+ ->select('m.*')
+ ->innerJoin('m.Site s WITH s.slug = ?',
sfSympalContext::getInstance()->getSiteSlug())
+ ->orderBy('m.root_id ASC')
+ ->limit(1)
+ ->fetchOne();
+ }
+
+ public function getPluginInstallMenu()
+ {
+ $menu = $this->createQuery('m')
+ ->select('m.*')
+ ->innerJoin('m.Site s WITH s.slug = ?',
sfSympalContext::getInstance()->getSiteSlug())
+ ->where('m.slug = ?',
sfSympalConfig::get('default_install_content_type_menu', null, 'primary'))
+ ->fetchOne();
+ if (!$menu)
+ {
+ $menu = Doctrine_Core::getTable('sfSympalMenuItem')->findFirstMenu();
+ }
+ return $menu;
+ }
+
public function getMenuHierarchies()
{
return $this->getMenusQuery()->execute(array(),
Doctrine_Core::HYDRATE_RECORD_HIERARCHY);
@@ -11,8 +36,7 @@
public function getMenusQuery()
{
- $q = Doctrine_Core::getTable('sfSympalMenuItem')
- ->createQuery()
+ $q = $this->createQuery()
->from('sfSympalMenuItem m INDEXBY m.id')
->addSelect('m.*')
->leftJoin('m.Groups g')
Modified:
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/manager/sfSympalPluginManager.class.php
===================================================================
---
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/manager/sfSympalPluginManager.class.php
2010-02-12 19:44:00 UTC (rev 27970)
+++
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/manager/sfSympalPluginManager.class.php
2010-02-12 19:48:35 UTC (rev 27971)
@@ -195,15 +195,11 @@
{
$this->logSection('sympal', sprintf('...saving menu item "%s"',
$menuItem));
- $root =
Doctrine_Core::getTable('sfSympalMenuItem')->findOneBySlug(sfSympalConfig::get('default_install_content_type_menu',
null, 'primary'));
- if (!$root)
+ if ($menu =
Doctrine_Core::getTable('sfSympalMenuItem')->getPluginInstallMenu())
{
- $root =
Doctrine_Core::getTable('sfSympalMenuItem')->findOneByIsPrimary(true);
+ $this->logSection('sympal', sprintf('...inserting as last child of
"%s"', $menu->getLabel()));
+ $menuItem->getNode()->insertAsLastChildOf($menu);
}
- if ($root)
- {
- $menuItem->getNode()->insertAsLastChildOf($root);
- }
}
public function getContentTypeForPlugin($name = null)
Modified:
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginInstallTask.class.php
===================================================================
---
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginInstallTask.class.php
2010-02-12 19:44:00 UTC (rev 27970)
+++
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginInstallTask.class.php
2010-02-12 19:48:35 UTC (rev 27971)
@@ -1,6 +1,6 @@
<?php
-class sfSympalPluginInstallTask extends sfBaseTask
+class sfSympalPluginInstallTask extends sfSympalBaseTask
{
protected function configure()
{
@@ -34,8 +34,7 @@
return 1;
}
- $databaseManager = new sfDatabaseManager($this->configuration);
-
+ $this->createContext($this->configuration);
$pluginManager =
sfSympalPluginManager::getActionInstance($arguments['name'], 'install',
$this->configuration, $this->formatter);
$pluginManager->install();
}
Modified:
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginUninstallTask.class.php
===================================================================
---
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginUninstallTask.class.php
2010-02-12 19:44:00 UTC (rev 27970)
+++
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalPluginManagerPlugin/lib/task/sfSympalPluginUninstallTask.class.php
2010-02-12 19:48:35 UTC (rev 27971)
@@ -27,8 +27,6 @@
protected function execute($arguments = array(), $options = array())
{
- $databaseManager = new sfDatabaseManager($this->configuration);
-
if (!$options['no-confirmation'] && !$this->askConfirmation(array('This
command will uninstall and remove the sympal plugin named
'.sfSympalPluginToolkit::getLongPluginName($arguments['name']), 'Are you sure
you want to proceed? (y/N)'), 'QUESTION_LARGE', false))
{
$this->logSection('sympal', 'Plugin uninstall aborted');
@@ -36,6 +34,7 @@
return 1;
}
+ $this->createContext($this->configuration);
$pluginManager =
sfSympalPluginManager::getActionInstance($arguments['name'], 'uninstall',
$this->configuration, $this->formatter);
$pluginManager->uninstall($options['delete']);
}
--
You received this message because you are subscribed to the Google Groups
"symfony SVN" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/symfony-svn?hl=en.