Author: ornicar2
Date: 2010-01-18 15:55:26 +0100 (Mon, 18 Jan 2010)
New Revision: 26820

Modified:
   plugins/diemPlugin/trunk/dmAdminPlugin/lib/view/html/link/dmAdminLinkTag.php
   plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmAdminLinkTagTest.php
   plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmFrontLinkTagTest.php
   plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmMarkdownLinkTest.php
   
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/dmFrontLinkResource.php
   
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/tag/dmFrontLinkTagUri.php
Log:
[Diem]
- made dmFrontLinkTag and dmAdminLinkTag accept "mailto:";
- added unit tests for "mailto:"; links

Modified: 
plugins/diemPlugin/trunk/dmAdminPlugin/lib/view/html/link/dmAdminLinkTag.php
===================================================================
--- 
plugins/diemPlugin/trunk/dmAdminPlugin/lib/view/html/link/dmAdminLinkTag.php    
    2010-01-18 14:54:12 UTC (rev 26819)
+++ 
plugins/diemPlugin/trunk/dmAdminPlugin/lib/view/html/link/dmAdminLinkTag.php    
    2010-01-18 14:55:26 UTC (rev 26820)
@@ -136,7 +136,14 @@
     
     if(isset($resource))
     {
-      return 
$this->serviceContainer->getService('controller')->genUrl($resource);
+      if (strncmp($resource, '#', 1) === 0 || strncmp($resource, 'mailto:', 7) 
 === 0)
+      {
+        return $resource;
+      }
+      else
+      {
+        return 
$this->serviceContainer->getService('controller')->genUrl($resource);
+      }
     }
 
     throw new dmException('Can not find href for '. $this->resource);

Modified: plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmAdminLinkTagTest.php
===================================================================
--- plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmAdminLinkTagTest.php      
2010-01-18 14:54:12 UTC (rev 26819)
+++ plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmAdminLinkTagTest.php      
2010-01-18 14:55:26 UTC (rev 26820)
@@ -4,7 +4,7 @@
 $helper = new dmUnitTestHelper();
 $helper->boot('admin');
 
-$t = new lime_test(12);
+$t = new lime_test(13);
 
 dm::loadHelpers(array('Dm'));
 
@@ -53,4 +53,6 @@
 $errorLink = (string)£link($badSource);
 $t->is($errorLink, '<a class="link">'.$badSource.' is not a valid link 
resource</a>', $errorLink);
 
-$page->Node->delete();
\ No newline at end of file
+$page->Node->delete();
+
+$t->is((string)£link('mailto:[email protected]')->text('email'), $html = '<a 
class="link" href="mailto:[email protected]";>email</a>', 'mailto: '.$html);
\ No newline at end of file

Modified: plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmFrontLinkTagTest.php
===================================================================
--- plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmFrontLinkTagTest.php      
2010-01-18 14:54:12 UTC (rev 26819)
+++ plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmFrontLinkTagTest.php      
2010-01-18 14:55:26 UTC (rev 26820)
@@ -6,7 +6,7 @@
 
 if(sfConfig::get('sf_app') == 'front' && 
class_exists('dmFrontPluginConfiguration', false))
 {
-  $t = new lime_test(26);
+  $t = new lime_test(27);
 }
 else
 {
@@ -162,4 +162,6 @@
 $errorLink = '<a class="link"></a>';
 $t->is($errorLink, $errorLink, $errorLink);
 
-$media->delete();
\ No newline at end of file
+$media->delete();
+
+$t->is((string)£link('mailto:[email protected]')->text('email'), $html = '<a 
class="link" href="mailto:[email protected]";>email</a>', 'mailto: '.$html);
\ No newline at end of file

Modified: plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmMarkdownLinkTest.php
===================================================================
--- plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmMarkdownLinkTest.php      
2010-01-18 14:54:12 UTC (rev 26819)
+++ plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmMarkdownLinkTest.php      
2010-01-18 14:55:26 UTC (rev 26820)
@@ -4,7 +4,7 @@
 $helper = new dmUnitTestHelper();
 $helper->boot('front');
 
-$t = new lime_test(85);
+$t = new lime_test(88);
 
 $markdown = $helper->get('markdown');
 dm::loadHelpers(array('Dm'));
@@ -108,7 +108,7 @@
     ->anchor('#an_anchor')
     ->params(array('var1' => 'val1', 'var2' => 'val2'))
     ->set('#an_id.a_class.another_class')
-  ),
+  )
 );
 
 $absoluteUrlRoot = $helper->get('request')->getAbsoluteUrlRoot();
@@ -132,4 +132,9 @@
   $t->is($result = $markdown->toHtml($sourcePath), str_replace('href="', 
'href="http://', £('p.dm_first_p', $results[2])), '->toHtml() '.$result);
 }
 
-$page->Node->delete();
\ No newline at end of file
+$page->Node->delete();
+
+$source = '[link to email](mailto:[email protected])';
+$t->is($result = $markdown->toText($source), 'link to email', $result);
+$t->is($result = $markdown->brutalToText($source), 'link to email', $result);
+$t->is($result = $markdown->toHtml($source), '<p 
class="dm_first_p">'.£link('mailto:[email protected]')->text('link to 
email')->render().'</p>', $result);
\ No newline at end of file

Modified: 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/dmFrontLinkResource.php
===================================================================
--- 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/dmFrontLinkResource.php
   2010-01-18 14:54:12 UTC (rev 26819)
+++ 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/dmFrontLinkResource.php
   2010-01-18 14:55:26 UTC (rev 26820)
@@ -106,19 +106,17 @@
         $this->subject = dmContext::hasInstance() ? 
dmContext::getInstance()->get('script_name_resolver')->get($app).$slug : $slug;
       }
       elseif(
-          strncmp($source, "http://";, 7)  === 0
-      ||  strncmp($source, "ftp://";, 6)   === 0
-      ||  strncmp($source, "mailto:";, 7)  === 0
-      ||  strncmp($source, "@", 1)        === 0
-      ||  strncmp($source, "#", 1)        === 0
+          strncmp($source, 'http://', 7)  === 0
+      ||  strncmp($source, 'ftp://', 6)   === 0
+      ||  strncmp($source, 'mailto:', 7)  === 0
+      ||  strncmp($source, '@', 1)        === 0
+      ||  strncmp($source, '#', 1)        === 0
       )
       {
         $this->type = 'uri';
         $this->subject = $source;
       }
-      elseif(
-          strncmp($source, "/", 1)        === 0
-      )
+      elseif(strncmp($source, '/', 1) === 0)
       {
         $this->type = 'uri';
         $this->subject = $source;

Modified: 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/tag/dmFrontLinkTagUri.php
===================================================================
--- 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/tag/dmFrontLinkTagUri.php
 2010-01-18 14:54:12 UTC (rev 26819)
+++ 
plugins/diemPlugin/trunk/dmFrontPlugin/lib/view/html/link/tag/dmFrontLinkTagUri.php
 2010-01-18 14:55:26 UTC (rev 26820)
@@ -22,7 +22,7 @@
 
   protected function getBaseHref()
   {
-    if (strncmp($this->uri, '#', 1) === 0)
+    if (strncmp($this->uri, '#', 1) === 0 || strncmp($this->uri, 'mailto:', 7) 
 === 0)
     {
       return $this->uri;
     }

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