Author: ornicar2
Date: 2010-01-18 17:43:35 +0100 (Mon, 18 Jan 2010)
New Revision: 26825
Modified:
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/lib/dmMenu.php
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/test/unit/dmMenuTest.php
Log:
[Diem]
- added dmMenu->notAuthenticated method
- added unit tests for not_athenticated menu items
Modified:
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/lib/dmMenu.php
===================================================================
--- plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/lib/dmMenu.php
2010-01-18 16:19:15 UTC (rev 26824)
+++ plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/lib/dmMenu.php
2010-01-18 16:43:35 UTC (rev 26825)
@@ -36,11 +36,11 @@
public function getDefaultOptions()
{
return array(
- 'ul_class' => null,
- 'li_class' => null,
- 'show_id' => false,
- 'show_children' => true,
- 'translate' => true
+ 'ul_class' => null,
+ 'li_class' => null,
+ 'show_id' => false,
+ 'show_children' => true,
+ 'translate' => true
);
}
@@ -74,6 +74,11 @@
return $this->setOption('secure', (bool) $bool);
}
+ public function notAuthenticated($bool)
+ {
+ return $this->setOption('not_authenticated', (bool) $bool);
+ }
+
public function translate($bool)
{
return $this->setOption('translate', (bool) $bool);
@@ -220,6 +225,11 @@
public function checkUserAccess()
{
+ if (!empty($this->options['not_authenticated']) &&
$this->user->isAuthenticated())
+ {
+ return false;
+ }
+
if(empty($this->options['secure']) && empty($this->options['credentials']))
{
return true;
Modified:
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/test/unit/dmMenuTest.php
===================================================================
---
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/test/unit/dmMenuTest.php
2010-01-18 16:19:15 UTC (rev 26824)
+++
plugins/diemPlugin/trunk/dmCorePlugin/plugins/dmMenuPlugin/test/unit/dmMenuTest.php
2010-01-18 16:43:35 UTC (rev 26825)
@@ -8,7 +8,7 @@
$helper = new dmUnitTestHelper();
$helper->boot('front');
-$t = new lime_test(42);
+$t = new lime_test(44);
dm::loadHelpers(array('Dm', 'I18N'));
@@ -63,6 +63,13 @@
$t->is($menu['Test']['With Route']->checkUserAccess($user), true, 'Test
checkUserAccess()');
$t->is((string) $menu['Test'], '<ul id="test-menu"><li
id="test-menu-with-route" class="first last"><a class="link"
href="http://www.google.com" target="_blank">With Route</a></li></ul>', 'Test
authentication');
+$t->comment('test notAuthenticated');
+$menu['Test']['With Route']->secure(false)->notAuthenticated(true);
+$t->is($menu['Test']['With Route']->checkUserAccess($user), false, 'Test
checkUserAccess()');
+$user->setAuthenticated(false);
+$t->is($menu['Test']['With Route']->checkUserAccess($user), true, 'Test
checkUserAccess()');
+
+$t->comment('misc tests');
$t->is($menu->getLevel(), -1, 'Test getLevel()');
$t->is($menu['Test']['With Route']->getParent()->getLabel(),
$menu['Test']->getLabel(), 'Test getLabel()');
--
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.