Author: Jonathan.Wage
Date: 2010-02-10 22:59:38 +0100 (Wed, 10 Feb 2010)
New Revision: 27858

Modified:
   plugins/sfSympalPlugin/trunk/config/routing.yml
   plugins/sfSympalPlugin/trunk/lib/helper/SympalHelper.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
   
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/css/dashboard.css
   plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/js/menu.js
   plugins/sfSympalPlugin/trunk/test/fixtures/project/apps/sympal/config/app.yml
Log:
[1.4][sfSympalPlugin][1.0] Adding menu to change language/culture


Modified: plugins/sfSympalPlugin/trunk/config/routing.yml
===================================================================
--- plugins/sfSympalPlugin/trunk/config/routing.yml     2010-02-10 21:16:03 UTC 
(rev 27857)
+++ plugins/sfSympalPlugin/trunk/config/routing.yml     2010-02-10 21:59:38 UTC 
(rev 27858)
@@ -10,11 +10,11 @@
 
 sympal_change_language:
   url:   /change_language/:language
-  param: { module: sympal_default, action: change_language, language: en }
+  param: { module: sympal_default, action: change_language }
 
 sympal_change_edit_language:
   url:   /change_edit_language/:language
-  param: { module: sympal_default, action: change_edit_language, language: en }
+  param: { module: sympal_default, action: change_edit_language }
 
 sympal_sitemap:
   url:   /sitemap.xml

Modified: plugins/sfSympalPlugin/trunk/lib/helper/SympalHelper.php
===================================================================
--- plugins/sfSympalPlugin/trunk/lib/helper/SympalHelper.php    2010-02-10 
21:16:03 UTC (rev 27857)
+++ plugins/sfSympalPlugin/trunk/lib/helper/SympalHelper.php    2010-02-10 
21:59:38 UTC (rev 27858)
@@ -86,26 +86,6 @@
 }
 
 /**
- * Get icons for changing languages
- *
- * @return string $html
- */
-function get_change_language_icons()
-{
-  $icons = array();
-  foreach (sfSympalConfig::getLanguageCodes() as $code)
-  {
-    if (sfContext::getInstance()->getUser()->getCulture() == $code)
-    {
-      $icons[] = 
image_tag('/sfSympalPlugin/images/flags/'.strtolower($code).'.png');
-    } else {
-      $icons[] = 
link_to(image_tag('/sfSympalPlugin/images/flags/'.strtolower($code).'.png'), 
'@sympal_change_language?language='.$code, 'title=Switch to 
'.format_language($code));
-    }
-  }
-  return implode(' ', $icons);
-}
-
-/**
  * Returns the url to a gravatar image based on the given email address
  * 
  * @param string $emailAddress The email address to lookup in gravatar

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
      2010-02-10 21:16:03 UTC (rev 27857)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/config/sfSympalAdminPluginConfiguration.class.php
      2010-02-10 21:59:38 UTC (rev 27858)
@@ -38,6 +38,7 @@
 
     $response = sfContext::getInstance()->getResponse();
     
$response->addStylesheet(sfSympalConfig::getAssetPath('/sfSympalAdminPlugin/css/menu.css'));
+    
$response->addStylesheet(sfSympalConfig::getAssetPath('/sfSympalAdminPlugin/css/change_language.css'));
     
$response->addJavascript(sfSympalConfig::getAssetPath('/sfSympalAdminPlugin/js/menu.js'));
     
$response->addJavascript(sfSympalConfig::getAssetPath('/sfSympalPlugin/js/shortcuts.js'));
     
$response->addJavascript(sfSympalConfig::getAssetPath('/sfSympalAdminPlugin/js/shortcuts.js'));
@@ -54,6 +55,24 @@
   public function loadAdminMenu(sfEvent $event)
   {
     $menu = $event->getSubject();
+
+    $changeLanguage = $menu->getChild('Change Language');
+    $currentCulture = 
strtolower(sfContext::getInstance()->getUser()->getCulture());
+    $codes = sfSympalConfig::getLanguageCodes();
+    foreach ($codes as $code)
+    {
+      $code = strtolower($code);
+      $formatted = format_language($code);
+      if (!$formatted)
+      {
+        $formatted = format_language($code, 'en');
+      }
+      if ($formatted)
+      {
+        
$changeLanguage->addChild(image_tag('/sfSympalPlugin/images/flags/'.$code.'.png').'
 '.$formatted, '@sympal_change_language?language='.$code, 'title=Switch to 
'.$formatted);
+      }
+    }
+
     $manageContent = $menu->getChild('Content');
 
     $user = sfContext::getInstance()->getUser();
@@ -115,7 +134,11 @@
       $languages = array();
       foreach ($cultures as $key => $value)
       {
-        $formatted = format_language($value);;
+        $formatted = format_language($value);
+        if (!$formatted)
+        {
+          $formatted = format_language($value, 'en');
+        }
         if ($formatted)
         {
           $languages[$value] = $formatted;

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/css/dashboard.css
===================================================================
--- 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/css/dashboard.css
  2010-02-10 21:16:03 UTC (rev 27857)
+++ 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/css/dashboard.css
  2010-02-10 21:59:38 UTC (rev 27858)
@@ -21,14 +21,12 @@
   font-size: 25px;
 }
 
-#sympal-dashboard #boxes {
-  
-}
 #sympal-dashboard .sympal_dashboard_box {
   float: left;
   width: 175px;
   background: #fff;
   margin-right: 10px;
+  margin-top: 20px;
   -khtml-border-radius:0.75em;
        -moz-border-radius: 0.75em;
   -webkit-border-radius: 0.75em;
@@ -69,7 +67,6 @@
 
 #sympal-dashboard .sympal_dashboard_boxes {
   clear: left;
-  padding-top: 15px;
 }
 
 #sympal-dashboard .sympal_dashboard_top_links {

Modified: 
plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/js/menu.js
===================================================================
--- plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/js/menu.js 
2010-02-10 21:16:03 UTC (rev 27857)
+++ plugins/sfSympalPlugin/trunk/lib/plugins/sfSympalAdminPlugin/web/js/menu.js 
2010-02-10 21:59:38 UTC (rev 27858)
@@ -1,4 +1,8 @@
 $(function() {
+  $('.sympal_change_language_icons .current').click(function() {
+    $('.sympal_change_language_icons ul').slideToggle();
+  });
+
   // Top admin menu bar mouseover and mouseout events for dropdown menus
   $('.sympal_admin_menu ul > li').bind('mouseover', sympalAdminMenuOpen);
   $('.sympal_admin_menu ul > li').bind('mouseout', sympalAdminMenuClose);

Modified: 
plugins/sfSympalPlugin/trunk/test/fixtures/project/apps/sympal/config/app.yml
===================================================================
--- 
plugins/sfSympalPlugin/trunk/test/fixtures/project/apps/sympal/config/app.yml   
    2010-02-10 21:16:03 UTC (rev 27857)
+++ 
plugins/sfSympalPlugin/trunk/test/fixtures/project/apps/sympal/config/app.yml   
    2010-02-10 21:59:38 UTC (rev 27858)
@@ -1,10 +1,13 @@
 all:
   sympal_config:
     language_codes:
+      - zh
+      - cs
+      - da
       - en
-      - fr
-      - es
+      - de
     breadcrumbs_separator: ' / '
     plugin_api:
       username: test
       password: test
+    default_culture: en

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