Author: Jonathan.Wage
Date: 2010-01-31 23:02:07 +0100 (Sun, 31 Jan 2010)
New Revision: 27367

Added:
   plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/helper/
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/helper/AdminHelper.php
Modified:
   plugins/sfSympalPlugin/trunk/data/fixtures/install.yml
   plugins/sfSympalPlugin/trunk/lib/helper/SympalMenuHelper.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/menu/sfSympalMenuAdminMenu.class.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAssetsPlugin/config/sfSympalAssetsPluginConfiguration.class.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalEditorPlugin/lib/helper/SympalContentSlotEditorHelper.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenu.class.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenuSite.class.php
   plugins/sfSympalPlugin/trunk/lib/sfSympalConfiguration.class.php
Log:
[1.4][sfSympalPlugin][1.0] Setting credentials for inline edit bar buttons


Modified: plugins/sfSympalPlugin/trunk/data/fixtures/install.yml
===================================================================
--- plugins/sfSympalPlugin/trunk/data/fixtures/install.yml      2010-01-31 
20:14:14 UTC (rev 27366)
+++ plugins/sfSympalPlugin/trunk/data/fixtures/install.yml      2010-01-31 
22:02:07 UTC (rev 27367)
@@ -82,12 +82,12 @@
     name: ManageRedirects
   InsertAssets:
     name: InsertAssets
+  InsertLinks:
+    name: InsertLinks
   ManageAssets:
     name: ManageAssets
   InlineEditing:
     name: InlineEditing
-  InsertLinks:
-    name: InsertLinks
   ManagePlugins:
     name: ManagePlugins
   ManageMenus:

Modified: plugins/sfSympalPlugin/trunk/lib/helper/SympalMenuHelper.php
===================================================================
--- plugins/sfSympalPlugin/trunk/lib/helper/SympalMenuHelper.php        
2010-01-31 20:14:14 UTC (rev 27366)
+++ plugins/sfSympalPlugin/trunk/lib/helper/SympalMenuHelper.php        
2010-01-31 22:02:07 UTC (rev 27367)
@@ -30,66 +30,4 @@
   } else {
     return false;
   }
-}
-
-function get_sympal_admin_menu_object()
-{
-  static $menu;
-
-  if (!$menu)
-  {
-    $sympalContext = sfSympalContext::getInstance();
-    $siteTitle = $sympalContext->getSite()->getTitle();
-    $menu = new sfSympalMenuAdminMenu('Sympal Admin');
-
-    if ($sympalContext->isAdminModule())
-    {
-      $menu->addChild('Go to Site Frontend', '@homepage');
-    }
-
-    if (sfContext::getInstance()->getUser()->hasCredential('ViewDashboard'))
-    {
-      $menu->addChild('My Dashboard', '@sympal_dashboard');
-    }
-
-    if (sfContext::getInstance()->getUser()->hasCredential('ClearCache'))
-    {
-      $menu->addChild('Clear Cache', '@sympal_clear_cache');
-    }
-
-    $menu->addChild('Content', null, array('label' => $siteTitle.' Content'));
-    $menu->addChild('Site Administration', null, array('label' => $siteTitle.' 
Setup'));
-    $menu->addChild('Security', null, array('label' => 'Users & Security'));
-    $menu->addChild('Administration', null, array('label' => 'Global Setup'));
-
-    sfApplicationConfiguration::getActive()->getEventDispatcher()->notify(new 
sfEvent($menu, 'sympal.load_admin_menu'));
-  }
-
-  return $menu;
-}
-
-/**
- * Get the Sympal admin menu instances
- *
- * @return sfSympalMenuAdminMenu $menu
- */
-function get_sympal_admin_menu()
-{
-  $menu = get_sympal_admin_menu_object();
-
-  $sympalContext = sfSympalContext::getInstance();
-  $contentRecord = $sympalContext->getCurrentContent();
-  $menuItem = $sympalContext->getCurrentMenuItem();
-
-  if ($contentRecord)
-  {
-    sfApplicationConfiguration::getActive()->getEventDispatcher()->notify(
-      new sfEvent($menu, 'sympal.load_editor', array(
-        'content' => $contentRecord,
-        'menuItem' => $menuItem
-      )
-    ));
-  }
-
-  return get_partial('sympal_admin/menu', array('menu' => $menu));
 }
\ No newline at end of file

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
      2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
      2010-01-31 22:02:07 UTC (rev 27367)
@@ -19,7 +19,8 @@
       $menu->
         addChild('Dashboard', '@sympal_dashboard')->
         setShortcut('Ctrl+D')->
-        setInputClass('toggle_dashboard_menu')
+        setInputClass('toggle_dashboard_menu')->
+        setCredentials('ViewDashboard')
       ;
     }
   }
@@ -46,6 +47,8 @@
 
   public function addEditorHtml(sfEvent $event, $content)
   {
+    $this->configuration->loadHelpers(array('Admin'));
+
     $content = str_replace('</body>', get_sympal_admin_menu().'</body>', 
$content);
     return $content;
   }

Added: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/helper/AdminHelper.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/helper/AdminHelper.php
                             (rev 0)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/helper/AdminHelper.php
     2010-01-31 22:02:07 UTC (rev 27367)
@@ -0,0 +1,62 @@
+<?php
+
+function get_sympal_admin_menu_object()
+{
+  static $menu;
+
+  if (!$menu)
+  {
+    $sympalContext = sfSympalContext::getInstance();
+    $siteTitle = $sympalContext->getSite()->getTitle();
+    $menu = new sfSympalMenuAdminMenu('Sympal Admin', '@sympal_dashboard');
+
+    if ($sympalContext->isAdminModule())
+    {
+      $menu->addChild('Go to Site Frontend', '@homepage');
+    }
+
+    if (sfContext::getInstance()->getUser()->hasCredential('ViewDashboard'))
+    {
+      $menu->addChild('My Dashboard', '@sympal_dashboard');
+    }
+
+    if (sfContext::getInstance()->getUser()->hasCredential('ClearCache'))
+    {
+      $menu->addChild('Clear Cache', '@sympal_clear_cache');
+    }
+
+    $menu->addChild('Content', null, array('label' => $siteTitle.' Content'));
+    $menu->addChild('Site Administration', null, array('label' => $siteTitle.' 
Setup'));
+    $menu->addChild('Security', null, array('label' => 'Users & Security'));
+    $menu->addChild('Administration', null, array('label' => 'Global Setup'));
+
+    sfApplicationConfiguration::getActive()->getEventDispatcher()->notify(new 
sfEvent($menu, 'sympal.load_admin_menu'));
+
+    $sympalContext = sfSympalContext::getInstance();
+    $contentRecord = $sympalContext->getCurrentContent();
+    $menuItem = $sympalContext->getCurrentMenuItem();
+
+    if ($contentRecord)
+    {
+      sfApplicationConfiguration::getActive()->getEventDispatcher()->notify(
+        new sfEvent($menu, 'sympal.load_editor', array(
+          'content' => $contentRecord,
+          'menuItem' => $menuItem
+        )
+      ));
+    }
+  }
+
+  return $menu;
+}
+
+/**
+ * Get the Sympal admin menu instances
+ *
+ * @return sfSympalMenuAdminMenu $menu
+ */
+function get_sympal_admin_menu()
+{
+  $menu = get_sympal_admin_menu_object();
+  return get_partial('sympal_admin/menu', array('menu' => $menu));
+}
\ No newline at end of file

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/menu/sfSympalMenuAdminMenu.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/menu/sfSympalMenuAdminMenu.class.php
       2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/lib/menu/sfSympalMenuAdminMenu.class.php
       2010-01-31 22:02:07 UTC (rev 27367)
@@ -1,6 +1,6 @@
 <?php
 
-class sfSympalMenuAdminMenu extends sfSympalMenuSite
+class sfSympalMenuAdminMenu extends sfSympalMenu
 {
   public function renderChildBody()
   {

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAssetsPlugin/config/sfSympalAssetsPluginConfiguration.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAssetsPlugin/config/sfSympalAssetsPluginConfiguration.class.php
    2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAssetsPlugin/config/sfSympalAssetsPluginConfiguration.class.php
    2010-01-31 22:02:07 UTC (rev 27367)
@@ -18,7 +18,8 @@
         addChild('Assets', '@sympal_assets_select')->
         isEditModeButton(true)->
         setShortcut('Ctrl+A')->
-        setInputClass('toggle_sympal_assets')
+        setInputClass('toggle_sympal_assets')->
+        setCredentials('InsertAssets')
       ;
     }
   }

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalEditorPlugin/lib/helper/SympalContentSlotEditorHelper.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalEditorPlugin/lib/helper/SympalContentSlotEditorHelper.php
  2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalEditorPlugin/lib/helper/SympalContentSlotEditorHelper.php
  2010-01-31 22:02:07 UTC (rev 27367)
@@ -47,7 +47,8 @@
     $menu->addChild('Links', '@sympal_editor_links')->
       isEditModeButton(true)->
       setShortcut('Ctrl+L')->
-      setInputClass('toggle_sympal_links')
+      setInputClass('toggle_sympal_links')->
+      setCredentials('InsertLinks')
     ;
   }
 

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenu.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenu.class.php
 2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenu.class.php
 2010-01-31 22:02:07 UTC (rev 27367)
@@ -14,7 +14,7 @@
     $_requiresAuth     = null,
     $_requiresNoAuth   = null,
     $_showChildren     = true,
-    $_current          = false,
+    $_current          = null,
     $_currentObject    = null,
     $_options          = array(),
     $_children         = array(),
@@ -445,8 +445,70 @@
     return __($this->getLabel());
   }
 
+  public function getBreadcrumbsArray($subItem = null)
+  {
+    $breadcrumbs = array();
+    $obj = $this;
+
+    if ($subItem)
+    {
+      if (!is_array($subItem))
+      {
+        $subItem = array((string) $subItem => null);
+      }
+      $subItem = array_reverse($subItem);
+      foreach ($subItem as $key => $value)
+      {
+        if (is_numeric($key))
+        {
+          $key = $value;
+          $value = null;
+        }
+        $breadcrumbs[(string) $key] = $value;
+      }
+    }
+
+    do {
+      $label = __($obj->getLabel());
+       $breadcrumbs[$label] = $obj->getRoute();
+    } while ($obj = $obj->getParent());
+
+    return count($breadcrumbs) > 1 ? array_reverse($breadcrumbs):array();
+  }
+
+  public function getBreadcrumbs($subItem = null)
+  {
+    return 
sfSympalMenuBreadcrumbs::generate($this->getBreadcrumbsArray($subItem));
+  }
+
+  public function getCurrent()
+  {
+    if ($this->isCurrent())
+    {
+      return $this;
+    }
+    foreach ($this->_children as $child)
+    {
+      if ($current = $child->getCurrent())
+      {
+        return $current;
+      }
+    }
+    return false;
+  }
+
   public function isCurrent($bool = null)
   {
+    if (is_null($this->_current))
+    {
+      if ($this->getUrl(array('absolute' => true)) == 
sfContext::getInstance()->getRequest()->getUri())
+      {
+        $this->_current = true;
+        $this->getRoot()->setCurrentObject($this);
+        $this->_current = true;
+      }
+    }
+
     if (!is_null($bool))
     {
       $this->_current = $bool;

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenuSite.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenuSite.class.php
     2010-01-31 20:14:14 UTC (rev 27366)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalMenuPlugin/lib/menu/sfSympalMenuSite.class.php
     2010-01-31 22:02:07 UTC (rev 27367)
@@ -45,18 +45,6 @@
     return $this->_menuItem;
   }
 
-  public function getPathAsString()
-  {
-    $path = array();
-    $obj = $this;
-
-    do {
-       $path[] = __($obj->_menuItem['label']);
-    } while ($obj = $obj->getParent());
-
-    return implode(' > ', array_reverse($path));
-  }
-
   public function getBreadcrumbsArray($subItem = null)
   {
     $breadcrumbs = array();
@@ -92,11 +80,6 @@
     return count($breadcrumbs) > 1 ? array_reverse($breadcrumbs):array();
   }
 
-  public function getBreadcrumbs($subItem = null)
-  {
-    return 
sfSympalMenuBreadcrumbs::generate($this->getBreadcrumbsArray($subItem));
-  }
-
   protected function _prepareMenuItem($menuItem)
   {
     if ($menuItem instanceof sfSympalMenuItem)

Modified: plugins/sfSympalPlugin/trunk/lib/sfSympalConfiguration.class.php
===================================================================
--- plugins/sfSympalPlugin/trunk/lib/sfSympalConfiguration.class.php    
2010-01-31 20:14:14 UTC (rev 27366)
+++ plugins/sfSympalPlugin/trunk/lib/sfSympalConfiguration.class.php    
2010-01-31 22:02:07 UTC (rev 27367)
@@ -137,6 +137,7 @@
     if ($this->isAdminModule())
     {
       sfConfig::set('sf_login_module', 'sympal_admin');
+      $this->_projectConfiguration->loadHelpers(array('Admin'));
     }
   }
 

-- 
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.

Reply via email to